@charset "UTF-8";
html {
    font-family: 'ヒラギノ明朝 ProN';
}
body {
    overflow-x: hidden;
    width: 100%;
}
h3 {
    text-align: center;
    font-weight: bold;
}
img {
    max-width: 100%;
}
.wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

.section-title {
    font-size: 57px;
    text-align: center;
    margin-bottom: 37px;
    font-family: 'ヒラギノ明朝 ProN';
}

/*スライダー*/
.slick-slide {
    height: 800px;
}
.slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*ロゴ*/
.logo {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 500px;
    height: 150px;
    background-color: #a23929;
    padding: 51px 41px 50px 42px;
    box-sizing: border-box;
}
.logo img {
    max-width: 417px;
    height: 49px;
    object-fit: cover;
}

/*メインビジュアル*/
#mainvisual {
    width: 100%;
    position: relative;
    z-index: 1;
    font-family: 'ヒラギノ明朝 ProN';
}
#mainvisual::after{
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height:100%;
    top: 0;
    left: 0;
    background-color: black;
    opacity: 0.5;
}

#mainvisual .mainvisual-text {
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#mainvisual p.mainvisual-text-title {
    margin: 0 auto 39px;
    writing-mode: vertical-lr;
    font-size: 32px;
    color: #fff;
}
#mainvisual p.mainvisual-text-season {
    font-size: 32px;
    color: #fff;
    text-align: center;
}

/*キャッチコピー*/
#catchcopy {
    font-family: 'ヒラギノ明朝 ProN';
    padding: 61px 0 62px 0;
    box-sizing: border-box;
}
#catchcopy .catchcopy-fade {
    font-size: 45px;
    height: 90px;
    overflow: hidden;
    position: relative;
}
#catchcopy .catchcopy-fade h1 {
    width: 100%;
    height: 100%;
    text-align: center;
    object-fit: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

/*オープンキャンパス詳細*/
.opencampus-detail {
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    position: -webkit-fixed;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 3;
    padding: 25px 0;
    box-sizing: border-box;
}
.opencampus-detail .openCampus-detail-banner,
.opencampus-detail a {
    width: 340px;
    height: 90px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 29px;
    font-weight: 600;
    padding: 28px 0 27px;
    box-sizing: border-box;
}
.opencampus-detail .openCampus-detail-banner {
    background-color: #0D1A33;
    color: #fff;
}
.opencampus-detail a {
    background-color: #fff;
    color: #666666;
    text-decoration: none;
}

/*ポイント*/
#point {
    width: 100%;
    background-image: url(./background.png);
    background-position: center;
    background-size: contain;
    text-align: center;
    position: relative;
    padding: 100px 0;
    box-sizing: border-box;
}
#point div.point-each {
    font-family: 'ヒラギノ明朝 ProN';
    max-width: 1200px;
    background-color: #fff;
    margin-bottom: 50px;
    padding: 60px 100px 65px;
    box-sizing: border-box;
}
#point div.point-each:last-child {
    margin-bottom: 0;
}
#point .point-each-inner {
    max-width: 1000px;
    margin: 0 auto 16px;
}
#point div.point-each h3 {
    text-align: left;
    font-size: 38px;
    margin-bottom: 23px;
    letter-spacing: 0.103em;
}
#point div.point-each h2 {
    font-size: 48px;
    font-weight: 600;
    color: #A23929;
    margin-bottom: 27px;
}
#point div.point-each p {
    font-family: 'ヒラギノ角ゴ ProN';
    font-size: 30px;
}
#point div.point-each a {
    display: block;
    max-width: 276px;
    height: 75px;
    color: #fff;
    background-color: #A23929;
    font-size: 30px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    padding: 19px 24px 20px 34px;
    box-sizing: border-box;
    margin: 0 0 0 auto;
}

/*学校紹介*/
#school {
    padding: 94px 0 100px;
    box-sizing: border-box;
}
#school .section-title {
    font-size: 60px;
}
#school .section-title span {
    font-size: 45px;
}
#school figure {
    max-width: 1200px;
    margin-bottom: 40px;
}
#school figcaption {
    max-width: 1200px;
    height: 70px;
    text-align: center;
    background-color: #b4b4b4;
    padding: 20px 0 19px;
    box-sizing: border-box;
    font-size: 25px;
    font-family: 'ヒラギノ角ゴ ProN';
}
#school figure img {
    object-fit: cover;
}
#school p {
    font-size: 27px;
    font-family: 'ヒラギノ角ゴ ProN';
}

