﻿@charset "utf-8";

/* リンク設定 */
a:link,a:visited {
	text-decoration: none;
	color: #3cc1e1;
}

a:hover,a:active {
	text-decoration: none;
	color: #3bedda;
}

a,
a img {
	transition: 0.2s;
}

a:hover img {
	opacity: 0.7;
}

a {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;

}
/* デフォルトハック */
.inner:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

/* デフォルトイメージ */
img.frame {
	padding: 5px;
	border: 1px solid #666666;
	background: #FFFFFF;
	margin: 5px;
}

/* テンプレを使用する顧客の顧客IDに差し替えてください */

body.wcedit_201091352901 > .module,
body.wcarea_201091352901 > .module,
body.wcancedit_201091352901 > .module,
body.wcselect_201091352901 > .module {
 opacity: 1;
}
body.wcedit_201091352901  .sp-slide,
body.wcarea_201091352901  .sp-slide,
body.wcselect_201091352901  .sp-slide{
 position:relative;
}

body.wcedit_201091352901 .sp-image,
body.wcarea_201091352901 .sp-image,
body.wcselect_201091352901 .sp-image{
 margin:0 auto;
 width:400px;
 height:auto;
}
body.wcedit_201091352901 #globalfooter{
 position:relative;
}

img.right {
	margin: 0 0 5px 5px;
}

img.left {
	margin: 0 5px 5px 0;
}

/* 共通 */
html {
	background: #565656;
}
body {
	color: #222;
	font-size: 14px;
	line-height: 1.7;
	/* margin-bottom: 75px; */
	min-width: 1027px;
}
body.sub {
	margin-bottom: 0;
}

/* 汎用 */
.inner {
	display: block;
	margin: 0 auto;
	position: relative;
	width: 1000px;
}

.module {
	position: relative;
}
.module_half {
	margin: 0 50px;
}

body > .module {
	padding: 40px 0;
	overflow: hidden;
	opacity: 0;
}

div .module:not(:last-child) {
	margin-bottom: 40px;
}
div .title {
	margin-bottom: 10px;
}

.whitebox {
	background: #fff;
	padding: 15px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.3);
	position: relative;
}

.darkbox {
	background: #2f2f2f;
	color: #c3c3c3;
	padding: 15px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	position: relative;
}
.bluebox {
	background: #1c2a4e;
	padding: 15px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	position: relative;
	color: #fff;
}
.justify {
	margin-bottom: -20px;
}
.just2 {
	margin-bottom: 20px;
	width: 48%;
	box-sizing: border-box;
}
.just3 {
	margin-bottom: 20px;
	width: 31%;
	box-sizing: border-box;
}
.basetable {
	width: 100%;
}
.basetable th,
.basetable td {
	padding: 10px;
	background: #fff;
	border-bottom: 1px solid #e6e6e6;
	vertical-align: middle;
}
.basetable th {
	border-bottom: 1px solid #fff;
	width: 30%;
	background: #979797;
	color: #fff;
	font-weight: bold;
	text-align: left;
}

.corptable .basetable th {
	width: 60%;
}
.basetable tr:last-child th,
.basetable tr:last-child  td {
	border: none;
}

.table_inner th,
.table_inner td {
	border: none;
	background: none;
	padding: 0 0 10px 0;
	color: inherit
}
.table_inner tr:last-child th,
.table_inner tr:last-child  td {
	padding-bottom: 0;
}
.table_inner th {
	vertical-align: top;
	text-align: left;
	width: 20%;
}

.detaillink a {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 20px;
	color: #fff;
	background: #3cc1e1;
}
.detaillink a:hover {
	opacity: 0.7;
}

.detaillink.color1 a {
	background: #488ED6;
}
.detaillink.color2 a {
	background: #E26588;
}
.detaillink.color3 a {
	background: #3D589A;
}
.detaillink.color4 a {
	background: #63D1FF;
}
.detaillink.color5 a {
	background: #FF822E;
}
.detaillink.color6 a {
	background: #4FCD55;
}
.detaillink.color7 a {
	background: #E98AF4;
}

