@charset "utf-8";
/* CSS Document */

html, body {min-width:100%;}

body {
color:#333333;
font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
font-size:16px;
line-height:40px;
letter-spacing:0.1em;
margin:0;
padding:0;
-webkit-text-size-adjust:100%;
transition:0.2s;
}

div,ul,ol,li,p,h1,h2,h3,h4,h5,h6,input,dl,dt,dd,figure {
padding:0;
margin:0;
font-weight:normal;
}

ul,ol {list-style-type: none;}



/*------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&display=swap');
/* -----------------------------------------------------------
reset
----------------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
*:before, *:after {
	box-sizing: border-box;
}

html {
	overflow-y: scroll;
}

div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, form, input, textarea, button, table, tr, th, td, article, aside, footer, header, hgroup, nav, section, a, span {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, figure {
	margin: 0;
	padding: 0;
	color: #000000;
}

address, caption, cite, code, dfn, em, th, var {
	font-style: normal;
	font-weight: normal;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

q:before, q:after {
	content: "";
}

object,
embed {
	vertical-align: top;
}

hr, legend {
	display: none;
	border: none;
}

abbr, acronym, fieldset {
	border: 0;
}

tr, th, td, caption {
	vertical-align: top;
	font-style: normal;
	font-weight: normal;
	text-align: left;
}

ol, ul {
	list-style: none;
}

h1, h2, h3, h4, h5, h6 {
	font-style: normal;
	font-weight: normal;
	font-size: 100%;
}

img {
	border: 0;
	font-size: 0;
	line-height: 0;
	vertical-align: bottom;
}
em {
	font-style: oblique;
}

/* -----------------------------------------------------------
plugin
----------------------------------------------------------- */
/*************************************
* INDEX
*
* 1. magnific-popup.css
*
**************************************/
/* Magnific Popup CSS */
.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	box-sizing: border-box;
}

.mfp-container:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	box-shadow: none;
	touch-action: manipulation;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {

	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	padding: 0 0 18px 10px;
	color: #FFF;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #FFF;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: "";
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #F3F3F3;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
	     * Remove all paddings around the image on small screen
	     */
	.mfp-img-mobile .mfp-image-holder {
		padding-left: 0;
		padding-right: 0;
	}

	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}

	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}

	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}

	.mfp-img-mobile .mfp-bottom-bar {
		background: rgba(0, 0, 0, 0.6);
		bottom: 0;
		margin: 0;
		top: auto;
		padding: 3px 5px;
		position: fixed;
		box-sizing: border-box;
	}

	.mfp-img-mobile .mfp-bottom-bar:empty {
		padding: 0;
	}

	.mfp-img-mobile .mfp-counter {
		right: 5px;
		top: 3px;
	}

	.mfp-img-mobile .mfp-close {
		top: 0;
		right: 0;
		width: 35px;
		height: 35px;
		line-height: 35px;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		text-align: center;
		padding: 0;
	}
}
@media all and (max-width: 900px) {
	.mfp-arrow {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
	}

	.mfp-arrow-left {
		-webkit-transform-origin: 0;
		transform-origin: 0;
	}

	.mfp-arrow-right {
		-webkit-transform-origin: 100%;
		transform-origin: 100%;
	}

	.mfp-container {
		padding-left: 6px;
		padding-right: 6px;
	}
}
html, body {
	background-color: #ffffff;
}

body {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "Meiryo", "Osaka", "MS P Gothic", Verdana, Arial, Helvetica, sans-serif;
	font-weight: 400;
	color: #000000;
	line-height: 1.6;
	font-size: 16px;
	letter-spacing: 0.09em;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-wrap: break-word;
	min-width: 1080px;
	padding-top: 80px;
}
@media only screen and (max-width: 750px) {
	body {
		min-width: 320px;
		font-size: 3.2vw;
		letter-spacing: 0.06em;
		padding-top: 50px;
	}
}
body.is-menu-open {
	overflow: hidden;
}

a {
	color: #000000;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro","Meiryo","Osaka", "MS P Gothic",Verdana,Arial, Helvetica, sans-serif !important;
	text-decoration: none;
}
@media only screen and (min-width: 751px) {
	a:hover {
		color: #000000;
	}
}
a:focus {
	outline: none;
}
a:link, a:active, a:visited {
	text-decoration: none;
	color: #000000;
}

img {
	max-width: 100%;
	height: auto;
}

