@charset "utf-8";

/* -------------------------------------------------- */
/* PC*/
/* -------------------------------------------------- */


/* page title */
/* -------------------------------------------------- */
.pageIntroduce {
	background: url(../../img/introduction/introduce_title_bg.jpg) no-repeat center center / cover;
}

/* youtube area */
/* -------------------------------------------------- */
#videoWrap {
	padding-top: 100px;
	margin-top: 100px;
}

#video {
	position: relative;
	width: 100%;
	height: 510px;
	overflow: hidden;
}

#video:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.2);
	z-index: 10;
}

#video .bgVideo {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.bgVideo.pc {
	display: block;
}

.bgVideo.sp {
	display: none;
}

#video a {
	display: block;
	width: 100%;
	height: 510px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	margin: auto;
}

#video span {
	display: block;
	width: 136px;
	height: 136px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -95px 0 0 -68px;
	z-index: 101;
}

.switch {
	width: 100%;
	height: 100%;
}

/* intro */
/* -------------------------------------------------- */
.intro {
	background: #FFFFFF;
	margin: -55px auto 250px;
	padding: 100px 0 0;
	position: relative;
	z-index: 102;
	border-radius: 10px 10px 0 0;
}

.introInner {
	width: calc(100% - 300px);
	margin: 0 auto;
	position: relative;
}

.introHead {
	position: absolute;
	top: 0;
	left: -15px;
}

.introHeadTxt {
	font-size: 3.0rem;
	line-height: 2.0;
	letter-spacing: 0.36em;
}

.introTxtArea {
	margin-left: 300px;
}

.introTxt {
	margin-bottom: 1em;
	font-size: 1.8rem;
	line-height: 1.5;
}

.introHeadTxt ._br:before {
	content: '\A';
	white-space: pre;
}

/* 魅力 */
/* -------------------------------------------------- */
#charm {
	margin-bottom: 100px;
}

.charmRow {
	margin-bottom: 80px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
}

.charmContFigure {
	width: 57.3%;
	overflow: hidden;
}

.charmContFigOdd {
	border-radius: 0 15px 15px 0;
}

.charmContDes {
	width: 42.7%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
}

.charmContIn {
	width: 100%;
	max-width: 820px;
	padding: 0 16.5%;
}

.charmContHead {
	margin-bottom: 45px;
	font-size: 2.6rem;
	letter-spacing: 0.15em;
}

.charmContTxt {
	font-size: 1.6rem;
	line-height: 1.7;
}

.charmContKome {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.7;
	color: #3EB134;
}

.charmContFigEven {
	order: 2;
	border-radius: 15px 0 0 15px;
}

.charmContDesEven {
	order: 1;
	justify-content: flex-end;
}

/* 四季の生き物・植物たち */
/* -------------------------------------------------- */
#season {
	padding-top: 100px;
	border-top: 1px solid #e1e3de;
}

.secTtlSeason {
	margin-bottom: 45px;
}

.seasonTxt {
	margin: 0 auto 65px;
	font-size: 1.6rem;
	line-height: 1.7;
	text-align: center;
}

/* slider */
.seasonList {
	margin-bottom: 110px;
}

.seasonBoxFigure {
	margin-bottom: 15px;
}

.seasonBoxTxt {
	font-size: 1.4rem;
	line-height: 1.3;
}

@media screen and (max-width: 1300px) {
	.introTxtArea {
		margin-left: 23.0vw;
	}

	.introInner {
		width: calc(100% - 23vw);
		margin: 0 auto;
		position: relative;
	}
}

/* -------------------------------------------------- */
/* TAB&SP */
/* -------------------------------------------------- */
@media screen and (max-width: 1024px) {
	.intro {
		margin: -75px auto 120px;
	}

	.introInner {
		width: calc(100% - 10vw);
	}

	.introHeadTxt {
		font-size: 2.6rem;
	}

	.charmContFigure {
		width: 100%;
		border-radius: 0;
	}

	.charmContDes {
		width: 100%;
	}

	.charmContIn {
		width: calc(100% - 100px);
		margin: auto;
		padding: 50px 0 0;
	}

	.charmContFigEven {
		order: 1;
		border-radius: 0;
	}

	.charmContDesEven {
		order: 2;
		justify-content: flex-end;
	}

	.seasonTxt {
		width: 80%;
	}

}


@media screen and (max-width:959px) {
	.bgVideo.pc {
		display: none;
	}

	.bgVideo.sp {
		display: block;
	}
}


/* -------------------------------------------------- */
/* TAB(調整) */
/* -------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {}


@media screen and (max-width: 910px) {
	#video {
		height: 56.0vw;
	}

	#video a {
		height: 56.0vw;
	}

	#video span {
		width: 14.9vw;
		height: 14.9vw;
		margin: -10.44vw 0 0 -7.47vw;
	}
}

/* -------------------------------------------------- */
/* SP(調整) */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
	.intro {
		margin: -40px auto 80px;
		padding: 60px 0 0;
	}

	.introInner {
		width: 100%;
	}

	.introHead {
		position: relative;
		top: 0;
		left: 0;
	}

	.introHeadTxt {
		margin-bottom: 30px;
		font-size: 2.2rem;
		line-height: 1.6;
		letter-spacing: 0.2em;
		writing-mode: inherit;
	}

	.introHeadTxt ._br:before {
		content: '';
		white-space: inherit;
	}

	.introTxtArea {
		margin-left: 0;
	}

	.introTxt {
		font-size: 1.5rem;
		line-height: 1.5;
	}

	#charm {
		margin-bottom: 80px;
	}

	.charmRow {
		margin-bottom: 70px;
	}

	.charmContIn {
		width: calc(100% - 10%);
		margin: auto;
		padding: 30px 0 0;
	}

	.charmContHead {
		margin-bottom: 20px;
		font-size: 2.0rem;
	}

	.charmContTxt {
		font-size: 1.6rem;
	}

	.charmContKome {
		font-size: 1.4rem;
	}

	#season {
		padding-top: 80px;
	}

	.seasonTxt {
		width: 100%;
		margin: 0 auto 50px;
		font-size: 1.6rem;
		letter-spacing: 0.06em;
		font-feature-settings: "palt";
	}

	.seasonList {
		width: calc(100% - 60px);
		margin: 0 auto 80px;
	}

	.seasonList img {
		width: 100%;
	}

	.seasonTxt {
		width: 100%;
	}
}