.module_title {
	font-size: 1.1429em;
	line-height: 1.7;
}
.module_title .text {
	margin-top: 30px;
}
.module_title .title h3 {
	font-weight: bold;
	font-size: 1.375em;
}

.c_main { color:#488ED6;}

/* header */
#globalheader div.inner {
	padding: 0 0 2px;
}

#globalheader .head_txt {
	background: #daedb6;
	color: #fff;
	padding: 1px 0;
	font-size: 0.8571em;
	text-indent: -999em;
	line-height: 50%;
}



#logo a {
	display: block;
	float: left;
	margin-top: 45px;
	margin-bottom: 45px;
}

.header_tel {
	float: right;
	margin: 5px 0px 5px;
	display: flex;
	flex-direction: column;
	text-align:left;
}

.header_tel .telinl {
    line-height: 1.3;
    background: #eee;
    padding: 4px 3px 3px;
    margin-bottom: 2px;
    font-size: 0.85em;
    border-radius: 0.5em;
}

.header_tel .telinl span {
    float: right;
    padding-left: 50px;
}

.header_tel .telinl a {
    text-decoration: none;
    color: #222;
}

.header_tel .telinl a:hover {
    color: #1f8601;
}

.header_tel ul li {
	display: table-cell;
	vertical-align: bottom;
	padding: 0 10px;
}

.header_tel ul li a {
	float: left;
	clear: both;
	margin-bottom: 5px;
}

/* keyvisual */
.module_keyvisual {
	overflow: hidden;
	box-shadow:0px 0px 35px -10px rgba(0,0,0,1);
	height: 700px;
}


/* globalnav */
#globalnav {
	width: 100%;
	z-index: 9999;
	background: rgba(122,163,9,0.8);
}

#globalnav .inner {
	width: 1027px;
	text-align:center;
}

#globalnav li {display: inline-block;
}
#globalnav a {
	padding:0 35px 0 20px;
	display: inline-block;
	height: 45px;
	line-height:50px;
	background: url(../img/globalnav.png) no-repeat right;
	float: left;
	color:#fff;
	text-align:center;
	font-size:16px;
	font-weight:500;
}

#globalnav li:last-child a { background:none;}

#globalnav a:hover {
	color:#51CAE7;
}



.title_b1 {
	text-align:center;
	font-size:2.00em;
	font-weight:bold;
}

.title_b2 {
	margin-top:0px;
	padding-top:20px;
	background:url(../img/line_shadow.png) no-repeat center top;
	text-align:center;
	font-size:2.00em;
	font-weight:bold;	
}

.title_b3 {
	margin-top:0px;
	padding-top:0px;
	padding-bottom:20px;
	background:url(../img/line_shadow.png) no-repeat center bottom;
	text-align:center;
	font-size:2.00em;
	font-weight:bold;	
}

.title_m1 {
	font-weight:bold;
	text-align:center;
	font-size:1.375em;
}

.title_m2 {
	font-weight:bold;
}



.title_m3 {
	margin:1em 0;
	font-weight:bold;
	font-size:1.375em;
	padding-left: 10px;
}

.title_m4 {
	margin:1em 0;
	padding-bottom:5px;
	padding-left: 10px;
	font-weight:bold;
	font-size:1.375em;
	border-bottom:1px solid #999;
	box-shadow: 0 6px 6px -6px rgba(0,0,0,0.5)
}

.title_m5 {
	margin:1em auto;
	padding:10px 20px;
	padding-bottom:5px;
	font-weight:bold;
	border:2px solid #000;
	font-size:1.375em;
	display:inline-block;
	text-align:center;
}

.title_m6 {
	margin:1em 0;
	text-align:center;
	padding-bottom:5px;
	font-weight:500;
	font-size:1.375em;
}

