/*
html, input, textarea, select, button {
	font-weight: 400
}
*/
html {
/*	color: #282828;
	background: #e5e5e5;
	font-size: 16px;
	line-height: 1.6;*/
	overflow-wrap: break-word
}
/*
@media only screen and (max-width: 767px) {
	html {
		font-size: 14px
	}
}
*/
/*
body {
	color: #282828;
	background: #f3f3f4;
	margin: 0;
	overflow: hidden
}
*/
/*
@media only screen and (max-width: 767px) {
	body {
		position: relative;
		-webkit-appearance: none;
		-webkit-text-size-adjust: 100%
	}
}
*/
/*
.JS body {
	background-color: #e8e8e8
}
*/
/*
.JS h2, .JS .LV1LinkSet {
	margin: 0
}
*/
/*
#HeaderArea1 .Container.Wide, #HeaderArea2 .Container.Wide, #FooterArea .Container.Wide {
	-webkit-box-sizing: unset;
	box-sizing: unset
}
*/
/*
#GlobalNaviMenu>li.Current>a>strong {
	background-image: none
}
*/
img {
	border: 0;
	margin: 0;
	vertical-align: top;
	max-width: 100%;
	height: auto
}
figure {
	margin: 0
}
p {
	margin: 0;
	padding: 0
}
a {
	color: inherit;
	text-decoration: none
}
@media only screen and (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none
	}
}
input, select, textarea, button {
	color: inherit;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}
