@charset "utf-8";

html { font-size: 9.0px; }

@media screen and (min-width: 1601px) {
    html { font-size: 10.5px; }
}

@media screen and (max-width: 1180px) {
    html { font-size: 8.5px; }
}

@media screen and (max-width: 900px) {
    html { font-size: 10.5px; }
}

@media screen and (max-width: 600px) {
    html { font-size: 10.0px; }
}

.global_nav li { font-size: 2.0rem; margin-left: 3.38%; }
.lang_nav { font-size: 2.0rem; margin-left: 5.65%; }
.lang_nav span { border-bottom: 1px solid #000; }
.header_reserve { font-size: 2.0rem; line-height: 1; color: #fff; background: #000; width: 21.3rem; padding: 1.0rem 0.5rem 1.5rem; margin-left: 1.66%; text-align: center; }

.fix_btn { display: none; }

@media screen and (max-width: 1280px) {  
    .global_nav li { font-size: 1.4rem; margin-left: 3.38%; }
    .lang_nav { font-size: 1.4rem; margin-left: 5.65%; }
    .header_reserve { font-size: 1.4rem; line-height: 1; color: #fff; background: #000; width: 21.3rem; padding: 1.0rem 0.5rem 1.5rem; margin-left: 1.66%; text-align: center; }
}
@media screen and (max-width: 900px) {
    html { overflow-x: hidden; }
    .header_reserve { display: none; }
    .lang_nav { font-size: 2.0rem; margin-right: 5.7rem; }

    .fix_btn { display: block; }
    .fix_btn a { display: block; padding: 1.0rem 0; background: #fff; font-size: 1.3rem; color: #000; text-align: center; width: 93.33%; position: fixed; bottom: 0; left: 50%; transform:translateX(-50%); z-index: 10; }
}

.anniversary_fv { position: relative; background: #000; }
.anniversary_fv * { color: #fff; }
.anniversary_fv .ph img { width: 100%; height: 116.8rem; position: absolute; object-fit: cover; }
.anniversary_fv .txt { position: relative; }
.anniversary_fv .en { font-size: 2.0rem; letter-spacing: 0.1em; text-align: center; padding-top: 3.5rem; }
.anniversary_fv .history { display: grid; grid-template-columns: 6em 18em; justify-content: center; margin-top: 3.5rem; }
.anniversary_fv .history dt,
.anniversary_fv .history dd { font-size: 1.6rem; line-height: 1.0; }
.anniversary_fv .history dd { padding: 0 0 1.5em 1em; border-left: 1px solid #fff; }
.anniversary_fv .copy01,
.anniversary_fv .copy02 { font-size: 5.7vh; writing-mode: vertical-rl; text-orientation: mixed; font-variant-east-asian: full-width;font-feature-settings: "pkna" 0; position: absolute; top: 10.0rem; white-space: nowrap; line-height: 1.5; letter-spacing: 0.2em; }
.anniversary_fv .copy01 { right: 6.06%; }
.anniversary_fv .copy02 { left: 6.06%; }
.anniversary_fv .year01 { margin-top: 50.0rem; text-align: center; }
.anniversary_fv .year02 { font-size: 1.6rem; text-align: center; }
.anniversary_fv .date { font-size: 5.0rem; line-height: 1; text-align: center; }
.anniversary_fv .date span { font-size: 8.5rem; }
.anniversary_fv .time { font-size: 3.5rem; text-align: center; }
.anniversary_fv .place { font-size: 3.0rem; line-height: 1.5; text-align: center; }
.anniversary_fv .reservation { font-size: 3.0rem; line-height: 1.5; text-align: center; margin-top: 2.0rem; }
.anniversary_fv .reservation small { font-size: 2.2rem; }
.anniversary_fv .btn_list { width: 42.27%; min-width: 60rem; mac-width: 83.7rem; margin: 6.0rem auto 0; display: flex; justify-content: space-between; }
.anniversary_fv .btn_list a { width: 47.78%; padding: 1.0rem 0; border: 1px solid #fff; font-size: 2.0rem; line-height: 1.5; text-align: center; }
.anniversary_fv .btn_list .yoyaku { color: #000; background: #fff; }
.anniversary_fv .logo_bunka { margin-top: 9.5rem; text-align: center; }

.lp_common_hd { font-size: 3.5rem; line-height: 1.5; text-align: center; }
.lp_common_en { font-size: 2.5rem; text-align: center; }

.anniversary_about { background: #000; padding: 20.0rem 0 49.0rem;}
.anniversary_about > .inner { width: 85.85%; margin: 0 auto; }
.anniversary_about * { color: #fff; }
.anniversary_about .read { margin-top: 6.0rem; font-size: 2.0rem; text-align: center; }
.anniversary_about .ph_list { display: flex; justify-content: space-between; margin: 19.0rem auto 0; }
.anniversary_about .ph_list_item { width: 32.70%; }
.anniversary_about .ph_list_item .hd { font-size: 2.5rem; margin-top: 1.5rem; }
.anniversary_about .ph_list_item p { font-size: 1.8rem; margin-top: 1.0rem; }
.anniversary_about .history { display: flex; margin-top: 14.0rem; }
.anniversary_about .history_item { width: 25%; position: relative; }
.anniversary_about .history_item .year { display: flex; align-items: center; font-size: 3.0rem; }
.anniversary_about .history_item .year:before ,
.anniversary_about .history_item .year:after { content: ""; display: flex; align-items: center; width: 100%; height: 1px; background: #fff; }
.anniversary_about .history_item .year:before { margin-right: 1em; }
.anniversary_about .history_item .year:after { margin-left: 1em; }
.anniversary_about .history_item .hd { position: absolute; left: 50%; bottom: 1.0rem; transform:translate(-50%,100%); font-size: 2.0rem;  white-space: nowrap;}
.anniversary_about .message { display: flex; flex-direction: row-reverse; justify-content: flex-end; margin-top: 19.0rem; position: relative; }
.anniversary_about .message .ph { width: 49.64%; }
.anniversary_about .message .txt { width: 38.05%; margin-left: 5.29%; position: relative; z-index: 2; padding-bottom: 15em; }
.anniversary_about .message .ph01 .notes { font-size: 1.3rem; }
.anniversary_about .message .ph02 { width: 29.35%; position: absolute; left: 45%; bottom: 10%;  transform:translateY(100%); }
.anniversary_about .message .ph03 { width: 21.70%; position: absolute; left: 75%; bottom: -10%; }
.anniversary_about .message .hd { font-size: 2.5rem; line-height: 1.5; margin-bottom: 2.5rem; }
.anniversary_about .message p { font-size: 1.8rem; }

.anniversary_menu { background: #F0F1EF; padding: 19.0rem 0; }
.anniversary_menu > .inner { width: 85.85%; margin: 0 auto; }
.anniversary_menu .read { margin-top: 6.0rem; font-size: 2.0rem; text-align: center; }

.menu_list { margin-bottom: 24.0rem; }
.menu_list_item { display: flex; justify-content: space-between; margin-top: 13.8rem; }
.menu_list_item:nth-child(2n) { flex-direction: row-reverse; }
.menu_list_item .ph { width: 50%; }
.menu_list_item .txt { width: 41.76%; position: relative; }
.menu_list_item .txt:before { content: ""; display: block; width: 70%; aspect-ratio: 1 / 1; background: url("../img/lp_menu_img.svg") no-repeat center/ contain; position: absolute; top: -12.5rem; }
.menu_list_item:nth-child(2n + 1) .txt:before { right: -22%; }
.menu_list_item:nth-child(2n) .txt:before { left: -22%; }
.menu_list_item:nth-child(2n + 1) .txt p { margin-right: 7em; position: absolute; bottom: 0; }
.menu_list_item:nth-child(2n) .txt p { margin-left: 12em; position: absolute; bottom: 0; }
.menu_list_item .txt .name { font-size: 3.2rem; line-height: 1.5; writing-mode: vertical-rl; text-orientation: mixed; font-variant-east-asian: full-width;font-feature-settings: "pkna" 0; }
.menu_list_item:nth-child(2n + 1) .txt .name { position: absolute; right: 0; white-space: nowrap; }
.menu_list_item:nth-child(2n + 1) .txt .name .num { position: absolute; left: -2.0rem; transform:translateX(-100%); writing-mode: lr; line-height: 0.8; }
.menu_list_item:nth-child(2n) .txt .name { position: absolute; left: 0; white-space: nowrap; }
.menu_list_item:nth-child(2n) .txt .name .num { position: absolute; left: -2.0rem; transform:translateX(-100%); writing-mode: lr; line-height: 0.8; }

.about_chef { display: flex; justify-content: space-between; width: 50.50%; min-width: 70.0rem; margin: 5.0rem auto 0; padding: 10.0rem 0; border-top: 1px solid #ACACAD; border-bottom: 1px solid #ACACAD; }
.about_chef .ph { width: 25.8%; }
.about_chef .txt { width: 66.5%; }
.about_chef .txt .name { margin-bottom: 7.0rem; font-size: 3.0rem; line-height: 1.2; }
.about_chef .txt .name small { font-size: 2.0rem; }

.anniversary_flow { background: #000; padding-bottom: 17.0rem; }
.anniversary_flow * { color: #fff; }
.anniversary_flow .ph { margin-bottom: 17.0rem; }
.anniversary_flow .ph img { width: 100%; }
.flow_list { margin: 10.0rem 0 0 10.0rem; }
.flow_list_item { display: flex; justify-content: center; }
.flow_list_item .time { width: 8.0rem; font-size: 2.0rem; line-height: 1.5; }
.flow_list_item .txt { width: 30.0rem; padding: 0 0 5.0rem 4.0rem; position: relative; }
.flow_list_item .txt:before { content: ""; display: block; width: 1.2rem; height: 1.2rem; border-radius: 50%; background: #fff; position: absolute; left: 0; top: 1.0rem }
.flow_list_item .txt:after { content: ""; display: block; width: 1px; height: calc(100% - 0.6rem); background: #fff; position: absolute; left: 0.6rem; top: 1.6rem;] }
.flow_list_item .txt .hd { font-size: 2.2rem; line-height: 1.5; }
.flow_list_item .txt .copy { font-size: 1.6rem; line-height: 1.5; margin-top: 1.0rem; }

.anniversary_faq > .inner { width: 60.60%; margin: 21.0rem auto 22.0rem;}
.faq_list { margin-top: 9.0rem; }

.anniversary_news,
.anniversary_gallery,
.anniversary_movie { width: 85.85%; margin: 0 auto; padding: 15.0rem 0 20.0rem; border-top: 1px solid #ACACAD;}

.anniversary_news > .inner { width: 70.58%; margin: 0 auto; }
.gallery_slide { margin-top: 6.0rem; overflow: hidden; }

.movie_ph { width: 58.82%; margin: 6.0rem auto 0; position: relative; }
.movie_ph .ico { width: 6.5rem; position: absolute; left: 50%; top: 50%; transform:translate(-50%,-50%); }

.anniversary_reservation { display: flex; background: #000; margin: 0 0 12.0rem; }
.anniversary_reservation  * { color: #fff;}
.anniversary_reservation .ph { width: 43.33%; position: relative; }
.anniversary_reservation .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.anniversary_reservation .txt { width: 56.67%; padding: 6.0rem 5% 8.0rem 0; box-sizing: border-box; text-align: center; }
.anniversary_reservation .txt .hd { font-size: 3.5rem; }
.anniversary_reservation .txt .date { font-size: 2.5rem; display: flex; justify-content: center; margin: 5.0rem 0; }
.anniversary_reservation .txt .date dt { width: 4em; }
.anniversary_reservation .txt .date dd { text-align: left; }
.anniversary_reservation .btn a { display: block; max-width: 48.6rem; margin: 0 auto; padding: 1.0rem 0; background: #fff; font-size: 2.0rem; color: #000; text-align: center; }
.anniversary_reservation .copy { font-size: 2.0rem; margin-top: 3.0rem; }

.footer_bunka { display: flex; align-items: center; width: 85.86%; margin: 10.0rem auto 0; }
.footer_bunka .logo { width: 20.8rem; }
.footer_bunka .copy { font-size: 1.5rem; color: #fff; margin-left: 6.48rem; }


@media screen and (max-width: 900px) {  
.anniversary_fv { position: relative; background: #000; }
.anniversary_fv * { color: #fff; }
.anniversary_fv .ph img { width: 100%; height: 62.6rem; position: absolute; object-fit: cover; }
.anniversary_fv .txt { position: relative; }
    .anniversary_fv .en { font-size: 1.1rem; letter-spacing: 0.1em; text-align: center; padding-top: 1.0rem; white-space: nowrap; }
    .anniversary_fv .history { display: grid; grid-template-columns: 6em 18em; justify-content: flex-start; margin: 1.5rem 0 0 4.26%; }
    .anniversary_fv .history dt,
    .anniversary_fv .history dd { font-size: 1.0rem; line-height: 1.0; }
.anniversary_fv .history dd { padding: 0 0 1.5em 1em; border-left: 1px solid #fff; }
    .anniversary_fv .copy { position: absolute; top: 5.0rem; right: 17.06%; writing-mode: vertical-rl; text-orientation: mixed; font-variant-east-asian: full-width; }
    .anniversary_fv .copy01,
    .anniversary_fv .copy02 { font-size: 1.9rem; writing-mode: vertical-rl; text-orientation: mixed; font-variant-east-asian: full-width;font-feature-settings: "pkna" 0; position: relative; top: auto; white-space: nowrap; line-height: 1.5; letter-spacing: 0.3em;}
    .anniversary_fv .copy01 { right: auto; }
    .anniversary_fv .copy02 { left: auto; }
    .anniversary_fv .year01 { width: 6.5rem; margin: 34.8rem auto 0; text-align: center; }
    .anniversary_fv .year02 { font-size: 1.0rem; text-align: center; }
    .anniversary_fv .date { font-size: 2.1rem; line-height: 1; text-align: center; }
    .anniversary_fv .date span { font-size: 3.7rem; }
    .anniversary_fv .time { font-size: 1.6rem; text-align: center; }
    .anniversary_fv .place { font-size: 1.5rem; line-height: 1.5; text-align: center; }
    .anniversary_fv .reservation { font-size: 1.8rem; line-height: 1.5; text-align: center; margin-top: 8.0rem; }
    .anniversary_fv .reservation small { font-size: 1.6rem; }
    .anniversary_fv .btn_list { width: 28.0rem; min-width: auto; mac-width: 83.7rem; margin: 2.5rem auto 0; display: flex; flex-direction: column; justify-content: space-between; }
    .anniversary_fv .btn_list a { width: 100%; padding: 1.0rem 0; margin-top: 2.2rem; border: 1px solid #fff; font-size: 1.3rem; line-height: 1.5; text-align: center; }
.anniversary_fv .btn_list .yoyaku { color: #000; background: #fff; }
    .anniversary_fv .logo_bunka { width: 13.5rem; margin: 3.4rem auto 0; text-align: center; }

    .lp_common_hd { font-size: 2.5rem; line-height: 1.5; text-align: center; }
    .lp_common_en { font-size: 1.4rem; text-align: center; }

    .anniversary_about { background: #000; padding: 10.0rem 0 ;}
    .anniversary_about > .inner { width: 88.26%; margin: 0 auto; }
.anniversary_about * { color: #fff; }
    .anniversary_about .read { margin-top: 5.0rem; font-size: 1.6rem; text-align: center; }
    .anniversary_about .ph_list { display: flex; flex-direction: column; justify-content: space-between; margin: 5.0rem auto 0; }
    .anniversary_about .ph_list_item { width: 100%; }
    .anniversary_about .ph_list_item + .ph_list_item { margin-top: 5.0rem; }
    .anniversary_about .ph_list_item .hd { font-size: 2.0rem; margin-top: 1.0rem; }
    .anniversary_about .ph_list_item p { font-size: 1.6rem; margin-top: 1.5rem; }
    .anniversary_about .history { display: block; margin-top: 5.0rem; }
    .anniversary_about .history_item { display: flex; width: 100%; margin-left: 9.23%; position: relative; }
    .anniversary_about .history_item .year { display: flex; align-items: center; font-size: 2.0rem; line-height: 1; }
    .anniversary_about .history_item .year:before,
    .anniversary_about .history_item .year:after { display: none;  }
    .anniversary_about .history_item .hd { position: relative; left: auto; bottom: auto; transform:translate(0%,0%); font-size: 1.6rem;  white-space: nowrap; margin-left: 2.0rem; padding-left: 2.0rem; border-left: 1px solid #fff; }
    .anniversary_about .message { display: flex; flex-direction: column; margin-top: 6.0rem; position: relative; }
    .anniversary_about .message .ph { width: 100%; margin-top: 3.0rem; }
    .anniversary_about .message .txt { width: 100%; margin-left: 0; position: relative; z-index: 2; padding-bottom: 0;}
    .anniversary_about .message .ph02 { width: 69.78%; margin-top: 35%; position: relative; left: -6.5%; bottom: auto;  transform:translateY(0%); }
    .anniversary_about .message .ph03 { width: 51.66%; position: absolute; left: 57%; bottom: auto; top: 69%; }
    .anniversary_about .message .ph02 img,
    .anniversary_about .message .ph03 img { width: 100%; }
    .anniversary_about .message .hd { font-size: 2.0rem; line-height: 1.5; margin-bottom: 1.5rem; }
    .anniversary_about .message p { font-size: 1.6rem; }

    .anniversary_menu { background: #F0F1EF; padding: 5.5rem 0 6.5rem; }
    .anniversary_menu > .inner { width: 88.26%; margin: 0 auto; }
.anniversary_menu .read { margin-top: 5.0rem; font-size: 1.6rem; text-align: center; }

    .menu_list { margin-bottom: 7.5rem; }
    .menu_list_item { display: flex; flex-direction: column-reverse; justify-content: space-between; margin-top: 9.5rem; }
    .menu_list_item:nth-child(2n) { flex-direction: column-reverse; }
    .menu_list_item .ph { width: 100%; position: relative; z-index: 2; }
    .menu_list_item .txt { width: 100%; height: 29.0rem; position: relative; }
.menu_list_item .txt:before { content: ""; display: block; width: 95.73%; aspect-ratio: 1 / 1; background: url("../img/lp_menu_img.svg") no-repeat center/ contain; position: absolute; top: -5.5rem; }
.menu_list_item:nth-child(2n + 1) .txt:before { right: -22%; }
.menu_list_item:nth-child(2n) .txt:before { left: -22%; }
    .menu_list_item:nth-child(2n + 1) .txt p { margin-right: 7em; position: absolute; bottom: 3.0rem; }
    .menu_list_item:nth-child(2n) .txt p { margin-left: 7em; position: absolute; bottom: 3.0rem; }
    .menu_list_item .txt .name { font-size: 2.4rem; line-height: 1.5; writing-mode: vertical-rl; text-orientation: mixed; font-variant-east-asian: full-width;font-feature-settings: "pkna" 0; }
    .menu_list_item .txt .name .num { font-size: 7.0rem; }
    .menu_list_item:nth-child(2n + 1) .txt .name { position: absolute; right: 0; }
    .menu_list_item:nth-child(2n + 1) .txt .name .num { position: absolute; left: -2.0rem; transform:translateX(-100%); writing-mode: lr; line-height: 0.5; }
    .menu_list_item:nth-child(2n) .txt .name { position: absolute; left: 0; }
    .menu_list_item:nth-child(2n) .txt .name .num { position: absolute; left: auto; right: -2.0rem; transform:translateX(100%); writing-mode: lr; line-height: 0.5; }

    .about_chef { display: flex; flex-direction: column; justify-content: center; width: 88.26%; min-width: auto; margin: 4.0rem auto 0; padding: 2.5rem 0; border-top: 1px solid #ACACAD; border-bottom: 1px solid #ACACAD; }
    .about_chef .ph { width: 44.1%; margin: 0 auto 4.0rem; }
    .about_chef .txt { width: 100%; }
    .about_chef .txt .name { margin-bottom: 3.0rem; font-size: 2.2rem; line-height: 1.2; text-align: center; }
    .about_chef .txt .name small { font-size: 1.6rem; }

    .anniversary_flow { background: #000; padding-bottom: 6.5rem; }
.anniversary_flow * { color: #fff; }
    .anniversary_flow .ph { margin-bottom: 5.0rem; }
.anniversary_flow .ph img { width: 100%; }
    .flow_list { width: 80.26%; margin: 0 auto; margin: 4.0rem auto 0; }
.flow_list_item { display: flex; justify-content: center; }
    .flow_list_item .time { width: 6.0rem; font-size: 1.6rem; line-height: 1.5; }
    .flow_list_item .txt { width: calc(100% - 6.0rem); padding: 0 0 1.5rem 3.0rem; box-sizing: border-box; position: relative; }
    .flow_list_item .txt:before { content: ""; display: block; width: 1.0rem; height: 1.0rem; border-radius: 50%; background: #fff; position: absolute; left: 0; top: 0.8rem }
    .flow_list_item .txt:after { content: ""; display: block; width: 1px; height: calc(100% - 0.8rem); background: #fff; position: absolute; left: 0.5rem; top: 1.6rem;] }
    .flow_list_item .txt .hd { font-size: 1.6rem; line-height: 1.5; }
    .flow_list_item .txt .copy { font-size: 1.4rem; line-height: 1.5; margin-top: 1.0rem; }

    .anniversary_faq > .inner { width: 82.66%; margin: 6.0rem auto 6.5rem;}
    .faq_list { margin-top: 2.5rem; }

    .anniversary_news,
    .anniversary_gallery,
    .anniversary_movie { width: 100%; margin: 0 auto; padding: 4.0rem 0 6.7rem; border-top: 1px solid #ACACAD; overflow-x: hidden; }

    .anniversary_news > .inner { width: 85.33%; margin: 0 auto; }
    .gallery_slide { width: 70.40%; margin: 3.0rem auto 0; overflow: visible; }

    .movie_ph { width: 73.33%; margin: 3.5rem auto 0; position: relative; }
    .movie_ph .ico { width: 3.9rem; position: absolute; left: 50%; top: 50%; transform:translate(-50%,-50%); }

    .anniversary_reservation { display: flex; flex-direction: column-reverse; background: #000; margin: 0 0 2.0rem; }
.anniversary_reservation  * { color: #fff;}
    .anniversary_reservation .ph { width: 100%; padding-bottom: 40%; position: relative; }
.anniversary_reservation .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
    .anniversary_reservation .txt { width: 100%; padding: 4.5rem 12.67%; box-sizing: border-box; text-align: center; }
    .anniversary_reservation .txt .hd { font-size: 2.2rem; }
    .anniversary_reservation .txt .date { font-size: 1.8rem; display: flex; flex-direction: column; justify-content: center; margin: 2.0rem 0 2.5rem; }
.anniversary_reservation .txt .date dt { width: 100%; }
    .anniversary_reservation .txt .date dd { text-align: center; }
    .anniversary_reservation .btn a { display: block; max-width: 48.6rem; margin: 0 auto; padding: 1.0rem 0; background: #fff; font-size: 1.3rem; color: #000; text-align: center; }
    .anniversary_reservation .copy { font-size: 1.4rem; margin-top: 1.0rem; }

    .footer_bunka { display: flex; flex-direction: column; align-items: center; width: 85.33%; margin: 4.5rem auto; }
    .footer_bunka .logo { width: 13.6rem; }
    .footer_bunka .copy { font-size: 1.2rem; color: #fff; margin: 1.5rem 0 0; }
}


/*link*/

@media screen and (min-width: 900px) {   
    
}
