
/* section setting */

.section{
    display: flex;
    flex-flow: column;
    padding: 0 2em 2em;
}

/* 明朝体のほうがかっこいいわ */
.section-title{
    font-family: "Times New Roman", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
    margin-top: 5vh;
}

/* top */

.top-screen{
    height: 100vh;
}
.top{
    height: 93vh;
}
.top-logo{
    position: relative;
    top: -65%;
    right: max(-50%, calc(45% - ((100% - 960px) / 2 + 960px)));
    width: 45%;
}
.top-comment{
    font: 1.8em "Noto Serif JP", serif;
    position: relative;
    top: -70%;
    left: 50%;
    right: 95%;
    width: 45%;
    color: black;
}
#top_image{
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.2;
}

/* news */

.news{
    background-color: #fff;
    padding: 5vh 0 15vh 0;
}
.news-content{
    width: 60%;
    max-width: 1000px;
    margin: 0 auto;
    border-top: 1px solid #7D7D7D;
    overflow-wrap: break-word;
    padding-top: 5px;
    padding-bottom: 5px;
}
.news-content.last{
    border-bottom: 1px solid #7D7D7D;
    /* padding-bottom: 5vh; */
}
.news-date{
    font: 0.8em "Fira Sans", sans-serif;
}
.news-title{
    font: 1em "Open Sans", sans-serif;
}

/* about us */

.about-us{
    background-color: rgba(255, 255, 255, 0.7);
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    padding: 0 0 8vmin;
    /* height: 100vh; */
    
    /* height: 100%; */
}
.about-us-phase{
    display: flex;
    justify-content: space-between;
    margin: 8vmin max((100% - 960px) / 2, 8vmin);
    position: relative;
    /* justify-content: center; */
    align-items: center;
}
.about-us-background-img{
    z-index: -1;
    position: absolute;
    right: 0;
}
/* .about-us-discription{
    display: flex;
    justify-content: space-between;
} */
.about-us-discription-document{
    width: 50%;
    overflow-wrap: break-word;
    /* justify-content: center; */
    /* align-items: center; */
}
.about-us-discription-image{
    width: 40%;
	display: flex;
	justify-content: center;
	align-items: center;
    position: relative;
}
.about-us-detail{
    margin: auto;
    display: flex;
    justify-content: center;
}
.about-us-detail-button{
    text-align: center;
    vertical-align: middle;
    font: 1.5em bold;
    color: #fff;
    border: solid #238B29 0.5px;
    border-radius: 1em;
    margin: auto;
    background-color: #53AB49;
    box-shadow: gray 0px 3px 2px;
    display: inline-block;
    transition: 0.3s;
}
.about-us-detail-button:hover{
    transform: translate(0px, 3px);
    box-shadow: none;
    background-color: #63BB59;
}
.about-us-statement{
    font-size: 1.5rem;
}
.about-us-space{
    height: 100%;
}
/*.about-us-img{
    display: flex;
    justify-content: center;
    clip-path: ellipse(49.5% 49.5% at center);
    box-shadow: #7D7D7D 5px 5px 2px;
    opacity: 0;
}
.img1{
    right: 17vw;
    width: 23vw;
    height: 23vw;
    margin-right: 18vw;
}
.img2{
    position: absolute;
    right: 5vw;
    /* top: 5vw; */
    /* bottom: 0vh;
    width: 16vw;
    height: 16vw;
}
.img3{
    /* right: 10vw;
    margin-left: 10vw;
    width: 23vw;
    height: 23vw;
}

/* #image1_back{
    width: 90%;
    clip-path: ellipse(50% 50% at center);
    background-color: black;
}
#image2_back{
    width: 80%;
    position: absolute;
    top: 100px;
    left: 100px;
    clip-path: ellipse(40% 50% at center);
    background-color: black;
}
#image3_back{
    width: 100%;
    clip-path: ellipse(40% 50% at center);
    background-color: black;
}
#image1{
    width: 100%;
    display: flex;
    justify-content: center;
    clip-path: ellipse(49.5% 49.5% at center);
}
#image2{
    width: 100%;
    display: flex;
    justify-content: center;
    clip-path: ellipse(39.5% 49.5% at center);
}
#image3{
    width: 100%;
    display: flex;
    justify-content: center;
    clip-path: ellipse(39.5% 49.5% at center);
} */

/* achivements */

