/*-------
共通パーツ
-------------------------------------------*/
html {
	height:100%;
}
body {
	background:#fff;
	font-family:Helvetica, Arial, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
	height:100%;
}
body.box-lid-open {
	height:100%;
	overflow:hidden;
}
h1 {
	font-size:2.3125rem;
}
h2 {
	color:#444;
	font-size:1.9rem;
	margin-bottom:2.6rem;
}
h3 {
	font-size:1.5rem;
	margin:1.8rem 0;
}
h3.small {
	font-size:1.1rem;
}
p, ul, ol, dl {
	font-size:1rem;
	line-height:1.7;
}
ul {
	margin-left: 0;
	list-style: none;
}
a, .breadcrumbs a {
	color:#005bac;
}
a:hover {
	text-decoration:underline;
	color:#005bac;
}
a > img{
	transition: 0.6s;
	}
a > img:hover {
	opacity: 0.7;
	text-decoration:none;
	border:0;
	}
a.no_hover{
	text-decoration:none !important;
	border:0 !important;
	}
button, .button {
	position: relative;
	top: 0;
	box-shadow: 0 4px #5e91ab;
}
button.alert, .button.alert {
	box-shadow: 0 4px #c0435c;
}
button.hollow, .button.hollow {
	box-shadow: none;
}
button:hover, .button:hover, button:focus, .button:focus {
	top: 2px !important;
	box-shadow: 0 2px #5e91ab;
	text-decoration: none;
}
button.alert:hover, .button.alert:hover, button.alert:focus, .button.alert:focus {
	box-shadow: 0 2px #c0435c;
}
button.hollow:hover, .button.hollow:hover, button.hollow:focus, .button.hollow:focus, button.menu-icon {
	top: 0 !important;
	box-shadow: none;
}
button.large, .button.large{
	padding:0.8rem 3rem;
	}
.btn_wrap {
	margin:2rem auto;
}
.btn-saas{
	font-size: 1rem;
}
.row {
	margin:0 auto;
	max-width:/*80rem*/1000px;
	width:100%;
}
.small {
	font-size:80%;
}
.breadcrumbs li {
	text-transform:none;
}
.breadcrumbs li:first-child{
	text-transform: uppercase;
}
a.link_arrow {
	background:url(/img/icon_arrow.png) no-repeat left 0.12rem;
	padding:0 0 0 0.7rem;
}
a.blank:after, a.pdf:after {
	vertical-align: middle;
	margin-left: 2px;
	margin-right:4px;
}
a.blank:after {
	content: url(/img/icon_blank-gray.png);
}
a.blank.button:not(.hollow):after {
	content: url(/img/icon_blank-white.png);
}
a.pdf:after {
	content: url(/img/icon_pdf.png) !important;
}
/* リスト */
.list-disc li {
	padding-left:1rem;
	text-indent:-1rem;
	list-style: disc;
}
.list-disc li:before {
	content:'';
	padding-right:0.5rem;
	color:#999;
}
.list-disc ul {
	margin-left: 0.2rem;
}
/* 注意書き */
.text-note {
	color: #5f646c;
	margin-left: 0;
}
p.text-note, .text-note li {
	font-size: 0.7rem;
}
.text-note li {
	list-style: none;
	text-indent:-1em;
	padding-left:1em;
}
.text-note li.num {
	list-style: none;
	text-indent:-1.5em;
	padding-left:1.5em;
}
/*改行---*/
.br {
	display:none;
}
@media only screen and (max-width:769px) {
.br_pc {
	display:none;
}
.br {
	display:inline;
}
}
/*-------
SaaSヘッダー
---------------------------------------------*/
.saas_header {
	padding:0 0.5rem;
	margin:0 1rem;
	border-bottom:1px solid #ddd;
}
.saas_header, .saas_header ul {
	background:#fff;
	color:#555;
}
.saas_header a {
	color:#555;
}
@media screen and (min-width:0em) and (max-width:39.9375em) {
.saas_header {
	display:none;
}
}
/*-------
グローバルナビ
---------------------------------------------*/
.global-header {
	width: 100%;
	position: relative;
	background:#fff;
}
.gnav, .subnav {
	padding-bottom:0;
}
.gnav .logo {
	display: none;
}
.subnav .logo {
	margin-top: -0.3rem;
}
.gnav p, .subnav p {
	margin-bottom: 0;
}
.menu > li > a {
	color: #6b5756;
}
.subnav {
	position: relative;
	box-shadow:0 3px 3px rgba(0,0,0,0.2);
	z-index: 1;
}
/* 固定時の設定 */
.fixed .global-header {
	position:fixed;
	left:0;
	z-index:998;
	box-shadow:0 3px 3px rgba(0,0,0,0.2);
}
.fixed .gnav {
	padding:0;
}
.fixed .gnav .top-bar-right {
padding: .7rem .7rem .2rem;
}
.fixed .gnav .logo {
	display: block;
	padding: 1rem 1rem 0 4.7rem;
}
/* アニメーション */
.fixed .global-header {
	top: 29px;
	animation: slide-down 0.5s;
}
@keyframes slide-down {
 0% {
top:0;
}
 100% {
top: 29px;
}
}
/* ナビの現在地表示 */
.gnav a.active, .subnav a.active {
/*
	display: inline-block;
	border-bottom: 2px solid #6b5756;
	*/
	}
