@charset "utf-8";

/*-------------------------------
MainVisual
---------------------------------*/
.mv .mv-container {
    position: relative;
    z-index: 1;
}

.mv .mv-container img {
    width: 100%;
    max-width: none;
}

.mv .mv-ttl {
	position: absolute;
	left: 11.4%;
	top: calc(50%);
    z-index: 1;
    margin: 0;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: white;
	font-size: 3.056vw;
	font-weight: 400;
	text-shadow: 0 4px 4px rgba(5, 5, 5, 0.6);
}

@media screen and (max-width: 480px) {
    .mv .mv-container {
        height: 104.794vw;
    }

    .mv .mv-container img {
        width: auto;
        height: 100%;
    }

    .mv .mv-ttl {
        font-size: 8.219vw;
    }
}

/*-------------------------------
Text
---------------------------------
.jc-c {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
}

.lh-14 {
    line-height: 1.4;
}
.lh-15 {
	line-height: 1.5;
}
.lh-16 {
    line-height: 1.6;
}
.lh-17 {
    line-height: 1.7;
}
.lh-18 {
    line-height: 1.8;
}

/*-------------------------------
Heading
---------------------------------
.heading_text {
    position: relative;
    margin: 0 0 1.38em;
    padding-bottom: 0.633em;
    font-size: 45.83px;
    font-weight: 400;
    white-space: nowrap;
}
.heading_text:after {
	position: absolute;
	left: 6px;
	bottom: 0;
	width: 131px;
    height: 5px;
	background: transparent url(../img/common/h-icon_about_after.png) no-repeat center center/contain;
	content: "";
}

.heading_text.ta-c:after {
	left: 50%;
	-ms-transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
}

@media screen and (max-width: 768px) {
    .heading_text,
    .heading_text.ta-c {
		font-size: calc(45.83px * 0.8);
    }
}

@media screen and (max-width: 480px) {
	.heading_text {
        padding-bottom: 22px;
		font-size: 31.25px;
    }
    .heading_text:after {
        left: 5px;
        width: 105px;
        height: 4px;
    }
    .heading_text.ta-c {
        font-size: 29.17px;
    }
}

@media screen and (max-width: 360px) {
    .heading_text.ta-c {
        font-size: 28px;
    }
}

/*-------------------------------
Background
---------------------------------
.bg_wh04 {
	padding: 120px 10% 80px;
}

@media screen and (max-width: 768px) {
	.bg_wh04 {
		padding-top: 166px;
    }
}

@media screen and (max-width: 568px) {
	.bg_wh04 {
		padding: 166px 20px 90px;
    }
}

