@charset "utf-8";
/* CSS Document */
html{
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, 'メイリオ', sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	margin:0;
	padding:0;
}

body{
	color:#333;
	font-size:16px;
	line-height:1.7;
	overflow-x:hidden;
	margin:0;
	padding:0;
}
article,aside,details,figcaption,figure,footer,header,
hgroup,main,menu,nav,section,summary{
	display: block;
}
address,caption,cite,code,dfn,var,h1,h2,h3,h4,h5,h6{
	font-style: normal;
	font-weight: normal;
}
img{
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}

div{
	word-wrap: break-word;
}
em{
	font-style:normal;
}
ol,ul,li{list-style:none;}
div,p,a,ul,ol,li,dl,dt,dd,table,td,th,h1,h2,h3,h4,h5,h6,
span,strong,input,select,textarea,section,article,figure,img,main,article{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin:0;
	padding:0;
}
.pchidden{
	display:none;
}
.sphidden{
	display:inherit;
}

.size1-5{font-size:1.5em;}
.size2-0{font-size:2.0em;}
.size2-8{font-size:2.8em;}


.cl{clear:both;}
.textC{text-align:center;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.w1200{
	width:100%;
	max-width:1200px;
	overflow: hidden;
}

/***************************************************
    side contents
***************************************************/
#sideMenu{
	background:#5288FE;
	height:100%;
	display: table-cell;
    vertical-align: top;
}
#sideMenu:before{
	content:"";
	width:5px;
	height:100%;
	position:fixed;
	left:220px;
	top:0;
	background:url(../images/bar_left.png);
	z-index:10;
}
#sideMenu:after{
	content:"";
	width:220px;
	height:1px;
	display:block;
}
#sideMenu #sideFixed{
	width:220px;
	padding:10px;
	text-align:center;
	background:#5288FE;
	position:fixed;
	top:0;
	left:0;
}
#sideMenu #sideFixed ul{
	margin-top:8px;
	border-top:1px #FFF solid;
}
#sideMenu #sideFixed ul li{
	border-bottom:1px #FFF solid;
}
#sideMenu #sideFixed ul li a{
	padding:12px 0;
	display:block;
	width:100%;
	color:#FFF;
	text-decoration:none;
	line-height: 1.2;
}
#sideMenu #sideFixed ul li a span{
	font-size:0.813em;
	display:block;
}
#sideMenu figure figcaption{
	text-align:left;
	color:#FFF;
	font-size:0.813em;
	line-height:1.2;
	text-decoration: underline;
}

/***************************************************
    contents
***************************************************/
div#wrapper{
	width:100%;
	display: table-cell;
    vertical-align: top;
}
div#wrapper .inner{
	background-image:url(../images/back.gif);
}
div#wrapper main{
	padding:180px 0 0;
	max-width:1200px;
	background:#FFF;
	margin-top:-120px;
}
div#wrapper header{
	background:#FAC241;
}
div#wrapper header .w1200{
	overflow:hidden;
}
div#wrapper header .titleText{
	display:inline-block;
	color:#FFF;
	font-size:1.125em;
	margin:10px 0 0 20px;
}
div#wrapper header .headInfo{
	float:right;
	padding:6px 0 5px;
}
div#wrapper header .headInfo img{
	display:block;
}

