@charset "utf-8";

/* kv
  ーーーーーーーーーーーーーーーーーーーーーーーー */


/* top__article
  ーーーーーーーーーーーーーーーーーーーーーーーー */


/* play__column
  ーーーーーーーーーーーーーーーーーーーーーーーー */


/* section
  ーーーーーーーーーーーーーーーーーーーーーーーー */


}
.contents .kv {
    position: relative;
    margin-top: 3.5714285714vw;
    margin-bottom: 4.2857142857vw;
    /* kv__concept
    ーーーーーーーーーーーーーーーーーーーーーーーー */
    /* weather
    ーーーーーーーーーーーーーーーーーーーーーーーー */
}
.top .contents .kv {
    margin-bottom: 7.1428571429vw;
}
.top .contents .kv .kv__main .kv__main--img {
    padding-top: calc(544 / 947 * 100%);
}
.top .contents .kv .kv__main .kv__main--img>span {
    left: 0;
    top: 0;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    opacity: 0;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
}
.contents .kv .kv__main {
    position: relative;
    padding-left: 2.1428571429vw;
}
.contents .kv .kv__main .kv__main--img {
    position: relative;
    padding-top: calc(982 / 1898 * 100%);
    border-radius: 1.8571428571vw;
    overflow: hidden;
    z-index: 0;
}
.contents .kv .kv__main .kv__main--img>span {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.contents .kv .kv__main .img__scroll--circle {
    position: absolute;
    right: 0;
    bottom: -1.4285714286vw;
}
.contents .kv .kv__main .kv__main--img--subtext {
    position: absolute;
    left: 0;
    z-index: 5;
}
.contents .kv .kv__main .kv__main--img--subtext span {
    display: block;
    text-indent: -9999px;
    height: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.contents .kv .kv__main .kv__main--img--subtext.subtext--1 {
    width: calc(97 / 980 * 100%);
    top: 1.6428571429vw;
}
.contents .kv .kv__main .kv__main--img--subtext.subtext--1 span {
    padding-top: calc(45 / 97 * 100%);
    background-image: url("../img/contents/top/kv__text--lt.svg");
}
.contents .kv .kv__main .kv__main--img--subtext.subtext--2 {
    width: calc(11 / 980 * 100%);
    top: 7.8571428571vw;
}
.contents .kv .kv__main .kv__main--img--subtext.subtext--2 span {
    padding-top: calc(232 / 11 * 100%);
    background-image: url("../img/contents/top/kv__text--l.svg");
}
.contents .kv .kv__main .kv__main--img--nami {
    position: absolute;
    width: calc(120 / 980 * 100%);
    height: 4.5714285714vw;
    top: 8.9285714286vw;
    right: -2.8571428571vw;
    overflow: hidden;
    z-index: 5;
}
.contents .kv .kv__main .kv__main--img--nami span {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: calc(100% + 2.4285714286vw);
    background-image: url("../img/contents/top/kv--nami.png");
    background-repeat: repeat-x;
    background-position: left center;
    background-size: 2.4285714286vw auto;
    animation: namiKvAnime 1.5s linear infinite;
    -webkit-animation: namiKvAnime 1.5s linear infinite;
}
.contents .kv .kv__concept {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 2.1428571429vw 2.1428571429vw 0 0;
    background-color: #fffbf6;
    border-top-right-radius: 1.4285714286vw;
    max-width: 80%;
    z-index: 5;
}
.top .contents .kv .kv__concept {
    bottom: -2.1428571429vw;
}
.top .contents .kv .kv__concept:after {
    bottom: 2vw;
}
.top .contents .kv .kv__concept dl {
    white-space: nowrap;
}
.contents .kv .kv__concept:before,
.contents .kv .kv__concept:after {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: 1.5714285714vw;
    height: 1.5714285714vw;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("../img/contents/kv__corner--bottom.svg");
}
.contents .kv .kv__concept:before {
    top: auto;
    bottom: calc(100% - 0.1428571429vw);
    left: 2vw;
}
.contents .kv .kv__concept:after {
    top: auto;
    bottom: -0.1428571429vw;
    left: calc(100% - 0.1428571429vw);
}
.contents .kv .kv__concept dl dt {
    font-size: 24px;
    font-size: 1.7142857143vw;
    line-height: 1;
    font-weight: bold;
    margin-bottom: 0.8571428571vw;
}
.contents .kv .kv__concept dl dd {
    font-size: 15px;
    font-size: 1.0714285714vw;
    line-height: 2;
}
.contents .kv .kv__concept .kv__concept--title {
    width: 13.5vw;
}
.contents .kv .kv__concept .kv__concept--title span {
    display: block;
    text-indent: -9999px;
    height: 0;
    padding-top: calc(50 / 189 * 100%);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.contents .kv .weather {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.9285714286vw 1.2857142857vw 1.0714285714vw;
    background-color: #fffbf6;
    border-bottom-left-radius: 1.4285714286vw;
    z-index: 5;
}
.contents .kv .weather:before,
.contents .kv .weather:after {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: 1.5714285714vw;
    height: 1.5714285714vw;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("../img/common/weather__corner.svg");
}
.contents .kv .weather:before {
    top: -0.1428571429vw;
    left: auto;
    right: calc(100% - 0.1428571429vw);
}
.contents .kv .weather:after {
    top: calc(100% - 0.1428571429vw);
    left: auto;
    right: -0.1428571429vw;
}
.contents .kv .weather dl {
    text-align: center;
}
.contents .kv .weather dl dt,
.contents .kv .weather dl dd {
    line-height: 1;
    white-space: nowrap;
}
.contents .kv .weather dl dt {
    position: relative;
    display: inline-block;
    font-size: 24px;
    font-size: 1.7142857143vw;
    padding-left: 2.5vw;
    margin-bottom: 0.7142857143vw;
    letter-spacing: 0.05em;
    width: 5.3571428571vw;
}
.contents .kv .weather dl dt span {
    display: block;
    position: absolute;
    width: 1.7857142857vw;
    height: 1.7857142857vw;
    left: 10%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.contents .kv .weather dl dt strong {
    font-weight: normal;
}
.contents .kv .weather dl dt.sun span {
    background-image: url("../img/common/weather__icon--sun.svg");
}
.contents .kv .weather dl dt.cloud span {
    background-image: url("../img/common/weather__icon--cloud.svg");
}
.contents .kv .weather dl dt.suncloud span {
    background-image: url("../img/common/weather__icon--suncloud.svg");
}
.contents .kv .weather dl dt.rain span {
    background-image: url("../img/common/weather__icon--rain.svg");
}
.contents .kv .weather dl dt.snow span {
    background-image: url("../img/common/weather__icon--snow.svg");
}
.contents .kv .weather dl dd {
    font-size: 10px;
    font-size: 0.7142857143vw;
    font-weight: 600;
}
.main_contents {
    position: relative;
    margin-right: 4.4vw;
    margin-left: 4.4vw;
    margin-top: 100px;
}
#kv_main {
    position: relative;
    /* can either be relative, absolute or fixed. If position is not set (i.e. static), it would be set to "relative" by script */
    
    overflow: hidden;
    /* to bound the empty top space created by inner element's top margin */
    
    width: 100%;
    /* min-height: 400px; */
    /*   height:100vh; */
    
    background-color: #fff;
    height: calc(100vh - 5.5rem - 6.4vw);
    height: calc(var(--vh, 1vh)*100 - 5.5rem - 15.4vw);
    margin-bottom: 6.4vw;
    border-radius: 0.5em;
}
.kv_main-inner-content {
    position: relative;
    /* if position is not set, the script will set it to 'relative'. */
    
    z-index: 2;
    /* if z-index is not set, the script will set it to '2'. */
    
    margin: 300px auto;
    padding: 40px;
    max-width: 800px;
    color: #fff;
    text-align: center;
    font-size: 1.5em;
}
.kv_main-inner-content h1 {
    font-size: 40px;
    margin: 0;
}
#kv_main .weather {
    position: absolute;
    top: 20px;
    left: 20px;
    padding: 0.9285714286vw 1.2857142857vw 1.0714285714vw;
    background-color: #ffffff;
    border-bottom-right-radius: 1.4285714286vw;
    border-top-left-radius: 1.4285714286vw;
    z-index: 5;
    font-size: 30px;
}
#kv_main .weather:before,
#kv_main .weather:after {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: 1.5714285714vw;
    height: 1.5714285714vw;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("../img/common/weather__corner.svg");
}
#kv_main .weather:before {
    top: -0.1428571429vw;
    left: auto;
    right: calc(100% - 0.1428571429vw);
}
#kv_main .weather:after {
    top: calc(100% - 0.1428571429vw);
    left: auto;
    right: -0.1428571429vw;
}
#kv_main .weather .text--red {
    font-size: 26px;
    margin-bottom: 0;
}