@media only screen and (min-width: 751px) {
	.sp {
		display: none;
	}
}
@media only screen and (max-width: 750px) {
	.pc {
		display: none;
	}
}
.tpl-inner {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (max-width: 750px) {
	.tpl-inner {
		width: 100%;
		padding-left: 6.6666666667vw;
		padding-right: 6.6666666667vw;
	}
}

.pagetop {
	position: fixed;
	z-index: 9;
	bottom: 29px;
	right: 29px;
	width: 44px;
	height: 44px;
	background-color: #000000;
	border-radius: 50%;
	transition: all 0.3s;
	border: 2px solid #ffffff;
	opacity: 0;
	visibility: hidden;
}
@media only screen and (min-width: 751px) {
	.pagetop:hover {
		background-color: #333333;
	}
}
@media only screen and (max-width: 750px) {
	.pagetop {
		bottom: 2.6666666667vw;
		right: 2.6666666667vw;
		width: 7.2vw;
		height: 7.2vw;
		border-width: 1px;
	}
}
.pagetop.is-show {
	opacity: 1;
	visibility: visible;
}

#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 80px;
	background-color: #ffffff;
	padding: 0 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media only screen and (min-width: 751px) {
	#header {
		min-width: 1080px;
	}
}
@media only screen and (max-width: 750px) {
	#header {
		height: 50px;
		padding: 0 5.3333333333vw;
	}
}
#header .logo {
	font-size: 0;
}
@media only screen and (max-width: 750px) {
	#header .logo {
		width: 45.0666666667vw;
	}
	#header .logo img {
		width: 100%;
	}
}
@media only screen and (min-width: 751px) {
	#header .links {
		display: flex;
		align-items: center;
	}
	#header .links li + li {
		margin-left: 24px;
	}
}
@media only screen and (max-width: 750px) {
	#header .links {
		text-align: center;
	}
}
#header .links a {
	font-size: 14px;
	color: #272727;
}
@media only screen and (min-width: 751px) {
	#header .links a {
		transition: color 0.3s;
	}
	#header .links a:hover {
		color: #9f122c;
	}
}
@media only screen and (max-width: 750px) {
	#header .links a {
		display: block;
		font-size: 4.8vw;
		line-height: 1;
		border-bottom: 1px solid #d3d3d3;
		padding: 5.3333333333vw 0;
	}
	#header .links a.contact {
		border-bottom: 0;
		pointer-events: none;
		font-size: 3.7333333333vw;
		padding-top: 9.3333333333vw;
		padding-bottom: 0;
	}
}
@media only screen and (min-width: 751px) {
#header li.fb {}
#header li.tw {margin-left:10px !important;}
#header li.in {margin-left:10px !important;}
#header li.fb a,
#header li.tw a,
#header li.in a {display:block;}
#header li.fb a::before {font-family:FontAwesome; content:"\f230"; font-size:24px; color:#9e1630;}
#header li.tw a::before {font-family:FontAwesome; content:"\e61b"; font-size:24px; color:#9e1630;}
#header li.in a::before {font-family:FontAwesome; content:"\f16d"; font-size:24px; color:#9e1630;}
#header li.fb a:hover::before,
#header li.tw a:hover::before,
#header li.in a:hover::before {color:#333;}

#header li.jp {margin-left:20px !important; border:1px #333 solid; border-radius:5px; vertical-align:bottom; font-size:0;}
#header li.jp a {display:block; color:#333; line-height:1; box-sizing:border-box; padding:3px 4px;}
#header li.jp a::before {font-family:FontAwesome; content:"\f0ac"; font-size:15px; margin-right:5px;}
#header li.jp a::after {content:"日本語"; font-size:13px; letter-spacing:0;}
#header li.jp a:hover {color:#FFF; background:#333;}

#header li.fb a span,
#header li.tw a span,
#header li.in a span,
#header li.jp a span {display:none;}
}
@media screen and (max-width:1300px){
#header li.fb,
#header li.tw,
#header li.in {display:none;}
}
@media screen and (max-width:1200px){
#header li.jp {display:none;}
}


@media only screen and (min-width: 751px) {
	#header .sp-menu-btn {
		display: none;
	}
}
@media only screen and (max-width: 750px) {
	#header .sp-menu-btn {
		width: 30px;
		height: 17px;
		position: relative;
	}
	#header .sp-menu-btn span {
		font-size: 0;
		display: block;
		width: 100%;
		height: 1px;
		background-color: #000000;
		position: absolute;
		left: 0;
		transition: all 0.3s;
		transform-origin: 0 0;
	}
	#header .sp-menu-btn span:nth-child(1) {
		top: 0;
	}
	#header .sp-menu-btn span:nth-child(2) {
		top: 8px;
	}
	#header .sp-menu-btn span:nth-child(3) {
		bottom: 0;
		width: 80%;
	}
	#header .sp-menu-btn.is-open span:nth-child(1) {
		transform: translateY(-3px) rotate(45deg);
	}
	#header .sp-menu-btn.is-open span:nth-child(2) {
		opacity: 0;
	}
	#header .sp-menu-btn.is-open span:nth-child(3) {
		transform: translateY(2px) rotate(-45deg);
		width: 100%;
	}
}
@media only screen and (max-width: 750px) {
	#header .sp-menu-wrap {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		position: fixed;
		top: 50px;
		left: 0;
		width: 100%;
		height: calc(var(--vh, 1vh) * 100 - 50px);
		background-color: #ffffff;
		border-top: 1px solid #d3d3d3;
		transition: all 0.3s;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		padding: 6.6666666667vw;
	}
	#header .sp-menu-wrap.is-open {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}
@media only screen and (min-width: 751px) {
	#header .sp-menu-parts {
		display: none;
	}
}
#header .contact-txt {
	text-align: center;
	font-size: 2.6666666667vw;
	margin-top: 4.2666666667vw;
	margin-bottom: 5.3333333333vw;
}
#header .contact-btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 13.3333333333vw;
	font-size: 3.7333333333vw;
	color: #ffffff;
	background-color: #9f122c;
	margin-bottom: 6.6666666667vw;
}
#header .sns-links {
	display: flex;
	justify-content: center;
}
#header .sns-links li {
	width: 7.7333333333vw;
}
#header .sns-links li + li {
	margin-left: 5.3333333333vw;
}
#header .sns-links a {
	display: block;
}
#header .sp-menu-close {
	display: block;
	width: 13.3333333333vw;
	height: 13.3333333333vw;
	border-radius: 50%;
	background-color: #000000;
	position: relative;
	margin: 6.6666666667vw auto 0;
}
#header .sp-menu-close:before, #header .sp-menu-close:after {
	content: "";
	width: 8vw;
	height: 1px;
	background-color: #ffffff;
	position: absolute;
	top: calc(50% - 1px);
	left: calc(50% - 4vw);
}
#header .sp-menu-close:before {
	transform: rotate(45deg);
}
#header .sp-menu-close:after {
	transform: rotate(-45deg);
}

