@charset "UTF-8";

/* --------------------------------------------------
	メインビジュアル
-------------------------------------------------- */

div#main { width: 100%; position: relative; /*display: flex; align-items: center; justify-content: center;*/ }
div#main h1 { width: 100%; text-align: center; position: absolute; z-index: 99; }
/*
div#main { width: 100%; position: relative; display: flex; align-items: center; justify-content: center; }
div#main h1 { position: absolute; z-index: 99; }
*/
div#main img.logo {}
div#main div.bx-wrapper { width: 100%; position: absolute; top: 0; left: 0; overflow: hidden; }
div#main div.bx-viewport { width: 100vw !important; }
div#main ul { list-style: none; }
div#main li { height: 100vh; background-size: cover !important; position: absolute; top: 0; left: 0; }
/*div#main li.main01 { background: url(../img/home/main01.jpg) center no-repeat; }*/
div#main li.main02 { background: url(../img/home/main02.jpg) center no-repeat; }
div#main li.main03 { background: url(../img/home/main03.jpg) center no-repeat; }
div#main li.main04 { background: url(../img/home/main04.jpg) center no-repeat; }
div#main li.main05 { background: url(../img/home/main05.jpg?20230414) center no-repeat; }
div#main li.main06 { background: url(../img/home/main06.jpg?20230414) center no-repeat; }
div#main li.main07 { background: url(../img/home/main07.jpg?20230414) center no-repeat; }
div#main li.main08 { background: url(../img/home/main08.jpg?20230414) center no-repeat; }
div#main div.effect { margin: 0 auto; width: 1px; height: 20%; background: #fff; position: absolute; left: 0; right: 0; bottom: 0; z-index: 9999; animation: 2s infinite ease effect; }
@keyframes effect {
0% { height: 20%; opacity: 0; }
100% { height: 0; opacity: 1; }
}

@supports (-webkit-touch-callout: none) {
div#main li { height: -webkit-fill-available; }
}

@media screen and (max-width: 767px) {
div#main img.logo { width: 100px; height: auto; }
}

/* --------------------------------------------------
	コンテンツ
-------------------------------------------------- */

main { width: 100%; text-align: justify; position: relative; z-index: 999; }
main h2 { font-size: 2.4rem; }

@media screen and (max-width: 767px) {
main h2 { font-size: 2rem; }
}

/* --------------------------------------------------
	ごあいさつ
-------------------------------------------------- */

section#greetings { margin: 0 0 100px; padding: 150px 0; background: url(../img/home/greetingsBack.jpg) center no-repeat; background-size: cover; background-attachment: fixed; color: #fff; text-shadow: 0 0 10px #000; }
section#greetings div.inner { margin: 0 auto; width: 900px; }
section#greetings h2 { margin-bottom: 40px; font-weight: normal; text-align: center; }
section#greetings h2::after { content: ''; margin: 0.5em auto 0; width: 50px; height: 1px; background: #fff; display: block; }
section#greetings dl { display: flex; justify-content: space-between; }
section#greetings dt { width: 300px; text-align: center; flex-shrink: 0; }
section#greetings dt img { margin-bottom: 1em; width: 300px; height: auto; }
section#greetings dd { width: 550px; }
section#greetings dd p { margin: 0; }
section#greetings dd p.right { margin-bottom: 2rem; text-align: right; }
section#greetings dd div.profile { padding: 24px; background: rgba(0,0,0,0.3); font-size: 1.4rem; }
section#greetings dd div.profile strong { margin-bottom: 0.25em; font-size: 1.6rem; font-weight: normal; text-align: center; display: block; }
section#greetings dd div.profile ul { margin: 0 1.5em; }

@media screen and (max-width: 767px) {
section#greetings { margin: 0 0 50px; padding: 50px 0; background-attachment: scroll; }
section#greetings div.inner { width: auto; }
section#greetings dl { display: block; }
section#greetings dt { margin-bottom: 2em; width: auto; }
section#greetings dt img { width: 240px; height: auto; }
section#greetings dd { padding: 0 15px; width: auto; }
section#greetings dd div.profile { padding: 20px; }
}

/* --------------------------------------------------
	お知らせ
-------------------------------------------------- */

section#news { margin: 0 auto 100px; padding: 40px 100px; width: 700px; background: rgba(255,255,255,0.7); box-sizing: border-box; }
section#news h2 { margin-bottom: 40px; padding-bottom: 20px; border-bottom: solid 1px #2e3f32; text-align: center; }
section#news dl { margin: 1.5em 0; line-height: 1.4; display: flex; }
section#news dt { margin-right: 1em; white-space: nowrap; }
section#news dd {}

@media screen and (max-width: 767px) {
section#news { margin: 0 auto 50px; padding: 24px; width: 90%; }
section#news h2 { margin-bottom: 20px; }
section#news dl { display: block; }
section#news dt { margin-right: 0; }
}

/* --------------------------------------------------
	フォトギャラリー
-------------------------------------------------- */

section#gallery {}
section#gallery h2 { margin-bottom: 40px; text-align: center; }
section#gallery h2::after { content: ''; margin: 0.5em auto 0; width: 50px; height: 1px; background: #2e3f32; display: block; }
section#gallery ul { list-style: none; }
section#gallery li { width: 192px; height: 192px; float: left; position: relative; }
section#gallery li a { width: 192px; height: 192px; display: block; overflow: hidden; }
section#gallery li img { width: 192px; height: 192px; transition: all 0.3s ease; }
section#gallery li img:hover { transform: scale(1.1,1.1); }
section#gallery li img.icon { width: 80px; height: auto; position: absolute; top: 0; left: 0; z-index: 99; }
section#gallery li img.icon:hover { opacity: 1; transform: unset; }

@media screen and (max-width: 767px) {
section#gallery li { margin-right: 5px !important; width: 150px !important; height: 150px; }
section#gallery li a { width: 150px; height: 150px; }
section#gallery li img { width: 150px; height: 150px; }
}