#kv_main .recruit{position:absolute;top: 7%;right: 2.5%;width: 350px;}
#kv_main .recruit img{width: 100%;}







.slide_pc {
    display: block
}
.slide_sp {
    display: none
}
@media only screen and (max-width: 768px) {
    .slide_pc {
        display: none
    }
    
    .slide_sp {
        display: block
    }
    
    .hero__container {
        height: calc(100vh - 5.5rem - 6.4vw);
        height: calc(var(--vh, 1vh)*100 - 5.5rem - 6.4vw);
        margin-bottom: 6.4vw;
    }
}
@media only screen and (max-width: 414px) {
    #kv_main .weather {
        position: absolute;
        top: 10%;
        left: 10px;
        right: 10px;
        padding: 0.9285714286vw 1.2857142857vw 1.0714285714vw;
        background-color: #ffffff;
        border-bottom-right-radius: 1.4285714286vw;
        border-top-right-radius: 1.4285714286vw;
        z-index: 5;
        height: auto;
    }
    
    #kv_main .weather .text--red {
        font-size: 18px;
        overflow: auto;
    }

    #kv_main .recruit{position:absolute;top: 130%;right:5%;width: 300px;}
    #kv_main .recruit img{width: 100%;}
    
    


    
}

/* --------------------------------------------------------- */

/* KV */
.kv {
    --speed: 1000ms;
    --delay: 8500ms;
    --width: 40px;
    position: relative;
    width: 100%;
    height: calc(100vh - 80px);
    min-height: 500px;
    margin-bottom: 20px;
    overflow: hidden;
}
.ios .kv {
    height: calc(100vh - 180px);
}
.kv-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transition-property: transform;
    transition-duration: var(--speed);
}
@media screen and (min-width: 1280px) {
    .kv {
        --width: 15vw;
        height: calc(100vh - 120px);
        min-height: 900px;
        margin-top: 0;
        margin-bottom: 160px;
    }
    
    .kv-inner {
        position: relative;
        width: calc(100% + var(--width));
        left: calc(var(--width) / 2 * -1);
        transition-property: transform;
        transition-duration: var(--speed);
    }
    /* slideChange */
    
    .slideChange .kv-inner {
        transition-duration: calc(var(--speed) - 0.2s);
        transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
        transition-delay: 0.2s;
        transform: translate3d(calc(var(--width) / 2), 0, 0);
    }
    /* transitionEnd */
    
    .transitionEnd .kv-inner {
        transition-duration: var(--delay);
        transition-timing-function: linear;
        transform: translate3d(calc(var(--width) / 3 * -1), 0, 0);
        transition-delay: 0s;
    }
    /* swiping transition */
    
    .slideChange.touchMove .kv-inner {
        transition-timing-function: cubic-bezier(.08, .82, .17, 1);
    }
}

/* init ---------- */
.kv .swiper-container {
    opacity: 0;
}
.kv .swiper-container.init {
    opacity: 1;
}

/* ---------- */

/* .swiper-slide */
.kv__item {
    position: relative;
    transform: translate3d(0, 0, 0);
    box-sizing: border-box;
    overflow: hidden;
    width: calc(90% - 0px);
    height: 100%;
}
@media screen and (min-width: 1280px) {
    .kv__item {
        width: calc(80%);
    }
}

/* ---------- */
.kv__bg {
    position: relative;
    width: 100%;
    height: 60%;
    z-index: 1;
    overflow: hidden;
    transition: 3s cubic-bezier(.77, 0, .18, 1);
    transition-property: width;
    border-radius: 0;
    background-color: rgb(244, 243, 235);
}

/* swiping transition */
.slideChange.touchMove .kv__bg {
    transition-timing-function: cubic-bezier(.08, .82, .17, 1);
}
.kv__bg-inner {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 0;
}
.kv__bg-inner:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    z-index: 1;
}
@keyframes gradient {
    0% {
        background-position: 0% 0%;
    }
    
    100% {
        background-position: 400% 0%;
    }
}
@media screen and (min-width: 1280px) {
    .kv__bg {
        height: 100%;
    }
    
    .init .kv__bg-inner:before {
        background-image: linear-gradient(110deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 60%, rgba(255, 255, 255, 0) 80%);
        background-size: 250% 100%;
        background-repeat: no-repeat;
        animation: gradient 5s cubic-bezier(.77, 0, .18, 1) 1;
        animation-fill-mode: forwards;
    }
    
    .msie .kv__bg-inner {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    
    .msie .kv__bg-inner img {
        display: none;
    }
    
    .kv__bg .img-in-corner::before,
    .kv__bg .img-in-corner::after {
        width: 35px;
        height: 35px;
    }
}
.kv__bg-inner img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    /*-webkit-clip-path: circle(0% at -10% -10%);
	        clip-path: circle(0% at -10% -10%);*/
}
.init .kv__bg img {
    opacity: 1;
    /*-webkit-clip-path: circle(142% at 0% 0%);
	        clip-path: circle(142% at 0% 0%);*/
    
    transition: 3s cubic-bezier(.77, 0, .18, 1);
    --delay: 0.5s;
    --base-time: 0.25s;
}
.init .kv__item:nth-child(1) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(2) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(3) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(4) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(5) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 1);
}
.init .kv__item:nth-child(6) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 2);
}
.init .kv__item:nth-child(7) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 3);
}
.init .kv__item:nth-child(8) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 4);
}
.init .kv__item:nth-child(9) .kv__bg-inner:before {
    animation-delay: calc(var(--base-time) + var(--delay) * 5);
}
.init .kv__item:nth-child(1) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(2) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(3) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(4) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 0);
}
.init .kv__item:nth-child(5) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 1);
}
.init .kv__item:nth-child(6) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 2);
}
.init .kv__item:nth-child(7) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 3);
}
.init .kv__item:nth-child(8) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 4);
}
.init .kv__item:nth-child(9) .kv__bg img {
    transition-delay: calc(var(--base-time) + var(--delay) * 5);
}
.kv__bg-icon {
    position: absolute;
    right: 0;
    bottom: 0;
    top: auto;
    display: block;
    width: 40px;
    padding: 10px 0 10px 10px;
    box-sizing: border-box;
    border-radius: 15px 0 0 0;
    background-color: #fff;
    z-index: 3;
}
.kv__bg-icon::before,
.kv__bg-icon::after {
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    content: "";
    background-image: var(--svg-round-out-corners-RB-wt);
    background-size: cover;
}
.kv__bg-icon::before {
    left: -20px;
    top: auto;
    bottom: 0;
}
.kv__bg-icon::after {
    top: -20px;
    right: 0;
    bottom: auto;
}
.kv__bg-icon .in-corner {
    pointer-events: none;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
}
.kv__bg-icon .in-corner::before {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    content: "";
    background-image: var(--svg-round-in-corners-RB-wt);
    background-size: cover;
}
.kv__bg-icon .icon {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 30px;
}
.kv__bg-icon .icon svg {
    display: block;
    margin: auto;
}
.kv__bg-icon .label {
    writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    display: block;
    overflow: hidden;
    width: 2.4rem;
    height: 0;
    white-space: nowrap;
    opacity: 0;
    transition-property: height, opacity;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(.77, 0, .18, 1);
    font-size: 1.0rem;
}
.transitionEnd [class*='active'] .kv__bg,
.transitionStart [class*='active'] .kv__bg {}
.transitionEnd [class*='active'] a:hover .kv__bg-icon .label {
    height: 80px;
    opacity: 1;
    transition-delay: 0s, 0.25s;
}
@media screen and (min-width: 1280px) {
    .transitionEnd [class*='active'] .kv__bg,
    .transitionStart [class*='active'] .kv__bg {
        width: 70%;
    }
    
    .msie .transitionEnd .kv__bg,
    .msie .transitionStart .kv__bg {
        width: 70% !important;
    }
}