/*
@media only screen and (max-width: 767px) {
	input, select, textarea {
		font-size: 16px !important
	}
}
*/
select::-ms-expand {
	display: none
}
textarea {
	resize: vertical
}
::-webkit-input-placeholder {
	color: #ccc
}
:-ms-input-placeholder {
	color: #ccc
}
::-ms-input-placeholder {
	color: #ccc
}
::-moz-placeholder {
	color: #ccc
}
::placeholder {
	color: #ccc
}
button {
	border: none;
	cursor: pointer
}
label {
	cursor: pointer
}
/*
table {
	border-collapse: collapse
}
ul, ol {
	list-style: none;
	margin: 0;
	padding: 0
}
*/
h1, h2, h3, h4, h5, h6 {
/*
	font-size: 14px;
	font-weight: 500;
*/
	margin: 0;
	padding: 0;
	background: none
}
main {
	display: block
}
#wrapper {
	position: relative
}
@media only screen and (max-width: 767px) {
	#wrapper {
		min-width: 320px
	}
}
.inner-block {
	margin: 0 auto;
	position: relative
}
@media only screen and (min-width: 768px) {
	.inner-block {
		padding-left: 40px;
		padding-right: 40px;
		max-width: 1280px
	}
}
@media only screen and (max-width: 767px) {
	.inner-block {
		padding-left: 20px;
		padding-right: 20px
	}
}
dl, dt, dd {
	padding: 0;
	margin: 0
}
@media only screen and (min-width: 768px) {
	a, a::before, a::after, button, button::before, button::after {
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out
	}
}
.ib {
	display: inline-block
}
@media only screen and (max-width: 767px) {
	.pc {
		display: none !important
	}
}
@media only screen and (min-width: 768px) {
	.sp {
		display: none !important
	}
}
.en {
/*	font-family: "Helvetica Neue", sans-serif;*/
	font-weight: 400
}
.c-svg {
	display: inline-block;
	fill: currentColor;
	vertical-align: top
}
.c-header #HeaderArea2>.Container #SiteID img {
	display: block
}
.c-header #HeaderArea2>.Container #SiteID span {
	display: none
}
.c-header #SiteID img+span {
	display: inline-block
}
.c-header #SiteID img {
	max-width: 274px;
	min-height: 50px
}
@media only screen and (max-width: 767px) {
	.c-header #SiteID img {
		min-height: inherit;
		max-width: min(285px, 76vw)
	}
}
.c-header #SiteID span {
	font-size: min(10px, 0.625vw);
	letter-spacing: .24em;
	margin-left: min(34px, 2.125vw)
}
.c-header #SiteID a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%
}
@media only screen and (max-width: 767px) {
	.c-header #SiteID a {
		display: block
	}
}
@media only screen and (max-width: 767px) {
	.c-header #SpMenuModal.show {
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: column-reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		-webkit-box-pack: end;
		-webkit-justify-content: flex-end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding-top: 45px
	}
}
@media only screen and (max-width: 767px) {
	.c-header #SpMenuModalContent {
		padding-top: 0
	}
}
.c-header #SpSupportNavi {
	border-top: none
}
.footer-logo-ttl {
	background: #f2f2f3;
	margin: 0 calc(50% - 50vw) min(40px, 2.6666666667vw);
	padding: 0 calc(50vw - 50%) min(100px, 6.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.footer-logo-ttl {
		margin: 0 calc(50% - 50vw) min(20px, 5.3333333333vw);
		padding: 0 calc(50vw - 50%) min(30px, 8vw)
	}
}
.footer-logo-ttl .logo-ttl {
	border-left: 4px solid #d82531;
	padding: min(25px, 1.6666666667vw) min(29px, 1.9333333333vw) min(9px, 0.6vw)
}
@media only screen and (max-width: 767px) {
	.footer-logo-ttl .logo-ttl {
		border-left: 2px solid #d82531;
		padding: min(15px, 4vw) min(10px, 2.6666666667vw) min(5px, 1.3333333333vw)
	}
}
.c-ttl01.white .en, .c-ttl01.white .ja {
	color: #fff
}
.c-ttl01 .en {
	color: #494949;
	display: block;
	font-size: min(12px, 0.8vw);
	font-weight: bold;
	letter-spacing: .31em;
	margin-bottom: min(18px, 1.2vw);
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt"
}
@media only screen and (max-width: 767px) {
	.c-ttl01 .en {
		font-size: min(8px, 2.1333333333vw);
		margin-bottom: min(5px, 1.3333333333vw)
	}
}
.c-ttl01 .ja {
	color: #282828;
	display: block;
	font-size: min(28px, 1.8666666667vw);
	letter-spacing: .36em;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt"
}
@media only screen and (max-width: 767px) {
	.c-ttl01 .ja {
		font-size: min(14px, 3.7333333333vw)
	}
}
.c-ttl01 span {
	background: rgba(0, 0, 0, 0) !important;
	padding: 0
}
.c-ttl02 {
	color: #fff;
	font-size: min(45px, 3vw);
	letter-spacing: .16em;
	text-align: center;
	margin-bottom: min(45px, 3vw) !important
}
@media only screen and (max-width: 767px) {
	.c-ttl02 {
		font-size: min(19px, 5.0666666667vw);
		letter-spacing: .11em;
		margin-bottom: min(67px, 17.8666666667vw)
	}
}
.c-btn01 {
	background: #d82531;
	border: 1px solid #d82531;
	color: #fff !important;
	display: block;
	font-size: min(14px, 0.9333333333vw);
	letter-spacing: .26em;
	text-decoration: none !important;
	padding: min(13px, 0.8666666667vw) min(25px, 1.6666666667vw);
	max-width: min(300px, 20vw);
	min-width: min(300px, 20vw);
	line-height: 1.6;
	position: relative;
	width: 100%
}
.c-btn01::after {
	content: "";
	display: inline-block;
	width: min(11px, 0.7333333333vw);
	height: min(11px, 0.7333333333vw);
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: min(19px, 1.2666666667vw);
	margin: auto
}
@media only screen and (max-width: 767px) {
	.c-btn01::after {
		width: min(7px, 1.8666666667vw);
		height: min(7px, 1.8666666667vw)
	}
}
@media only screen and (min-width: 768px) {
	.c-btn01:hover {
		background: #fff;
		color: #d82531 !important
	}
	.c-btn01:hover::after {
		border-color: #d82531
	}
}
@media only screen and (max-width: 767px) {
	.c-btn01 {
		font-size: min(8px, 2.1333333333vw);
		max-width: min(190px, 50.6666666667vw);
		padding: min(6px, 1.6vw) min(18px, 4.8vw) min(5px, 1.3333333333vw)
	}
}
.c-btn02 {
	background: #b1000e url(/image/jp/r1/icon/icon_inquiry_white_hd.png) no-repeat 98% 90%;
	background-size: 20px;
	border: 1px solid #d82531;
	color: #fff !important;
	display: block;
	letter-spacing: .26em;
	text-decoration: none !important;
	padding: min(30px, 4.2857142857vw) 0;
	line-height: 1.6;
	position: relative;
	width: 100%;
	text-align: center
}
.c-btn02::after {
	content: "";
	background: #ccc
}
@media only screen and (max-width: 767px) {
	.c-btn02::after {
		width: min(7px, 1.8666666667vw);
		height: min(7px, 1.8666666667vw)
	}
}
@media only screen and (min-width: 768px) {
	.c-btn02:hover {
		background: #fff url(/image/jp/r1/icon/icon_inquiry_hd.gif) no-repeat 98% 90%;
		background-size: 20px;
		color: #d82531 !important
	}
	.c-btn02:hover::after {
		border-color: #d82531
	}
}
.top-mv-section {
	height: min(700px, 46.6666666667vw);
	position: relative
}
@media only screen and (max-width: 767px) {
	.top-mv-section {
		height: min(350px, 93.3333333333vw);
		margin-bottom: min(86px, 22.9333333333vw)
	}
}
.top-mv-section .c-bg-ttl {
	-webkit-clip-path: inset(0 0 0 100%);
	clip-path: inset(0 0 0 100%);
	position: absolute;
	bottom: min(130px, 8.6666666667vw);
	right: min(143px, 9.5333333333vw);
	margin: auto;
	z-index: 10
}
.top-mv-section .c-bg-ttl.is-anime.is-animeRight {
	-webkit-clip-path: inset(-5%);
	clip-path: inset(-5%)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .c-bg-ttl.is-anime.is-animeRight {
		-webkit-clip-path: inset(-10%);
		clip-path: inset(-10%)
	}
}
@media only screen and (max-width: 767px) {
	.top-mv-section .c-bg-ttl {
		bottom: max(-70px, -18.6666666667vw)
	}
}
.top-mv-section .c-bg-ttl .bg-wrap {
	display: inline-block;
	background: #1a1a1a;
	-webkit-transform: skewX(-35deg);
	transform: skewX(-35deg)
}
.top-mv-section .c-bg-ttl .bg-wrap .inn {
	color: #fff;
	font-size: min(24px, 1.6vw);
	display: block;
	-webkit-transform: skewX(35deg);
	transform: skewX(35deg);
	letter-spacing: .36em;
	padding: min(40px, 2.6666666667vw) min(75px, 5vw) min(25px, 1.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .c-bg-ttl .bg-wrap .inn {
		font-size: min(12px, 3.2vw);
		padding: min(18px, 4.8vw) min(20px, 5.3333333333vw) min(16px, 4.2666666667vw)
	}
	.top-mv-section .c-bg-ttl .bg-wrap .inn .wrap {
		display: block;
		margin-left: min(47px, 12.5333333333vw)
	}
}
.top-mv-section .c-bg-ttl .en {
	color: #fff;
	font-size: min(20px, 1.3333333333vw);
	display: block;
	text-align: right;
	letter-spacing: .21em;
	margin-top: min(16px, 1.0666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .c-bg-ttl .en {
		color: #1c1c1c;
		font-size: min(10px, 2.6666666667vw);
		margin-top: min(5px, 1.3333333333vw);
		letter-spacing: 0
	}
}
.top-mv-section .mv-img-wrap {
	position: relative;
	overflow: hidden;
	height: min(700px, 46.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .mv-img-wrap {
		height: min(350px, 93.3333333333vw)
	}
}
.top-mv-section .first-img {
	-webkit-clip-path: inset(0 100% 0 0);
	clip-path: inset(0 100% 0 0)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .first-img {
		width: 100%;
		height: min(350px, 93.3333333333vw)
	}
	.top-mv-section .first-img .slider-item {
		width: 100%
	}
}
.top-mv-section .second-img {
	-webkit-clip-path: inset(0 0 0 100%);
	clip-path: inset(0 0 0 100%);
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	width: min(933px, 62.2vw);
	height: min(700px, 46.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .second-img {
		width: min(292px, 77.8666666667vw);
		height: min(350px, 93.3333333333vw)
	}
}
.top-mv-section .l-img, .top-mv-section .r-img {
	position: absolute;
	top: 0;
	z-index: 5
}
.top-mv-section .l-img .slider-area, .top-mv-section .r-img .slider-area {
	position: relative;
	width: 100%;
	height: min(700px, 46.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .l-img .slider-area, .top-mv-section .r-img .slider-area {
		height: min(350px, 93.3333333333vw)
	}
}
.top-mv-section .l-img .slider-area .slider-item, .top-mv-section .r-img .slider-area .slider-item {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: 0;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out
}
.top-mv-section .l-img .slider-area .slider-item img, .top-mv-section .r-img .slider-area .slider-item img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: top;
	object-position: top
}
.top-mv-section .l-img {
	left: 0;
	height: min(700px, 46.6666666667vw);
	width: min(1067px, 71.1333333333vw);
	z-index: 1
}
@media only screen and (min-width: 768px)and (min-width: 1501px) {
	.top-mv-section .l-img {
		width: 100%
	}
}
@media only screen and (max-width: 767px) {
	.top-mv-section .l-img {
		width: 100%;
		height: min(350px, 93.3333333333vw)
	}
}
.top-mv-section .l-img .container {
	width: 100%;
	height: 100vh
}
.top-mv-section .l-img .slider-item.is-anime {
	-webkit-animation: animeLeft 12s 0s ease-in-out infinite;
	animation: animeLeft 12s 0s ease-in-out infinite
}
.top-mv-section .l-img .slider-item.is-anime:nth-child(2) {
	-webkit-animation-delay: 4s;
	animation-delay: 4s
}
.top-mv-section .l-img .slider-item.is-anime:nth-child(3) {
	-webkit-animation-delay: 8s;
	animation-delay: 8s
}
.top-mv-section .r-img {
	right: 0;
	height: min(700px, 46.6666666667vw);
	width: min(906px, 60.4vw)
}
@media only screen and (max-width: 767px) {
	.top-mv-section .r-img {
		width: min(292px, 77.8666666667vw);
		height: min(350px, 93.3333333333vw)
	}
}
.top-mv-section .r-img .slider-item.is-anime {
	-webkit-animation: animeRight 12s 0s ease-in-out infinite;
	animation: animeRight 12s 0s ease-in-out infinite
}
.top-mv-section .r-img .slider-item.is-anime:nth-child(2) {
	-webkit-animation-delay: 4s;
	animation-delay: 4s
}
.top-mv-section .r-img .slider-item.is-anime:nth-child(3) {
	-webkit-animation-delay: 8s;
	animation-delay: 8s
}
.top-mv-section .r-img .slider-item.is-anime:nth-child(3) img, .top-mv-section .r-img .slider-item.is-anime:nth-child(3) source {
	-o-object-position: bottom;
	object-position: bottom
}
.top-mv-section img, .top-mv-section source {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: top;
	object-position: top
}
.top-news-section .l-grid {
	display: grid;
	grid-template-columns: min(408px, 27.2vw) 1fr
}
@media only screen and (max-width: 767px) {
	.top-news-section .l-grid {
		grid-template-columns: min(112px, 29.8666666667vw) 1fr
	}
}
.top-news-section .btn-wrap {
	background: #d82531;
	border-right: 1px solid #d82531;
	color: #fff;
	font-weight: bold;
	padding: min(40px, 2.6666666667vw) min(18px, 1.2vw) min(31px, 2.0666666667vw) 0;
	text-align: right;
	letter-spacing: .31em;
	text-decoration: none
}
@media only screen and (min-width: 768px) {
	.top-news-section .btn-wrap:hover {
		background: #fff;
		color: #d82531
	}
	.top-news-section .btn-wrap:hover .inn::after {
		border-color: #d82531;
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out
	}
}
@media only screen and (max-width: 767px) {
	.top-news-section .btn-wrap {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: min(15px, 4vw) min(16px, 4.2666666667vw) min(15px, 4vw);
		letter-spacing: .26em;
		text-align: left
	}
}
.top-news-section .btn-wrap .inn {
	display: block;
	font-size: min(14px, 0.9333333333vw);
	padding-right: min(42px, 2.625vw);
	position: relative
}
@media only screen and (max-width: 767px) {
	.top-news-section .btn-wrap .inn {
		font-size: min(11px, 2.9333333333vw);
		padding-right: 0
	}
}
.top-news-section .btn-wrap .inn::after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: relative;
	right: max(-30px, -2vw);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out
}
@media only screen and (max-width: 767px) {
	.top-news-section .btn-wrap .inn::after {
		width: 5px;
		height: 5px;
		right: max(-10px, -2.6666666667vw);
		position: absolute
	}
}
.top-news-section .txt-wrap {
	color: #282828;
	display: grid;
	grid-template-columns: min(120px, 8vw) 1fr;
	-webkit-column-gap: min(30px, 2vw);
	-moz-column-gap: min(30px, 2vw);
	column-gap: min(30px, 2vw);
	padding: min(30px, 1.875vw) min(57px, 3.8vw) min(15px, 1vw);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration: none
}
@media only screen and (min-width: 768px) {
	.top-news-section .txt-wrap:hover {
		background: rgba(216, 37, 49, .14);
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out
	}
}
@media only screen and (max-width: 767px) {
	.top-news-section .txt-wrap {
		grid-template-columns: 1fr;
		padding: min(5px, 1.3333333333vw) min(17px, 4.5333333333vw) min(7px, 1.8666666667vw);
		row-gap: 0
	}
}
.top-news-section .day {
	font-size: min(13px, 0.8666666667vw);
	letter-spacing: .16em
}
@media only screen and (max-width: 767px) {
	.top-news-section .day {
		font-size: min(11px, 2.9333333333vw);
		letter-spacing: .1em
	}
}
.top-news-section .inn {
	font-size: min(14px, 0.875vw);
	line-height: 1.9
}
@media only screen and (max-width: 767px) {
	.top-news-section .inn {
		font-size: min(10px, 2.6666666667vw);
		line-height: 1.6
	}
}
.top-item-section {
	position: relative;
	overflow: hidden;
	height: min(580px, 38.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.top-item-section {
		height: min(417px, 111.2vw)
	}
}
.top-item-section::before {
	background: url(../img/top/contents-bg.svg) no-repeat center center/contain;
	content: "";
	height: min(582px, 38.8vw);
	width: min(872px, 58.1333333333vw);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2
}
@media only screen and (min-width: 768px)and (min-width: 1501px) {
	.top-item-section::before {
		background-size: cover;
		width: calc(100% - min(300px, 20vw))
	}
}
@media only screen and (max-width: 767px) {
	.top-item-section::before {
		background: url(../img/top/contents-bg_sp.svg) no-repeat center center/contain;
		height: min(278px, 74.1333333333vw);
		width: min(376px, 100.2666666667vw)
	}
}
.top-item-section .Container {
	max-width: 1225px;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-left: min(80px, 5.3333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-item-section .Container {
		margin-top: max(-70px, -18.6666666667vw);
		padding-left: min(40px, 10.6666666667vw)
	}
}
.top-item-section .txt {
	color: #fff;
	font-size: min(14px, 0.9333333333vw);
	line-height: 1.9;
	letter-spacing: .26em;
	margin-top: min(24px, 1.6vw)
}
@media only screen and (max-width: 767px) {
	.top-item-section .txt {
		font-size: min(10px, 2.6666666667vw);
		letter-spacing: .11em;
		margin-top: min(15px, 4vw)
	}
}
.top-item-section .txt-wrap {
	position: relative;
	z-index: 2
}
.top-item-section .img {
	position: absolute;
	top: 0;
	right: 0
}
@media only screen and (max-width: 767px) {
	.top-item-section .img {
		top: inherit;
		bottom: 0
	}
	.top-item-section .img img, .top-item-section .img source {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
		-o-object-position: top;
		object-position: top
	}
}
.top-item-section .c-btn01 {
	margin-top: min(39px, 2.6vw)
}
@media only screen and (max-width: 767px) {
	.top-item-section .c-btn01 {
		margin-top: min(23px, 6.1333333333vw)
	}
}
.top-contents-section {
	background: #e9e9e9;
	overflow: hidden;
	position: relative
}
.top-contents-section::before {
	background: url(../img/top/bg-shape-white.svg) no-repeat center center/contain;
	content: "";
	height: min(400px, 26.6666666667vw);
	width: min(1022px, 68.1333333333vw);
	position: absolute;
	top: max(-240px, -16vw);
	right: 0;
	z-index: 2
}
.top-contents-section::after {
	background: url(../img/top/bg-shape-gray01.svg) no-repeat center center/contain;
	content: "";
	height: min(890px, 59.3333333333vw);
	width: min(884px, 58.9333333333vw);
	position: absolute;
	top: max(-20px, -1.3333333333vw);
	left: 0
}
.top-contents-section .Container {
	padding-bottom: min(140px, 9.3333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .Container {
		padding-bottom: min(80px, 21.3333333333vw)
	}
}
.top-contents-section .box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	z-index: 6
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box {
		display: block
	}
}
.top-contents-section .box:nth-child(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	margin-top: min(150px, 10vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(even) {
		margin-right: calc(50% - 50vw)
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(even) {
		margin-top: min(50px, 13.3333333333vw)
	}
}
.top-contents-section .box:nth-child(even) .img {
	right: max(-140px, -9.3333333333vw);
	margin-top: min(90px, 6vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(even) .img img {
		width: 100%;
		max-width: min(805px, 53.6666666667vw)
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(even) .img {
		right: max(-100px, -26.6666666667vw);
		margin-top: 0
	}
}
.top-contents-section .box:nth-child(even) .txt-wrap {
	padding: min(114px, 7.6vw) 0 min(57px, 3.8vw) min(140px, 9.3333333333vw);
	left: min(80px, 5.3333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(even) .txt-wrap {
		padding: min(50px, 13.3333333333vw) min(20px, 5.3333333333vw) min(27px, 7.2vw) min(80px, 21.3333333333vw);
		margin-top: max(-69px, -18.4vw)
	}
}
.top-contents-section .box:nth-child(even) .txt-wrap::before {
	-webkit-transform: skewX(35deg);
	transform: skewX(35deg);
	right: inherit;
	left: max(-48px, -3.2vw);
	width: min(820px, 54.6666666667vw);
	height: min(432px, 28.8vw)
}
@media only screen and (min-width: 768px)and (min-width: 1600px) {
	.top-contents-section .box:nth-child(even) .txt-wrap::before {
		width: calc(100% + min(600px, 37.5vw))
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(even) .txt-wrap::before {
		left: 0;
		width: 100%;
		height: min(180px, 48vw)
	}
}
.top-contents-section .box:nth-child(odd) {
	margin-left: calc(50% - 50vw);
	margin-top: min(70px, 4.6666666667vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(odd) {
		margin-left: calc(50% - 50vw)
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(odd) {
		margin-top: min(55px, 14.6666666667vw)
	}
}
.top-contents-section .box:nth-child(odd) .img {
	left: max(-25px, -1.6666666667vw)
}
.top-contents-section .box:nth-child(odd) .img img {
	width: 100%
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(odd) .img {
		left: max(-27px, -7.2vw)
	}
}
.top-contents-section .box:nth-child(odd) .txt-wrap {
	margin-top: min(170px, 11.3333333333vw);
	right: min(280px, 18.6666666667vw)
}
@media only screen and (min-width: 768px)and (min-width: 1600px) {
	.top-contents-section .box:nth-child(odd) .txt-wrap {
		right: min(220px, 13.75vw)
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(odd) .txt-wrap {
		margin-top: max(-15px, -4vw);
		right: 0
	}
}
.top-contents-section .box:nth-child(odd) .txt-wrap::before {
	right: max(-200px, -13.3333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(odd) .txt-wrap::before {
		right: 0
	}
}
.top-contents-section .box:nth-child(1) {
	margin-top: min(137px, 9.1333333333vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(1) .img {
		left: max(-15px, -1vw)
	}
	.top-contents-section .box:nth-child(1) .img img {
		max-width: min(900px, 60vw)
	}
}
@media only screen and (min-width: 768px)and (min-width: 1600px) {
	.top-contents-section .box:nth-child(1) .txt-wrap {
		margin-top: auto;
		right: min(300px, 18.75vw)
	}
}
@media only screen and (min-width: 768px)and (min-width: 1600px) {
	.top-contents-section .box:nth-child(1) .txt-wrap::before {
		top: inherit;
		bottom: max(-30px, -1.875vw);
		width: calc(100% + min(600px, 37.5vw))
	}
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(3) .img {
		min-width: min(956px, 63.7333333333vw);
		left: max(-62px, -4.1333333333vw)
	}
}
.top-contents-section .box:nth-child(3) .txt-wrap {
	padding: min(105px, 7vw) 0 min(73px, 4.8666666667vw);
	margin-top: min(160px, 10.6666666667vw);
	right: min(160px, 10.6666666667vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .box:nth-child(3) .txt-wrap {
		width: 100%;
		padding-left: min(10px, 0.6666666667vw)
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(3) .txt-wrap {
		padding: min(58px, 15.4666666667vw) min(20px, 5.3333333333vw) min(27px, 7.2vw) min(115px, 30.6666666667vw);
		right: 0;
		margin-top: max(-32px, -8.5333333333vw)
	}
}
.top-contents-section .box:nth-child(3) .txt-wrap::before {
	height: min(450px, 30vw);
	width: min(780px, 52vw);
	right: max(-90px, -6vw)
}
@media only screen and (min-width: 768px)and (min-width: 1800px) {
	.top-contents-section .box:nth-child(3) .txt-wrap::before {
		width: calc(100% + min(400px, 22.2222222222vw))
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .box:nth-child(3) .txt-wrap::before {
		height: min(180px, 48vw);
		width: 100%;
		right: 0
	}
}
.top-contents-section .img {
	position: relative;
	z-index: 2;
	width: 100%
}
.top-contents-section .txt-wrap {
	position: relative;
	padding: min(62px, 4.1333333333vw) 0 min(60px, 4vw)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .txt-wrap {
		padding: min(40px, 10.6666666667vw) min(20px, 5.3333333333vw) min(19px, 5.0666666667vw) min(86px, 22.9333333333vw)
	}
}
.top-contents-section .txt-wrap .c-ttl01, .top-contents-section .txt-wrap .txt, .top-contents-section .txt-wrap .c-btn01 {
	position: relative;
	z-index: 2
}
.top-contents-section .txt-wrap::before {
	background: #fff;
	border-radius: 15px;
	content: "";
	height: min(382px, 25.4666666667vw);
	width: min(843px, 56.2vw);
	position: absolute;
	top: 0;
	right: 0;
	-webkit-transform: skewX(-35deg);
	transform: skewX(-35deg)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .txt-wrap::before {
		border-radius: 7px;
		height: min(160px, 42.6666666667vw);
		width: 100%;
		left: 0;
		margin: auto
	}
}
.top-contents-section .txt-wrap .txt {
	font-size: min(16px, 1.0666666667vw);
	letter-spacing: .16em;
	line-height: 1.7;
	margin-top: min(15px, 1vw)
}
@media only screen and (min-width: 768px) {
	.top-contents-section .txt-wrap .txt {
		white-space: nowrap
	}
}
@media only screen and (max-width: 767px) {
	.top-contents-section .txt-wrap .txt {
		font-size: min(8px, 2.1333333333vw);
		letter-spacing: .06em;
		margin-top: min(10px, 2.6666666667vw)
	}
}
.top-contents-section .txt-wrap .c-btn01 {
	margin-top: min(33px, 2.2vw)
}
@media only screen and (max-width: 767px) {
	.top-contents-section .txt-wrap .c-btn01 {
		margin-top: min(20px, 5.3333333333vw)
	}
}
.top-contents-section .deco {
	position: absolute;
	bottom: min(511px, 34.0666666667vw);
	right: 0;
	width: min(1373px, 91.5333333333vw);
	height: min(771px, 51.4vw)
}
.top-solution-section {
	background: url(../img/top/solution-bg.jpg.webp) no-repeat center center/cover
}
@media only screen and (max-width: 767px) {
	.top-solution-section {
		background: url(../img/top/solution-bg_sp.jpg.webp) no-repeat center center/cover
	}
}
.top-solution-section .Container {
	padding-top: min(80px, 5.3333333333vw);
	padding-bottom: min(128px, 8.5333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-solution-section .Container {
		padding-top: min(30px, 8vw);
		padding-bottom: min(30px, 8vw)
	}
}
.top-solution-section .solution-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: min(20px, 1.3333333333vw);
	-moz-column-gap: min(20px, 1.3333333333vw);
	column-gap: min(20px, 1.3333333333vw);
	row-gap: min(32px, 2.1333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list {
		grid-template-columns: 1fr;
		row-gap: min(15px, 4vw)
	}
}
.top-solution-section .solution-list li {
	background: #474747;
	max-height: 205px
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li {
		max-height: inherit
	}
}
.top-solution-section .solution-list li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	grid-template-columns: min(304px, 20.2666666667vw) 1fr;
	text-decoration: none;
	-webkit-box-align: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch
}
@media only screen and (min-width: 768px) {
	.top-solution-section .solution-list li a {
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center
	}
	.top-solution-section .solution-list li a:hover .ttl, .top-solution-section .solution-list li a:hover .txt {
		color: #d82531;
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out
	}
	.top-solution-section .solution-list li a:hover .img img, .top-solution-section .solution-list li a:hover .img source {
		-webkit-transform: scale(1.15);
		transform: scale(1.15);
		-webkit-transition: .2s;
		transition: .2s
	}
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li a {
		grid-template-columns: min(180px, 48vw) 1fr
	}
}
.top-solution-section .solution-list li .txt-wrap {
	width: 50%;
	padding: 0 min(15px, 1.1494252874vw)
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li .txt-wrap {
		padding: min(10px, 2.6666666667vw) min(10px, 2.6666666667vw)
	}
}
.top-solution-section .solution-list li .ttl {
	color: #fff;
	font-size: min(15px, 1.1494252874vw);
	font-weight: bold;
	letter-spacing: .16em;
	line-height: 1.72134;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li .ttl {
		font-size: min(12px, 3.2vw);
		letter-spacing: .1em;
		line-height: 1.6
	}
}
.top-solution-section .solution-list li .txt {
	color: #fff;
	font-size: min(13px, 0.9961685824vw);
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: .06em;
	line-height: 1.785714;
	margin-top: min(10px, 0.6666666667vw);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li .txt {
		font-size: min(10px, 2.6666666667vw);
		line-height: 1.4;
		margin-top: min(10px, 2.6666666667vw)
	}
}
.top-solution-section .solution-list li .img {
	width: 45%;
	position: relative;
	overflow: hidden;
	height: 100%
}
@media only screen and (max-width: 767px) {
	.top-solution-section .solution-list li .img {
		height: auto
	}
}
.top-solution-section .solution-list li .img img, .top-solution-section .solution-list li .img source {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: top;
	object-position: top
}
.top-source-section .Container {
	padding-top: min(24px, 1.6vw);
	padding-bottom: min(59px, 3.9333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-source-section .Container {
		padding-top: min(20px, 5.3333333333vw);
		padding-bottom: min(40px, 10.6666666667vw)
	}
}
.top-source-section .link-list li {
	font-size: min(13px, 0.8666666667vw);
	letter-spacing: .18em
}
@media only screen and (max-width: 767px) {
	.top-source-section .link-list li {
		font-size: min(12px, 3.2vw);
		letter-spacing: .1em
	}
}
.top-source-section .link-list li+li {
	margin-top: min(2px, 0.1333333333vw)
}
@media only screen and (max-width: 767px) {
	.top-source-section .link-list li+li {
		margin-top: min(2px, 0.5333333333vw)
	}
}
.top-source-section .link-list a {
	color: #282828;
	text-decoration: none
}
@media only screen and (min-width: 768px) {
	.top-source-section .link-list a:hover {
		color: #d82531;
		text-decoration: underline
	}
}
.is-anime {
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out
}
.is-anime.is-animeLeft, .is-anime.is-animeRight {
	-webkit-clip-path: inset(0);
	clip-path: inset(0)
}
@-webkit-keyframes zoom {
	0% {
		-webkit-transform: scale(100%);
		transform: scale(100%)
	}
	100% {
		-webkit-transform: scale(105%);
		transform: scale(105%)
	}
}
@keyframes zoom {
	0% {
		-webkit-transform: scale(100%);
		transform: scale(100%)
	}
	100% {
		-webkit-transform: scale(105%);
		transform: scale(105%)
	}
}
@-webkit-keyframes animeLeft {
	0% {
		-webkit-clip-path: inset(0 100% 0 0);
		clip-path: inset(0 100% 0 0);
		opacity: 0;
		z-index: 10
	}
	10% {
		opacity: 1;
		z-index: 10;
		-webkit-clip-path: inset(0);
		clip-path: inset(0)
	}
	60% {
		opacity: 1
	}
	61% {
		opacity: 0;
		z-index: 1
	}
	100% {
		opacity: 0
	}
}
@keyframes animeLeft {
	0% {
		-webkit-clip-path: inset(0 100% 0 0);
		clip-path: inset(0 100% 0 0);
		opacity: 0;
		z-index: 10
	}
	10% {
		opacity: 1;
		z-index: 10;
		-webkit-clip-path: inset(0);
		clip-path: inset(0)
	}
	60% {
		opacity: 1
	}
	61% {
		opacity: 0;
		z-index: 1
	}
	100% {
		opacity: 0
	}
}
@-webkit-keyframes animeRight {
	0% {
		opacity: 0;
		z-index: 10;
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%)
	}
	10% {
		opacity: 1;
		z-index: 10;
		-webkit-clip-path: inset(0);
		clip-path: inset(0)
	}
	60% {
		opacity: 1
	}
	61% {
		opacity: 0;
		z-index: 1
	}
	100% {
		opacity: 0
	}
}
@keyframes animeRight {
	0% {
		opacity: 0;
		z-index: 10;
		-webkit-clip-path: inset(0 0 0 100%);
		clip-path: inset(0 0 0 100%)
	}
	10% {
		opacity: 1;
		z-index: 10;
		-webkit-clip-path: inset(0);
		clip-path: inset(0)
	}
	60% {
		opacity: 1
	}
	61% {
		opacity: 0;
		z-index: 1
	}
	100% {
		opacity: 0
	}
}
@-webkit-keyframes slideIn {
	0% {
		-webkit-transform: translateY(40px);
		transform: translateY(40px);
		opacity: 0
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	60%, 100% {
		opacity: 1
	}
}
@keyframes slideIn {
	0% {
		-webkit-transform: translateY(40px);
		transform: translateY(40px);
		opacity: 0
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	60%, 100% {
		opacity: 1
	}
}
/*# sourceMappingURL=home.min.css.map */