@charset "UTF-8";

/** fv **/
.fv {
	margin-left: calc((1000px - 100vw) / 2);
	position: relative;
	height: 570px;
	width: calc(100% + ((100vw - 1000px) / 2));
}
.fv figure {
	margin-right: 70px;
	overflow: hidden;
	position: absolute;
	height: 100%;
	width: calc(100% - 70px);
}
.fv figure img {
	position: absolute;
	left: calc(50% - 7vw);
	top: calc(50% - 2vw);
	transform: translateY(-50%);
	max-width: initial;
	height: calc(100% + 38vw);
	width: auto;
}
.fv h2 {
	display: table;
	margin-left: auto;
	padding-top: 50px;
	position: relative;
}
@media screen and (max-width: 1040px) {
	.fv {
		margin-left: 0;
		height: 50vw;
		width: calc(100% - 4vw);
	}
	.fv figure {
		margin-right: 0;
		width: calc(100% - 6vw);
	}
	.fv figure img {
		left: calc(50% - 12vw);
		top: calc(50% - 2vw);
		height: calc(100% + 45vw);
	}
	.fv h2 {
		padding-top: 5vw;
		width: 12vw;
	}
}
@media screen and (max-width: 780px) {
	.fv {
		margin-left: -6vw;
		height: 108vw;
		width: calc(100% + 6vw);
	}
	.fv figure {
		margin-right: 0;
		width: 100%;
	}
	.fv figure img {
		left: calc(50% - 37vw);
		top: calc(50% - 6vw);
		height: calc(100% + 30vw);
	}
	.fv h2 {
		margin-right: 3vw;
		padding-top: 70.5vw;
		width: 20vw;
	}
}

/** intro **/
.intro {
	font-family: 'A1 Mincho', serif;
	margin-top: 100px;
}
.intro h3 {
	font-size: 38px;
	letter-spacing: 2px;
	-webkit-text-stroke: 1px #000;
	text-stroke: 1px #000;
	width: 300px;
}
.intro h3 span {
	letter-spacing: 6px;
}
.intro p {
	font-size: 18px;
	line-height: 2.0;
	margin-right: -5px;
	text-shadow: 0 0 #000;
}
@media screen and (max-width: 1040px) {
	.intro {
		margin: 0 2vw;
		margin-top: 10vw;
	}
	.intro h3 {
		font-size: 3.4vw;
		letter-spacing: .2vw;
		width: 28vw;
	}
	.intro h3 span {
		letter-spacing: .6vw;
	}
	.intro p {
		font-size: 1.7vw;
		margin-right: -.5vw;
	}
}
@media screen and (max-width: 780px) {
	.intro {
		margin: 0;
		margin-top: 12vw;
	}
	.intro h3 {
		font-size: 5.8vw;
		letter-spacing: .6vw;
		margin-bottom: 9vw;
		width: 100%;
	}
	.intro h3 span {
		letter-spacing: .6vw;
	}
	.intro p {
		font-size: 3.4vw;
		margin-right: -.5vw;
	}
}