/* ---------- */
.kv__txt-container {
    position: absolute;
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 5;
    padding: 0;
    color: rgba(60, 60, 60, 1);
    width: 100%;
    height: 40%;
    text-align: center;
}
.kv__txt-container-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: auto;
    padding: 0;
    box-sizing: border-box;
    opacity: 0;
    transform: translate3d(0, 0, 0);
    transition: var(--speed) linear;
    transition-property: opacity, transform;
}
.transitionEnd [class*='active'] .kv__txt-container-inner {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition-timing-function: linear;
    transition-duration: 0.5s;
}
.msie .kv__txt-container-inner {
    transform: translate3d(0, 0, 0) !important;
}
.kv__txt-container-inner>* {
    margin: 0;
    letter-spacing: 0.25em;
}
.kv__subttl {
    position: relative;
    top: 0;
    align-self: center;
    height: auto;
    margin-bottom: 8px;
    padding: 0 5px;
    font-size: 1.1rem;
    font-weight: bold;
    text-indent: 0.1em;
    border: 0.5px solid rgba(0, 0, 0, 0);
    transition: border 0.5s ease-out;
}
.transitionEnd [class*='active'] .kv__subttl {
    border-color: rgba(0, 0, 0, 0.8);
}
.kv__ttl {
    position: relative;
    top: 0;
    line-height: 1.5;
    font-size: 1.2rem;
}
.kv__txt-container .-s,
.kv__txt-container .-m,
.kv__txt-container .-l {
    font-size: 2.2rem;
}
.kv .small {
    font-size: 80%;
}
.kv__read {
    display: block;
    position: relative;
    top: 20px;
    font-size: 1.1rem;
    font-weight: bold;
    letter-spacing: 0.2em;
}
.kv__read>*:last-child {
    margin-left: 0;
}
.kvt {
    display: block;
    overflow: hidden;
    margin-left: 0.2em;
}
@media screen and (min-width: 768px) {
    .kv__txt-container .-s,
    .kv__txt-container .-m,
    .kv__txt-container .-l {
        font-size: 5rem;
    }
}
@media screen and (min-width: 1280px) {
    .kv__txt-container {
        align-items: flex-start;
        align-items: flex-end;
        top: 0;
        bottom: auto;
        width: auto;
        min-width: 30%;
        height: 100%;
        text-align: left;
    }
    
    .kv__txt-container-inner {
        width: auto;
        padding: 100px 0;
        transform: translate3d(-80px, 0, 0);
        opacity: 1;
        writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-feature-settings: normal;
    }
    
    .transitionEnd [class*='active'] .kv__txt-container-inner {
        transform: translate3d(30px, 0, 0);
        transition-timing-function: linear;
        transition-duration: var(--speed), var(--delay);
    }
    
    .kv__ttl {
        margin-left: 20px;
        font-size: 1.6rem;
    }
    
    .contrast-mode--normal .kv__ttl {
        transform: scaleY(0.88);
        transform-origin: 0 0;
        letter-spacing: 0.05em;
    }
    
    .kv__txt-container .-s {
        font-size: 5rem;
    }
    
    .kv__txt-container .-m {
        font-size: 7rem;
    }
    
    .kv__txt-container .-l {
        font-size: 9rem;
    }
    
    .kv__subttl {
        margin-left: 20px;
        padding: 10px 0;
        font-size: 1.3rem;
        align-self: flex-start;
    }
    
    .kvt-inner {
        opacity: 1;
        display: inline-block;
        transform: translateX(-100%);
        transition: 1s cubic-bezier(.22, .61, .36, 1) 1s;
        transition-property: transform, opacity;
        backface-visibility: visible;
    }
    
    .kvt:nth-child(1) .kvt-inner {
        transition-delay: 1.0s;
    }
    
    .kvt:nth-child(2) .kvt-inner {
        transition-delay: 1.1s;
    }
    
    .kvt:nth-child(3) .kvt-inner {
        transition-delay: 1.2s;
    }
    
    .kvt:nth-child(4) .kvt-inner {
        transition-delay: 1.3s;
    }
    
    .kvt:nth-child(5) .kvt-inner {
        transition-delay: 1.4s;
    }
    
    .transitionEnd [class*='active'] .kvt-inner,
    .transitionStart [class*='active'] .kvt-inner {
        transform: translateX(0);
    }
    
    .transitionEnd [class*='prev'] .kvt-inner,
    .transitionStart [class*='prev'] .kvt-inner {
        transition-delay: 0s;
    }
    
    .kv__read {
        display: block;
        top: 80px;
        font-size: 1.65rem;
    }
    
    .contrast-mode--normal .kv__read {
        transform: scaleY(0.88);
        transform-origin: 0 0;
        letter-spacing: 0.075em;
    }
    
    .msie .kv__txt-container-inner {
        transform: translateX(0);
    }
    
    .msie .kvt-inner {
        transform: translateX(0);
    }
}
@media screen and (min-width: 1440px) {
    .kv__txt-container .-s {
        font-size: 9rem;
    }
    
    .kv__txt-container .-m {
        font-size: 11rem;
    }
    
    .kv__txt-container .-l {
        font-size: 13rem;
    }
}

/* Anchor ---------- */
.kv__item-anchor {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: calc(100% - 40px);
    margin: 0 auto;
    box-sizing: border-box;
    pointer-events: none;
}
.swiper-slide-active .kv__item-anchor {
    pointer-events: auto
}
@media screen and (min-width: 1280px) {
    .kv__bg:before {
        position: absolute;
        left: 0;
        top: 0;
        display: block;
        content: "";
        width: 100%;
        height: 100%;
        z-index: 5;
        border: 3px solid rgba(0, 0, 0, 0);
        transition: border 0.25s ease-in-out;
        box-sizing: border-box;
        border-radius: 13px;
    }
    
    .swiper-slide-active .kv__bg:before {
        pointer-events: auto;
        border-color: currentColor;
    }
    
    .contrast-mode--normal .kv__bg:before {
        z-index: 2;
        transition: box-shadow 0.25s ease-in-out;
        border: none;
        /*box-shadow: inset 0 0 0 rgba(0,0,0,0);*/
    }
    
    .contrast-mode--normal .swiper-slide-active a:hover .kv__bg:before {
        /*box-shadow: inset 0 0 20px rgba(0,0,0,0.25);*/
    }
    
    .swiper-slide-active a:hover .kv__bg-icon {}
}

/* Swiper ------------------------------------------------------------------ */
.swiper-container {
    position: relative;
    height: 100%;
    margin: 0 auto;
}
.swiper-wrapper {
    height: calc(100% - 0px);
    margin: 0;
    transition-timing-function: cubic-bezier(.65, .05, .36, 1);
}

/* swiping transition */
.slideChange.touchMove .swiper-wrapper {
    transition-timing-function: cubic-bezier(.08, .82, .17, 1);
}

/* swiper-ui --------------------------------------------------------------- */
.swiper-ui {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 60px;
    height: 100%;
    width: 100% - 0;
    margin: auto;
    pointer-events: none;
    box-sizing: border-box;
}
.swiper-ui>* {
    pointer-events: auto;
}

/* ----- */
.swiper-button-next,
.swiper-button-prev {
    display: flex;
    align-items: center;
    width: auto;
    height: auto;
    z-index: 10;
    cursor: pointer;
    background: transparent;
    border-radius: 5px;
    padding: 0;
    border: 1px solid rgba(100, 100, 100, 0) !important;
    outline: none;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    top: auto;
    bottom: 0;
    right: 0;
    left: auto;
    margin: auto;
}
.swiper-button-next svg,
.swiper-button-prev svg {
    width: 36px;
    height: 36px;
}
.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 0px;
}

