/* Cgmap */
#Cgmap { position: relative; margin-bottom: -5%; z-index: -1; }
#Cgmap:before { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2; content: ""; }
#Cgmap iframe { width: 100vw; height: 350px; }

/* contact_page */
#contact_page {margin-top: 4em;background: white;box-shadow: 0 0 0.8em 0 rgba(2, 2, 2, .16);display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;}
#contact_page .bg_info{
    background-color: #efefef;
}
.btnBox{display:flex;flex-direction:column;align-items: center;margin:40px 0}
.btnBox .send_btn{padding:.4em .5em;width:10em;background:var(--primary);display:block;text-align:center;color:white;cursor:pointer}


/* contact_information */
.contact_information { padding: 2em; }
.contact_information .title {margin-bottom: 1.5em;color: #3f3f3f;}
.contact_information a { margin-bottom: 1em; display: flex; align-items: center; }
.contact_information a font {position: relative;margin-right: 1em;width: 2.3em;aspect-ratio: 1/1;background: #075490;display: flex;justify-content: center;align-items: center;border-radius: 50%;}
.contact_information a font svg {width: 50%;height: 100%;fill: #ffffff;}
.contact_information a.map font svg { width: 45%; }
.contact_information a.line font svg { width: 65%; }
.contact_information a span {width: 1%;flex: 1 1 auto;font-size: .9em;color: #1c1c1c;}

/* form_box */
.form_box {padding: 5em;display: grid;grid-template-columns: repeat(1, 1fr);grid-gap: 1em;align-items: center;}
.form_box.large_item { padding: 0; }
.form_box .form_item label {color: var(--g_900);line-height: 56px;}
.form_box .flex_style {padding: 10px 20px;flex-direction: row;gap: 20px 30px;display: grid;!i;!;grid-template-columns: 5em 1fr;gap: 20px 50px;align-items: center;}
.member_center input, .member_center select{height: 48px;}
.form_box .Departure_Date{
    grid-template-columns: 7em 1fr 1em 1fr;
    gap: 20px 20px;
}

.form_box .Departure_Date input[type="date"]::-webkit-calendar-picker-indicator {
padding-right:20px;
    width: 15px;
    height: 15px;
    border-width: thin;
}

.form_box .flex_style label.large {margin-right: 1em;width: 7em;}
.form_box .flex_style >input , .form_box .flex_style >font {width: 100%;height: 48px;line-height: 35px;border-bottom: 1px #d6d6d6 solid;}
.form_box .flex_style .groud { overflow: hidden; display: flex; align-items: center; background-color: white; background-clip: padding-box; border: 1px solid var(--g_200); border-radius: .2em; }
.form_box .flex_style .groud >input { width: 1%; flex: 1 1 auto; border: 0; }
.form_box .flex_style .groud >button { padding: .5em; width: 10em; background: var(--red); text-align: center; color: white; }
.form_box .flex_style .remarks span.words { width: 100%; display: flex; justify-content: flex-end; align-items: center; font-size: .9em; color: var(--g_600); }
.form_box .flex_style .remarks span.words b { margin: 0 .2em; font-size: 1em; }
.form_box .Departure_Date >font{
    border-bottom: 0px #d6d6d6 solid;
    text-align: center;
    height: 38px;
}
.form_box .sex_box { padding: .3em 0; width: 100%; display: flex; align-items: center; }
.form_box .sex_box >span { margin-right: 1em; }
.form_box .sex_box >span input { margin-right: .2em; }
.form_box .address_box { width: 100%; display: grid; grid-template-columns: 8em 8em 1fr; grid-gap: .6em 1em; align-items: center; }
.form_box .calendar { position: absolute; width: 1em; height: 1em; top: 51%; right: 1em; fill: var(--g_500); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.form_box .check_box font { display: flex; align-items: center; }
.form_box .check_box font input { width: 1%; flex: 1 1 auto; }
.form_box .check_box font img { margin-left: .5em; cursor: pointer; }
.form_box .send_box {display: flex;justify-content: end;align-items: center;}
.form_box .large_item.send_box {flex-direction: column;justify-content: center;padding: 30px 0;grid-column: 1 / 3;}
.form_box .notice_box{
    grid-column: 1 / 3;
}
.form_box .send_btn {padding: .4em .5em;width: 350px;height: 45px;background: var(--primary);display: block;text-align: center;color: white;cursor: pointer;margin: auto;}
.form_box .send_btn.large_btn { width: 100%; }
.form_box .agree_box { margin-bottom: .2em; display: flex; align-items: center; }
.form_box .agree_box label[for="IsAgree"] { margin-left: .3em; width: 1%; flex: 1 1 auto; line-height: 1; }

/* member_page */
#member_page { margin: 2em auto 0; width: min(650px, 95vw); border: 1px var(--g_100) solid; }
#member_page .login_btns { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 1em; border-bottom: 1px var(--g_200) solid; }
#member_page .login_btns a { margin-bottom: -1px; padding: .5em 1em; border-bottom: 2px transparent solid; text-align: center; font-size: 1.1em; }
#member_page .login_btns a.acion { border-color: var(--primary); }
#member_page .other_btns .join { margin: 1em 0 .5em; display: flex; justify-content: center; align-items: baseline; }
#member_page .other_btns .join * {font-weight: 500;font-size: 1.1em;color: var(--g_500);}
#member_page .other_btns .join a { margin-left: .4em; padding: .2em; display: block; border-bottom: 1px var(--info) solid; line-height: 1; color: var(--info); }
#member_page .other_btns .askpass { text-align: center; }
#member_page .other_btns .askpass a { font-weight: 300; color: var(--g_500); }

/* notice_box */
.notice_box h3 { margin-bottom: .5em; display: flex; align-items: baseline; font-weight: 300; font-size: 1.2em; color: var(--g_500); }
.notice_box h3 i { margin-right: .2em; color: var(--g_300); }
.notice_box ol { margin-left: 1.5em; list-style: decimal; }
.notice_box ol li { list-style: decimal; }

/* member_rule */
#member_rule { overflow: hidden; width: 0; max-height: 0; display: none; opacity: 0; }
#member_rule::-webkit-scrollbar { width: 13px; }
#member_rule::-webkit-scrollbar-track { background: none; }
#member_rule::-webkit-scrollbar-thumb { border-radius: 8px; border: 4px solid transparent; background-clip: content-box; background-color: var(--g_200); }
#member_rule::-webkit-scrollbar-thumb:hover { background-color: var(--g_300); }
#member_rule * { font-size: inherit; }
#member_rule ol.rulelist { padding-left: 20px; list-style: decimal; }
#member_rule ol.rulelist li { padding: 0 0 10px 10px; }
.fancybox-slide--current #member_rule { overflow-y: scroll; width: min(95vw, 800px); max-height: 55vh; opacity: 1; }

/* order_box */
.order_box { margin-top: 2em; padding: .8em 1em 1em; background: color-mix(in srgb, var(--g_100) 50%, white); }
.order_box h5 { margin: 0 .5em .2em; letter-spacing: .1em; font-weight: 500; font-size: 1.2em; }
.order_box h5 b { margin-right: .5em; color: var(--red); }
.order_box h5.order_title { display: flex; align-items: center; }
.order_box h5.order_title strong { margin: 0 .5em; font-weight: 400; font-size: 1em; }
.order_box h5 .icheck { margin-left: .5em; display: inline-flex; align-items: center; }
.order_box h5 .icheck label { margin-left: .2em; font-weight: 400; font-size: .75em; color: var(--g_800); }
.order_box>div { padding: 1.5em; background: white; border: 1px var(--g_100) solid; grid-gap: .8em }

/* order_list */
.order_list .row_item { padding: .5em 1em; border-bottom: 1px var(--g_200) solid; display: grid; grid-template-columns: 80px repeat(6, 1fr) 25px; grid-gap: 0 .5em; align-items: center; }
.order_list .row_item.title { padding: .8em 1em; border-bottom-color: var(--g_400); }
.order_list .row_item.list .img a { padding: .2em; border: 1px var(--g_100) solid; width: 70px; aspect-ratio: 1/1; display: block; }

/* q_control */
.q_control { border: 1px var(--g_200) solid; display: inline-flex; align-items: stretch; }
.q_control button { position: relative; width: 2em; cursor: pointer; }
.q_control button:before { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); content: ""; }
.q_control button.plus:after { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); content: ""; }
.q_control input { padding: .3em 0; width: 3em; border: 0; border-radius: 0; text-align: center; }

/* other_box */
#order .other_box { margin-top: 2em; }
#order .other_box p { margin-bottom: 1em; display: flex; justify-content: flex-end; align-items: center; }
#order .other_box p label { min-width: 7em; }
#order .other_box p font { margin-left: 1em; width: 15em; font-size: .9em; }
#order .other_box p font input { padding: .2em .5em; font-size: 1em; }

/* btns */
#order .btns { margin: 2em 0 .5em; display: flex; justify-content: center; align-items: center; }
#order .btns .btn { margin: 0 .5em; padding: .3em .5em; width: 10em; border: 1px var(--g_200) solid; text-align: center; }
#order .btns #btnClean { background: var(--primary); border-color: var(--primary); color: white; }

/* order_bottom_txt */
.order_bottom_txt { position: absolute; width: 100%; bottom: 0; left: 0; opacity: 0; z-index: 1000; }
.order_bottom_txt .workframe_s { padding: 1em 0; display: flex; flex-wrap: wrap; justify-content: space-around; align-items: center; }
.order_bottom_txt.fixed { position: fixed; background: white; box-shadow: 0 0 .5em var(--g_200); opacity: 1; }
.order_bottom_txt.absolute-bt { opacity: 1; }
.order_bottom_txt.absolute-bt .workframe_s { padding-bottom: 2em; }
.order_bottom_txt .item_row { width: 45%; }
.order_bottom_txt .total_box { display: flex; align-items: center; }
.order_bottom_txt .total_box label { min-width: 6em; }
.order_bottom_txt .total_box #totaltxt { margin-left: .5em; min-width: 6em; font-weight: 500; font-size: 1.3em; color: var(--g_700); }
.order_bottom_txt .send { display: flex; justify-content: flex-end; align-items: center; }
.order_bottom_txt .send #btnOK { padding: .5em; width: min(20em, 100%); text-align: center; background: var(--primary); color: white; }

/* bot_note */
#bot_note { position: relative; width: 1%; flex: 1 1 auto; }
#bot_note span { line-height: 1.2; font-size: .9em; color: var(--g_700); }
#bot_note #opendis { margin: 0 .2em; line-height: 1; font-size: .9em; color: var(--red); cursor: pointer; }
#bot_note #opendis * { font-size: 1em; color: currentColor; }
#bot_note b { position: absolute; min-width: 7em; background: white; border: 1px var(--g_200) solid; border-radius: .2em; box-shadow: 0 0 .5em var(--g_200); right: 0; bottom: 3.5em; opacity: 0; }
#bot_note b span { overflow: hidden; height: 0; display: block; font-weight: 400; font-size: .9em; }
#bot_note b[data-type="2"] { padding: 5px 10px; opacity: 1; }
#bot_note b[data-type="2"]:before, #bot_note b[data-type="2"]:after { position: absolute; width: 0; height: 0; border-style: solid; border-width: 10px 8px 0 8px; border-color: #d6d6d6 transparent transparent transparent; display: inline-block; bottom: -10px; left: 20px; content: ""; }
#bot_note b[data-type="2"]:after { border-width: 10px 8px 0 8px; border-top-color: #fff; bottom: -9px; }
#bot_note b[data-type="2"] span { margin: .2em 0; height: 1.1em; }

/* æ—¥æœŸé¸æ“‡å™¨æ¨£å¼ */
.month-check {position: relative;}
.month-check::-webkit-calendar-picker-indicator {position: absolute;right: 0;padding-left: 100%;}



@media screen and (min-width: 1161px){
	#member_page:hover { box-shadow: 0 0 .5em var(--g_200); }
}
@media screen and (min-width: 981px){
	.form_box {grid-template-columns: repeat(2, 1fr);}
	.order_list .row_item .item { text-align: center; }
	.order_list .row_item .item.img_name { grid-column: 1/4; text-align: left; }
	.order_list .row_item.list .item.name { grid-column: 2/4; text-align: left; }
	#order .btns { justify-content: flex-end; }
	#order .btns #btnClean { margin-right: 0; }
}
@media screen and (max-width: 980px) and (min-width: 641px){
	.contact_information { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 1.5em 1em; align-items: center; }
	.contact_information .title { grid-column: 1/3; }
    .form_box{
    padding: 2em 1em;
}
}
@media screen and (max-width: 980px) and (min-width: 551px){
	.order_list .row_item.list { grid-template-areas: "img name quantity" "img format quantity" "img amount quantity"; align-items: end; }
	.order_list .row_item.list .img { grid-area: img; }
	.order_list .row_item.list .name { grid-area: name; }
	.order_list .row_item.list .format { grid-area: format; line-height: 1; font-size: .8em; color: var(--g_600); }
	.order_list .row_item.list .quantity { grid-area: quantity; display: flex; justify-content: flex-end; }
	.order_list .row_item.list .amount { grid-area: amount; }
}
@media screen and (max-width: 980px) {
	.order_list .row_item.title , .order_list .row_item.list .price { display: none; }
	.order_list .row_item.list { position: relative; padding: .5em; grid-template-columns: 80px 1fr 150px; grid-template-areas: "img name quantity" "img format quantity" "img amount quantity"; grid-gap: 0 .3em; align-items: end; }
	.order_list .row_item.list .format:before { content: attr(data-tit)":"; }
	.order_list .row_item.list .amount { font-weight: 500; }
	.order_list .row_item.list .operate { position: absolute; top: .5em; right: .5em; }
	.form_box .large_item {    grid-column: 1 / 3;}
    .form_box .send_btn{
    width: 200px;
}
}
@media screen and (min-width: 641px){
	.form_box .flex_style label {padding: .5em 0;text-align: justify;text-justify: distribute-all-lines;text-align-last: justify;color: #222;font-size: 17px;line-height: 30px;}
	.form_box .flex_style >input , .form_box .flex_style >font {
}
}
@media screen and (max-width: 640px){
	.form_box {padding: 2em 3%;grid-gap: 20px 0;}
	.form_box .address_box { grid-template-columns: repeat(2, 1fr); grid-template-areas: "city area" "inp inp"; }
	.form_box .address_box .address_inp { grid-area: inp; }
	.order_box>div { padding: 1.5em 3%; }
    .form_box .flex_style{
    /* grid-template-columns: 1fr; */
    padding: 0;
    gap: 10px 30px;
    display: flex ;
    flex-direction: column;
    align-content: flex-start;
}
    .form_box .form_item label{
    line-height: 26px;
}
    .form_box .Departure_Date{
    grid-template-columns: 1fr .5em 1fr;
    gap: 10px 5px;
    display: grid ;
}
    .form_box .Departure_Date label{grid-column-start: 1;grid-column-end: 4;grid-row-start: 1;grid-row-end: 2;}

}

@media screen and (max-width: 550px){
	.order_list .row_item.list { grid-template-columns: repeat(1, 1fr); grid-template-areas: inherit; grid-gap: .3em; justify-items: center; align-items: center; }
	.order_list .row_item.list .img a { margin: auto; width: min(calc(100% - 30px), 150px); }
	.order_list .row_item.list .quantity { grid-row: 5/6; }
	.order_list .row_item.list .operate { top: 0; right: 0; }
.form_box .send_btn{
    width: 150px;
}
}

@media screen and (max-width: 380px){

    .form_box .flex_style{
    /* width: calc(100% - 12%); */
}
}