@charset "UTF-8";
* {
margin: 0px;
padding: 0px;
}
html {
font-size: 100%;
}
body{
margin: 0;
height: 100%;
font-family: 'Noto Sans JP', sans-serif;
color: rgb(45, 45, 45);
line-height: 1.7;
}
body:after{
margin: 0;
position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
content: "";
background: #afeeee;
/* background: -moz-linear-gradient(top, #afeeee 0%,#FFF 100%); */
/* background: -webkit-linear-gradient(top, #afeeee 0%,#FFF 100%); */
background: linear-gradient(to bottom, #afeeee 0%, #fff 100%);
z-index: -1;
}
body.vmenuspace {margin-top: 2em; border-top: 3px solid;}
div.scrollbox {
height: 6em; overflow: auto; background: #eff;
}
img {
max-width: 100%;
}
/*--------------------------------------common---------------------------------*/
.section-title {
font-size: 2.1rem;
text-align: center;
position: relative;
width: 100%;
margin-top: 30px;
margin-bottom: 20px;
}
.section-title::before{
content: '';
display: inline-block;
width: 170px;
height: 170px;
background-image: url(../testpage/yellow-green.png);
background-size: contain;
vertical-align: middle;
}
.section-title::after{
content: '';
display: inline-block;
width: 170px;
height: 170px;
background-image: url(../testpage/green.png);
background-size: contain;
vertical-align: middle;
}
.section-text{
text-align: center;
font-size: 1.3rem;
padding-top: 10px;
padding-bottom: 30px;
max-width: 800px;
margin: 0 auto;
line-height: 1.7;
}
.wrapper {
max-width: 1150px;
margin: 0 auto;
padding: 0 5%;
padding-top: 30px;
margin-bottom: 80px;
}
/* --------------------------------------ヘッダー ------------------------------------------------------------*/
.header{
width: 100vw;
height: auto;
z-index: 99;
position: fixed;
transition: all .5s;
top:0;
padding-top: 10px;
padding-bottom: 10px;
}
.header.change-color {
background-color: #ffffff;
}
.header-nav {
height: auto;
max-width: 1200px;
margin: 0 auto;
padding: 0 5%;
}
.header-nav .sp-logo{
display: none;
}
.header-nav nav ul {
display: flex;
justify-content: space-between;
align-items: center;
}
.header-nav nav ul li {
margin-right: 50px;
list-style: none;
font-size: 1.05em;
padding-left: 9px;
padding-right: 9px;
border-left: grey 2px dotted;
border-right: grey 2px dotted;
}
.header-nav nav ul .bd-no{
border: none;
}
.header-nav nav ul li a{
text-decoration: none;
color: black;
transition: .3s;
display: block;
}
.header-nav nav ul li a:hover{
border-bottom: grey 3px dotted;
}
.header-nav nav ul li .bd-none:hover{
border-bottom: none;
}
.top-logo{
width: 85px;
height: 85px;
object-fit: cover;
}
header.scroll-nav{
background: white;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
padding-top: 0;
padding-bottom: 0;
}
/* -----------------------------------------------------メインビジュアル */
#mainvisual {
height: 660px;
position: relative;
margin-bottom: 120px;
width: 100%;
margin:0;
padding:0;
}
.mainvisual-inner{
margin-top: 110px;
max-width: 100%;
}
#mainvisual .top-text{
position: absolute;
z-index: 10;
top: 85px;
left: 6%;
overflow: hidden;
}
#mainvisual .top-text .text{
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 10px;
color: white;
line-height: 4rem;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
text-shadow: 0 4px 6px #000;
}
.top-text-color{
color: rgb(1, 204, 255);
}
#mainvisual .top-title{
position: absolute;
z-index: 10;
top: 280px;
right:30%;
overflow: hidden;
}
#mainvisual .top-title .site-title{
font-size: 3.1rem;
font-weight: bold;
color: white;
text-shadow: 0 4px 6px #000;
text-align: center;
}
#mainvisual .top-title .site-title .small{
font-size: 1.6rem;
color: indianred;
text-shadow: 0 4px 6px #000;
font-weight: bold;
text-align: center;
}
.mainvisual-img{
position: relative;
max-width: 100%;
}
.mainvisual-img .top-title{
position: absolute;
top: 270px;
right: 30%;
z-index: 10;
font-size: 2.8rem;
}
#mainvisual .fade li {
max-width: 100%;
position: absolute;
top: 0;
right: 0;
opacity: 0;
animation: fade 15s infinite;
list-style: none;
}
#mainvisual .fade li:nth-child(1) {
animation-delay: 0s;
}
#mainvisual .fade li:nth-child(2) {
animation-delay: 5s;
}
#mainvisual .fade li:nth-child(3) {
animation-delay: 10s;
}
#mainvisual .fade li img {
width: 1500px;
height: 610px;
object-fit: cover;
border-radius:1% 1% 1% 1%;
}
#mainvisual .fade li::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
box-shadow: inset 0px 0px 10px 10px #fff;
/* border-radius:1% 1% 1% 1%; */
}
@keyframes fade {
0% {
opacity: 0;
}
15% {
opacity: 1;
}
30% {
opacity: 1;
}
45% {
opacity: 0;
}
100% {
opacity: 0;
}
}
/* ---------------------------------------------------------//mainvisual */
/* ------------------------------------------------------------home-about */
.home-items{
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content:space-evenly;
align-items: center;
margin-top: 30px;
}
#home-about .home-items h3{
font-size: 1.4rem;
}
#home-about .home-items p{
font-size: 1.2rem;
line-height: 2.0;
}
.what_study{
width:730px;
margin-bottom: 10px;
}
.what_study h3{
/* background: linear-gradient(transparent 50%, rgb(240, 149, 108) 50%); */
/* border-bottom: rgb(247, 108, 44) 5px double; */
padding-bottom: 2px;
font-size: 1.3rem;
margin-bottom: 5px;
}
.what_study p{
font-size: 1.2rem;
line-height: 2.0;
}
main {margin: 1ex;} /* PLEASE Remove this if this is too much effective */
.aiming_top{
width:730px;
margin-top: 50px;
}
.aiming_top h3{
/* background: linear-gradient(transparent 50%, yellow 50%); */
/* border-bottom: rgb(247, 108, 44) 5px double; */
padding-bottom: 2px;
font-size: 1.3rem;
margin-bottom: 5px;
}
.aiming_top p{
font-size: 1.2rem;
line-height: 2.0;
}
em.see {
font-style: normal; font-weight: bold;
background: linear-gradient(to top, yellow, transparent);
}
.text-bg{
background: linear-gradient(transparent 50%, rgb(253, 214, 140) 50%);
}
/* ----------home-class_content -------------*/
#home-class_content{
padding: 50px 16px 50px 16px;
margin: -50px auto 10px auto;
}
#home-class_content .grid {
display: grid;
gap: 26px;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
#home-class_content .grid .class_content-item{
text-decoration: none;
color: #000;
}
#home-class_content .grid .item {
transition: all 0.3s ease;
box-shadow: 0 0 8px 4px #ccc;
border-radius: 40px;
}
.class_content-item > .item:hover{
opacity: 0.7;
}
#home-class_content .grid img {
vertical-align: top;
height: 300px;
width: 100%;
object-fit: cover;
border-radius: 40px 40px 0 0;
}
#home-class_content .grid .item-content {
padding: 30px;
}
#home-class_content .grid .item-cat {
font-size: 1.0rem;
margin-bottom: 20px;
}
#home-class_content .grid .item-text {
font-weight: bold;
margin-bottom: 20px;
font-size: 1.1rem;
}
#home-class_content .grid .item-date {
font-size: 0.85rem;
text-align: right;
}
.home-class_content-btn{
text-align: center;
margin-top: 70px;
}
.home-class_content-btn a{
border-bottom: 5px solid #007a9f;
text-decoration: none;
color: #fff;
border-radius: 100vh;
background-color: rgb(3, 202, 228);
padding: 10px 30px;
transition: .3s;
font-size: 1.4rem;
}
.home-class_content-btn a:hover{
margin-top: 3px;
border-bottom: 2px solid #007a9f;
}
.fa-position-right {
position: absolute;
top: calc(50% - .5em);
right: 1rem;
}
/* ---------------------------------//home-class_content ---------------------*/
/* ---------------------------------home-apply -------------------------------*/
@keyframes slidein {
0% {
opacity: 0;
transform: translateY(-5px);
}
100% {
opacity: 1;
transform: translateY(0px);
}
}
#home-apply{
margin: 0 auto;
padding-bottom: 40px;
}
.qa_list{
position: relative;
margin: 20px 20px 30px 20px;
border: dashed rgb(0, 0, 0);
border-width: 0 0 2px 0;
color: black;
transition: .2s;
transition: all 0.3s ease;
}
.qa_list:hover{
color: rgb(255, 153, 0);
}
.qa_list .plus{
position: relative;
display: inline-flex;
font-size: 28px;
padding: 5px;
transition: .3s;
}
.qa_list input[type="checkbox"]:checked ~ .plus{
transform: rotate(45deg);
}
.qa_list label{
display: block;
position: absolute;
top: 3px;
left: 30px;
padding: 5px;
font-size: 23px;
cursor: pointer;
transition: .3s;
}
.qa_list .ans{
position: relative;
display: none;
color: black;
margin: 5px;
padding: 10px 10px 20px 10px;
}
.qa_list input[type="checkbox"]:checked ~ div.ans{
display: block;
animation: slidein 0.5s;
}
.qa_list input{
display: none;
}
/* ---------------------------------//home-apply -------------------------------*/
/* ----------------------------------home-info---------------------------------- */
#home-info{
background-color:white;
padding: 60px;
margin-bottom: 60px;
margin-top: 60px;
}
#home-info img{
object-fit: cover;
width: 100%;
height: 450px;
}
.home-info-items{
display: flex;
justify-content: space-evenly;
align-items: center;
}
.home-info-address_title{
font-size: 1.8rem;
color:#e02f3b;
}
.info-item {
display: flex;
justify-content: space-evenly;
align-items: center;
padding-top: 70px;
}
.info-text .info-small{
font-size: 0.9rem;
}
.info-address{
font-size: 15px;
text-align: justify;
box-sizing: border-box;
letter-spacing: 0.15em;
white-space: nowrap;
line-height: 1.9;
display: inline-block;
padding-bottom: 10px;
}
.line-dl div{
display: flex;
border-bottom: solid 1px #f5cbcd;
padding: 11px 5px 14px;
align-items: flex-start;
}
.line-dl div:nth-child(1){
border-top: solid 1px #f5cbcd;
}
.line-dl div .font-mg{
width: 110px;
text-align: justify;
box-sizing: border-box;
letter-spacing: 0.15em;
white-space: nowrap;
color: #e02f3b;
font-size: 15px;
line-height: 1.9;
}
.line-dl div dd{
width: calc(100% - 110px);
font-size: 14px;
letter-spacing: 0.04em;
color: #000;
line-height: 1.9;
display: inline-block;
transform: translateY(3px);
}
.line-dl div dd a{
width: calc(100% - 110px);
font-size: 14px;
letter-spacing: 0.04em;
color: #000;
line-height: 1.9;
display: inline-block;
transform: translateY(3px);
}
.line-dl div dd a:hover{
opacity: 0.6;
}
.line-dl div dd .info-small{
font-size: 13px;
}
/* ----------------------------------// home-info---------------------------------- */
/* footer */
footer { /* XXX: Change ME! */
background: linear-gradient(to top, rgba(15, 15, 15, 0.8),
rgba(40, 40, 40, 0.8));
text-align: center; font-size: 70%;
color: white;
padding-top: 25px;
padding-bottom: 25px;
width: 100vw;
}
/* //footer */
@media screen and (max-width: 746px){
.section-title {
font-size: 1.75rem;
position: relative;
display: inline-block;
margin-bottom: 50px;
}
.section-title::before{
background-image: none;
vertical-align: baseline;
content: '';
position: absolute;
bottom: -20px;
display: inline-block;
width: 60px;
height: 5px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: rgb(255, 153, 0);
}
.section-title::after{
display: none;
}
header.scroll-nav{
background: white;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
align-items: center;
}
.header-nav .sp-logo{
display: block;
}
.header-nav nav ul{
display: none;
}
#mainvisual .top-title .site-title{
display: none;
}
#home-about h2{
font-size: 1.6rem;
}
#home-about .home-items h3{
font-size: 1.2rem;
}
#home-about .home-items p{
font-size: 1.1rem;
line-height: 1.85;
}
.aiming_top{
max-width: 500px;
}
.qa_list label{
font-size: 17.5px;
}
.info-item{
flex-direction: column;
}
.iframe-wrap{
padding-top: 50px;
width: 100%;
}
}
/* メモ
!わかりやすく、探しやすく、再利用しやすく、拡張しやすくする
1 h2タグにはsection-titleというclass名をつけて全てのページを共通化させる
2 h2のsection-titleがつくものはsectionタグで囲む。sectionタグには
.wrapper {
max-width: 1200px;
margin: 0 auto;
padding: 0 5%;
margin-bottom: 80px;
}
というクラス名とcssをつけて画面幅いっぱいより少し小さめの幅で全て収めるように共通化させる。
sectionごとの余白はmargin-top:50px; margin-bottom:80px;で共通化。
margin-topだけはつけるとことつけないとこがあるから.wrapperに入れない。
3 */