.achivements{
    background-color: #fff;
    /* height: 100vh; */
    /* padding-top: 5vh; */
    padding-bottom: 5vh;
    justify-content: center;
    padding: 0 max((100% - 960px) / 2, 8vmin) 2em;
}
.achivements-now{
    overflow-x: scroll;
	display: flex;
    justify-content: space-around;
    font: 1.2em "Open Sans", sans-serif;
}
.achivements-element{
    width: 30%;
	display: flex;
    flex-direction: column;
	align-items: center;
}
.achivements-img{
    object-fit: cover;
    /* border-radius: 5%; */
    width: 100%;
    aspect-ratio: 4 / 3;
}
.achivements-script{
    margin: 5%;
}

/* inquiry */

.inquiry{
    background-color: #eee;
}
.inquiry-form{
    padding: 0 2em 0;
    font: 1.2em "Times New Roman", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
    width: 60vw;
    /* height: 70vh; */
    margin: auto;
}
.inquiry-form-name{
    width: 70%;
    padding: 0 0 1em;
}
.inquiry-form-name-title{
    margin: 0 0 0 auto;
}
.inquiry-form-name-entryspace{
    display: flex;
    /* justify-content: space-between; */
}
.form-namebox{
    width: 45%;
    margin-right: 5%;
    font-size: 1.5em;
}
.form-emailbox{
    font-size: 1.5em;
}
.form-commentbox{
    font-size: 1.5em;
}
.inquiry-form-name-label{
    display: flex;
}
.form-namelabel{
    width: 50%;
}
.form-namebox, .form-emailbox, .form-commentbox, .form-submitbox{
    border-radius: 0.3em;
    border: black solid 1px; 
}
.form-error{
    font-size: 0.5em;
    color: red;
}
.inquiry-form-email{
    display: flex;
    flex-flow: column;
    width: 67.5%;
    padding: 0 0 1em;
}
.inquiry-form-comment{
    display: flex;
    width: 100%;
    flex-flow: column;
    padding: 0 0 1em;
}
.inquiry-form-submit{
    width: 100%;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 6vh;
}
.inquiry-form-submit-button{
    font: 1.2em "Times New Roman", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;;
    background-color: rgb(72, 72, 72);
    font-weight: 700;
    color: rgb(227, 227, 227);
    height: 1.4em;
    margin: auto;
    position: absolute;
    border: #7D7D7D solid 1px;
    left: 50%;
    transform: translateX(-50%);
}

/* #logo_image{
    height: 9vh;
    padding-left: 5%;
} */

@media screen and (max-width:980px) {
    /* 段落ごとの見出し */
    .section-title{
        font-size: 3em;
    }

    /* top */
    .top-logo{
        display: block;
        left: 0;
        top: -70%;
        width: 70%;
        margin: auto;
    }
    .top-comment{
        font-size: 4vmin;
        font-weight: bold;
        left: auto;
        right: auto;
        top: auto;
        bottom: 60%;
        text-align: center;
        width: 70%;
        margin: auto;
    }
    /* news */

    .news-date{
        font-size: 3vmin;
    }
    .news-title{
        font-size: 3vmin;
    }

    /* about us */

    .about-us-discription-document{
        width: 100%;
    }
    .about-us-statement{
        font-size: 4vmin;
    }
    .about-us-detail{
        font-size: 3vmin;
        margin: auto 5%;
    }

    /* achivement */

    .achivements-now{
        display: flex;
        flex-direction: column;
        align-items: center;
        font: 4vmin "Open Sans", sans-serif;
    }
    .achivements-element{
        width: 60vmin;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .achivements-img{
        object-fit: cover;
        /* border-radius: 5%; */
        width: 100%;
        aspect-ratio: 4 / 3;
    }
    .achivements-script{
        margin: 5%;
    }

    /* inquiry */
    .inquiry{
        /* width: 70vw; */
        margin: auto;
    }
    .inquiry-piece{
        font-family: "Times New Roman", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
    }
    .inquiry-form-name{
        width: 100%;
        font-size: 4vmin;
    }
    .inquiry-form-email{
        width: 100%;
        font-size: 4vmin;
    }
    .inquiry-form-comment{
        font-size: 4vmin;
    }
    .inquiry-form-submit-button{
        font-size: 4vmin;
    }
    .form-namebox{
        font-size: 6vmin;
    }
    .form-emailbox{
        font-size: 6vmin;
    }
    .form-commentbox{
        font-size: 6vmin;
    }
    .form-error{
        font-size: 2vmin;
        color: red;
    }
}