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

@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
==============================*/
/* 共通 */
section { padding: 0 2rem; }
section:not(:nth-last-of-type(1)) { margin-bottom: 5rem; }
section:nth-of-type(2n) { background: rgba(229, 229, 229, 0.5); padding: 3rem 2rem; }
section .sec_inner { width: 100%; max-width: 120rem; margin: auto; }
section h2 { font-size: 3.6rem; }
section h3 { font-size: 2.4rem; }
.read_more { width: 20rem; margin: auto;  }
.btn { margin: 0 auto; padding: 4rem 2rem 4rem; }
.btn a { position: relative; z-index: 1; display: block; width: 100%; max-width: 250px; margin: 0 auto; padding: 1rem .5rem 1rem 2rem; color: #333; background-color: transparent; border: 1px solid #808080; transition: .5s ease all; }
.btn a:hover { color: #fff; background-color: #29abe2; border-color: #29abe2; border-radius: 1rem; }


/* mv ----------*/
#mv { margin-bottom: 5rem; }
#mv img { display: none; } /* このverを選択したらHTML内のMV画像を削除 */
#mv h2 { font-size: 3.4rem; }
#mv h3 { font-size: 2.4rem; line-height: 1.3; }
#mv p { font-size: 2rem; }
#mv .img_box { height: 100vh; position: relative; overflow: hidden; background: url('https://placehold.it/1920x800?text=sample')no-repeat center; background-size: cover; }
#mv .img_box::after { position: absolute; z-index: 1; top: 0; left: 0; content: ''; display: block; width: 100%; height: 100%; background: transparent; background-image: radial-gradient(rgba(0, 0, 0, 0.6) 30%, transparent 0), radial-gradient(rgba(0, 0, 0, 0.6) 30%, transparent 0); background-position: 0 0, 2px 2px; background-size: 4px 4px; }
#mv .mv_inner { position: relative; }
#mv .img_box { position: relative; height: 650px; overflow: hidden; }
#mv .img_box img { position: absolute; top: 50%; left: 50%; max-width: inherit; transform: translate(-50%, -50%); }
#mv .catch { position: absolute; top: 50%; left: 50%; width: 100%; padding: 0 2rem; color: #fff; transform: translate(-50%, -50%); z-index: 2; }
@media screen and ( min-width: 480px ) {
	#mv { margin-bottom: 5rem; }
	#mv h2 { font-size: 5rem; }
	#mv h3 { font-size: 2.6rem; line-height: 1.3; }
	#mv p { font-size: 2rem; }
	#mv .catch p { text-align: center; }
}
@media screen and ( min-width: 768px ) {
	#mv { margin-bottom: 10rem; }
}

/* sec_01 */
#sec_01 .flb { display: block; }
#sec_01 .img_box { text-align: center; }
#sec_01 .text_box { box-shadow:0px 0px 6px -3px #000000; border-radius: 5px; }
#sec_01 .read_more { margin: 0 0 0 auto; }
#sec_01 .btn { padding-bottom: 0; }
#sec_01 li .text_box { margin: 1rem 0 3rem; padding: 2rem }
@media screen and ( min-width: 768px ) {
	#sec_01 li { position: relative; margin: 0 0 5rem; }
	#sec_01 li:nth-of-type(odd) { display: flex; }
	#sec_01 li:nth-of-type(even) { display: flex; flex-flow: row-reverse; }
	#sec_01 li:nth-of-type(odd) .text_box { background: rgba(255,255,255,0.7); position: absolute; right: 0; width: 80%; bottom: 1rem; padding: 5rem; }
	#sec_01 li:nth-of-type(even) .text_box { background: rgba(255,255,255,0.7); position: absolute; left: 0; width: 80%; bottom: 1rem; padding: 5rem; }
}
@media screen and ( min-width: 1024px ) {
	#sec_01 li .text_box { padding: 5rem; }
	#sec_01 li:nth-of-type(odd) .text_box,
	#sec_01 li:nth-of-type(even) .text_box { bottom: 5rem; }
}
/* sec_02 */
#sec_02 img { width: 100%; }
#sec_02 .flb_r { display: block; }
#sec_02 .text_box { margin-top: 3rem; }
#sec_02 ..btn a { max-width: 350px; }

/* sec_03 */
#sec_03 img { width: 100%; }
#sec_03 .flb { display: block; }
#sec_03 .text_box { margin-top: 3rem; }
#sec_03 ..btn a { max-width: 350px; }

/* sec_04 */
#sec_04 ul { border: 1px solid #b3b3b3; padding: 1rem; }
#sec_04 li { padding: 1rem 0; }
#sec_04 li:not(:nth-last-of-type(1)) { border-bottom: 1px dashed #b3b3b3; }
#sec_04 .news_item,
#sec_04 li p { display: block; }
#sec_04 li h3 { position: relative; padding-left: 10rem; font-size: 1.8rem; }
#sec_04 li h3 > span { position: absolute; top: 0; left: 0; max-width: 80px; padding: 0.3rem 1rem; font-size: 1.4rem; color: #fff; background: #333; }
#sec_04 li .hover-underline-animation span::after { background-color: #333; }
@media screen and ( min-width: 768px ) {
	#sec_04 .news_item { display: table; }
	#sec_04 li h3 { font-size: 2.4rem; line-height: 1.2; }
	#sec_04 li p { display: table-cell; min-width: 125px; padding-right: 1rem; font-size: 1.6rem; }
}