#sec-mv {
	width: 100%;
	background: url(images/yoshinowood/main-kv-pc.jpg) 50% 50% no-repeat;
	background-size: cover;
	position: relative;
}
@media only screen and (min-width: 751px) {
	#sec-mv {
		height: calc(var(--vh, 1vh) * 100 - 80px);
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}
@media only screen and (max-width: 750px) {
	#sec-mv {
		height: calc(var(--vh, 1vh) * 100 - 50px);
		background-image: url(images/yoshinowood/main-kv-sp.jpg);
		text-align: center;
		padding-top: 33.3333333333vw;
	}
}
#sec-mv .tpl-inner {
	position: relative;
}
#sec-mv .title {
	font-size: 0;
}
@media only screen and (min-width: 751px) {
	#sec-mv .title {
		position: relative;
		z-index: 1;
	}
}
@media only screen and (max-width: 750px) {
	#sec-mv .title {
		width: 76.4vw;
		margin: 0 auto 8vw;
	}
}
#sec-mv p {
	color: #ffffff;
}
@media only screen and (min-width: 751px) {
	#sec-mv p {
		position: absolute;
		bottom: 0;
		left: 570px;
		z-index: 2;
	}
}
@media only screen and (max-width: 750px) {
	#sec-mv p {
		font-size: 2.6666666667vw;
		margin-bottom: 8.6666666667vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-mv .play-btn {
		position: absolute;
		top: 0;
		right: 95px;
		z-index: 3;
		width: 172px;
		height: 172px;
	}
}
@media only screen and (min-width: 751px) and (min-width: 751px) {
	#sec-mv .play-btn {
		transition: opacity 0.3s;
	}
	#sec-mv .play-btn:hover {
		opacity: 0.5;
	}
}
@media only screen and (max-width: 750px) {
	#sec-mv .play-btn {
		position: relative;
		width: 27.3333333333vw;
		height: 27.3333333333vw;
		margin: 0 auto;
	}
}
#sec-mv .play-btn a {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
}
#sec-mv .play-btn .icon {
	width: 35px;
	height: auto;
	margin-left: 8px;
}
@media only screen and (max-width: 750px) {
	#sec-mv .play-btn .icon {
		width: 5.6vw;
		margin-left: 1.0666666667vw;
	}
}
#sec-mv .play-btn .play {
	width: 40px;
	height: auto;
	margin-top: 15px;
}
@media only screen and (max-width: 750px) {
	#sec-mv .play-btn .play {
		width: 6.4vw;
		margin-top: 2.2666666667vw;
	}
}
#sec-mv .play-btn .circle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	animation: 30s linear infinite rotate;
}
#sec-mv .scroll {
	position: absolute;
	bottom: 100px;
	left: 50%;
	transform: translateX(-50%);
	color: #ffffff;
	font-size: 13px;
	line-height: 1;
}
@media only screen and (max-width: 750px) {
	#sec-mv .scroll {
		font-size: 12px;
		bottom: 50px;
	}
}
#sec-mv .scroll:after {
	content: "";
	display: block;
	width: 1px;
	height: 160px;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 50%, #000000 50%, #000000 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 50%, #000000 50%, #000000 100%);
	background: linear-gradient(to bottom, #ffffff 0%, #ffffff 50%, #000000 50%, #000000 100%);
	position: absolute;
	top: 32px;
	left: calc(50% - 1px);
}
@media only screen and (max-width: 750px) {
	#sec-mv .scroll:after {
		height: 80px;
		top: 22px;
	}
}

@keyframes rotate {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}
#main-content {
	background-color: #f2f0e9;
}
#main-content .tpl-inner {
	position: relative;
}
#main-content .sec-label {
	position: absolute;
	top: -31px;
	left: 50%;
	transform: translateX(-50%);
	width: auto;
	height: 64px;
}
@media only screen and (max-width: 750px) {
	#main-content .sec-label {
		top: -12px;
		height: 6.6666666667vw;
		text-align: center;
	}
}
#main-content .sec-label img {
	max-width: initial;
	width: auto;
	height: 100%;
}
#main-content .sec-label:after {
	content: "";
	display: block;
	width: 1px;
	height: 50px;
	background-color: #000000;
	margin: 20px auto 0;
}
@media only screen and (max-width: 750px) {
	#main-content .sec-label:after {
		height: 6.6666666667vw;
		margin-top: 4vw;
	}
}
#main-content .sec-title {
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.12em;
	margin-bottom: 1.4em;
}
@media only screen and (max-width: 750px) {
	#main-content .sec-title {
		font-size: 5.6vw;
		letter-spacing: 0.09em;
		text-align: center;
	}
}

#sec-about {
	background-color: #ffffff;
	padding: 178px 0 183px;
}
@media only screen and (max-width: 750px) {
	#sec-about {
		padding: 22.6666666667vw 0 28.4vw;
	}
}
#sec-about .tpl-inner {
	background: url(images/yoshinowood/about-map.png) right 128px no-repeat;
	background-size: 706px auto;
}
@media only screen and (min-width: 751px) {
	#sec-about .tpl-inner {
		min-height: 841px;
		padding-left: 160px;
		padding-right: 230px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-about .tpl-inner {
		background-position: center 80%;
		background-size: 121% auto;
	}
}
@media only screen and (min-width: 751px) {
	#sec-about .sec-label {
		top: 0;
		left: 64px;
		transform: rotate(90deg);
		transform-origin: 0 0;
	}
	#sec-about .sec-label:after {
		display: none;
	}
}
@media only screen and (max-width: 750px) {
	#sec-about .sec-label {
		position: static;
		transform: translate(0);
		margin-bottom: 14.6666666667vw;
	}
}
#sec-about p, #sec-about dd {
	line-height: 2.13;
	letter-spacing: 1px;
}
@media only screen and (max-width: 750px) {
	#sec-about p, #sec-about dd {
		line-height: 1.67;
		letter-spacing: 0.5px;
	}
}
@media only screen and (min-width: 751px) {
	#sec-about .list {
		width: 380px;
		margin-top: 50px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-about .list {
		margin-top: 48vw;
	}
}
#sec-about .list dt {
	color: #9f122c;
	margin-bottom: 1em;
}
#sec-about .list dd {
	font-size: 14px;
}
@media only screen and (max-width: 750px) {
	#sec-about .list dd {
		font-size: 2.6666666667vw;
	}
}

