@charset "utf-8";

/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
*{ margin:0; padding:0; box-sizing:border-box; }
select option{ padding:0 5px; }
body{ color:#011535; background:#fff url(../images/bg.png) center top repeat; font:16px helvetica, arial, 'hiragino kaku gothic pro', meiryo, 'ms pgothic', sans-serif; line-height:1.8; text-align:center; min-width:1020px; _display: inline;_zoom:1; }
h1 , h2 , h3 , h4 , h5 , h6 , address{ font-style:normal; font-weight:normal; font-size:100%; }
ul{ list-style-type:none; }
img{ border:0; vertical-align:bottom; }

table{ border-spacing:0; border:0; }
table th{ text-align:left; vertical-align:middle; font-weight:normal; }
table td{ word-break:break-all; }

.floatR{ float:right; }
.floatL{ float:left; }

.alignL{ text-align:left; }
.alignR{ text-align:right; }
.alignC{ text-align:center; }

.rel{ position:relative; }
.abs{ position:absolute; }


/* clearfix **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.cf:after{ content:" "; display:block; clear:both; }


/* link **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
a:link , a:visited{ color:#0000ff; text-decoration:underline; }
a:hover{ color:#ff8000; text-decoration:underline; }


/* font decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* size */
.fontSS{ font-size:12px; }
.fontS{ font-size:14px; }
.fontL{ font-size:20px; }
.fontLL{ font-size:24px; }
.fontLLL{ font-size:28px; }

/* color */
.txt-red{ color:#d2032b; font-weight:bold; }
.txt-blue{ color:#007f94;; font-weight:bold; }

/*indent */
.idt , ul.assist li , .system li{ padding-left:1.0em; text-indent:-1.0em; }
.idt-half{ padding-left:0.5em; text-indent:-0.5em; }

/*other */
.str{ font-weight:bold; }
.str-reset{ font-weight:normal; }

.underline{ text-decoration:underline; }
.underline-double{ border-bottom:double medium; }

.waveline{ background:url(../images/wave_line.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-red{ background:url(../images/wave_line_red.png) repeat-x left bottom; padding-bottom:7px; }
.waveline-blue{ background:url(../images/wave_line_blue.png) repeat-x left bottom; padding-bottom:7px; }

.marker{background-color:#fff600; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* padding */
.spt0{ padding-top:0px !important; }
.spt5{ padding-top:5px !important; }
.spt10{ padding-top:10px !important; }
.spt15{ padding-top:15px !important; }
.spt20{ padding-top:20px !important; }
.spt25{ padding-top:25px !important; }
.spt30{ padding-top:30px !important; }
.spt35{ padding-top:35px !important; }

.spb0{ padding-bottom:0px !important; }
.spb5{ padding-bottom:5px !important; }
.spb10{ padding-bottom:10px !important; }
.spb15{ padding-bottom:15px !important; }
.spb20{ padding-bottom:20px !important; }
.spb25{ padding-bottom:25px !important; }
.spb30{ padding-bottom:30px !important; }
.spb35{ padding-bottom:35px !important; }

/* margin */
.smt0{ margin-top:0px !important; }
.smt5{ margin-top:5px !important; }
.smt10{ margin-top:10px !important; }
.smt15{ margin-top:15px !important; }
.smt20{ margin-top:20px !important; }
.smt25{ margin-top:25px !important; }
.smt30{ margin-top:30px !important; }
.smt35{ margin-top:35px !important; }
.smt40{ margin-top:40px !important; }
.smt45{ margin-top:45px !important; }
.smt50{ margin-top:50px !important; }

.smb0{ margin-bottom:0px !important; }
.smb5{ margin-bottom:5px !important; }
.smb10{ margin-bottom:10px !important; }
.smb15{ margin-bottom:15px !important; }
.smb20{ margin-bottom:20px !important; }
.smb25{ margin-bottom:25px !important; }
.smb30{ margin-bottom:30px !important; }
.smb35{ margin-bottom:35px !important; }
.smb40{ margin-bottom:40px !important; }
.smb45{ margin-bottom:45px !important; }
.smb50{ margin-bottom:50px !important; }

.sml0{ margin-left:0px !important; }
.sml20{ margin-left:20px !important; }
.sml30{ margin-left:30px !important; }
.sml50{ margin-left:50px !important; }

.smr0{ margin-right:0px !important; }
.smr20{ margin-right:20px !important; }
.smr30{ margin-right:30px !important; }
.smr50{ margin-right:50px !important; }

/* paragraph */
p{ padding:30px 0 }
p.lh-reset{ line-height:1.0; }

/* original frame */
.box{ margin:0 50px; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.shadow{ box-shadow:0px 0px 8px rgba(0,0,0,0.4); }

table{ width:calc(100% - 100px); width:-webkit-calc(100% - 100px); border-collapse:separate; border-spacing:1px; background-color:#cdcdcd; line-height:2; font-size:14px; }
/*↑width:calc(100% - boxクラスの左右のmargin); */
table th , table td{ border:1px solid #fff; padding:5px 10px; }
table th{ font-weight:bold; background-color:#cdcdcd; width:22%; vertical-align:middle; }
table td{ background-color:#fff; }
table ol{ margin-left:20px; }

ul.assist{ font-size:12px; padding:15px 25px 12px; line-height:1.6; border:solid 1px #cdcdcd; }

.system{ font-size:14px; }

dl.rule{ padding:20px; border-radius:3px; border:solid 1px #cdcdcd; font-size:12px; line-height:1.6; text-align:left; }
dl.rule dt{ font-weight:bold; font-size:14px; text-align:center; }


/* responsive  **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.pc-item{ display:block; }
.sp-item{ display:none; }

[class^="pic"]{ float:right; margin:0 50px 20px 20px; }
.inner [class^="pic"]{ float:right; margin:0 0 20px 20px; }

.inner{ padding:20px; background-color:#fff; }
.inner p{ margin:0 0 30px; }
.inner p:last-child{ margin:0; }


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:1050px; margin:0 auto; text-align:left; position:relative; }

.entry img{ box-shadow:0 1px 8px rgba(0,0,0,0.2); }

/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.top{background:url(../images/top_sip_bg.png) center top no-repeat ; padding-bottom: 35px; }
.top p{font-size:18pt; color:#fff; font-weight:bold; text-align:left; line-height:150%;}
.top .wrap h2{ width:90%; }

/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* section1 */
.section1{background:url(../images/wave_bg.png) top no-repeat; }
.section1 .catch {padding-top:30px; text-align:center;}
.section1 .txt{line-height:120%; text-align: center; margin-top:20px; font-size:34px; font-weight: bold; color: #04315d; }
.section1 .list ul{padding:5px 0 20px 40px; }
.section1 .list ul li{background: url(../images/sec1_list.png) no-repeat left top; padding:0 0 10px 40px; line-height:190%;}
.section1 .list .pop{float:right; position:absolute; top:340px; right:20px; }
.section1 .list2{margin-top:20px; background-color: rgba(255,255,255,0.5); position:relative;}
.section1 .list2 .sbt{position: absolute; top:-25px; left:-25px;}
.section1 .list2 ul{padding: 80px 0 20px 50px;}
.section1 .list2 ul li:nth-child(1) {background: url(../images/sec2_list1.png) no-repeat left top; padding:0 0 20px 40px; line-height:170%;}
.section1 .list2 ul li:nth-child(2) {background: url(../images/sec2_list2.png) no-repeat left top; padding:0 0 20px 40px; line-height:170%;}
.section1 .list2 ul li:nth-child(3) {background: url(../images/sec2_list3.png) no-repeat left top; padding:0 0 20px 40px; line-height:170%;}
.section1 .list2 ul li:nth-child(4) {background: url(../images/sec2_list4.png) no-repeat left top; padding:0 0 20px 40px; line-height:170%;}
.section1 .list2 ul li:nth-child(5) {background: url(../images/sec2_list5.png) no-repeat left top; padding:0 0 20px 40px; line-height:170%;}
.section1 .list2 .pop{float:right; position: absolute; top:-20px; right:20px; }
.section1 .btn{width:820px; margin:20px auto ; box-sizing: border-box;}
.section1 .btn .btnp{float:left;}
.section1 .btn .btnr{float:right;}

/* section2 */
.section2{margin-top:20px; padding-bottom: 10px;}
.section2 {background:url(../images/sec2_bg.png) repeat left top; }
.section2 .listl{margin-top:15px; padding-left:50px; }
.section2 .listl .txt{line-height:200%; margin-top: 20px;}
.section2 .btn{width:820px; margin:20px auto ; box-sizing: border-box;}
.section2 .btn .btnp{float:left;}
.section2 .btn .btnr{float:right;}

.btn{margin-top: 20px;}

.changed{display:block; }
.changed2{display:none; }

input[type=checkbox]:checked ~ div.changed {
    display:none;
}
input[type=checkbox]:checked ~ div.changed2 {
    display:block;
}


/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer{ color:#fff; background: url(../images/top_bg.png) repeat; padding:20px 0 15px 0; }
.footer .wrap{box-sizing: border-box; overflow:hidden; }
.footer .txt{float: left; font-size:12px;}
.footer .url{ font-size:12px; border: solid #fff 1px; width:380px; padding:10px 10px 10px 15px;}
.footer .logo{float: right; }
.footer a{ color:#fff; font-size:12px; }


/* ★★★ タブレット ★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 768px){
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:100%; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* paragraph */
p{ margin:0 10px 30px; }

/* original frame */
.box{ margin:0; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.card img{ max-width:366px; width:100%; height:auto; }

table{ width:100%; }
table th , table td{ display:block; }
table th{ width:100%; }


/* responsive **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.pc-item{ display:none; }
.sp-item{ display:block; }

[class^="pic"],.inner [class^="pic"]{ float:none; margin:0 auto 20px; }

.inner{ padding:20px; text-align:center; }
.inner p{ text-align:left; }

.w100 img{ width:100%; height:auto; }
.w90 img{ width:90%; height:auto; }
p img{ max-width:520px; width:100%; height:auto; }


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:calc(100% - 20px); -webkit-width:calc(100% - 20px); margin:0 10px; }
/*↑width:calc(ウィンドウ幅 - 左右に空けたい余白の合計値);*/

/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.top p{font-size:12pt; color:#fff; font-weight:bold; text-align:left; line-height:150%}


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.contents{ background:url(../images/contents_bg_sp.jpg); }

/* section1 */
.section1 .catch .img{text-align: center; margin-bottom:10px;}
.section1 .txt{ text-align: center; font-size:26px;  }
.section1 .list ul{padding:0px 5px 0px 10px;}
.section1 .list{margin-top:10px;}
.section1 .list2 ul{padding:70px 20px 0px 20px;}
.section1 .list2{margin-top:30px;}
.section1 .btn{width:auto; text-align:center;}
.section1 .btn .btnp{float:none; margin-bottom:20px;}
.section1 .btn .btnr{float:none; }
	
/* section2 */
.section2 .btn{width:auto; text-align:center;}
.section2 .btn .btnp{float:none; margin-bottom:20px;}
.section2 .btn .btnr{float:none; }
.section2 .listl{padding-left:15px; }


/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer .wrap{width:auto; text-align:center;}
.footer .wrap .txt{float:none; margin-bottom:10px;}
.footer .wrap .url{margin: 5px auto 0;}
.footer .wrap .logo{float:none;} 


}


@media only screen and (max-width: 540px){
/* top ********** スマホサイズまで待つと小さくなり過ぎるので 540px から2分割にしている
///////////////////////////////////////////////////////////////////////////////////////////////*/



/* ★★★ スマホ ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 414px){ /* iPhone6Plus */
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:320px; }
/*↑最小幅指定*/


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/


}