.title_m7 {
	margin:1em 0;
	text-align:center;
	padding-bottom:5px;
	font-weight:500;
	font-size:1.375em;
	border-bottom:1px solid #999;
	box-shadow: 0 6px 6px -6px rgba(0,0,0,0.5)
}

.title_s1 {
	font-weight:bold;
	padding-left: 10px;
}
.title_s2 {
	padding:5px 10px;
	font-weight:bold;
	border-bottom:1px solid #000;
	display:inline-block;
}
.title_s3 {
	padding-left:10px;
	font-weight:bold;
	border-left:3px solid #96ac1e;
	background: #d9e3a5;
}

.whitebox:not(.just2) .module {
	position: static;
}

.ib.whitebox .title {
	margin-bottom: 15px;
}

.whitebox .text {
	padding-bottom: 40px;
}
.whitebox .detaillink {
	position: absolute;
	right: 15px;
	bottom: 15px;
}

.wrap_news {
	margin-bottom:40px;
}

.news_scroll {
	max-height:220px;
	overflow:auto;
}

.news_dl {
	margin:0 5em;
	padding:1em 0;
	overflow:hidden;
	border-bottom:1px solid #ccc;
}
.news_dl  dt{
	padding-left:1em;
	float:left;
}
.news_dl  dd{
	margin-left:5%;
	padding-left:100px;
	display:block;
}


.module_lineup .whitebox,
.module_lineup .darkbox {
	padding: 0;
}

.module_lineup .whitebox .title,
.module_lineup .whitebox .module,
.module_lineup .darkbox .title,
.module_lineup .darkbox .module {
	padding: 0 15px;
	margin-bottom: 15px;
}
.module_lineup .whitebox .title,
.module_lineup .darkbox .title {
	text-align: center;
}
.module_lineup .whitebox .module:first-child,
.module_lineup .darkbox .module:first-child {
	padding: 0;
}
.module_lineup .whitebox .module:first-child img,
.module_lineup .darkbox .module:first-child img {
	width: 100%;
	height: auto;
}






/*Anchor style*/

.anc_box{
	
	margin-bottom: 20px;
	}

.anc_nav{
	width:105%;
	background: ;
	overflow: hidden;
	padding-bottom: 0px;
	padding-top: 0px;
}
	.anc_nav li{
	float: left;
	}
	.anc_nav li a{
	background: url(../img/allow_pan.png) no-repeat 200px #ffffff;
	text-decoration: none;
	display: block;
	width: 205px;
	padding: 5px 15px 5px 15px;
	border: 1px solid #CCC;
	color: #06F;
	margin-right: 16px;
	margin-bottom: 20px;
	-webkit-box-shadow: 0 1px 2px  #ccc;
	-moz-box-shadow: 0 1px 2px #ccc;
	box-shadow: 0 1px 2px #ccc;
	}
	
	.anc_nav li a:hover{
	background-color: #E2E2E2;
		}


/*Text style*/

.eeeback {
	background: #EEE;
	padding: 15px;
	border: 1px solid #D6D6D6;
}

.fffback {
	background: #fff;
	background: rgba(255,255,255,0.6);
	padding: 15px;
	border: 1px solid #cccccc;
}

.pinkback {
	background: rgba(255,236,243,0.8);
	padding: 15px;
}

.orangeback {
	background: rgba(255,228,200,0.8);
	padding: 15px;
}

.greenback {
	background: rgba(227,239,207,0.8);
	padding: 15px;
}

.lightblueback {
	background: rgba(223,240,249,0.8);
	padding: 15px;
}

.blueback {
	background: rgba(122,169,234,0.8);
	padding: 15px;
}

.btn_txt a{
	width: 190px;
	height: 34px;
	line-height: 33px;
	text-align: left;
	text-decoration: none;
	font-weight: bold;
	display: block;
	background: url(../img/bg_btn_txt.png) no-repeat left top;
	color: #ffffff;
	float: right;
	padding-left: 25px;
}

.btn_txt a:hover{ background-position: left bottom;}