@media only screen and (min-width: 751px) {
	#sec-environment {
		text-align: center;
		background: url(images/yoshinowood/bg-environment-pc.jpg) 0 50% no-repeat;
		background-size: cover;
		height: 765px;
		margin-bottom: 340px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-environment {
		background: url(images/yoshinowood/bg-environment-sp.jpg) 0 bottom #f0fafa no-repeat;
		background-size: contain;
		height: 148vw;
		margin-bottom: 100vw;
	}
}
#sec-environment .tpl-inner {
	height: 100%;
	padding-top: 125px;
}
@media only screen and (max-width: 750px) {
	#sec-environment .tpl-inner {
		padding-top: 18.1333333333vw;
	}
}
#sec-environment p {
	font-size: 15px;
	letter-spacing: 1.3px;
	line-height: 2.67;
}
@media only screen and (max-width: 750px) {
	#sec-environment p {
		font-size: 3.2vw;
		line-height: 1.67;
		letter-spacing: 0.8px;
	}
}
#sec-environment .ph-wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	left: 0;
	bottom: -160px;
}
@media only screen and (max-width: 750px) {
	#sec-environment .ph-wrap {
		width: 86.6666666667vw;
		top: calc(100% - 10.6666666667vw);
		left: 6.6666666667vw;
		flex-wrap: wrap;
	}
}
#sec-environment .ph-wrap .ph {
	width: 347px;
}
@media only screen and (max-width: 750px) {
	#sec-environment .ph-wrap .ph {
		width: calc(50% - 1.3333333333vw);
	}
	#sec-environment .ph-wrap .ph:nth-child(1) {
		order: 2;
	}
	#sec-environment .ph-wrap .ph:nth-child(2) {
		order: 3;
	}
	#sec-environment .ph-wrap .ph:nth-child(3) {
		order: 1;
		width: 100%;
		margin-bottom: 2.6666666667vw;
	}
}

