
/*body------------------------------*/
body{
    font-family: 'Abril Fatface', cursive;
    font-family: 'M PLUS 1p', sans-serif;
    font-family: 'Roboto', sans-serif;
    margin: 0 auto;
}
footer{
    width: 100%;
}
h2{
    margin: 0 auto;
    color: #947400;
    border-bottom: 1px solid #947400;
    width: fit-content;
    text-align: center;
}
section{
    margin: 0 auto;
    width: 100%;
}
a{
    text-decoration: none;
    color: rgb(20, 20, 20);
    letter-spacing: 1px;
}
h3,p{
    color: #351f17;
}
button{
    font-weight: 600;
    background-color: #351f17;
    width:300px ;
    height: 50px;
}
.anotherpage a{
    color:  white;
    font-size: 18px;
    letter-spacing: 1px;
}
.anotherpage :hover{
    background-color: #e3b19e;

}


/*pagetop*/
#page_top{
    position: absolute;
    z-index: 2;
    width: 50px;
    height: 50px;
    position: fixed;
    right: 1%;
    bottom: 50px;
    background: #f0d7ce;
    opacity: 1;
    border-radius: 50%;
  }
  #page_top:hover{
    opacity: 0.6;
  }
  #page_top a{
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
  }
  #page_top a::before{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -5px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
  }

/*sp*/
@media screen and (max-width: 600px) {
    h2{
        font-size: 18px;
        letter-spacing: 2px;
        padding-bottom: 5px;
    }
    h3{
        font-size: 18px;
        letter-spacing: 2px;
        margin: 0 auto;
        padding-top:30px;
        padding-bottom: 20px;
    }
    p{
        font-size: 15px;
        margin: 0 auto;
        letter-spacing: 1px;
        line-height: 25px;
    }
    a{
        font-size: 14px;
    }

    .txt_box h3{
        text-align: center;
    }

    .schedule_content p,.study_content p{
        text-align: left;
        padding-top: 30px;
    }

    .txt_box_wide p{
        text-align: left;
        padding: 0;
    }

    .message_content,.study_content,.schedule_content,.last_link_content{
        width: 300px;
        padding-bottom: 50px;
        margin: 0 auto;
    }
    .campus_content{
        width: 300px;
        padding: 30px 0;
        margin: 0 auto;
    }
    .study_content{
        padding-top: 30px;
    }
    .footer_p p{
        font-size: 12px;

    }
}
/*pad*/
@media only screen and (min-width: 601px) and (max-width:1280px) {
    h2{
        font-size: 20px;
        letter-spacing: 5px;
        padding-bottom: 5px;
    }
    h3{
        font-size: 18px;
        letter-spacing: 2px;
        margin: 0 auto;
        padding-top:30px;
        padding-bottom: 20px;
    }
    p{
        font-size: 15px;
        margin: 0 auto;
        letter-spacing: 1px;
        line-height: 25px;
    }

    .txt_box p{
        font-size: 15px;
    }
    .schedule_content p,.study_content p{
        text-align: center;
        padding-top: 30px;
    }

    .txt_box_wide p{
        text-align: left;
        padding: 0;
    }

    .message_content,.study_content,.schedule_content,.last_link_content{
        width: 700px;
        padding-bottom: 50px;
        margin: 0 auto;
    }
    .campus_content{
        width: 700px;
        padding: 50px 0;
        margin: 0 auto;
    }
    .study_content{
        padding-top: 30px;
    }
    .footer_p p{
        font-size: 15px;

    }
}
  /*mv*/
@media screen and (min-width: 1281px) {
    h2{
        font-size: 25px;
        letter-spacing: 5px;
        padding-bottom: 5px;

    }
    h3{
        font-size: 22px;
        letter-spacing: 2px;
        margin: 0 auto;
        padding-top:30px;
        padding-bottom: 20px;
    }
    p{
        font-size: 20px;
        margin: 0 auto;
        letter-spacing: 1px;
        line-height: 28px;

    }

    .txt_box p,.txt_box_wide p{
        font-size: 15px;
    }
    .schedule_content p,.study_content p{
        text-align: center;
        padding-top: 50px;

    }
    .txt_box_wide p{
        text-align: left;
        padding: 0;
    }


    .message_content,.study_content,.schedule_content,.last_link_content{
        width: 1000px;
        padding-bottom: 100px;
        margin: 0 auto;
    }
    .campus_content{
        width: 1000px;
        padding: 50px 0;
        margin: 0 auto;
    }
    .study_content{
        padding-top: 50px;
    }
    .footer_p p{
        font-size: 15px;

    }

 }

