<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">#header #key .box {
    text-align: center;
    padding: 68vw 0 10vw
}

#header #key .box h3 {
    line-height: 1.5;
    font-size: 5.3vw;
    letter-spacing: .1em
}

#header #key .box h3 span {
    display: block;
    font-size: 8vw;
    letter-spacing: .1em
}

#header #key .box .txt {
    margin-top: 3vw;
    font-size: 4.5vw;
    letter-spacing: .2em;
    line-height: 1.5
}

#header #key .box-left {
    background: url("../img/index/key_left.jpg") no-repeat center top/cover
}

#header #key .box-right {
    background: url("../img/index/key_right.jpg") no-repeat center top/cover;
    color: #fff
}

@media screen and (min-width: 1000px) {
    #header #key {
        display: flex
    }

    #header #key .box {
        padding: 586px 0 72px;
        width: 50%;
        transition: .3s all linear;
        height: 1000px;
        box-sizing: border-box
    }

    #header #key .box h3 {
        line-height: 50px;
        font-size: 30px
    }

    #header #key .box h3 span {
        font-size: 56px
    }

    #header #key .box .txt {
        font-size: 24px;
        line-height: 44px;
        letter-spacing: .22em
    }

    #header #key .box .bnr-shared {
        margin-top: 44px
    }

    #header #key .box .bnr-shared a {
        padding: 10px 0 12px
    }

    #header #key .box .bnr-shared a span::before {
        right: 39px
    }

    #header #key .box.box-left h3 {
        letter-spacing: .09em
    }

    #header #key .box.box-left h3 span {
        margin-top: 9px;
        letter-spacing: .05em
    }

    #header #key .box.box-left .txt {
        margin-top: 41px
    }

    #header #key .box.box-right h3 {
        letter-spacing: .14em
    }

    #header #key .box.box-right h3 span {
        margin-top: 19px;
        letter-spacing: -0.055em
    }

    #header #key .box.box-right .txt {
        margin-top: 31px;
        letter-spacing: .15em
    }

    #header #key:hover .box {
        width: 600px;
        background-position: center
    }

    #header #key:hover .box.box-left:hover,
    #header #key:hover .box.box-right:hover {
        width: calc(100% - 600px) !important;
		background-position: center top;
    }
}

@media screen and (min-width: 1000px)and (max-width: 1500px) {
    #header #key .box:hover {
        background-position: center center;
    }
}

@media screen and (min-width: 1000px)and (max-width: 1300px) {
    #header #key .box h3 {
        font-size: 25px
    }

    #header #key .box h3 span {
        font-size: 42px
    }

    #header #key .box .txt {
        font-size: 18px
    }

    #header #key:hover .box {
        width: 450px
    }

    #header #key:hover .box.box-left:hover,
    #header #key:hover .box.box-right:hover {
        width: calc(100% - 450px) !important;
    }
}

.tt-shared {
    position: relative;
    margin: 0 auto
}

.tt-shared::before {
    content: "";
    position: absolute;
    background-color: #cbb412;
    height: 2px;
    width: 17vw;
    left: 0;
    top: 49%;
    transform: translateY(-50%)
}

.tt-shared::after {
    content: "";
    position: absolute;
    background-color: #cbb412;
    height: 2px;
    width: 17vw;
    right: 0;
    top: 49%;
    transform: translateY(-50%)
}

.tt-shared span {
    display: block;
    position: relative;
    text-align: center;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.7;
    font-size: 8.8vw
}

.tt-shared span::before {
    content: "";
    position: absolute;
    background-color: #d8cf8e;
    height: 2px;
    width: 12vw;
    left: 5vw;
    top: 55%;
    transform: translateY(-50%)
}

.tt-shared span::after {
    content: "";
    position: absolute;
    background-color: #d8cf8e;
    height: 2px;
    width: 12vw;
    right: 5vw;
    top: 55%;
    transform: translateY(-50%)
}