/* ----- */
.swiper-pagination {
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    pointer-events: none;
    color: rgba(50, 50, 50, 1);
}
.swiper-pagination-bullet {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 1px;
    margin: 0 10px;
    padding: 10px 5px;
    border-radius: 0;
    background: transparent;
    border: none !important;
    opacity: 0.6;
    transition: all 0.2s ease-out;
    pointer-events: auto;
    outline: none;
}
.swiper-pagination-bullet:before,
.swiper-pagination-bullet:after {
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    opacity: 0;
    transition: 0.3s ease-in-out;
    transition-property: opacity, height;
    box-sizing: border-box;
    border-radius: 5px;
    background-image: var(--svg-v-line_2-bk);
}
.msie .swiper-pagination-bullet:before,
.msie .swiper-pagination-bullet:after {
    background-color: rgba(0, 0, 0, 0.5);
}
.swiper-pagination-bullet:before {}
.swiper-pagination-bullet:after {
    top: 0;
    opacity: 1;
}
.swiper-pagination-bullet-active {
    border: none !important;
    opacity: 1;
}
.swiper-pagination-bullet-active:after {
    height: 3px;
    opacity: 0.25;
}
.swiper-pagination-bullet-active:before {
    opacity: 1;
    height: 6px;
    animation: bulletBar var(--delay) 1 linear 0s;
    animation-fill-mode: forwards;
    transition: opacity 0.3s ease;
}
@keyframes bulletBar {
    0% {
        width: 0;
    }
    
    100% {
        width: 100%;
    }
}
@media screen and (min-width: 1280px) {
    .swiper-ui {
        bottom: 0;
    }
    
    .swiper-button-next,
    .swiper-button-prev {
        height: calc(100% - 41px);
        padding: 0 30px;
        transition: 0.2s ease-out;
        transition-property: background, border;
        border-radius: 0;
        top: 0;
        bottom: auto;
    }
    
    .swiper-button-next {}
    
    .swiper-button-prev {}
    
    .swiper-button-next:hover,
    .swiper-button-prev:hover {
        background-color: rgba(255, 255, 255, 0.5);
        border-color: transparent;
    }
    
    .swiper-button-next svg,
    .swiper-button-prev svg {
        width: 46px;
        height: 46px;
        stroke-width: 0.7;
    }
    
    .swiper-pagination {
        right: 60px;
        justify-content: flex-end;
    }
    
    .swiper-pagination-bullet {
        width: 50px;
        border-style: solid;
        margin: 0 5px;
    }
    
    .swiper-container-horizontal>.swiper-pagination-bullets,
    .swiper-pagination-custom,
    .swiper-pagination-fraction {
        bottom: 5px;
    }
}
.local-kv__img {
    margin: 0;
    display: block;
    width: 100%;
    height: auto;
    min-height: 70vh;
    object-fit: cover;
}
.local-kv__img img {
    width: 100%;
}
@media screen and (min-width: 768px) {
    .local-kv__ttl {
        font-size: 3.6rem;
    }
}
@media screen and (min-width: 1280px) {
    .local-kv {
        width: calc(100% - 160px);
        margin: 0 auto 80px;
    }
    
    .local-kv__ttl-outer {
        right: -40px;
    }
    
    .local-kv__ttl {
        font-size: 4.6rem;
        background-color: #fff;
    }
}
:root {
    --base-color: rgb(0, 0, 0);
    --color-a-link: #0000ee;
    --color-a-visited: #551a8b;
    --color-a-active: #000;
    --color-a-focus: #663366;
    /* Round Cut Corners */
    /* --svg-round-out-corners-LT-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M40%2C0L0%2C0l0%2C40c0-2.032%2C0-20.274%2C0.731-25.376C1.858%2C6.754%2C6.459%2C2.116%2C13.332%2C0.902C18.435%2C0%2C39%2C0%2C40%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-out-corners-RT-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M40%2C40V0L0%2C0c2.032%2C0%2C20.274%2C0%2C25.376%2C0.731c7.87%2C1.127%2C12.508%2C5.728%2C13.722%2C12.602C40%2C18.435%2C40%2C39%2C40%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-out-corners-LB-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C0l0%2C40h40c-2.032%2C0-20.274%2C0-25.376-0.731c-7.87-1.127-12.508-5.728-13.722-12.602C0%2C21.565%2C0%2C1%2C0%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-out-corners-RB-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C40h40V0c0%2C2.032%2C0%2C20.274-0.731%2C25.376c-1.127%2C7.87-5.728%2C12.508-12.602%2C13.722C21.565%2C40%2C1%2C40%2C0%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-in-corners-LT-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C40V0l40%2C0c0%2C2.032%2C0%2C20.274-0.731%2C25.376c-1.127%2C7.87-5.728%2C12.508-12.602%2C13.722C21.565%2C40%2C1%2C40%2C0%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-in-corners-RT-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C0h40v40c-2.032%2C0-20.274%2C0-25.376-0.731c-7.87-1.127-12.508-5.728-13.722-12.602C0%2C21.565%2C0%2C1%2C0%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-in-corners-LB-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M40%2C40H0L0%2C0c2.032%2C0%2C20.274%2C0%2C25.376%2C0.731c7.87%2C1.127%2C12.508%2C5.728%2C13.722%2C12.602C40%2C18.435%2C40%2C39%2C40%2C40z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-round-in-corners-RB-wt: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2240px%22%20height%3D%2240px%22%20viewBox%3D%220%200%2040%2040%22%20style%3D%22enable-background%3Anew%200%200%2040%2040%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M40%2C0v40H0c0-2.032%2C0-20.274%2C0.731-25.376C1.858%2C6.754%2C6.459%2C2.116%2C13.332%2C0.902C18.435%2C0%2C39%2C0%2C40%2C0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E'); */
    /* Round Cut Corners */
    /* --svg-round-out-corners-LT: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M50%2C0H0v50C0%2C22.39%2C22.39%2C0%2C50%2C0z%22%2F%3E%3C%2Fsvg%3E");
	--svg-round-out-corners-RT: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M0%2C0c27.61%2C0%2C50%2C22.39%2C50%2C50V0H0z%22%2F%3E%3C%2Fsvg%3E");
	--svg-round-out-corners-LB: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M0%2C0v50h50C22.39%2C50%2C0%2C27.61%2C0%2C0z%22%2F%3E%3C%2Fsvg%3E");
	--svg-round-out-corners-RB: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M0%2C50h50V0C50%2C27.61%2C27.61%2C50%2C0%2C50z%22%2F%3E%3C%2Fsvg%3E"); */
    /* icon_more_horiz */
    /* --svg-icon_more_horiz: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2224px%22%20height%3D%2224px%22%20viewBox%3D%220%200%2024%2024%22%20style%3D%22enable-background%3Anew%200%200%2024%2024%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%20.st1%7Bfill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A0.8%3Bstroke-miterlimit%3A10%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%20id%3D%22regular_1_%22%3E%20%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C0h24v24H0V0z%22%2F%3E%3C%2Fg%3E%3Cpath%20class%3D%22st1%22%20d%3D%22M1.6%2C16.6C12%2C16.6%2C12%2C7.4%2C22.4%2C7.4%22%2F%3E%3C%2Fsvg%3E'); */
    /* svg graphic pattern*/
    /* --svg-h-line-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%226px%22%20height%3D%2220px%22%20viewBox%3D%220%200%206%2020%22%20style%3D%22enable-background%3Anew%200%200%206%2020%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%226%2C0.5%206%2C0%200%2C0%200%2C1%20%22%2F%3E%3Cpolygon%20points%3D%225%2C4.5%205%2C4%200%2C4%200%2C5%20%22%2F%3E%3Cpolygon%20points%3D%226%2C9%206%2C8.5%200%2C8%200%2C9%20%22%2F%3E%3Cpolygon%20points%3D%226%2C13%206%2C12%200.4%2C12.5%200.4%2C13%20%22%2F%3E%3Crect%20x%3D%22-7%22%20y%3D%227%22%20transform%3D%22matrix(8.981242e-11%201%20-1%208.981242e-11%2013%207)%22%20class%3D%22gas%22%20width%3D%2220%22%20height%3D%226%22%2F%3E%3Cpolygon%20points%3D%225%2C16.5%205%2C16%200%2C16%200%2C17%20%22%2F%3E%3C%2Fsvg%3E');
	--svg-h-line_2-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2212.1px%22%20height%3D%2220px%22%20viewBox%3D%220%200%2012.1%2020%22%20style%3D%22enable-background%3Anew%200%200%2012.1%2020%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%2211.9%2C0.5%2012.1%2C0%200.1%2C0%200.3%2C1%20%22%2F%3E%3Cpolygon%20points%3D%2211.6%2C4.5%2011.4%2C4%200.3%2C4%200.1%2C5%20%22%2F%3E%3Cpolygon%20points%3D%2212.1%2C9%2012.1%2C8.5%200.1%2C8%200.3%2C9%20%22%2F%3E%3Cpolygon%20points%3D%2212.1%2C13%2011.9%2C12.4%200.1%2C12.2%200.3%2C13%20%22%2F%3E%3Crect%20x%3D%22-3.9%22%20y%3D%224%22%20transform%3D%22matrix(8.976712e-11%201%20-1%208.976712e-11%2016.0851%203.9149)%22%20class%3D%22gas%22%20width%3D%2220%22%20height%3D%2212%22%2F%3E%3Cpolygon%20points%3D%2211.6%2C16.5%2011.6%2C16%200.3%2C16%200.1%2C17%20%22%2F%3E%3Cpolygon%20points%3D%2211.5%2C10.5%2011.5%2C11%200.2%2C11%200.1%2C10%20%22%2F%3E%3Cpolygon%20points%3D%2212.1%2C14%2012.1%2C14.5%200.2%2C15%200.1%2C14%20%22%2F%3E%3Cpolygon%20points%3D%2211.9%2C18.3%2011.9%2C18.8%200.2%2C19%200.1%2C18%20%22%2F%3E%3Cpolygon%20points%3D%2211.9%2C6%2011.8%2C6.7%200%2C6.8%200.2%2C6%20%22%2F%3E%3Cpolygon%20points%3D%2211.7%2C2.5%2011.7%2C3%200.2%2C3%200.1%2C2%20%22%2F%3E%3C%2Fsvg%3E');
	--svg-v-line-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2220px%22%20height%3D%226px%22%20viewBox%3D%220%200%2020%206%22%20style%3D%22enable-background%3Anew%200%200%2020%206%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%220.5%2C6%200%2C6%200%2C0%201%2C0%20%22%2F%3E%3Cpolygon%20points%3D%224.5%2C5%204%2C5%204%2C0%205%2C0%20%22%2F%3E%3Cpolygon%20points%3D%229%2C6%208.5%2C6%208%2C0%209%2C0%20%22%2F%3E%3Cpolygon%20points%3D%2213%2C6%2012%2C6%2012.5%2C0.4%2013%2C0.4%20%22%2F%3E%3Crect%20class%3D%22gas%22%20width%3D%2220%22%20height%3D%226%22%2F%3E%3Cpolygon%20points%3D%2216.5%2C5%2016%2C5%2016%2C0%2017%2C0%20%22%2F%3E%3C%2Fsvg%3E');
	--svg-v-line_2-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2220px%22%20height%3D%2212.1px%22%20viewBox%3D%220%200%2020%2012.1%22%20style%3D%22enable-background%3Anew%200%200%2020%2012.1%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%220.5%2C11.9%200%2C12.1%200%2C0.1%201%2C0.3%20%22%2F%3E%3Cpolygon%20points%3D%224.5%2C11.6%204%2C11.4%204%2C0.3%205%2C0.1%20%22%2F%3E%3Cpolygon%20points%3D%229%2C12.1%208.5%2C12.1%208%2C0.1%209%2C0.3%20%22%2F%3E%3Cpolygon%20points%3D%2213%2C12.1%2012.4%2C11.9%2012.2%2C0.1%2013%2C0.3%20%22%2F%3E%3Crect%20y%3D%220.1%22%20class%3D%22gas%22%20width%3D%2220%22%20height%3D%2212%22%2F%3E%3Cpolygon%20points%3D%2216.5%2C11.6%2016%2C11.6%2016%2C0.3%2017%2C0.1%20%22%2F%3E%3Cpolygon%20points%3D%2210.5%2C11.5%2011%2C11.5%2011%2C0.2%2010%2C0.1%20%22%2F%3E%3Cpolygon%20points%3D%2214%2C12.1%2014.5%2C12.1%2015%2C0.2%2014%2C0.1%20%22%2F%3E%3Cpolygon%20points%3D%2218.3%2C11.9%2018.8%2C11.9%2019%2C0.2%2018%2C0.1%20%22%2F%3E%3Cpolygon%20points%3D%226%2C11.9%206.7%2C11.8%206.8%2C0%206%2C0.2%20%22%2F%3E%3Cpolygon%20points%3D%222.5%2C11.7%203%2C11.7%203%2C0.2%202%2C0.1%20%22%2F%3E%3C%2Fsvg%3E');
	--svg-v-zigzag-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2220px%22%20height%3D%226px%22%20viewBox%3D%220%200%2020%206%22%20style%3D%22enable-background%3Anew%200%200%2020%206%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cg%3E%20%3Cpolygon%20class%3D%22gas%22%20points%3D%223.7%2C0.5%204.4%2C1.2%204.3%2C1.3%206.9%2C4.3%209.8%2C0.8%209.8%2C0.8%2010.1%2C0.4%2010.1%2C0.4%2010.3%2C0.3%2011%2C1%2010.8%2C1.1%2013.6%2C3.9%2016.8%2C0.8%2017%2C1%2017.3%2C0.6%2020%2C3.9%2020%2C0%200%2C0%200%2C3.7%200.2%2C4%20%22%2F%3E%20%3Cpolygon%20class%3D%22gas%22%20points%3D%2214%2C4.3%2014.1%2C4.4%2013.4%2C5.1%2010.4%2C1.6%206.7%2C5.2%206.4%2C4.9%206.5%2C4.7%203.6%2C1.9%200.6%2C4.4%200.7%2C4.5%200.3%2C4.9%200.2%2C4.8%200%2C4.9%200%2C6%2020%2C6%2020%2C4.7%2017.1%2C1.8%20%22%2F%3E%20%3Cpolygon%20points%3D%2217.3%2C0.6%2017%2C1%2016.8%2C0.8%2013.6%2C3.9%2010.8%2C1.1%2011%2C1%2010.3%2C0.3%2010.1%2C0.4%2010.1%2C0.4%209.8%2C0.8%209.8%2C0.8%206.9%2C4.3%204.3%2C1.3%204.4%2C1.2%203.7%2C0.5%200.2%2C4%200%2C3.7%200%2C4.9%200.2%2C4.8%200.3%2C4.9%200.7%2C4.5%200.6%2C4.4%203.6%2C1.9%206.5%2C4.7%206.4%2C4.9%206.7%2C5.2%2010.4%2C1.6%2013.4%2C5.1%2014.1%2C4.4%2014%2C4.3%2017.1%2C1.8%2020%2C4.7%2020%2C3.9%20%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	--svg-v-curve-bk: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2220px%22%20height%3D%226px%22%20viewBox%3D%220%200%2020%206%22%20style%3D%22enable-background%3Anew%200%200%2020%206%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.gas%7Bfill%3Anone%3Bstroke%3A%23000000%3Bstroke-miterlimit%3A10%3B%7D%20.st1%7Bfill%3Anone%3B%7D%3C%2Fstyle%3E%3Cdefs%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22gas%22%20d%3D%22M0%2C2c5%2C0%2C5%2C2%2C10%2C2s5-2%2C10-2%22%2F%3E%3Crect%20class%3D%22st1%22%20width%3D%2220%22%20height%3D%226%22%2F%3E%3C%2Fsvg%3E'); */
    /* Our business Symbol Color (High saturation) */
    
    --ob-color--a: #f9868b;
    /* 児童福祉部門 */
    
    --ob-color--b: #fcc73b;
    /* 障害福祉部門 */
    
    --ob-color--c: #51d8c7;
    /* 高齢福祉部門 */
    /* Our business Symbol Color (Middle saturation) */
    
    --ob-color--a-2: #e08689;
    --ob-color--b-2: #eebd3a;
    --ob-color--c-2: #64cbbe;
    /* Our business Symbol Color (Low saturation) */
    
    --ob-color--a-3: #e2bbbc;
    --ob-color--b-3: #e4cf98;
    --ob-color--c-3: #a9dad4;
}

