body {
    background-color: #feeacc;
    color: #4b3223;
}
.page_header_group {
    position: relative;
    width: min(calc(1400/1400*100vw), 1400px);
    margin: 0 auto;
    padding: min(calc(78/1024*100vw), 78px) min(calc(20/1024*100vw), 20px) min(calc(68/1024*100vw), 68px);
}
.page_header_group::before,
.page_header_group::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    border-top: solid 2px #b31a20;
    border-bottom: solid 2px #b31a20;
    height: min(calc(12/1024*100vw), 12px);
}
.page_header_group::before {
    top: 0;
}
.page_header_group::after {
    bottom: 0;
}
.page_header {
    width: min(calc(1037/1400*100vw), 1037px);
    margin-bottom: min(calc(50/1024*100vw), 50px);
}
.page_header_txt {
    font-weight: 500;
    text-align: center;
    font-size: min(calc(18/1024*100vw), 18px);
    line-height: calc(36/18*1em);
}
.holiday_monument {
    display: flex;
    flex-wrap: wrap;
    gap: min(calc(70/1024*100vw), 80px);
    max-width: 1120px;
    margin: min(calc(125/1024*100vw), 125px) auto 0;
    padding: 0 min(calc(20/1024*100vw), 20px);
}
.holiday_monument_item {
    display: flex;
    flex-direction: column;
    width: calc(500/1080*100%);
}
.holiday_monument_item.w01 {
    width: 100%;
}
.holiday_monument_img {
    position: relative;
}
.holiday_monument_img > * {
    transform-origin: 50% 50%;
}
.holiday_monument_img img {
    box-shadow: 0px 0px 10px -2px rgba(0, 0, 0, 0.6);
}
.holiday_monument_img01 {
    width: min(calc(740/1024*100vw), 740px);
}
.holiday_monument_img02 {
    position: absolute;
    right: min(calc(-10/1024*100vw), -10px);
    bottom: min(calc(60/1024*100vw), 60px);
    width: min(calc(395/1024*100vw), 395px);
}
.holiday_monument_img03 {
}
.holiday_monument_img04 {
}
.holiday_monument_img05 {
}
.holiday_monument_img06 {
}
.holiday_monument_img07 {
}
.holiday_monument_body {
    margin-bottom: min(calc(40/1024*100vw), 40px);
    padding: min(calc(50/1024*100vw), 50px) min(calc(24/1024*100vw), 24px) 0;
}
.holiday_monument_head {
    width: 100%;
    padding: 3px 20px;
    font-weight: 700;
    text-align: center;
    background: url(/lp/brightholiday2025/img/monument/holiday_monument_head.svg) no-repeat 50% 50%;
    background-size: 100% 100%;
}
.holiday_monument_head .en {
    font-size: min(calc(28/1024*100vw), 28px);
}
.holiday_monument_head .jp {
    font-size: min(calc(22/1024*100vw), 22px);
}
.holiday_monument_map {
    display: grid;
    grid-template-columns: min(calc(75/1024*100vw), 75px) auto;
    margin-top: min(calc(20/1024*100vw), 20px);
    background-color: #fff;
    border-radius: 100vmax;
}
.holiday_monument_map_head {
    position: relative;
    display: flex;
    align-items: center;
    padding: min(calc(8/1024*100vw), 8px) 0 min(calc(8/1024*100vw), 8px) min(calc(15/1024*100vw), 15px);
    color: #fff;
    font-size: min(calc(14/1024*100vw), 14px);
    font-weight: 700;
    line-height: 1;
    background-color: #c30d23;
    border-radius: 100vmax;
}
.holiday_monument_map_num {
    position: absolute;
    top: 50%;
    right: 0;
    translate: 40% -50%;
    display: grid;
    place-content: center;
    width: min(calc(40/1024*100vw), 40px);
    height: min(calc(40/1024*100vw), 40px);
    font-size: min(calc(26/1024*100vw), 26px);
    font-weight: 700;
    color: #4b3223;
    text-align: center;
    line-height: 1;
    background: url(/lp/brightholiday2025/img/monument/holiday_monument_map_num.png) no-repeat 0 0;
    background-size: 100% auto;
}
.holiday_monument_map_txt {
    padding: 0 min(calc(20/1024*100vw), 20px);
    font-size: min(calc(18/1024*100vw), 18px);
    font-weight: 700;
    text-align: center;
}
.holiday_monument_map_txt p {
    height: 100%;
    padding: min(calc(2/1024*100vw), 2px) 0;
}
.holiday_monument_info {
    margin-top: min(calc(24/1024*100vw), 24px);
    font-size: min(calc(16/1024*100vw), 16px);
    font-weight: 700;
}
.holiday_monument_info .annotaion {
    font-size: min(calc(12/1024*100vw), 12px);
    font-weight: 400;
}
.holiday_monument_info_item {
    width: fit-content;
    margin: 0 auto;
}
.holiday_monument_info_item tr{
    vertical-align: top;
}
.holiday_monument_info_item_label {
    padding-right: min(calc(12/1024*100vw), 12px);
    text-align: left;
}
.holiday_monument_body_btn {
    display: block;
    width: min(calc(240/1024*100vw), 240px);
    margin: auto auto 0;
}
@media (min-width: 768px) {
    .w01 .holiday_monument_head {
        display: flex;
        align-items: center;
        justify-content: center;
        width: min(calc(740/1024*100vw), 740px);
        min-height: min(calc(75/1024*100vw), 75px);
        margin: 0 auto;
        background: url(/lp/brightholiday2025/img/monument/holiday_monument_head_w01.svg) no-repeat 50% 50%;
        background-size: 100% 100%;
    }
    .w01 .holiday_monument_map {
        grid-template-columns: min(calc(80/1024*100vw), 80px) max-content;
        justify-content: center;
        min-width: 450px;
        background-color: transparent;
    }
    .w01 .holiday_monument_map_head {
        padding-right: min(calc(30/1024*100vw), 30px);
    }
    .w01 .holiday_monument_map_txt {
        padding: 0 min(calc(40/1024*100vw), 40px);
        background-color: #fff;
        border-radius: 100vmax;
    }
}
.holiday_map_wrap {
    padding: 0 20px;
}
.holiday_map_outer {
    position: relative;
    /* width: min(calc(1120/1024*100vw), 1120px); */
    max-width: 1120px;
    margin: min(calc(120/1024*100vw), 120px) auto 0;
    border: solid 1px #c30d23;
}
.holiday_map_outer::before,
.holiday_map_outer::after {
    content: '';
    position: absolute;
    background-color: #feeacc;
    width: min(calc(46/1024*100vw), 46px);
    height: min(calc(46/1024*100vw), 46px);
    border: none;
    z-index: 1;
}
.holiday_map_outer::before {
    top: -1px;
    left: -1px;
    border-bottom-right-radius: 100vmax;
    border-top-left-radius: 0;
    border-bottom: solid 1px #c30d23;
    border-right: solid 1px #c30d23;
}
.holiday_map_outer::after {
    top: -1px;
    right: -1px;
    border-bottom-left-radius: 100vmax;
    border-top-right-radius: 0;
    border-bottom: solid 1px #c30d23;
    border-left: solid 1px #c30d23;
}
.holiday_map_inner {
    position: relative;
    /* width: min(calc(1120/1024*100vw), 1120px); */
    width: 100%;
    background-color: #feeacc;
}
.holiday_map_inner::before,
.holiday_map_inner::after {
    content: '';
    position: absolute;
    background-color: #feeacc;
    width: min(calc(46/1024*100vw), 46px);
    height: min(calc(46/1024*100vw), 46px);
    border: none;
    z-index: 1;
}
.holiday_map_inner::before {
    bottom: -1px;
    left: -1px;
    border-top-right-radius: 100vmax;
    border-bottom-left-radius: 0;
    border-top: solid 1px #c30d23;
    border-right: solid 1px #c30d23;
}
.holiday_map_inner::after {
    bottom: -1px;
    right: -1px;
    border-top-left-radius: 100vmax;
    border-bottom-right-radius: 0;
    border-top: solid 1px #c30d23;
    border-left: solid 1px #c30d23;
}
.holiday_map_cont {
    padding: min(calc(50/1024*100vw), 50px) 0 min(calc(55/1024*100vw), 55px);
}
.holiday_map_head {
    position: relative;
}
.holiday_map_head::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    width: 100%;
    height: min(calc(11/1024*100vw), 11px);
    border-top: solid 1px #c30d23;
    border-bottom: solid 1px #c30d23;
}
.holiday_map_head p {
    position: relative;
    width: fit-content;
    max-width: calc(786/1080*100%);
    margin: 0 auto;
    padding: 0 min(calc(20/1024*100vw), 20px);
    background-color: #feeacc;
    color: #c30d23;
    font-size: min(calc(42/1024*100vw), 42px);
    font-weight: 700;
}
.holiday_map_lead {
    margin-top: min(calc(30/1024*100vw), 30px);
}
.holiday_map_lead p {
    font-size: min(calc(16/1024*100vw), 16px);
    line-height: calc(30/16*1em);
}
.holiday_map_img {
    margin-top: 0;
    padding: 0 min(calc(90/1024*100vw), 90px);
    overflow: hidden;
}
.holiday_map_img .inner {
    position: relative;
}
.holiday_map_img img {
    width: auto;
    height: auto;
    vertical-align: bottom;
}
.holiday_map_bottom2 {
    width: calc(100% - min(calc(200/1024*100vw), 200px));
    margin: min(calc(40/1024*100vw), 40px) auto 0;
    padding: min(calc(40/1024*100vw), 40px) min(calc(65/1024*100vw), 65px);
    border: solid 1px #c30d23;
}
.holiday_map_bottom {
    max-width: 1120px;
    margin: min(calc(40/1024*100vw), 40px) auto 0;
    padding: min(calc(40/1024*100vw), 40px) min(calc(65/1024*100vw), 65px);
    border: solid 1px #c30d23;
}
.holiday_map_bottom_head {
    font-size: min(calc(30/1024*100vw), 30px);
    font-weight: 700;
    text-align: center;
    color: #c30d23;
}
.holiday_map_bottom_term {
    font-size: min(calc(32/1024*100vw), 32px);
    font-weight: 700;
    text-align: center;
}
.holiday_map_bottom_txt {
    margin-top: min(calc(15/1024*100vw), 15px);
    font-size: min(calc(20/1024*100vw), 20px);
    font-weight: 700;
    text-align: center;
}
.holiday_map_bottom_annotation {
    padding-left: min(calc(20/1024*100vw), 20px);
    font-size: min(calc(12/1024*100vw), 12px);
}
.holiday_map_bottom_info {
    display: flex;
    align-items: end;
    margin-top: min(calc(20/1024*100vw), 20px);
}
.holiday_map_bottom_info + .holiday_map_bottom_info {
    margin-top: min(calc(10/1024*100vw), 10px);
}
.holiday_map_bottom_info > dt {
    flex-shrink: 0;
}
.zoom {
    position: relative;
    display: flex;
    justify-content: center;
    gap: min(calc(16/1024*100vw), 16px);
    margin-top: min(calc(25/1024*100vw), 25px);
}
.zoom_btn {
    width: min(calc(66/1024*100vw), 66px);
    cursor: pointer;
}
.holiday_bottom {
    margin-top: min(calc(160/1024*100vw), 160px);
    padding: min(calc(140/1024*100vw), 140px) min(calc(100/1024*100vw), 100px) min(calc(165/1024*100vw), 165px);
    background: url(/lp/brightholiday2025/img/monument/holiday_bottom.jpg) no-repeat 50% 50%;
    background-size: cover;
}
.holiday_bottom_txt {
    font-size: min(calc(60/1024*100vw), 60px);
    line-height: calc(66/60*1em);
    text-align: center;
    color: #fff;
}
.holiday_bottom_btn {
    display: block;
    width: min(calc(240/1024*100vw), 240px);
    margin: min(calc(40/1024*100vw), 40px) auto 0;
}
.holiday_map_elem {
    position: absolute;
}
.holiday_map_elem01 {
    top: min(calc(255/1024*100vw), 255px);
    right: 0;
    translate: 50% 0;
    width: min(calc(40/1024*100vw), 40px);
}
.holiday_map_elem02 {
    bottom: min(calc(96/1024*100vw), 96px);
    right: 0;
    translate: 50% 0;
    width: min(calc(45/1024*100vw), 45px);
}
.holiday_map_elem03 {
    top: min(calc(305/1024*100vw), 305px);
    left: 0;
    translate: -50% 0;
    width: min(calc(22/1024*100vw), 22px);
}
.holiday_map_elem04 {
    bottom: min(calc(405/1024*100vw), 405px);
    left: 0;
    translate: -50% 0;
    width: min(calc(40/1024*100vw), 40px);
}
dialog {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100dvh;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: none;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 0;
    transition: opacity 0.1s ease-out, transform 0.1s ease-out;
    transform: scale(1);
    font-family: YakuHanJP, "Noto Sans JP", sans-serif;
}
dialog.is-open {
    opacity: 1;
    transform: scale(1);
}
dialog:not([open]) {
    display: none;
    background-color: none;
}
.modal_cont {
    position: relative;
    max-height: 80svh;
    max-width: 80%;
}
.modal_close_btn {
    position: absolute;
    top: min(calc(40/1024*100vw), 40px);
    right: min(calc(50/1024*100vw), 50px);
    width: min(calc(42/1024*100vw), 42px);
}
.modal_cont_inr {
    max-width: 1400px;
    max-height: 70svh;
    background-color: #feeacc;
    overflow-y: auto;
    padding: min(calc(65/1024*100vw), 65px) min(calc(78/1024*100vw), 78px) min(calc(75/1024*100vw), 75px);
}
.modal_head {
    max-width: 720px;
    /* width: min(calc(720/1024*100vw), 720px); */
    margin: 0 auto min(calc(30/1024*100vw), 30px);
    padding: min(calc(15/1024*100vw), 15px);
    font-size: min(calc(32/1024*100vw), 32px);
    font-weight: 700;
    background-color: #c30d23;
    color: #fff;
    text-align: center;
    clip-path: polygon(0 0, 100% 0, 97.5% 50%, 100% 100%, 0 100%, 2.5% 50%);
}
.modal_body {
    display: grid;
    grid-template-columns: calc(534/1400*100%) auto;
    gap: calc(65/1400*100%);
}
.modal_img {
    padding-top: min(calc(15/1024*100vw), 15px);
}
.modal_info_head {
    /* width: fit-content; */
    max-width: min(calc(520/1024*100vw), 520px);
    padding: min(calc(5/1024*100vw), 5px) min(calc(50/1024*100vw), 50px);
    font-weight: 700;
    background: url(/lp/brightholiday2025/img/monument/modal_info_head.svg) no-repeat 50% 50%;
    background-size: 100% 100%;
}
.modal_info_head p {
    width: fit-content;
    margin: 0 auto;
    line-height: calc(45/34*1em);
    text-align: center;
}
.modal_info_head .en {
    font-size: min(calc(34/1024*100vw), 34px);
}
.modal_info_head .jp {
    font-size: min(calc(26/1024*100vw), 26px);
}
.modal_info_lead {
    margin-top: min(calc(40/1024*100vw), 40px);
    font-size: min(calc(25/1024*100vw), 25px);
    line-height: calc(40/25*1em);
}
.modal_info_txt {
    margin-top: min(calc(20/1024*100vw), 20px);
    font-size: min(calc(16/1024*100vw), 16px);
    line-height: calc(30/16*1em);
    font-weight: 700;
}
.modal_info_annotation {
    margin-top: min(calc(20/1024*100vw), 20px);
    font-size: min(calc(12/1024*100vw), 12px);
    line-height: calc(20/12*1em);
}
.modal_btm {
    display: grid;
    align-items: flex-start;
    grid-template-columns: min(calc(90/1024*100vw), 90px) auto;
    gap: min(calc(28/1024*100vw), 28px);
    margin-top: min(calc(35/1024*100vw), 35px);
    padding-top: min(calc(30/1024*100vw), 30px);
    border-top: solid 1px #311301;
}
.modal_btm_map {
    position: relative;
    display: flex;
    align-items: center;
    padding: min(calc(8 / 1024 * 100vw), 8px) 0 min(calc(8 / 1024 * 100vw), 8px) min(calc(15 / 1024 * 100vw), 15px);
    color: #fff;
    font-size: min(calc(14 / 1024 * 100vw), 14px);
    font-weight: 700;
    line-height: 1;
    background-color: #c30d23;
    border-radius: 100vmax;
}
.modal_btm_map_num {
    position: absolute;
    top: 50%;
    right: 0;
    translate: 40% -50%;
    display: grid;
    place-content: center;
    width: min(calc(40 / 1024 * 100vw), 40px);
    height: min(calc(40 / 1024 * 100vw), 40px);
    font-size: min(calc(25 / 1024 * 100vw), 25px);
    font-weight: 700;
    color: #4b3223;
    text-align: center;
    line-height: 1;
    background: url(/lp/brightholiday2025/img/monument/holiday_monument_map_num.png) no-repeat 0 0;
    background-size: 100% auto;
}
.modal_btm_map_item_label {
    text-align: left;
}
.modal_btm_map_item {
    width: fit-content;
    font-size: min(calc(17/1024*100vw), 17px);
}
.modal_btm_map_item tr {
    vertical-align: top;
}
.modal_btm_map_item_label {
    padding-right: min(calc(10/1024*100vw), 10px);
}
.modal_btm_map_item_val .annotaion {
    padding-left: 1em;
    font-size: min(calc(12/1024*100vw), 12px);
}
.modal_annotation {
    margin-top: min(calc(15/1024*100vw), 15px);
    padding-left: min(calc(122/1024*100vw), 122px);
    font-size: min(calc(12/1024*100vw), 12px);
}
.modal_img_fig {
    transform-origin: 50% 50%;
    box-shadow: 0px 0px 10px -2px rgba(0, 0, 0, 0.6);
}
.modal_img02 {
    width: calc(352/534*100%);
    margin-left: calc(150/534*100%);
    margin-top: calc(16/534*100%);
}
.modal_celebrationtree {
    display: flex;
    align-items: center;
    gap: min(calc(25/1024*100vw), 25px);
    margin-top: min(calc(20/1024*100vw), 20px);
    padding: min(calc(15/1024*100vw), 15px) min(calc(20/1024*100vw), 20px);
    border: solid 1px #311301;
}
.modal_celebrationtree_img {
    flex-shrink: 0;
    width: min(calc(80/1024*100vw), 80px);
}
.modal_celebrationtree_img2 {
    flex-shrink: 0;
    width: min(calc(180/1024*100vw), 180px);
}
.modal_celebrationtree_txt {
    font-size: min(calc(16/1024*100vw), 16px);
    line-height: calc(30/16*1em);
}
.modal_copyright {
    margin-top: min(calc(30/1024*100vw), 30px);
    text-align: right;
    font-size: min(calc(12/1024*100vw), 12px);
}
@media (max-width: 767.9px) {
    .page_header_group {
        width: calc(630/750*100vw);
        padding: calc(100/750*100vw) 0;
    }
    .page_header_group::before,
    .page_header_group::after {
        border-top: solid calc(3/750*100vw) #b31a20;
        border-bottom: solid calc(3/750*100vw) #b31a20;
        height: calc(16/750*100vw);
    }
    .page_header {
        width: calc(629/750*100vw);
        margin-bottom: calc(70/750*100vw);
    }
    .page_header_txt {
        text-align: left;
        font-size: calc(28/750*100vw);
        line-height: calc(56/28*1em);
    }
    .holiday_monument {
        display: flex;
        flex-direction: column;
        gap: calc(124/750*100vw);
        width: calc(620/750*100vw);
        margin: calc(140/750*100vw) auto 0;
        padding: 0;
    }
    .holiday_monument_item {
        width: 100%;
    }
    .holiday_monument_img01 {
        width: calc(582/750*100vw);
    }
    .holiday_monument_img02 {
        right: calc(-30/750*100vw);
        bottom: calc(-45/750*100vw);
        width: calc(245/750*100vw);
    }
    .holiday_monument_img03 {
    }
    .holiday_monument_img05 {
    }
    .holiday_monument_img07 {
    }
    .holiday_monument_body {
        margin-bottom: calc(70/750*100vw);
        padding: calc(90/750*100vw) 0 0;
    }
    .holiday_monument_head {
        padding: calc(14/750*100vw) calc(30/750*100vw);
        background: url(/lp/brightholiday2025/img/monument/holiday_monument_head_sp.svg) no-repeat 50% 50%;
    }
    .holiday_monument_head .en {
        font-size: calc(44/750*100vw);
    }
    .holiday_monument_head .jp {
        font-size: calc(32/750*100vw);
    }
    .holiday_monument_map {
        grid-template-columns: calc(130/750*100vw) auto;
        margin-top: calc(30/750*100vw);
    }
    .holiday_monument_map_head {
        padding: calc(15/750*100vw) calc(45/750*100vw) calc(10/750*100vw) calc(20/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .holiday_monument_map_num {
        translate: 40% -50%;
        width: calc(64/750*100vw);
        height: calc(64/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .holiday_monument_map_txt {
        padding: 0 calc(30/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .holiday_monument_map_txt p {
        padding: calc(10/750*100vw) 0 calc(8/750*100vw);
    }
    .holiday_monument_info {
        margin-top: calc(40/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .holiday_monument_info .annotaion {
        font-size: calc(20/750*100vw);
    }
    .w01 .holiday_monument_info_item {
        margin: 0;
    }
    .holiday_monument_info_item_label {
        padding-right: calc(20/750*100vw);
    }
    .holiday_monument_body_btn {
        width: calc(440/750*100vw);
    }
    .holiday_map_wrap {
        width: calc(680/750*100vw);
        margin: 0 auto;
        padding: 0;
    }
    .holiday_map_outer {
        margin: calc(160/750*100vw) auto 0;
    }
    .holiday_map_outer::before,
    .holiday_map_outer::after {
        width: calc(40/750*100vw);
        height: calc(40/750*100vw);
    }
    .holiday_map_inner::before,
    .holiday_map_inner::after {
        content: '';
        position: absolute;
        background-color: #feeacc;
        width: calc(40/750*100vw);
        height: calc(40/750*100vw);
    }
    .holiday_map_cont {
        padding: calc(60/750*100vw) 0;
    }
    .holiday_map_head::before {
        height: calc(18/750*100vw);
    }
    .holiday_map_head p {
        padding: 0 calc(25/750*100vw);
        font-size: calc(48/750*100vw);
        line-height: calc(66/48*1em);
        text-align: center;
    }
    .holiday_map_lead {
        margin-top:calc(50/750*100vw);
    }
    .holiday_map_lead p {
        font-size: calc(26/750*100vw);
        line-height: calc(52/26*1em);
    }
    .holiday_map_img {
        margin-top: 0;
        padding: 0 calc(40/750*100vw);
    }
    .holiday_map_bottom {
        width: calc(680/750*100vw);
        margin: calc(80/750*100vw) auto 0;
        padding: calc(40/750*100vw) calc(50/750*100vw);
    }
    .holiday_map_bottom_head {
        font-size: calc(40/750*100vw);
    }
    .holiday_map_bottom_term {
        padding: 0 calc(50/750*100vw);
        font-size: calc(42/750*100vw);
        line-height: calc(60/42*1em);
        text-align: left;
    }
    .holiday_map_bottom_txt {
        margin-top: calc(30/750*100vw);
        font-size: calc(26/750*100vw);
        line-height: calc(42/26*1em);
        text-align: left;
    }
    .holiday_map_bottom_annotation {
        margin-top: calc(20/750*100vw);
        padding-left: 0;
        font-size: calc(26/750*100vw);
        text-align: left;
    }
    .holiday_map_bottom_info {
        flex-wrap: wrap;
        align-items: flex-start;
        margin-top: calc(50/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .zoom {
        gap: calc(20/750*100vw);
        margin-top: calc(54/750*100vw);
    }
    .zoom_btn {
        width: calc(70/750*100vw);
    }
    .holiday_bottom {
        margin-top: calc(140/750*100vw);
        padding: calc(200/750*100vw) 0 calc(225/750*100vw);
        background: url(/lp/brightholiday2025/img/monument/holiday_bottom_sp.jpg) no-repeat 50% 50%;
        background-size: cover;
    }
    .holiday_bottom_txt {
        font-size: calc(68/750*100vw);
        line-height: calc(76/68*1em);
    }
    .holiday_bottom_btn {
        display: block;
        width: calc(440/750*100vw);
        margin: calc(50/750*100vw) auto 0;
    }
    .holiday_map_elem01 {
        top: calc(380/750*100vw);
        width: calc(44/750*100vw);
    }
    .holiday_map_elem02 {
        bottom: calc(385/750*100vw);
        right: 0;
        translate: 50% 0;
        width: calc(50/750*100vw);
    }
    .holiday_map_elem03 {
        top: calc(455/750*100vw);
        left: 0;
        translate: -50% 0;
        width: calc(32/750*100vw);
    }
    .holiday_map_elem04 {
        bottom: calc(390/750*100vw);
        left: 0;
        translate: -50% 0;
        width: calc(44/750*100vw);
    }
    .modal_cont {
        max-width: calc(680/750*100vw);
        max-height: 85svh;
    }
    .modal_close_btn {
        top: calc(25/750*100vw);
        right: calc(35/750*100vw);
        width: calc(50/750*100vw);
        z-index: 1;
    }
    .modal_cont_inr {
        max-height: 80svh;
        padding: calc(105/750*100vw) calc(35/750*100vw) calc(80/750*100vw);
    }
    .modal_head {
        width: calc(600/750*100vw);
        margin: 0 auto calc(38/750*100vw);
        padding: calc(22/750*100vw);
        font-size: calc(40/750*100vw);
        clip-path: polygon(0 0, 100% 0, 95.5% 50%, 100% 100%, 0 100%, 4.5% 50%);
    }
    .modal_body {
        display: grid;
        grid-template-columns: inherit;
        gap: calc(30/750*100vw);
    }
    .modal_img {
        margin-bottom: calc(35/750*100vw);
        padding-top: 0;
    }
    .modal_info_head {
        width: 100%;
        max-width: 100%;
        padding: calc(10/750*100vw) calc(20/750*100vw);
        background: url(/lp/brightholiday2025/img/monument/modal_info_head_sp.svg) no-repeat 50% 50%;
        background-size: 100% 100%;
    }
    .modal_info_head p {
        line-height: calc(56/44*1em);
    }
    .modal_info_head .en {
        font-size: calc(44/750*100vw);
    }
    .modal_info_head .jp {
        font-size: calc(32/750*100vw);
    }
    .modal_info_lead {
        margin-top: calc(30/750*100vw);
        font-size: calc(30/750*100vw);
        line-height: calc(50/30*1em);
        text-align: center;
    }
    .modal_info_txt {
        margin-top: calc(30/750*100vw);
        font-size: calc(22/750*100vw);
        line-height: calc(42/22*1em);
    }
    .modal_info_annotation {
        margin-top: calc(20/750*100vw);
        font-size: calc(20/750*100vw);
        line-height: calc(32/20*1em);
        padding-left: 1em;
        text-indent: -1em;
    }
    .modal_btm {
        grid-template-columns: calc(130/750*100vw) auto;
        gap: calc(55/750*100vw);
        margin-top: calc(45/750*100vw);
        padding-top: calc(45/750*100vw);
    }
    .modal_btm_map {
        padding: calc(8/750*100vw) calc(50/750*100vw) calc(8/750*100vw) calc(20/750*100vw);
        font-size: calc(26/750*100vw);
    }
    .modal_btm_map_num {
        width: calc(64/750*100vw);
        height: calc(64/750*100vw);
        font-size: calc(41/750*100vw);
    }
    .modal_btm_map_item {
        font-size: calc(26/750*100vw);
    }
    .modal_btm_map_item tr {
        display: flex;
        flex-direction: column;
    }
    .modal_btm_map_item tr:not(:first-child) .modal_btm_map_item_label {
        padding-top: calc(30/750*100vw);
    }
    .modal_btm_map_item_label {
        padding-right: 0;
    }
    .modal_btm_map_item_val {
        font-weight: 700;
    }
    .modal_btm_map_item_val .annotaion {
        font-size: calc(20/750*100vw);
        font-weight: 400;
    }
    .modal_annotation {
        margin-top: calc(30/750*100vw);
        padding-left: 1em;
        text-indent: -1em;
        font-size: calc(20/750*100vw);
        line-height: calc(30/20*1em);
    }
    .modal_img_fig {
        transform-origin: 50% 50%;
        box-shadow: 0px 0px 10px -2px rgba(0, 0, 0, 0.6);
    }
    .modal_img02 {
        width: calc(352/534*100%);
        margin-left: calc(150/534*100%);
    }
    .modal_celebrationtree {
        gap: calc(20/750*100vw);
        margin-top: calc(40/750*100vw);
        padding: calc(20/750*100vw) calc(20/750*100vw);
    }
    .modal_celebrationtree_img {
        width: calc(120/750*100vw);
    }
	.modal_celebrationtree_img2 {
        width: calc(250/750*100vw);
    }
    .modal_celebrationtree_txt {
        font-size: calc(22/750*100vw);
        line-height: calc(30/16*1em);
    }
    .modal_copyright {
        margin-top: calc(20/750*100vw);
        font-size: calc(20/750*100vw);
    }
}