/* CSS Document */

/* reset */
*{margin:0; padding:0;}
h*,p,hr,ul,li,ol,img{margin:0; padding:0; border:0;}
address{font-style:normal; font-size:80%;}
img{border:0;}
ul li{list-style:none;}

header,footer,section,nav,figure,article,hgroup,dialog,aside{margin:0; padding:0; display:block;}

body{font-size:12px; line-height:1.7em;
font-family:'lr oSVbN','qMmpS Pro W3','Hiragino Kaku Gothic Pro','CI',Meiryo,sans-serif;
margin:0; padding:0; color:#f1f1f1; background:url(../images/bg.jpg) no-repeat 0 0 #1d1d1d;}
a:link{text-decoration:underline; color:#9ac7ef;}
a:hover{text-decoration:underline; color:#a1e1ff;}
a{text-decoration:none; color:#9ac7ef;}

#wrap{width:810px;}
header{width:100%; height:269px; background:url(../images/logo.jpg) no-repeat 0 0;}
header.logo-3ban{background:url(../images/logo-3ban.jpg) no-repeat 0 0;}
header.logo-4ban{background:url(../images/logo-4ban.jpg) no-repeat 0 0;}
header.logo-5ban{background:url(../images/logo-5ban.jpg) no-repeat 0 0;}
header.logo-6ban{background:url(../images/logo-6ban.jpg) no-repeat 0 0;}
header.logo-7ban{background:url(../images/logo-7ban.jpg) no-repeat 0 0;}
header.logo-8ban{background:url(../images/logo-8ban.jpg) no-repeat 0 0;}

header h1 a{display:block; width:230px; height:170px; position:relative; top:80px; left:570px;}
nav{height:44px; background:url(../images/nav_bg.jpg) no-repeat 0 0;}
nav ul li{float:left;}
nav ul li a{display:block; height:44px; width:160px; background:url(../images/nav.gif) no-repeat 0 0;}
li#menu01 a{background-position:0 0;}
li#menu02 a{background-position:-160px 0;}
li#menu03 a{background-position:-320px 0;}
li#menu04 a{background-position:-480px 0;}
li#menu05 a{background-position:-640px 0;}
li#menu01 a:hover{background-position:0 -44px;}
li#menu02 a:hover{background-position:-160px -44px;}
li#menu03 a:hover{background-position:-320px -44px;}
li#menu04 a:hover{background-position:-480px -44px;}
li#menu05 a:hover{background-position:-640px -44px;}

#content{width:800px; margin:0; padding:0;}
#side{float:left; width:225px; border-right:1px solid #000; background:url(../images/side.jpg) no-repeat 0 0 #131313;}
#main{float:right; width:550px;}
article{padding:15px 0;}
section{margin-bottom:20px;}
#main h3{margin:20px 0 0 0; color:#c7791b; font-size:130%;}
section p{margin-left:5px;}

/*--------------------------------
form
--------------------------------*/
.entry-form {
    margin-top: 60px;
}
#SM .entry-form footer {
    background: none;
    padding: 0;
    text-align: left;
}
.remaining{
    margin: 0 auto;
    width: 550px;
    height: 40px;
    background: #603b01;
    z-index: 9999;
    position: absolute;
    top: 10px;
    right: 10px;
    text-align: center;
    color: white;
    transition: 0.2s;
}
.remaining.fix{
    position: fixed;
    top: 0;
    left: calc(50% - 494px);
}
.remaining .progress{
    width: 0%;
    height: 40px;
    display: block;
    background: #de8f13;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: 0.2s;
}
.remaining p{
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	font-size: 16px;
}
.remaining span{
	color: white;
}
.remaining + .header{
	margin-top: 64px;
}
.form-wrapper{
    margin: 0 150px 100px;
}
.form-wrapper .inner{
	margin: auto;
	max-width: 1000px;
}
.notice-box{
    margin: 48px 0;
    padding: 8px;
    background: #f29b76;
    text-align: center;
    color: white;
}
.form-box{
	margin: 20px 0 20px;
	border: none;
}
.form-label{
	margin: 0 0 8px;
	display: block;
	font-size: 16px;
}
input[type=text],
input[type=tel],
input[type=password],
select,
textarea{
	padding: 16px;
	width: 100%;
	height: 60px;
	background: #fff;
	position: relative;
	box-sizing: border-box;
	border: none;
	font-size: 18px;
}
textarea{
	margin-bottom: -5px;
	height: inherit;
	resize: vertical;
}
select{
	padding: 8px 62px 8px 8px;
	height: 60px;
	background: url(../images/icon-select.webp) no-repeat right center / 60px, #fff;
	border: 1px solid #ddd;
	color: black;
}
select:focus{
	background: url(../images/icon-select.webp) no-repeat right center / 60px, #ffffe5;
}
.radio-box{
	padding: 4px 0 0 0;
	display: flex;
}
.regular-radio{
	display: none;
}
.radio-label{
	width: 50%;
	line-height: 75px;
}
.radio-label-text{
	background: #fff;
	display: block;
	transition: .3s;
	text-align: center;
	border: 1px solid #ddd;
	box-sizing: border-box;
	color: black;
	line-height: 59px;
	font-size: 16px;
}
.radio-label:nth-of-type(1) .radio-label-text{
	border-radius: 4px 0 0 4px;
	border-right: 0;
}
.radio-label:nth-of-type(2) .radio-label-text{
	border-radius: 0 4px 4px 0;
}
.regular-radio:checked + .radio-label-text{
	background: #eb739f;
	color: #fff;
}
.regular-checkbox{
	margin-bottom: 5px;
	padding: 5px;
	display: block;
	background: #eee;
	font-size: 18px;
	border: 1px solid #eb739f;
}
.regular-checkbox input:checked + .check-label{
	color: #eb739f;
}
.form-msg,
.alert-msg{
	font-size: 16px;
}
.form-box .form-msg{
	padding: 8px 0 0 0;
	line-height: 1.3;
	text-align: center;
}
.error{
	margin: 14px 0 0;
	background: #ff6d6d;
	color: #fff;
	text-align: center;
	line-height: 32px;
	font-size: 18px;
}
.form-item{
	position: relative;
}
.form-border{
	margin: 0 auto;
	width: 100%;
	height: 2px;
	background: #ddd;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	transform-origin: center;
}
input[type=text]:focus + .form-border::after,
input[type=tel]:focus + .form-border::after,
input[type=password]:focus + .form-border::after,
textarea:focus + .form-border::after{
	margin: 0 auto;
	width: 0%;
	height: 2px;
	content: "";
	background: #eb739f;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	transform-origin: center;
	animation: fade-border .3s ease .1s forwards;
}
@keyframes fade-border{
	0%{width: 0%;opacity: 0;}
	100%{width: 100%;opacity: 1;}
}
.entry-btn .btn-area{
	margin: 0 0 32px;
}
.entry-btn .regist-btn{width:400px; height:50px; margin:0 auto; display:block; font-size:180%; background:#9ac7ef; font-weight:bold;}
.entry-btn .regist-btn:hover{background-color:#ff8a00; color:#fff;}
.entry-btn .regist-btn{
	filter: grayscale(1);
	pointer-events: none;
	cursor: inherit;
}
.entry-btn .regist-btn.active{
	filter: grayscale(0);
	pointer-events: auto;
	cursor: pointer;
}
.ymd-box,
.area-box{
	display: flex;
	justify-content: space-between;
}
.ymd-box select{
	width: 32%;
	flex-shrink: 0;
}
.area-box select,
.area-box .sub-area{
	width: 49%;
	flex-shrink: 0;
}
.area-box .sub-area select{
	width: 100%;
	flex-shrink: 0;
}
#entry_btn{margin-top:7px;}
#entry_btn a{display:block; width:224px; height:176px; background:url(../images/entry.jpg) no-repeat 0 0;}
#entry_btn a:hover{background-position:-224px 0;}
#mobile_box,#adult,address{margin:0 10px; padding:8px 0;}
#mobile_box{border-top:1px solid #c7791b; border-bottom:1px solid #c7791b; margin-top:20px;}
#mobile_box h2{height:30px;}
#mobile_box img{float:left;}
#mobile_box p{float:right; width:120px;}
#adult{border-bottom:1px solid #ff8a00; margin-bottom:60px;}

.block{border-top:1px solid #666; padding:4px 0;}
.label{float:left; width:140px; color:#999; text-align:right; padding-right:5px;}
.label span{color:#ff8a00; padding-right:3px;}
p.label { margin:0 !important; }
h3 {margin:10px 0;}
h3 span{font-size:90%;}
h4 {margin:10px 0px 5px; border-left:3px solid #c7791b; padding-left:5px;}
p.msg{margin-left:145px;}
input.text_s{width:90px;}
input.text_m{width:150px;}
input.text_l{width:280px;}
input:focus,select:focus,textarea:focus{background-color:#a1e1ff;}
button{width:400px; height:50px; margin:0 auto; display:block; font-size:180%; background:#9ac7ef; font-weight:bold;}
button:hover{background-color:#ff8a00; color:#fff;}
.cnt2 { padding:10px 0 20px 0; }

.juyo { background:rgba(255,255,255,0.1); border:1px dotted #f00; padding:8px; margin:8px 0;}

body#rule_popup{background:none #000; padding:10px;}
body#rule_popup h3{margin:20px 0 0 0; color:#c7791b; font-size:130%;}


/* LPO */
#SM {background-image:none;}
#SM #wrap {width:1000px; margin:0 auto; background:#000; padding-top:30px; position:relative;}
#SM header {height:500px; position:relative; background:url(../images/top_image.jpg) no-repeat 0 0;}
#SM header h1{width:755px; height:150px; position:absolute; right:0; bottom:0; }
#SM header h1 a{display:block; position:absolute; top:0; left:0; width:100%; height:100%; text-indent:120%; overflow:hidden; white-space:nowrap; }
#SM header.logo-3ban h1 a{background:url(../images/logo-3ban.png) no-repeat 0 0;}
#SM header.logo-4ban h1 a{background:url(../images/logo-4ban.png) no-repeat 0 0;}
#SM header.logo-5ban h1 a{background:url(../images/logo-5ban.png) no-repeat 0 0;}
#SM header.logo-6ban h1 a{background:url(../images/logo-6ban.png) no-repeat 0 0;}
#SM header.logo-7ban h1 a{background:url(../images/logo-7ban.png) no-repeat 0 0;}
#SM header.logo-8ban h1 a{background:url(../images/logo-8ban.png) no-repeat 0 0;}
#SM header.logo h1 a{background:url(../images/logo.png) no-repeat 0 0;}
#SM header h2 {width:334px; height:64px; background:url(../images/h2.png) no-repeat 0 0;position:absolute; right:0; bottom:110px; text-indent:120%; overflow:hidden; white-space:nowrap;}

#SM p.Question {text-indent:120%; overflow:hidden; white-space:nowrap; background:url(../images/Q.png) no-repeat center center; line-height:45px; padding:30px 0;}
#SM .which_reg ul{display:table; border-collapse:separate; border-spacing:20px; margin:0 auto 30px; width:980px;}
#SM .which_reg ul li{display:table-cell; width:50%; height:139px;}
#SM .which_reg ul li a{width:100%; height:100%; display:block; text-indent:120%; overflow:hidden; white-space:nowrap; }
#SM .which_reg ul li:first-child a{background:url(../images/entry_btn_ms.gif) no-repeat 0 0;}
#SM .which_reg ul li:first-child a:hover{background-position:0 -140px;}
#SM .which_reg ul li:last-child a{background:url(../images/entry_btn_sm.gif) no-repeat 0 0;}
#SM .which_reg ul li:last-child a:hover{background-position:0 -140px;}

#SM footer {background:#452800;padding:20px;text-align:center;clear: both;}
#SM footer nav{background:none; height:auto;}
#SM footer nav ul li{font-size:14px; float:none; display:inline;}
#SM footer nav ul li:after{content:"?b";}
#SM footer nav ul li:last-child:after{content:"";}
#SM footer nav ul li a{display:inline; height:1em; width:auto; background:none;}

#SM article section{margin:10px 100px 0px; background:rgba(34,34,34,0.4); border:1px solid #2e2e2e; clear:both; padding:10px;}
#SM article section h3{margin:20px 0 0 0; color:#c7791b; font-size:130%;}

#SM.e_body header{background:none; height:150px;}
#SM #wrap.ms_body {background:#000 url(../images/entry_bg_ms.jpg) no-repeat 0 30px;}
#SM #wrap.sm_body {background:#000 url(../images/entry_bg_sm.jpg) no-repeat 0 30px;}
.e_body .about{margin:0 20px 20px 400px; }
.e_body .about h3{text-indent:120%; overflow:hidden; white-space:nowrap; line-height:28px; margin:0 0 20px;}
.e_body .about p{margin:10px 0;}
.ms_body .about h3{background:url(../images/heading_ms.png) no-repeat 0 0;}
.sm_body .about h3{background:url(../images/heading_sm.png) no-repeat 0 0;}
.e_body article.form {margin:10px 100px 20px;background:rgba(34,34,34,0.4);border:1px solid #2e2e2e;padding:10px;overflow: hidden;position: relative;}
.e_body article.form form{width:550px; float:right;}
.e_body article.form aside{width:220px; float:left;}
.e_body article.form aside img{display:inline-block; margin:0 auto;}
.e_body article.form section{margin:10px 0 !important;}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* ieΞ */
select::-ms-expand {
  display: none;
}


/* mother bar */
#mother{width:810px; height:40px; position:fixed; top:0; left:0; background:url(../images/mother_bg.png) repeat-x 0 0; border-bottom:1px solid #000;}
#mother h1{display:block; margin-right:10px; color:#fff; line-height:40px; text-indent:-9999px; background-position:right center;}



em,address { font-weight:normal; font-style:normal; }

/* campaign */
.campaign h4 {border:0; font-size:14px; color:#ff3; text-indent:0; padding:10px 10px 5px;}
.campaign h5 {font-weight:normal; font-size:11px;color:#ff3; padding:0 10px;}
.cam_msg {font-size:11px; color:#888;}
.campaign strong {font-weight:bold; color:#f00;}
.camMenu { margin-bottom:10px; color:#000;}
.camMenu dt { font-weight:bold; font-size:18px; margin:5px 0;}
.camMenu dt:before{content:"?\"; color:#ff3;}
.camMenu dd {margin-bottom:10px;}
.camMenu table {border-collapse:collapse; width:270px;}
.camMenu table th{text-align:center; background:#ccc; width:90px; border:1px solid #aaa;}
.camMenu table td{text-align:right; width:90px; background:#fff; border:1px solid #aaa; padding-right:10px; box-sizing:border-box;}
.camMenu table tr td:last-child{background:#ff0;}

#campaign_btn {position:absolute; top:0px; left:180px; z-index:10;}
#campaign_btn_entry {position:absolute; top:0px; left:180px; z-index:10;}
#campaign_btn a,#campaign_btn_entry a{width:97px; height:153px; background:url(../images/campaign_btn.png) no-repeat 0 0; display:block; text-indent:-9999px; }

#SM #campaign_btn,#SM #campaign_btn_entry {position:absolute; top:20px; left:20px; z-index:10;}


/* clearfixeo[W */
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}
.clearfix {
	display: inline-table;
	min-height: 1%;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

/* clearfixeo[W±±άΕ */