#pageTitle{
	width:100%;
	height:120px;
	position:relative;
	overflow:hidden;
}
#pageTitle:before{
	content:"";
	display:block;
	width:2000px;
	height:120px;
	background:#6ECBE6;
	position:absolute;
	bottom:32px;
	left:-2px;
	z-index:1;
	transform: rotate(-1.8deg);
	-moz-transform: rotate(-1.8deg);
	-webkit-transform: rotate(-1.8deg);
}
#pageTitle .titleInner{
	z-index:2;
	position:inherit;
	max-width:1200px;
}
#pageTitle .pageTitle{
    text-align: center;
    margin: 0 auto;
    display: table;
	color:#FFF;
	line-height:1.1;
	padding: 24px 60px;
	background:url(../images/icon_title.png) no-repeat left;
}
#pageTitle .pageTitle h1{
	font-size:2.250em;
}
#pageTitle .pageTitle h1 span{
	font-size:0.667em;
}
#pageTitle .pageTitle p{
	font-size:1.375em;
}
/**** main bnr  ****/
#mainBnr{
	width:100%;
	height:500px;
	position:relative;
	overflow:hidden;
}
#mainBnr:before{
	content:"";
	display:block;
	width:4000px;
	height:500px;
	background:#6ECBE6;
	position:absolute;
	bottom:140px;
	left:-24px;
	z-index:1;
	transform: rotate(-4deg);
	-moz-transform: rotate(-4deg);
	-webkit-transform: rotate(-4deg);
}
#mainBnr .mainBnrInner{
	z-index:2;
	position:inherit;
	max-width:1200px;
	height:500px;
	padding-top: 10px;
	overflow:hidden;
}
#mainBnr #slider{
	transform: rotate(-4deg);
	-moz-transform: rotate(-4deg);
	-webkit-transform: rotate(-4deg);
}
#mainBnr #slider .slick-list{
	overflow:inherit;
}
#mainBnr #slider ul{
	margin-left:-100px;
	background:#FFF;
}
.slick-track{
	background:#FFF;
}
.slick-slide{
    text-align: center;
}
#mainBnr .slick-slide img{
	display: inline-block;
}
/**** top contents ****/
div#wrapper main#top{
	padding-top:0;
}
.topContents{
	overflow:hidden;
	padding:60px 110px 80px;
    position: relative;
    z-index: 5;
}
.topContents figure{
	float:left;
}
.topContents figure:nth-child(2n){
	float:right;
}
.topContents figure figcaption{
	color:#333;
	font-size:13px;
	text-decoration:underline;
}
main#top .contents>article h2{
	border-left:none;
	text-align:center;
	padding-left:0;
}
main#top .contents>article>p{
	padding:0 120px;
}

/**** contents post ****/
main .contents>article .photo{
	display: table-cell;
    float: right;
}
main .contents>article .text{
	display: table-cell;
    width: 100%;
	padding-right:40px;
}
main .contents>article{
	margin-bottom:85px;
	padding:0 40px;
}
main .contents>article p strong{
	color:#FF5F8C;
	font-size:1.125em;
}
main .contents>article h2,
main .contents>article h3{
	font-size:2.125em;
	line-height:1;
	border-left:4px #FFAA23 solid;
	padding-left:10px;
	margin-bottom:20px;
}
main .contents>article h2 span{
	font-size:0.706em;
}

main .contents>article .inBox{
	width:49.5%;
	display:inline-block;
	padding-bottom:40px;
	vertical-align: top;
}
main .contents>article .inBox:nth-child(2n+1){
	clear:both;
}
main .contents .gray{
	background:#FBFBFB;
	position:relative;
	padding:40px;
}
main .contents .gray:before{
	content:"";
	display:block;
	width:100%;
	height:5px;
	background:url(../images/bar_top.png);
	position:absolute;
	top:-5px;
	left:0;
}
main .contents .gray:after{
	content:"";
	display:block;
	width:100%;
	height:5px;
	background:url(../images/bar_bottom.png);
	position:absolute;
	bottom:-5px;
	left:0;
}
main .contents .btn{
	display:block;
	width:480px;
	border:1px #E4E4E4 solid;
	border-radius:12px;
	background:#FFF url(../images/arrow_btn.gif) right no-repeat;
	margin:40px auto 0;
	clear:both;
}
main .contents .btn a{
	display:block;
	width:100%;
	text-align:center;
	padding:20px 0;
	font-size:24px;
	color:#333;
	text-decoration:none;
	line-height:1;
}