/* 申し込みボタン（赤） */
.gnav .button.alert, .subnav .button.alert {
	margin-right: 0;
	padding: 0.5rem 1rem;
	font-weight: bold;
}
@media screen and (min-width:0em) and (max-width:39.9375em) {
.gnav, .gnav ul {
	background:#333;
}
.gnav {
	padding:0;
}
.gnav .menu {
	width: 100%;
}
.gnav .menu li {
	display: block;
	outline:none;
}
.gnav .menu a {
	color:#fff;
padding: .8rem .8rem;
	display: block;
}
.global-header, .fixed .global-header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3;
}
.fixed .global-header {
	animation:none;
}
.fixed .gnav .logo {
	display: none;
}
.fixed .gnav .top-bar-right {
	padding: 0;
}
}
/*
.second_gnav { position:fixed; top:39px; box-shadow:0 3px 3px rgba(0,0,0,0.2); width:100%; z-index:1000; background:rgba(255,255,255,1) !important; }
.second_gnav ul { background:rgba(255,255,255,0); }
.second_gnav .top-bar-left { width:33.3%; }
.second_gnav .top-bar-center { float:left; width:33.3%; margin:0 auto; padding-left:1rem; }
@media screen and (min-width:0em) and (max-width:768px) {
	.second_gnav { display:none !important; }
	button.menu-icon { background:transparent; }
}
*/
	
	
/*-------
トップロゴ
---------------------------------------------*/
.header_logo {
	margin:1rem auto;
	border-bottom:1px solid #ccc;
	padding:1rem 0;
}

.header_logo span{
	display: flex;
	justify-content: center;
	gap: 0.75rem;
}

.header_logo img{
	width: 300px;
}
.header_logo a{height:300px;}
@media screen and (min-width:0em) and (max-width:39.9375em) {
	.header_logo {
		margin:4rem auto 1rem;
	}
	.header_logo span{
		flex-direction: column;
    align-content: center;
    flex-wrap: wrap;
	}
}
/*-------
メインイメージ
-------------------------------------------*/

#main_image {
	background:url("../img/top_catch/01.jpg");
	color:#fff;
	width:auto;
	position:relative;
	min-height:380px;
}
.main_image_box {
	margin:0 auto;
	z-index:2;
	position:absolute;
	width:100%;
	height:100%;
	min-height:100%;
	background-size:cover;
	background-attachment:fixed;
	background-repeat:no-repeat;
	background-position:center center;
}
.main_image_box h1 {
	padding:1.4em 0 0.4em;
	color:#fff;
	font-size:3rem;
	text-shadow:0 0 10px rgba(0,0,0,0.5);
}
.catch_copy {
	color:#fff;
	font-size:1.5rem;
	text-shadow:0 0 5px rgba(0,0,0,0.5);
}
.main_image_box .hollow.alert {
	border:1px solid #fff;
	color: #fff;
}
.main_image_box .hollow.alert:hover {
	border:1px solid #ff5a5f;
}
@media screen and (min-width:40em) and (max-width:64em) {
.main_image_box h1 {
	font-size:2.6rem;
}
.catch_copy {
	font-size:1.3rem;
}
}
@media screen and (min-width:0em) and (max-width:39.9375em) {
.main_image_box h1 {
	font-size:2rem;
}
.catch_copy {
	font-size:1rem;
}
}
/*背景色分け・基本レイアウト----------------------------*/

#top_contents01 {
	padding:3rem 0 3rem;
}
#top_contents01-2, #top_contents03, #service01, #service03, #service05, .contact{
	padding:6rem 0;
}
#contact01{
	padding:3rem 0;
	}
#top_contents02 {
	background:#fff;
	padding:0 0 6rem 0;
}
#top_contents04, #service02, #service04 {
	background:#f4dbd8;
	padding:6rem 0;
}
.cd-fixed-bg {
	min-height:100%;
	background-size:cover;
	background-attachment:fixed;
	background-repeat:no-repeat;
	background-position:center center;
}
.cd-fixed-bg.cd-bg-1 {
	background-image:url("../img/cd-background-1.jpg");
}
.cd-fixed-bg.cd-bg-2 {
	background-image:url("../img/cd-background-2.jpg");
}
.cd-fixed-bg.cd-bg-3 {
	background-image:url("../img/cd-background-3.jpg");
}
.cd-fixed-bg.cd-bg-4 {
	background-image:url("../img/cd-background-4.jpg");
}
.cd-scrolling-bg {
	min-height:100%;
}

.support_wrap{
	margin:4rem auto;
	}



/*トップページコンテンツ----------------------------------*/
#top_contents01 .large-4 {
	padding:0 3rem;
}
#top_contents01 .large-4 h3 {
	margin-bottom:0.5rem;
}
#top_contents01 .large-4 img {
	margin-bottom:1rem;
}
.top01, .top02, .top03 {
	padding-top:190px;
}
.top01 h3, .top02 h3, .top03 h3 {
	margin-top:190px;
}
.top01 {
	background:url("../img/top/top01.png") no-repeat center 0px;
}
.top02 {
	background:url("../img/top/top02.png") no-repeat center 0px;
}
.top03 {
	background:url("../img/top/top03.png") no-repeat center 0px;
}
/*
#top_contents02 .large-3,
#top_contents02 .medium-6{padding:0;}
*/