@media screen and (min-width: 1000px) {
    .tt-shared::before {
        width: 119px
    }

    .tt-shared::after {
        width: 119px
    }

    .tt-shared span {
        line-height: 48px;
        font-size: 56px;
        padding-left: 2px;
        letter-spacing: .02em
    }

    .tt-shared span::before {
        width: 56px;
        left: 63px;
        top: 59%
    }

    .tt-shared span::after {
        width: 56px;
        top: 59%;
        right: 63px
    }
}

#movie {
    color: #fff
}

#movie .tit {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    padding: 25vw 8% 6vw 0
}

#movie .tit h2 {
    font-size: 5.5vw
}

#movie .tit h2:nth-child(2) {
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: .1em
}

@media screen and (min-width: 1000px) {
    #movie .tit {
        padding: 27px 53px 113px 0
    }

    #movie .tit h2 {
        font-size: 48px
    }

    #movie .tit h2:nth-child(1) {
        font-weight: 900;
        letter-spacing: 0;
        line-height: 66px;
        text-align: right
    }

    #movie .tit h2:nth-child(2) {
        line-height: 72px;
        letter-spacing: .025em;
        padding: 378px 54px 0 0
    }
}

#lead {
    padding: 7vw 0 10vw;
    background: #fff
}

#lead .info {
    margin: 0 2% 0
}

#lead .info h2 {
    text-align: center;
    font-weight: 600;
    letter-spacing: .1em;
    line-height: 1.7;
    font-size: 6.1vw
}

#lead .info .txt {
    margin-top: 5vw
}

@media screen and (min-width: 1000px) {
    #lead {
        padding: 0 0 90px
    }

    #lead .wrap {
        max-width: 1080px;
        display: flex;
        box-sizing: border-box
    }

    #lead .photo {
        height: 600px;
        padding: 100px 0 0 40px
    }

    #lead .photo img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    #lead .info {
        margin: 95px 0 0 51px;
        flex: 1
    }

    #lead .info h2 {
        text-align: left;
        line-height: 60px;
        font-size: 36px;
        letter-spacing: .045em
    }

    #lead .info .txt {
        margin: 38px 20px 0 9px;
        max-width: 504px;
        letter-spacing: .05em
    }
}

#news {
    background-color: #f9f6ea;
    padding: 10vw 0
}

#news .tt-shared {
    width: 70%
}

#news #feed {
    margin-top: 6vw
}

#news #feed .item {
    display: flex;
    align-items: center
}

#news #feed .item .rss-img {
    width: 45%;
    height: 35vw
}

#news #feed .item .rss-img span {
    width: 100% !important;
    height: 100% !important
}

#news #feed .item dl {
    margin-left: 5%;
    line-height: 28px;
    flex: 1
}

#news #feed .item dl dt {
    letter-spacing: .05em;
    color: #8e7f12
}

#news #feed .item dl dd {
    margin-top: 2vw;
    letter-spacing: .05em
}

#news #feed .item+.item {
    margin-top: 6vw
}

#news .bnr-shared {
    margin-top: 6vw
}

@media screen and (min-width: 1000px) {
    #news {
        padding: 101px 0 100px
    }

    #news .tt-shared {
        width: 464px
    }

    #news #feed {
        margin-top: 57px;
        display: flex;
        justify-content: space-between
    }

    #news #feed .item {
        width: 300px;
        align-items: flex-start;
        flex-direction: column
    }

    #news #feed .item .rss-img {
        width: 300px;
        height: 240px
    }

    #news #feed .item dl {
        margin: 23px 18px 0 21px
    }

    #news #feed .item dl dd {
        margin-top: 9px
    }

    #news #feed .item+.item {
        margin-top: 0
    }

    #news .bnr-shared {
        margin: 54px auto 0
    }
}

#school {
    background: url("../img/index/school_bg_sp.jpg") no-repeat center top/cover;
    padding-top: 10vw
}

#school .tt-shared {
    width: 85%
}

#school .gr {
    margin-top: 8vw
}

#school .item {
    display: flex;
    position: relative
}

#school .item a {
    position: absolute;
    inset: 0;
    z-index: 1
}

#school .item .photo {
    width: 50%
}

#school .item .photo img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

#school .item .info {
    background-color: #111;
    color: #fff;
    width: 50%;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    padding: 6vw 4% 5vw
}

