@charset "utf-8";
/*--------------------------------------
	copyright :
--------------------------------------*/

@import url(normalize.css);
@import url(../_plugin/fontawesome/css/all.min.css);
@import url(https://unpkg.com/aos@next/dist/aos.css);
/*@import url(../_plugin/lightGallery/css/lightgallery.min.css);*/
@import url(common_parts.css);
@import url(common.css);


/* index ==============================*/

/* mv ----------*/
#mv { position: relative; margin-bottom: 5rem; padding: 0; }
#mv .img_box { position: relative; }
#mv .img_box::before { position: absolute; top: 0; left: 0; content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 50vw 70vw 0 0; border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent; }
#mv img { width: 100%; }
#mv h2 { position: absolute; top: 50%; left: 50%; width: 100%; font-size: 2.7rem; color: #fff; text-align: center; text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.7); transform: translate(-50%, -50%); }
@media screen and ( min-width: 419px ) {
	#mv h2 { font-size: 6vw; }
}
@media screen and ( min-width: 769px ) {
	#mv h2 { top: 3vw; left: 3vw; width: auto; font-size: 3.2vw; text-align: left; transform: none; }
}

/* main  ----------*/
#main a { word-break: break-all; }

/* about */
#about small { line-height: 1.3; }
@media screen and ( min-width: 769px ) {
	#about p { text-align: center; }
}

/* movie */
section#movie { padding: 5rem 2rem; background: rgba(221, 221, 221, 0.3); }
#movie .movie_wrap { position: relative; width: 100%; overflow: hidden; margin: auto; border: 1px solid #ddd; }
#movie video { width: 100%; height: 100%; vertical-align: top; }
@media screen and ( min-width: 769px ) {
	#movie .movie_wrap { max-width: 80%; margin: auto; }
	#movie p { width: 80%; margin: auto; }
}

/* tighten */
section#tighten { padding: 5rem 2rem; background: rgba(221, 221, 221, 0.3); }
#tighten h2 { line-height: 1.3; }
#tighten p strong { font-size: 110%; }
#tighten .item_wrap { position: relative; }
#tighten .item_wrap .img_box { position: relative; z-index: 1; }
#tighten .item_wrap p { position: relative; z-index: 2; width: 95%; margin: -15rem auto 0; padding: 2rem; background: rgba(255, 255, 255, 0.8); }
#tighten p.connect { margin: 5rem 0; font-size: 200%; }
@media screen and ( min-width: 415px ) {
	#tighten .item_wrap p { margin: -25rem auto 0; }
}
@media screen and ( min-width: 769px ) {
	section#tighten { padding: 5rem 2rem 15rem; }
	#tighten p { text-align: center; }
	#tighten .item_wrap { flex-wrap: wrap; }
	#tighten .item_wrap .img_box { width: 65%; }
	#tighten .item_wrap p { font-size: 1.7vw; position: absolute; bottom: -10rem; width: 80%; margin: auto; padding: 3rem; }
	#tighten .item_wrap.flb p { position: absolute; bottom: -10rem; right: 0; }
	#tighten .item_wrap.flb_r p { position: absolute; bottom: -10rem; left: 0; }
	#tighten p.connect { margin: 15rem 0 5rem; }
}
@media screen and ( min-width: 1024px ) {
	#tighten .item_wrap p { font-size: 2rem; }
}


/* privacy ==============================*/

/* main  ----------*/
#privacy_policy #main { margin-top: 5rem; }
#privacy_policy #main p { font-size: 1.6rem; }
#privacy_policy #privacy_contents ol > li:not(:nth-last-of-type(1)) { margin-bottom: 3rem; }
#privacy_policy #privacy_contents li h3 { padding-left: 1.5em; position: relative; }
#privacy_policy #privacy_contents li h3 span { position: absolute; top: 0; left: 0; }
#privacy_policy #privacy_contents li p,
#privacy_policy #privacy_contents li ul { padding: 0 1.5rem; margin: 0; }
#privacy_policy #privacy_contents li ul > li { padding-left: 3em; position: relative; }
#privacy_policy #privacy_contents li ul > li span { position: absolute; top: 0; left: 0; }