@charset "utf-8";
/*--------------------------------------
copyright :
page style sheet : index
--------------------------------------*/

@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/OwlCarousel/assets/owl.carousel.min.css);
@import url(../_plugin/OwlCarousel/assets/owl.theme.default.css);
/*@import url(../_plugin/lightGallery/css/lightgallery.min.css);*/
@import url(common_parts.css);
@import url(common.css);


/*
index
==============================*/
/* テキスト */
.ribbon2 { position: relative; padding: 1rem 0; color: #ffffff; background: #ddd; box-shadow: 10px 0 0 0 #ddd, -10px 0 0 0 #ddd, 0 3px 3px 0 rgba(0,0,0,0.1); }
.ribbon2:before { position: absolute; top: 100%; left: -10px; content: ""; width: 0; height: 0; border-width: 0 20px 20px 0; border-style: solid; border-color: transparent; border-right-color: #d2d2d2; }
.ribbon2:after { position: absolute; top: -20px; right: -10px; content: ""; width: 0; height: 0; border-width: 0 20px 20px 0; border-style: solid; border-color: transparent; border-bottom-color: #d2d2d2; }

/* デザイン */
/* mv ----------*/
#mv { overflow: hidden; margin-top: 0.5rem; }
#mv .img_box::after { position: absolute; top: 0; left: 0; content: ""; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #333), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #333),color-stop(.75, #332), color-stop(.75, transparent),to(transparent)); background-size: 3px 3px; }
#mv h2 { position: absolute; z-index: 2; top: 50%; width: 100%; font-size: 5rem; color: #fff; transform: translateY(-50%); }
/* main ----------*/
section:nth-of-type(even) { padding: 5rem 2rem; background: #e5e5e5; }
section h2 { margin-bottom: 5rem; font-size: 3rem; }
section h3 { font-size: 2.6rem; }
section p { font-size: 2rem; }


/* flow ==============================*/
/* mv ----------*/
#flow #mv .img_box { height: 100vh; background-image: url("../_img/index/20.jpg"); background-position: center center; background-repeat: no-repeat; background-size: cover; }

/* sec_01 */
#sec_01 .flb { position: relative; margin-bottom: 5rem; flex-wrap: wrap; }
#sec_01 .flb .img_box { width: 70%; }
#sec_01 .flb .text_box { position: absolute; bottom: 4rem; right: 0; width: 100%; max-width: 700px; }
#sec_01 .flb .text_item { padding: 4rem 2rem; background: rgba(255, 255, 255, 0.85); z-index: 1; }
#sec_01 .flb .text_box::after { content: ""; width: 100%; height: 100%; display: block; position: absolute; top: 2rem; left: 2rem; background: rgba(0, 0, 0, 0.05); z-index: -1; }
#sec_01 .flb figure { width: calc( (99.999% - 3rem) / 2 ); }
#sec_01 .flb figure:not(:nth-last-of-type(1)) { margin-right: 3rem; }
#sec_01 .text_item p:nth-of-type(1) a { text-decoration: underline; }
@media screen and ( max-width: 1024px ) {
	#sec_01 .flb .text_box { width: 70%; max-width: inherit; }
}
@media screen and ( max-width: 768px ) {
	#sec_01 .flb:nth-of-type(2) { display: block; }
	#sec_01 .flb .img_box { width: 100%; }
	#sec_01 .flb .text_box { position: relative; top: 0; width: 95%; margin-top: -5rem; transform: none; }
	#sec_01 .flb .text_box::after { top: 2rem; left: 2rem; }
	#sec_01 .flb figure { width: 100%; margin: auto; }
	#sec_01 .flb figure:nth-of-type(1) { margin-bottom: 3rem; }
}
@media screen and ( max-width: 480px ) {
	#sec_01 .flb .text_box { padding: 2rem 1.5rem; }
}
/* sec_02 */
#sec_02 .flb_r { position: relative; margin-bottom: 5rem; flex-wrap: wrap; }
#sec_02 .flb_r .img_box { width: 70%; }
#sec_02 .flb_r .text_box { position: absolute; bottom: 3rem; left: 0; width: 100%; max-width: 700px; padding: 4rem 2rem; background: rgba(255, 255, 255, 0.7); }
#sec_02 .flb figure { width: calc( (99.999% - 3rem) / 2 ); }
#sec_02 .flb figure:not(:nth-last-of-type(1)) { margin-right: 3rem; }
@media screen and ( max-width: 1024px ) {
	#sec_02 .flb_r .text_box { width: 70%; max-width: inherit; }
}
@media screen and ( max-width: 768px ) {
	#sec_02 .flb_r .img_box { width: 100%; }
	#sec_02 .flb_r .text_box { position: static; width: 95%; margin: auto; margin-top: -5rem; transform: none; }
}
@media screen and ( max-width: 480px ) {
	#sec_02 .flb_r .text_box { padding: 2rem 1.5rem; }
}

/* price ==============================*/
#price #mv .img_box { height: 100vh; background-image: url("../_img/index/17.jpg"); background-position: center center; background-repeat: no-repeat; background-size: cover; }
/* price_list */
#price_list .flb { flex-wrap: wrap; }
#price_list table { width: 100%; }
#price_list ul { width: calc((99.999% - 3rem) / 2); margin-right: 2rem; }
#price_list ul:nth-of-type(2) { margin-right: 0; }
#price_list ul li { background: #efe7dc; margin-bottom: 20px; padding: 3%; box-shadow: 0 6px 3px -3px rgba(0,0,0,0.3); border-radius: 7px; }
#price_list ul li p { border-bottom:solid 1px #948881; font-weight: bold; font-size: 2rem; }
#price_list ul li tr:not(:nth-last-of-type(1)) { border-bottom: dotted 1px #948881; }
#price_list ul li th { vertical-align: middle; }
#price_list ul li td { padding: 1rem; text-align: right; }
#price_list_02 { background: none; }
#price_list_02 table { width: 100%; }
#price_list_02 .price_table li:not(:nth-last-of-type(1)) { margin-bottom: 4rem; }
#price_list_02 .price_table tr { border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
#price_list_02 .price_table th { text-align: left; vertical-align: middle; }
#price_list_02 .price_table td { text-align: right; padding: 1rem 0; }
#price_list_02 .price_table p { font-size: 1.4rem; }
#price_list_02 .price_table tr:nth-of-type(1) { border-bottom: 3px solid #e5e5e5; }
#price_list_02 .price_table tr:nth-of-type(1) th { font-size: 2rem; }
#price_list_02 .price_table tr:nth-of-type(1) td { padding: 0; }
@media screen and ( max-width: 768px ) {
	#price_list .flb { display: block; }
	#price_list ul { width: 100%; margin: 0; }
	#price_list_02 .price_table p { font-size: 1.6rem; }
}