@charset "utf-8";
/* CSS Document */

/*==================================
	base
==================================*/
* { box-sizing: border-box;}
html { height: 100%; width: 100%; font-size: 62.5%;/* 10px */}
body { font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-feature-settings: "palt"; font-weight: 500; font-size:1.6rem; color:#222222; line-height: 1.5; letter-spacing: 0.05em; height: 100%; width: 100%;}
h1, h2, h3, h4, h5, ul, li, dl, dt, dd, p { font-weight: 500;}
.wrapper { position: relative; height: 100%; width: 100%;}
section { position: relative; z-index: 1;}

img { vertical-align: bottom;}
a { color: #000; text-decoration: none;display: block;}
a:hover {text-decoration: none;}
a:focus { outline: none;}
.inner { max-width: 1100px; width: 100%; margin: 0 auto;}
.outer { max-width: 1300px; width: 100%; margin: 0 auto;}
.en { font-family: 'Roboto', sans-serif;}
.contents { overflow: hidden;}
.contents.noborder { border-top: 0;}
::placeholder { color: #aaa;}

@media screen and (min-width: 750px) {
body { min-width: 1400px;}
.telnum,
a[href^="tel:"] { pointer-events: none;}
.spOnly { display: none;}
}
@media screen and (max-width: 749px) {
body { font-size: 1.4rem; min-width: 100%;}
img { width: 100%;}
.inner,
.outer { width: 94.66%;}
.pcOnly { display: none;}
:root { --swiper-navigation-size: 30px;}
}


/*==================================
	pafts
==================================*/
.bgGRN { background: #e8f6ee;}
.bgGRY { background: #f1f4f8;}

/* btn */
.btnArea { position: relative;}
.btn { padding: 15px 0; border-radius: 60px; color: #fff; text-align: center; display: block;}
.btn.btnGRN { background-color: #0900d4;}
.btn.btnWHT { background-color: #fff; color: #1ea854; border: solid 2px #1ea854;}
.btn.btnLGR { background-color: #e8f6ee; color: #222222; border: solid 2px #1ea854;}
.btn.btnGRY { background-color: #f1f4f8; color: #222222; border: solid 2px #ddd;}
.btn.shadow { box-shadow: 0px 2px 5px 0px rgba(98, 128, 177, 0.4);}
.btn.arrow:before { right: 20px; top: 0; width: 12px; height: 12px; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.btn.btnGRN.arrow:before { border-top: 2px solid #fff; border-right: 2px solid #fff;}
.btn.btnWHT.arrow:before { border-top: 2px solid #1ea854; border-right: 2px solid #1ea854;}
.btn.btnLGR.arrow:before { border-top: 2px solid #1ea854; border-right: 2px solid #1ea854;}
.morebtn.btnWH { color: #4bb4f0; background: #fff; border: solid 1px #1ea854; display: inline-block; text-align: center; padding: 10px 0;}
.linkGRN { display: inline-block; color: #1ea854; border-bottom: solid 1px #1ea854; padding-bottom: 2px;}
button { border: 0; line-height: 1.5; font-weight: 500;}
button.btn.btnGRN:disabled,
.btn.btnGRN.off { background-color: #cccccc;}
@media screen and (min-width: 750px) {
}
@media screen and (max-width: 749px) {
}

/* font */
.faxnum { pointer-events: none;}
.disIB { display: inline-block;}
.disB { display: block;}
.disI { display: inline;}
.flexwrap { flex-wrap: wrap;}
.taC { text-align: center;}
.taL { text-align: left;}
.taR { text-align: right;}
.fcGRN { color: #1ea854;}
.fcRED { color: #ed2b2b;}
.fwR { font-weight: 400;}
.fwB { font-weight: 700;}
.fsMin { font-size: 1.4rem;}
.fsMid { font-size: 1.8rem;}
.fsBig { font-size: 2.4rem;}
.m0a { margin: 0 auto;}
.mtSSS { margin-top: 8px;}
.mtSS { margin-top: 15px;}
.mtS { margin-top: 20px;}
.mtM { margin-top: 30px;}
.mtL { margin-top: 40px;}
.lh18 { line-height: 1.8;}
@media screen and (max-width: 749px) {
.fsMin { font-size: 1.2rem;}
.fsMid { font-size: 1.6rem;}
.fsBig { font-size: 1.8rem;}
.mtSSS { margin-top: 5px;}
.mtSS { margin-top: 10px;}
.mtS { margin-top: 15px;}
.mtM { margin-top: 15px;}
.mtL { margin-top: 20px;}
}

/* tit */
.contTit01 { font-size: 2.4rem; padding-bottom: 15px; font-weight: 700; text-align: center; border-bottom: solid 2px #1ea854; position: relative;}
.contTit02 { font-size: 1.8rem; padding: 5px; font-weight: 700; text-align: center; background: #bbe5cb;}
.contTit03 { font-size: 1.8rem; padding: 5px; font-weight: 700; text-align: center; background: #1ea854; color: #fff;}
.contTit04 { padding: 5px; font-weight: 700; text-align: center; background: #f1f4f8;}
.contTit05 { font-size: 2rem; font-weight: 700; text-align: left; position: relative; padding-left: 30px;}
.contTit05:before { content: ""; width: 20px; height: 20px; border-radius: 20px; background: #1ea854; position: absolute; left: 0; top: 5px;}
.contTit05:after { content: ""; width: 8px; height: 8px; border-radius: 8px; background: #fff; position: absolute; left: 6px; top: 11px;}
@media screen and (max-width: 749px) {
.contTit01 { font-size: 2rem; padding-bottom: 10px;}
.contTit02 { font-size: 1.5rem;}
.contTit05 { font-size: 1.6rem; padding-left: 25px;}
.contTit05:before { top: 2px;}
.contTit05:after { top: 8px;}
}

/* head */
.head { height: 250px; background: url("../img/head_bg01.jpg") right center no-repeat; background-size: cover;}
.head.pattern2 { background: url("../img/head_bg02.jpg") right center no-repeat; background-size: cover;}
.head .tit { font-size: 3.6rem; font-weight: 700; letter-spacing: 0.1em; height: 100%; display: flex; align-items: center; justify-content: center; color: #fff; text-align: center; text-shadow: 0px 0px 16px rgba(63, 145, 206, 1);}
.head.searchHead { padding-top: 30px; margin-bottom: 30px; position: relative;}
.head.searchHead:before,
.head.searchHead:after { content: ""; width: 100%; height: 100%; position: absolute; top: 0;}
.head.searchHead:before { background-color: #97caf1; opacity: 0.5%;}
.head.searchHead:after { background-image: -moz-linear-gradient( -90deg, rgb(0,128,255) 0%, rgba(0,83,166,0) 100%); background-image: -webkit-linear-gradient( -90deg, rgb(0,128,255) 0%, rgba(0,83,166,0) 100%); background-image: -ms-linear-gradient( -90deg, rgb(0,128,255) 0%, rgba(0,83,166,0) 100%); opacity: 0.1;}
.head.searchHead .inner { position: relative; z-index: 1;}
@media screen and (max-width: 749px) {
.head { height: 125px; background: url("../img/head_bg01_sp.jpg") right center no-repeat; background-size: cover;}
.head.pattern2 { background: url("../img/head_bg02_sp.jpg") right center no-repeat; background-size: cover;}
.head .tit { font-size: 2.1rem;}
.head.searchHead { height: auto; min-height: 365px; padding: 15px 0;}
}

/* pankuzu */
.pankuzu { background: #f1f4f8;}
.pankuzu ul { padding: 10px 0; display: flex; flex-wrap: wrap;}
.pankuzu ul li { font-size: 1.4rem; display: flex; font-weight: 700; color: #1ea854;}
.pankuzu ul li:after { padding: 0 10px; content: ">"; font-weight: 400; color: #222222;}
.pankuzu ul li:last-child:after { display: none;}
.pankuzu ul li a { font-weight: 400; color: #222222;}
@media screen and (max-width: 749px) {
.pankuzu ul li { font-size: 1.1rem;}
.pankuzu ul { padding: 8px 0;}
.pankuzu ul li:after { padding: 0 8px;}
}

/* arrow */
.arrow{ position: relative; display: inline-block; vertical-align: middle; text-decoration: none;}
.arrow:before,
.arrow:after{ position: absolute; top: 0; bottom: 0; margin: auto; content: ""; vertical-align: middle;}

/* icon */
.ico_date { background: url("../img/icon/search_calendar.svg") left 10px center no-repeat #ffffff; background-size: 22px auto;}
.ico_place { background: url("../img/icon/search_place.svg") left 12px center no-repeat,url("../img/icon/input_arrow.svg")right 10px center no-repeat #ffffff; background-size: 16px auto, 20px auto; padding-right: 30px !important;}
.ico_seat { background: url("../img/icon/search_seat.svg") left 12px center no-repeat,url("../img/icon/input_arrow.svg")right 10px center no-repeat #ffffff; background-size: 19px auto, 20px auto; padding-right: 30px !important;}
.ico_magglass { background: url("../img/icon/search_magglass.svg") right 20px center no-repeat #ffffff; background-size: 22px auto;}
.ico_search { background: url("../img/icon/search_magglass_GRN.svg") right 15px center no-repeat; background-size: 20px auto;}

/* table */
.lineTableGRN { border: solid 1px #1ea854;}
.lineTableGRN dt { padding: 10px; text-align: center; font-weight: 700; background: #bbe5cb;}
.lineTableGRN dd { padding: 20px 60px; font-weight: 400; line-height: 1.8;}
.lineTableRED { border: solid 2px #ed2b2b;}
.lineTableRED dt { padding: 10px; text-align: center; font-weight: 700; background: #ee6464; color: #fff;}
.lineTableRED dd { padding: 20px 60px; font-weight: 400;}
.lineTableRED dd .imp { font-size: 1.8rem; color: #ed2b2b; font-weight: 700;}
.nomalTable { display: flex; flex-wrap: wrap;}
.nomalTable { font-size: 1.4rem; border-right: solid 1px #dddddd; border-bottom: solid 1px #dddddd;}
.nomalTable dt { padding: 10px 5%; line-height: 1.2; background-color: #e8f6ee; text-align: center; border-top: solid 1px #dddddd; border-left: solid 1px #dddddd;}
.nomalTable dd { line-height: 1.8; font-weight: 400; padding: 15px 5%; border-top: solid 1px #dddddd; border-left: solid 1px #dddddd;}
@media screen and (min-width: 750px) {
.nomalTable dt { width: 200px; padding: 15px;}
.nomalTable dt .fac { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center;}
.nomalTable dd .fac { width: 100%; height: 100%; display: flex; align-items: center;}
.nomalTable dd { width: 899px; padding: 15px 30px;}
.nomalTable dd.pcW50 { width: 349px;}
.nomalTable dt.pc2item,
.nomalTable dd.pc2item { padding: 0;}
.nomalTable dt.pc2item p,
.nomalTable dd.pc2item p { height: 50%; padding: 15px 30px; line-height: 1.8;}
.nomalTable dt.pc2item p.pcOnly,
.nomalTable dd.pc2item p.pcOnly { border-top: solid 1px #dddddd;}
}
@media screen and (max-width: 749px) {
.lineTableGRN dt { padding: 5px;}
.lineTableGRN dd { padding: 10px 3.6%;}
.lineTableRED dt { padding: 5px;}
.lineTableRED dd { padding: 10px 3.6%;}
.lineTableRED dd .imp { font-size: 1.4rem;}
.nomalTable dt,
.nomalTable dd { width: 100%;}
.nomalTable dd .sptaC { text-align: center;}
}

/* calendar */
.calendar-container { width: 100%; background: #f2f2f2;}
.calendar-container .calendar-tit { text-align: center; display: flex; justify-content: space-between; align-items: center;}
.calendar-container .calendar-tit .tit { font-size: 1.8rem; font-weight: 700; padding: 0 0 5px 0; text-shadow: none; color: #222;}
.calendar-container .calendar-tit .year { font-size: 1.8rem; font-weight: 700;}
.calendar-container .calendar-tit .big { font-size: 1.8rem; font-weight: 700;}
.calendar-container .calendar-tit .month { font-size: 2.8rem; font-weight: 700; margin-left: 5px;}
.calendar-container .calendar-tit .nav { width: 10px; height: 18px; cursor: pointer; margin: 0 10px; position: relative; display: inline-block; vertical-align: middle; text-decoration: none;}
.calendar-container .calendar-tit .nav.prev:before,
.calendar-container .calendar-tit .nav.next:before { width: 14px; height: 14px; position: absolute; top: 0; bottom: 0; margin: auto; content: ""; vertical-align: middle; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.calendar-container .calendar-tit .nav.prev:before { right: 0; border-bottom: 2px solid #1ea854; border-left: 2px solid #1ea854;}
.calendar-container .calendar-tit .nav.next:before { left: 0; border-top: 2px solid #1ea854; border-right: 2px solid #1ea854;}
.calendar-container table { background: #dddddd;border-spacing: 1px;}
.calendar-container table { width: 100%;}
.calendar-container th, 
.calendar-container td { padding: 7px 0; text-align: center; background: #fff;}
.calendar-container td { font-weight: 700; cursor: pointer;}
.calendar-container .on { background: #e8f6ee; border: solid 1px #1ea854;}
.calendar-container .no { background: #f1f4f8; height: 36px; cursor: auto;}
/*.calendar-container .onto { background: #3966d4; color: #fff !important;}
.calendar-container .past { background: #f2f2f2; cursor: unset;}*/
.calendar-container th.sat,
.calendar-container .day *:last-child { color: #1e5bbf;}
.calendar-container th.sun,
.calendar-container .holiday, /* 祝日用 */
.calendar-container .day *:first-child { color: #ed2b2b !important;}
.calendar-container .selectdate { margin-top: 2px; background: #fff; color: #1e5bbf; text-align: center; font-weight: 700; padding: 15px 0;}
.calendar-container .selectdate .arr { background: url("../img/icon_flightschedule.svg") no-repeat; background-size: 10px 20px; width: 10px; height: 20px; display: inline-block; vertical-align: middle; margin: 0 10px;}
.calendar-container .btnArea { text-align: center; padding: 8px 0;}
.calendar-container .btnArea .btn.btnBL { font-size: 14px !important; width: 200px !important; padding: 10px 0; margin: 0 auto; border: 0;}
@media screen and (max-width: 749px) {
.calendar-container .calendar-tit .tit{ font-size: 2.3rem;}
.calendar-container .calendar-tit .year { font-size: 2.3rem;}
.calendar-container .calendar-tit .big { font-size: 2.3rem;}
.calendar-container .calendar-tit .month { font-size: 3.5rem;}
.calendar-container .calendar-tit .nav { font-size: 1rem; border-radius: 27px; width: 27px; height: 27px; line-height: 27px;}
.calendar-container th { font-size: 1.6rem;}
.calendar-container td { font-size: 1.8rem;}
.calendar-container .no { height: 41px;}
.calendar-container .selectdate { font-size: 2.1rem;}
.calendar-container .btnArea .btn.btnBL { font-size: 1.8rem !important; width: 250px !important; border-radius: 8px; font-weight: 700;}
}

/* pagination */
.pagination { text-align: center;}
.pagination .pagination_list { margin-top: 20px; display: flex; justify-content:center;}
.pagination .pagination_list li { border: solid 1px #dddddd; background: #fff;}
.pagination .pagination_list li a { width: 40px; height: 40px; line-height: 40px; text-align: center; font-weight: 500;}
.pagination .pagination_list li.selected { border: solid 1px #1ea854; background: #1ea854;}
.pagination .pagination_list li.selected a { color: #fff;}
.pagination .arrow.prev:before{ left: 0; right: 0; width: 10px; height: 10px; border-top: 2px solid #1ea854; border-right: 2px solid #1ea854; -webkit-transform: rotate(225deg); transform: rotate(225deg);}
.pagination .arrow.next:before{left: 0; right: 0; width: 10px; height: 10px; border-top: 2px solid #1ea854; border-right: 2px solid #1ea854; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
@media screen and (min-width: 750px) {
.pagination .pagination_list { margin-top: 30px;}
.pagination .pagination_list li.prev { margin-right: 12px;}
.pagination .pagination_list li.next { margin-left: 12px;}
}

/* scrollvar */
.mCSB_inside > .mCSB_container { margin-right: 12px;}
.mCSB_scrollTools { width: 8px; background: #ccedda; margin: 4px 4px 4px 0;}
.mCSB_scrollTools a + .mCSB_draggerContainer { margin: 10px 0;}
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { width: 8px;}
.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { background: #1ea854; border-radius: 0;}
.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar, .mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar { background: #1ea854;}
.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar { background: #1ea854; filter: "alpha(opacity=100)"; -ms-filter: "alpha(opacity=100)";}
.mCS-dark.mCSB_scrollTools .mCSB_draggerRail { background: #ccedda;}
.mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight, .mCSB_scrollTools .mCSB_buttonUp { height: 10px; background: none; position: relative; display: inline-block; vertical-align: middle; text-decoration: none; opacity: 1;}
.mCSB_scrollTools .mCSB_buttonDown:hover, .mCSB_scrollTools .mCSB_buttonLeft:hover, .mCSB_scrollTools .mCSB_buttonRight:hover, .mCSB_scrollTools .mCSB_buttonUp:hover { opacity: 1;}
.mCSB_scrollTools, .mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft, .mCSB_scrollTools .mCSB_buttonRight, .mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { opacity: 1;}
.mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft { top: 326px;}
.mCSB_scrollTools .mCSB_buttonRight, .mCSB_scrollTools .mCSB_buttonUp { top: 0;}
.mCSB_scrollTools .mCSB_buttonDown:before, .mCSB_scrollTools .mCSB_buttonLeft:before,
.mCSB_scrollTools .mCSB_buttonRight:before, .mCSB_scrollTools .mCSB_buttonUp:before { position: absolute; top: 0; left: 0; content: ""; vertical-align: middle; z-index: 1;}
.mCSB_scrollTools .mCSB_buttonDown:before, .mCSB_scrollTools .mCSB_buttonLeft:before { box-sizing: border-box; width: 4px; height: 4px; border: 4px solid transparent; border-top: 4px solid #1ea854;}
.mCSB_scrollTools .mCSB_buttonRight:before, .mCSB_scrollTools .mCSB_buttonUp:before { box-sizing: border-box; width: 4px; height: 4px; border: 4px solid transparent; border-bottom: 4px solid #1ea854;}




/*==================================
	common form
==================================*/
input,
textarea,
.txtform { padding: 10px 15px; border-radius: 4px; background-color: #ffffff; border: solid 1px #cccccc; width: 100%;}
.txtform { color: #b4b4b4; line-height: 1; cursor: pointer;}
/*textarea:focus, input:focus, input[type]:focus, .uneditable-input:focus { outline:solid 2px #bae6ff;}*/
input:disabled { background: #f5f5f5;}
textarea { height: 150px;}
textarea:focus, input:focus, input[type]:focus, .uneditable-input:focus { outline:solid 1px #dddddd;}

@media screen and (max-width: 749px) {
input,
.txtform { padding: 10px 15px;}
}

.formBox { margin-left: auto; margin-right: auto;}
.formBox .formList { font-size: 1.4rem; border-right: solid 1px #dddddd; border-bottom: solid 1px #dddddd;}
.formBox .formList .min { font-size: 1.1rem; margin-left: 3px;}
.formBox .formList dt { padding: 10px 5%; line-height: 1.2; background-color: #e8f6ee; text-align: center; border-top: solid 1px #dddddd; border-left: solid 1px #dddddd;}
.formBox .formList dd { font-weight: 400; padding: 15px 5%; border-top: solid 1px #dddddd; border-left: solid 1px #dddddd;}
.formBox .formList dd p { font-weight: 400;}
.formBox .formList dd .item .custom-select-trigger { padding: 10px 15px;}
.formBox .formList dd .item .inputWll { width: 100%;}
.formBox .formList dd .item .inputWl { width: 100%;}
.formBox .formList dd .item .inputWm { width: 62%;}
.formBox .formList dd .item .inputWs { width: 52%;}
.formBox .formList dd .item .inputWss { width: 40%;}
.formBox .formList dd.flex,
.formBox .formList dd.birtharea { display: flex;}
.formBox .formList dd.birtharea .custom-select-wrapper { width: auto;}
.formBox .formList dd.birtharea .item .bd_year { width: 88px;}
.formBox .formList dd.birtharea .item .bd_month { width: 70px;}
.formBox .formList dd.birtharea .item .bd_day { width: 70px;}
.formBox .formList dd.birtharea .item:nth-of-type(2) { margin-left: 10px;}
.formBox .formList dd.birtharea .item:nth-of-type(3) { margin-left: 10px;}
.formBox .formList dd.birtharea .custom-select { margin-left: 3px;}
.formBox .formList dd.genderarea .nomalradio {  display: flex;}
.formBox .formList dd.namearea { display: flex;}
.formBox .formList dd.namearea {}
.formBox .formList dd.namearea .item { max-width: 50%;}
.formBox .formList dd.namearea .item input { width: 70%; margin-left: 3px;}
.formBox .formList dd .prefectures { width: 200px;}
.formBox .formList dd.flex .prefectures { width: 200px;}
.formBox .formList dd.flex .seat01 { width: 130px;}
.formBox .formList dd.flex .seat02 { width: 80px;}
.formBox .formList dd.flex .seat03 { width: 80px;}
.formBox .formList dd.flex .item:nth-of-type(2) { margin-left: 5px;}
.formBox .formList dd.flex .item:nth-of-type(3) { margin-left: 5px;}
.formBox .formList dd.w100.column2 { padding: 0;}
.formBox .formList dd.w100.column2 .tit { background: #e8f6ee; font-weight: 700; text-align: center;}
.formBox .formList dd.w100.column2 .txt {}
@media screen and (min-width: 750px) {
.formBox input,
.formBox .txtform { max-width: 100%;}
.formBox .formList { font-size: 1.6rem; display: flex; flex-wrap: wrap;}
.formBox .formList .min { font-size: 1.4rem; display: inline-block; vertical-align: middle;}
.formBox .formList dt { width: 200px; padding: 15px;}
.formBox .formList dt .fac { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center;}
.formBox .formList dd { width: 898.5px; padding: 15px 30px;}
.formBox .formList.w100 dd { width: 100%;}
.formBox .formList dd.w100 { width: 100%;}
.formBox .formList dd .item .inputWll { width: 800px;}
.formBox .formList dd .item .inputWl { width: 500px;}
.formBox .formList dd .item .inputWm { width: 300px;}
.formBox .formList dd .item .inputWs { width: 220px;}
.formBox .formList dd .item .inputWss { width: 140px;}
.formBox .formList dd.pcFlex { width: 798px;}
.formBox .formList dd.pcFlex .pcFlexL { width: 200px;}
.formBox .formList dd.pcFlex .pcFlexR { width: 500px; margin-top: 0;}
.formBox .formList dd.birtharea .item .bd_year { width: 140px;}
.formBox .formList dd.birtharea .item .bd_month { width: 140px;}
.formBox .formList dd.birtharea .item .bd_day { width: 140px;}
.formBox .formList dd.birtharea .item:nth-of-type(2) { margin-left: 15px;}
.formBox .formList dd.birtharea .item:nth-of-type(3) { margin-left: 15px;}
.formBox .formList dd.birtharea .custom-select { margin-left: 5px;}
.formBox .formList dd.namearea .item:nth-of-type(2) { margin-left: 15px;}
.formBox .formList dd.namearea .item input { width: 200px; margin-left: 5px;}
.formBox .formList dd.w100.column2 { display: flex;}
.formBox .formList dd.w100.column2 .tit { width: 200px; padding: 15px; border-right: solid 1px #ddd;}
.formBox .formList dd.w100.column2 .tit2 { border-left: solid 1px #ddd;}
.formBox .formList dd.w100.column2 .txt { width: 348px; padding: 15px 30px;}
}
@media screen and (max-width: 749px) {
.formBox .formList dd .item .inputWm.spW100 { width: 100%;}
.formBox .formList dd .item .inputWs.spW100 { width: 100%;}
.formBox .formList dd.genderarea .nomalradio { justify-content: center;}
.formBox .formList dd.w100.column2 { display: flex; flex-wrap: wrap;}
.formBox .formList dd.w100.column2 .tit1 { order: 1; border-right: solid 1px #ddd;}
.formBox .formList dd.w100.column2 .tit2 { order: 2;}
.formBox .formList dd.w100.column2 .txt1 { order: 3; border-right: solid 1px #ddd;}
.formBox .formList dd.w100.column2 .txt2 { order: 4;}
.formBox .formList dd.w100.column2 .tit { padding: 10px; width: 50%; border-bottom: solid 1px #ddd;}
.formBox .formList dd.w100.column2 .txt { padding: 15px 5%; width: 50%;}
}

/* Custom Select */
.custom-select-wrapper { position: relative; z-index: 50; display: inline-block; user-select: none;}
.custom-select-wrapper select { display: none;}
.custom-select { position: relative; display: inline-block;}
.custom-select-trigger { position: relative; display: block; padding: 10px 30px 10px 10px; border-radius: 4px; background-color: #fff; border: solid 1px #cccccc; cursor: pointer;}
.custom-select-trigger:after { position: absolute; display: block; content: ""; width: 10px; height: 10px; top: 50%; right: 15px; margin-top: -3px; border-bottom: 1px solid #222222; border-right: 1px solid #222222; transform: rotate(45deg) translateY(-50%); transition: all .4s ease-in-out; transform-origin: 50% 0;}
.custom-select.opened .custom-select-trigger:after { margin-top: 3px; transform: rotate(-135deg) translateY(-50%);}
.custom-options { position: absolute; display: block; top: 100%; left: 0; right: 0; min-width: 100%; border: 1px solid #cccccc; border-radius: 4px; box-sizing: border-box; background: #fff; transition: all .4s ease-in-out; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-15px);}
.custom-select.opened .custom-options { opacity: 1; visibility: visible; pointer-events: all; transform: translateY(0);}
.option-hover:before { background: #f3fbfe;}
.custom-option { position: relative; display: block; padding: 10px; border-bottom: 1px solid #b5b5b5; cursor: pointer; transition: all .4s ease-in-out;}
.custom-option:first-of-type { border-radius: 4px 4px 0 0;}
.custom-option:last-of-type { border-bottom: 0; border-radius: 0 0 4px 4px;}
.custom-option:hover,
.custom-option.selection { background: #e8f6ee;}
@media screen and (max-width: 749px) {
.custom-select-trigger:after { width: 6px; height: 6px; margin-top: 0;}
.custom-select-trigger { padding: 5px 10px;}
.custom-option { padding: 5px 10px;}
}

/* search */
.searchmenu input { padding: 10px 15px 10px 35px; border: solid 1px #1a9249;}
.searchmenu input::placeholder { color: #222; opacity: 1;}
@media screen and (max-width: 749px) {
.searchmenu input { padding: 10px 15px 10px 40px;}
}

/* checkbox */
.formBox input[type=checkbox] { display: none;}
.formBox .checkbtn { box-sizing: border-box; cursor: pointer; display: inline-block; padding: 10px 0 10px 50px; position: relative; width: auto;}
.formBox .checkbtn:before { border: solid 1px #cccccc; background: #fff; content: ''; display: block; width: 36px; height: 36px; left: 0; margin-top: -8px; position: absolute; top: 12px; border-radius: 5px;}
.formBox .checkbtn:after { content: '';display: block; width: 25px; height: 13px; left: 6px; opacity: 0; position: absolute; top: 13px; transition: transform .2s ease-in-out, opacity .2s ease-in-out; border-left: 5px solid #1ea854; border-bottom: 5px solid #1ea854; transform: rotate(-45deg); border-radius: 3px;}
.formBox input[type=checkbox]:checked + .checkbtn:before { background: #fff;}
.formBox input[type=checkbox]:checked + .checkbtn:after { opacity: 1;}

/* radio */
/*
.formBox input[type=radio] { display: none;}
.formBox .radiobtn { box-sizing: border-box; cursor: pointer; display: inline-block; padding: 10px 0 10px 45px; margin-right: 20px; position: relative; width: auto;}
.formBox .radiobtn:before { border: solid 1px #cccccc; background: #fff; border-radius: 50%; content: ''; display: block; height: 30px; left: 5px; margin-top: -8px; position: absolute; top: 12px; width: 30px;}
.formBox .radiobtn:after { background: #1ea854; border-radius: 50%; content: ''; display: block; height: 14px; left: 13px; margin-top: -4px; opacity: 0; position: absolute; top: 16px; transform: scale3d(.3,.3,1); transition: transform .2s ease-in-out, opacity .2s ease-in-out; width: 14px;}
.formBox input[type=radio]:checked + .radiobtn:after { opacity: 1; transform: scale3d(1,1,1);}

*/
/*==================================
	header
==================================*/
header { position: relative; z-index: 150; display: flex; align-items: center; width: 100%; border-bottom: solid 1px #dcdcdc;}
header .hdBox .hdContact { border-left: solid 1px #dddddd; border-right: solid 1px #dddddd;}
header .hdBox .hdContact .list { display: flex; flex-wrap: wrap;}
header .hdBox .hdContact .list dt { width: 100%; text-align: center; background: #e8f6ee;}
header .hdBox .hdContact .list dd { width: 50%; text-align: center;}
header .hdBox .hdContact .list .hdTel { border-right: solid 1px #dddddd;}
header .hdBox .hdContact .list .hdTel a { color: #1ea854; letter-spacing: 0;}
header .hdBox .hdContact .list .hdMail a { text-align: left;}
header .hdBox .hdReserve .btn { width: auto; font-size: 1.6rem;}
header .hdBox .hdReserve .btn .arrow { display: block;}
header .hdBox .hdReserve .btn .arrow:before { right: 10px; top: 0; width: 10px; height: 10px; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
header .hdLogin { position: absolute;}
header .hdLogin a { line-height: 30px; background: url("../img/icon/login.svg") left 25px center no-repeat; background-size: auto 25px;}

@media screen and (min-width: 750px) {
header { height: 80px;}
header .outer { max-width: 1400px; height: 100%; display: flex; justify-content: space-between; align-items: center; position: relative;}
header .hdLogo { width: 155px; padding: 0 0 0 40px;}
header .hdLogo img { width: 90px; vertical-align: middle;}
header .hdTxt { width: 560px; font-size: 1.4rem; font-weight: 400;}
header .hdBox { width: 685px; padding-right: 150px; height: 100%; display: flex; align-items: center;}
header .hdBox .hdContact { width: 354px; height: 100%;}
header .hdBox .hdContact .list dt { font-size: 1.4rem; padding: 5px; height: 30px;}
header .hdBox .hdContact .list dd { height: 50px;}
header .hdBox .hdContact .list .hdTel a { font-size: 2.2rem; padding: 10px 0 0 0;}
header .hdBox .hdContact .list .hdMail {}
header .hdBox .hdContact .list .hdMail a { padding: 15px 0 0 50px; background: url("../img/icon/head_mail.svg") left 15px center no-repeat; background-size: 25px auto; height: 100%;}
header .hdBox .hdReserve { margin-left: 20px; width: 140px;}
header .hdBox .hdReserve .btn { padding: 10px 10px 10px 0;}
header .hdBox .hdNav { display: none;}
header .hdLogin { right: 0; bottom: -1px; border-left: solid 1px #dddddd; border-bottom: solid 1px #1ea854;}
header .hdLogin a { height: 81px; padding: 25px 25px 25px 60px;}
}
@media screen and (max-width: 749px) {
header { height: 60px;}
header .outer { width: 100%;}
header .hdLogo { width: 80px; margin-top: 10px; margin-left: 5%; position: relative;}
header .hdLogo img { width: 100%;}
header .hdTxt { display: none;}
header .hdBox .hdContact { width: 78.66%; margin: 15px auto 25px auto; border-top: solid 1px #dddddd; border-bottom: solid 1px #dddddd;}
header .hdBox .hdContact .list {}
header .hdBox .hdContact .list dt { padding: 5px 0;}
header .hdBox .hdContact .list .hdTel a { font-size: 1.9rem; padding: 5px 0;}
header .hdBox .hdContact .list .hdMail a { padding: 10px 0 10px 40px; background: url("../img/icon/head_mail.svg") left 12px center no-repeat; background-size: 22px auto;}
header .hdBox .hdReserve { width: 66.66%; max-width: 250px; margin: 0 auto 20px auto;}
header .hdBox .hdReserve .btn { padding: 15px 10px 15px 0;}
header .hdBox .hdNav { width: 78.66%; margin: 0 auto;}
header .hdBox .hdNav li { margin: 30px 0;}
header .hdBox .hdNav li a { font-size: 1.6rem; font-weight: 400; text-align: left;}
header .hdBox .hdNav li a .arrow { display: block;}
header .hdBox .hdNav li a .arrow:before { right: 10px; top: 0; width: 10px; height: 10px; border-top: 2px solid #1ea854; border-right: 2px solid #1ea854; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
header .hdLogin { width: 100px; right: 60px; top: 0; position: absolute;}
header .hdLogin a { height: 60px; padding: 16px 0 0 30px; background-position: left center;}

/* menu */
header .hdBox { width: 100%; padding: 60px 0; text-align: center; display: block; position: fixed; top: 0; bottom: 0; overflow-x: hidden; overflow-y: auto; z-index: 1; opacity: 0; background-color: rgba(255, 255, 255, 0.9); visibility: hidden; transition: .3s;}
header .toggle_btn { display: block; position: absolute; top: 0; right: 0; width: 60px; height: 60px; transition: all .5s; cursor: pointer; z-index: 100; background: #1ea854;}
header .toggle_btn span { display: block; position: absolute; right: 16px; width: 20px; height: 2px; border-radius: 2px; background-color: #fff; transition: all .5s;}
header .toggle_btn span:nth-child(1) { top: 22px;}
header .toggle_btn span:nth-child(2) { top: 29px; width: 15px; right: 21px;}
header .toggle_btn span:nth-child(3) { bottom: 22px;}
.open { overflow: hidden;}
.open header .hdBox { opacity: 1; visibility: visible; transition: .3s;}
.open header .toggle_btn span { background-color: #fff;}
.open header .toggle_btn span:nth-child(1) { -webkit-transform: translateY(7px) rotate(-315deg); transform: translateY(7px) rotate(-315deg);}
.open header .toggle_btn span:nth-child(2) { opacity: 0;}
.open header .toggle_btn span:nth-child(3) { -webkit-transform: translateY(-8px) rotate(315deg); transform: translateY(-8px) rotate(315deg);}
}

/*==================================
	footer
==================================*/
footer { margin-top: 160px; border-top: solid 1px #ddd; background: #f1f4f8; position: relative;}
footer:before { content: ""; width: 100%; position: absolute; top: -80px; height: 80px; background: url("../img/ft_illust.png") bottom center no-repeat;}
footer .outer { padding: 50px 0; position: relative;}
footer .outer .ftNav { margin-bottom: 20px; display: flex; justify-content: center;}
footer .outer .ftNav li { margin: 0 15px;}
footer .outer .ftNav li a { font-size: 1.4rem; font-weight: 400;}
footer .outer .pagetopBtn { position: absolute; right: -20px; bottom: 30px;}
footer .outer .pagetopBtn a { width: 50px; height: 50px; border-radius: 50px; background: #1ea854;}
footer .outer .pagetopBtn a .arrow:before{ left: 18px; top: 14px; width: 14px; height: 14px; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
footer copy { font-size: 1.1rem; font-weight: 400; text-align: center; display: block;}
@media screen and (min-width: 750px) {
}
@media screen and (max-width: 749px) {
footer { margin-top: 120px;}
footer:before { top: -60px; height: 60px; background: url("../img/ft_illust_sp.png") bottom center no-repeat; background-size: auto 60px;}
footer .outer { padding: 25px 0;}
footer .outer .ftNav { margin-bottom: 25px; flex-wrap: wrap; justify-content: space-between;}
footer .outer .ftNav li { margin: 10px 0 0 0; width: 50%;}
footer .outer .ftNav li:nth-child(1) { order: 1; padding-left: 20px; margin-top: 0;}
footer .outer .ftNav li:nth-child(2) { order: 3; padding-left: 20px;}
footer .outer .ftNav li:nth-child(3) { order: 5; padding-left: 20px;}
footer .outer .ftNav li:nth-child(4) { order: 7; padding-left: 20px;}
footer .outer .ftNav li:nth-child(5) { order: 9; padding-left: 20px;}
footer .outer .ftNav li:nth-child(6) { order: 2; padding-left: 10px; margin-top: 0;}
footer .outer .ftNav li:nth-child(7) { order: 4; padding-left: 10px;}
footer .outer .ftNav li:nth-child(8) { order: 6; padding-left: 10px;}
footer .outer .ftNav li:nth-child(9) { order: 8; padding-left: 10px;}
footer .outer .pagetopBtn { right: 0; bottom: 15px;}
footer copy { font-size: 0.8rem;}
}