.btnblue_txt a{
	width: 190px;
	height: 34px;
	line-height: 33px;
	text-align: left;
	text-decoration: none;
	font-weight: 500;
	display: block;
	background: url(../img/bg_btnblue_txt.png) no-repeat left top;
	color: #333333;
	float: right;
	padding-left: 25px;
}

.btnblue_txt a:hover{ background-position: left bottom;}

.more_txt a{
	width: auto;
	min-width:120px;
	height: auto;
	margin-top:20px;
	line-height: 33px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	display: block;
	background: ;
	color: #FFF;
	background:#aaa;
	float: right;
	padding: 5px 15px;
}

.more_txt a:hover{ background-position: left bottom;}


/*Block style*/

.block01 {
	margin-bottom: 3em;
	clear: both;
	overflow: hidden;
}

.block01s {
	margin-bottom: 1em;
	clear: both;
	overflow: hidden;
}

.block01_topics {
	margin-bottom: 1em;
	clear: both;
	overflow: hidden;
}

.block02 {
	width: 960px;
	clear: both;
	overflow: hidden;
}

.row02,.row03,.row04{
	width:105%;
	overflow:hidden;
	text-align:center;
}
		.row02 .txt,
		.row03 .txt{
			margin-top: 5px;
			font-size: 	93%;
			margin-bottom: 5px
		}
		.row04 .txt{
			margin-top:4px;
			font-size: 	93%;
		}
		.row02 li{
	margin-right: 30px;
	width: 480px;
	float: left;
		}		
		.row03 li{
	margin-right: 26px;
	width: 316px;
	float: left;
		}
		.row04 li{
	margin-right: 24px;
	width: 232px;
	float: left;
		}

.qaitem {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #666;
}
.qaitem dt {
	background: url(../img/qa_q.gif) no-repeat;
	padding-left: 35px;
	min-height: 35px;
	margin-bottom: 5px;
	padding-top: 6px;
	display:block;
}
.qaitem dd {
	background: url(../img/qa_a.gif) no-repeat;
	padding-left: 35px;
	min-height: 35px;
	padding-top: 6px;
	display:block;
}

/*Image style*/

.imgRight {
    float:right;
	margin-left:20px;
	margin-bottom:10px;
}
.imgLeft {
    float:left;
	margin-right:20px;
	margin-bottom:10px;
}

.frame-rad{border-radius: 5px;}

.frame-bd{
    padding:4px;
	background:#FFFFFF;
	border:1px solid #CCCCCC;
}

.hov:hover{
     filter: alpha(opacity=60);
    -moz-opacity:0.60;
    opacity:0.60;
}

.overflow_clear {
	overflow:hidden;
	height:100%;
}

.overflow_clear p.text {
	overflow:hidden;
	height:100%;
}

.w350 {
    width: 350px;
}

.imgLeft_m10 {
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}

.imgRight_m10 {
    float: right;
    margin-left: 10px;
    margin-bottom: 10px;
}


#copy {
	background: rgba(153,153,153,0.8);
	color: #555;
	font-family: Arial,Helvetica,sans-serif;
	text-align: center;
	padding: 7px 0;
	font-weight: bold;
}

#globalfooter {
	/* background: rgba(0,0,0,0.8); */
	position: fixed;
	width: 100%;
	left: 0;
	bottom: -1px;
	z-index: 9999;
	opacity: 0;
	transition: 0.4s;
}
#globalfooter.is_stuck{
	opacity: 1;
}
#globalfooter h1 {
	float: left;
}
#globalfooter ul {
	float: right;
	padding: 25px 0px 10px;
}

#globalfooter ul li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 10px;
}

#globalfooter .pt a {
	display: block;
	overflow: hidden;
	position: absolute;
	right: -50px;
	top: -60px;
	width: 40px;
	height: 30px;
	background: #404040;
	text-indent: -200%;
}

#globalfooter .pt a:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 10px 6px;
	border-color: transparent transparent #fff transparent;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -6px;
	margin-top: -5px;
}

