/*--------------------*
 *  default settings
 *--------------------*/
*{
  margin: 0px;
  padding: 0px;
}
html{
  overflow-y:scroll;
  -webkit-text-size-adjust: none;
}
BODY{
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック";
  _line-break: strict;
  font-size: 15px;
  margin: 0 auto;
  background:url(../img/contents/bg.jpg) repeat 50% 0%;
}

FORM{
  margin: 0 auto;
  padding: 0;
}
TABLE{
  border-collapse: collapse;
  border-spacing:0px;
  empty-cells: hide;
  text-align: left;
  border: 0;
  padding: 0;
}

A{color:#A5164F;outline : 0;}
A:hover{
  text-decoration:none;
}
HR{display:none;}
.menuttl_area{
  display: flex;
  align-items: center;
  margin: 0 0 10px;
}
.icon {
  width: 54px;
}
.icon IMG{
    width: 100%;
    max-width: 54px;
    height: auto;
}
.menuttl_area .menu_info,
.menuttl_area .menu_ttl{
  width: calc(100% - 66px);
  margin: 0 0 0 12px;
}
#header IMG{
  max-width: 640px;
  width: 100%;
  margin: 0 auto;
  height: auto;
}
H2 IMG,H3 IMG,H4 IMG{width: 100%; margin: 0 auto;}

P {
    margin: 0 auto;
}
H1, H2, H3, H4, H5 {
    margin: 0 auto;
}
.horizon{
  width: calc(100% - 24px);
  margin: 20px auto;
  height: 1px;
  background: #E4D9C3;
}

/*--------------------
common class setting
--------------------*/
.clear{
  clear: both;
  float:none;
  line-height:0px;
  font-size:0px;
  height:0px;
}
.hide{
  display:none;
}
.price_discount{text-align:right;color: #C014FF;}
.price_normal{text-align:right;}

/*Clear-Fix(IE対策のためセットで利用する)
TAG{
  zoom:100%;
}
TAG:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both;
}
*/
/*--------------------*
#headernavi
*--------------------*/
#headernavi li{
    display:table-cell;
    text-align:center;
}

/*--------------------*
#new_group
*--------------------*/
#new_group .severalmenu{
  margin: 0 auto;
  width: calc(100% - 47px);
}
.additional_day{
  margin: 5px 0;
  font-size: 11px;
  font-weight: bold;
  text-align: left;
}

#new_group .section_bdy{
  margin: 0 auto 20px;
  background: url(../img/index/new_group/section_ftr.jpg) no-repeat bottom / 100% auto, url(../img/index/new_group/section_bdy.jpg) repeat center / 100% auto;
  padding: 0 0 13%;
}
#new_group H2{
  padding:0 0 16px;
}
#new_group H3,
#new_group H4{
  font-size: 17px;
}
#new_group .menu_info{
  margin: 0 0 0 12px;
  text-align: left;
}
#new_group .caption{
  text-align: justify;
  margin: 0;
}

/*--------------------*
#index_navi
*--------------------*/

#header_nav{
  text-align:center;
  width: 100%;
  margin: 0 auto;
  background: url(../img/contents/navi_bg.jpg) no-repeat 50% top;
  background-size: 100% 100%;
  padding: 2% 0;
}
#header .header_btn,
#header_nav ul{
  display: table;
  border-collapse: separate;
  width: calc(100% - 8px);
  margin: 0 auto;
}
#header_nav li {
  display: table-cell;
  padding: 0 4px 0 0;
}
#header_nav li:last-child {
  padding: 0;
}
#header_nav a{
  display:block;
}
#index #nav a img{
  width: 100%;
  margin:0 auto;
}

#index_navi,
#headernavi {
  width: 100%;
  background: url(../img/contents/navi/navi_bg.png) no-repeat 50% top;
  background-size: 100% 100%;
  padding: 1% 0;
}
#index_navi li{
    display:table-cell;
    text-align:center;
}
#index_navi img,
#headernavi img{
  max-width: 314px;
}
/*--------------------*
#extra
*--------------------*/
#extra{
  margin:0px auto;
}