.top_service {
	width:100%;
	height:100%;
	overflow:hidden;
	position:relative;
	text-align:center;
}
.problem {
	position:absolute;
	background:rgba(225,225,225,0.9);
	bottom:0;
	text-align:left;
	padding:1.6rem;
	min-height:30%;
	width:100%;
}
.problem p {
	width:80%;
	height:80%;
	display:table-cell;
	vertical-align:middle;
	font-size:1rem;
	color:#555;
}
.problem:before {
	content:'”';
	font-size:2rem;
	position:absolute;
	top:4rem;
}
.top_service .mask {
	width:100%;
	height:100%;
	position:absolute;
	overflow:hidden;
	top:0;
	left:0;
}
.top_service h2 {
	color:#fff;
	text-align:center;
	position:relative;
	font-size:1.2rem;
	top:25%;
}
.top_service_view .mask {
	opacity:0;
	background-color:#000;
	transition:all 0.3s ease-in-out;
}
.top_service_view:hover .mask {
	opacity:0.8;
}
.top_service_view h2 {
	transform:translateY(-100%);
	margin-bottom:0;
	display:block;
	height:25%;
	paddint-top:25%;
}
.top_service_view:hover h2 {
	transition:all 0.2s ease-in-out;
	transform:translateY(0%);
}
.top_service_view .service_lead img {
	width:80%;
}
.top_service_view .service_lead {
	transform:translateY(100%);
}
.top_service_view:hover .service_lead {
	transition-delay:0.1s;
	transition:all 0.2s linear;
	transform:translateY(50%);
}
.btn_service {
	margin-top:3rem;
}
/*よくあるご質問　連番----------------------------*/
.faq_border{border-right:1px solid #ddd;}
.faq dt {
	position:relative;
	font-size:1rem;
	padding-left:40px;
	margin-bottom:1rem;
}
.faq dt:before {
	content:"Q";
	width:25px;
	height:25px;
	line-height:1;
	padding:5px 0 0 6px;
	background:#eee;
	border-radius:50%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	font-weight:lighter;
	color:#666;
}
#support04 .faq dt:before {
	background:#fff;
}
.faq_wrap .large-4 {
	border-right:1px solid #fff;
}
.faq_wrap .large-4:last-child {
	border-right:0px;
}
.faq dd {
	position:relative;
	padding-left:40px;
	margin-bottom:0;
}
.faq dd:before {
	content:"A";
	width:25px;
	height:25px;
	line-height:1;
	padding:6px 0 0 8px;
	background:#888;
	border-radius:50%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	font-weight:lighter;
	color:#fff;
}
.faq_ol{
	list-style:decimal;
	}
.faq_ol li{
	margin-bottom:0.8rem;
	}