/*Definition Term style*/

dl.data01 {
	clear:both;
		}		
		dl.data01 dt {
			padding:5px 0 5px 0;
			width:160px;
			float:left;
			font-weight:bold;
			display:block;
		}	
		dl.data01 dt.ico {
			width:160px;
			float:left;
			font-weight:bold;
		}
		dl.data01 dt.ico img{ vertical-align:middle;}
		dl.data01 dd {
			padding:5px 0 5px 170px;
			background:url(../img/line_dot.gif) repeat-x bottom;
			display:block;
		}

dl.data02 {
	clear:both;
	overflow: hidden;
	border-bottom: 1px dotted #aaaaaa;
		}		
		dl.data02 dt {
			padding:5px 0 5px 0;
			width:200px;
			float:left;
			font-weight:500;
			display:block;
		}	
		dl.data02 dt.ico {
			width:160px;
			float:left;
			font-weight:bold;
		}
		dl.data02 dt.ico img{ vertical-align:middle;}
		dl.data02 dd {
			padding:5px 0 5px 170px;
			/* background:url(../img/line_dot.gif) repeat-x bottom; */
			display:block;
			text-align: right;
		}


/*Table style*/

table.table01 {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 1px 1px;
	}	
	table.table01 td,
	table.table01 th{
	padding: 15px 12px;
	vertical-align: middle;
	color: #333;
	}	
	table.table01 th{
	text-align: right;
	background-color: transparent;
	border-bottom: 2px solid #CCC;
}
	table.table01 td{
	background-color: transparent;
	border-bottom: 1px dotted #CCC;
}
	
	.tacenter th,
	.tacenter td{text-align:center;}

table.table01b {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 3px 3px;
	}	
	table.table01b td,
	table.table01b th{
	padding: 10px 10px;
	vertical-align: middle;
	text-align: center;
	}	
	table.table01b th,table.table01b .th_row{
	text-align: center;
	background-color: #DBDBEA;
	border: 1px solid #CCC;
}
	table.table01b td{
	/background-color: #fff;
	border: 1px solid #CCC;
}
	
	.tacenter th,
	.tacenter td{text-align:center;}


table.table02 {
	width:100%;
	margin-bottom:20px;
	}	
	table.table02 td,
	table.table02 th{
	padding: 14px 10px;
	background: url(../img/fix/line_dot.gif) repeat-x bottom;
	text-align: center;
	vertical-align: middle;

	}	
	table.table02 th{
	text-align: center;
	color: #FFF;
}


table.table03 {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 3px 3px;
	}	
	table.table03 td,
	table.table03 th{
	padding: 10px 10px;
	vertical-align: middle;
	}	
	table.table03 th,table.table01b .th_row{
	background-color: #DADACF;
	border: 1px solid #CCC;
}
	table.table03 td{
	background-color: #fff;
	border: 1px solid #CCC;
}
	table.table03 a {
		color:#FF0080 ;
	}
	
	
	table.r2 th,table.r2 td{width:50%;}	
	table.r3 th,table.r3 td{width:33%;}
	table.r4 th,table.r4 td{width:25%;}	
	table.r5 th,table.r5 td{width:20%;}	
	table.r6 th,table.r6 td{width:17%;}


/* contact */

body > .module_contact {
	font-size: 1.1429em;
	background: #fff;
	text-align: center;
}
.module_contact > .inner {
	background: #fff;
	width: 900px;
	padding: 20px;
}
.module_contact h2 {
	margin-bottom: 30px;
}
.module_contact h3 {
	text-align: center;
	position: relative;
}


.module_contact .borderbox {
	border: 1px solid #bbb;
	padding: 30px 15px;
	width: 700px;
	margin: 0 auto;
}
.attention {
	font-size: 0.875em;
	margin-top: 20px;
}