/*--------------------*
#feature
*--------------------*/
#feature{
  margin: 20px 0 0;
}
#feature h3{
  margin: 5% auto 2%;
}
#feature h3:first-child{
  margin: 0 auto 2%;
}
#feature .section_bdy{
  background: url(../img/index/feature/section_ftr.jpg) no-repeat bottom / 100% auto, url(../img/index/feature/section_bdy.jpg) repeat center / 100% auto;
  padding: 0 0 28px;
}
#feature p{
  color: #fff;
  width: calc(100% - 47px);
  margin: 0 auto;
  text-align: justify;
}
/*--------------------*
#topicpath
*--------------------*/
#topicpath{
  text-align: left;
  padding:10px 10px 20px;
  color:#fff;
  font-size: 12px;
}
#topicpath a{
  color: #FFCE06;
}
#topicpath p{
  line-height: 1.5;
}

/*--------------------*
.menu_title
*--------------------*/
.menu_title{
  margin: 0 0 4%;
}
.menu_title{
  width:100%;
  margin: 0 auto;
}
.menu_title_bdy{
  background:url(../img/contents/menu_ttl_bdy.jpg) repeat-y center top / 100% auto;
}
.menu_title_hdr{
  padding-top:3%;
  background:url(../img/contents/menu_ttl_hdr.jpg) no-repeat center top / 100% auto;
  position:relative;
  top:-1px;
}
.menu_title_ftr{
  padding-bottom:3%;
  background:url(../img/contents/menu_ttl_ftr.jpg) no-repeat center bottom / 100% auto;
  position:relative;
  bottom:-1px;
}
.menu_title_inner{
  width: 87%;
  margin: 0 auto;
}
.menu_title_inner{
  padding: 2% 0;
}
.menu_title h2{
  display:table;
  margin:0 auto;
  vertical-align:middle;
  color: #B20D4F;
  text-align: justify;
  padding: 0 0 0 65px;
  font-size: 17px;
  line-height: 1.5;
}
[class^="menu_category_"]{
  background-position:left center;
  background-repeat:no-repeat;
}
[class^="menu_category_"]{
  background-size: 54px 54px;
  height: 54px;
}
.menu_category_1 { background-image:url(../img/contents/icon/1.png); }
.menu_category_2 { background-image:url(../img/contents/icon/2.png); }
.menu_category_3 { background-image:url(../img/contents/icon/3.png); }
.menu_category_4 { background-image:url(../img/contents/icon/4.png); }
.menu_category_5 { background-image:url(../img/contents/icon/5.png); }
.menu_category_6 { background-image:url(../img/contents/icon/6.png); }
.menu_category_7 { background-image:url(../img/contents/icon/7.png); }
.menu_category_8 { background-image:url(../img/contents/icon/8.png); }
.menu_category_9 { background-image:url(../img/contents/icon/9.png); }
.menu_category_10{ background-image:url(../img/contents/icon/10.png);}
.menu_category_11{ background-image:url(../img/contents/icon/11.png);}
.menu_category_12{ background-image:url(../img/contents/icon/12.png);}
.menu_category_13{ background-image:url(../img/contents/icon/13.png);}
.menu_category_14{ background-image:url(../img/contents/icon/14.png);}
.menu_category_15{ background-image:url(../img/contents/icon/15.png);}
.menu_category_16{ background-image:url(../img/contents/icon/16.png);}
.menu_category_17{ background-image:url(../img/contents/icon/17.png);}
.menu_category_18{ background-image:url(../img/contents/icon/18.png);}
.menu_category_19{ background-image:url(../img/contents/icon/19.png);}
.menu_category_20{ background-image:url(../img/contents/icon/20.png);}
.menu_category_21{ background-image:url(../img/contents/icon/21.png);}
.menu_category_22{ background-image:url(../img/contents/icon/22.png);}
.menu_category_23{ background-image:url(../img/contents/icon/23.png);}
.menu_category_24{ background-image:url(../img/contents/icon/24.png);}
.menu_category_25{ background-image:url(../img/contents/icon/25.png);}
.menu_category_26{ background-image:url(../img/contents/icon/26.png);}
.menu_category_27{ background-image:url(../img/contents/icon/27.png);}
.menu_category_28{ background-image:url(../img/contents/icon/28.png);}
.menu_category_29{ background-image:url(../img/contents/icon/29.png);}
.menu_category_30{ background-image:url(../img/contents/icon/30.png);}
.menu_category_31{ background-image:url(../img/contents/icon/31.png);}
.menu_category_32{ background-image:url(../img/contents/icon/32.png);}
.menu_category_33{ background-image:url(../img/contents/icon/33.png);}