/*
 * Layout / inner-container
 * Layout / global-header
 *  - global-navigation
 *  - menu-button
 *  - Gnav Show-hide enent
 * Layout / main-wrapper
 * Layout / part
 *   - part-header
 *   - part-body
 *   - part-footer
 * Layout / chapter
 *   - chapter-header
 *   - chapter-body
 *   - chapter-footer
 * Layout / section
 *   - section-header
 *   - section-body
 *   - section-footer
 * Loading Animations
 */

/* Part(部) -> Chapter(章) -> Section(節) -> Subsection(項) -> Subsubsection */

/* ============================================================================================== */

/* Layout - main / inner-container                                                                */

/* ============================================================================================== */
.w-state {
    width: calc(100% - 60px);
    max-width: 1280px;
    position: static;
    margin-right: auto;
    margin-left: auto;
}
.w-state--s {
    width: calc(100% - 60px);
    max-width: 800px;
    position: static;
    margin-right: auto;
    margin-left: auto;
}
.w-state--max {
    width: 100%;
}
@media screen and (min-width: 768px) {
    .w-state,
    .w-state--s {
        width: calc(100% - 80px);
    }
}
@media screen and (min-width: 1280px) {
    .w-state,
    .w-state--s {
        width: calc(100% - 100px);
    }
}

/*
.subpage .w-state {
	max-width: 1200px;
}*/

