/* ------------------------------------------------------------
    nav
------------------------------------------------------------ */
.gnav_main .gnav_list .gnav_special a::before {
  display: block;
  background-color: #000000;
}


/* ------------------------------------------------------------
    ttl
------------------------------------------------------------ */
.p_pagettl_img.merit .img_item {
	background: url(../images/special/merit/ttl_pc.jpg) no-repeat center center/cover
}
.p_pagettl_img .ttl .lbl small {
	font-size: 5rem;
	letter-spacing: .3rem;
    background: #fff;
    padding: 0 1rem;
}
.p_pagettl_img .ttl .lbl .js-spanize span {
	background: #fff;
}
@media only screen and (max-width: 768px) {
	.p_pagettl_img.merit .img_item {
		background: url(../images/special/merit/ttl_sp.jpg) no-repeat center center/cover
	}
}

/* ------------------------------------------------------------
    merit
------------------------------------------------------------ */
.en {
	font-family: "EB Garamond", serif;
	line-height: 1;
}
.s_merit {
	position: relative;
	margin-top: -150px;
	padding-top: 250px;
	background: url(../images/special/merit/bg01_pc.png) no-repeat top center;
	z-index: -1;
}
.s_merit .contentsRead {
	letter-spacing: 0;
}
.s_merit_inner {
	margin: auto;
	width: 90%;
	max-width: 920px;
}
.s_merit .flex {
	margin: 100px auto 0;
	width: 90%;
	max-width: 1000px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.s_merit .merit_box {
	position: relative;
	margin-bottom: 70px;
	width: 46.5%;
}
.s_merit .merit_box::after {
	position: absolute;
	right: -12px;
	bottom: -12px;
	width: 100%;
	height: 100%;
	background: #A3866A;
	content: "";
	z-index: -1;
}
.s_merit .merit_box_inner {
	position: relative;
	padding: 25px;
	color: #A3866A;
	text-align: center;
	border: 1px dashed #A3866A;
	background: rgb(247,245,234);
	background: linear-gradient(0deg, rgba(247,245,234,1) 0%, rgba(255,255,255,1) 100%);
	z-index: 10;
}
.s_merit .ttl {
	padding: 30px 0;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.2;
}
.s_merit .ttl img {
	padding-bottom: 10px;
	max-width: 100px;
}
.s_merit .ttl span {
	font-size: 1.8rem;
	font-weight: 700;
}
.s_merit figure {
	position: relative;
}
.s_merit figure img {
	width: 100%;
}
.s_merit figcaption {
	position: absolute;
	bottom: 15px;
	right: 10px;
	font-size: 1.1rem;
	line-height: 1;
	color: #231815;
}
.s_merit figcaption.txt_w {
	color: #fff;
}
.s_merit .note {
	position: absolute;
	bottom: 15px;
	left: 25px;
	font-size: 1.1rem;
	line-height: 1;
	color: #231815;
	letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
	.s_merit {
		margin-top: 0;
		padding-top: 50px;
		background: url(../images/special/merit/bg01_sp.png) no-repeat 50% 55% / 100% auto;
	}
	.s_merit .flex {
		margin: 50px auto 0;
	}
	.s_merit .merit_box {
		margin: 0 auto 30px;
		width: 90%;
	}
	.s_merit .merit_box::after {
		right: -8px;
		bottom: -8px;
	}
	.s_merit .merit_box_inner {
		padding: 0 15px 15px;
	}
	.s_merit .ttl {
		padding: 20px 0;
		font-size: 2rem;
	}
	.s_merit .ttl img {
		padding-bottom: 0;
		max-width: 80px;
	}
	.s_merit .ttl span {
		font-size: 1.2rem;
	}
	.s_merit figcaption {
		right: 5px;
		bottom: 10px;
		font-size: 1rem;
	}
	.s_merit .note {
		position: absolute;
		bottom: 8px;
		left: 15px;
		font-size: 1rem;
		letter-spacing: 0;
	}
}

/* ------------------------------------------------------------
    access
------------------------------------------------------------ */
.s_access {
	position: relative;
	padding-left: calc((100% - 1000px) / 2 );
	background: url(../images/special/merit/bg02_pc.png) no-repeat top center;
}
.s_access_inner {
	position: relative;
	min-height: 839px;
}
.s_access h2 {
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 40px;
	color: #015948;
	font-size: 2rem;
	border-bottom: 1px solid #015948;
}
.s_access h2::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 50%;
	height: 3px;
	background: #015948;
	content: "";
}
.s_access h2 img {
	padding-top: 10px;
	max-width: 279px;
}
.s_access h3 {
	padding-bottom: 30px;
	max-width: 50%;
	color: #015948;
	font-size: 3rem;
	letter-spacing: 0;
}
.s_access p {
	padding-bottom: 100px;
	max-width: 40%;
	letter-spacing: 0;
}
.s_access .txt_area figure {
	max-width: 40%;
}
.s_access .txt_area figcaption {
	font-size: 1.1rem;
	letter-spacing: 0;
}
.s_access .photo {
	position: absolute;
	top: 0;
	right: 0;
	width: 58%;
	height: 100%;
	background: url(../images/special/merit/access_img01_pc.png) no-repeat bottom left;
}
.s_access .memo {
	margin: 150px auto 150px 15%;
	max-width: 691px;
}
.s_access .memo dt {
	display: inline-block;
	padding: 5px 15px;
	line-height: 1;
	background: #015948;
	border-radius: 4px 4px 0 0;
}
.s_access .memo dt img {
	width: 55px;
}
.s_access .memo dd {
	position: relative;
	margin-top: -2px;
	padding: 10px 40px;
	font-size: 2.8rem;
	color: #015948;
	letter-spacing: 0;
	border-top: 4px solid #015948;
	border-bottom: 4px solid #015948;
}
.s_access .memo dd::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 85%;
	background: #015948;
	content: "";
}
.s_access .memo dd::after {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 4px;
	height: 85%;
	background: #015948;
	content: "";
}
@media only screen and (max-width: 1200px) {
	.s_access {
		padding-left: 5%;
	}
}
@media only screen and (max-width: 768px) {
	.s_access {
		background: url(../images/special/merit/bg02_sp.png) no-repeat 50% 95% / 100% auto;
	}
	.s_access_inner {
		min-height: auto;
	}
	.s_access h2 {
		padding-bottom: 10px;
		margin-bottom: 20px;
		font-size: 1.4rem;
	}
	.s_access h2::after {
		bottom: -1px;
		height: 2px;
	}
	.s_access h2 img {
		padding-top: 5px;
		max-width: 40%;
	}
	.s_access h3 {
		padding-bottom: 20px;
		max-width: 100%;
		font-size: 1.6rem;
	}
	.s_access p {
		padding-bottom: 30px;
		max-width: 100%;
	}
	.s_access .txt_area figure {
		max-width: 100%;
	}
	.s_access .txt_area figcaption {
		font-size: 1rem;
	}
	.s_access .last {
		padding-top: 20px;
		width: 70%;
	}
	.s_access .photo {
		display: none;
	}
	.s_access .memo {
		margin: 50px 20px 10px 0;
	}
	.s_access .memo dt {
		padding: 5px 10px;
	}
	.s_access .memo dt img {
		width: 40px;
	}
	.s_access .memo dd {
		padding: 5px 10px;
		font-size: 1.5rem;
		text-align: center;
		border-top: 2px solid #015948;
		border-bottom: 2px solid #015948;
	}
	.s_access .memo dd::before {
		width: 2px;
	}
	.s_access .memo dd::after {
		width: 2px;
	}
}