#school .item .info h4 {
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 6vw;
    line-height: 1.5;
    letter-spacing: .1em;
    font-weight: 600
}

#school .item .info h4::before {
    content: "";
    position: absolute;
    background: #fff;
    height: 1px;
    width: 25%;
    top: 4vw;
    right: -30%
}

#school .item .info .txt-deco {
    position: absolute;
    top: 5vw;
    left: 49%;
    transform: translateX(-50%);
    font-weight: 900;
    font-size: 14vw;
    opacity: .1;
    line-height: 1;
    letter-spacing: -0.1em
}

#school .item .info .list {
    margin-top: 6vw
}

#school .item .info .list li {
    font-size: 12px
}

#school .item .info .list li:nth-child(1) {
    margin-left: -5.5%
}

#school .item+.item {
    margin-top: 3vw
}

#school .item:nth-child(2) .info .list li:nth-child(2) {
    margin-left: -5.5%
}

#school .item:hover {
    opacity: .8
}

@media screen and (min-width: 1000px) {
    #school {
        padding: 110px 0px 99px;
        background-image: url("../img/index/school_bg.jpg")
    }

    #school .tt-shared {
        width: 550px
    }

    #school .gr {
        margin-top: 81px;
        display: flex;
        justify-content: space-between
    }

    #school .item {
        width: calc(33.3333333333% - 4px);
        padding: 288px 0 25px 40px;
        box-sizing: border-box
    }

    #school .item .info {
        background: none;
        width: 100%;
        padding: 0
    }

    #school .item .info h4 {
        font-size: 20px;
        line-height: 36px;
        font-weight: 500
    }

    #school .item .info h4::before {
        width: 50px;
        top: 50%;
        right: -74px;
        transform: translateY(-50%)
    }

    #school .item .info .list {
        margin: 11px 0 0 3px
    }

    #school .item .info .list li {
        line-height: 30px;
        font-size: 16px
    }

    #school .item:nth-child(1) {
        background: url("../img/index/school_img1_pc.jpg") no-repeat center top/cover
    }

    #school .item:nth-child(1) .info .list li:nth-child(1) {
        margin-left: -13px
    }

    #school .item:nth-child(2) {
        background: url("../img/index/school_img2_pc.jpg") no-repeat center top/cover
    }

    #school .item:nth-child(2) .info .list li:nth-child(1) {
        margin-left: -13px
    }

    #school .item:nth-child(2) .info .list li:nth-child(2) {
        margin-left: -13px
    }

    #school .item:nth-child(3) {
        background: url("../img/index/school_img3_pc.jpg") no-repeat center top/cover;
        padding-left: 31px
    }

    #school .item:nth-child(3) .info .list {
        margin: 8px 0 0
    }

    #school .item:nth-child(3) .info .list li {
        line-height: 36px
    }

    #school .item:nth-child(3) .info .list li:nth-child(1) {
        margin-left: 0
    }

    #school .item:nth-child(3) .info .list li:nth-child(2) {
        margin-left: 12px
    }

    #school .item+.item {
        margin-top: 0
    }
}

#teacher {
    padding: 15vw 0 10vw;
    background: #fff
}

#teacher h2 {
    font-size: 14vw;
    line-height: 1;
    letter-spacing: .05em;
    position: relative
}

#teacher h2::before {
    content: "";
    position: absolute;
    background: url("../img/index/teacher_deco_ttl_sp.png") no-repeat;
    background-size: 100%;
    width: 28%;
    height: 3vw;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

#teacher .inner .box-left .photo {
    margin-top: 12vw
}

#teacher .inner .box-left .box {
    position: relative;
    box-sizing: border-box;
    padding: 4vw;
    margin: -60vw -4% 0;
    background: rgba(255, 255, 255, .8)
}

#teacher .inner .box-left .box .info {
    background: url("../img/index/teacher_deco_border_sp.png") no-repeat center top/100% 100%;
    padding: 10vw 8%
}

#teacher .inner .box-left .box .info h3 {
    font-weight: 600;
    font-size: 4.26vw;
    line-height: 1.5;
    letter-spacing: .1em
}

#teacher .inner .box-left .box .info .list {
    margin-top: 3vw
}