/*オープンキャンパスでできること*/
#opencampus {
    width: 100%;
    background-image: url(./background.png);
    background-position: center;
    background-size: contain;
    text-align: center;
    position: relative;
    padding: 100px 0;
    margin-bottom: 94px;
}
#opencampus .opencampus-movies {
    margin-bottom: 97px;
}
#opencampus div.opencampus-movies div.opencampus-movie {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
#opencampus div.opencampus-movies div.opencampus-movie iframe {
    width: 585px;
    height: 329px;
}
#opencampus div.opencampus-movies div.opencampus-movie-short {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#opencampus div.opencampus-movies div.opencampus-movie-short iframe {
    width: 278px;
    height: 488px;
    border-radius: 10px;
}
#opencampus .opencampus-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#opencampus .opencampus-list .opencampus-each {
    display: flex;
    width: 586px;
    margin-bottom: 30px;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-text {
    font-family: 'ヒラギノ角ゴ ProN';
    text-align: center;
    color: #fff;
    background-color: #A23929;
    width: 50%;
    height: 293px;
    display: flex;
	justify-content: center;
	align-items: center;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-text:first-child {
    flex-direction: column;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-text h3 {
    font-size: 40px;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-text p {
    font-size: 25px;
    text-align: center;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-image {
    width: 50%;
    height: 293px;
}
#opencampus .opencampus-list .opencampus-each .opencampus-each-image img {
    height: 100%;
    object-fit: cover;
}

/*本校の強み*/
#strength {
    margin-bottom: 94px;
}
#strength .section-title span {
    margin-left: 108px;
}
#strength .section-title small {
    font-size: 14px;
    font-family: 'ヒラギノ角ゴ ProN';
    margin-left: 24px;
}
#strength div.strength-wrap {
    max-width: 1200px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#strength div.strength-wrap .strength-item {
    width: 50%;
    position: relative;
    z-index: 1;
    background-position: center;
    background-size: cover;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 80px 65px 84px 66px;
    box-sizing: border-box;
}
#strength div.strength-wrap .strength-item::after {
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height:100%;
    top: 0;
    left: 0;
    background-color: white;
    opacity: 0.6;
}
#strength div.strength-wrap .strength-item * {
    position: relative;
    z-index: 3;
}
#strength div.strength-wrap .strength-item:first-child {
    background-image: url(./strength01.png);
}
#strength div.strength-wrap .strength-item:nth-child(2) {
    background-image: url(./strength02.png);
}
#strength div.strength-item-inner {
    width: 469px;
    display: flex;
    justify-content: center;
    align-items: self-start;
    flex-wrap: wrap;
    flex-direction: column;
}
#strength div.strength-wrap .strength-item h3 {
    font-family: 'ヒラギノ明朝 ProN';
    color: #A23929;
    font-size: 45px;
    margin-bottom: 66px;
}
#strength div.strength-wrap .strength-item p {
    font-size: 27px;
    font-family: 'ヒラギノ角ゴ ProN';
}

/*好きなことから始める*/
#interest {
    max-width: 1200px;
    margin: 0 auto 100px;
}

/*キャリアビジョン*/
#career {
    width: 100%;
    background-image: url(./background.png);
    background-position: center;
    background-size: contain;
    text-align: center;
    position: relative;
    padding: 94px 0 100px;
}
#career div.career-parson-wrap {
    display: flex;
    justify-content: space-between;
}
#career div.career-parson-wrap div.career-parson {
    background-color: #efdbb2;
    max-width: 591px;
    padding: 58px 128px 58px 129px;
    box-sizing: border-box;
    font-family: 'ヒラギノ明朝 ProN';
}
#career div.career-parson-wrap div.career-parson h2 {
    font-size: 40px;
    margin-bottom: 55px;
    text-align: center;
}
#career div.career-parson-wrap div.career-parson img {
    border-radius: 50%;
    width: 334px;
    height: 333px;
    object-fit: cover;
    margin-bottom: 53px;
}
#career div.career-parson-wrap div.career-parson h3 {
    font-size: 45px;
    text-align: center;
}
#career .career-parson-history-wrap {
    display: flex;
    justify-content: space-between;
}
#career .career-parson-history-box {
    width: 546px;
    background-color: #fff;
    padding: 132px 0 115px;
    box-sizing: border-box;
}
#career .career-parson-history-box img {
    object-fit: cover;
}
#career .career-parson-history-box .career-parson-history-text {
    font-size: 43px;
    text-align: center;
    font-family: 'ヒラギノ角ゴ ProN';
    font-weight: 600;
}
#career .career-history-flow-image {
    width: 108px;
}
#career .career-parson-history-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#career .career-parson-history-item:first-child {
    margin-bottom: 166px;
}
#career .career-parson-history-item .career-parson-history-image {
    width: 264px;
    height: 267px;
}