/*--------------------*
#page_ttl
*--------------------*/
#page_ttl{
background-attachment: scroll;
    background-clip: border-box;
    background-color: transparent;
    background-image: url("../img/contents/page_ttl.png");
    background-origin: padding-box;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    margin:3% 0;
    width: 100%;
}
#page_ttl H2{
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
#page_ttl H2 .page_title{
  padding:6% 0 5%;
  font-size:0.9em;
  color:#F8DBA7;
}

/*--------------------*
#menu_header
*--------------------*/
#menu_header{
  margin:0 auto 10px;
  width:100%;
  font-size:0.7em;
}

/*----font-size------*/

#menu_header P{
  padding:5px 0;
  text-align:center;
  color: #DEB887;
  text-align:left;
  line-height:1.3em;
}
#menu_header P.menu_caption{
  text-align: left;
  color: #F8E0C8;
  margin: 2% auto;
  line-height:1.3em;
}
#menu_header P.pr,
#menu_header P.pr A{color:#d00079;font-weight:bold;}
#menu_header P.price {color:#DEB887;}
#menu_header P.price STRONG{color:#FFCC00;}
#menu_header P.attention A{color:#FFCC00;}
#menu_header P.attention A:hover{color:#be09cb;}
#menu_header P.attention STRONG{color:#FFCC00;}

/*--------------------*
#menu_caption
*--------------------*/
#menu_caption{
  margin:15px auto 10px;
}
#menu_caption P{
  padding-bottom:5px;
  text-align:center;
  color:#FFF5DA;
}
#menu_caption P.pr,
#menu_caption P.pr A{color:#ECB452;}
#menu_caption P.attention{color:#FFF5DA;}
#menu_caption P.attention STRONG{color:#F0AA28;}

/*--------------------
#footer
--------------------*/
#footer{
  width: calc(100% - 38px);
  margin: 0 auto;
  text-align:center;
}
#footer ADDRESS,
#footer EM{
  text-decoration:none;
  font-style:normal;
}
#footer UL{list-style-type:none;padding: 0;margin: 0;}
#footer LI{
  display:inline;
  border-right: 1px solid #fff;
  padding: 0 8px;
  line-height: 1.7;
}
#footer li:first-child{
  border-left: 1px solid #fff;
}
#footer A{
  color: #FFCE06;
}
/**/
#footernavi A{color:#FFCE06;}
/**/
#footerCopy{
  padding: 0 0px 20px;
  color:#DEB887;
}
#zapCopy{margin-top:10px;color:#DEB887;}
#ispCopy{margin-top:10px;}
#ispInfo{margin-top:10px;}
#ispInfo DIV{padding-bottom:5px;}
#ispInfo,#ispInfo A{color:#FF6633;}
#ispCopy,#ispCopy A{color:#FF6633;}

/*--------------------*
#maintenance
*--------------------*/
#maintenance{
  width: 80%;
  margin: 3% auto;
  font-size: 12px;
  text-align: center;
  background:#EEE8AA;
  color: #996633;
}
#maintenance #maintenancebody{
  border: 3px double #FF6633;
  padding:2% 1%;
}
#maintenance #maintenance_title{
  padding-bottom:1%;
  font-weight: bold;
  font-size: 16px;
  color: #FF6633;
}
#maintenance P.maintenanceDate{
  margin: 0 auto 1%;
  text-align: center;
  font-weight: bold;
  color: #996633;
}
#maintenance P.maintenanceComment{
  text-align: left;
  line-height: 1.3;
  text-align: center;
}
#maintenance A{
  color:#FFF!important;
  background:#6D2A00!important;
}
/*--------------------*
#free_group
*--------------------*/
#free_group{
  margin: 20px auto;
}
#free_group h2{
  padding: 0 0 16px;
}
#free_group h3{
  font-size: 17px;
}
#free_group .severalmenu{
  margin: 0 auto;
  width: calc(100% - 47px);
}
#free_group .section_bdy{
	margin: 0 auto;
	width: 100%;
  background: url(../img/index/free_group/section_ftr.jpg) no-repeat bottom / 100% auto, url(../img/index/free_group/section_bdy.jpg) repeat center / 100% auto;
	padding: 0 0 13%
}
#free_group .section_bdy .free_info IMG{
  width: 40%;
  margin: 0 auto;
}
#free_group .menu_info{
  text-align: left;
}
#free_group .caption{
  text-align: justify;
}
/*--------------------*
#extra_group
*--------------------*/
.price_info {
  padding-top: 12px;
  text-align: right;
  font-weight: bold;
}