#sec-characteristics .tpl-inner {
	background-color: #ffffff;
	padding-bottom: 80px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .tpl-inner {
		padding-bottom: 12vw;
	}
}
#sec-characteristics .item.right {
	background: #f2f0e9;
	background: -moz-linear-gradient(left, #f2f0e9 0%, #f2f0e9 50%, #ffffff 50%, #ffffff 100%);
	background: -webkit-linear-gradient(left, #f2f0e9 0%, #f2f0e9 50%, #ffffff 50%, #ffffff 100%);
	background: linear-gradient(to right, #f2f0e9 0%, #f2f0e9 50%, #ffffff 50%, #ffffff 100%);
}
#sec-characteristics .item.left {
	background: #ffffff;
	background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 50%, #f2f0e9 50%, #f2f0e9 50%, #f2f0e9 100%);
	background: -webkit-linear-gradient(left, #ffffff 0%, #ffffff 50%, #f2f0e9 50%, #f2f0e9 50%, #f2f0e9 100%);
	background: linear-gradient(to right, #ffffff 0%, #ffffff 50%, #f2f0e9 50%, #f2f0e9 50%, #f2f0e9 100%);
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .item.left .tpl-inner {
		padding-right: 80px;
	}
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .item.top .tpl-inner {
		padding-top: 127px;
		padding-left: 80px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item.top .tpl-inner {
		padding-top: 18.1333333333vw;
	}
}
#sec-characteristics .item.top .sec-title {
	text-align: center;
	padding-bottom: 42px;
	padding-right: 80px;
	border-bottom: 1px solid #000000;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item.top .sec-title {
		font-size: 5.6vw;
		padding-right: 0;
		padding-bottom: 6.6666666667vw;
		margin-bottom: 4vw;
	}
}
#sec-characteristics .item.top .item-title {
	justify-content: center;
	padding-right: 80px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item.top .item-title {
		padding-right: 0;
	}
}
#sec-characteristics .item.top .txt {
	text-align: center;
	padding-right: 80px;
	margin-top: 23px;
	margin-bottom: 47px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item.top .txt {
		font-size: 3.7333333333vw;
		padding-right: 0;
		margin-top: 4.9333333333vw;
		margin-bottom: 4vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .item.top .ph-wrap {
		display: flex;
		justify-content: space-between;
		margin-bottom: 66px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item.top .ph-wrap {
		margin-bottom: 5.8666666667vw;
	}
	#sec-characteristics .item.top .ph-wrap .ph + .ph {
		margin-top: 6.5333333333vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .item.last .tpl-inner {
		display: flex;
		align-items: flex-start;
	}
	#sec-characteristics .item.last .tpl-inner:after {
		content: "";
		display: block;
		width: 80px;
		height: 100%;
		background-color: #f2f0e9;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 1;
	}
	#sec-characteristics .item.last .tpl-inner .ph-item {
		width: 600px;
		position: relative;
		z-index: 2;
	}
	#sec-characteristics .item.last .tpl-inner .txt-wrap {
		position: relative;
		z-index: 2;
		flex: 1;
		display: block;
		padding-left: 60px;
	}
	#sec-characteristics .item.last .tpl-inner .txt-wrap .item-title {
		width: 100%;
		padding-top: 0;
	}
}
#sec-characteristics .item + .item {
	margin-top: 158px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item + .item {
		margin-top: 66.6666666667vw;
	}
}
#sec-characteristics .item .tpl-inner {
	padding-top: 1px;
}
#sec-characteristics .item-title {
	display: flex;
	align-items: center;
}
#sec-characteristics .item-title p {
	font-size: 30px;
	margin-left: 21px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item-title p {
		font-size: 5.6vw;
		line-height: 1.2;
		margin-left: 2.2666666667vw;
	}
}
#sec-characteristics .item-title p:first-letter {
	font-size: 60px;
	color: #9f122c;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item-title p:first-letter {
		font-size: 10.6666666667vw;
	}
}
#sec-characteristics .item-title img {
	width: 100px;
	height: auto;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .item-title img {
		width: 16vw;
	}
}
#sec-characteristics .box {
	width: 100%;
	background-color: #f2f0e9;
	display: flex;
	padding: 33px 38px;
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .box {
		align-items: center;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box {
		flex-wrap: wrap;
		padding: 8vw 5.3333333333vw 9.3333333333vw;
	}
	#sec-characteristics .box .t3000 {
		width: 22.9333333333vw;
	}
	#sec-characteristics .box .t10000 {
		width: 26.1333333333vw;
	}
	#sec-characteristics .box .t50 {
		width: 31.8666666667vw;
	}
	#sec-characteristics .box .t100 {
		width: 30.6666666667vw;
	}
}
#sec-characteristics .box + .box {
	margin-top: 1px;
}
#sec-characteristics .box + .box .box-txt2 {
	margin-left: 30px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box + .box .box-txt2 {
		margin-left: 0;
	}
}
#sec-characteristics .box .box-title {
	width: 190px;
	position: relative;
	margin-right: 15px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box .box-title {
		width: 100%;
		text-align: center;
		margin-right: 0;
		margin-bottom: 6.1333333333vw;
	}
}
#sec-characteristics .box .box-title span {
	position: relative;
	z-index: 2;
	font-size: 18px;
	font-weight: 500;
	background-color: #f2f0e9;
	display: inline-block;
	padding-right: 15px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box .box-title span {
		font-size: 3.7333333333vw;
		padding: 0 2.1333333333vw;
	}
}
#sec-characteristics .box .box-title:after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #000000;
	position: absolute;
	left: 0;
	z-index: 1;
	top: calc(50% - 1px);
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .box dl {
		display: flex;
		align-items: center;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box dl {
		width: 50%;
	}
}
#sec-characteristics .box dl dt {
	font-weight: 500;
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .box dl dt {
		white-space: nowrap;
		font-size: 14px;
		margin-right: 12px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box dl dt {
		text-align: center;
		font-size: 2.6666666667vw;
		margin-bottom: 4vw;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box dl dd {
		text-align: center;
	}
}
#sec-characteristics .box .box-txt2 {
	margin-left: 37px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .box .box-txt2 {
		margin-left: 0;
		border-left: 1px solid #000000;
	}
}
#sec-characteristics .box .box-txt2 dt {
	color: #9f122c;
}
#sec-characteristics .c-txt {
	text-align: center;
	line-height: 2.13;
	margin-top: 50px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .c-txt {
		text-align: left;
		font-size: 3.2vw;
		line-height: 1.67;
		margin-top: 6.6666666667vw;
	}
}
#sec-characteristics .ph-item {
	margin-top: -80px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .ph-item {
		margin-top: -53.3333333333vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .txt-wrap {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin-top: 50px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .txt-wrap {
		margin-top: 6.6666666667vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .txt-wrap .item-title {
		width: 340px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .txt-wrap .item-title {
		margin-bottom: 4vw;
	}
}
#sec-characteristics .txt-wrap .txt {
	flex: 1;
	line-height: 2.13;
	padding-top: 20px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .txt-wrap .txt {
		line-height: 1.67;
		padding-top: 0;
	}
}
#sec-characteristics .other-items {
	text-align: center;
}
#sec-characteristics .other-items .tpl-inner {
	background-color: transparent;
	padding: 80px 0 120px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items .tpl-inner {
		padding: 13.3333333333vw 0 25.3333333333vw;
	}
}
#sec-characteristics .other-items .tpl-inner:before {
	content: "";
	display: block;
	width: 137px;
	height: 51px;
	background: url(images/yoshinowood/icon-wood.png) 0 0 no-repeat;
	background-size: contain;
	margin: 0 auto 30px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items .tpl-inner:before {
		width: 23.7333333333vw;
		height: 8.8vw;
		margin-bottom: 4vw;
	}
}
#sec-characteristics .other-items .other-title {
	font-size: 30px;
	font-weight: 500;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items .other-title {
		font-size: 5.6vw;
	}
}
#sec-characteristics .other-items .other-list {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items .other-list {
		flex-wrap: wrap;
		text-align: center;
		margin-top: 6.6666666667vw;
	}
}
#sec-characteristics .other-items .other-list-item {
	width: 150px;
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .other-items .other-list-item:not(:last-child) {
		margin-right: 50px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items .other-list-item {
		width: 30.6666666667vw;
	}
	#sec-characteristics .other-items .other-list-item:nth-child(2n) {
		margin-left: 8.8vw;
	}
	#sec-characteristics .other-items .other-list-item:nth-child(n+3) {
		margin-top: 6.6666666667vw;
	}
	#sec-characteristics .other-items .other-list-item img {
		width: 25.3333333333vw;
	}
}
#sec-characteristics .other-items figcaption {
	white-space: nowrap;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 17px;
}
@media only screen and (min-width: 751px) {
	#sec-characteristics .other-items figcaption {
		height: 3em;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}
@media only screen and (max-width: 750px) {
	#sec-characteristics .other-items figcaption {
		margin-top: 3.6vw;
	}
}