/*header------------------------------*/
.header{
    background-color: #FFF;
    height: 50px;
    width: 100%;
    margin: 0 auto;
    top: 0;
    left: 0;
    right: 0;
}
/*navigation*/
ul,li{
    list-style: none;
}

.logo{
    width: 80px;
}
.logo img{
    display: block;
    width: 100%;
    height: 100%;

}
.explain_mv,.explain_sp{
    margin: 0 auto;
    padding: 30px 20px;
    border:dotted 2px #947400;
    background-color: #fffcf3;
    margin-bottom: 80px;
    text-align: center;
    letter-spacing: 1px;


}
.explain_mv h4,.explain_sp h4{
    color:#947400;
    padding:0 0 20px 0;
    margin: 0;
    text-align: center;
    letter-spacing:3px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 700;
    font-style: normal;
}
.explain_mv p,.explain_sp p{
    font-size: smaller;
    text-align: center;
    line-height: 40px;
    border-bottom: 1px dotted #947400;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;

}

/*sp*/
@media screen and (max-width: 600px) {
    .explain_mv{
        display: none;
    }
    .explain_sp{
        width: 80%;
    }

}
@media only screen and (min-width: 601px) and (max-width:1280px) {
    .explain_sp{
        display: none;
    }
    .explain_mv{
        width: 80%;
    }

}
@media screen and (min-width: 1281px) {
    .explain_sp{
        display: none;
    }
    .explain_mv{
        width: 50%;
    }



}

/*top_view---*/
.top_view{
    width: 100%;
}
.top_view img{
    position: relative;
    margin: 0 auto;
    text-align: center;
    width: 100%;
}

.top_word{
    position: absolute;
    width: 100%;
    left: 0;
    text-align: center;
    color:#947400;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF,  0-1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;;

}
.logo{
    position: absolute;
    top: 1%;
    left:1%;
    right: 0;

}

/*sp*/
@media screen and (max-width: 600px) {

    .logo{
        width: 30%;
    }
    .top_word{
        letter-spacing: 1px;
        font-size: 23px;
        top: calc(20% - 23px);
    }

  }
  /*pad*/

  @media only screen and (min-width: 601px) and (max-width:1280px) {

    .top_word{
        letter-spacing: 10px;
        font-size: 35px;
        top: calc(32% - 35px);
    }
    .logo{
        width: 30%;
    }

  }
    /*mv*/
  @media screen and (min-width: 1281px) {


    .top_word{
        top: calc(75% - 60px);
        letter-spacing: 10px;
        font-size: 60px;
    }
    .logo{
        width: 15%;
    }
   }
/*navigation------------------------------*/
/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
	top:0;
    right: -120%;
    height: 100vh;/*ナビの高さ*/
	background: #fcfbf8;
    /*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: left;
}

#g-nav li a{
	color: #947400;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:10px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
}

/*×に変化*/
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #666;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}


/*sp*/
@media screen and (max-width: 600px) {
    #g-nav{
        width: 80%;
    }
    #g-nav ul {
        top:15%;
        left:30%;
            }
}
 /*pad*/
  @media only screen and (min-width: 601px) and (max-width:999px) {
    #g-nav{
        width: 50%;
    }
    #g-nav ul {
        top:15%;
        left:17%;
            }
}
 /*mv*/
  @media screen and (min-width: 1000px) {
    #g-nav{
        width: 20%;
    }
    #g-nav ul {
        top:20%;
        left:8%;
            }


}
    /*message------------------------------*/

/*下線付き矢印------------------------------*/

.row_txt{
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    font-weight: bold;
}
    /*ホバーしたときに下線矢印も同時に色を変える*/
    .row_txt:hover .row_arrow  {
      border-bottom: 1px solid #c99683;
      border-right: 1px solid #c99683;
    }
    .row_txt a:hover {
      color: #c99683;
      font-weight: bold;
    }
    .row_arrow {
    width: 100%;
    height: 15px;
    border-bottom: 1px solid #351f17;
    border-right: 1px solid #351f17;
     /*傾きを調節*/
    transform: skew(45deg);
    /*下線矢印をテキストに合わせてうまい具合にはめる*/
    margin: -10px 0 0 -25px;
    }