#frm_btn .price_charge .btn {
    background: -moz-linear-gradient(center top , #EC7731, #BC4301 50%, #9B3600 50%, #B64000) repeat scroll 0 0 rgba(0, 0, 0, 0);
    background: -webkit-gradient(linear, left top, left bottom, from(#EC7731), color-stop(0.5,#BC4301), color-stop(0.5,#9B3600), to(#B64000));
    border-radius: 4px 4px 4px 4px;
    color: #FFEBCB;
    cursor: pointer;
    display: block;
    font-size: 20px;
    margin: 0.5em auto;
    padding: 10px 0;
    width: 90%;
}
#frm_btn .btn_free {
    background: -moz-linear-gradient(center top , #EC7731, #BC4301 50%, #9B3600 50%, #B64000) repeat scroll 0 0 rgba(0, 0, 0, 0);
    background: -webkit-gradient(linear, left top, left bottom, from(#EC7731), color-stop(0.5,#BC4301), color-stop(0.5,#9B3600), to(#B64000));
    border-radius: 4px 4px 4px 4px;
    color: #FFEBCB;
    cursor: pointer;
    display: block;
    font-size: 20px;
    margin: 0.5em auto;
    padding: 10px 0;
    width: 90%;
}

#yahoo_header a, #yahoo_footer a {
    color: #0000FF;
}

/*--------------------*
#info_group
*--------------------*/
#info_group {
   margin: 3% auto;
}
#info_group .section_bdy {
    background-color: #550000;
}
#info_group .menu_bdy {
    background-color: #550000;
    margin: 0 auto;
    padding: 3%;
}
#info_group .detail_txt {
    background-color: #FFFFFF;
    border: 7px double #AA8080;
    margin: 0 auto;
    padding: 2%;
}
#info_group .detail_txt P {
    background-color: #FFFFFF;
    color: #642B1A;
}


/*--------------------*
.start_btn
*--------------------*/
.start_btn{
  max-width: 280px;
  width: 100%;
  margin: 0 auto 20px;
}
.start_btn a p{
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
}


/*--------------------*
 *  .telling
 *--------------------*/
.telling{
  margin: 20px auto;
  color: #000;
}
.telling h2 img{
  position: relative;
  top: 1px;
}
.telling h3 ,
.telling ul{
  width:86%;
  margin:0 auto;
}
.telling h3.pink{
  color: #E11387;
}
.telling .section_bdy{
  background:url(./../img/contents/section_bdy.jpg) repeat-y center top / 100% auto;
}
.telling .section_ftr{
  padding-bottom: 40px;
  background:url(./../img/contents/section_ftr.jpg) no-repeat center bottom / 100% auto;
  position:relative;
  bottom:-1px;
}
.telling .section_hdr{
  padding-top:1%;
}
.telling h3 ,
.telling LI {
  list-style-type: none;
  line-height: 1.5;
  box-sizing: border-box;
  text-align: justify;
  padding: 7px 0 9px 28px;
  background:url("./../img/input/dot1.png") no-repeat scroll 0 8px;
  background-size: 19px auto;
}
.telling h3 ,
.telling LI.main {
  font-weight: normal;
}
/*--------------------*
 *  #frmInput
 *--------------------*/
