@charset "utf-8";

/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
*{ margin:0; padding:0; box-sizing:border-box; }
select option{ padding:0 5px; }
body{ color:#333; background: url(../images/top_bg.jpg) center top no-repeat, url(../images/bg.png) center top repeat #f5f5f5; font:17px helvetica, arial, 'hiragino kaku gothic pro', meiryo, 'ms pgothic', sans-serif; line-height:1.8; text-align:center; min-width:1144px; _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:#014374; text-decoration:underline; }
a:hover{ color:#fa7319; text-decoration:underline; }


/* font decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* size */
.fontSS{ font-size:12px; }
.fontS{ font-size:14px; }
.fontSL{ font-size:20px; }
.fontL{ font-size:22px; }
.fontLL{ font-size:26px; }

/* color */
.txt-red{ color:#d70a3a; font-weight:bold; }
.txt-blue{ color:#1650d3; font-weight:bold; }
.txt-brown{ color:#3e3922; font-weight:bold; }
.txt-orange{ color:#af7955; font-weight:bold; }
.txt-yellow{ color:#afa355; font-weight:bold; }
.txt-green{ color:#75c08e; font-weight:bold; }
.txt-purple{ color:#945de8; 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; }
.underline-red{ border-bottom:solid 2px #a12c2e; }
.underline-blue{ border-bottom:solid 2px #345d8c; }

.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-yelow{background-color:#fffcac; }
.marker-blue{background-color:#b1c3df; }


/* 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; }
.spt40{ padding-top:40px !important; }
.spt45{ padding-top:45px !important; }
.spt50{ padding-top:50px !important; }
.spt55{ padding-top:55px !important; }
.spt60{ padding-top:60px !important; }
.spt65{ padding-top:65px !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; }
.spb50{ padding-bottom:50px !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; }
.smt55{ margin-top:55px !important; }
.smt60{ margin-top:60px !important; }
.smt70{ margin-top:70px !important; }
.smt80{ margin-top:80px !important; }
.smt90{ margin-top:90px !important; }
.smt-200{ margin-top:-200px !important; }
.smt-120{ margin-top:-120px !important; }
.smt-20{ margin-top:-20px !important; }
.smt-40{ margin-top:-40px !important; }
.smt-50{ margin-top:-50px !important; }
.smt-70{ margin-top:-70px !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; }
.smb21{ margin-bottom:21px !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; }
.smb70{ margin-bottom:70px !important; }
.smb120{ margin-bottom:120px !important; }
.smb-20{ margin-bottom:-20px !important; }

.sml0{ margin-left:0px !important; }
.sml5{ margin-left:5px !important; }
.sml10{ margin-left:10px !important; }
.sml15{ margin-left:15px !important; }
.sml20{ margin-left:20px !important; }
.sml30{ margin-left:30px !important; }
.sml50{ margin-left:50px !important; }

.smr0{ margin-right:0px !important; }
.smr10{ margin-right:10px !important; }
.smr20{ margin-right:20px !important; }
.smr30{ margin-right:30px !important; }
.smr50{ margin-right:50px !important; }
.smr80{ margin-right:80px !important; }

/* paragraph */
p{ margin:0 50px 30px; }
p.lh-reset{ line-height:1.0; }

/* original frame */
.box{ margin:0 25px; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.shadow{ box-shadow:0px 0px 8px rgba(0,0,0,0.4); }

table{ width:calc(90%); width:-webkit-calc(95%); 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; box-shadow:inset 0px 0px 10px 0 #dbd8cc; }
table td{ background-color:#fff; box-shadow:inset 0px 0px 10px 0 #dbd8cc; }
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; }

.rule{ background-color:#f6f6f6; padding:20px 30px; border-radius:3px; border:solid 1px #cdcdcd; font-size:14px; line-height:1.6; text-align:left; margin: 0 35px;}
.rule2{ background-color:#fffee8; padding:20px 30px; border-radius:3px; border:solid 1px #cdcdcd; font-size:14px; line-height:1.6; text-align:left; margin: 0 20px;}

/* 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:0px; background-color:#fff; }
.inner p{ margin:0 10px 10px 10px; }
/*.inner p:last-child{ margin:0; }*/


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:1050px; margin:0 auto; text-align:left; position:relative; }


/* header **********
///////////////////////////////////////////////////////////////////////////////////////////////*/


/* timer ********** タイマーが必要な場合のみ記述
///////////////////////////////////////////////////////////////////////////////////////////////*/
.timer{ width:399px; height:100px; margin:20px auto 10px; position: relative; }
.timer .timeDay{ position:absolute; top:35px; left:0px; }
.timer .timeHr{ position:absolute; top:35px; left:108px; }
.timer .timeMmin{ position:absolute; top:35px; left:224px; }
.timer .timeSec{ position:absolute; top:35px; left:312px; }
.timer .timeMsec{ display:none }
.timer span img{ width:25px; height:44px; }

/* form **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.mailform{margin:10px 35px; padding:30px 20px 25px; text-align:center; border:solid 3px #fff; box-shadow:0 0 10px 5px #6ee5fa inset,0 0 10px #6ee5fa;background:url(../images/form_bg.png) repeat;}
.mailform ul{ margin:20px 50px 25px; text-align:left; }
.mailform ul li{ margin-bottom:10px; }
.mailform ul li span,.mailform ul li input{ float:left; }
.mailform ul li span{ width:175px; padding-top:7px; }
.mailform ul li input{ width:calc(100% - 175px); width:-webkit-calc(100% - 175px); height:40px; padding:10px; border:solid 1px #aaa; box-shadow:0 0 8px #e2e2e2 inset; font-size:18px; }
.mailform .txt {font-size:14px; line-height: 130%;  color:#fff;} 
.mailform .txt .spbr{display:none;}

.mailform a:link , .mailform a:visited{ color:#fcff24; text-decoration:underline; }
.mailform a:hover{ color:#ffd3fd; text-decoration:underline; }

.rule a:link , .rule a:visited{ color:#014374; text-decoration:underline; }
.rule a:hover{ color:#fa7319; text-decoration:underline; }

.contents .form{padding:15px 20px 15px; text-align:center; background:#ece9e0; border:double 4px #fff; }

.entry img{ box-shadow:0 1px 8px rgba(0,0,0,0.2); }

.pre-book.pc-item {position: relative; top: -1px; margin-top: -100px;}
.pre-book.sp-item.w100 {position: relative; top: -10px; margin-top: -70px;}


/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* catch */
.top .wrap{ width: 1010px; padding-top:10px;}
.wraptxt{ width:1160px; margin:0 auto; text-align:left; }
.top .header .timer{float:left;}

/* list-flex , list-display */
[class^="list-"]{
/*↑セレクタ名の前方一致*/
    padding:40px 0;
    background:-webkit-linear-gradient(#2b3135,#384045,#2b3135);
    background:-o-linear-gradient(#2b3135,#384045,#2b3135);
    background:linear-gradient(#2b3135,#384045,#2b3135);
}

.list-flex ul{ display:flex; display:-webkit-flex; flex-wrap:wrap; -webkit-flex-wrap:wrap; width:1000px; margin:0 auto; }
/*↑横並びは float の代わりに flex を使ってもいいかも。flex-wrap:wrap; → スマホサイズで横に並ぶ数を変える場合は必要*/
.list-flex ul li{ width:calc(100% / 4 - 15px); width:-webkit-calc(100% / 4 - 15px); margin-right:20px; }
/*↑width:calc(ウィンドウ幅 / 4分割 - liの横幅と画像の横幅との差分);　差分 = 1000px / 4 - 235px(1つの画像の横幅)*/
.list-flex ul li:nth-of-type(4){ margin-right:0; }


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* fix **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.fix-bg{ position: relative;  background-position: center; height: 354px; }
.scr-bg{ padding: 50px; }
.fix-contents{ position: absolute; top: 54%; left: 50%; bottom: auto; right: auto; margin: 0 auto; width: 100%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }

.intro-fix{ background: url("../images/title_bg.png") center; margin: 0px 0 30px; }

.title-break{ border-top: 3px groove #cda61b; margin-bottom: -1px; }

.contents p{text-align:left;}
.contents .alignC{text-align:center;}

.sbt img{position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto;}

.micro{background:url("../images/micro_bg.png")repeat top center; border: solid 2px #fff; box-shadow:0 0 20px 0px rgba(171,155,111,0.4),0 0 30px 9px rgba(91,132,163,0.2)inset; margin: 0 40px 25px; position:relative; padding:40px 0px 10px; z-index:-1;}

/* 背景 ***********/
.section2 .bg1{background:url(../images/sec2_bg1.png) right bottom no-repeat;}
.section3 .bg1{background:url(../images/sec3_bg1.png) right bottom no-repeat;}
.section4 .bg1{background:url(../images/sec4_bg1.png) right bottom no-repeat;}
.section5 .bg1{background:url(../images/sec5_bg1.png) right top no-repeat;}
.section6 .bg1{background:url(../images/sec6_bg1.png) right bottom no-repeat;}
.section12 .bg1{background:url(../images/sec11_bg1.png) right bottom no-repeat;}

/* 特典 ***********/

.toku{ margin:50px 35px 30px;  background:url("../images/toku_bg.png")repeat top center; box-shadow: 0px 0px 10px 2px #6ee5fa ,0px 0px 10px 5px #6ee5fa inset; padding:25px; border: solid 2px #fff;position:relative}
.toku .bg1{background: #fff; padding:160px 0 20px;}
.toku .tokusbt{position: absolute; top:16px; left:16px;}
.toku .rec{background: #e4f5ff; border: solid 2px #063189; margin: 31px;}

.section8 .bg1 .txt{background:url(../images/addpre_bg.png) right top no-repeat;}

.section9 .toku .bg2{background:url(../images/mpre_bg1.png) right bottom no-repeat;}
.section9 .toku .bg3{background:url(../images/mpre_bg2.png) right top 50px no-repeat;}
.section9 .toku .bg4{background:url(../images/mpre_bg3.png) right bottom no-repeat;}


/* sec12 ***********/

.mes {
/*border: solid 1px #fff; box-shadow: 0px 0px 10px 0px rgba(204, 193, 112, 0.5), 0px 0px 100px 0px rgba(204, 193, 112, 0.5)inset;*/ padding: 50px 0px 20px; margin:50px 50px 30px; font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-weight:500;}
.mes {background:url(../images/mes_bg.png) repeat top; border: solid 1px #fff; box-shadow: 0px 0px 10px 0px rgba(204, 193, 112, 0.5), 0px 0px 100px 0px rgba(204, 193, 112, 0.5)inset; padding: 60px 0px 40px; margin:0 40px 30px; }

.pro{
background: #e4f5ff; 
/* box-shadow */
border: solid 2px #fff;box-shadow: 0px 0px 10px 2px #6ee5fa ,0px 0px 10px 5px #6ee5fa inset;
}
.pro p{ margin:20px 50px; }
/*.pro .txt-red{ color:#f3a3a4; font-weight:bold; }
.pro .txt-y{ color:#f1e69b; font-weight:bold; }*/


.sectionkiyaku .wrap{padding:0 20px;}

.bgbox {background-color: rgba(255,255,255,0.4); box-shadow: 0px 0px 10px 5px rgba(247, 245, 198,0.2);padding:25px 2px 1px; margin:15px 40px 30px; line-height:160%;}  


/* sbt */
[class^="sbt-"]{ margin-bottom:20px; }
.sbt-long{
    height:260px;
    background:url(../images/sbt_long_bg.jpg) center no-repeat,-webkit-linear-gradient(#010a29,#042e6b,#010a29);
    background:url(../images/sbt_long_bg.jpg) center no-repeat,-o-linear-gradient(#010a29,#042e6b,#010a29);
    background:url(../images/sbt_long_bg.jpg) center no-repeat,linear-gradient(#010a29,#042e6b,#010a29);
}
.sbt-long span{ display:block; position:relative; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

/* movie */
.movie-large,.movie-short li{ padding:3px; background:linear-gradient(#ebe4bf, #e6d440); box-shadow: 0px 5px 10px 0px rgba(47, 45, 42, 0.3) }

.movie-large{ width:740px; height:auto; margin:0 auto; }
.movie-large .frame{ position:relative; top:0; left:0; width:100%; padding-top:56.25%; }
.movie-large iframe{ position:absolute; top:0; left:0; width:100%; height:100%; }
/*↑ウィンドウサイズに合わせて縦横比固定で縮小させる　padding-top:56.25%;(高さ÷横幅×100) → 16:9のサイズ(9÷16×100=56.25)*/

.movie-short{ width:980px; margin:0 auto; }
.movie-short li{ width:316px; float:left; margin-right:15px; }
.movie-short li:last-child{ margin-right:0; }
.movie-short li .frame{ position:relative; top:0; left:0; width:100%; padding-top:56.25%; }
.movie-short li iframe{ position:absolute; top:0; left:0; width:100%; height:100%; }
.movie-short li .txt{ text-align:center; color:#147db9;  font-weight:bold; font-size:13px; margin-top:12px; line-height: 150%;}
.movie-short li span{ display:block; padding:10px 5px; background-color:#7383b8; text-align:center; }


/* half-box */
.half-box{ display:flex; display:-webkit-flex; flex-wrap:wrap; -webkit-flex-wrap:wrap; width:900px; margin:0 auto; }
.half-box .half{ width:calc(100% / 2 - 10px); width:-webkit-calc(100% / 2 - 10px); margin-right:20px; padding:6px; background:#082d68 url(../images/bg_slash.png); }
.half-box .half:nth-child(even){ margin-right:0; }
/*↑nth-child(even) 偶数番目 */
.half-box .half .tit{ margin-bottom:5px; }

/* qa */
.qa{ padding:10px; background-color:#98f0ff; border:solid 1px #fff; box-shadow:0 0 20px rgba(244,222,92,0.5)inset; margin: 0 30px 15px; border-radius: 10px; }
.qa dt{ padding:12px 10px 17px 52px; background:url(../images/q.png) 9px 2px no-repeat; }
.qa dd{ padding:15px 10px 12px 52px; background:#fff url(../images/a.png) 13px 12px no-repeat; border:solid 1px #d2ff57; border-radius: 7px; }

.qrbase .qr{float:left; margin-left:50px; margin-bottom: 30px; }
.qrbase .qr .url{font-size: 14px; line-height: 130%; padding-top: 10px; text-align: left; }

.price_table{ width:90%; margin: 0 auto; }
.price_table th , .price_table td{ padding:10px; font-size:14pt; }
.price_table th{ color:#fff; padding:10px 20px; }
.price_table tr:not(:first-child) th , .price_table tr:not(:first-child) td{ border-top:none; }
.price_table tr:first-child th , .price_table tr:first-child td{ background:#eee; }
.price_table td{ padding:5px 10px; border-left:none; text-align:center; }
.price_table .corce { color:#333; }
.price_table .corces { background:#ba274b; box-shadow:inset 0px 0px 15px 0 #8d782c; }
.price_table .corcer { background:#ac8843; box-shadow:inset 0px 0px 15px 0 #8d782c; }

/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer{ color:#fff; background-color:#333; padding:10px 10px 20px; text-align:center; }
.footer a{ color:#fff; font-size:12px; }


/* ★★★ タブレット ★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 768px){
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:100%; background: url(../images/bg.png) center top repeat #fff; font-size: 15px; }
.fontL{ font-size:18px; }
.fontLL{ font-size:22px; }


/* space **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* paragraph */
p{ margin:0 20px 25px; }

/* original frame */
.box{ margin:0; }


/* favorite decoration **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.card img{ max-width:366px; width:100%; height:auto; }

table{ calc(100% - 30px);}
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:0px; text-align:center; }
.inner p{ text-align:left; }

.mw95 img{ max-width:95%; height:auto; }
.w100 img{ width:100%; height:auto; }
.w95 img{ width:95%; height:auto; }
.w90 img{ width:90%; height:auto; }
.w80 img{ width:80%; height:auto; }
.w70 img{ width:70%; height:auto; }
.w60 img{ width:60%; height:auto; }
.w50 img{ width:50%; height:auto; }
p img{ max-width:520px; height:auto; }
	
.bgbox {;padding:25px 2px 1px; margin:15px 15px 20px; line-height:160%;} 


/* wrap **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.wrap{ width:calc(100% - 0px); -webkit-width:calc(100% - 0px); margin:0 0px; }
/*↑width:calc(ウィンドウ幅 - 左右に空けたい余白の合計値);*/


/* header **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.headersp{ height:100px; background:linear-gradient(#453e2e, #2e2b26); float:none;  }


/* form **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.mailform{ width:95%; padding:40px 10px 20px; margin: 18px auto 0; }
.mailform ul{ margin:0 10px 20px; }
.mailform ul img{ height:18px; }
.mailform ul li span{ width:130px; padding-top:4px; }
.mailform ul li input{ width:calc(100% - 130px); width:-webkit-calc(100% - 130px); }
.mailform input.btn{ width:100%; height:auto; }
.mailform .txt{font-size:14px; line-height: 130%; margin-top: 5px;}
.mailform .txt .spbr{display:block;}
	
.intro-fix{ background: none; margin: 0px 0 60px; }
	
/* top **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* catch */
.top .catch{ margin:0; }
.top .wrap{ background-color:#000000; }


/* list-flex , list-display */
[class^="list-"]{ padding:20px 0; }
[class^="list-"] .wrap{ text-align:center; }

.list-flex ul{ width:100%; }
.list-flex ul li img{ max-width:235px; width:100%; height:auto; }

.list-display img{ max-width:520px; width:100%; height:auto; }
	
	
/* movie */
.movie-large{ width:95%; margin-top:0px; }
	
.movie-short{ width:95%;}
.movie-short li{ width:100%; float:none; margin:0 auto 15px; }
.movie-short li:last-child{ margin:0 auto; }


/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.contents{ margin-top:0px; z-index:-2;}
/*.opa{background-color: rgba(255,255,255,0.6);padding: 30px 0 1px; margin: -25px 0; }*/
	
.title .sp-item{margin-bottom:15px;}
	
.sbt{margin: 0 auto 25px; height: auto; }
	
/* 特典 ***********/

.toku{ margin:50px 35px 30px;  background:url("../images/toku_bg.png")repeat top center; box-shadow: 0px 0px 10px 2px #6ee5fa ,0px 0px 10px 5px #6ee5fa inset; padding:25px; border: solid 2px #fff;position:relative}
.toku .bg1{background: #fff; padding:160px 0 20px;}
.toku .tokusbt{position: absolute; top:16px; left:16px;}
.toku .rec{background: #e4f5ff; border: solid 2px #063189; margin: 31px;}
	
.section12 .pre{ margin:20px 25px; z-index: 10; }
	
.section1 .bg1,.section2 .bg1,.section3 .bg1,.section4 .bg1,.section5 .bg1,.section6 .bg1,.section7 .bg,.section8 .bg1,.section9 .bg1,.section10 .bg1,.section11 .bg1{ background: none; background-position: left 60% top; }
	
	/* 特典 ***********/

.toku{ margin:30px 10px 30px;   padding:20px; }
.toku .bg1{background: #fff; padding:120px 0 20px;}
.toku .tokusbt{position: absolute; top:16px; left:10px; right:10px;}
.toku .rec{background: #e4f5ff; border: solid 2px #063189; margin: 15px;}
	
.section9 .toku .bg2{background:url(../images/mpre_bg1_sp.png) center bottom no-repeat;}
.section9 .toku .bg3{background:url(../images/mpre_bg2_sp.png) right top no-repeat;}
.section9 .toku .bg4{background:url(../images/mpre_bg3_sp.png) right bottom no-repeat;}
.section9 .toku .bg2 .txt{margin-top: 50px;}
.section9 .toku .bg3 .txt{margin-top: 40px;}
.section9 .toku .bg4 .txt{margin-top: 50px;}
	
.section8 .bg1 .txt{background:url(../images/addpre_bg_sp.png) right top no-repeat;}
	

	
	/*.section1 .bg1{ background-position: right -40px top 60px; }*/



.box{ margin: 0 15px;}
.rule{ margin: 0 15px;}
.rule2{ margin: 0 15px;}
	
/*.pro {border: 1px solid transparent;background-image: linear-gradient(#09a8d6, #0951d6); background-origin: border-box; margin:15px;}
.pro .bg{background:none; }*/

	
.qrbase .qr{text-align: left; margin-left:60px; padding-bottom:0px; }

/* sbt */
.sbt-long{ height:120px; }
.sbt-long img{ max-width:390px; width:100%; height:auto; }
	
.mes { margin:20px 20px 0;}
.mesin { padding:0 0 20px; }

.pro{ padding:20px 0px 30px; margin:20px 20px 30px; }
.pro p{ margin:0 30px 0; }


/* half-box */
.half-box{ width:100%; }
.half-box .half{ width:100%; margin-right:0; }
.half-box .half:not(:first-child){ margin-top:15px; }
/*↑:not(:first-child)　最初以外の要素*/
.half-box .half .tit img{ max-width:340px; width:100%; height:auto; }
.half-box .half .inner .pic{ float:right; margin:0 0 20px 20px; }


/* qa */
.qa{margin: 10px 15px;}
.qa dt{ padding:10px 10px 13px 42px; background:url(../images/q.png) 11px 2px no-repeat; background-size:24px; }
.qa dd{ padding:10px 12px 10px 42px; background-size:20px; }

.price_table th , .price_table td{ display:block; width:100%; text-align:center ;border:solid 1px #c0ccd3; }
.price_table tr:first-child{ display:none; }
.price_table tr:not th{ margin-top:40px; }
.price_table th{ border-top:solid 1px #c0ccd3 !important; }
.price_table td{ border-left:solid 1px #c0ccd3; padding:10px; }
.price_table td:before{ display:block; content:attr(data-month); background:#eee; margin-bottom:10px; }
.price_table .name{ background:#f0fbff; padding:4px 10px 10px; }
	
/* timer ********** タイマーが必要な場合のみ記述
///////////////////////////////////////////////////////////////////////////////////////////////*/
.headersp .timer{ width:320px; height:90px; margin:0 auto ; padding-top:15px; }
.headersp .timer .timeDay{ top:46px; left:0px; }
.headersp .timer .timeHr{ top:46px; left:86px; }
.headersp .timer .timeMmin{ top:46px; left:180px; }
.headersp .timer .timeSec{ top:46px; left:251px; }
.headersp .timer .timeMsec{ display:none; }
.headersp .timer span img{ width:20px; height:34px; }
	
	/* 背景 ***********/
.section2 .bg1{background:url(../images/sec2_bg1_sp.png) right bottom no-repeat;}
.section3 .bg1{background:url(../images/sec3_bg1_sp.png) right bottom no-repeat;}
.section4 .bg1{background:url(../images/sec4_bg1_sp.png) right bottom no-repeat;}
.section5 .bg1{background:url(../images/sec5_bg1_sp.png) right top no-repeat;}
.section6 .bg1{background:url(../images/sec6_bg1_sp.png) right bottom no-repeat;}
.section12 .bg1{background:url(../images/sec11_bg1_sp.png) center bottom no-repeat;}


/* footer **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.footer .copy img{ max-width:280px; width:100%; height:auto; }

}


@media only screen and (max-width: 540px){
/* top ********** スマホサイズまで待つと小さくなり過ぎるので 540px から2分割にしている
///////////////////////////////////////////////////////////////////////////////////////////////*/
/* list-flex , list-display */
[class^="list-"]{ padding:10px 0; }

/*.list-flex ul li{ width:calc(100% / 2 - 5px); margin-right:10px; padding:10px; background-color:#384045; }
/*↑width:calc(ウィンドウ幅 / 2分割 - margin20px分を2つで分ける);*/
/*.list-flex ul li:nth-of-type(2){ margin-right:0; }
.list-flex ul li img{ max-width:170px; width:100%;  }
.intro-fix{ background: none; margin: 0px 0 30px; height: auto; }
.fix-contents{  top: 54%; left: 50%; bottom: auto; right: auto; margin: 0 auto; width: 100%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
	
.intro-fix{  margin: 0px 0 0px; }
	
.list-flex ul{ width:100%; }
.list-flex ul li img{ max-width:235px; width:100%; height:auto; }

.list-display img{ max-width:520px; width:100%; height:auto; }

.section8 .rea {
    margin-top: 30px;}	
	
section {margin-top: -90px;}
section.top {margin-top: 0px;}
section.voice {margin-top: 0px;}
section.section1 {margin-top: -20px;}

}


/* ★★★ スマホ ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media only screen and (max-width: 414px){ /* iPhone6Plus */
/* init **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
body{ min-width:320px; }
/*↑最小幅指定*/


/* header **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.header{ height:92px; }
.header .timer{ height:62px; }
.header .timer > img{ width:315px; height:62px; }
/*↑ ".timer > img" .timerの子要素のimgに適用する。spanの中のimgは孫要素なので適用されない*/


/* form **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.mailform{ padding-top:30px; margin:0 auto; }
.mailform ul img{ height:14px; }
.mailform ul li{ margin-bottom:0; }
.mailform ul li span,.mailform ul li input{ float:none; display:block; }
.mailform ul li span{ width:100%; padding-top:0; margin-bottom:5px; }
.mailform ul li input{ width:100%; }
.mailform .txt{font-size:12px; line-height: 130%; margin-top: 5px;}
	
.pre-book.sp-item.w100 {position: relative; top: -3px; margin-top: -80px;}
/* contents **********
///////////////////////////////////////////////////////////////////////////////////////////////*/

/* half-box */
.half-box .half .tit img{ max-width:260px; width:100%; height:auto; }
.half-box .half .inner .pic{ float:none; margin:0 auto 20px; }
.half-box .half .inner .pic img{ max-width:182px; width:100%; height:auto; }


/* timer ********** タイマーが必要な場合のみ記述
///////////////////////////////////////////////////////////////////////////////////////////////*/
div.timer{ height:80px;margin: 0 auto; float:inherit;  }


/* que **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.que {background:url("../images/que_pic.png")no-repeat bottom right,#fff;width:1000px;border: solid 1px #1d4888;margin:0 auto 30px;border-radius:5px;box-shadow:0 0 30px 0 rgba(185,212,236)inset;}
.que h3{ text-align:center; margin-top:-30px; margin-bottom:30px; }

/* kiyaku **********
///////////////////////////////////////////////////////////////////////////////////////////////*/
.kiyaku{ font-weight: bold;background-color: #cdcdcd;vertical-align: middle;}
.kiyaku h3{ margin-bottom:20px; text-align: center; }
.kiyaku dl{ height: 650px;
    overflow: auto;
    margin: 0 auto 20px;
    border-collapse: separate;
    border-spacing: 1px;
    background-color: #cdcdcd;
    line-height: 2;
    font-size: 14px;}
.kiyaku dt {
    padding: 12px 12px 5px 70px;
    font-weight: bold;
    text-align: left;
    background-color: #cdcdcd;
    width: 22%;
	vertical-align: middle;}
.kiyaku dd {
    background:#fff url(../images/a.png) no-repeat 34px 15px;
    padding:17px 30px 20px 70px;
    border-radius:0 0 5px 5px;
    margin-bottom:15px;
    border:solid 1px #ccc;
    border-top:none;
	color: #333333;
	text-align: left;
}
.kiyaku .que{ font-size:larger; }
.kiyaku .ans{ font-size:larger; color:#e6155f; font-weight:bold; }
    
}