.formBnr{
	padding-bottom:105px;
}
main .contents .gray.navigation{
	padding-bottom:80px;
}
main .contents .gray.navigation:after{
	display:none;
}
main .contents .gray.navigation dl{
	width:32%;
	min-height:120px;
	float:left;
	margin-bottom:40px;
	margin-left:2%;
	overflow:hidden;
	position:relative;
}
main .contents .gray.navigation dl:nth-child(3n+1){
	margin-left:0;
	clear:both;
}
main .contents .gray.navigation dt{
	position:absolute;
	top:0;
	left:0;
}
main .contents .gray.navigation dd{
	width:100%;
	padding-left:130px;
	font-size:0.813em;
}
main .contents .gray.navigation dd.link,
main .contents .gray.navigation dd.link a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	cursor:pointer;
	font-size:0px;
	text-indent:-9999px;
	opacity:0;
}

/**** payment ****/
table.chatTable{
	background:#CCC;
	border-spacing: 1px;
	margin:20px 0 40px;
	width:100%;
}
table.chatTable th{
	background:#333;
	color:#FFF;
	font-weight:normal;
	font-size:18px;
	padding:4px 0;
	text-align:center;
}
table.chatTable thead th{
	font-weight:bold;
}
table.chatTable tbody th{
	width:50%;
}
table.chatTable th.blue{
	background:#6ECBE6;
}
table.chatTable th.red{
	background:#FF5F8C;
}
table.chatTable td{
	background:#FFF;
	padding:10px;
	vertical-align:top;
}
table.chatTable td span{
	font-size:0.813em;
}

table.chatTable.wideTable th{
	width:460px;
	text-align:left;
	padding:4px 10px;
}
table.chatTable.wideTable th.blue{
	background:url(../images/back_payment_blue.gif);
}
table.chatTable.wideTable th.red{
	background:url(../images/back_payment_red.gif);
}
table.chatTable.wideTable td{
	font-size:1.125em;
}
table.chatTable.wideTable td strong{
	font-size:1.333em;
	color:#FF5F8C;
}

main .contents .orange{
	font-size:1.500em;
	color:#FFAA23;
	border-bottom:2px #FFAA23 dotted;
	margin-bottom:10px;
}
main .contents .green{
	font-size:1.500em;
	color:#2DB96B;
	border-bottom:2px #2DB96B dotted;
	margin-bottom:10px;
}

/**** voice ****/
.voice dl{
	overflow:hidden;
	width:49%;
	display:inline-block;
	margin-bottom:30px;
}
.voice dl:nth-child(2n+1){
	clear:both;
}
.voice dl dt{
	width:240px;
	height:240px;
	float:left;
	border:1px #CCC solid;
}
.voice dl dt span{
	text-align:center;
	display:block;
	padding:2px 0;
}
.voice dl dd{
	width:50%;
	width:calc(100% - 245px);
	width:-webkit-calc(100% - 245px);
	float:right;
	font-size:0.875em;
}

/**** faq ****/
.faq dl{
	overflow:hidden;
}
.faq dl dt{
	width:54px;
	height:54px;
	float:left;
	text-align:center;
	font-size:1.375em;
	color:#FFF;
	font-weight:bold;
	padding-top: 8px;
}
.faq dl dd{
	width:95%;
	width:calc( 100% - 70px);
	width:-webkit-calc( 100% - 70px);
	float:right;
}
.faq dl.question{
	margin-bottom:10px;
}
.faq dl.question dt{
	background:#FF5F8C;
}
.faq dl.question dd{
	font-weight:bold;
	font-size:1.375em;
	padding-top: 8px;
}
.faq dl.answer{
	padding-bottom:20px;
	border-bottom:1px #CCC dotted;
	margin-bottom:20px;
}
.faq dl.answer dt{
	background:#FFAA23;
}
.faq dl.answer dd{
	font-size:1.125em;
}

#toTop{display:none;}

