@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New&display=swap');

.concept-cont{
	font-family: "Noto Sans JP", sans-serif;
	font-weight:400;
}

/*---------------------------------------------------------------
	kv
--------------------------------------------------------------- */
.concept-cont .kv{
	position: relative;
	z-index: 2;
	text-align: center;
	background-image: url("../images/concept/img_kv.jpg");
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	color: #FFF;
	box-sizing: border-box;
	padding-bottom: 32%;
}


.concept-cont .kv_photo-area{
	width: 830px;
	margin:0 auto;
	position: relative;
}
.concept-cont .kv_photo{
	width: 55%;
	text-align: center;
	margin: 0 auto 0 auto;
	position: relative;
}
.concept-cont .kv_photo img{
	top: 180px;
	left: 0;
	width: 100%;
	height: auto;
}
.concept-cont .kv_photo .img_kv_photo_01{
	z-index: 1;
	position: absolute;
}
.concept-cont .kv_photo .img_kv_photo_02{
	z-index: 0;
	position: absolute;
	mix-blend-mode: multiply;
	display: block!important;
}
.concept-cont .kv .txt-tate{
	writing-mode: vertical-rl;
	position: absolute;
	top: 150px;
	right: 5%;
	z-index: 1;
	display: block; /* ← flexをやめる！ */
	text-align: start; /* ← 上寄せ */
}
.concept-cont .kv .txt-tate p{
	line-height: 2;
	font-size: 22px;
	letter-spacing:0.09em;
}
.concept-cont .kv .txt-tate p .yoko {
	text-combine-upright: all;
	writing-mode: vertical-rl;
	display: inline-block;
	transform: translateX(-0.2em);
	letter-spacing:0em;
}


.concept-cont .kv h1{
	width: 830px;
	margin:0 auto;
	margin-bottom: 25px;
	padding:77.5% 0 0 0;
}

.concept-cont .kv .txt-area{
	width: 800px;
	margin:0 auto;
	position: relative;
}
.concept-cont .kv .txt-area .txt-h1{
	text-align: center;
	font-size: 36px;
	margin-bottom: 70px;
	letter-spacing:0.06em;
	font-weight:500;
}


.concept-cont .kv .txt-area2{
	margin-bottom: 70px;
	text-align: left;
}
.concept-cont .kv .txt-area2 p{
	margin-bottom: 1.5em;
	line-height: 2.0;
}

.concept-cont .kv .txt-area3{
	text-align: center;
}
.concept-cont .kv .txt-area3 dl dt{
	font-size: 40px;
	letter-spacing:0.03em;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	line-height: 1;
	padding-bottom: 15px;
	margin-bottom: 15px;
	font-weight:500;
}
.concept-cont .kv .txt-area3 dl dd{
	font-size: 20px;
	letter-spacing:0.06em;
	line-height: 1.6;
}

.concept-cont .kaigyou{
	display: none;
}
.concept-cont .tex-mini{
	font-size: 70%;
}

.concept-cont .kaigyou2{
	display: none;
}

@media only screen and (max-width:1000px) {


.concept-cont .kv_photo-area{
	width: auto;
	margin: 0 5%;
}
.concept-cont .kv .txt-tate{
	margin: 0;
	top: 30px;
	right: 0;
}
.concept-cont .kv .txt-tate p{
	line-height: 1.5;
	letter-spacing:0.06em;
	font-size: 3.8vw;
}

.concept-cont .kv{
	background-image: url("../images/concept/img_kv_sp.jpg");
	padding-bottom: 40%;
}
.concept-cont .kv_photo{
	width: 55%;
	padding:100px 0 20px 0;
}
.concept-cont .kv_photo .img_kv_photo_01{
	top: 100px;
}
.concept-cont .kv_photo .img_kv_photo_02{
	top: 100px;
}
.concept-cont .kv h1{
	width: auto;
	margin-left:5%;
	margin-right:5%;
	padding-top:52%;
}
.concept-cont .kv .txt-area{
	width: auto;
	margin-left:5%;
	margin-right:5%;
}

.concept-cont .kv .txt-area .txt-h1{
	font-size: 5vw;
	margin-bottom: 10%;
}
.concept-cont .kv .txt-area2{
	margin-bottom: 10%;
}
.concept-cont .kv .txt-area2 p{
	font-size: 16px;
}

.concept-cont .kv .txt-area3 dl dt{
	font-size: 6vw;
	line-height: 1.3;
}
.concept-cont .kv .txt-area3 dl dd{
	font-size: 3.5vw;
}
.concept-cont .kaigyou{
	display: block;
}

}


@media only screen and (max-width:768px) {
.concept-cont .kaigyou2{
	display: block;
}
.concept-cont .kv .txt-area2 p{
	font-size: 3.5vw;
}



}