/* ============================================================================================== */

/* Layout - main / main-wrapper                                                                   */

/* ============================================================================================== */

/* 
 * document wrapper
 */
.main-wrapper {
    padding-top: 60px;
    box-sizing: border-box;
}

/* Desktop */
@media screen and (min-width: 1280px) {
    .main-wrapper {
        padding-top: 100px;
    }
}

/* precedes language --------------------------------------------- */
.lang--ja .lang[data-lang="ja"] {}
.lang--ja .lang[data-lang="en"] {}

/* anchor offset --------------------------------------------- */
.anchor-offset {
    margin-top: -60px !important;
    padding-top: 60px !important;
}
@media screen and (min-width: 1280px) {
    .anchor-offset {
        margin-top: -100px !important;
        padding-top: 100px !important;
    }
}

/* ============================================================================================== */

/* Layout - main / part                                                                           */

/* ============================================================================================== */

/* 
 * part layout : basic
 * part layout : other
 * part-header
 * part-body
 * part-footer
 */

/* part layout : basic */
.part {
    position: relative;
}
@media screen and (min-width: 1280px) {
    .part {}
}

/* part-header ----------------------------------------------------------------- */
.part-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 40px);
    margin: 0 auto 60px;
    padding: 0;
    box-sizing: border-box;
    z-index: 10;
    transition: 0.25s cubic-bezier(.65, .05, .36, 1);
    transition-property: top;
}
.part-header a {
    text-decoration: none;
}
.part-header-inner {
    width: 100%;
    background-color: #fff;
}
.part-header__ttl {
    margin: 0 auto;
    line-height: 1.4;
    text-align: center;
    font-size: 1.8rem;
    letter-spacing: 0.15em;
    text-indent: 0.05em;
}
.part-header__ttl-outer {
    width: auto;
    height: auto;
    min-height: auto;
    min-height: initial;
    margin: 0 auto;
    padding: 0 10px;
    line-height: 1;
    min-width: 100px;
}
.part-header__sub-elm {
    position: absolute;
    margin: 0;
}
@media screen and (min-width: 768px) {
    .subpage .part-header {}
}
@media screen and (min-width: 1280px) {
    .part-header {
        padding-top: 100px;
        margin-bottom: 120px;
        max-width: initial;
        width: calc(100% - 80px);
    }
    
    .part-header__ttl {
        font-size: 2.4rem;
    }
    
    .part-header__sub-elm {
        width: auto;
        top: 40px;
    }
    
    .part-header__sub-elm .part-header__ttl-inner {
        display: inline-flex;
        align-items: center;
    }
}

/* back label --- */
.back-to-index {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 5px;
    box-sizing: border-box;
    font-weight: bold;
    border-radius: 5px;
    border: 1px solid currentColor;
    display: none;
}
.back-to-index .icon {}
.back-to-index .icon svg {
    width: 20px;
    height: 20px;
}
.back-to-index .label {
    display: none;
    letter-spacing: 0.15em;
}
@media screen and (min-width: 1280px) {
    .back-to-index {
        display: flex;
        font-size: 1.4rem;
        padding: 0;
        border-top: none;
        border-left: none;
        border-right: none;
        border-radius: 0;
    }
    
    .back-to-index .icon {
        width: 0;
        overflow: hidden;
        transition: 0.25s cubic-bezier(.65, .05, .36, 1);
        transform: translateX(5px);
        transition-property: opacity, width, transform;
    }
    
    .back-to-index:hover .icon {
        transform: translateX(-5px);
        width: 30px;
    }
    
    .back-to-index .icon svg {
        width: 24px;
        height: 24px;
    }
    
    .back-to-index .label {
        display: block;
        overflow: hidden;
    }
}

/* part-body -------------------------------------------------------------------- */
.part-body {}
@media screen and (min-width: 1280px) {
    .part-body {
        width: 100%;
    }
}

/* part-footer ------------------------------------------------------------------ */
.part-footer {}
.part-footer>* {
    margin: 0;
}
.part-footer>*:last-child {
    margin-bottom: 0;
}
.part-footer__item {
    margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
    .part-footer__item {
        margin-bottom: 40px;
    }
}
@media screen and (min-width: 1280px) {
    .part-footer__item {
        margin-bottom: 80px;
    }
}

/* ============================================================================================== */

/* Layout - main / chapter                                                                        */

/* ============================================================================================== */

/* 
 * chapter-header
 * chapter-body
 * chapter-footer
 */
.chapter {}

/* chapter-header --------------------------------------------------------------- */
.chapter-header {
    margin-bottom: 40px;
    padding-top: 60px;
}
.chapter-header-inner {}
.chapter-header__ttl {
    position: relative;
    margin-bottom: 2em;
    padding-bottom: 1em;
    font-size: 2.2rem;
    font-weight: 400;
    text-align: center;
    color: currentColor;
}
.chapter-header__ttl:before {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    width: 160px;
    height: 1px;
    margin: auto;
    background: currentColor;
    content: "";
    opacity: 0.3;
}
.chapter-header__ttl.-left:before {
    left: 0;
    right: auto;
}
.chapter-header__ttl.-right:before {
    left: auto;
    right: 0;
}
.chapter-header__read {
    margin-bottom: 40px;
    color: rgba(0, 0, 0, 0.7);
    line-height: 2;
}
@media screen and (min-width: 1280px) {
    .chapter-header {
        position: relative;
        display: flex;
        align-items: flex-end;
        min-height: 700px;
        height: 70vh;
        margin: 0 0 60px;
        padding: 0;
    }
    
    .chapter-header.-subchapter {
        min-height: initial;
        margin: auto;
        padding: 20px 0;
    }
    
    .chapter-header-inner {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        max-width: 500px;
        margin-left: 0;
        box-sizing: border-box;
        padding: 40px;
        bottom: 50px;
        z-index: 1;
        background-color: currentColor;
    }
    
    .chapter-header-inner:before {
        position: absolute;
        content: "";
        display: block;
        width: 160px;
        height: 160px;
        background-color: currentColor;
        border-radius: 50%;
        right: -20px;
        bottom: -30px;
        mix-blend-mode: multiply;
        opacity: 0.4;
    }
    
    .chapter-header__ttl {
        position: relative;
        z-index: 1;
        font-size: 3rem;
        line-height: 1.8;
        text-align: left;
        -webkit-text-stroke: 0;
        color: #fff;
    }
    
    .chapter-header.-subchapter .chapter-header-inner {
        bottom: auto;
        padding: 40px 0;
        max-width: initial;
    }
    
    .chapter-header.-subchapter .chapter-header-inner:before {
        display: none;
    }
    
    .chapter-header.-subchapter .chapter-header__ttl {
        color: #000;
    }
    
    .chapter-header__ttl-inner {
        box-sizing: border-box;
    }
    
    .chapter-header__ttl:before {
        left: 0;
        margin-left: 0;
    }
    
    .chapter-header__read {
        position: relative;
        z-index: 1;
        width: 100%;
        margin-bottom: 0;
        font-size: 1.6rem;
        color: #fff;
    }
    
    .chapter-header__read-inner {
        box-sizing: border-box;
    }
    
    .chapter-header__kv {
        position: absolute;
        top: 0;
        bottom: 0;
        right: -50px;
        left: auto;
        margin: auto;
        width: 100%;
        height: 100%;
        opacity: 1;
    }
    
    .chapter-header__kv img {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: auto;
        display: block;
        width: 80%;
        max-width: 800px;
        margin: auto;
    }
}

/* chapter-body ----------------------------------------------------------------- */
.chapter-body {
    padding-bottom: 60px;
}
.chapter-body>*:last-child {
    margin-bottom: 0;
}
.-subchapter+.chapter-body {
    padding-top: 40px;
}
@media screen and (min-width: 1280px) {
    .chapter-body {
        padding-bottom: 100px;
    }
    
    .-subchapter+.chapter-body {
        padding-top: 40px;
    }
}
.chapter-section {
    margin-bottom: 60px;
    padding: 0;
    box-sizing: border-box;
}
@media screen and (min-width: 1280px) {
    .chapter-section {
        margin-bottom: 120px;
    }
}

/* chapter-footer --------------------------------------------------------------- */
.chapter-footer {
    padding-bottom: 60px;
}
.chapter-footer-inner {
    display: flex;
    justify-content: space-between;
}

/* ============================================================================================== */

/* Layout - main / section                                                                        */

/* ============================================================================================== */

/* 
 * section-header
 * section-body
 * section-footer
 */