[id^="frmInput"] h3{
  margin: 0 18px;
}
[id^="frmInput"] h3 img{
  margin: 0 auto;
  max-width: 540px;
}
[id^="frmInput"] table{
  width: 90%;
  margin:0 auto;
}
.disp_sp [id^="frmInput"] table{
  width: 100%;
}
[id^="frmInput"] th{
  display: block;
  margin: 0 0 20px;
  font-weight: normal;
}
[id^="frmInput"] input[type="text"]{
  font-size: 16px;
  padding: 8px;
  height: 40px;
  width: calc(100% - 20px);
  border: 1px solid #B0B0B1;
  border-radius: 4px;
}
[id^="frmInput"] .input_tbl select{
  width:24%;
  padding: 8px;
  border: 1px solid #B0B0B1;
  background-color: #ffffff;
  background-image: url(../img/input/arrow.png);
  background-repeat: no-repeat;
  background-position: right 8px center;
  -webkit-background-size: 10px;
  background-size: 10px;
  border-radius: 4px;
  font-size: 16px;
  height: 40px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
[id^="frmInput"] .input_tbl .tr_birthplace select{
  width: 36%;
}
.disp_sp [id^="frmInput"] .input_tbl .tr_birthplace select{
  width: 65%;
}
[id^="frmInput"] .input_tbl SELECT.sexSelect{
  width: 100%;
}
span.hissu{
  color: #C6000D;
}
.tr_caution{
  color:#000;
  text-align:left;
}
.tr_caution p {
  line-height: 1.4;
  font-size: 12px;
}
[id^="frmInput"] td label{
  font-size: 1.6em;
  color: #383838;
}
.disp_sp [id^="frmInput"] td label{
  font-size: 1.3em;
}
[id^="frmInput"] th .hissu {
  font-size: 0.8em;
  color: #C6000D;
}
.cookie_check{
  font-size: 14px;
  margin-bottom:4%;
}


/*--------------------*
[id^="frmInput"] 入力ページ
 *--------------------*/
[id^="frmInput"] .section_bdy{
  background:url(./../img/input/input_frm/section_bdy.jpg) repeat-y 50% 0 / 100% auto;
  margin-bottom:5%;
  margin: 0 auto 7%;
}
[id^="frmInput"] .section_ftr{
  padding-bottom: 20px;
  background:url(./../img/input/input_frm/section_ftr.jpg) no-repeat 50% bottom / 100% auto;
  position:relative;
  bottom:-1px;
}
[id^="frmInput"] .section_hdr{
  padding-top: 20px;
  background:url(./../img/input/input_frm/section_hdr.jpg) no-repeat 50% top / 100% auto;
  position:relative;
  top:-1px;
}
[id^="frmInput"] .input_other{
  margin-top: 20px;
}
[id^="frmInput"] P.sex_caution{
  margin:3% auto;
  text-align: left;
  color: #C6000D;
  width: 80%;
  font-size:0.9em;
}
#frm_btn .cookie_check{
  margin: 20px auto;
  line-height: 1.5;
}
#frm_btn .cookie_check .record_area{
  display: flex;
  justify-content: center;
  margin: 20px 0 0;
}
#frm_btn .cookie_check label,
#frm_btn .cookie_check input{
  font-size: 16px;
  line-height: 1.5;
}
#frm_btn .cookie_check label{
  display: flex;
  align-items: center;
}
#frm_btn .cookie_check .check{
  border-radius: 4px;
  width: 20px;
  height: 20px;
}
#frm_btn .cookie_check .delete{
  border: 1px solid #B0B0B1;
  padding: 4px 20px;
  border-radius: 8px;
  margin: 0 0 0 20px;
}
#frm_btn .price_allfree,
#frm_btn .price_free,
#frm_btn .price_charge{
  margin:0 18px;
}
#frm_btn .price_allfree p,
#frm_btn .price_free p,
#frm_btn .price_charge p{
  background-size:100% auto;
}
#frmInput #frm_btn .price_allfree p{
  text-align: center;
}
#frm_btn .free{
  margin-top:3%;
  text-align:center;
}
#frm_btn button{
  background: transparent;
  border: none;
  max-width: 280px;
  width: 100%;
}