/*サービス一覧------------------------------*/
#service02 h2, #service03 h2, #service04 h2 {
	margin-bottom:1rem;
}
#service02 .lead, #service03 .lead, #service04 .lead {
	font-size:150%;
}
.service_box p {
	margin-bottom:1.5rem;
}
.badge_wrap {
	margin-bottom:3rem;
}
.badge {
	padding:0.8rem 3rem;
	border-radius:3px;
	float:left;
	color:#fff;
	font-size:0.8625rem;
	margin-right:1rem;
	background:#ff5a5f;
}
#service02 {
	background:url('../img/bg_simplemail.png') no-repeat 90% 50% #f4dbd8;
}
#service03 {
	background:url('../img/bg_agree.png') no-repeat 5% 50% #fff;
}
#service04 {
	background:url('../img/bg_kogeki.png') no-repeat 90% 50% #f4dbd8;
}
.special_wrap {
	position:relative;
}
.special {
	background:#005bac;
	color:#fff;
	width:40%;
	position:absolute;
	bottom:2.6rem;
	padding:1rem;
}
.special.right_arrow {
	left:-40%;
}
.special.right_arrow:after {
	left:100%;
	bottom:10%;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
	border-color:rgba(136, 183, 213, 0);
	border-left-color:#005bac;
	border-width:10px;
	margin-top:-10px;
}
.special.left_arrow {
	right:-40%;
}
.special.left_arrow:after {
	right:100%;
	bottom:10%;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
	border-color:rgba(136, 183, 213, 0);
	border-right-color:#005bac;
	border-width:10px;
	margin-top:-10px;
}
.special h2 {
	color:#fff;
	font-size:1.1rem;
	border-bottom:1px solid #fff;
}
.special p {
	margin-bottom:0;
}
/*お問い合わせ一覧------------------------------*/
.contact:nth-child(even) {
	background:#f5f5f5;
}
.contact:nth-child(odd) {
	background:#fff;
}
table.ask{width:100%;}
table.ask th{width:50%;text-align:left;font-weight:lighter;border-bottom:1px solid #ccc; padding:1rem 0.625rem 1.2rem;}
table.ask td{width:50%;text-align:left;font-weight:lighter;border-bottom:1px solid #ccc; padding:1rem 0.625rem 1.2rem;}
table.ask td .button{margin:0 !important;}

table.ask .button {
	border-radius:4px;
	width:100%;
}

.ask_list {
	margin:3rem auto 0;
	text-align:center;
}
.ask_list li {
	width:182px;
	border:solid 1px #CCC;
	margin:0 0.8rem 1rem 0;
	text-align:center;
	float:left;
	box-sizing: border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	height: 51px;

}
@media screen and (min-width:999px){
.ask_list li:nth-child(5n) {
	margin:0 0 1rem;
}
}
/*@media screen and (max-width:815px) {
}*/
@media screen and (min-width:0em) and (max-width:39.9375em) {
.ask_list li {
	width:9.8rem;
	border:solid 1px #CCC;
	margin:0 0.8rem 1rem 0;
	text-align:center;
	float:left;
}
}


.ask_list li a {
	display:block;
	padding:0.8rem 0 0.8rem 1rem;
	text-decoration:none;
	transition: all 0.3s ease 0s;
}
	.ask_list li a.simplemail {background:url(/contact/img/ico_simplemail.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.simplemail {background:#F2F7FA url(/contact/img/ico_simplemail.png) no-repeat 0.5rem 0.8rem;}
	
	.ask_list li a.smover {background:url(/contact/img/ico_smover.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.smover {background:#F2F7FA url(/contact/img/ico_smover.png) no-repeat 0.5rem 0.8rem;}
	
	.ask_list li a.panocloud-vr {background:url(/contact/img/ico_panocloud-vr.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.panocloud-vr {background:#F2F7FA url(/contact/img/ico_panocloud-vr.png) no-repeat 0.5rem 0.8rem;}

	.ask_list li a.sitelock {background:url(/contact/img/ico_sitelock.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.sitelock {background:#F2F7FA url(/contact/img/ico_sitelock.png) no-repeat 0.5rem 0.8rem;}

	.ask_list li a.torocca {background:url(/contact/img/ico_torocca.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.torocca {background:#F2F7FA url(/contact/img/ico_torocca.png) no-repeat 0.5rem 0.8rem;}

	.ask_list li a.ftra {background:url(/contact/img/ico_ftra.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.ftra {background:#F2F7FA url(/contact/img/ico_ftra.png) no-repeat 0.5rem 0.8rem;}

	.ask_list li a.kogekisyadankun {background:url(/contact/img/ico_kogekisyadankun.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.kogekisyadankun {background:#F2F7FA url(/contact/img/ico_kogekisyadankun.png) no-repeat 0.5rem 0.8rem;}
	
	.ask_list li a.agree {background:url(/contact/img/ico_agree.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.agree {background:#F2F7FA url(/contact/img/ico_agree.png) no-repeat 0.5rem 0.8rem;}
	
	.ask_list li a.cloudflare {background:url(/contact/img/ico_cloudflare.png) no-repeat 0.5rem 0.8rem;}
	.ask_list li a:hover.cloudflare {background:#F2F7FA url(/contact/img/ico_cloudflare.png) no-repeat 0.5rem 0.8rem;}

	.ask_list li a.actsecure {
		background:url(/contact/img/ico_actsecure.png) no-repeat 0.5rem 0.8rem;
		line-height: 1;
    	font-size: 0.75rem;
    	padding:0.8rem 0 0.75rem 1rem;
	}
	.ask_list li a:hover.actsecure {
		background:#F2F7FA url(/contact/img/ico_actsecure.png) no-repeat 0.5rem 0.8rem;
		padding:0.8rem 0 0.75rem 1rem;
	}
	.ask_list li a.managed {
		background:url(/contact/img/ico_sitelock.png) no-repeat 0.5rem 0.8rem;
		line-height: 1;
    	font-size: 0.75rem;
		padding:0.8rem 0 0.75rem 1rem;
	}
	.ask_list li a:hover.managed {
		background:#F2F7FA url(/contact/img/ico_sitelock.png) no-repeat 0.5rem 0.8rem;
		padding:0.8rem 0 0.75rem 1rem;
	}


/*サービストップ--------------------------------*/
.doc_links li a {
	width:100%;
	padding:1rem 0.5rem 1rem 2rem;
	border:1px solid #ccc;
	display:block;
	margin:15px;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
	background:url(/img/icon_arrow.png) no-repeat 1.2rem 1.4rem;
}
.doc_links li a.pdf:after{float:right;margin-left:15px;}

.doc_links li a:hover,  .doc_links li a:focus {
	box-shadow:inset 0 0 0 2px #A7DAF5;
	background:#F2F7FA url(/img/icon_arrow.png) no-repeat 1.2rem 1.4rem;
	text-decoration: none;
	color:#005bac;
}
.more_link_wrap{margin:3rem auto 0;}


/*よくあるご質問-------------*/
.accordion {
  margin-bottom: 0;
  border-bottom: 0; }
  /*
  .accordion:before, .accordion:after {
    content: " ";}
  .accordion .accordion-navigation{
    display: block;
    margin-bottom: 0 !important; }
    .accordion .accordion-navigation.active > a{
      background: #e8e8e8; }
  */
    .accordion .accordion-navigation > a{
      background:#fff;
		color: #222222;
		/*
		font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
		*/
		font-size: 1rem;
		line-height: 1.5;
		padding: 1rem;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
		}
      .accordion .accordion-navigation > a:hover{
        background: #F2F7FA;
		box-shadow:inset 0 0 0 2px #A7DAF5; 
		text-decoration:none;
		}
    .accordion .accordion-navigation > .accordion-content{
      background: #F2F7FA;
      padding: 0.9375rem; }
		
/*よくあるご質問連番*/
#faq01 {
	counter-reset: faq;
}
#faq01 .accordion .accordion-title{
	padding-left: 5rem;
}

#faq01 .accordion .accordion-title:before {
	counter-increment: faq;
	content: "Q" counter(faq) ". ";
	color:#5e91ab;
	width:4rem;
	font-size:1.4rem;
	margin-top:-6px;
	position: absolute;
	top: 1rem;
	left: 1rem;
}
/*よくあるご質問*/
.faq_cat {
	margin-bottom:5rem;
}
.faq_cat h2 {
	margin-bottom:0.5rem;
}
.faq_cat h3 {
	background:#eee;
	padding:1rem;
	margin:2rem 0 0;
	font-size:1.2rem;
}

/*-------
フッター
-------------------------------------------*/
.foot {
	margin-bottom:1rem;
	padding:3.5rem 0;
	border-bottom:#ddd 1px solid;
	color:#333;
	background:#f5f5f5;
}
.foot a {
	color:#333;
}
.foot a:hover {
	border-bottom:1px solid #5e91ab;
	text-decoration: none;
}
.foot li.arrow:before {
	content: url(/img/icon_foot_arrow.png);
	margin-right:0.5rem;
	padding-left:0.7rem;
}
.footNav, .footCorp {
	padding-bottom:2rem;
	border-bottom:#ddd 1px solid;
}
.footNav dt {
	font-weight:400;
}
.footNav li {
	margin-bottom:0.6rem;
	font-size:0.8rem;
}
.footNav .service-link a{
	display: inline-block;
  width: 100%;
	margin-right: 0;
	margin-bottom: 0;
	padding: 1rem;
	background: #fff;
	border-radius: 4px;
}

.footNav .service-link a:hover{
	border-bottom:none;
}

.footNav .service-link a img{
	width: 180px;
}

.footer_link_dl li{font-size:0.7rem;}

.footCorp{
	padding-top: 2rem;
}

.footCorp ul {
  display: flex;
  margin-bottom: 0;
  gap: 1rem;
  justify-content: center;
}

.footCorp p, .footCorp li {
	font-size:0.7rem;
	margin-bottom: 0;
}

.footCorp li a[target="_blank"]:after {
	content:url('/img/icon_blank-gray.png');
	position:relative;
	top:0.15rem;
	margin-left:0.4rem;
}

.footSeal{
	padding-top: 40px;
	padding-bottom: 40px;
}

#pagetop {
	display:none;
	position:fixed;
	right:20px;
	bottom:20px;
	padding:0;
	margin:0;
}
.fixed #pagetop {
	display: block;
}
#pagetop a {
	background:transparent;
	display:block;
	height:60px;
	width:60px;
	opacity:0.5;
}
#pagetop a:hover {
	background:transparent;
	animation:opacity 1s both;
	border:0;
}
@keyframes opacity {
 100% {
opacity:1;
}
}
@media only screen and (max-width:768px) {
.fixed #pagetop {
	display: none;
}
}
.gmoGroupFooter {
	border-top:0 !important;
}
.gmoGroupFooter .gmoGroupFooter_relatedservicelist ul li, .gmoGroupFooter .gmoGroupFooter_relatedservicelist dl {
	font-size:10.5px !important;
}
/*20160328add*/
#gmocommonfooter {
	clear:both;
}
#cloud_header {
	padding-left:45px;
	box-sizing:border-box;
}
/* for foundation */
.breadcrumbs-sp .breadcrumbs {
	margin-bottom:0;
	padding-top:4.2rem;
}
.breadcrumbs-pc .breadcrumbs {
	margin-bottom:3rem;
}
.breadcrumbs {
}
.subheader {
	display:block;
	margin-bottom:1rem;
	font-size:1.1rem !important;
}
/*index_lineup*/
.index_lineup {
}
.index_lineup ul {
}
.index_lineup li {
	list-style:none;
}
.index_lineup li a {
	display:block;
	padding:30px 30px 20px;
	color: #333;
}
.index_lineup li a.thumbnail {
	margin-bottom:2rem;
	box-shadow:inset 0 0 1px rgba(0,0,0,0.85);
}
.index_lineup li a.thumbnail:hover,  .index_lineup li a.thumbnail:focus {
	box-shadow:inset 0 0 0 2px #A7DAF5;
	background-color:#F2F7FA;
	text-decoration: none;
}
.index_lineup li figure.display {
	display:block;
margin:0 0 .8rem 0;
}
.index_lineup li figure.display img {
	width:100%;
}
.index_lineup li p {
	min-height:4em;
	font-size: 1rem;
	margin-bottom: 0;
}
/*index_point*/
.index_point {
	border-top:#ddd 1px solid;
}
.index_point_bottom {
	margin-top:4rem;
	border-top:#ddd 1px solid;
	border-bottom:#ddd 1px solid;
}
.index_point_bottom .columns {
	padding:4rem 3rem 3rem;
}
.index_point_bottom .columns:nth-child(2) {
	border-left:#ddd 1px solid;
}
@media only screen and (max-width:768px) {
.index_point_bottom .columns {
	padding:4rem 0;
}
.index_point_bottom .columns:nth-child(2) {
	border-left:0;
	border-top:#ddd 1px solid;
}
}
.index_point_bottom h3 {
	min-height:3rem;
}
.index_point_bottom .columns:nth-child(1) h3 {
	padding-top:1.9rem;
}
.index_point_bottom h3 + div {
	margin-bottom:2rem;
}
.point_more {
	padding-top:3rem;
}
.index_point_bottom .point_more {
	padding-top:1rem;
}
/*index_news*/
.index_news {
}
.index_news a {
	display:block;
	padding:20px;
}
.index_news a.thumbnail {
margin-bottom:.2rem;
	box-shadow:inset 0 0 1px rgba(0,0,0,0.85);
	color: #333;
}
.index_news a.thumbnail:hover,  .index_news a.thumbnail:focus {
	box-shadow:inset 0 0 0 2px #A7DAF5;
	background-color:#F2F7FA;
	text-decoration: none;
}
.index_news h3 {
	margin:0 0 0.4rem 0;
	font-size:1.4rem;
}
.index_news p {
	margin-bottom:0.0rem;
}
.index_news p.new:after {
	content:"NEW";
	display:inline-block;
	margin-left:0.4rem;
	padding:3px;
	border:#ff5a5f 1px solid;
	color:#ff5a5f;
	line-height:1.0;
	font-size:1rem;
}
/*serviceLineup*/
#service01 {
	padding-top:1rem;
	border-top:#ddd 1px solid;
}
.serviceLineup {
}
.serviceLineup_inner {
	border-top:#ddd 1px solid;
}
.serviceLineup .columns {
	padding:8rem 3rem;
}
.serviceLineup .columns:nth-child(odd) {
	border-right:#ddd 1px solid;
}
.serviceLineup h2 {
	margin-bottom:4rem;
}
.serviceLineup h2 .subheader {
	min-height:4.0rem;
}
.serviceLineup .columns:nth-child(even) h2 .subheader {
	padding-top:1.5rem;
}
.serviceLineup h2 img {
	width:80%;
	height:auto;
}
.serviceLineup .button {
}
@media only screen and (max-width:768px) {
.serviceLineup_inner .large-6 + .large-6 {
	border-top:#ddd 1px solid;
}
}
/*servceiDetail*/
/*
.siteMenu { top:39px; width:100%; padding:10px 0 5px; z-index:1000; background:rgba(255,255,255,1); box-shadow:0 0 30px rgba(0,0,0,0.5); box-sizing:border-box; }
.siteMenu ul { margin:0; padding:0; }
.siteMenu ul li { display:inline-block; margin-left:1.5rem; }
.siteMenu ul li .alert { position:relative; top:0.35em; padding:0.5rem 1rem; font-size:0.85rem; }
*/
	/*subNav*/
.serviceSubNav {
	margin-bottom:1rem;
	border-top:#ddd 1px solid;
	border-bottom:#ddd 1px solid;
	text-align:center;
}
.fixed .serviceSubNav {
	position:fixed;
	top:38px;
	left:0;
	width:100%;
	padding-left:64px;
	background:#fff;
	box-sizing:border-box;
	z-index:1;
	box-shadow:0 3px 3px rgba(0,0,0,0.2);
	animation: slide-down 0.5s;
}
.serviceSubNav .serviceLogo {
	display:none;
}
.fixed .serviceSubNav .serviceLogo {
	display:block;
	float:left;
	width:30%;
	text-align:left;
margin-top: .7rem;
}
.fixed .serviceSubNav .serviceLogo img {
	width:auto;
	height:32px;
}
.kogeki .fixed .serviceSubNav .serviceLogo img {
	margin:0.75em 0 0 0;
}
.fixed .serviceSubNav .serviceSubNavInner {
	float:right;
	width:70%;
	text-align:right;
}
.serviceSubNav ul {
	margin:0;
	padding:0;
}
.fixed .serviceSubNav ul {
	float: right;
}
 @media only screen and (max-width:768px) {
.fixed .serviceSubNav {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	padding-left:0;
	background:#fff;
	box-sizing:border-box;
}
}
.serviceSubNav li {
	display:inline-block;
	padding:1.0rem;
	box-sizing:border-box;
}
.serviceSubNav li.active {
	border-bottom:#005bac 2px solid;
}
.serviceSubNav .sub {
	display: none;
}
@media only screen and (max-width:768px) {
.serviceSubNav {
	padding-bottom:1rem;
}
.serviceSubNav li {
	display:inline-block;
	padding:1.0rem 1.0rem 0;
	box-sizing:border-box;
}
.serviceSubNav li.active {
	border-bottom:none;
}
}
/*sp-ServiceNav*/
.sp-ServiceNav {
	position:fixed;
	top:0;
	left:0;
	z-index:9999;
	width:100%;
	margin:0;
	padding:0;
}
.sp-ServiceNav .top-bar {
	padding:0;
	background:none;
}
.sp-ServiceNav button.menu-icon {
	position:absolute;
	top:0;
	right:0;
	margin-top:1.0em;
	background:#000;
}
.sp-ServiceNav .title-bar {
	padding:0;
	border-bottom:#ddd 1px solid;
	color:#000 !important;
}
.kogeki .service-logo {
	padding:0.5em 0;
	background:rgba(255,255,255,1.0);
	box-sizing:border-box;
}
.kogeki .service-logo img {
	width:auto;
	height:30px;
}
.sp-ServiceNav .top-bar-section {
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.15);
}
.sp-ServiceNav .top-bar-section ul {
	background:#fff;
}
.sp-ServiceNav .top-bar-section li {
	border-bottom:#ddd 1px solid;
}
.sp-ServiceNav .top-bar-section li.line {
	border-bottom:#999 1px solid;
}
.sp-ServiceNav .top-bar-section li a {
	display: block;
	color:#000;
	background:none;
	padding: 0.8rem 0.8rem;
}
.service-logo {
}
/* .service-logo img { width:auto; height:36px; margin:0.65em 0 0 0; } */
.serviceSubNavFixed {
	margin:0 !important;
	padding:0 !important;
	text-align:center;
}
.serviceSubNavFixed li {
	display:inline-block;
	padding:1.0rem;
	box-sizing:border-box;
}
.serviceSubNavFixed li.active {
	border-bottom:#005bac 2px solid;
}
@media only screen and (max-width:768px) {
.serviceSubNavFixed {
	padding-bottom:1rem;
}
.serviceSubNavFixed li {
	display:inline-block;
	padding:1.0rem 1.0rem 0;
	box-sizing:border-box;
}
.serviceSubNavFixed li.active {
	border-bottom:none;
}
}
.serviceDetail {
}
.serviceDetailIntro {
	min-height:350px;
	padding-top:2.0rem;
	box-sizing:border-box;
}
.serviceDetailIntro.mini {
	min-height:155px;
	padding-top:2.0rem;
}
.kogeki .serviceDetailIntro {
	background:#eee url('../img/service/ips-waf/service_kogeki_visual.png') no-repeat right center;
	background-size:auto 360px;
}
.serviceDetailIntroInner {
}
.serviceDetailIntroInner .subheader {
	color:#444;
	font-size:0.9rem !important;
}
.serviceDetailIntroInner .lead {
	line-height:1.6;
	font-size:1.3rem;
	font-weight:600;
}
.serviceDetailIntro .button.alert {
	margin:1.5rem 0 2rem;
}
.serviceDetailIntro.mini h1 img {
	zoom:0.75;
}
@media only screen and (max-width:768px) {
.kogeki .serviceDetailIntro {
	padding-bottom:0;
	background:none;
}
.kogeki .serviceDetailIntro .columns:nth-child(2) {
	position:relative;
	overflow:hidden;
	height:auto;
	background:none;
}
.kogeki .serviceDetailIntro .service-visual {
	max-width:inherit !important;
	width:120% !important;
	margin:-80px 0 0 -20%;
}
}
.serviceDetailPoint {
}
.serviceDetailPoint header {
}
@media only screen and (max-width:768px) {
.serviceDetailPoint header {
	margin-bottom:0;
	padding:4rem 0 0;
}
}
.serviceDetailPointInner {
	padding-bottom:3rem;
	border-bottom:#ddd 1px solid;
}
.serviceDetailPoint ul {
	margin-bottom:3rem;
	box-sizing:border-box;
}
.serviceDetailPoint li {
	box-sizing:border-box;
}
.serviceDetailPoint li h3 {
	padding:0 0 0 60px;
	min-height:3.6rem;
	font-size:1.16rem;
}
.serviceDetailPoint li:nth-child(1) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon01.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(2) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon02.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(3) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon03.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(4) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon04.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(5) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon05.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(6) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon06.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(7) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon07.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(8) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon08.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li:nth-child(9) h3 {
	background:url('../img/service/ips-waf/kogeki_point_icon09.png') no-repeat 0 0.2em;
}
.serviceDetailPoint li h3 span {
	font-size:0.8rem;
}
.serviceDetailPoint li p {
	min-height:12rem;
	padding-bottom:2rem;
	border-bottom:#ddd 1px solid;
}
 @media only screen and (max-width:768px) {
.serviceDetailPoint li p {
	min-height:inherit;
}
}
/*serviceDetailCompare*/
.serviceDetailCompare {
	padding-top:4rem;
}

	/*table ips-waf*/

	@media only screen and (max-width:769px) {
.tabelWrap {
	position:relative;
	overflow:scroll;
	width:100%;
	height:auto;
}
table.ips-waf {
	width:100%;
	border:0;
}
table.ips-waf {
	min-width:640px !important;
}
}
.ips-waf thead,  .ips-waf tbody,  .ips-waf tfoot {
	border:0;
}
tbody tr:nth-child(even) {
	background:inherit;
}
.ips-waf thead th,  .ips-waf thead td {
	border-right:#c3c7cc 1px solid;
	border-bottom:#c3c7cc 1px solid;
	color:#fff;
	text-align:center;
	background:#b5b5b5;
	box-sizing:border-box;
}
.ips-waf thead th:last-child,  .ips-waf thead td:last-child {
	border-right:0;
}
.ips-waf thead th.ips-waf {
	background:#953438;
}
.ips-waf tbody th,  .ips-waf tbody td {
	border-right:#c3c7cc 1px solid;
	border-bottom:#c3c7cc 1px solid;
	color:#333333;
	vertical-align:middle;
	box-sizing:border-box;
}
.ips-waf tbody th:last-child,  .ips-waf tbody td:last-child {
	border-right:0;
}
.ips-waf tbody th {
	color:#5f646c;
	font-size:0.9rem;
	background:#ece7e7;
}
.ips-waf tbody td ul {
	display:inline;
}
.ips-waf tbody td li {
	display:inline-block;
	padding-left:1rem;
	font-size:0.8rem;
}
.ips-waf tbody td li {
	display:block;
	padding-left:1rem;
	font-size:0.75rem;
}
.ips-waf tbody td li.good {
	background:url('../img/service/ips-waf/icon_good.png') no-repeat 0 0.375em;
}
.ips-waf tbody td li.ok {
	background:url('../img/service/ips-waf/icon_ok.png') no-repeat 0 0.375em;
}
.ips-waf tbody td li.nogood {
	background:url('../img/service/ips-waf/icon_nogood.png') no-repeat 0 0.375em;
}
.ips-waf tbody td li.bad {
	background:url('../img/service/ips-waf/icon_bad.png') no-repeat 0 0.375em;
}
table.ips-waf + p {
	padding-bottom:9rem;
	border-bottom:#ddd 1px solid;
	font-size:0.8rem;
	text-align:right;
}
/*serviceDetailSummary*/
.serviceDetailSummary {
	padding-top:6rem;
}
.serviceDetailSummary h4 {
	margin-bottom:3rem;
	padding:0.5rem 1rem;
	border:#999 1px solid;
	border-radius:3px;
	font-size:1.1rem;
}
.serviceDetailSummary .figure {
	display:block;
	margin-bottom:5rem;
}
@media only screen and (max-width:769px) {
.serviceDetailSummary .figure img {
	width:100%;
	height:auto;
}
}
.serviceDetailSummaryCover {
	padding-bottom:3rem;
	border-bottom:#ddd 1px solid;
}
/*serviceDetailReport*/
.serviceDetailReport {
	padding-top:6rem;
}
.serviceDetailReport ul {
	background:url('../img/service/ips-waf/service_detail_report_figure.png') no-repeat right 87%;
}
@media only screen and (max-width:769px) {
.serviceDetailReport ul {
	background:none;
}
}
.serviceDetailReport li {
	position:relative;
	margin-bottom:3rem;
}
.serviceDetailReport h4 {
	min-height:4rem;
	padding-left:3.6rem;
	font-size:1.1rem;
}
.serviceDetailReport li:nth-child(1) h4 {
	background:url('../img/service/ips-waf/service_detail_report_icon01.png') no-repeat 0 0.3em;
}
.serviceDetailReport li:nth-child(2) h4 {
	background:url('../img/service/ips-waf/service_detail_report_icon02.png') no-repeat 0 0.3em;
}
.serviceDetailReport li:nth-child(3) h4 {
	background:url('../img/service/ips-waf/service_detail_report_icon03.png') no-repeat 0 0.3em;
}
.serviceDetailReport li:nth-child(4) h4 {
	background:url('../img/service/ips-waf/service_detail_report_icon04.png') no-repeat 0 0.3em;
}
.serviceDetailReport li:nth-child(5) h4 {
	background:url('../img/service/ips-waf/service_detail_report_icon05.png') no-repeat 0 0.3em;
}
.serviceDetailReport p {
	min-height:6rem;
	padding-bottom:2rem;
	border-bottom:#ddd 1px solid;
}
.serviceDetailReport li:nth-child(1) p:after {
	content:'1';
	position:absolute;
	bottom:-0.5rem;
	right:1rem;
	color:#f2b5af;
	font-size:3rem;
}
.serviceDetailReport li:nth-child(2) p:after {
	content:'2';
	position:absolute;
	bottom:-0.5rem;
	right:1rem;
	color:#f2b5af;
	font-size:3rem;
}
.serviceDetailReport li:nth-child(3) p:after {
	content:'3';
	position:absolute;
	bottom:-0.5rem;
	right:1rem;
	color:#f2b5af;
	font-size:3rem;
}
.serviceDetailReport li:nth-child(4) p:after {
	content:'4';
	position:absolute;
	bottom:-0.5rem;
	right:1rem;
	color:#f2b5af;
	font-size:3rem;
}
.serviceDetailReport li:nth-child(5) p:after {
	content:'5';
	position:absolute;
	bottom:-0.5rem;
	right:1rem;
	color:#f2b5af;
	font-size:3rem;
}
/*serviceDetailSpec*/
.serviceDetailSpec {
}
.serviceDetailSpec .figure {
	display:block;
	margin-bottom:4rem;
}
.serviceDetailSpec .button {
}
.serviceDetailSpecInner {
	margin-top:3rem;
	margin-bottom:3rem;
	padding:1rem 0 0;
	border-top:#ddd 1px solid;
	border-bottom:#ddd 1px solid;
}
.serviceDetailSpecInner dl {
	border-bottom:#ddd 1px solid;
}
.serviceDetailSpecInner dl:nth-child(3) {
	border-bottom:0;
}
.serviceDetailSpecInner dt, .serviceDetailSpecInner li {
	font-size:0.75rem;
	font-weight:400;
}
/*serviceDetailUse*/
.serviceDetailUse li figure {
	display:block;
	margin:0;
	padding:0;
}
.serviceDetailUse li img {
	width:100%;
	height:auto;
}
.serviceDetailUse ul {
	margin-bottom:1rem;
}
.serviceDetailUse ul + p {
	margin-bottom:5rem;
}
@media only screen and (max-width:769px) {
.serviceDetailUse li {
	margin-bottom:1rem;
}
.serviceDetailUse li:nth-child(3) {
	clear:both;
}
}
/*serviceDetailPrice*/
.serviceDetailPrice {
}
.serviceDetailPrice ul {
	margin-bottom:1rem;
}
.serviceDetailPrice ul + p {
	margin-bottom:5rem;
}
.serviceDetailPrice dl {
	display:inline-block;
	padding:1rem 4rem;
	border:#ddd 2px solid;
}
.serviceDetailPrice dt {
	display:inline-block;
	margin-right:1.5rem;
	font-weight:400;
}
.serviceDetailPrice dd {
	display:inline-block;
}
.serviceDetailPrice dd span {
	font-size:1.5rem;
	font-weight:600;
}
@media only screen and (max-width:769px) {
.serviceDetailPrice dl {
	min-width:80%;
	padding:1rem;
}
}
.serviceDetailPrice .button {
}
/*serviceDetailPayment*/
.serviceDetailPayment {
	padding-top:4rem;
	padding-bottom:4rem;
}
.serviceDetailPayment h3 {
	margin-bottom:1.5rem;
	padding:0.5rem 1rem;
	border:#999 1px solid;
	border-radius:3px;
	font-size:1.1rem;
}
.serviceDetailPayment h4 {
	margin-bottom:1rem;
	padding:0.5rem 1rem;
	border-radius:3px;
	font-size:1.0rem;
	background:#ece7e7;
}
.serviceDetailPayment .figure {
	display:block;
	margin-bottom:1rem;
}
.serviceDetailPayment ul {
}
.serviceDetailPayment li {
	display:block;
	padding-left:1.0rem;
}
.serviceDetailPayment li:before {
	content:'●';
	position:relative;
	left:-0.75rem;
	margin-right:-0.5rem;
	color:#999;
}
/*serviceDetailFlow*/
.serviceDetailFlow {
	padding-bottom:4rem;
}
.serviceDetailFlow ul {
}
.serviceDetailFlow dl {
	min-height:11rem;
	border-radius:3px;
	border:#ddd 1px solid;
}
.serviceDetailFlow dt {
	padding:0.75rem 0;
	background:#f7d9d5;
}
.serviceDetailFlow li:nth-child(2) dt,  .serviceDetailFlow li:nth-child(4) dt {
	background:#c7d1db;
}
.serviceDetailFlow dd {
	padding:0.75rem 0.4rem;
	font-size:0.8rem;
}
.serviceDetailFlow ul + p {
	margin-bottom:3rem;
}
.serviceDetailFlow .button {
}
/*serviceDetailInformation*/
.serviceDetailInformation {
	padding-top:3rem;
	padding-bottom:4rem;
}
.serviceDetailInformation h3 {
	font-size:1.2rem;
}
.serviceDetailInformation dl {
	margin:0;
	padding:0.6rem 0 0.4rem;
	border-bottom:#ddd 1px solid;
}
.serviceDetailInformation dt {
	font-weight:400;
}
.serviceDetailInformation figure {
	display:block;
	margin:0;
	padding:0;
}
.serviceDetailInformation figure img {
	width:100%;
	height:auto;
}

/* 印刷用の調整
---------------------------------------------------------- */
@media print {
	body{
		background:transparent;
		}
	.global-header,#foot,#cloud_header,#gmocommonheader,.gmoGroupFooter,#gmocommonfooter{
		display:none;
		}
	/* 印刷時にURLを非表示に */
	a[href]:after,abbr[title]:after {
		content: "" !important;
		}
	/* スクロールテーブルが切れるので調整 */
	table.scroll{
		overflow-x:visible;
		}
}

.cookie_banner p{font-size: 12px;}