/* ========all page style======== */
.clearfix{display: block;}
.clearfix:after{content: "."; display: block; height: 0; clear: both; visibility: hidden;}
.under main .image_l{float:left;margin:0 80px 0 0}
.under main .image_r{float:right;margin:0 0 0 80px}
section{padding: 60px 0}
section:last-child{padding-bottom: 0}
.sec_padb{padding-bottom: 24px}
#content{margin-bottom: 80px}
#about #content{margin-bottom: 0}
.room_big_txt{line-height: 2.5em}
.flex-right{align-self: flex-end;}
.pdb0{padding-bottom: 0}
.pdt50{padding-top: 50px}
.logo_sp{display: none;}
/* form checkbox for mw wp form  */

/*W*/
.under main .w10{width: 10%;}
.under main .w15{width: 15%;}
.under main .w20{width: 20%;}
.under main .w25{width: 25%;}
.under main .w30{width: 30%;}
.under main .w35{width: 35%;}
.under main .w40{width: 40%;}
.under main .w45{width: 45%;}
.under main .w50{width: 50%;}
.under main .w55{width: 55%;}
.under main .w60{width: 60%;}
.under main .w65{width: 65%;}
.under main .w70{width: 70%;}
.under main .w75{width: 75%;}
.under main .w80{width: 80%;}
.under main .w85{width: 85%;}
.under main .w90{width: 90%;}
.under main .w95{width: 95%;}
.under main .w100{width: 100%;}

/*MB*/
.under main .mb10{margin-bottom: 10px}
.under main .mb20{margin-bottom: 20px}
.under main .mb30{margin-bottom: 30px}
.under main .mb40{margin-bottom: 40px}
.under main .mb50{margin-bottom: 50px}
.under main .mb60{margin-bottom: 60px}
.under main .mb70{margin-bottom: 70px}
.under main .mb80{margin-bottom: 80px}
.under main .mb90{margin-bottom: 90px}
.under main .mb100{margin-bottom: 100px}

.pdb_100_pc{padding-bottom: 100px}
.sec_pdb_100{padding-bottom: 100px}