.section {}

/* chapter-header --------------------------------------------------------------- */
.section-header {
    margin-bottom: 20px;
}
.section-header-inner {}
.section-header__ttl {
    position: relative;
    margin-bottom: 2em;
    padding-bottom: 0;
    font-size: 2.2rem;
    letter-spacing: 0.15em;
    color: #14357b;
    font-weight: 600;
}
.section-header__read {
    font-size: 110%;
}
@media screen and (min-width: 1280px) {
    .section-header {
        margin-bottom: 0;
    }
    
    .section-header__ttl {
        color: #14357b;
        line-height: 1.8;
    }
    
    .section-header-inner {
        position: relative;
        z-index: 1;
    }
    
    .section-header__read {}
}
.head_test {
    margin: 0;
    font-size: 18px;
    position: relative;
    font-weight: normal;
    display: inline-block;
    background-color: #fff;
    color: #14357b;
    margin-left: 20px;
    padding: 0 10px;
}
.head_test-wrap {
    position: relative;
    margin-bottom: 30px;
}
.head_test-wrap:before {
    content: '';
    background-color: #14357b;
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    top: 0;
    bottom: 0;
    margin: auto;
}
@media screen and (min-width: 768px) {
    .head_test {
        margin: 0;
        font-size: 26px;
        position: relative;
        font-weight: normal;
        display: inline-block;
        background-color: #fff;
        color: #14357b;
        margin-left: 20px;
        padding: 0 30px;
    }
}

/* section-body ----------------------------------------------------------------- */
.section-body {}
.section-body__ttl {
    position: relative;
    font-weight: normal;
    font-size: 120%;
}
.section-body__subttl {
    font-weight: normal;
    font-size: 120%;
}
@media screen and (min-width: 1280px) {
    /* header and body layout - Side by side */
    
    .-sbs .section-body {
        width: 75%;
    }
    
    .section-body__subttl {}
}

/* section-footer --------------------------------------------------------------- */
.section-footer {}

/* Loading Animations --------------------------------------------------------------- */

/* main-document-module.cscc の body-overlay に記述 */

/*# sourceMappingURL=base.min.css.map */

/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
    line-height: 1.15;
    /* 1 */
    
    -ms-text-size-adjust: 100%;
    /* 2 */
    
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
     ========================================================================== */

/**
   * Remove the margin in all browsers (opinionated).
   */
body {
    margin: 0;
}

/**
   * Add the correct display in IE 9-.
   */
article,
aside,
footer,
header,
nav,
section {
    display: block;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */

/**
   * Add the correct display in IE 9-.
   * 1. Add the correct display in IE.
   */
figcaption,
figure,
main {
    /* 1 */
    
    display: block;
}

/**
   * Add the correct margin in IE 8.
   */
figure {
    margin: 0;
}

/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
    box-sizing: content-box;
    /* 1 */
    
    height: 0;
    /* 1 */
    
    overflow: visible;
    /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
    font-family: monospace, monospace;
    /* 1 */
    
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
     ========================================================================== */

/**
   * 1. Remove the gray background on active links in IE 10.
   * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
   */
a {
    background-color: transparent;
    /* 1 */
    
    -webkit-text-decoration-skip: objects;
    /* 2 */
}

/**
   * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
    border-bottom: none;
    /* 1 */
    
    text-decoration: underline;
    /* 2 */
    
    text-decoration: underline dotted;
    /* 2 */
}

/**
   * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
   */
b,
strong {
    font-weight: inherit;
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
    font-weight: 600;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    
    font-size: 1em;
    /* 2 */
}

/**
   * Add the correct font style in Android 4.3-.
   */
dfn {
    font-style: italic;
}

/**
   * Add the correct background and color in IE 9-.
   */
mark {
    /*background-color: #ff0;
    color: #000;*/
}

/**
   * Add the correct font size in all browsers.
   */
small {
    font-size: 80%;
    letter-spacing: 0.2em;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
    font-size: 0.9rem;
    line-height: 0;
    position: relative;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}

/* Embedded content
     ========================================================================== */

/**
   * Add the correct display in IE 9-.
   */
audio,
video {
    display: inline-block;
}

/**
   * Add the correct display in iOS 4-7.
   */
audio:not([controls]) {
    display: none;
    height: 0;
}

/**
   * Remove the border on images inside links in IE 10-.
   */
img {
    border-style: none;
}

/**
   * Hide the overflow in IE.
   */
svg:not(:root) {
    overflow: hidden;
}

/* Forms
     ========================================================================== */

/**
   * 1. Change the font styles in all browsers (opinionated).
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    /*font-size: 100%; /* 1 */
    /*line-height: 1.15; /* 1 */
    /*margin: 0; /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
    /* 1 */
    
    overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
    /* 1 */
    
    text-transform: none;
}

/**
   * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
   *    controls in Android 4.
   * 2. Correct the inability to style clickable types in iOS and Safari.
   */
button,
html [type="button"],

/* 1 */
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    /* 2 */
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
    box-sizing: border-box;
    /* 1 */
    
    color: inherit;
    /* 2 */
    
    display: table;
    /* 1 */
    
    max-width: 100%;
    /* 1 */
    
    padding: 0;
    /* 3 */
    
    white-space: normal;
    /* 1 */
}

/**
   * 1. Add the correct display in IE 9-.
   * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
    display: inline-block;
    /* 1 */
    
    vertical-align: baseline;
    /* 2 */
}

/**
   * Remove the default vertical scrollbar in IE.
   */
textarea {
    overflow: auto;
    min-height: 10em;
}

/**
   * 1. Add the correct box sizing in IE 10-.
   * 2. Remove the padding in IE 10-.
   */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    
    padding: 0;
    /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    
    outline-offset: -2px;
    /* 2 */
}

/**
   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
 ::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    
    font: inherit;
    /* 2 */
}

/* Interactive
     ========================================================================== */

/*
   * Add the correct display in IE 9-.
   * 1. Add the correct display in Edge, IE, and Firefox.
   */
details,

/* 1 */
menu {
    display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
    display: list-item;
}

/* Scripting
     ========================================================================== */

/**
   * Add the correct display in IE 9-.
   */
canvas {
    display: inline-block;
}

/**
   * Add the correct display in IE.
   */
template {
    display: none;
}

/* Hidden
     ========================================================================== */

/**
   * Add the correct display in IE 10-.
   */
[hidden] {
    display: none;
}

/* ------------------------------------------------------ */
.subpage .local-kv {
    width: calc(100% - 40px);
    max-width: 1280px;
    background-color: #000;
    border-radius: 15px;
}
.local-kv__ttl-outer {
    height: auto;
}
@media screen and (min-width: 1280px) {
    .local-kv {
        width: calc(100% - 50px);
        margin-bottom: 60px;
        margin-top: 100px;
    }
    
    .part-header {
        margin-bottom: 60px;
    }
}

/* ----------------------------------------------------------------- */
.mainvideo {
    opacity: 0;
}
.mainvideo img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1;
    pointer-events: none;
    opacity: 0;
}
.video_playing .mainvideo img {
    opacity: 0;
}
.mainvideo iframe {
    position: absolute;
    width: 100%;
    height: 100%;
}
.playerAPIready .mainvideo {
    opacity: 1;
    transition: opacity 0.7s ease-out 0.5s;
}
.-hide-mainvideo .mainvideo iframe {
    position: fixed;
    bottom: 15px;
    right: 15px;
    width: 166px;
    height: 93px;
    overflow: hidden;
    border-radius: 10px;
    z-index: 10;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 768px) {
    .-hide-mainvideo .mainvideo iframe {
        width: 25vw;
        height: calc(25vw / 16 * 9);
    }
}
@media screen and (min-width: 1280px) {
    .-hide-mainvideo .mainvideo iframe {
        right: auto;
        top: 15px;
        bottom: auto;
        left: 15px;
        width: 256px;
        height: 144px;
    }
}
.local-kv__ttl-outer {
    opacity: 1;
    transition: 0.5s ease;
}
.video_playing .local-kv__ttl-outer {
    opacity: 0;
    pointer-events: none;
}