/** wg_speciality **/
.wg_speciality {
	margin-top: 100px;
}
.wg_speciality h2 {
	color: #006423;
	font-size: 48px;
	letter-spacing: 3px;
	margin-bottom: 80px;
}
.wg_speciality h2 span {
	border-bottom: solid 1px #D0A600;
	letter-spacing: 0;
	margin-left: 30px;
	padding-bottom: 5px;
}
.wg_speciality h2 em {
	color: #D0A600;
	font-family: 'A1 Mincho', 'A1明朝', serif;
	font-size: 80px;
	margin-right: 10px;
}
.wg_speciality article {
	margin-bottom: 100px;
	position: relative;
}
.wg_speciality article h3 {
	color: #006423;
	font-size: 22px;
	letter-spacing: 2px;
	margin-left: -6px;
	position: relative;
	padding-top: 100px;
	-moz-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rll;
	writing-mode: vertical-rl;
	width: 70px;
	text-orientation: upright;
	white-space: nowrap;
}
.wg_speciality article h3 span.no {
	color: #D0A600;
	font-family: 'A1 Mincho', 'A1明朝', serif;
	font-size: 52px;
	letter-spacing: 8px;
	line-height: 1.0;
	padding-bottom: 15px;
	padding-left: 4px;
	position: absolute;
	left: 1px;
	top: 0;
	text-align: center;
	-moz-writing-mode: initial;
	-webkit-writing-mode: initial;
	-ms-writing-mode: initial;
	-ms-writing-mode: initial;
	writing-mode: initial;
	width: 100%;
}
.wg_speciality article h3 span.no::after {
	background-color: #D0A600;
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 4px;
	height: 1px;
	width: 60px;
}
.wg_speciality article h3 span.tc {
	text-combine-upright: all;
}
.wg_speciality article h3 span.ls_1 {
	letter-spacing: -8px;
}
.wg_speciality article p {
	font-family: 'A1 Mincho';
	font-size: 18px;
	line-height: 1.75;
	margin-left: 30px;
	text-shadow: 0 0 #000;
	width: 400px;
}
.wg_speciality article figure {
	overflow: hidden;
	position: absolute;
	left: calc(50% + 10px);
	top: 0;
	height: 100%;
	width: calc(50vw - 10px);
}
.wg_speciality article figure img {
	position: absolute;
	transform: translateX(-50%);
	max-width: initial;
}
.wg_speciality article.box_1 figure img {
	left: calc(50% - 2vw);
	top: calc(50%);
	width: calc(100% + 7vw);
}
.wg_speciality article.box_2 figure img {
	left: calc(50%);
	top: calc(50% + 3vw);
	width: calc(100% + 10vw);
}
.wg_speciality article.box_3 figure img {
	left: calc(50% - 1vw);
	top: calc(50% + 1vw);
	width: calc(100% + 3vw);
}
.wg_speciality article.box_4 figure img {
	left: calc(50% - 0.5vw);
	top: calc(50% + 1vw);
	width: calc(100% + 2vw);
}
.wg_speciality article.box_5 figure img {
	left: calc(50% - 0.5vw);
	top: calc(50% + 3vw);
	width: calc(100% + 1vw);
}
.wg_speciality article.box_6 figure img {
	left: calc(50% - 6.5vw);
	top: calc(50% + 1vw);
	width: calc(100% + 14vw);
}
@media screen and (max-width: 1350px) {
	.wg_speciality article figure img {
		width: auto !important;
	}
	.wg_speciality article.box_1 figure img {
		left: calc(50% - 0vw);
		top: calc(50%);
		height: calc(100% + 6vw);
	}
	.wg_speciality article.box_2 figure img {
		left: calc(50% - 2vw);
		top: calc(50%);
		height: calc(100% + 9vw);
	}
	.wg_speciality article.box_3 figure img {
		left: calc(50% + 3vw);
		top: calc(50% - 1vw);
		height: calc(100% + 6vw);
	}
	.wg_speciality article.box_4 figure img {
		left: calc(50% - 0vw);
		top: calc(50%);
		height: calc(100% + 3vw);
	}
	.wg_speciality article.box_5 figure img {
		left: calc(50% + 2vw);
		top: calc(50% - 1vw);
		height: calc(100% + 2vw);
	}
	.wg_speciality article.box_6 figure img {
		left: calc(50% - 8vw);
		top: calc(50% + 1vw);
		height: calc(100% + 14vw);
	}
}
@media screen and (max-width: 1040px) {
	.wg_speciality {
		margin: 0 2vw;
		margin-top: 10vw;
	}
	.wg_speciality h2 {
		font-size: 4.6vw;
		letter-spacing: .3vw;
		margin-bottom: 8vw;
	}
	.wg_speciality h2 span {
		margin-left: 3vw;
		padding-bottom: .5vw;
	}
	.wg_speciality h2 em {
		font-size: 7.4vw;
		margin-right: 1vw;
	}
	.wg_speciality article {
		margin-bottom: 10vw;
	}
	.wg_speciality article h3 {
		font-size: 2vw;
		letter-spacing: .2vw;
		margin-left: -.6vw;
		padding-top: 10vw;
		width: 7vw;
	}
	.wg_speciality article h3 span.no {
		font-size: 5vw;
		letter-spacing: .8vw;
		padding-bottom: 1.5vw;
		padding-left: .8vw;
		left: .1vw;
	}
	.wg_speciality article h3 span.no::after {
		left: .8vw;
		width: 6vw;
	}
	.wg_speciality article h3 span.ls_1 {
		letter-spacing: -.8vw;
	}
	.wg_speciality article p {
		font-size: 1.7vw;
		margin-left: 3vw;
		width: 40vw;
	}
	.wg_speciality article figure {
		left: calc(50% + 3vw);
		width: calc(50vw - 3vw);
	}
	.wg_speciality article.box_1 figure img {
		left: calc(50% + .5vw);
		top: calc(50%);
		height: calc(100% + 3vw);
	}
	.wg_speciality article.box_2 figure img {
		left: calc(50% - 2vw);
		top: calc(50% + 1vw);
		height: calc(100% + 2vw);
	}
	.wg_speciality article.box_3 figure img {
		left: calc(50% + 6vw);
		top: calc(50% + -1vw);
		height: calc(100% + 5vw);
	}
	.wg_speciality article.box_4 figure img {
		left: calc(50% - 0.5vw);
		top: calc(50% - 0.5vw);
		height: calc(100% + 1vw);
	}
	.wg_speciality article.box_5 figure img {
		left: calc(50% + 7vw);
		top: calc(50% - 0.5vw);
		height: calc(100% + 3vw);
	}
	.wg_speciality article.box_6 figure img {
		left: calc(50% - 6.5vw);
		top: calc(50% + 1vw);
		height: calc(100% + 13vw);
	}
}
@media screen and (max-width: 780px) {
	.wg_speciality {
		margin: 0;
		margin-top: 18vw;
	}
	.wg_speciality h2 {
		font-size: 6.8vw;
		letter-spacing: .3vw;
		margin-bottom: 10vw;
		margin-right: -6vw;
	}
	.wg_speciality h2 span {
		margin-left: 4vw;
		padding-bottom: .5vw;
	}
	.wg_speciality h2 em {
		font-size: 12vw;
		margin-right: 1vw;
	}
	.wg_speciality article {
		margin-bottom: 13vw;
		padding-top: 60vw;
	}
	.wg_speciality article h3 {
		font-size: 4.2vw;
		letter-spacing: .4vw;
		margin-left: -.6vw;
		padding-top: 18vw;
		width: 13vw;
	}
	.wg_speciality article h3 span.no {
		font-size: 8.6vw;
		letter-spacing: 1.8vw;
		padding-bottom: 3vw;
		padding-left: 0.8vw;
		left: 0.1vw;
	}
	.wg_speciality article h3 span.no::after {
		left: .8vw;
		width: 11vw;
	}
	.wg_speciality article h3 span.ls_1 {
		letter-spacing: -1.2vw;
	}
	.wg_speciality article p {
		font-size: 3.5vw;
		line-height: 1.7;
		margin-left: 5vw;
		margin-right: -2vw;
		width: calc(100% - 13vw - 5vw + 2vw);
	}
	.wg_speciality article figure {
		left: 0;
		top: 0;
		height: 53vw;
		width: calc(100% + 6vw);
	}
	.wg_speciality article figure img {
		height: auto !important;
	}
	.wg_speciality article.box_1 figure img {
		left: calc(50% - 1vw);
		top: calc(50% + .5vw);
		width: calc(100% + 9vw) !important;
	}
	.wg_speciality article.box_2 figure img {
		left: calc(50% - 3vw);
		top: calc(50% + 3vw);
		width: calc(100% + 18vw) !important;
	}
	.wg_speciality article.box_3 figure img {
		left: calc(50% + 1vw);
		top: calc(50% + 3vw);
		width: calc(100% + 12vw) !important;
	}
	.wg_speciality article.box_4 figure img {
		left: calc(50% + 1vw);
		top: calc(50% + 2vw);
		width: calc(100% + 10vw) !important;
	}
	.wg_speciality article.box_5 figure img {
		left: calc(50%);
		top: calc(50% - 4vw);
		width: calc(100% + 2vw) !important;
	}
	.wg_speciality article.box_6 figure img {
		left: calc(50% - 8vw);
		top: calc(50% + 1vw);
		width: calc(100% + 44vw) !important;
	}
}