#sec-history .head {
	background: url(images/yoshinowood/bg-history-pc.jpg) 0 50% no-repeat;
	background-size: cover;
	text-align: center;
	height: 823px;
	padding-top: 200px;
}
@media only screen and (max-width: 750px) {
	#sec-history .head {
		background-image: url(images/yoshinowood/bg-history-sp.jpg);
		height: 80.4vw;
		padding-top: 26.6666666667vw;
	}
	#sec-history .head .tpl-inner {
		height: 100%;
	}
}
#sec-history .sec-label {
	position: static;
	transform: translate(0);
	margin-bottom: 90px;
}
@media only screen and (max-width: 750px) {
	#sec-history .sec-label {
		margin-bottom: 14.9333333333vw;
	}
}
#sec-history .sec-label:after {
	background-color: #ffffff;
}
#sec-history .sec-title {
	color: #ffffff;
	text-shadow: 1px 1px 9px rgba(0, 0, 0, 0.5), -1px 1px 9px rgba(0, 0, 0, 0.5), 1px -1px 9px rgba(0, 0, 0, 0.5), -1px 1px 9px rgba(0, 0, 0, 0.5);
}
#sec-history .box {
	background-color: rgba(255, 255, 255, 0.75);
	padding: 35px 90px;
	margin-top: 80px;
}
@media only screen and (max-width: 750px) {
	#sec-history .box {
		background-color: #ffffff;
		text-align: center;
		padding: 8vw 6.6666666667vw;
		margin-top: 0;
	}
}
#sec-history .box .box-title {
	font-size: 24px;
	margin-bottom: 1em;
}
@media only screen and (max-width: 750px) {
	#sec-history .box .box-title {
		font-size: 4.2666666667vw;
	}
}
#sec-history .box p {
	line-height: 2.13;
}
@media only screen and (max-width: 750px) {
	#sec-history .box p {
		line-height: 1.67;
	}
}
#sec-history .note {
	text-align: right;
	color: #ffffff;
	font-size: 14px;
	margin-top: 1em;
}
@media only screen and (max-width: 750px) {
	#sec-history .note {
		font-size: 2.6666666667vw;
		position: absolute;
		right: 2vw;
		bottom: 2vw;
	}
}
#sec-history .body {
	background-color: #f1e5cb;
}
#sec-history .body .tpl-inner {
	display: flex;
	padding-top: 100px;
	padding-bottom: 110px;
}
@media only screen and (max-width: 750px) {
	#sec-history .body .tpl-inner {
		display: block;
		padding-top: 16vw;
		padding-bottom: 16vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-history .body .body-txt {
		flex: 1;
		padding-right: 45px;
	}
}
#sec-history .body .body-txt p {
	line-height: 2.13;
}
@media only screen and (max-width: 750px) {
	#sec-history .body .body-txt p {
		line-height: 1.67;
	}
}
#sec-history .body .body-ph {
	display: flex;
	width: 600px;
	font-size: 0;
}
@media only screen and (max-width: 750px) {
	#sec-history .body .body-ph {
		width: 100%;
		margin-top: 6.6666666667vw;
	}
	#sec-history .body .body-ph img {
		width: 50%;
	}
}
#sec-history .body .body-title {
	font-size: 24px;
	margin-bottom: 1em;
}
@media only screen and (max-width: 750px) {
	#sec-history .body .body-title {
		font-size: 4.2666666667vw;
	}
}

#sec-applications {
	background-color: #ffffff;
	padding: 150px 0;
}
@media only screen and (max-width: 750px) {
	#sec-applications {
		padding: 26.6666666667vw 0;
	}
}
#sec-applications .sec-label {
	position: static;
	transform: translate(0);
	text-align: center;
	margin-bottom: 90px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .sec-label {
		margin-bottom: 14.9333333333vw;
	}
}
#sec-applications .sec-title {
	text-align: center;
}
#sec-applications .hide-items {
	display: none;
}
@media only screen and (min-width: 751px) {
	#sec-applications .hide-items .applications-items {
		margin-top: 80px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-applications .hide-items .applications-items {
		margin-top: 13.3333333333vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-applications .applications-items {
		display: flex;
		flex-wrap: wrap;
	}
}
@media only screen and (min-width: 751px) {
	#sec-applications .item {
		width: 332px;
	}
	#sec-applications .item:not(:nth-child(3n)) {
		margin-right: 42px;
	}
	#sec-applications .item:nth-child(n+4) {
		margin-top: 80px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-applications .item {
		width: 100%;
	}
	#sec-applications .item + .item {
		margin-top: 13.3333333333vw;
	}
}
#sec-applications .item-ph {
	position: relative;
	margin-bottom: 42px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .item-ph {
		margin-bottom: 6.9333333333vw;
	}
}
#sec-applications .item-ph figcaption {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	color: #ffffff;
	font-size: 11px;
	letter-spacing: 0.04em;
	word-break: break-word;
	padding: 0 15px 10px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .item-ph figcaption {
		font-size: 2.8vw;
		padding: 0 4vw 2.6666666667vw;
	}
}
#sec-applications .item-title {
	font-weight: 500;
	margin-bottom: 25px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .item-title {
		font-size: 3.7333333333vw;
		margin-bottom: 5.3333333333vw;
	}
}
#sec-applications .item-detail {
	font-size: 14px;
	line-height: 2.14;
	margin-bottom: 10px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .item-detail {
		font-size: 3.2vw;
		line-height: 1.67;
		margin-bottom: 2.6666666667vw;
	}
}
#sec-applications .item-tag {
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	border-radius: 9999px;
	background-color: #f2f0e9;
	padding: 7px 20px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .item-tag {
		font-size: 2.6666666667vw;
		padding: 1.2vw 2.6666666667vw;
	}
}
#sec-applications .more-btn {
	margin-top: 80px;
}
@media only screen and (max-width: 750px) {
	#sec-applications .more-btn {
		margin-top: 13.3333333333vw;
	}
}
#sec-applications .more-btn a {
	background-color: #000000;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 540px;
	height: 80px;
	color: #ffffff;
	font-weight: 500;
	line-height: 1;
	position: relative;
	margin: 0 auto;
}
@media only screen and (min-width: 751px) {
	#sec-applications .more-btn a {
		transition: background-color 0.3s;
	}
	#sec-applications .more-btn a:hover {
		background-color: #333333;
	}
	#sec-applications .more-btn a:hover:before {
		border-color: #333333;
	}
}
@media only screen and (max-width: 750px) {
	#sec-applications .more-btn a {
		width: 100%;
		height: 13.3333333333vw;
	}
}
#sec-applications .more-btn a:before, #sec-applications .more-btn a:after {
	content: "";
	display: block;
	height: 1px;
	background-color: #ffffff;
	position: absolute;
	right: 30px;
	box-sizing: content-box;
}
@media only screen and (max-width: 750px) {
	#sec-applications .more-btn a:before, #sec-applications .more-btn a:after {
		right: 5.3333333333vw;
	}
}
#sec-applications .more-btn a:before {
	z-index: 2;
	width: 24px;
	top: calc(50% - 3px);
	border-top: 3px solid #000000;
	border-bottom: 3px solid #000000;
}
@media only screen and (min-width: 751px) {
	#sec-applications .more-btn a:before {
		transition: border-color 0.3s;
	}
}
@media only screen and (max-width: 750px) {
	#sec-applications .more-btn a:before {
		top: calc(50% - 2px);
		border-width: 2px;
		width: 15px;
	}
}
#sec-applications .more-btn a:after {
	z-index: 1;
	width: 25px;
	transform: rotate(90deg);
	top: 50%;
}
@media only screen and (max-width: 750px) {
	#sec-applications .more-btn a:after {
		width: 16px;
	}
}
#sec-applications .more-btn a.is-show:after {
	display: none;
}