/* ----------------------------------------------------------------- */
.transcription {
    position: relative;
}
@media screen and (min-width: 768px) {
    .transcription {}
}
@media screen and (min-width: 1280px) {
    .transcription {}
}
.transcription__body {
    margin-left: auto;
    margin-right: auto;
    counter-reset: count;
}
@media screen and (min-width: 768px) {
    .transcription__body {}
}
@media screen and (min-width: 1280px) {}
.transcription__section {
    margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
    .transcription__section {
        margin-bottom: 60px;
    }
}
@media screen and (min-width: 1280px) {
    .transcription__section {
        margin-bottom: 80px;
    }
}
.transcription__ttl {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 60px;
    padding: 90px 0 60px;
    letter-spacing: 0.15em;
    line-height: 1.8;
    font-size: 1.7rem;
    color: #000;
    text-align: center;
}
.transcription__ttl::before,
.transcription__ttl::after {
    position: absolute;
    display: block;
    content: "";
    left: 0;
    right: 0;
    width: 100%;
    height: 6px;
    opacity: 0.75;
    margin: auto;
}
.transcription__ttl::before {
    top: 0;
    font-size: 1.2rem;
    background-image: var(--svg-v-line-bk);
}
.transcription__ttl::after {
    bottom: 0;
    height: 2px;
    width: 80px;
    background-image: var(--svg-v-line_2-bk);
}
.transcription__ttl:first-of-type::before {
    display: none;
}
@media screen and (min-width: 768px) {
    .transcription__ttl {
        font-size: 2.4rem;
        margin-bottom: 90px;
        padding-top: 120px;
    }
}
@media screen and (min-width: 1280px) {}
.transcription__txt {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    color: rgba(0, 0, 0, 0.65);
    font-feature-settings: normal;
    font-size: 1.2rem;
}
.transcription__txt>* {
    margin-bottom: 2em;
}
.transcription__txt>*:last-child {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .transcription__txt {
        width: calc(100% - 80px);
        text-align: justify;
        font-size: 1.3rem;
    }
}
@media screen and (min-width: 1280px) {}
.listener {
    position: relative;
    margin-bottom: 1.5em;
    padding-bottom: 15px;
    color: #111;
}
.listener::before {
    position: absolute;
    bottom: 0;
    content: "";
    display: inline-block;
    width: 2em;
    height: 1px;
    vertical-align: super;
    background-color: currentColor;
}
@media screen and (min-width: 768px) {
    .listener {
        padding-bottom: 0;
    }
    
    .listener::before {
        position: relative;
        margin-right: 5px;
    }
}
@media screen and (min-width: 1280px) {
    .listener {}
}

/* ----------------------------------------------------------------- */
.qa {
    position: relative;
    max-width: 6000px;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (min-width: 768px) {
    .qa {}
}
@media screen and (min-width: 1280px) {
    .qa {}
}
.qa__body {
    margin-left: auto;
    margin-right: auto;
    text-align: justify;
}
.qa__ttl {
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 15px;
    font-size: 2.0rem;
    color: #000;
    text-align: center;
}
.qalist {
    width: 100%;
    transition: color 0.2s ease;
    font-size: 1.4rem;
}
.qalist__item {
    display: inline;
}
.qalist__item dt {
    display: inline;
    margin: 0;
    color: #999;
    transition: color 0.2s ease;
}
.sa .qalist__item dt {
    color: var(--ob-color--a);
}
.sb .qalist__item dt {
    color: var(--ob-color--b);
}
.sc .qalist__item dt {
    color: var(--ob-color--c);
}
.qalist__item dt::before {
    content: "Q.";
}
.qalist__item dd {
    display: inline;
    margin: 0;
    transition: color 0.2s ease;
}
.qalist__item dd::before {
    content: "A.";
}
.qalist__item dd::after {
    content: "／";
    opacity: 0.5;
}
.qalist__item:last-child dd::after {
    content: "";
}
@media screen and (min-width: 768px) {
    .qa__body {
        width: calc(100%);
    }
    
    .qalist {
        font-size: 2.0rem;
    }
}
@media screen and (min-width: 1280px) {
    .qalist:hover {
        color: #ccc;
    }
    
    .qalist:hover dt {
        color: #ccc;
    }
    
    .qalist:hover dd {
        color: #ccc;
    }
    
    .qalist__item:hover dt {}
    
    .sa .qalist__item:hover dt {
        color: var(--ob-color--a);
    }
    
    .sb .qalist__item:hover dt {
        color: var(--ob-color--b);
    }
    
    .sc .qalist__item:hover dt {
        color: var(--ob-color--c);
    }
    
    .qalist__item:hover dd {
        color: #000;
    }
}

/* ----------------------------------------------------------------- */
.profile {
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding: 40px 0;
}
.profile::before {
    top: 0;
    bottom: auto;
}
.profile__body {
    text-align: center;
}
.profile__img {
    position: relative;
}
.profile__img::before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 6px;
    background-image: var(--svg-v-line-bk);
    opacity: 0.75;
}
.profile__img img {
    position: relative;
    display: block;
    width: 20%;
    max-width: 120px;
    border-radius: 50%;
    margin: 0 auto 20px;
    z-index: 1;
}
.profile__txt {}
.profile__title {
    margin: 0 auto 5px;
    font-size: 1.0rem;
}
.profile__name {
    margin: 0;
    font-size: 1.6rem;
    font-feature-settings: "palt";
    line-height: 1.5;
}
.profile__name rt {
    ruby-align: center;
    font-size: 0.9rem;
}
@media screen and (min-width: 768px) {
    .profile {
        padding: 0;
    }
    
    .profile__title {
        font-size: 1.2rem;
    }
    
    .profile__name {
        font-size: 2.0rem;
    }
}
@media screen and (min-width: 1280px) {}

/* ---------------------------------------------------------------------- */
.peopleIndex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.peopleIndex::before,
.peopleIndex::after {
    content: "";
    display: block;
    width: calc(50% - 15px);
    height: 1px;
    order: 2;
    margin: 0;
}
.peopleIndex__item {
    margin: 0 0 40px;
    width: 100%;
}
.peopleIndex__ttl {
    overflow: hidden;
    border-radius: 5px;
    position: relative;
    margin: 0 auto 20px;
    width: 100%;
    font-size: 110%;
}
.peopleIndex__ttl-img {
    display: block;
    width: 100%;
    transform: scale(1);
    transform-origin: center;
    transition: transform 0.9s cubic-bezier(.19, 1, .22, 1);
}
a:hover .peopleIndex__ttl-img {
    transform: scale(1.1);
}
.peopleIndex__ttl-inner {
    position: absolute;
    left: 0;
    right: auto;
    bottom: 0;
    padding: 15px 18px 0 0;
    border-radius: 0 8px 0 0;
    background-color: #fff;
    z-index: 1;
}
.peopleIndex__ttl-inner:before,
.peopleIndex__ttl-inner:after {
    position: absolute;
    display: block;
    top: 0;
    width: 18px;
    height: 18px;
    content: "";
    background-image: var(--svg-round-out-corners-LB-wt);
    background-size: cover;
}
.peopleIndex__ttl-inner:before {
    left: 0;
    top: -18px;
    bottom: auto;
}
.peopleIndex__ttl-inner:after {
    right: -18px;
    top: auto;
    bottom: 0px;
}
.peopleIndex__subttl-label {
    display: block;
    font-size: 1.0rem;
}
.peopleIndex__name-label {
    display: block;
    font-size: 1.6rem;
}
.peopleIndex__ttl i {
    margin-right: 10px;
}
@media print,
screen and (min-width: 768px) {
    .peopleIndex::before,
    .peopleIndex::after {
        width: calc(50% - 30px);
    }
    
    .peopleIndex__item {
        width: calc(50% - 30px);
        max-width: none;
        max-width: initial;
        margin-left: 0;
        margin-right: 0;
    }
    
    .peopleIndex__ttl {
        width: 100%;
        max-width: 100%;
    }
    
    .peopleIndex__ttl-inner {
        left: 0;
    }
    
    .peopleIndex__ttl-inner::before {
        left: 0;
    }
    
    .peopleIndex__subttl-label {
        font-size: 1.2rem;
    }
    
    .peopleIndex__name-label {
        font-size: 2.0rem;
    }
}
@media screen and (min-width: 1280px) {
    .peopleIndex::before,
    .peopleIndex::after,
    .peopleIndex__item {
        width: calc(33.333% - 30px);
    }
    
    .peopleIndex__ttl-inner {
        padding: 5px 18px 0 0;
        display: flex;
        flex-direction: row-reverse;
        /* background: #ddd; */
    }
    
    .peopleIndex__subttl-label {
        writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }
    
    .peopleIndex__name-label {
        writing-mode: tb-rl;
        writing-mode: vertical-rl;
        writing-mode: horizontal-tb
    }
}