
@charset "UTF-8";
#header { height: 100vh;
}
#header-wrap { height: 100%; background: linear-gradient(to bottom, rgba(255,255,255,.9) 0%, rgba(255,255,255,0) 100%);
}
#top-header-wrap { position: absolute; width: 100%; height: 100vh; top: 0; left: 0; text-shadow: 1px 1px 2px rgba(255,255,255,.8), -1px 1px 2px rgba(255,255,255,.8), 1px -1px 2px rgba(255,255,255,.8), -1px -1px 2px rgba(255,255,255,.8);
}
#top-h1 { font-size: 350%; border-bottom: solid .35vw #fd7e00;
}
/*#greeting { height: 35vw;
}*/
#bg-greeting { position: absolute; top: 0; left: 0; background-repeat: no-repeat; background-position: center center; background-size: cover; height: 100%; width: 100%; /*opacity: .3;*/
}
#text-greeting { height: 100%; transition: .6s ease-out; transform: translateY(40px); opacity: 0;
}
#text-greeting.delighter.started { transform: translateY(0); opacity: 1;
}
#text-g-inner{
}
/*#text-g-inner h2 { border-bottom: solid 1px #333333;
}*/
#top-bottom-text span{ color:#fd7e00;
}
/*#text-g-inner h2 { position: relative; padding: .3em 0 .2em 1em; border-bottom: 3px solid #fd7e00; color: #333333;
}
#text-g-inner h2 span{ color:#fd7e00;
}
#text-g-inner h2::before { position: absolute; top: 0; left: .3em; transform: rotate(55deg); height: 11px; width: 12px; background: #fd7e00; content: '';
}
#text-g-inner h2::after { position: absolute; transform: rotate(15deg); top: .6em; left: 0; height: 8px; width: 8px; background: #fd7e00; content: '';
}*/
#text-g-inner h2{ color:#fd7e00; position: relative; font-size: 24px; text-align: center; border-bottom: 5px solid #ffc489;
}
#text-g-inner h2:before { content: ''; position: absolute; bottom: -5px; left: 50%; transform: translateX(-50%); width: 70px; height: 5px; background-color:#fd7e00;
}
#text-g-inner span{ color:#fd7e00;
}
#text-top-area{ background-color: rgb(255 255 255 / 85%);
}
#text-top-area h2{ width: 50%; margin: 0 auto; position: relative; padding: 0.5em 1em; color: #333333;
}
#text-top-area h2 span{ color:#fd7e00;
}
#text-top-area h2::before,
#text-top-area h2::after { display: inline-block; position: absolute; width: 10px; height: 100%; border: 3px solid #fd7e00; box-sizing: border-box; content: '';
}
#text-top-area h2::before { top: 0; left: 0; border-right: none;
}
#text-top-area h2::after { bottom: 0; right: 0; border-left: none;
}
.to-list { position: absolute; right: 1vw; top: 1vw; font-size: 80%;
}
.list-box { min-height: 12vw; overflow: auto;
}
.list-box li { border-bottom: dotted 1px ; margin-top: .8vw; padding-bottom: .8vw;
}
a.list-link { text-decoration: underline; color: #ffc83f;
}
a.list-link:hover { text-decoration: none;
}
.date-box { background-color: #ffc83f; padding-top: .3vw; color: #333333;
}
.cont-photo { background-repeat: no-repeat; background-size: cover; background-position: center center; height: 30vw;
}
#top-contents h2 { color: #fd7e00;
}
#top-contents h2::after { content: ""; display: block; height: 1px; width: 25%; background-color: #333333; margin-top: 1rem;
}
.h2-en { font-size: 60%;
}
.text-cont { transition: .6s ease-out; transform: translateY(40px); opacity: 0;
}
.text-cont.delighter.started { transform: translateY(0); opacity: 1;
}
a.bnr-link { position: relative; overflow: hidden; height: 20vw; padding: 1vw; border: solid 5px #fff; box-shadow: 0 0 5px #999; border-radius: 15px;
}
.bnr-link::after { content: ''; position: absolute; top: 0; left: 0; background-color: rgba(0,0,0); width: 100%; height: 100%; z-index: 12; opacity: .3; transition: 0.4s ease-out;
}
a.bnr-link:hover::after { opacity: .6;
}
.bnr-bg,
.bnr-bg2 { transition: transform 0.3s ease-out; position: absolute; top: 50%; left: 50%; transform: scale(1) translate(-50%, -50%);
}
.bnr-bg { height: 100%;
}
.bnr-bg2 { width: 100%;
}
.bnr-link:hover .bnr-bg,
.bnr-link:hover .bnr-bg2 { transform: scale(1.02) translate(-50%, -50%);
}
.h2-banner { /*background-color: rgba(255,255,255,.7);*/ color:#fff; position: absolute; top: 40%; width:100%; text-align: center; z-index: 123; font-size: 150%; transition: 0.4s ease-out;
}
.bnr-line { position: absolute; z-index: 123; border: solid 1px #333333; display: block; transition: 0.2s ease-out;
}
.hl { border-width: 1px 0 0 0; width: 33vw;
}
.hl { right: -33vw; bottom: 17%;
}
.bnr-link:hover .hl { right: 6%; bottom: 17%;
}
#banner h2 span{ color:#fd7e00;
}
#kyoryoku h2 { color: #fd7e00;
}
#kyoryoku h2{ position: relative; display: inline-block; text-align: center; padding:0 2em;
}
#kyoryoku h2::before, #kyoryoku h2::after { position: absolute; content: ''; top: calc(50% - 25px);	height: 50px; border-left: #fd7e00 solid 2px;
}
#kyoryoku h2::before { left:0; transform: rotate(-30deg);
}
#kyoryoku h2::after { right: 0; transform: rotate(30deg);
}
@media (min-width: 1200px){ #top-header-wrap, #greeting, .list-box { font-size: 1.1rem; } .cont-photo { height: 450px; } .STRENGTHS .absolute_body{ position: absolute; bottom: 50px; right: 50px; background-color: rgb(255 255 255 / 85%); border-radius: 15px; box-shadow: 2px 2px 3px #b5b5b5; } .AREA .absolute_body{ position: absolute; bottom: 50px; left: 50px; background-color: rgb(255 255 255 / 85%); border-radius: 15px; box-shadow: 2px 2px 3px #b5b5b5; } #top-contents { font-size: 1rem; }
}
@media (max-width: 991px){ .bnr-link::after { opacity: .6; }
}
@media (min-width: 768px) and (max-width: 1199px){ .STRENGTHS .absolute_body{ position: absolute; bottom: 20px; right: 50px; background-color: rgb(255 255 255 / 85%); border-radius: 15px; box-shadow: 2px 2px 3px #b5b5b5; } .AREA .absolute_body{ position: absolute; bottom: 20px; left: 50px; background-color: rgb(255 255 255 / 85%); border-radius: 15px; box-shadow: 2px 2px 3px #b5b5b5; }
}
@media (max-width: 767px){ #header { height: 120vw; } #top-header-wrap { height: 120vw; } #top-h1 { font-size: 250%; border-bottom-width: .8vw; } #top-bottom-text { font-size: 130%; } #greeting { line-height: 5.3vw; height: auto; } #g-header-wrap { width: 100%; } #text-greeting { transform: translateY(0); opacity: 1; } .cont-photo{ height:45vw; } a.bnr-link { height: 55vw; } .bnr-link::after { opacity: .3; } .h2-banner { height: 13vw; } .bnr-line { display: none; } .index-header::after { top: 2vw; } .to-list { top: 5.5vw; } .list-box { min-height: 30vw; } .list-box li { margin-top: 4vw; padding-bottom: 4vw; }
}
@media (max-width: 575px){ #greeting { line-height: 6vw; }
}