body{
    padding-bottom: 55px;
}
.block{
    display: block;
}
.grid{
    display: grid;
}
.gap-10{ gap: 10px; }
.gap-20{ gap: 20px; }
.gap-30{ gap: 30px; }
.gap-40{ gap: 40px; }
.gap-50{ gap: 50px; }
.mt0{
    margin-top: 0 !important;
}
.line-space{
    display: block;
    margin-top: 25px;
}
.route-list{
    li{
        padding-left: 1em;
        text-indent: -1em;
    }
    &::after{
        content: "↓";
        display: block;
    }
}
.route-list{
    li:last-child:after{
        display: none;
    }
}
@media (min-width: 769px){
    .pc-mt0{ margin-top: 0 !important; }
    .pc-mt5{ margin-top: 5px !important; }
    .pc-mt10{ margin-top: 10px !important; }
    .pc-mt15{ margin-top: 15px !important; }
    .pc-mt20{ margin-top: 20px !important; }
    .pc-mt25{ margin-top: 25px !important; }
    .pc-mt30{ margin-top: 30px !important; }
    .pc-mt35{ margin-top: 35px !important; }
    .pc-mt40{ margin-top: 40px !important; }
    .pc-mt45{ margin-top: 45px !important; }
    .pc-mt50{ margin-top: 50px !important; }

    .pc-gap10{ gap: 10px; }
    .pc-gap20{ gap: 20px; }
    .pc-gap30{ gap: 30px; }
    .pc-gap40{ gap: 40px; }
    .pc-gap50{ gap: 50px; }
}
@media (max-width: 768px){
    .sp-mt0{ margin-top: 0 !important; }
    .sp-mt5{ margin-top: 5px !important; }
    .sp-mt10{ margin-top: 10px !important; }
    .sp-mt15{ margin-top: 15px !important; }
    .sp-mt20{ margin-top: 20px !important; }
    .sp-mt25{ margin-top: 25px !important; }
    .sp-mt30{ margin-top: 30px !important; }
    .sp-mt35{ margin-top: 35px !important; }
    .sp-mt40{ margin-top: 40px !important; }

    .sp-gap10{ gap: 10px; }
    .sp-gap20{ gap: 20px; }
    .sp-gap30{ gap: 30px; }
    .sp-gap40{ gap: 40px; }
    .sp-gap50{ gap: 50px; }
}

.ordermade-topics-main{
    padding: 100px 30px;
    margin: auto;
    font-size: 2rem;
            font-family: 'Zen Old Mincho', serif;
    line-height: 1.8;
    img{
        width: 100%;
        max-width: fit-content;
        height: auto;
    }
    figure{
        margin: 0;
    }
}
.ordermade-topics-main-title{
    width: 225px;
    margin: 0 auto 70px;
}
.ordermade-topics-heading{
    margin-bottom: 50px;
    color: #5F3F39;
    font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;   
}
.ordermade-topics-introduction{
    display: grid;
    gap: 50px;
    width: fit-content;
    max-width: 980px;
    margin: 0 auto 70px;
 }
.ordermade-topics-section{
    /* display: flex;
    gap: 100px; */
    display: grid;
    gap: 40px;
    padding: 60px 0;
    /* width: calc( 1130 / 1920 * 100vw ); */
    max-width: 980px;
    margin: auto;
    a{
        border-bottom: 1px solid rgb(18, 86, 135);
    }
    small{
        font-size: 1em;
    }
}
.w-980{
    width: 100%;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto; 
}
.w-1300{
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto; 
}
@media (min-width: 1367px) {
    .w-1300{
        width: 1300px; /* 1366 + 60 = 1306 */
        margin-left: calc(50% - 650px); /* 画面中央に配置 */
    }
}
@media (min-width: 1131px) and (max-width: 1366px){
    .w-1300{
        width: 100%;
        gap: calc( 100 / 1366 * 100vw );
        margin-left: 0;
    }
}
@media  (max-width: 768px){
    .w-980{
        width: 100%;
    }
    .w-1300{
        width: 100%;
        margin-left: 0;
    }
}