#sec-related-links {
	padding: 147px 0 120px;
}
@media only screen and (max-width: 750px) {
	#sec-related-links {
		padding: 26.6666666667vw 0 24vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-related-links .tpl-inner {
		padding-left: 150px;
	}
}
#sec-related-links .sec-label {
	height: auto;
}
@media only screen and (min-width: 751px) {
	#sec-related-links .sec-label {
		left: 36px;
		top: 0;
		font-size: 36px;
		line-height: 1;
		letter-spacing: 0.1em;
		transform: rotate(90deg);
		transform-origin: 0 0;
	}
}
@media only screen and (max-width: 750px) {
	#sec-related-links .sec-label {
		position: static;
		transform: translate(0);
		font-size: 5.6vw;
		margin-bottom: 12vw;
	}
}
#sec-related-links .sec-label:after {
	display: none;
}
#sec-related-links .item + .item {
	margin-top: 90px;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .item + .item {
		margin-top: 13.3333333333vw;
	}
}
#sec-related-links .sec-title {
	position: relative;
	font-size: 24px;
	line-height: 1;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .sec-title {
		font-size: 4.2666666667vw;
		text-align: left;
	}
}
#sec-related-links .sec-title span {
	background-color: #f2f0e9;
	position: relative;
	z-index: 2;
	padding-right: 20px;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .sec-title span {
		padding-right: 4.2666666667vw;
	}
}
#sec-related-links .sec-title:after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #000000;
	position: absolute;
	left: 0;
	top: calc(50% - 1px);
	z-index: 1;
}
#sec-related-links .lists {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .lists.col1 li:not(:last-child) {
		margin-bottom: 6.6666666667vw;
	}
	#sec-related-links .lists.col2 {
		justify-content: space-between;
	}
	#sec-related-links .lists.col2 li {
		width: 40vw;
	}
}
@media only screen and (min-width: 751px) {
	#sec-related-links .lists li {
		width: 282px;
	}
/* 	#sec-related-links .lists li:not(:nth-child(3n)) {
		margin-right: 42px;
	} */
}
@media only screen and (max-width: 750px) {
	#sec-related-links .lists li {
		width: 100%;
	}
}
#sec-related-links .lists .thumb {
	display: block;
	position: relative;
	font-size: 0;
}
#sec-related-links .lists .thumb:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #ffffff;
	opacity: 0;
	transition: opacity 0.3s;
}
@media only screen and (min-width: 751px) {
	#sec-related-links .lists .thumb:hover:before {
		opacity: 0.3;
	}
}
@media only screen and (min-width: 751px) {
	#sec-related-links .lists a:hover {
		text-decoration: underline;
	}
}
#sec-related-links .pdf-link {
	display: inline-block;
	font-size: 14px;
	margin-top: 1em;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .pdf-link {
		font-size: 2.6666666667vw;
	}
}
#sec-related-links .pdf-link:after {
	content: "";
	display: inline-block;
	vertical-align: bottom;
	width: 22px;
	height: 22px;
	background: url(images/yoshinowood/icon-pdf.png) 60% 50% no-repeat #ffffff;
	background-size: 70% auto;
	border-radius: 50%;
	margin-left: 5px;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .pdf-link:after {
		width: 3.8666666667vw;
		height: 3.8666666667vw;
		margin-left: 1.0666666667vw;
	}
}
#sec-related-links .mv-modal {
	display: block;
	position: relative;
}
#sec-related-links .mv-modal.thumb:after {
	content: "";
	display: block;
	width: 56px;
	height: 36px;
	background: url(images/yoshinowood/icon-yt.png) 0 0 no-repeat;
	background-size: contain;
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
@media only screen and (max-width: 750px) {
	#sec-related-links .mv-modal.thumb:after {
		width: 17.2vw;
		height: 12vw;
	}
}
#sec-related-links .mv-modal.link-txt {
	display: inline-block;
	font-size: 14px;
	margin-top: 1em;
}
@media only screen and (max-width: 750px) {
	#sec-related-links .mv-modal.link-txt {
		font-size: 2.6666666667vw;
	}
}