/*sp*/
@media screen and (max-width: 600px) {
    .message_content_group{
        padding-top: 30px;
    }
    .box{
        width: 300px;
        margin: 0 auto;
        padding-top: 50px;
    }
    .photo_box img{
        width: 100%;
    }
    .row{
        clear: both;
        padding-left: 10%;
        padding-top: 40px;
}
#message{
    background-image: url("../img/haikei_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
}
}
  /*pad*/
  @media only screen and (min-width: 601px) and (max-width:1280px) {
    .message_content_group{
        padding-top: 10px;
    }

    .box {
        display: flex;
        padding:20px 20px;

      }
      .box .photo_box {
        margin: 0 20px 0 20px;
      }
      .box:nth-child(even) {
        flex-direction: row-reverse;
      }
      .box:nth-child(even) .img {
        margin: 0 0 0 20px;
      }
      .txt_box{
        width:calc(100% - 320px);
      }
      .photo_box img{
        padding-top: 50px;
        width: 300px;
      }
      .row{
        clear: both;
        padding-left: 60%;
        padding-bottom: 20px;
        padding-top: 60px;
  
    }
    #message{
        background-image: url("../img/haikei_pad.png");
        background-repeat: no-repeat;
        background-size: cover;
    }

  }
    /*mv*/
  @media screen and (min-width: 1281px) {
    .message_content_group{
        padding-top: 50px;
    }
    .box {
        display: flex;
        padding:20px 20px;
      }
      .box .photo_box {
        margin: 0 100px 0 100px;
      }
      .box:nth-child(even) {
        flex-direction: row-reverse;
      }
      .box:nth-child(even) .img {
        margin: 0 0 0 20px;
      }
      .txt_box{
        width:calc(100% - 320px);
      }
      .photo_box img{
        padding-top: 50px;
        width: 400px;
      }
    .row{
        clear: both;
        padding-left: 70%;
        padding-bottom: 20px;
        padding-top: 60px;
 
    }
     #message{
        background-image: url("../img/haikei_mv.png");
        background-repeat: no-repeat;
        background-size: cover;

    }

   }
/*campuslife------------------------------*/
#campuslife{
    background-color: #DFFCE1;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 800 400'%3E%3Cdefs%3E%3CradialGradient id='a' cx='396' cy='281' r='514' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23ECF6EA'/%3E%3Cstop offset='1' stop-color='%23DFFCE1'/%3E%3C/radialGradient%3E%3ClinearGradient id='b' gradientUnits='userSpaceOnUse' x1='400' y1='148' x2='400' y2='333'%3E%3Cstop offset='0' stop-color='%23E7FFE5' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23E7FFE5' stop-opacity='0.5'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect fill='url(%23a)' width='800' height='400'/%3E%3Cg fill-opacity='0.4'%3E%3Ccircle fill='url(%23b)' cx='267.5' cy='61' r='300'/%3E%3Ccircle fill='url(%23b)' cx='532.5' cy='61' r='300'/%3E%3Ccircle fill='url(%23b)' cx='400' cy='30' r='300'/%3E%3C/g%3E%3C/svg%3E");
background-attachment: fixed;
background-size: cover;
}

/* スクロールCSS */
.fade-in {
    margin: 0 auto;
    opacity: 0;
    transition-duration: 1s;
    transition-property: opacity, transform;
  }

  .fade-in-up {
    transform: translate(0, 50px);
  }

  .fade-in-down {
    transform: translate(0, -50px);
  }

  .fade-in-left {
    transform: translate(-50px, 0);
  }

  .fade-in-right {
    transform: translate(50px, 0);
  }

  .scroll-in {
    opacity: 1;
    transform: translate(0, 0);
  }

/*下線付き矢印-*/

.rowlo_txt{
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    font-weight: bold;
}
/*ホバーしたときに下線矢印も同時に色を変える*/
.rowlo_txt:hover .rowlo_arrow  {
    border-bottom: 1px solid #c99683;
    border-right: 1px solid #c99683;
}
.rowlo_txt a:hover {
    color: #c99683;
    font-weight: bold;
}
.rowlo_arrow {
    width: 100%;
    height: 15px;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
     /*傾きを調節*/
    transform: skew(45deg);
    /*下線矢印をテキストに合わせてうまい具合にはめる*/
    margin: -10px 0 0 -25px;
}

.campus_link img{
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 0.1) ;
    /*アニメーションの設定*/
    transition: all .1s;
}
.campus_link img:hover{
    box-shadow: 0 1px 15px rgba(0, 0, 0, 0.4), 0 0 50px rgba(128, 128, 128, 0.1) ;
    border-color: transparent;
}

/*sp*/
@media screen and (max-width: 600px) {
    #campuslife{
        padding: 30px 0 0 0;
    }

    .campus_link{
        width: 300px;
        margin: 0 auto;
        padding-top: 30px;
    }
    .campus_link a{
        padding-bottom: 20px;
        display: block;
    }

    .campus_link img{
        width: 100%;
    }
    .rowlo{
        clear: both;
        padding-left: 0%;
        padding-top: 20px;
        padding-bottom: 20px;

    }
}
/*pad*/
@media only screen and (min-width: 601px) and (max-width:1280px) {
    #campuslife{
        padding: 50px 0 0 0;
    }

    .campus_link{
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        padding-top: 50px;
    }
    .campus_link a{
        flex: 1;
        display: block;
        padding: 20px 10px;
        text-align: center;
    }
    .campus_link img{
        width: 300px;
    }
    .rowlo{
        clear: both;
        padding-left: 50%;
        padding-top: 20px;
        padding-bottom: 20px;

    }


}
  /*mv*/