/* ------------------------------------------------------------
    panorama
------------------------------------------------------------ */
.panorama {
	position: relative;
	margin-bottom: 150px;
}
.panorama .note {
	font-size: 1.1rem;
	padding: 0 10px;
	letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
	.panorama {
		margin-bottom: 50px;
	}
	.panorama_inner {
		position: relative;
		overflow-x: auto;
		white-space: nowrap;
	}
	.panorama .scroll {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		width: 80px;
		height: 80px;
		margin: auto;
		z-index: 10;
	}
	.panorama_inner figure {
		width: 1500px;
	}
}
/* ------------------------------------------------------------
    quality
------------------------------------------------------------ */
.s_quality {
	position: relative;
	padding-right: calc((100% - 1000px) / 2 );
	background: url(../images/special/merit/bg03_pc.png) no-repeat 50% 100%;
}
.s_quality_inner {
	position: relative;
	min-height: 900px;
}
.s_quality h2 {
	position: relative;
	padding: 0 0 20px 60%;
	margin-bottom: 40px;
	color: #015948;
	font-size: 2rem;
	border-bottom: 1px solid #015948;
}
.s_quality h2::after {
	position: absolute;
	bottom: -2px;
	right: 0;
	width: 40%;
	height: 3px;
	background: #015948;
	content: "";
}
.s_quality h2 img {
	padding-top: 10px;
	max-width: 279px;
}
.s_quality h3 {
	padding-bottom: 30px;
	margin-left: 60%;
	color: #015948;
	font-size: 3rem;
	letter-spacing: 0;
}
.s_quality p {
	padding-bottom: 130px;
	margin-left: 60%;
	letter-spacing: 0;
}
.s_quality .txt_area figure {
	margin-left: 60%;
}
.s_quality .txt_area figcaption {
	font-size: 1.1rem;
	letter-spacing: 0;
}
.s_quality .photo {
	position: absolute;
	top: 10px;
	left: 0;
	width: 58%;
	height: 100%;
	background: url(../images/special/merit/quality_img01_pc.png) no-repeat bottom right;
}
.s_quality .memo {
	margin: 150px auto;
	max-width: 691px;
}
.s_quality .memo dt {
	display: inline-block;
	padding: 5px 15px;
	line-height: 1;
	background: #015948;
	border-radius: 4px 4px 0 0;
}
.s_quality .memo dt img {
	width: 55px;
}
.s_quality .memo dd {
	position: relative;
	margin-top: -2px;
	padding: 10px 40px;
	font-size: 2.8rem;
	color: #015948;
	letter-spacing: 0;
	border-top: 4px solid #015948;
	border-bottom: 4px solid #015948;
}
.s_quality .memo dd::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 85%;
	background: #015948;
	content: "";
}
.s_quality .memo dd::after {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 4px;
	height: 85%;
	background: #015948;
	content: "";
}
@media only screen and (max-width: 1200px) {
	.s_quality {
		padding-right: 5%;
	}
}
@media only screen and (max-width: 768px) {
	.s_quality {
		padding: 30px 0 50px;
		background: url(../images/special/merit/bg03_sp.png) no-repeat 50% 0 / auto 100%;
	}
	.s_quality_inner {
		min-height: auto;
	}
	.s_quality h2 {
		padding: 0 0 10px 0;
		margin: 0 0 20px 5%;
		font-size: 1.4rem;
	}
	.s_quality h2::after {
		bottom: -1px;
		left: 0;
		height: 2px;
	}
	.s_quality h2 img {
		padding-top: 5px;
		max-width: 40%;
	}
	.s_quality h3 {
		padding-bottom: 20px;
		margin: 0 5%;
		font-size: 1.6rem;
	}
	.s_quality p {
		padding-bottom: 30px;
		margin: 0 5%;
	}
	.s_quality .txt_area figure {
		margin-left: 0;
	}
	.s_quality .txt_area figcaption {
		font-size: 1rem;
	}
	.s_quality .last {
		padding: 20px 0 0 30%;
		width: 100%;
	}
	.s_quality .photo {
		display: none;
	}
	.s_quality .memo {
		margin: 50px 20px 0 0;
	}
	.s_quality .memo dt {
		padding: 5px 10px;
	}
	.s_quality .memo dt img {
		width: 40px;
	}
	.s_quality .memo dd {
		position: relative;
		margin-top: -2px;
		padding: 5px 10px;
		font-size: 1.5rem;
		text-align: center;
		border-top: 2px solid #015948;
		border-bottom: 2px solid #015948;
	}
	.s_quality .memo dd::before {
		width: 2px;
	}
	.s_quality .memo dd::after {
		width: 2px;
	}
}