#sec-contact-us {
	height: 636px;
	background: url(images/yoshinowood/bg-footer-pc.jpg) 0 50% no-repeat;
	background-size: cover;
	padding-top: 153px;
	padding-bottom: 77px;
	text-align: center;
}
@media only screen and (max-width: 750px) {
	#sec-contact-us {
		height: 122.1333333333vw;
		background-image: url(images/yoshinowood/bg-footer-sp.jpg);
		padding-top: 26.6666666667vw;
		padding-bottom: 0;
	}
}
#sec-contact-us .sec-label {
	color: #ffffff;
}
@media only screen and (min-width: 751px) {
	#sec-contact-us .sec-label {
		font-size: 36px;
		line-height: 1;
		letter-spacing: 0.1em;
		margin-bottom: 50px;
	}
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .sec-label {
		font-size: 5.6vw;
		margin-bottom: 5.3333333333vw;
	}
}
#sec-contact-us .txt {
	width: 813px;
	color: #ffffff;
	line-height: 2.13;
	margin: 0 auto 47px;
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .txt {
		width: 100%;
		line-height: 1.67;
		margin-bottom: 4.8vw;
	}
}
#sec-contact-us .contact-btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 540px;
	height: 80px;
	color: #ffffff;
	background-color: #9f122c;
	margin: 0 auto 30px;
}
@media only screen and (min-width: 751px) {
	#sec-contact-us .contact-btn a {
		transition: background-color 0.3s;
	}
	#sec-contact-us .contact-btn a:hover {
		background-color: #ca2644;
	}
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .contact-btn a {
		width: 100%;
		height: 13.3333333333vw;
		font-size: 3.7333333333vw;
		margin-bottom: 6.6666666667vw;
	}
}
#sec-contact-us .sns-links {
	display: flex;
	justify-content: center;
}
#sec-contact-us .sns-links li {
	width: 28px;
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .sns-links li {
		width: 7.7333333333vw;
	}
}
#sec-contact-us .sns-links li + li {
	margin-left: 20px;
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .sns-links li + li {
		margin-left: 5.3333333333vw;
	}
}
#sec-contact-us .sns-links a {
	display: block;
}
@media only screen and (min-width: 751px) and (min-width: 751px) {
	#sec-contact-us .sns-links a {
		transition: opacity 0.3s;
	}
	#sec-contact-us .sns-links a:hover {
		opacity: 0.5;
	}
}
#sec-contact-us .copy {
	color: #ffffff;
	font-size: 14px;
	line-height: 2.14;
	margin-top: 48px;
}
@media only screen and (max-width: 750px) {
	#sec-contact-us .copy {
		font-size: 2.6666666667vw;
		line-height: 1.3;
		margin-top: 8.2666666667vw;
	}
}

.mfp-bg {
	background-color: #000000;
	opacity: 0.5;
}

.mfp-iframe-holder .modal-close {
	position: absolute;
	top: -110px;
	right: 0;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	border: 1px solid #ffffff;
	background-color: #000000;
	cursor: pointer;
	opacity: 1;
	font-size: 0;
	padding: 0;
}
@media only screen and (min-width: 751px) {
	.mfp-iframe-holder .modal-close {
		transition: background-color 0.3s;
	}
	.mfp-iframe-holder .modal-close:hover {
		background-color: #333333;
	}
}
@media only screen and (max-width: 750px) {
	.mfp-iframe-holder .modal-close {
		top: -14.6666666667vw;
		width: 10.6666666667vw;
		height: 10.6666666667vw;
	}
}
.mfp-iframe-holder .modal-close:before, .mfp-iframe-holder .modal-close:after {
	content: "";
	width: 48px;
	height: 1px;
	background-color: #ffffff;
	position: absolute;
	top: 50%;
	left: calc(50% - 24px);
}
@media only screen and (max-width: 750px) {
	.mfp-iframe-holder .modal-close:before, .mfp-iframe-holder .modal-close:after {
		width: 6.4vw;
		left: calc(50% - 3.2vw);
	}
}
.mfp-iframe-holder .modal-close:before {
	transform: rotate(45deg);
}
.mfp-iframe-holder .modal-close:after {
	transform: rotate(-45deg);
}/*auto generated region*/

#BaseTable
{

}
#SystemMenu
{

}
#HeaderPane
{

}
#Middle
{

}
#LeftPane
{

}
#ContentPane
{


}
#RightPane
{

}
#FooterPane
{

}


/*
	25-09 追加
---------------------------------------------- */
#sec-article {
	background-color: #ffffff;
	text-align: center;
	padding: 0 0 170px;
}

#sec-article .tpl-inner {
	padding-top: 125px;
}

#sec-article .article-items {
	display: flex;
	flex-direction: column;
	gap: 50px;
}

#sec-article .item .item-txt-box {
	text-align: start;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
}

#sec-article .item .item-detail {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 3行まで */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#sec-article .more-btn2 {
	margin-top: 80px;
}

#sec-article .more-btn2 a {
	background-color: #000000;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 540px;
	height: 80px;
	color: #ffffff;
	font-weight: 500;
	line-height: 1;
	position: relative;
	margin: 0 auto;
}

#sec-article .more-btn2 a:before, #sec-article .more-btn2 a:after {
	content: "";
	display: block;
	height: 1px;
	background-color: #ffffff;
	position: absolute;
	right: 30px;
	box-sizing: content-box;
}

#sec-article .more-btn2 a:before {
	z-index: 2;
	width: 24px;
	top: calc(50% - 3px);
	border-top: 3px solid #000000;
	border-bottom: 3px solid #000000;
}

#sec-article .more-btn2 a:after {
	z-index: 1;
	width: 25px;
	transform: rotate(90deg);
	top: 50%;
}

#sec-article .article-items .item a {
	display: flex;
	gap: 30px;
}

#sec-article .item img {
	width: 282px;
	height: 188px;
	aspect-ratio: 16 / 9;
}

#sec-article .item .link-title {
	font-size: 25px;
	font-weight: bold;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

#sec-article .item .item-detail {
	font-size: 14px;
}

#sec-article .item .item-date {
	font-size: 12px;
	color: #8B8B8B;
}

#sec-article .more-btn2 a {
	transition: background-color 0.3s;
}

#sec-article .more-btn2 a:before {
	transition: border-color 0.3s;
}

@media only screen and (max-width: 750px) {
	#sec-article {
		padding: 0 0 26.6666666667vw 0;
	}

	#sec-article .tpl-inner {
		padding-top: 18.1333333333vw;
	}

	#sec-article .article-items .item a {
		gap: 16px;
    flex-direction: column;
	}

	#sec-article .item img {
    width: 100%;
		height: 230px;
	}

	#sec-article .item .item-txt-box {
    gap: 3px;
	}

	#sec-article .more-btn2 {
		margin-top: 13.3333333333vw;
	}

	#sec-article .more-btn2 a {
		width: 100%;
		height: 13.3333333333vw;
	}

	#sec-article .more-btn2 a:before, #sec-article .more-btn2 a:after {
		right: 5.3333333333vw;
	}

	#sec-article .more-btn2 a:before {
		top: calc(50% - 2px);
		border-width: 2px;
		width: 15px;
	}

	#sec-article .more-btn2 a:after {
		width: 16px;
	}
}