#teacher .inner .box-left .box .info .list li {
    line-height: 24px
}

#teacher .inner .box-left .box .info .list li .txt-color {
    color: #d5007d;
    letter-spacing: .1em
}

#teacher .inner .box-right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 5vw 3% 0
}

#teacher .inner .box-right .item {
    width: 48%;
    margin-bottom: 5vw
}

#teacher .inner .box-right .item dl {
    display: flex;
    justify-content: space-between;
    background: #282828;
    line-height: 22px;
    color: #fff;
    padding: 2vw 4%
}

#teacher .inner .box-right .item dl dt {
    letter-spacing: .1em
}

#teacher .inner .box-right .item dl dt span {
    display: block;
    width: 130%;
    font-size: 10.5px;
    letter-spacing: 0
}

@media screen and (min-width: 1000px) {
    #teacher {
        padding: 105px 0 61px
    }

    #teacher .wrap {
        max-width: 1356px
    }

    #teacher h2 {
        font-size: 72px;
        line-height: 48px;
        margin-left: 87px
    }

    #teacher h2::before {
        background-image: url("../img/index/teacher_deco_ttl_pc.png");
        width: 774px;
        height: 20px;
        right: auto;
        left: 385px
    }

    #teacher .inner {
        display: flex
    }

    #teacher .inner .box-left {
        width: calc(50% - 28px)
    }

    #teacher .inner .box-left .photo {
        margin-top: 49px
    }

    #teacher .inner .box-left .box {
        margin: -338px 0 0;
        padding: 50px 39px 53px 40px;
        max-width: 650px
    }

    #teacher .inner .box-left .box .info {
        background: url("../img/index/teacher_deco_top_pc.png") no-repeat center top/100%, url("../img/index/teacher_deco_bot_sp.png") no-repeat center bottom/100%;
        padding: 45px 0 49px 34px;
        position: relative
    }

    #teacher .inner .box-left .box .info::before {
        content: "";
        position: absolute;
        background: #cbb412;
        width: 2px;
        top: 80px;
        left: 5px;
        bottom: 80px
    }

    #teacher .inner .box-left .box .info::after {
        content: "";
        position: absolute;
        background: #cbb412;
        width: 2px;
        top: 80px;
        right: 5px;
        bottom: 80px
    }

    #teacher .inner .box-left .box .info h3 {
        font-size: 22px;
        line-height: 44px;
        letter-spacing: 0
    }

    #teacher .inner .box-left .box .info .list {
        margin-top: 7px
    }

    #teacher .inner .box-left .box .info .list li {
        line-height: 30px;
        letter-spacing: .01em
    }

    #teacher .inner .box-right {
        max-width: 550px;
        height: -moz-fit-content;
        height: fit-content;
        margin: 76px 0 0 48px
    }

    #teacher .inner .box-right .item {
        position: relative;
        width: calc(50% - 5px);
        margin-bottom: 10px
    }

    #teacher .inner .box-right .item .photo img {
        width: 100%;
        height: auto
    }

    #teacher .inner .box-right .item dl {
        flex-direction: column;
        box-sizing: border-box;
        align-items: center;
        background: rgba(17, 17, 17, .9);
        line-height: 23px;
        padding: 0 0 14px;
        position: absolute;
        inset: 3px 3px 3px auto
    }

    #teacher .inner .box-right .item dl dt {
        letter-spacing: -0.085em;
        padding: 29px 13px 0 10px
    }

    #teacher .inner .box-right .item dl dt span {
        width: auto;
        font-size: 14px;
        letter-spacing: .03em
    }

    #teacher .inner .box-right .item dl dd {
        letter-spacing: 0
    }
}

@media screen and (min-width: 1000px)and (max-width: 1350px) {
    #teacher .inner .box-left .photo img {
        width: 100%;
        height: auto
    }

    #teacher .inner .box-left .box .info {
        padding-right: 30px
    }

    #teacher .inner .box-right {
        flex: 1
    }
}

@media screen and (min-width: 1000px)and (max-width: 1280px) {
    #teacher h2::before {
        width: calc(100% - 400px)
    }
}</pre></body></html>