/* ------------------------------------------------------------
    storage
------------------------------------------------------------ */
.s_storage {
	padding-top: 100px;
}
.s_storage h2 {
	padding-bottom: 20px;
	text-align: center;
}
.s_storage h2 img {
	max-width: 260px;
}
.s_storage p {
	padding-bottom: 60px;
	font-size: 3rem;
	text-align: center;
	letter-spacing: 0;
}
.s_storage .pinkbox {
	background: url(../images/special/merit/storage_bg_pink.png) no-repeat top center;
}
.s_storage .greenbox {
	background: url(../images/special/merit/storage_bg_green.png) no-repeat top center;
}
.s_storage .bluebox {
	background: url(../images/special/merit/storage_bg_blue.png) no-repeat top center;
}
.s_storage_inner {
	padding: 80px 5% 0;
	text-align: center;
}
.s_storage .pinkbox .s_storage_inner {
	padding: 50px 5%;
}
@media only screen and (max-width: 768px) {
	.s_storage {
		padding-top: 50px;
	}
	.s_storage h2 {
		padding-bottom: 10px;
	}
	.s_storage h2 img {
		max-width: 130px;
	}
	.s_storage p {
		padding-bottom: 30px;
		font-size: 1.8rem;
	}
	.s_storage_inner {
		padding: 50px 0;
	}
	.s_storage .pinkbox .s_storage_inner {
		padding: 30px 0;
	}
	.s_storage .bluebox .s_storage_inner {
		padding: 40px 0 40px 5%;
	}
}