.contacttable th,
.contacttable td {
	background: none;
	border-bottom: 1px solid #999;
	vertical-align: middle;
}
.contacttable th {
	color: #666;
	text-align: left;
}
span.require {
	color: #f66;
	margin: 0 10px;
}


.module_privacy {
	font-size: 0.75em;
	text-align: left;
	height: 300px;
	overflow: auto;
	border: 1px solid #ddd;
	padding: 10px;
	margin: 0 50px 0;
}
body .module_privacy .module:not(:last-child) {
	margin-bottom: 20px;
}
body .module_privacy .title {
	margin-bottom: 5px;
}

.module_privacy .borderbox {
	padding: 10px;
	width: 500px;
	text-align: center;
}

.module_privacy h4 {
	font-weight: bold;
	background: #e0e0e0;
	text-align: center;
	padding: 4px 0;
}
.module_privacy h5 {
	font-weight: bold;
}

input[type="text"],
textarea {
	font-size: 1.1429em;
	padding: 4px;
	box-sizing: border-box;
	width: 100%;
	border: none;
	background: #e0e0e0;
	transition: 0.2s;
}

.selectform{
	font-size: 1.1429em;
	padding: 4px;
	box-sizing: border-box;
	border:1px solid #e0e0e0;

	transition: 0.2s;
}

input[type="text"].w_semi {
	width: 300px;
}


input[type="text"]:focus,
textarea:focus {
	background: #d7f7ff;
}

input[type="submit"] {
	padding: 10px 40px;
	font-size: 1em;
}





.pink {background: #fc76a9; color: #ffffff;}
.orange {background: #fa9936; color: #ffffff;}
.green {background: #8fc040; color: #ffffff;}
.blue {background: #65b6e1; color: #ffffff;}
.gray {background: #4e677e; color: #ffffff;}

.sideimage_right {
     float: right;
	 width: 300px;
	 overflow: hidden;
	 text-align: right;
}

.sidetxt_left {
     float: left;
	 width: 680px;
}

.sideimage_left {
     float: left;
	 width: 300px;
	 overflow: hidden;
	 text-align: left;
}

.sidetxt_right {
     float: right;
	 width: 680px;
}

.listimage_left {
	 width: 300px;
	 float: left;
	 margin-right: 20px;
	 margin-bottom: 5px;	 
}

.listimage_right {
	 width: 300px;
	 float: right;
	 margin-left: 20px;
	 margin-bottom: 5px;	 
}

.listimagetxt {
     text-align: center;
	 padding-top: 2px;
	 padding-bottom: 2px;
	 margin-bottom: 10px;
}

.txt_r {
     text-align: right;
}

.pubimgLeft {
    float:left;
	margin-right:20px;
	margin-bottom:10px;
}

.pubttl {
     margin: 10px 0px 5px;
	 font-weight: 600;
	 color: #F4498A;
}

.pub_rightbox {
     width: 490px;
	 float: right;
}

.pubbgc {
     padding: 10px;
	 font-weight: 500;
	 background: #FFFEDB;
	 color: #333333;
 	 overflow: auto;
	 border: 1px solid #eae7a2;
}

.pubbgc_r {
     margin: 5px 0px 0px 0px;
	 float: right;
	 color: #333333;
}


/* sectionの背景 */
.section_main {background-color:#fff;}

div.just3 img:hover,li img:hover {opacity:0.6; transition:0.4s;}

li.noreserve img {padding-bottom:15px;}


/* pagetopの設定 */

.pagetop {
    display: none;
    position: fixed;
    bottom: 40px;
    right: 20px;
}

.pagetop a {
    display: block;
    background-color: #bbb;
    text-align: center;
    color: #111;
    font-size: 14px;
    text-decoration: none;
    padding: 5px 10px;
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

.pagetop a:hover {
    display: block;
    background-color: #b2d1fb;
    text-align: center;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    padding:5px 10px;
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

/* 固定部分の高さに合わせて数字調整 */
.wc_anctxt {
	margin-top: -110px;
	padding-top: 110px;
	display: inline-block;
}