/*在校生インタビュー*/
#interview-currentstudent {
    padding: 94px 0 0 0;
    margin-bottom: 100px;
}
#interview-currentstudent div.interview-currentstudent-box {
    border: solid 1px #A23929;
    padding: 30px;
    margin-bottom: 30px;
    box-sizing: border-box;
}
#interview-currentstudent div.interview-currentstudent-box:last-child {
    margin-bottom: 100px;
}
#interview-currentstudent div.interview-currentstudent-parson {
    display: flex;
    justify-content: center;
    margin-bottom: 25px;
}
#interview-currentstudent div.interview-currentstudent-parson-picture {
    width: 390px;
    height: 250px;
}
#interview-currentstudent div.interview-currentstudent-parson img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text {
    width: 750px;
    height: 250px;
    background-color: #A23929;
    color: #fff;
    font-family: 'ヒラギノ明朝 ProN';
    display: flex;
	justify-content: center;
    flex-direction: column;
    padding: 45px 0 46px 90px;
    box-sizing: border-box;
}
#interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text > h3 {
    font-size: 40px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 17px;
}
#interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text > h4 {
    font-size: 35px;
    font-weight: 600;
}
#interview-currentstudent .interview-currentstudent-q_a {
    font-size: 16px;
    font-family: 'ヒラギノ角ゴ ProN';
}
#interview-currentstudent p.interview-currentstudent-q {
    color: #a23929;
    margin-bottom: 15px;
    font-weight: 600;
}
#interview-currentstudent p.interview-currentstudent-q::before {
    content: "Q";
    margin-right: 13px;
}
#interview-currentstudent .interview-currentstudent-a {
    margin-bottom: 15px;
}
#interview-currentstudent .interview-currentstudent-a::before {
    content: "A";
    margin-right: 14px;
}
#interview-currentstudent .interview-currentstudent-q_a-moreview-button,
#interview-currentstudent .interview-currentstudent-q_a-close-button {
    text-align: center;
    font-family: '源ノ角ゴシック JP';
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
}
#interview-currentstudent .interview-currentstudent-q_a-close-button {
    display: none;
}
#interview-currentstudent div.interview-currentstudent-q_a div.interview-currentstudent-q_a-moreview-box {
    display: none;
}
#interview-currentstudent .groupphoto {
    object-position: bottom;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

#gallery {
    margin-bottom: 100px;
}
#gallery .picture-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#gallery .picture-list li {
    width: 393px;
    height: 393px;
    margin-bottom: 10px;
}

#gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*地図*/
#map {
    margin-bottom: 89px;
    
}
#map .map-inner {
    text-align: center;
}
#map iframe {
    width: 1000px;
    height: 617px;
}

/*フッター*/
footer {
    background-color: #3c3c3c;
    color: #fff;
    padding: 50px 0 191px;
    font-family: 'ヒラギノ角ゴ ProN';
    width: 100%;
    box-sizing: border-box;
}
footer * {
    text-align: center;
}
footer .sns-icon.instagram {
    width: 30px;
    height: 30px;
    margin: 0 auto 25px;

}
footer h3 {
    font-size: 30px;
    margin-bottom: 33px;
}
footer p {
    font-size: 25px;
}

