@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
.mincho {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.tukusi {
    font-family: "FOT-筑紫オールド明朝 Pro R", "TsukuOldMinPro-R", serif;
}

.hlv {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.century {
    font-family: "Questrial", sans-serif;
}

.minimunWidth {
    width: 720px;
    margin-right: auto;
    margin-left: auto;
}

.inrWidth {
    width: 1000px;
    margin-right: auto;
    margin-left: auto;
}

.outerWidth {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.fullWidth {
    margin-right: auto;
    margin-left: auto;
}

@media print,
screen and (min-width: 1400px) {
    .fullWidth {
        width: 1400px;
    }
    .inrWidth {
        width: 1000px;
    }
    .minimumWidth {
        width: 720px;
    }
}

@media print,
screen and (min-width: 1200px) and (max-width: 1400px) {
    .fullWidth {
        width: 100%;
    }
    .outerWidth {
        width: 1200px;
    }
    .inrWidth {
        width: 1000px;
    }
    .minimumWidth {
        width: 720px;
    }
}

@media print,
screen and (min-width: 768px) and (max-width: 1400px) {
    .fullWidth {
        width: 90% !important;
    }
}

@media print,
screen and (min-width: 768px) and (max-width: 1200px) {
    .outerWidth {
        width: 95% !important;
    }
    .minimumWidth {
        width: 720px;
    }
}

@media print,
screen and (min-width: 768px) and (max-width: 1000px) {
    .inrWidth {
        width: 95% !important;
    }
}

@media screen and (max-width: 768px) {
    .minimumWidth {
        width: 90%;
    }
    .inrWidth {
        width: 90%;
    }
    .outerWidth {
        width: 90% !important;
    }
    .fullWidth {
        width: 90% !important;
    }
}


/*----------------------------------------
MAIN
-----------------------------------------*/

@media screen and (min-width: 769px) {
    #OIH #facility {
        background: #f4f3f3;
    }
    #OIH #facility section h4 {
        margin-bottom: 10px;
    }
    #OIH #facility section .smlft {
        font-size: 1.2rem;
        line-height: 1.5;
    }
    #OIH #facility section a {
        color: #cf5095;
        text-decoration: underline;
    }
    #OIH #facility .sec01 {
        padding-top: 0 !important;
    }
    #OIH #facility .sec01 h3 span {
        display: block;
        margin-top: 20px;
        font-size: 1.4rem;
        font-weight: normal;
    }
    #OIH #facility .sec01 .span_bgred {
        display: block;
        background: #fff3fa;
        padding: 10px 25px;
        margin: 10px 0 20px 1em;
    }
    #OIH #facility .sec01 p {
        margin-top: 10px;
    }
    #OIH #facility .sec02__lead {
        text-align: justify;
        margin-bottom: 20px;
    }
    #OIH #facility .sec02 h4 {
        margin-top: 20px;
    }
    #OIH #facility .sec02 h5 {
        font-weight: bold;
        margin-top: 15px;
    }
    #OIH #facility .sec02 .h5_under {
        padding-left: 1em;
    }
    #OIH #facility .sec02__df {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 30px;
    }
    #OIH #facility .sec02__df div {
        width: 45%;
        min-width: 260px;
    }
    #OIH #facility .sec02__df div:first-of-type {
        margin-right: 4%;
    }
    #OIH #facility .sec02__df div a {
        width: 100%;
        color: #000;
        text-decoration: none;
    }
    #OIH #facility .sec02__df div a:hover {
        color: #fff;
    }
    #OIH #facility .sec03 h4:last-of-type {
        margin-top: 20px;
    }
    #OIH #facility .sec03 p {
        margin-top: 10px;
    }
    #OIH #facility .sec03 p.smlft {
        margin-top: 5px;
    }
    #OIH #facility .sec08__txt {
        font-weight: normal;
    }
    #OIH #facility .sec08__txt a {
        color: #cf5095;
        text-decoration: underline;
    }
    #OIH #facility .pd-add {
        padding: 40px 38px 48px 50px !important;
    }
}

@media screen and (max-width: 768px) {
    #OIH #facility {
        background: #f4f3f3;
    }
    #OIH #facility section h4 {
        margin-bottom: 10px;
    }
    #OIH #facility section .smlft {
        font-size: 1.2rem;
        line-height: 1.5;
    }
    #OIH #facility section a {
        color: #cf5095;
        text-decoration: underline;
    }
    #OIH #facility .sec01 {
        padding-top: 0 !important;
    }
    #OIH #facility .sec01 h3 span {
        display: block;
        margin-top: 20px;
        font-size: 1.4rem;
        font-weight: normal;
    }
    #OIH #facility .sec01 .span_bgred {
        display: block;
        background: #fff3fa;
        padding: 25px;
        margin: 10px 0;
        text-align: left;
    }
    #OIH #facility .sec01 p {
        margin-top: 10px;
        text-align: justify;
    }
    #OIH #facility .sec02__lead {
        text-align: justify;
        margin-bottom: 20px;
    }
    #OIH #facility .sec02 h4 {
        margin-top: 20px;
    }
    #OIH #facility .sec02 h5 {
        font-weight: bold;
        margin-top: 15px;
    }
    #OIH #facility .sec02 .h5_under {
        padding-left: 1em;
        text-align: justify;
    }
    #OIH #facility .sec02__df {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 30px;
    }
    #OIH #facility .sec02__df div {
        width: 48%;
        min-width: 270px;
    }
    #OIH #facility .sec02__df div:first-of-type {
        margin-right: 4%;
    }
    #OIH #facility .sec02__df div a {
        width: 100%;
        color: #000;
        text-decoration: none;
        margin-top: 20px;
    }
    #OIH #facility .sec03 h4:last-of-type {
        margin-top: 20px;
    }
    #OIH #facility .sec03 p {
        margin-top: 10px;
    }
    #OIH #facility .sec03 p.smlft {
        margin-top: 5px;
    }
    #OIH #facility .sec08__txt {
        font-weight: normal;
    }
    #OIH #facility .sec08__txt a {
        color: #cf5095;
        text-decoration: underline;
    }
}