.ordermade-topics-section.last{
    padding-bottom: 120px;
}
.ordermade-topics-section-heading{
    margin-bottom: 30px;
    color: #5F3F39;
    font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
    font-size: 2.4rem;
    letter-spacing: 0.2em;
    line-height: 1.4;
}
.ordermade-topics-section-heading--h4{
    margin-bottom: 10px;
    font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
    font-size: 2.1rem;
    line-height: 1.4;
}
/* .ordermade-topics-section-heading + .ordermade-topics-section-heading--h4{
    margin-top: 30px;
} */
.ordermade-topics-section-heading + .model-plan{
    margin-top: -30px;
}
.ordermade-topics-text-container{
    flex: 1;
}
.ordermade-topics-image-container{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    column-gap: 10px;
    row-gap: 10px;
    margin: auto;
}
.ordermade-topics-image-wrap{
    flex: 1;
}
.ordermade-topics-image-container.auto{
    flex-wrap: nowrap;
    .ordermade-topics-image-wrap{
            flex: auto;
    }
}
.renew{
    .ordermade-topics-image-wrap{
        flex: none;
    }
}
.ordermade-topics-image-caption{
    margin-top: 2px;
    font-size: 1.3rem;
    text-align: right;
    line-height: 1.4;
    letter-spacing: -0.05em;
}
.ordermade-topics-text + .ordermade-topics-text{
    margin-top: 25px;
}
/* .ordermade-topics-text + .ordermade-topics-dl{

} */
.ordermade-topics-dl{
    display: grid;
    gap: 30px;
    /* margin-top: 30px; */
}
.ordermade-topics-dt{
    font-weight: bold;
}
.ordermade-topics-dd-container{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-top: 5px;
}
.ordermade-topics-dd.left{
    width: 80%;
}
.ordermade-topics-dd.right{
    flex: 1;
    white-space: nowrap;
    text-align: right;
}
.ordermade-topics-main-footnote{
    max-width: 1130px;
    width: 100%;
    margin: auto;
    text-align: left;
    /* line-height: 1.2; */
}
.renew{
    .ordermade-topics-main-footnote{
        font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
    }
}
.ordermade-topics-main-footnote-ol{
    margin: 20px 0;
    padding-left: 1em;
    li{
        padding-left: 1em;
        text-indent: -1em;
    }
}
@media (min-width: 1131px){
    .ordermade-topics-image{
        max-width: fit-content;
        /* min-width: fit-content; */
    }
}
@media (max-width: 1130px){
    .ordermade-topics-dd-container{
        flex-direction: column;
    }
    .ordermade-topics-dd.left{
        width: 100%;
    }
}
@media (min-width: 769px){
    .ordermade-topics-image-container.cols-2{

        /* display: grid;
        grid-template-columns: repeat(2, 1fr); */
        .ordermade-topics-image-wrap{
            flex: none;
            width: calc(50% - 10px);
        }
    }
    .ordermade-topics-image-container.cols-3{

        /* display: grid;
        grid-template-columns: repeat(3, 1fr); */
        .ordermade-topics-image-wrap{
            flex: none;
            width: calc(33.3333% - 10px);
        }
    }
    .ordermade-topics-image-container.cols-4{

        /* display: grid;
        grid-template-columns: repeat(4, 1fr); */
        .ordermade-topics-image-wrap{
            flex: none;
            width: calc(25% - 10px);
        }
    }
    .renew{
        .ordermade-topics-image-container.cols-2{
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            .ordermade-topics-image-wrap{
                flex: 1;
                width: 100%;
            }
        }
    }
    .ordermade-topics-image-wrap{
        max-width: fit-content;
    }
}
@media (max-width: 768px) {
    .ordermade-topics-main{
    padding: 100px 20px;
        font-size: 1.8rem;
        line-height: 1.6;
    }
    .ordermade-topics-section.last{
        padding-bottom: 70px;
    }

    .ordermade-topics-heading{
        width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0 10px;
        font-size: 2rem;
    }
    .ordermade-topics-introduction{
        gap: 30px;
        margin-bottom: 35px;
    }
    .ordermade-topics-introduction-text{
        padding: 0 10px;
    }
    .ordermade-topics-section{
        padding: 30px 0;
    }
    .ordermade-topics-main{
        img{
            width: 100%;
            max-width: 100%;
        }
    }
    .ordermade-topics-text-container{
        padding: 0 10px;
    }
    .ordermade-topics-image-container{
        flex-direction: column;
        width: 100%;
        justify-content: flex-start;
        align-items: center;
    }
    .ordermade-topics-image{
        /* width: 100%; */
        min-width: 330px;
        height: auto;
    }
    .ordermade-topics-main-footnote-ol{
        padding-left: 0;
    }
}