@media screen and (max-width:375px) {
    section {
        margin-bottom: 0;
    }
    p {
        font-weight: normal;
        font-size: 18px;
    }
    .wrapper {
        max-width: 345px;
    }
    .section-title {
        font-size: 21px;
        text-align: center;
        margin-bottom: 17px;
    }

    /*ロゴ*/
    .logo {
        width: 100%;
        height: 70px;
        padding: 18px 44px;
    }
    .logo img {
        width: 287px;
        height: 34px;
    }

    /*メインビジュアル*/
    #mainvisual {
        max-width: 375px;
    }
    #mainvisual p.mainvisual-text-title {
        font-size: 25px;
        margin-bottom: 22px;
    }
    #mainvisual p.mainvisual-text-season {
        font-size: 16px;
    }

    /*スライダー*/
    .slider {
        margin-top: 70px;
    }
    .slick-slide {
        height: 440px;
    }

    /*キャッチコピー*/
    #catchcopy {
        margin-bottom: 0;
        padding: 20px 0 19px;
    }
    #catchcopy .wrapper {
        max-width: max-content;
    }
    #catchcopy .catchcopy-fade {
        font-size: 18px;
        max-width: 345px;
        height: 42px;
        margin: 0 auto;
    }

    /*オープンキャンパス詳細*/
    .opencampus-detail {
        width: 375px;
        padding: 16px 0 14px;
    }
    .opencampus-detail .openCampus-detail-banner,
    .opencampus-detail a {
        height: 55px;
        font-size: 18px;
        padding: 17px 0 16px;
    }
    .opencampus-detail .openCampus-detail-banner {
        width: 181px;
    }
    .opencampus-detail a {
        width: 144px;
    }

    /*ポイント*/
    #point {
        padding: 30px 0;
    }
    #point div.point-each {
        max-width: 345px;
        margin-bottom: 12px;
        padding: 13px 10px 15px;
    }
    #point div.point-each:last-child {
        margin-bottom: 0;
    }
    #point div.point-each h3 {
        font-size: 14px;
        margin-bottom: 8px;
    }
    #point div.point-each h2 {
        font-size: 18px;
        margin-bottom: 11px;
    }
    #point div.point-each p {
        font-size: 12px;
    }
    #point div.point-each a {
        display: block;
        max-width: 104px;
        height: 32px;
        font-size: 11px;
        padding: 10px 0 9px;
    }
    #point .point-each-inner {
        height: auto;
    }

    /*学校紹介*/
    #school {
        margin-bottom: 0;
        padding: 37px 0 40px;
    }
    #school .wrapper {
        max-width: max-content;
    }
    #school .section-title {
        font-size: 24px;
    }
    #school .section-title > span {
        font-size: 16px;
    }
    #school figure {
        max-width: 375px;
        margin-bottom: 20px;
    }
    #school figcaption {
        font-size: 14px;
        padding: 7px;
        height: 31px;
    }
    #school figure img {
        width: 375px;
        height: 185px;
        object-fit: cover;
    }
    #school p {
        font-size: 12px;
        max-width: 345px;
        margin: 0 auto;
    }

    /*オープンキャンパスでできること*/
    #opencampus {
        padding: 45px 0;
        margin-bottom: 42px;
    }
    #opencampus div.opencampus-movies div.opencampus-movie {
        flex-direction: column;
    }
    #opencampus .opencampus-movies {
        margin-bottom: 42px;
    } 
    #opencampus div.opencampus-movies div.opencampus-movie iframe {
        width: 345px;
        height: 194px;
    }
    #opencampus div.opencampus-movies div.opencampus-movie iframe:first-child {
        margin-bottom: 20px;
    }
    #opencampus div.opencampus-movies div.opencampus-movie-short {
        flex-wrap: nowrap;
        overflow: scroll;
    }
    #opencampus div.opencampus-movies div.opencampus-movie-short iframe {
        margin-right: 35px;
        width: 233px;
        height: 410px;
    }
    #opencampus .section-title {
        font-size: 21px;
    }
    #opencampus .opencampus-list {
        flex-direction: column;
    }
    #opencampus .opencampus-list .opencampus-each {
        margin: 0 auto 20px auto;
        width: 345px;
    }
    #opencampus .opencampus-list .opencampus-each:last-child {
        margin-bottom: 0;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-text {
        height: 150px;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-text:first-child {
        flex-direction: column;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-text:first-child h3 {
        margin-bottom: 5px;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-text h3 {
        font-size: 28px;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-text p {
        font-size: 16px;
    }
    #opencampus .opencampus-list .opencampus-each .opencampus-each-image {
        width: 173px;
        height: 150px;
    }

    /*本校の強み*/
    #strength  {
        margin-bottom: 42px;
    }
    #strength .section-title span {
        font-size: 21px;
        margin-left: 71px;
    }
    #strength .section-title small {
        font-size: 9px;
        margin-left: 17px;
    }
    #strength div.strength-wrap {
        max-width: 345px;
        flex-direction: column;
    }
    #strength div.strength-wrap .strength-item {
        width: 100%;
        height: 275px;
        align-items: flex-start;
        padding: 44px 37px 47px 38px;
    }
    #strength div.strength-wrap .strength-item:first-child {
        margin-bottom: 20px;
    }
    #strength div.strength-wrap .strength-item h3 {
        font-size: 28px;
        margin-bottom: 28px;
        text-align: left;
    }
    #strength div.strength-wrap .strength-item p {
        font-size: 20px;
    }

    /*好きなことから始める*/
    #interest {
        max-width: 347px;
        margin: 0 auto 33px;
    }

    /*キャリアビジョン*/
    #career {
        padding: 42px 0 48px;
    }
    #career div.career-parson-wrap {
        display: flex;
        justify-content: center;
    }
    #career div.career-parson-wrap div.career-parson {
        max-width: 170px;
        height: 207px;
        margin: 0 5px;
        padding: 13px 37px 19px;
    }
    #career div.career-parson-wrap div.career-parson h2 {
        font-size: 16px;
        margin-bottom: 13px;
    }
    #career div.career-parson-wrap div.career-parson h3 {
        font-size: 16px;
        margin: 13px 0;
    }
    #career div.career-parson-wrap div.career-parson img {
        width: 96px;
        height: 96px;
        margin-bottom: 7px;
    }
    #career .career-parson-history-box {
        width: 157px;
        height: 480px;
        padding: 34px 6px 27px 7px;
    }
    #career .career-parson-history-box .career-parson-history-text {
        font-size: 16px;
    }
    #career .career-history-flow-image {
        width: 31px;
        height: 480px;
    }
    #career .career-parson-history-item:first-child {
        margin-bottom: 27px;
    }
    #career .career-parson-history-item .career-parson-history-image {
        width: 76px;
        height: 77px;
    }

    /*在校生インタビュー*/
    #interview-currentstudent {
        padding: 42px 0 0 0;
        margin-bottom: 30px;
    }
    #interview-currentstudent div.interview-currentstudent-box {
        padding: 0;
        margin-bottom: 20px;
    }
    #interview-currentstudent div.interview-currentstudent-box:last-child:last-child {
        margin-bottom: 20px;
    }
    #interview-currentstudent div.interview-currentstudent-parson {
        height: 90px;
        margin-bottom: 30px;
    }
    #interview-currentstudent div.interview-currentstudent-parson-picture {
        width: 107px;
        height: 90px;
    }
    #interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text {
        width: calc(345px - 107px);
        padding: 13px 0 14px 15px;
        height: 90px;
    }
    #interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text > h3 {
        font-size: 16px;
        margin-bottom: 7px;
    }
    #interview-currentstudent div.interview-currentstudent-parson .interview-currentstudent-parson-text > h4 {
        font-size: 13px;
    }
    #interview-currentstudent .interview-currentstudent-q_a {
        font-family: 'ヒラギノ角ゴ ProN';
        margin: 0 18px 30px 19px;

    }
    #interview-currentstudent p.interview-currentstudent-q {
        font-size: 14px;
        margin-bottom: 10px;
    }
    #interview-currentstudent p.interview-currentstudent-q::before {
        margin-right: 10px;
    }
    #interview-currentstudent .interview-currentstudent-a {
        margin-bottom: 30px;
        font-size: 14px;
    }
    #interview-currentstudent .interview-currentstudent-a::before {
        margin-right: 10px;
    }
    #interview-currentstudent .interview-currentstudent-q_a-moreview-button,
    #interview-currentstudent .interview-currentstudent-q_a-close-button {
        font-size: 14px;
        font-weight: bold;
        margin: 30px 0;
    }
    #interview-currentstudent .interview-currentstudent-q_a-close-button {
        display: none;
    }
    #interview-currentstudent div.interview-currentstudent-q_a div.interview-currentstudent-q_a-moreview-box {
        display: none;
    }
    #interview-currentstudent > .wrapper:last-child {
        max-width: 375px;
    }

    #gallery {
        margin-bottom: 30px;
    }
    
    #gallery .picture-list li {
        width: 113px;
        height: 113px;
        margin-bottom: 3px;
    }
    
    /*地図*/
    #map {
        margin-bottom: 30px;
    }
    #map iframe {
        width: 345px;
        height: 213px;
    }

    /*フッター*/
    footer {
        max-width: 375px;
        padding: 20px 75px 101px 74px;
    }
    footer h3 {
        font-size: 13px;
        margin-bottom: 10px;
    }
    footer p {
        font-size: 10px;
    }
    footer .sns-icon.instagram {
        margin-bottom: 14px;
    }
}