
@charset "UTF-8";
#header { height: 100vh;}
#top-header-wrap { position: absolute; width: 100%; height: 100vh; top: 0; left: 0;}#top-top-text{ font-size: 200%; line-height: 1.8; margin-top:15vw; margin-bottom:10vw;}#top-bottom-text{ font-size: 200%; line-height: 1.8;}#greeting { height: 35vw;	margin-bottom:10rem;}
#text-greeting { height: 100%; transition: .6s ease-out; transform: translateY(40px); opacity: 0; background: linear-gradient(45deg, #969696, #FAFAFA, #969696);}#text-greeting.delighter.started { transform: translateY(0); opacity: 1;}
#greeting h1 { font-size: 350%;}
#text-g-inner h2 { border-bottom: solid 1px #222222;}
#bg-greeting { position: absolute; content: "";	width: 100%; height: 100%; top: 5rem; right: 0; background: url(../images/bg-greeting.jpg) no-repeat center/cover;	z-index: -1;}
#top-contents {background-color: #FAFAFA;}
#top-contents h1 { font-size: 250%;}#top-contents header { transition: .6s ease-out; transform: translateY(-40px); opacity: 0;}#top-contents header.delighter.started { transform: translateY(0); opacity: 1;}
#top-contents dl { height: 100%; transition: .6s ease-out; transform: translateY(40px); opacity: 0;}#top-contents dl.delighter.started { transform: translateY(0); opacity: 1;}
#top-contents img {border-radius: 10px;}
#top-contents dt {font-size: 140%;	border-bottom:1px solid #222;	padding-bottom: .25rem;	margin-bottom: 1rem;}
#top-contents span {font-size:140%; font-style: italic;	margin-right: .5rem;}
.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: #bf0707;}a.list-link:hover { text-decoration: none;}.date-box { background-color: #bf0707; padding-top: .3vw; color: #ffffff;}
.cont-photo { background-repeat: no-repeat; background-size: cover; background-position: center center; height: 50vw;}
#top-contents h2 { color: #969696;}#top-contents h2::after { content: ""; display: block; height: 1px; width: 25%; background-color: #222222; margin-top: 1rem;}.h2-en { font-size: 40%;}.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;}.bnr-link::after { content: ''; position: absolute; top: 0; left: 0; background-color: rgba(0,0,0,.4); width: 100%; height: 100%; z-index: 12; opacity: .3; transition: 0.4s ease-out;}a.bnr-link:hover::after { opacity: .;}.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 { color: #ffffff;	font-weight: 600;	font-size: 180%; position: absolute; top: 40%; left: 0; width: 100%; text-align: center; z-index: 123; transition: 0.4s ease-out; height: 4vw;}
#area {padding: 5rem 0;	background: linear-gradient(#fff 0% 20%, #dbdbdb 20% 80%, #fff 70% 100%);}
#area h1 { font-size: 350%;}
#recruit {position: relative; z-index: 2;}#recruit:before { position: absolute; content: ""; width: 30%; height: 60%; left: 0; top: 10%; background-color: #555; z-index: -1;}
#recruit h1 { font-size: 350%;}#recruit dt { font-size: 120%;	border-bottom: 1px solid #222;}
@media (min-width: 1200px){ #top-header-wrap, #greeting, .list-box { font-size: 1.1rem; } .cont-photo { height: 555px; } #top-contents { font-size: 1rem; }}
@media (max-width: 991px){ .bnr-link::after { opacity: .6; }}
@media (max-width: 767px){ #header { height: 120vw; } #top-header-wrap { height: 120vw; } #top-top-text { font-size: 140%; } #top-bottom-text { font-size: 140%; } #greeting { line-height: 5.3vw; height: auto; } #g-header-wrap { width: 100%; } #text-greeting { transform: translateY(0); opacity: 1; } 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 (min-width: 576px){#top-contents dd {padding-left:2em;}}
@media (max-width: 575px){#top-top-text{ line-height: 1.5;}#top-bottom-text{ line-height: 1.5;}#greeting { line-height: 6vw; }
#greeting h1 { font-size: 250%;}#top-contents h1 { font-size: 200%;}#area {padding: 0;}#recruit {color: #fff;}#recruit:before { width: 100%;}#recruit dt {border-bottom:1px solid #fff;}}