/* ------------------------------------------------------------
    equipment
------------------------------------------------------------ */
.s_equipment {
	padding-top: 100px;
	background: url(../images/special/merit/bg04_pc.png) no-repeat 50% 0;
}
.s_equipment h2 {
	padding-bottom: 20px;
	text-align: center;
}
.s_equipment h2 img {
	max-width: 330px;
}
.s_equipment p {
	padding-bottom: 100px;
	font-size: 3rem;
	text-align: center;
	letter-spacing: 0;
}
.s_equipment_inner {
	margin: auto;
	width: 90%;
	max-width: 1000px;
}
.s_equipment .flex {
	margin: 0 -20px;
	display: flex;
	flex-wrap: wrap;
}
.equip_box {
	padding: 0 20px 80px;
	width: 33.33%;
}
.equip_box h3 {
	padding: 5px 0;
	font-size: 2rem;
	color: #A3866A;
	border-bottom: 1px solid #A3866A;
	letter-spacing: 0;
}
.equip_box p {
	padding: 10px 0;
	font-size: 1.6rem;
	text-align: left;
	letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
	.s_equipment {
		padding: 0 0 30px;
		background: url(../images/special/merit/bg04_sp.png) no-repeat 50% 25% / 100%;
	}
	.s_equipment h2 {
		padding-bottom: 10px;
	}
	.s_equipment h2 img {
		max-width: 160px;
	}
	.s_equipment p {
		padding-bottom: 40px;
		font-size: 1.8rem;
	}
	.s_equipment_inner {
		margin: auto;
		width: 90%;
		max-width: 1000px;
	}
	.s_equipment .flex {
		margin: 0 -10px;
	}
	.equip_box {
		padding: 0 10px 40px;
		width: 50%;
	}
	.equip_box h3 {
		padding: 5px 0 0;
		font-size: 1.6rem;
	}
	.equip_box p {
		padding: 5px 0;
		font-size: 1.4rem;
		line-height: 1.6;
	}

}