@charset "UTF-8";
@font-face {
	font-family: berthold_walbaum_bookregular;
	src: url(../common/font/berthold_walbaum_book_regular-webfont.eot);
	src: url(../common/font/berthold_walbaum_book_regular-webfont.eot?#iefix) format("embedded-opentype"), url(../common/font/berthold_walbaum_book_regular-webfont.woff2) format("woff2"), url(../common/font/berthold_walbaum_book_regular-webfont.woff) format("woff"), url(../common/font/berthold_walbaum_book_regular-webfont.ttf) format("truetype"), url(../common/font/berthold_walbaum_book_regular-webfont.svg#berthold_walbaum_bookregular) format("svg");
	font-weight: 400;
	font-style: normal
}
.featureBox .mvBox .catch, .section01 .catch, .section01 .read {
	font-family: source-han-serif-japanese, serif;
	-webkit-font-kerning: normal;
	font-kerning: normal
}
.featureBox .mvBox .catch, .section01 .catch, .section01 .read {
	font-weight: 400
}
.side_btn {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0)
}
.section01 {
	padding-top: calc(100vw * .444);
	padding-bottom: 200px;
	margin: 0 auto;
	text-align: center;
	position: relative
}
@media screen and (max-width:460px) {
	.section01 {
		padding-top: 122%;
		padding-bottom: 30px
	}
}
.section01 .catch {
	font-size: 28px;
	font-size: 2.8rem;
	line-height: 2;
	letter-spacing: .06em
}
@media screen and (max-width:460px) {
	.section01 .catch {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.8;
		letter-spacing: 0
	}
}
.section01 .read {
	margin-top: 10px;
	font-size: 20px;
	font-size: 2rem;
	line-height: 2.1;
	letter-spacing: .1em
}
@media screen and (max-width:460px) {
	.section01 .read {
		font-size: 15px;
		font-size: 1.5rem;
		line-height: 1.9;
		letter-spacing: 0
	}
}
.section01 .leaf>img {
	position: absolute
}
.section01 .leaf .p01 {
	left: 18%;
	bottom: 470px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p01 {
		top: auto;
		bottom: 300px;
		left: 6%;
		-webkit-transform: scale(.57);
		-ms-transform: scale(.57);
		transform: scale(.57)
	}
}
.section01 .leaf .p02 {
	left: 82%;
	bottom: 445px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p02 {
		top: auto;
		bottom: 310px;
		left: 75%;
		-webkit-transform: scale(.57);
		-ms-transform: scale(.57);
		transform: scale(.57)
	}
}
.section01 .leaf .p03 {
	left: 5%;
	bottom: 300px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p03 {
		top: auto;
		bottom: 120px;
		left: -8%;
		-webkit-transform: scale(.3);
		-ms-transform: scale(.3);
		transform: scale(.3)
	}
}
.section01 .leaf .p04 {
	left: 84%;
	bottom: 350px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p04 {
		top: auto;
		bottom: 245px;
		left: 84%;
		-webkit-transform: scale(.57);
		-ms-transform: scale(.57);
		transform: scale(.57)
	}
}
.section01 .leaf .p05 {
	left: 13%;
	bottom: 120px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p05 {
		top: auto;
		bottom: -10px;
		left: 0;
		-webkit-transform: scale(.57) rotate(-75deg);
		-ms-transform: scale(.57) rotate(-75deg);
		transform: scale(.57) rotate(-75deg)
	}
}
.section01 .leaf .p06 {
	left: 80%;
	bottom: 145px
}
@media screen and (max-width:460px) {
	.section01 .leaf .p06 {
		top: auto;
		bottom: 25px;
		left: 85%;
		-webkit-transform: scale(.57);
		-ms-transform: scale(.57);
		transform: scale(.57)
	}
}
@media screen and (max-width:460px) {
	.comBg02 .mv_bg {
		background-position: 70% top
	}
}
.comBg02 .com_wrap05 {
	position: relative
}
.supportBox {
	margin-bottom: 60px
}
.supportBox:last-child {
	margin-bottom: 0;
	padding-bottom: 60px
}
@media screen and (max-width:460px) {
	.supportBox {
		min-height: calc(680px + (100vw - 320px));
		margin-bottom: 0
	}
}
.supportBox>.in {
	position: relative;
	padding-right: 0;
	padding-left: 43%;
	height: 0;
	padding-top: 70%
}
@media screen and (max-width:460px) {
	.supportBox>.in {
		padding-top: calc(100vw - 240px);
		padding-left: 0
	}
}
.supportBox figure {
	position: absolute;
	left: 30px;
	top: -40px;
	padding-left: 0;
	padding-right: 54.3%
}
@media screen and (max-width:460px) {
	.supportBox figure {
		left: 16px;
		top: 0;
		padding-right: 0;
		padding-left: 0;
		text-align: right;
		width: 98%;
		font-size: 0;
		font-size: 0;
		letter-spacing: 0;
		z-index: 1
	}
}
.supportBox figure>div {
	-webkit-transition: 1s;
	transition: 1s;
	background-size: cover
}
.supportBox figure .mv {
	width: 500px;
	height: 650px
}
@media screen and (max-width:460px) {
	.supportBox figure .mv {
		width: calc(100vw * .65);
		height: 0;
		padding-top: 92%;
		margin-bottom: 10px
	}
}
.supportBox figure .sub01 {
	position: absolute;
	width: 300px;
	height: 325px;
	right: 300px;
	top: 466px
}
@media screen and (max-width:460px) {
	.supportBox figure .sub01 {
		position: static;
		width: 104px;
		height: 113px;
		display: inline-block;
		margin-left: 5px
	}
}
.supportBox figure .sub02 {
	position: absolute;
	width: 300px;
	height: 325px;
	right: 0;
	top: 466px
}
@media screen and (max-width:460px) {
	.supportBox figure .sub02 {
		position: static;
		width: 104px;
		height: 113px;
		display: inline-block;
		margin-right: 5px
	}
}
.supportBox .title_box02 {
	position: absolute;
	top: 0;
	-webkit-transition: 1s;
	transition: 1s
}
@media screen and (max-width:460px) {
	.supportBox .title_box02 {
		top: auto;
		bottom: 0;
		position: relative
	}
	.supportBox .title_box02 .txt_box {
		padding-top: 330px
	}
}
.supportBox.type02>.in {
	padding-right: 43%;
	padding-left: 0
}
@media screen and (max-width:460px) {
	.supportBox.type02>.in {
		padding-right: 0;
		padding-left: 0
	}
}
.supportBox.type02 figure {
	padding-right: 0;
	padding-left: 54.3%;
	left: auto
}
@media screen and (max-width:460px) {
	.supportBox.type02 figure {
		padding-right: 0;
		padding-left: 0;
		text-align: left;
		right: 16px
	}
}
@media screen and (max-width:460px) {
	.supportBox.type02 figure .mv {
		position: relative;
		left: 100%;
		margin-left: calc(0px - (100vw * .65))
	}
}
.supportBox.type02 figure .sub01 {
	right: auto;
	left: 0
}
.supportBox.type02 figure .sub02 {
	right: auto;
	left: 300px
}
.supportBox.type02 .title_box02 {
	left: 60px
}
@media screen and (max-width:460px) {
	.supportBox.type02 .title_box02 {
		left: 0
	}
}
@media screen and (min-width:461px) and (max-width:1200px) {
	.supportBox>.in {
		padding-left: 47%
	}
	.supportBox .title_box02 {
		max-width: 480px
	}
	.supportBox figure {
		padding-right: 48%
	}
	.supportBox figure>div {
		background-size: contain;
		background-repeat: no-repeat
	}
	.supportBox figure .sub01 {
		width: 230px;
		padding-top: 26.6%;
		height: 0;
		right: 230px
	}
	.supportBox figure .sub02 {
		width: 230px;
		padding-top: 26.6%;
		height: 0;
		right: 0
	}
	.supportBox.type02>.in {
		padding-left: 0;
		padding-right: 47%
	}
	.supportBox.type02 figure {
		padding-left: 48%;
		padding-right: 0
	}
	.supportBox.type02 figure .sub01 {
		right: auto;
		left: 0
	}
	.supportBox.type02 figure .sub02 {
		right: auto;
		left: 230px
	}
}
.featureBox>.in {
	background-image: url(../img/service/specialist_bg.jpg)
}
@media screen and (max-width:460px) {
	.featureBox>.in {
		background-image: url(../img/service/specialist_bg_sp.jpg);
		background-size: contain;
		background-position: center 0;
		background-repeat: repeat-y
	}
}
@media screen and (max-width:460px) {
	.featureBox>.in .title img {
		max-height: 42px!important
	}
}
.featureBox .mvBox {
	margin: 30px auto 70px;
	text-align: center
}
@media screen and (max-width:460px) {
	.featureBox .mvBox {
		margin: 25px auto
	}
}
.featureBox .mvBox .catch {
	margin-top: 70px;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.75;
	letter-spacing: .08em;
	color: #fff
}
@media screen and (max-width:460px) {
	.featureBox .mvBox .catch {
		margin-top: 25px;
		font-size: 17px;
		font-size: 1.7rem;
		letter-spacing: 0;
		margin-left: -16px;
		margin-right: -16px
	}
}
.featureBox .mvBox .txt {
	margin-top: 30px;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 2;
	letter-spacing: .06em;
	color: #fff
}
@media screen and (max-width:460px) {
	.featureBox .mvBox .txt {
		font-size: 12px;
		font-size: 1.2rem;
		text-align: left
	}
}
.featureBox .mv {
	width: calc(100% - 20px);
	padding: 0 10px;
	height: 565px;
	margin: 0 auto;
	font-size: 0;
	font-size: 0;
	letter-spacing: 0;
	text-align: center
}
@media screen and (max-width:460px) {
	.featureBox .mv {
		width: auto;
		padding: 0;
		height: 125px
	}
}
.featureBox .mv>div {
	width: 100%;
	height: 100%;
	display: inline-block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #fff
}
.featureBox .contentWrap {
	margin-top: 70px;
	width: 100%;
	margin: 0 auto;
	font-size: 0;
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
	display: table
}
@media screen and (max-width:460px) {
	.featureBox .contentWrap {
		display: block
	}
}
.featureBox .contentWrap .detailBox01 {
	width: 33.3333%;
	display: table-cell;
	background: 0 0
}
@media screen and (max-width:460px) {
	.featureBox .contentWrap .detailBox01 {
		display: block;
		width: 100%
	}
}
@media screen and (min-width:461px) and (max-width:1300px) {
	.featureBox .contentWrap .detailBox01>.in {
		width: 95%
	}
	.featureBox .contentWrap .detailBox01>.in .txt_box .catch {
		font-size: 16px;
		font-size: 1.6rem
	}
}
@media screen and (max-width:460px) {
	.featureBox .contentWrap .detailBox01>.in .txt_box {
		padding-bottom: 15px!important
	}
}
