:root {
    --cntBgClr: #004c78;
    --cntTxtClr: #ffff00;
    --cntElmClr: #df3000;
}
/* コンテンツ幅 フル */
.contentsInr{width:auto;padding:0px;}
/* コンテンツ幅 950px */
.contentsInr .contentsUnit{padding:0 10px;}
@media all and (min-width:740px){.contentsInr .contentsUnit{width:950px;padding:0px;margin:0 auto;}}
.pageTtl {margin-bottom: 0 !important;}
.cpnRebbon {
    background-color: var(--cntBgClr);
    color: var(--cntTxtClr);
    .cpnRebbonTxt {
        font-size: 2.8rem;
        padding-block: 22px 20px;
        padding-inline: 10px;
        @media (min-width: 740px) {
            font-size: 5.2rem;
            padding-block: 22px 20px;
        }
    }
    .headingWrap {
        font-size: 2rem;
        @media (min-width: 740px) {
            font-size: 2.8rem;
        }
        .subTxt {
            font-size: 1.3rem;
            display: block;
            @media (min-width: 740px) {
                font-size: 1.8rem;
            }
        }
    }
    .cnpIcon {
        position: relative;
        display: flex;
        align-items: center;
        gap: 4px;
        padding-inline: 10px;
        &::before {
            content: '';
            display: inline-block;
            background: transparent none center top no-repeat;
            background-size: cover;
        }
        &.cnpIconFare {
            &::before {
                background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/domtour/jaldp/okaidoku-flight/img_sites/icon_price.png);
                width: calc(79px / 2);
                height: calc(75px / 2);
                max-width: 79px;
                max-height: 75px;
                @media (min-width: 740px) {
                    width: 49px;
                    height: 46px;
                }
            }
        }
        &.cnpIconAircraft {
            &::before {
                background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/domtour/jaldp/okaidoku-flight/img_sites/icon_aircraft.png);
                width: calc(98px / 2);
                height: calc(61px / 2);
                max-width: 98px;
                max-height: 61px;
                @media (min-width: 740px) {
                    width: 59px;
                    height: 37px;
                }
            }
        }
    }
}
.ctm_pageTtl {
    &.hc02 {
        .cnpTitle {
            font-size: 1.9rem;
            color: var(--cntElmClr);
            position: relative;
            display: inline-block;
            width: fit-content;
            @media (min-width: 740px) {
                align-items: center;
                font-size: 2.8rem;
            }
            &::before, &::after {
                content: '';
                display: inline-block;
                position: absolute;
                background-color: var(--cntElmClr);
                width: 3px;
                height: 1.3em;
                top: auto;
                bottom: 0;
                margin: auto;
                @media (min-width: 740px) {
                    top: 0;
                }
            }
            &::before {
                transform: rotate(-45deg);
                left: -20px;
            }
            &::after {
                transform: rotate(45deg);
                right: -20px;
            }
        }
    }
}
.flightSchedule {
    .acodBlock {
        .heading .inr{
            text-align: center;
        }
        > .content {
            padding: 0 !important;
            border: none !important;
        }
    }
    .flightScheduleTitle {
        background-color: var(--cntElmClr);
        color: #fff;
        padding: 8px;
        font-size: 1.6rem;
    }
    .flightScheduleTable {
        table {
            border: 1px solid #707070;
            tr {
                th, td {
                    padding: 5px;
                    &:not(:first-child) {
                        border-left: 1px solid #707070;
                    }
                }
                th {
                    background: #fff7d6;
                    font-weight: bold;
                    border-bottom: 1px solid #707070;
                    &:first-child {
                        width: 20%;
                    }
                    &:nth-child(2) {
                        width: 30%;
                    }
                    &:last-child {
                        width: 50%;
                    }
                }
            }
            tbody {
                tr {
                    td {
                        &:nth-child(even) {
                            border-left: 1px solid #707070;
                        }
                        &:nth-child(3),
                        &:last-child {
                            border-left: none;
                            position: relative;
                        }
                        &:nth-child(3) {
                            &::before {
                                content: '';
                                display: inline-block;
                                width: 10px;
                                height: 12px;
                                background-color: var(--cntElmClr);
                                clip-path: polygon(10px 50%, 0% 0%, 0% 12px);
                                position: absolute;
                                inset: 0 auto 0 -5px;
                                margin: auto;
                            }
                        }
                    }
                    &:nth-child(2) {
                        td:last-child {
                            &::before {
                                content: '';
                                display: inline-block;
                                width: 10px;
                                height: 12px;
                                background-color: var(--cntElmClr);
                                clip-path: polygon(10px 50%, 0% 0%, 0% 12px);
                                position: absolute;
                                inset: 0 auto 0 -5px;
                                margin: auto;
                            }
                        }
                    }
                }
            }
        }
    }
}
.areaPriceBox {
    padding: 15px 14px;
    background-color: #ffe4d5;
    .areaPriceTxt {
        font-size: 2.4rem;
        color: var(--cntElmClr);
    }
    &.typeNext {
        background-color: #d7e8fa;
        .areaPriceTxt {
            color: var(--cntBgClr);
        }
    }
}
.sampleList {
    .colWrap.clm_1_4col .col {
        border: 2px solid #df3000 !important;
        @media (min-width: 740px) {
            width: calc(25% - 10px);
            margin-left: 10px !important;
        }
    }
    .sampleWrap {
        .ctm_iconTxt_RD {
            &.ctm_iconElmClr {
                position: relative;
                top: -10px;
                left: -10px;
                background-color: var(--cntElmClr);
            }
            &.ctm_iconDeparture {
                background-color: #ffe3db;
                color: #333333;
            }
        }
        .sampleResultTxt {
            position: relative;
            &::before {
                content: '';
                display: inline-block;
                width: 90px;
                height: 60px;
                background-color: #ffe3db;
                clip-path: polygon(50% 60px, 0% 0%, 90px 0%);
                position: absolute;
                inset: 0;
                margin: auto;
            }
            p {
                position: relative;
                z-index: 1;
            }
        }
        .sampleImg {
            .imgParts {
                margin-inline: -10px;
            }
        }
        .samplePrice {
            border: 1px solid #707070;
            border-radius: 8px;
            padding: 5px 10px;
            &.sampleResult {
                border-color: var(--cntElmClr);
                background-color: #fff7d6;
            }
        }
    }
}