/***************************************************
    footer
***************************************************/
footer{
	background:#333;
	color:#FFF;
	font-size:0.813em;
}
footer .w1200{
	padding:40px;
}
footer dl.sitemap{
	margin-top:20px;
}
footer dl.sitemap dd{
	float:left;
	padding:0 20px 0 10px;
	background:url(../images/arrow_white.gif) no-repeat left;
}
footer dl.sitemap dd a{
	color:#FFF;
}
footer .footMenu{
	width:80%;
	width:calc(100% - 300px);
	width:-webkit-calc(100% - 300px);
	float:left;
}
footer .footLink{
	width:278px;
	float:right;
}
footer .footLink p{
	margin-bottom:10px;
}
footer .footBottom{
	background:#000;
}
footer .footBottom address,
footer .footBottom span{
	max-width:1200px;
	display:block;
	color:#FFF;
	text-align:center;
}

#toTop{
	position:fixed;
	right:10px;
	bottom:10px
}
#toTop a{
	display:block;
	width:60px;
	height:60px;
	text-indent:-9999px;
	background:#FFF url(../images/arrow_toTop.gif) no-repeat;
}


/***************************************************
    smartfone
***************************************************/
@media (max-width: 640px) {
	body{
		font-size:13px;
		padding-top:40px;
	}
	img{
		width:100%;
		height:auto;
	}
	.pchidden{
		display:inherit;
	}
	.sphidden{
		display:none;
	}
	
	/**** side contents ****/
	#sideMenu{
		position: fixed;
		top: 0;
		left: -225px;
		height: 100%;
		z-index: 99;
		display: block;
		padding-top: 40px;
	}
	#sideMenu:before{
		left:-100%;
		background: rgba(0,0,0,0.6);
		width: 100%;
		z-index: -1;
	}
	#menuBtn{
		position: fixed;
		top: 5px;
		left: 5px;
		width:30px;
		heihgt:30px;
	}
	#sideMenu #sideFixed{
		position:static;
		padding:0;
		height: 100%;
	}
	#sideMenu #sideFixed .logo{
		position: fixed;
		top: 0;
		left: 0;
		background: #5288FE;
		width: 100%;
		padding: 5px 0;
	}
	#sideMenu #sideFixed .logo img{
		width: auto;
    	height: 30px;
	}
	#sideMenu #sideFixed .logo a{
		display:inline-block;
	}
	#sideMenu #sideFixed nav{
		padding:0 10px;
		height:100%;
		overflow-y:auto;
	}
	#sideMenu #sideFixed ul{
		margin-top:0;
	}
	
	/**** header ****/
	div#wrapper header{
		position:relative;
	}
	div#wrapper header .titleText{
		font-size: 11px;
		margin: 0;
		padding: 0 5px;
		text-align: center;
		display: block;
	}
	div#wrapper header .headInfo{
		display:none;
	}
	
	/**** mainBnr ****/
	div#wrapper .inner{
		background:none;
	}
	#mainBnr{
		height:auto;
		background:#6ECBE6;
	}
	#mainBnr:before{
		display:none;
	}
	#mainBnr .mainBnrInner{
		width:100%;
		height:auto;
		padding-top:0;
		margin:20px 0 40px;
	}
	#mainBnr #slider {
		transform: rotate(0);
		-moz-transform: rotate(0);
		-webkit-transform: rotate(0);
	}
	#mainBnr #slider ul{
		margin-left:0;
		width:100%;
	}
	#mainBnr .mainBnrInner img{
		width:100%;
		height:auto;
	}
	.slick-slide{
		opacity:0.4;
	}
	.slick-current{
		opacity:1.0;
	}
	
	div#wrapper{
		display:block;	
	}
	
	/**** contents ****/
	#pageTitle{
		height:80px;
	}
	#pageTitle .pageTitle{
		padding:20px 34px;
		background-size:40px auto;
	}
	#pageTitle .pageTitle h1{
		font-size:1.5em;
	}
	
	div#wrapper main{
		padding: 160px 0 0;
	}
	div#wrapper main#top{
		padding-top: 0;
    	margin-top: -20px;
	}
	.topContents figure{
		float:none;
		margin-bottom:10px;
	}
	.topContents figure:nth-child(2n){
		float:none;
	}
	.topContents{
		padding:0 5px 60px;
	}
	.topContents figure figcaption{
		font-size:11px;
	}
	main .contents>article{
		padding:0 5px;
		margin-bottom: 65px;
	}
	main#top .contents>article>p{
		padding:0;
	}
	main .contents .btn{
		width:auto;
		margin:40px 10px 0;
	}
	main .contents .btn a{
		font-size:13px;
	}
	main .contents .gray{
		padding:20px 5px;
	}
	main .contents>article h2,
	main .contents>article h3{
		font-size:1.8em;
	}
	.formBnr{
		padding:0 5px 60px;
	}
	
	main .contents .gray.navigation dl{
		width:100%;
		margin:0 0 10px;
		padding-bottom: 10px;
		border-bottom: 1px #CCC dotted;
		min-height: 110px;
	}
	main .contents .gray.navigation dt{
		width:90px;
		height:90px;
	}
	main .contents .gray.navigation dd{
		font-size: 1em;
		padding-left: 95px;
		padding-right: 15px;
	}
	main .contents>article .photo{
		float: none;
		display: block;
		width: 160px;
		margin: 0 auto 5px;
	}
	main .contents>article .text{
		padding-right:0;
	}
	main .contents>article .inBox{
		width:100%;
	}
	
	/**** payment ****/
	table.chatTable tbody th{
		font-size:13px;
		padding:5px;
	}
	table.chatTable td{
		font-size:11px;
		padding:5px;
	}
	table.chatTable.wideTable th,
	table.chatTable.wideTable td{
		width: 100%;
    	display: block;
	}
	
	/**** voice ****/
	.voice dl{
		width:100%;
		display:block;
		border-bottom:1px #CCC dotted;
		padding-bottom:20px;
		margin-bottom: 20px;
	}
	.voice dl dt{
		width:120px;
		height:140px;
		font-size:11px;
	}
	.voice dl dd{
		width:80%;
		width: calc(100% - 130px);
    	width: -webkit-calc(100% - 130px);
	}
	
	/**** faq ****/
	.faq dl.question{
		margin-bottom:0;
	}
	.faq dl dt{
		width: 100%;
		height: auto;
		padding: 2px 0;
		float: none;
	}
	.faq dl dd{
		width: 100%;
		padding: 5px;
		float: none;
	}
	.faq dl.question dd{
		border: 1px #FF5F8C solid;
		font-size: 1.2em;
	}
	.faq dl.answer dd{
		border: 1px #FFAA23 solid;
		font-size: 1em;
	}
	.faq dl img{
		width:auto;
	}
	
	/**** contact ****/
	.contactForm{
		height:870px;
	}
	
	/**** link ****/
	.linkBox table{
		width:100%;
	}
	.linkBox .links img{
		width:auto;
	}
	
	/**** footer ****/
	footer{
		font-size:1em;
	}
	footer .w1200{
		padding:10px 5px;
	}
	footer .footMenu{
		float:none;
		width:100%;
	}
	footer dl dt{
		font-size: 1.25em;
	}
	footer dl.sitemap dd{
		float: none;
		background: #666 url(../images/arrow_white.png) no-repeat 10px;
		padding: 0px;
		border-bottom: 1px #FFF dotted;
	}
	footer dl.sitemap dd a{
		padding: 5px 0 5px 20px;
    	display: block;
	}
	footer dl.sitemap dd:last-child{
		border-bottom:none;
	}
	footer .footLink{
		float: none;
    	margin: 20px auto 0;
	}
	
}