/* box style */
.flex-box{
    display: flex;
    align-items: center;
    gap: 50px;
}
@media (min-width: 1131px){
    .flex-box{
        .ordermade-topics-text-container{
            flex: 1;
            position: relative;
            top:-15px
        }
    }
    .-reverse{
        flex-direction: row-reverse;
    }
    .flex-box.-image-vertical{
        .ordermade-topics-image-container{
            flex-direction: column;
        }
    }
}
@media (min-width: 769px){
    .sp-flex-box{
        display: grid;
        gap: 30px;
    }
}
@media (min-width: 769px) and (max-width: 1130px){
    .flex-box{
        flex-direction: column;
        gap: 50px;
    }
    /* .flex-box.-image-alternate{
        .ordermade-topics-image-container{
            width: 100%;
            flex-direction: row;
        }
        .ordermade-topics-image{
                flex: 1;
            max-width: fit-content;
            min-width: fit-content;
        }
    } */
}
@media (max-width: 768px){
    .flex-box{
        flex-direction: column;
        gap: 30px;
    }
    .sp-flex-box{
        display: flex;
        flex-direction: column;
        gap: 30px;
    }
    .sp-flex-box.-reverse{
        flex-direction: column-reverse;
    }
}

.aman-collection{
    width: fit-content;
    margin: auto;
    padding: 100px 70px;
    border-top: 1px solid #f2e1d0;
    border-bottom: 1px solid #f2e1d0;
}
.aman-collection-heading{
    font-size: 2.3rem;
    font-family: 'Zen Old Mincho', serif;
    /* text-align: right; */
    line-height: 1.2;
    font-weight: 700;
}
.aman-collection-list{
    display: grid;
    gap: 10px;
    margin-top: 50px;
    font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
    font-size: 1.8rem;
}
.aman-collection-item{
    line-height: 1.4;
    a{
        color: #5F3F39;
    }
}
@media (max-width: 768px){
    .aman-collection{
        width: 100vw;
        margin: 0 calc(50% - 50vw) 70px;
        padding: 60px 30px;
    }
    .aman-collection-list{
        gap: 15px;
        font-size: 1.6rem;
    }
}

.aman-collection + .ordermade-topics-main-footnote{
    margin-top: 100px;
}
@media (max-width: 768px){
    .ordermade-topics-main-footnote{
        padding: 0 20px;
    }
}

#mainContents .topics_btn {
    display: block;
    width: 335px;
    margin: 100px auto 0;
    padding: 8px 0;
    font-size: 16px;
    color: #000;
    border: 1px solid #707070;
    text-align: center;
    text-decoration: none;
    font-family: 'Zen Old Mincho', serif;
    position: relative;
    &::before{
        content: "";
        width: 9px;
        height: 11px;
        position: absolute;
        right: 38px;
        top: 50%;
        transform: translateY(-50%);
        background-image: url(/luxurytravel/ordermade/overseas/image/btn-back-icon.png);
        background-repeat: no-repeat;
        background-size: cover;
    }
}