.u_header_bg img{height: 700px;min-height: initial;}
.u_header_bg .bnr_no_img{display: block;height: 370px;width: 100%}
header:has(.bnr_no_img) .nav_list>li>a,header:has(.bnr_no_img) .nav_list>li>.sub_btn,header:has(.bnr_no_img) .h_lang a{color: #000}
header:has(.bnr_no_img) #logo{filter: brightness(0) invert(0);}
header:has(.bnr_no_img) .hamburger-inner,header:has(.bnr_no_img) .hamburger-inner::after,header:has(.bnr_no_img) .hamburger-inner::before{background-color: #000}
header:has(.bnr_no_img) .hamburger--3dxy.is_active .hamburger-inner::before,
header:has(.bnr_no_img) .hamburger--3dxy.is_active .hamburger-inner::after{background-color: #fff}
nav.is_active .nav_list>li>a{color: #fff}
.under main h3{font-size: 48px;font-weight: 400}
.under main h3.sm{font-size: 36px;margin-bottom: 30px}
.under main h3.sm02{margin-bottom: 35px}
.under main h4{font-size: 30px;margin-bottom: 10px}
.under main h4 .sm{font-size: 18px}
.big{font-size: 134%}

/*==========================================================
                        H E A D I N G
==========================================================*/
/*FRAME IMAGE*/
.under main .frame_image .frame_image_content{position: relative;}
.under main .frame_image_img_r{position: absolute;right: calc(50% - 686px);top: 0;}
.under main .frame_image_img_l{position: absolute;left: calc(50% - 825px);top: 0}
.under main .frame_image .box_content{width: 60%}
.under main .frame_image .box_content p,
.under main .frame_image .box_content .big{line-height: 2em}
.under main .frame_image_content_r{display: flex;justify-content: flex-end;}
.under main .frame_image_content .txt{margin-bottom: 46px}
.under main .signature{font-size: 36px;line-height: 1.5em;position: absolute;bottom: 0;left: calc(50% + 80px)}
.under main .signature .en{display: block;font-size: 24px;font-family: var(--font-en);line-height: 1em;margin-top: 15px}
.under main .image_full_m_l{margin-left: -100px}
.under main .about_frame_img_mb{margin-bottom: 214px}
.under main .image_full_m_r{margin-right: -100px}
.under main .frame_image_content_mb{margin-bottom: 80px}

.under main .frame_list_image{display: flex;gap: 20px;margin-bottom: 50px}
.under main .frame_list_image:last-child{margin-bottom: 0}
.under main .frame_list_image .txt{display: block;text-align: center;font-size: 30px;margin-top: 10px}

/*============ FRAME ============ */

/* FRAME TIMELINE */
.under main .frame_timeline dl{margin-bottom: 30px;display: flex;gap: 30px;align-items: flex-start;}
.under main .frame_timeline dt{font-size: 30px;width: 100px;flex-shrink: 0}
.under main .frame_timeline dd{margin-top: 12px}

/* FRAME VERTICAL TITLE */
.under main .frame_ver_ttl{display: flex;align-items: flex-start;gap: 30px}
.under main .frame_ver_ttl .u_ttl_vertical{flex-shrink: 0;margin-top: -100px}
.under main .frame_ver_ttl .u_ttl_vertical02{margin-top: -150px}
.under main .u_ttl_vertical .ja{font-size: 60px}
.under main .ttl_en{font-size: 30px;font-family: var(--font-en);border-top: 2px solid #cccccc;margin-bottom: 39px}

/*FRAME LIST TYPE INFORMATION*/
.under main .frame_type_info ul{display: flex;margin-bottom: 19px}
.under main .frame_type_info ul:last-child{margin-bottom: 0}
.under main .frame_type_info ul li{font-size: 16px;margin-top: 18px;margin-right: 50px}
.under main .frame_type_info ul li:last-child{margin-right: 0}
.under main .frame_type_info ul .big{font-size: 30px;margin-top: 0;margin-right: 40px;width: 70px;flex-shrink: 0}
.under main .frame_type_info ul .long_txt01{width: 90px;margin-right: 20px}
.under main .frame_type_info ul .long_txt{width: 150px}

/* FRAME 01 */
.under main .sec_pad_frame01{padding: 5px 0}
.under main .frame01{padding:16px 30px 22px;background: #1f328c;margin-bottom: 50px;}
.under main .frame01:last-child{margin-bottom: 0}
.under main .frame01 p{color: #fff;font-size: 36px;color: #fff;text-align: center;}

/* FRAME PICKUP */
.under main .frame_pick{border: 1px solid #000;padding: 25px;background: var(--scolor);margin-bottom: 50px;}
.under main .frame_pick .pick_ttl{font-size: 24px;}
.under main .frame_pick .pick_ttl span{font-size: 36px;display: block;}

/* IFRAME BOX */
.under main .box_map{width:100%;height:400px}
.under main .box_ytb{width: 900px;height: auto; margin: 0 auto;aspect-ratio: 16/9;max-width: 100%;}
.under main .box_map iframe,
.under main .box_ytb iframe{width:100%;height:100%;border:none;outline: none;}

/*============ LIST ============ */
/* LIST 01 */
.under main .list01{margin-bottom: 30px;}
.under main .list01 li{display:block;padding-left:25px;margin-bottom:5px;position:relative}
.under main .list01 li::before{background:var(--mcolor);width:12px;height:3px;position:absolute;top:12px;left:0;content:''}

/* LIST 02 */
.under main .list02{margin-bottom: 30px;}
.under main .list02 li{counter-increment: li; padding-left: 30px;position: relative;margin-bottom: 10px;}
.under main .list02 li::before{ content: counter(li);position: absolute;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%;left: 0; top: 2px; background-color: var(--mcolor);font-size: 12px;font-weight: bold;color: #FFF;line-height: 22px;}

/* LIST CHECK */
.under main .list_check{margin-bottom: 30px;}
.under main .list_check li{display:block;padding-left:25px;margin-bottom:5px;position:relative}
.under main .list_check li::before{content: ''; display: block; position: absolute; top: 5px; left: 5px; width: 7px; height: 15px; border: solid var(--mcolor); border-width: 0 2px 2px 0; transform: rotate(45deg);}

/* LIST FAQ */
.under main .list_faq dl{margin-bottom: 15px;}
.under main .list_faq dl:last-child{margin-bottom: 0}
.under main .list_faq dl>dt{padding:15px 50px 15px 20px;font-size: 18px;color: #fff;font-weight: 700;position: relative;cursor: pointer;}
.under main .list_faq dl>dt.active::before{transform: rotate(90deg);opacity: 0}
.under main .list_faq dl>dt::before{content: '';position: absolute;width: 2px;height: 20px;right: 30px;top: calc(50% - 9px);background: #fff;transition: .3s}
.under main .list_faq dl>dt::after{content: '';position: absolute;width: 20px;height: 2px;right: 21px;top: 50%;background: #fff;}
.under main .list_faq dl>dt{background: var(--mcolor);transition: .3s}
.under main .list_faq dl>dt:hover{background: var(--scolor);}
.under main .list_faq dl dt,
.under main .list_faq dl dd{display: flex;align-items: flex-start;}
.under main .qa_ttl{font-size: 30px;font-weight: 500;margin: 0 20px 0 0;line-height: 1.1em;}
.under main dl dt p{font-size: 18px;font-weight: 700;color: #fff}
.under main .list_faq dl>dt .qa_ttl{color: #fff;}
.under main .list_faq dl>dd{padding: 20px 50px 20px 20px;display: none;background: var(--gray);color: var(--txt)}
.under main .list_faq .list01 li{color: #fff}
.under main .list_faq .list01 li::before{background: #fff}
.under main .qa_content{display: flex;align-items: flex-start;}

/* STEP LIST */
.under main .list_step dl{box-sizing: border-box;margin-bottom: 120px;position: relative;}
.under main .list_step dl::before{content: '';position: absolute;border-style: solid;border-width: 40px 90px 0 90px;border-color: var(--mcolor) transparent transparent transparent;left: calc(50% - 90px);bottom: -80px}
.under main .list_step dl:last-child::before{display: none;}
.under main .list_step dl:last-child {margin-bottom: 0}
.under main .list_step dl dt {display: flex;align-items: center;background: var(--mcolor);border-radius: 10px 10px 0 0;}
.under main .list_step dl dt p{font-size: 22px;font-weight: 500;border-bottom: none;color: #fff;margin-bottom: 0}
.under main .list_step dl dt .step_num{position: relative;font-size: 24px;top: 0;font-weight: 700;padding: 5px 15px;}
.under main .list_step dl dd {padding: 20px;position: relative;border: 5px solid var(--mcolor);border-top: 0;border-radius: 0 0 10px 10px;background: var(--scolor)}

/*==========================================================
                        T A B L E
==========================================================*/
table {border-collapse: collapse; border-spacing: 0; border: none;margin-bottom:0;padding:0}
.under main table.td_top td{vertical-align:top}
.under main table.tb_fix{table-layout: fixed;}

.under main table{margin-bottom: 30px;border: 2px solid var(--border-color);border-left: 0;border-right: 0;}
.under main table th,
.under main table td{padding:11px 0;border: 2px solid var(--border-color);border-left: 0;border-right: 0;font-size: var(--mfont-size);}
.under main table th{text-align: left;border-color: #a58105}
.under main table td{border-color: #cccccc;padding: 11px 56px;line-height: 3.3em}
.under main table img{display:block;margin:auto;}

.archive_item{display: flex;gap: 20px;position: relative;padding: 30px 0;transition: .3s;border-bottom: 1px solid #ddd;z-index: 1;}
.archive_item:hover{background: var(--light-green);}
.archive_item_img{width: 20%;height: 130px;margin-bottom: 0;border: 1px solid #ddd;padding: 10px}
.archive_item_img img{width: 100%;height: 100%;object-fit: cover;}
.archive_item_content{flex: 1;}
.archive_item_content .item_date,
.post_single_date{opacity: .8;margin-bottom: 10px;font-weight: 400;font-family: var(--font-eb);}
.archive_item_content .item_cate,
.post_single_cat{display: inline-block;padding: 0 10px;line-height: 1.5;margin-bottom: 10px;color: var(--green);border: 1px solid var(--green);}
.archive_item_content .item_ttl{font-weight: 700;}
.archive_item_content .item_ttl a{font-size: 140%;color: var(--txt);}
.archive_item_content .item_ttl a::after{content: '';position: absolute;width: 100%;height: 100%;left: 0;top: 0;z-index: 2}

.list_anchor_single{display: flex;justify-content: center;align-items: center;flex-wrap: wrap;width: 100%;margin: 60px auto 0;gap: 20px}
.list_anchor_single li{margin: 0;}
.post_single_date{margin-bottom: 0}
.post_single_info{display: flex;align-items: center;gap: 20px;margin-bottom: 30px}
.btn_single a{font-family: var(--font-eb);padding: 6px 16px 8px;font-size: 18px}
.the_content ul{margin-bottom: 30px}
.the_content ul:last-child{margin-bottom: 0}
.the_content ul li{padding-left: 20px;position: relative;}
.the_content ul li::before{content: '';position: absolute;width: 5px;height: 5px;background: #000;left: 0;top: 14px;border-radius: 50%}
.the_content p{margin-bottom: 0}
.post_title_single{line-height: 1.2}
p:has(.aligncenter){text-align: center;}
p:has(.alignright){text-align: right;}
.the_content img+img{margin-top: 40px}


/*About*/
.greeting_txt{margin-left: 30px}
.history_txt{margin-left: 6px}

/*Buy Page*/
.under main .frame_buy_box{display: flex;gap: 60px}
.under main .frame_buy_ttl{margin-bottom: 40px;line-height: 1.3em}
.under main .buy_img{width: 330px;flex-shrink: 0}
.under main .buy_img02{width: 520px}
.under main .buy_txt01{margin-bottom: 18px}
.under main .buy_txt01_mb{margin-bottom: 17px}
.under main .buy_txt01_line-height{line-height: 1.7em}
.under main .buy_txt01_mb02{margin-bottom: 60px}
.under main .buy_txt01_mb03{margin-bottom: 30px}
.under main .buy_txt01_mb04{margin-bottom: 67px}
.under main .buy_txt01_mb05{margin-bottom: 76px}
.under main .buy_txt01_mb06{margin-bottom: 38px}
.under main .type_2col{margin-bottom: 15px}
.under main .type_2col_02{margin-bottom: 26px}
.under main .type_2col_03{margin-bottom: 44px}
.under main .type_2col_04{margin-bottom: 50px}
.under main .type_2col ul{display: flex;gap: 0;flex-wrap: wrap;}
.under main .type_2col li{width: 240px;flex-shrink: 0}
.under main .type_2col li:last-child{width: 100px;text-align: right;}
.under main .type_2col_frame li{width: 170px}
.under main .type_2col_frame li:last-child{text-align: left;}
.under main .type_2col li.txt_left{text-align: left;}
.under main .type_2col li.long_txt{width: fit-content;}
.under main .type_2col .cus_long_txt_400{width: 420px}
.under main .type_2col li.col_2{align-self: flex-end;}
.under main .price_zone{margin-bottom: 30px}
.under main .price_zone_02{margin-bottom: 16px}
.under main .price_zone .price{font-size: 36px}
.under main .price_zone .price_noted{margin-right: 40px}
.under main .price_zone .price_tag{border: 1px solid #e4e4e4;line-height: 1em;padding: 5px 8px 7px;display: inline-block;}
.under main .price_zone .price_txt{display: inline-block;margin-left: 80px}
.under main .blue_tag{border: 1px solid #e4e4e4;line-height: 1em;padding: 2px 10px;background: #03cefa;margin-right: 20px}
.under main .frame_buy_btn_box{display: flex;align-items: center;justify-content: flex-start;gap: 40px;flex-wrap: wrap;}
.under main .frame_buy_btn_box02 .link{padding-top: 39px}
.under main .buy_btn a{padding: 17px 115px;border-radius: 15px;background: #000;color: #fff;display: inline-block;}
.under main .link a,
.txt_link{color: #000;text-decoration: underline;text-underline-offset: 3px}
.txt_link_none_underline{text-decoration: none;}
.under main .link a:hover,
.txt_link:hover{color: var(--scolor);}
.under main .buy_btn a:hover{background: var(--scolor)}
.under main .buy_btn,
.under main .frame_buy_btn_box .link{margin-bottom: 0}
.under main .buy_banner{display: flex;justify-content: flex-end;background: url(../images/buy_img17.jpg) top left /1220px no-repeat;position: relative;padding-top: 40px}
.under main .buy_banner02{background-image: url(../images/buy_img17_02.jpg);}
.under main .banner_txt{display: flex;align-items: flex-start;gap: 10px;padding: 36px 0 166px 100px}
.under main .banner_txt02{padding-bottom: 46px}
.under main .banner_txt .txt_vertical{writing-mode: vertical-rl;color: #fff;font-size: 60px;line-height: 1.46em;margin-bottom: 0}
.under main .banner_txt .bnr_txt_sm{font-size: 30px}
.under main .banner_txt .orange{color: #df6808}
.under main .bnr_txt_sm{color: #fff}
.under main .banner_box{width: 50%;;position: relative;z-index: 1}
.under main .banner_box::before{content: '';position: absolute;width: 750px;height: 100%;left: 0;top: 0;background: url(../images/buy_bg.jpg) center /cover no-repeat;z-index: -1;}
.under main .buy_banner02 .banner_box::before{background-image: url(../images/buy_bg_blue.jpg);}
.under main .buy_btn_box_txt{text-align: center;text-decoration: underline;text-underline-offset: 5px;text-decoration-color: #e81126;text-decoration-thickness: 2px;margin-bottom: 5px}
.under main .price_txt_mr20{margin-right: 20px}
.frame_buy_content p{margin-bottom: 14px}
.frame_buy_content .buy_txt_sm{margin-bottom: 60px;font-size: 16px}
.frame_buy_content .buy_txt_sm02{margin-bottom: 36px}
.frame_buy_content .buy_txt_sm03{margin-bottom: 26px}
.frame_buy_btn_box_pad_l{padding-left: 64px}
/*Room Page*/
.under main .room_frame_image_img_r,
.under main .first_frame_image_img_r{right: calc(50% - 991px)}
.under main .room_frame_image,
.under main .first_frame_image_mb{margin-bottom: 110px}
.under main .room_bg_yellow{padding-bottom: 130px;padding-top: 67px}
.under main .room_sec_pdb{padding-bottom: 200px;padding-top: 67px}
.under main .room_map_sec{padding-top: 48px}

/*PRIVACY*/
.under main .policy_box{margin-bottom: 50px}
.under main .policy_box:last-child{margin-bottom: 0}
.under main .f_policy_container .mwform-checkbox-field-text{position: relative;}
.under main .f_policy_container .mwform-checkbox-field-text::after{content: '※必須項目です。';font-size: 100%;font-family: var(--font-main);color: var(--scolor);margin-left: 10px}

/*NEWS*/
.under main .post_container{display: flex;gap: 200px}
.under main .post_container_detail{gap: 130px}
.under main .container_l{width: 120px;flex-shrink: 0}
.under main .container_r{flex: 1}
.under main .archive_list{display: flex;flex-wrap: wrap;gap: 30px}
.under main .post_container_ttl{font-size: 24px;color: var(--mcolor);margin-bottom: 20px}
.under main .cate_btn{margin-bottom: 29px}
.under main .cate_btn a{display: inline-block;width: 120px;text-align: center;padding: 8px 10px 9px;border-radius: 12px;border: 2px solid #777777;color: var(--mcolor);line-height: 1em}
.under main .cate_btn a:hover{background: var(--mcolor);color: #fff;}
.archive_list .s02_item{width: 280px;}
.wp_pagination {padding: 50px 0px; display: flex; flex-wrap: wrap; justify-content: center; }
.wp_pagination a,
.wp_pagination span {width: 52px; height: 52px; border: 1px solid var(--txt); background-color: #fff; color: var(--txt); border-radius: 15px; display: flex; align-items: center; justify-content: center; margin: 3px 10px; font-weight: 500 }
.wp_pagination span.current,
.wp_pagination a:hover {border-color: var(--scolor); background-color: var(--scolor); color: #fff }
.wp_pagination a.nextpostslink,
.wp_pagination a.previouspostslink {white-space: nowrap; color: #000000; font-weight: bold; background-color: transparent; border: unset; }
.wp_pagination .prev.page-numbers,
.wp_pagination .next.page-numbers {display: none; }

/*NEWS DETAIL*/
.post_detail_info{margin-bottom: 30px}
.post_detail_info .date{font-size: 12px}
.post_detail_info .cate{display: inline-block;margin-left: 22px;padding: 8px 22px;line-height: 1em;border-radius: 10px;border: 1px solid #888888;font-size: 12px}
.under main .list_anchor_single {display: flex; justify-content: center; align-items: center; flex-wrap: wrap; width: 100%; margin: 30px auto 0; gap: 20px }
.under main .list_anchor_single li {margin: 0; }
.under main .btn_single a {position: relative; display: inline-block; padding: 6px 30px; border-radius: 50px; border: 1px solid var(--txt); text-align: center; transition: .3s; color: var(--txt); }
.under main .btn_single a:hover {background: var(--mcolor); border-color: var(--mcolor); color: #fff }
.the_content_box{line-height: 1.6}
.under main .the_content_box h2,
.under main .the_content_box h3,
.under main .the_content_box h4{margin-bottom: 30px}

/*Order*/
.under main .big_tel{display: inline-block;margin-left: 40px;font-size: 36px}
.contact_form_box {width: 980px;margin: 0 auto;position: relative;padding-bottom: 183px;max-width: 100%}
.contact_form_box::before{content: '';position: absolute;width: 155px;border-top: 1px solid #cce4f1;top: -60px;left: -120px}
.contact_form_box::after{content: '';position: absolute;height: 350px;border-left: 1px solid #cce4f1;top: -125px;left: -60px}
.contact_form_box_ic_bottom::before{content: '';position: absolute;width: 155px;border-top: 1px solid #cce4f1;bottom: 95px;right: -120px}
.contact_form_box_ic_bottom::after{content: '';position: absolute;height: 350px;border-left: 1px solid #cce4f1;bottom: 30px;right: -60px}
.txt_mb_form{margin-bottom: 170px}
.txt_mb_form.hide{display: none !important;}
.under main .order_ttl_h_04{margin-bottom: 60px}
.hide{display: none;}
/* form checkbox for mw wp form  */
.must{color: var(--scolor);}
.contact_form dl{display: flex;gap: 8px;margin-bottom: 33px;align-items: center;}
.contact_form dl:last-child{margin-bottom: 0}
.contact_form dt{width: 200px;flex-shrink: 0;line-height: 1.3em}
.contact_form dt.pd_top{padding-top: 15px}
.contact_form dt .sm{font-size: 80%}
.contact_form dd{width: calc(100% - 208px);flex-shrink: 0}
.contact_form .f-control{border: 1px solid #bbbbbb;background: #f8f8f8;padding: 14px 24px;width: 100%}
.contact_form .zipcode_box{display: flex;gap: 5px;align-items: center;}
.contact_form textarea.f-control{height: 250px; display: block; max-width: 100%;}
.contact_form .quantity{margin-top: 23px;margin-left: 20px;position: relative;padding-bottom: 40px}
.contact_form .quantity .q_f-control{width: 100px;margin-left: 10px;margin-right: 5px;}
.contact_form .quantity .error{position: absolute;left: 0;bottom: 0}
.f-control::placeholder {color: #000; opacity: 1; }
.f-control::-webkit-input-placeholder {color: #000; }
.f-control:-ms-input-placeholder {color: #000; }
.f-control::-ms-input-placeholder {color: #000;}
input.f-control[name="zip"]::placeholder,
input.f-control[name="zip2"]::placeholder{color: #666666;}
.f-right.d-flex {column-gap: 6px; flex-wrap: wrap; }
.f-right.d-flex .f-control {flex: 1; }
.f-right.d-flex .error {width: 100%; }
.form__btn-box {margin-top: 60px; gap: 20px; flex-wrap: wrap; }
.btn-form {width: 260px; height: 50px; color: #fff; font-size: var(--mfont-size); cursor: pointer; transition: 0.3s; font-family: var(--font-main); background: #a58105; border: 1px solid #a58105; border-radius: 0; }
.btn-form:hover{background: #fff;color: var(--scolor);}
.mwform-checkbox-field>label {display: flex; align-items: center; justify-content: center; }
.mwform-checkbox-field>label span.mwform-checkbox-field-text {padding-top: 2px; cursor: pointer;}
.mw_wp_form.mw_wp_form_confirm .f-label {padding-top: 0px; }
.mw_wp_form.mw_wp_form_confirm .hidden-confirm {display: none !important; }
p:has(img.aligncenter) {text-align: center; }
.form_contact_confirm .hidden_confirm {display: none;}
.form_contact_confirm .form-row_confirm {justify-content: center; }
.form_contact_confirm .form-row_confirm .f-right {width: 100% }
.contact_form_mb{margin-bottom: 120px}
input[type="checkbox"] {width: 24px; height: 24px; border: 2px solid #dbdbdb; border-radius: 4px; appearance: none; -webkit-appearance: none; cursor: pointer; background: #fff; position: relative; margin: 0 10px 0 0}
input[type="checkbox"]:checked {background-color: var(--scolor); border-color: var(--scolor); }
input[type="checkbox"]:checked::after {content: ""; color: #fff; position: absolute; left: calc(50% - 4px); top: calc(50% - 24px/2); border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); width: 10px; height: 19px }
.f_policy_box{padding: 30px 40px;border: 1px solid #bbbbbb;margin-bottom: 30px;background: #fff}
.f_policy_box p{line-height: 1.5;margin-bottom: 40px}
.f_policy_box p:last-child{margin-bottom: 0}
.policy_must{margin-left: 20px;}
.under main .contact_ttl{margin-bottom: 30px}
.contact_section01{padding-bottom: 0}
.f_policy_container .error{text-align: center;}
.mw_wp_form_confirm .f_policy_container{display: none;}
.under:has(.mw_wp_form_complete) .txt_mb_form{margin-bottom: 1.5em}
.under:has(.mw_wp_form_confirm) .contact_section_hide,
.under:has(.mw_wp_form_complete) .contact_section_hide{display: none;}
.thanks_txt{padding: 80px 0}
/* form checkbox for mw wp form  */
.contact_form select.f-control {appearance: none; -webkit-appearance: none; -moz-appearance: none; position: relative;background: url(../images/select_ic.png) center right 20px /22px no-repeat #f8f8f8;}
.order_form_gray{position: relative;z-index: 1;padding: 40px 0}
.order_form_gray::before{content: '';position: absolute;width: 1220px;left: 50%;transform: translateX(-50%);top: 0;background: #f1f1f1;height: 100%;z-index: -1}
.btn-form_add-field{display: flex;justify-content: center;align-items: center;}
.btn-form_add-field span{display: inline-block;position: relative;padding-left: 20px}
.btn-form_add-field span::before{content: '+';left: 0;top: 0;position: absolute;color: #fff;transition: .3s}
.btn-form_add-field:hover span::before{color: var(--scolor);}
.btn-form_add-field_box{display: flex;justify-content: center;margin-top: 40px}
.field_add_form_hide{display: none;}
.field_add_form{margin-top: 80px}
.field_add_form02{margin-top: 0}
.mw_wp_form_confirm .order_form_gray_btn_box{padding: 0}
.mw_wp_form_confirm .order_form_gray_btn_box::before{background: transparent;}
.mw_wp_form_confirm .form__btn-box{margin-top: 0}
.mw_wp_form_confirm .btn-form_add-field_box,
.contact_form .confirm_form_hide{display: none;}
/*English*/
#english header .h_right,
#english .hamburger{display: none;}
.etop_ttl{margin-bottom: 30px}
.menu_frame{display: flex;align-items: flex-start;gap: 60px;margin-bottom: 80px}
.menu_frame:last-child{margin-bottom: 0}
.menu_frame_l{font-size: 60px;writing-mode: vertical-lr;width: 78px;line-height: 1.3em;margin-bottom: 0;font-weight: 400;text-orientation: upright;flex-shrink: 0}
.menu_frame_l .menu_frame_l_tag{font-size: 30px;background: #1f328c;color: #fff;line-height: 1em;padding: 17px 5px 25px;text-align: center;margin-bottom: 15px}
.menu_frame_content{margin-top: 0;flex: 1}
.menu_frame_l_en_ic{padding-top: 20px;border-top: 2px solid #cccccc;}
.menu_frame_l_en{font-size: 60px;font-family: var(--font-en);width: 100%}
.menu_frame_l_en:empty{margin-bottom: 26px}
.menu_frame_l_en_mb_sm{margin-bottom: 30px}
.menu_frame_l_en_sm{font-size: 48px;margin-bottom: -15px}
.menu_frame_l_en_sm02{margin-bottom: 10px}
.menu_frame_box{display: flex;align-items: flex-start;gap: 190px}
.menu_frame_box .box_r{flex: 1}
.menu_txt{display: flex;align-items: center;justify-content: space-between;padding-right: 110px}
.menu_txt_full{padding-right: 0}
.menu_txt .txt{margin-right: 30px}
.menu_txt .txt:last-child{margin-right: 0}
.menu_price{font-size: 36px;margin-right: 10px}
.menu_txt_price{margin-bottom: 17px}
.under main .etop_frame_image .box_content{width: 48%}
.etop_frame_image{margin-bottom: 80px}
.etop_frame_image:last-child{margin-bottom: 0}
.s07_en_content{display: flex;gap: 26px;justify-content: center;}
.s07_txt_en{font-size: 24px;margin-bottom: 0;padding-top: 18px;line-height: 1.5em}
.s07_tel_en{font-size: 48px;margin-bottom: 8px;line-height: 1em}
.s07_tel_en a{color: #fff}
.s07_txt_en02{font-size: 16px}
.sec07_en{padding: 90px 0;position: relative;}
.sec07_en::before{content: '';position: absolute;height: 55px;border-left: 2px solid #8c8c8c;left: 50%;transform: translateX(-50%);bottom: 0;display: none;}

/*MENU PAGE*/
.menu_frame_image_2col{display: flex;align-items: flex-start;margin-bottom: 58px}
.menu_txt_block{display: block;margin-top: 10px}
.frame_3image{display: flex;gap: 46px;flex-wrap: wrap;justify-content: center;}
.frame_3image li{width: 330px}
.frame_3image .img{margin-bottom: 16px}
.frame_3image .title{font-size: 24px;margin-bottom: 10px;text-align: center;}
.menu_content_txt{margin-bottom: 22px}
.menu_frame_box_gap_sm{gap: 29px}
.menu_frame_box_gap_center{align-items: center;}
.menu_frame_col_price{display: flex;align-items: center;margin-bottom: 35px;flex-wrap: wrap;}
.menu_frame_col_price_top{align-items: flex-start;}
.col_price_full{width: 100%;flex: 100%;text-align: right;margin-top: 10px}
.col_price_label{font-size: 24px;margin-right: 47px;width: 72px;flex-shrink: 0;line-height: 1}
.col_price_label_big{width: 220px}
.col_price_label_auto{width:auto}
.col_price_txt{font-size: 16px;margin-right: 47px;width: 272px;flex-shrink: 0;padding-top: 8px}
.menu_frame_col_price:last-child{margin-bottom: 0}
.menu_frame_col_price li:not(.col_price_txt):has(.menu_price){margin-right: -20px}
.menu_frame_col_price_txt{font-size: 16px;margin-bottom: 11px}
.menu_frame_col_price_txt:last-child,
.menu_frame_col_price_txt02{margin-bottom: 0}
.menu_frame_col_price_txt02{font-size: var(--mfont-size);}
.menu_frame_col_price .menu_price{margin-right: 0}
.menu_frame_box02,
.menu_frame_box03{margin-bottom: 63px}
.menu_frame_box04{margin-bottom: 40px}
.menu_frame_col_price02{margin-bottom: 55px}
.col_price_txt_big{width: 430px}
.col_price_txt_big02{width: 470px}
.col_price_txt_list{margin-right: 160px}
.col_price_txt_auto{width:auto}
.col_price_label_md{width: 120px}
.frame_3col{display: flex;justify-content: space-between;}
.frame_3col li{border: 2px solid #b2901a;padding: 2px;}
.frame_3col_ttl{font-size: 20px;font-weight: 500;color: #fff;background: #383325;text-align: center;position: relative;margin-bottom: 2px;padding: 5px 0}
.frame_3col_ttl::before{content: '';position: absolute;width: 17px;height: 17px;left: 2px;top: 2px;background: url(../images/frame_3col_ttl_ic01.jpg) center /cover no-repeat;}
.frame_3col_ttl::after{content: '';position: absolute;width: 17px;height: 17px;right: 2px;top: 2px;background: url(../images/frame_3col_ttl_ic02.jpg) center /cover no-repeat;}
.frame_3col_ttl span{display: block;}
.frame_3col_ttl span::before{content: '';position: absolute;width: 17px;height: 17px;right: 2px;bottom: 2px;background: url(../images/frame_3col_ttl_ic03.jpg) center /cover no-repeat;}
.frame_3col_ttl span::after{content: '';position: absolute;width: 17px;height: 17px;left: 2px;bottom: 2px;background: url(../images/frame_3col_ttl_ic04.jpg) center /cover no-repeat;}
.frame_3col_txt{margin-bottom: 17px;position: relative;}
.frame_3col_txt::before{content: '';position: absolute;width: calc(100% + 4px);left: -2px;top: 0;border-top: 1px solid #d4b987;}
.frame_3col_ttl_flex_center{display: flex;justify-content: center;align-items: center;}

.menu_frame_3col{margin-bottom: 28px}
.menu_frame_3col li{width: 325px;position: relative;}
.menu_frame_3col .frame_3col_ttl{font-weight: 700;}
.menu_frame_3col .frame_3col_txt{padding: 26px 50px;font-size: 16px;line-height: 2.2em}
.menu_frame_3col .frame_3col_price{padding: 0 0 15px;text-align: center;}
.menu_frame_3col .menu_price{margin-right: 0}
.menu_frame_mb01{margin-bottom: 90px}
/*menu frame 02*/
#menu .container{max-width: 1276px}
.frame_3col_02 li::before{content: '';position: absolute;width: 100%;height: 31px;left: 0;top: 0;background: url(../images/frame_3col_ttl_ic05.png) center /cover no-repeat;}
.frame_3col_02 .frame_3col_ttl{background: transparent;color: #000;padding: 0 15px;}
.frame_3col_02 .frame_3col_ttl span{border-bottom: 2px solid #d4b987;}
.frame_3col_02 li{padding-top: 39px}
.frame_3col_02 .frame_3col_txt::before,
.frame_3col_02 .frame_3col_ttl::before,
.frame_3col_02 .frame_3col_ttl::after,
.frame_3col_02 .frame_3col_ttl span::before,
.frame_3col_02 .frame_3col_ttl span::after{display: none;}
.frame_3col_ttl_02{line-height: 1.5em;text-align: left;}
.frame_3col_ttl_height{height: 72px;}
.menu_frame .menu_frame_l .sm{font-size: 48px}
/*end*/
.frame_2col{display: flex;gap: 30px;margin-bottom: 17px}
.frame_2colmb0{margin-bottom: 0}
.col_box{width: 50%;flex-shrink: 0}
.frame_2col_ttl{font-size: 36px;margin-bottom: 30px}
.frame_2col_txt_list{display: flex;background: #f7f7f7;padding: 7px 18px 9px;margin-bottom: 10px;align-items: center;}
.frame_2col_txt_list_mb{margin-bottom: 29px}
.frame_2col_txt_list:last-child{margin-bottom: 0}

.frame_2col_txt_list .txt01{width: 260px;flex-shrink: 0;margin-right: 30px;line-height: 1.5em}
.frame_2col_txt_list .txt01.sm{font-size: 16px}
.frame_2col_txt_list .txt02{margin-right: 30px;font-size: 16px}
.frame_2col_txt_list01 .txt01{width: 170px}
.frame_2col_txt_list02 .txt01{width: 280px}
.frame_2col_txt_list .txt03{font-size: 16px}
.frame_2col_txt_list .txt03 .big{font-size: 24px}
.frame_2col_txt_list_line-heigth .txt01,
.frame_2col_txt_list_line-heigth .txt02,
.frame_2col_txt_list_line-heigth .txt03{line-height: 3em}
.frame_2col_txt_list_box02{margin-bottom: 11px}
.txt02_relative{position: relative;top: 4px}
.menu_nation_price{font-size: 24px;margin-right: 5px}
.frame_menu_nation{display: flex;align-items: flex-start;margin-bottom: 80px}
.frame_menu_nation02{margin-bottom: 20px}
.frame_menu_nation_03{margin-bottom: 10px}
.frame_menu_nation_04{margin-bottom: 28px}
.frame_menu_nation:last-child{margin-bottom: 0}
.frame_menu_nation.mb0{margin-bottom: 0}
.menu_nation_ttl{font-size: 36px;margin-bottom: 0;line-height: 1em;width: 180px;flex-shrink: 0;margin-right: 170px}
.menu_nation_ttl02{width: 220px;margin-right: 130px}
.menu_nation_ttl_line-height{line-height: 1.3em}
.frame_menu_nation_wrap{flex-wrap: wrap;}
.menu_nation_container{flex: 1}
.menu_nation_content{display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 10px;background: #f7f7f7;padding: 0 54px}
.menu_nation_content:last-child{margin-bottom: 0}
.menu_nation_content.mb_cus{margin-bottom: 50px}
.menu_nation_content li{position: relative;margin-right: -5px;font-size: 18px;width: 355px;flex-shrink: 0;line-height: 2.8em}
.menu_nation_content .menu_nation_content_line-height{line-height: 2em;padding: 13px 0}
.menu_nation_content_long_txt li{width: 400px}
.menu_nation_content_long_txt02 li{width: 440px}
.menu_nation_content li:last-child{margin-right: 0}
.menu_nation_content li .ic_nation{position: absolute;top: -4px;left: -173px}
.menu_nation_content .txt_sm{margin-right: 20px}
.menu_nation_content .menu_nation_price_box{text-align: right;width: 210px;flex-shrink: 0;position: relative;}
.menu_nation_content .menu_nation_year{margin-left: 26px;line-height: 3em}
.menu_nation_content_short_txt li{width: 200px}
.menu_nation_content_short_txt .menu_nation_price_box{width: 340px}
.menu_nation_year_pos{position: absolute;right: -30px;top: 0}
.menu_nation_content .line_height{line-height: 3.2em}
.menu_nation_year_pos02{right: -50px}
.menu_nation_txt_width{display: inline-block;width: 320px}
.menu_nation_content02{padding: 11px 54px 13px}
.menu_nation_content02 .menu_nation_ttl_year{line-height: 2em;}
.menu_nation_content02 .menu_nation_year{align-self: flex-end;line-height: 2em;}
.menu_nation_content03{margin-bottom: 20px}
.menu_nation_content .txt_sm02{margin-right: 18px}
.menu_nation_price_box_align_bot{align-self: flex-end;}
.menu_nation_content li .ic_nation_txt{line-height: 1em;display: inline-block;padding: 8px 12px;border: 1px solid #e4e4e4;top: 6px;left: -266px}
.menu_nation_content li .ic_nation_txt_short{width: 42px;position: initial;margin-right: 36px;margin-left: 21px;font-size: 16px;}
.menu_nation_price_before{position: absolute;left: -18px;font-size: 16px}
.menu_nation_ttl_wrap{flex-wrap: wrap;}
.menu_nation_ttl_full{width: 100%}
.menu_nation_ttl_short{width: 100px;margin-right: 60px}
.anchor_list{display: flex;justify-content: flex-end;gap: 20px;flex-wrap: wrap;}
.anchor_btn a{width: 235px;height: 64px;display: flex;align-items: center;justify-content: center;text-align: center;color: #fff;background: var(--scolor);border: 1px solid var(--scolor);}
.anchor_btn a:hover{background: #fff;color: var(--scolor);}
.menu_nation_content .menu_nation_ttl_year{display: flex;justify-content: space-between;width: calc(100% - 230px);}
.menu_nation_content .menu_nation_ttl_year02{width: calc(100% - 200px);}



/*================== Responsive style ==================*/

@media screen and (min-width: 1101px){
.menu_frame_relative{position: relative;top: -47px}
.menu_frame_relative02{top: -56px}
.under main .frame_type_info ul.frame_type_info_first{margin-bottom: -6px}
.under main .pdb0_pc{padding-bottom: 0}
.menu_frame_l_en{margin-bottom: 20px}
.menu_frame_l_en_sm{margin-bottom: 0}
.menu_frame_box_img_big{gap: 150px}
.menu_frame_box_full{width: 100%;max-width: 830px}
.menu_frame_box_full_long_txt{max-width: 1010px}
.col_price_txt_auto{white-space:nowrap;margin-right:37px}
}
@media screen and (max-width: 1920px){
    .u_header_bg img{height: 450px}
    .menu_frame .menu_frame_l .sm{font-size: 39px}
    .menu_frame_l{font-size: 54px}
}
@media screen and (min-width: 768px) and (max-width: 1100px){
  .under main .frame_buy_box{gap: 40px}
  .under main .type_2col li{width: 220px}
  .under main .type_2col .cus_long_txt_400{width: fit-content}
  .under main .buy_btn a{padding: 21px 95px;}
  .under main .frame_buy_btn_box{gap: 20px}
  .under main .type_2col ul{gap: 20px}
  .under main .banner_txt{padding: 40px 40px 60px}
  .menu_txt{padding-right: 0}
}
@media screen and (min-width: 768px) and (max-width: 841px){
  .under main .image_r{width: 50%;margin-left: 40px}
  .under main .image_l{width: 50%;margin-right: 40px}
  .under main .about_frame_img_mb{margin-bottom: 300px}
  .under main .banner_box{width: 70%}
  .under main .frame_buy_btn_box02 .link{padding-top: 0}

}
@media screen and (max-width: 1100px) {
  .under #content{margin-bottom: 80px}
  .logo_sp{display: block;}
  .sec_pdb_100,
  .pdb_100_pc{padding-bottom: 40px}
  section{padding: 40px 0 0}
  section.bg_yellow,
  section.bg_gray{padding: 40px 0;margin-top: 40px}
  .under #logo{width: 113px;margin: 10px 0}
  .under .h_inner{justify-content: flex-start;align-items: flex-start;}
  .under .h_left{display: flex;justify-content: space-between;align-items: flex-start;padding-top: 12px;padding-right: 55px;width: 100%}
  #english .h_left{padding: 0;align-items: center;justify-content: center;height: 100%;flex-direction: column;}
  #english .h_inner{justify-content: center;align-items: center;}
  #english #logo{width: 76px;margin: 0 auto 15px}
  .u_header_bg .bnr_no_img{height: 80px}
  .u_header_bg img{height: 200px;width: 100%}
  .h_lang{gap: 10px;}
  .h_lang a{font-size: 14px}
  .under main .frame_image_img_r{position: initial;margin: 0 -40px 30px 20px;display: flex;justify-content: flex-end;}
  .under main .frame_image_img_l{position: initial;margin: 0 20px 30px -40px;display: flex;justify-content: flex-start;}
  .under main .frame_image_content .txt{margin-bottom: 30px}
  .under main .frame_image .box_content{width: 100%}
  .under main .signature{position: initial;font-size: 32px;text-align: right;}
  .under main .first_frame_image_mb{margin-bottom: 0}
  .greeting_txt{margin-left: 15px}
  .history_txt{margin-left: 2px}
  .menu_frame_col_price{flex-wrap: wrap;gap: 35px}
  .col_price_label{margin-right: 15px}
  .col_price_txt{margin-right: 10px;}
  .menu_frame_box .box_l{max-width: 40%;flex-shrink: 0}
  .menu_frame_box_gap_sm{gap: 30px}
  .menu_frame_box02{margin-bottom: 35px}
  .frame_3col{flex-wrap: wrap;justify-content: center;gap: 40px}
  .frame_2col{flex-direction: column;}
  .frame_3col_ttl{line-height: 1.3em;font-size: 20px}
  .menu_frame_3col .frame_3col_txt{padding: 20px}
  .frame_3col_ttl span{padding: 5px 0}
  .col_box{width: 100%}
  .frame_menu_nation{flex-direction: column;gap: 30px;margin-bottom: 20px}
  .menu_nation_ttl{width: 100%;margin: 0;line-height: 1.3em;font-size: 28px}
  .menu_nation_content_width li{width: 60%}
  .under main .archive_list{width: 100%;max-width: 580px;margin: 0 auto;display: grid;grid-template-columns: repeat(2, 1fr);gap: 20px;}
  .under main .post_container{gap: 40px}
  .archive_list .s02_item{width: initial;max-width: 280px}
  .company_ttl_h_02 .ja{font-size: 27px}
  .contact_form_box::after{left: -20px}
  .contact_form_box::before{left: -40px}
  .contact_form_box_ic_bottom::before{right: -40px}
  .contact_form_box_ic_bottom::after{right: -20px}
  .order_ttl_h_04{margin-bottom: 30px}
  .s07_tel_en {font-size: 25px}
  .s07_txt_en{font-size: 21px;padding-top: 8px}
  .frame_buy_btn_box_pad_l{padding-left: 0}
  .under main .sec_pad_frame01{padding-top: 40px}
  .under main .frame01{padding: 20px 30px}
  .under main .frame01 p{font-size: 31px;line-height: 1.5em}
  .menu_frame_col_price li:has(.menu_price){margin-right: 0}
  .menu_frame_image_2col{margin-bottom: 30px}
  .frame_3col_ttl_height{height: auto;}
  .anchor_list{justify-content: center;}
  .anchor_btn a{width: 180px;height: 56px}
  .order_form_gray::before{max-width: calc(100% + 40px);}
  .w40_sp{width: 40%}
  .menu_frame_col_price li:not(.col_price_txt):has(.menu_price){margin-right: 0}
  .contact_form_box{padding-bottom: 40px}
  .contact_form_box_ic_bottom::before{bottom: 10px}
  .contact_form_box_ic_bottom::after{bottom: 0}
  .txt_mb_form{margin-bottom: 70px}
  .form__btn-box{margin-top: 20px}
  .under main .order_ttl_h_04{margin-bottom: 15px}
  #order .contact_form_box::before,
  #order .contact_form_box::after,
  #order .contact_form_box_ic_bottom::before,
  #order .contact_form_box_ic_bottom::after{display: none;}
  .contact_form .quantity{padding-bottom: 15px}
  .contact_form .quantity .error{bottom: -18px}
  .under main .frame_image_content_flex-sp{display: flex;flex-direction: column-reverse;}
  .under main .frame_image_content_flex-sp .frame_image_img_r{margin-top: 30px}
  .frame_buy_box_sp .frame_buy_img{display: none;}
  .under main .frame_buy_box_sp .buy_img{width: 40%;margin: 0 10px 10px 0;float: left;}
  .under main .frame_buy_box_sp .price_zone_02{margin-bottom: 80px}
  .room_map_sec{padding-bottom: 0}
  section.room_yellow_sec{margin-top: 0}
  #english .menu_frame_box{gap: 40px}


}
@media screen and (max-width: 767px) {
  .under main h3{font-size: 26px}
  .under main h3.sm{font-size: 24px}
  .under main h4{font-size: 23px;}
  .under main .image_r,
  .under main .image_l{float:none;display:inline-block;width:100%;text-align:center;margin:0 auto 30px !important}
  .under main .image_l.image_full_m_l{margin-left: -20px !important}
  .under main .image_r.image_full_m_r{margin-right: -20px !important}
  .under main .frame_timeline dt{font-size: 24px;width: 80px}
  .under main .frame_timeline dl{gap:20px}
  .under main .u_ttl_vertical .ja{font-size: 30px}
  .under main .ttl_en{margin-bottom: 15px}
  .under main .frame_ver_ttl{gap: 20px}
  .under main .frame_list_image{gap: 10px}
  .under main .frame_type_info ul{flex-direction: column;margin-bottom: 20px}
  .under main .frame_type_info ul .big{line-height: 1.2em;margin-right: 0;font-size: 26px}
  .under main .frame_type_info ul li{margin-top: 5px;margin-right: 0}
  .under main .frame_image_content_mb{margin-bottom: 40px}

  /*FAQ*/
.under main .qa_ttl{font-size: 24px;padding-top: 1px;margin-right: 10px}
.under main .faq_box01 dl dt{padding: 15px 40px 15px 15px}
.under main .faq_box01 dl dd{padding: 15px 15px 15px 15px}
.under main .faq_box01 dl>dt::before{height: 20px;right: 25px;top: calc(50% - 10px)}
.under main .faq_box01 dl>dt::after{width: 20px;}
.under main dl dt p{font-size: 16px}

/* STEP LIST */
.under main .list_step dl{margin-bottom: 60px}
.under main .list_step dl::before{border-width: 20px 40px 0 40px;left: calc(50% - 40px);bottom: -40px;}
.under main .list_step dl dt p{font-size: 16px}
.under main .list_step dl dt .step_num{font-size: 18px;padding: 10px}
.under main .list_step dl dt{align-items: initial;}
.under main .list_step dl dd{overflow: hidden;}
.under main .list_step dl dt p{display: flex;align-items: center;}

/*============ TABLE ============ */
.under main .w40_sp{width: 40%}
.under main table{margin-bottom:30px;border: 0}
.under main table td,
.under main table th{padding:15px 10px}
.under main table td{line-height: 2em}
.under main table.tb_block tr{display:flex;flex-direction:column}
.under main table.tb_block td{border-top-width: 0;border-bottom-width: 0}
.under main table.tb_block td+td{border-top-width: 1px}

.under main table.tb_block th,
.under main table.tb_block td{width: 100%;}
.under main table.tb_block tr:last-child td:last-child{border-bottom-width: 1px;}

/* TABLE SCROLL */
.under main .tb_scroll{overflow:scroll;}
.under main .tb_scroll:not(:last-child){margin-bottom: 30px;}
.under main .tb_scroll table{width: 800px;}
.under main .tb_note{margin-bottom: 10px;color: #999;}

/* BUY */
.under main .frame_buy_box{flex-direction: column;gap: 30px}
.under main .buy_img{width: 100%;max-width: 330px;margin-left: auto;margin-right: auto;text-align: center;}
.under main .buy_txt01{margin-bottom: 30px}
.under main .buy_txt01_mb{margin-bottom: 15px}
.under main .type_2col ul{flex-wrap: wrap;justify-content: space-between;}
.under main .type_2col li,
.under main .type_2col .cus_long_txt_400{width: fit-content;max-width: 70%}
.under main .type_2col li:last-child{width: fit-content}
.under main .type_2col li.col_2{margin-top: 0}
.under main .price_zone .price{font-size: 32px}
.under main .price_zone .price_noted{margin-right: 5px}
.under main .price_zone .price_tag{margin-left: 0;display: inline-block;}
.under main .frame_buy_btn_box{align-items: flex-start;gap: 0;justify-content: space-between;}
.under main .frame_buy_btn_box .buy_btn{order: 2;margin-left: 20px}
.under main .frame_buy_btn_box .link:last-child{order: 3;position: relative;top: -25px;width: 100%}
.under main .frame_buy_btn_box02 .buy_btn_box_txt{font-size: 12px}
.under main .frame_buy_btn_box02 .link:last-child{top: -50px}
.under main .frame_buy_btn_box02 .buy_btn_box{order: 2;}
.under main .buy_btn a{padding: 10px 55px;display: inline-block;font-size: 12px}
.under main .frame_buy_btn_box .link a{font-size: 12px}
.under main .banner_box{width: 70%}
.under main .banner_txt .txt_vertical{font-size: 40px}
.under main .banner_txt .bnr_txt_sm{font-size: 20px}
.under main .buy_banner{background-size: 610px;mask-border-outset: 40px}
.under main .banner_txt{padding: 30px 30px 60px}
.under main .banner_box::before{height: 100%}
.under main .frame_buy_btn_box02 .link{padding-top: 0}
.under main .frame_buy_btn_box02 .buy_btn{margin-left: 0}

/*Room*/
.under main .room_bg_yellow{padding-bottom: 100px;margin-top: 80px;padding-top: 40px}
.under main .frame_list_image .txt{font-size: 26px}
.under main .room_sec_pdb{padding-bottom: 100px;padding-top: 40px}
.under main .frame_ver_ttl .u_ttl_vertical02,
.under main .frame_ver_ttl .u_ttl_vertical{margin-top: -80px}
.under main .room_frame_image{margin-bottom: 40px}
.under main section.room_bg_gray{margin-top: 0}

/*Order*/
.contact_form dl{flex-direction: column;margin-top: 0;margin-bottom: 30px;gap: 10px}
.contact_form dt,
.contact_form dd{width: 100%}
.contact_form .f-control{padding: 14px}
.contact_form_mb{margin-bottom: 80px}
.contact_form textarea.f-control{height: 180px}
.under main .big_tel{font-size: 23px;margin-left: 20px}
.under main .f_policy_box{padding: 20px}


/*etop*/
.etop_sec01{background: url(../images/s01_bg.jpg) center /cover no-repeat;}
.etop_sec01 .s01_bg{display: none;}
.s01_container{position: relative;}
.menu_frame_l{width: 40px;font-size: 30px}
.menu_frame_content{margin-top: 35px;width: calc(50% - 50px);}
.menu_frame_l_en{line-height: 1.1;font-size: 38px;margin-bottom: 20px}
.menu_frame_box{gap: 20px;flex-direction: column;}
.menu_txt .txt{margin-right: 15px}
.menu_price{font-size: 21px}
.menu_frame{gap: 10px;margin-bottom: 25px}
.menu_txt{flex-direction: column;align-items: flex-start;margin-bottom: 15px;padding-right: 0}
.menu_frame_l_en_sm{font-size: 36px}
.etop_frame_image{margin-bottom: 40px}
.s07_en_content{flex-direction: column;align-items: center;gap: 15px}
.s07_txt_en{padding-top: 0}
.sec07_en{padding: 40px 0}
.sec07_en::before{height: 25px}
.menu_frame_box_full{margin-top: 20px}

/*MENU PAGE*/
.frame_3image li{width: 100%;max-width: 330px}
.menu_frame_box .box_l{max-width: 100%;}
.col_price_label{width: auto;margin: 0}
.menu_frame_col_price{flex-direction: column;align-items: flex-start;gap: 15px;}
.col_price_txt{width: 100%;line-height: 1.5em}
.menu_frame_col_price_txt{margin-bottom: 5px}
.scroll_container{overflow-x: auto;overflow-y: hidden;width: 100%;-webkit-overflow-scrolling: touch;}
.scroll_content{width: 1082px;}
.scroll_content.sm{width: 768px}
.scroll_content_sm{width: 560px}
.scroll_content .frame_2col{flex-direction: row;}
.scroll_content .col_box{width: 50%}
.menu_nation_content{padding-left: 60px}
.col_price_txt_list{margin-right: 0}
.menu_nation_content li .ic_nation{left: -140px}
.menu_nation_container:has(.ic_nation img){margin-left: 80px}
.menu_nation_container:has(.ic_nation_txt){margin-left: 140px}
.menu_nation_container:has(.ic_nation_txt_short){margin-left: 0}
.menu_nation_content li .ic_nation_txt:not(.ic_nation_txt_short){font-size: 14px;left: -200px}
.menu_nation_price_before{left: 0}
.menu_nation_content_short_txt .menu_nation_price_box{width: 300px}
.menu_nation_content_short_txt li{width: 240px}
.menu_nation_content .menu_nation_ttl_year{font-size: 16px}
.menu_nation_price{font-size: 22px}
.menu_frame_l .menu_frame_l_tag{font-size: 22px}

/*NEWS*/
.under main .post_container{flex-direction: column;gap: 60px}
.under main .container_l{width: 100%}
.under main .list_cate_btn{display: flex;flex-wrap: wrap;gap: 10px;}
.under main .cate_btn{margin-bottom: 0}
.under main .post_detail_info{margin-bottom: 10px}
.under main .list_anchor_single {gap: 10px }
.under main .btn_single a {padding: 8px 9px; font-size: 16px; line-height: 1em }

.under main .frame_buy_box_sp .buy_img{width: 100%;margin: 0 auto 15px;float: initial;}
.frame_buy_content .buy_txt_sm{margin-bottom: 30px}

}
@media screen and (max-width: 479px) {
  .under main .banner_box{width: 80%}
  .ttl .en.big{font-size: 40px}
  .under main .frame_buy_box_sp .price_zone_02{margin-bottom: 20px}
  .under main .archive_list{grid-template-columns: repeat(1, 1fr);width: 100%;max-width: 280px;margin: 0 auto}

}
@media screen and (max-width: 360px) {}
@media screen and (max-width: 320px) {
    .menu_price{font-size: 19px}
    .under main h3.sm{font-size: 20px}
    .under main h3{font-size: 23px}
    .under main .price_zone .price{font-size: 24px}
    .under main .price_zone .price_tag{font-size: 12px}
    .under main .banner_txt{padding-left: 10px}
    .under main .price_zone .price_noted{font-size: 14px;margin-right: 3px}
    .under main .type_2col li{font-size: 14px}
    .company_ttl_h_02 .ja{font-size: 23px}
    .s07_tel_en{font-size: 23px}
    .s07_txt_en02{font-size: 14px}
    .frame_3col_ttl{font-size: 18px}
    .under main .buy_btn a{padding: 10px 28px}
    .under main .frame_buy_btn_box02 .buy_btn_box_txt{font-size: 2.5vw}
    .under main .frame_buy_btn_box02 .link:last-child{top: -43px}
}
/*================== Responsive style ==================*/