@media screen and (min-width: 1281px) {
    #campuslife{
        padding: 50px 0 0 0;
    }

    .campus_link{
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        padding-top: 50px;
    }
    .campus_link a{
        flex: 1;
        display: block;
        padding: 20px 10px;
        text-align: center;
    }
    .campus_link img{
        width: 400px;
    }
    .rowlo{
        clear: both;
        padding-left: 60%;
        padding-top: 20px;

    }


 }
/*study------------------------------*/
.study_photo img{
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 0.1) ;
    /*アニメーションの設定*/
    transition: all .3s;
}
.study_photo img:hover{
    box-shadow: 0 1px 15px rgba(0, 0, 0, 0.4), 0 0 50px rgba(128, 128, 128, 0.1) ;
    border-color: transparent;
}

/*sp*/
@media screen and (max-width: 600px) {
    #study{
        padding: 30px 0 0 0;
    }
    .study_photo{
        width: 300px;
        margin: 0 auto;
        padding: 10px 0px;
    }
    .study_photo img{
        width: 100%;
    }
}
/*pad*/
@media only screen and (min-width: 601px) and (max-width:1280px) {
    #study{
        padding: 50px 0 0 0;
    }

    .study_photo{
        margin: 0 auto;
        text-align: center;
        padding: 20px 10px 0px 10px;
    }
    .study_photo img{
        width:  80%;

    }

}
  /*mv*/
@media screen and (min-width: 1281px) {
    #study{
        padding: 50px 0 0 0;
    }
    .study_photo{
        margin: 0 auto;
        text-align: center;
        padding-top: 50px;
    }

    .study_photo img{
        width: 80%;
    }
 }
/*schedule------------------------------*/

/*sp*/
@media screen and (max-width: 600px) {

    #schedule{
        background-image: url("../img/shaikei_sp.png");
        background-repeat: no-repeat;
        background-size: cover;
        padding: 30px 0 0 0;
    }
    .box_group{
        padding-top: 10px;
    }
    .box_wide{
        width: 300px;
        margin: 0 auto;
    }
    .photo_box_wide{
        padding-top: 20px;

    }
    .photo_box_wide img{
        width: 100%;
    }

}
/*pad*/
@media only screen and (min-width: 601px) and (max-width:1280px) {
    #schedule{
        padding: 50px 0 0 0;
        background-image: url("../img/shaikei_pad.png");
        background-repeat: no-repeat;
        background-size: cover;
    }
    .box_group{
        padding-top: 30px;
    }
    .box_wide {
        display: flex;
        padding:20px 20px;
    }
    .box_wide .photo_box_wide {
        margin: 0 30px 0 30px;

    }
    .box_wide:nth-child(even) {
        flex-direction: row-reverse;
    }
    .box_wide:nth-child(even) .img {
        margin: 0 0 0 30px;
    }
    .txt_box_wide{
        width:calc(100% - 250px);
    }
    .photo_box_wide img{
        width: 300px;
    }

}
  /*mv*/
@media screen and (min-width: 1281px) {
    #schedule{
        padding: 30px 0 0 0;
        background-image: url("../img/shaikei_mv.png");
        background-repeat: no-repeat;
        background-size: cover;
    }

    .box_wide {
        display: flex;
        padding:50px 20px;
    }
    .box_wide .photo_box_wide {
        margin: 0 50px 0 50px;

    }
    .box_wide:nth-child(even) {
        flex-direction: row-reverse;
    }
    .box_wide:nth-child(even) .img {
        margin: 0 0 0 20px;
    }
    .txt_box_wide{
        width:calc(100% - 320px);
    }
    .photo_box_wide img{
        width: 400px;
    }

}
/*last_link------------------------------*/
.last_college{
    border-top: 1px #999 solid;
    padding: 10px;

}

.last_yell{
    border-top: 1px #999 solid;
    border-bottom: 1px #999 solid;
    padding: 10px;
}
.last_college a:hover,.last_yell a:hover{
    color: #c99683;
 }



/*外部リンクアイコン*/
.entry-content a[target="_new"]::after{
    font-family: 'Font Awesome 5 Free';
    content: 'f08e';
    font-size: 0.9em;
    margin: 0px 3px;
    font-weight: 500;
}

/*copyright------------------------------*/
.footer_p{
    text-align: center;
    background: linear-gradient(#FFF,#f0d7ce);
    padding: 10px 0;

}
