@charset "UTF-8";
/*##################################################
-------------LIST-------------
 00: Reset
 01: Utility
 02: Base
 03: Animation
 04: Link
 05: Wrapper
 06: Header
 07: Contents
 08: Footer
     Component
     Project
------------------------------
##################################################*/
/* --------------------------------------------------
 00: Reset Style
 -------------------------------------------------- */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|M+PLUS+Rounded+1c:400,500,700&display=swap");
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

*, *::before, *::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, picture {
	display: block;
}

h1, h2, h3, h4, h5, h6, dt, th {
	font-weight: normal;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

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

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

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

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

input, select, button, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	border-radius: 0;
	border: none;
	background-color: transparent;
	font-family: inherit;
	font-size: 100%;
	vertical-align: middle;
}

select {
	text-indent: .01px;
	text-overflow: "";
}

select::-ms-expand {
	display: none;
}

/* --------------------------------------------------
 01: Utility Style
 -------------------------------------------------- */
/* float */
.fl {
	float: left !important;
}

.fr {
	float: right !important;
}

/* align */
.taL {
	text-align: left !important;
}

.taR {
	text-align: right !important;
}

.taC {
	text-align: center !important;
}

/* size */
.txXS {
	font-size: 10px !important;
}

.txSS {
	font-size: 11px !important;
}

.txS {
	font-size: 12px !important;
}

.txM {
	font-size: 14px !important;
}

.txL {
	font-size: 16px !important;
}

.txLL {
	font-size: 18px !important;
}

.txXL {
	font-size: 20px !important;
}

/* Margin Padding */
.noMargin {
	margin: 0 !important;
}

.noPadding {
	padding: 0 !important;
}

.mt0 {
	margin-top: 0 !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.pt0 {
	padding-top: 0 !important;
}

.pb0 {
	padding-bottom: 0 !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.pt5 {
	padding-top: 5px !important;
}

.pb5 {
	padding-bottom: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.pt35 {
	padding-top: 35px !important;
}

.pb35 {
	padding-bottom: 35px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.mt45 {
	margin-top: 45px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.pt45 {
	padding-top: 45px !important;
}

.pb45 {
	padding-bottom: 45px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

/* Clear */
.clr {
	clear: both;
}

/* display */
@media only screen and (max-width: 767px) {
	.display-pc {
		display: none;
	}
}

.display-sp {
	display: none;
}

@media only screen and (max-width: 767px) {
	.display-sp {
		display: block;
	}
}

/* --------------------------------------------------
 02: Base Style
 -------------------------------------------------- */
html {
	font-size: 62.5%;
	-ms-overflow-style: -ms-autohiding-scrollbar;
}

body {
	margin: 0 auto;
	padding-top: 72px;
	background: url(/assets/img/common/bg.png) center top repeat;
	color: #333;
	font-family: "Noto Sans JP", "Lucida Grande", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic W3", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, system-ui, sans-serif;
	font-size: 1.4rem;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
}

body.is-fixed {
	position: fixed;
	width: 100%;
}

@media only screen and (max-width: 767px) {
	body {
		padding-top: calc(112 / 750 * 100vw);
		background-size: calc(56 / 750 * 100vw) auto;
		font-size: calc(28 / 750 * 100vw);
	}
}

img, svg {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: .3s;
	transition: .3s;
}

path {
	-webkit-transition: .3s;
	transition: .3s;
}

/* lazyload */
.lazyload, .lazyloading {
	opacity: 0;
	visibility: hidden;
}

.lazyloaded {
	opacity: 1;
	visibility: visible;
}

/* --------------------------------------------------
 03: Animation
 -------------------------------------------------- */
/* fadeIn */
@-webkit-keyframes fadeIn {
	0% {
		visibility: hidden;
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeIn {
	0% {
		visibility: hidden;
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* fadeUp */
@-webkit-keyframes fadeUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px);
		transform: translateY(100px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes fadeUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px);
		transform: translateY(100px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/* --------------------------------------------------
 04: Link Style
 -------------------------------------------------- */
a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: .3s;
	transition: .3s;
}

a:hover {
	color: #ed9906;
}

/* --------------------------------------------------
 05: Wrapper Style
 -------------------------------------------------- */
.wrap {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	max-width: 960px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}

@media only screen and (max-width: 767px) {
	.wrap {
		padding-right: calc(40 / 750 * 100vw);
		padding-left: calc(40 / 750 * 100vw);
	}
}

/* --------------------------------------------------
 06: Header Style
 -------------------------------------------------- */
.header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1000;
	height: 72px;
	background-color: #fff;
}

.header > .wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	height: 100%;
}

.header__logo img {
	width: 196px;
	max-width: none;
}

@media only screen and (max-width: 767px) {
	.header {
		height: calc(112 / 750 * 100vw);
	}
	.header__logo {
		padding-bottom: calc(4 / 750 * 100vw);
	}
	.header__logo img {
		width: calc(280 / 750 * 100vw);
	}
}

/* nav-global */
.nav-global {
	padding-top: 16px;
	padding-left: 40px;
}

.nav-global__overlay {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(9, 9, 9, .8);
	-webkit-transition: opacity .3s .1s;
	transition: opacity .3s .1s;
}

.nav-global__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.nav-global__nav, .nav-global__sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.nav-global__nav {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -36px;
}

.nav-global__nav li {
	margin-left: 36px;
	font-size: 1.3rem;
	letter-spacing: .2em;
}

.nav-global__sns {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-left: 36px;
}

.nav-global__sns li:not(:first-child) {
	margin-left: 20px;
}

.nav-global__sns a:hover path {
	fill: #e5e5e5;
}

.nav-global__sns svg {
	max-width: none;
}

.nav-global__background {
	display: none;
}

@media only screen and (max-width: 767px) {
	.nav-global {
		display: none;
		padding-top: 0;
		padding-left: 0;
	}
	.nav-global.is-active {
		display: block;
		-webkit-animation: fadeIn .3s;
		animation: fadeIn .3s;
	}
	.nav-global.is-active .nav-global__overlay, .nav-global.is-active .nav-global__contents {
		visibility: visible;
		opacity: 1;
	}
	.nav-global.is-active .nav-global__nav li {
		visibility: visible;
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.nav-global.is-active .nav-global__nav li:nth-child(1) {
		-webkit-transition-delay: .7s;
		transition-delay: .7s;
	}
	.nav-global.is-active .nav-global__nav li:nth-child(2) {
		-webkit-transition-delay: .8s;
		transition-delay: .8s;
	}
	.nav-global.is-active .nav-global__nav li:nth-child(3) {
		-webkit-transition-delay: .9s;
		transition-delay: .9s;
	}
	.nav-global.is-active .nav-global__nav li:nth-child(4) {
		-webkit-transition-delay: 1s;
		transition-delay: 1s;
	}
	.nav-global.is-active .nav-global__nav li:nth-child(5) {
		-webkit-transition-delay: 1.1s;
		transition-delay: 1.1s;
	}
	.nav-global.is-active .nav-global__nav li:nth-child(6) {
		-webkit-transition-delay: 1.2s;
		transition-delay: 1.2s;
	}
	.nav-global.is-active .nav-global__sns {
		visibility: visible;
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		-webkit-transition-delay: 1.35s;
		transition-delay: 1.35s;
	}
	.nav-global.is-active .nav-global__background::before {
		border-radius: calc(40 / 750 * 100vw);
		border-top-right-radius: 0;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.nav-global.is-active .nav-global__background::after {
		border-top-left-radius: calc(50 / 750 * 100vw);
		border-bottom-right-radius: calc(50 / 750 * 100vw);
	}
	.nav-global__contents {
		visibility: hidden;
		opacity: 0;
		display: block;
		position: fixed;
		top: calc(112 / 750 * 100vw);
		right: calc(40 / 750 * 100vw);
		left: calc(40 / 750 * 100vw);
		z-index: 3;
		padding: calc(70 / 750 * 100vw) calc(40 / 750 * 100vw) calc(90 / 750 * 100vw);
		text-align: center;
	}
	.nav-global__nav {
		display: block;
		margin-left: 0;
	}
	.nav-global__nav li {
		visibility: hidden;
		opacity: 0;
		margin-left: 0;
		font-size: calc(36 / 750 * 100vw);
		letter-spacing: .46em;
		text-indent: .46em;
		-webkit-transform: translateY(calc(60 / 750 * 100vw));
		transform: translateY(calc(60 / 750 * 100vw));
		-webkit-transition: .7s;
		transition: .7s;
	}
	.nav-global__nav li:not(:first-child) {
		margin-top: calc(70 / 750 * 100vw);
	}
	.nav-global__nav a {
		color: #ed9906;
	}
	.nav-global__sns {
		visibility: hidden;
		opacity: 0;
		margin-top: calc(90 / 750 * 100vw);
		margin-left: 0;
		-webkit-transform: translateY(calc(60 / 750 * 100vw));
		transform: translateY(calc(60 / 750 * 100vw));
		-webkit-transition: .7s;
		transition: .7s;
	}
	.nav-global__sns li:not(:first-child) {
		margin-left: calc(100 / 750 * 100vw);
	}
	.nav-global__sns a.-facebook svg {
		width: calc(48 / 750 * 100vw);
	}
	.nav-global__sns a.-twitter svg {
		width: calc(50 / 750 * 100vw);
	}
	.nav-global__sns svg {
		max-width: 100%;
	}
	.nav-global__background {
		display: block;
		position: absolute;
		top: calc(-20 / 750 * 100vw);
		right: calc(-20 / 750 * 100vw);
		bottom: calc(-20 / 750 * 100vw);
		left: calc(-20 / 750 * 100vw);
		z-index: -1;
		-webkit-filter: url(#filter);
		filter: url(#filter);
	}
	.nav-global__background::before, .nav-global__background::after {
		content: "";
		position: absolute;
		background-color: #fff;
	}
	.nav-global__background::before {
		top: calc(20 / 750 * 100vw);
		right: calc(20 / 750 * 100vw);
		bottom: calc(20 / 750 * 100vw);
		left: calc(20 / 750 * 100vw);
		-webkit-transform: scale(.8);
		transform: scale(.8);
		-webkit-transition: .4s .1s;
		transition: .4s .1s;
	}
	.nav-global__background::after {
		bottom: calc(100% - calc(32 / 750 * 100vw));
		right: calc(-26 / 750 * 100vw);
		width: calc(148 / 750 * 100vw);
		height: calc(148 / 750 * 100vw);
	}
}

/* nav-menu */
.nav-menu {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 3;
	width: calc(136 / 750 * 100vw);
	height: calc(112 / 750 * 100vw);
}

.nav-menu button {
	position: relative;
	width: 100%;
	height: 100%;
	cursor: pointer;
	text-indent: -9999px;
	outline: 0;
}

.nav-menu button > span, .nav-menu button::before, .nav-menu button::after {
	display: inline-block;
	position: absolute;
	left: 50%;
	width: calc(56 / 750 * 100vw);
	height: 2px;
	border-radius: 2px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, transform .3s;
	transition: opacity .3s, transform .3s, -webkit-transform .3s;
}

.nav-menu button > span {
	top: calc(50% - 1px);
	background-color: #fab30a;
}

.nav-menu button::before, .nav-menu button::after {
	content: "";
}

.nav-menu button::before {
	top: calc(38 / 750 * 100vw);
	background-color: #ff7e00;
}

.nav-menu button::after {
	bottom: calc(38 / 750 * 100vw);
	background-color: #ffcf31;
}

.nav-menu button[aria-expanded="true"] > span {
	opacity: 0;
}

.nav-menu button[aria-expanded="true"]::before {
	-webkit-transform: translate(-50%, calc(16 / 750 * 100vw)) rotate(-45deg);
	transform: translate(-50%, calc(16 / 750 * 100vw)) rotate(-45deg);
}

.nav-menu button[aria-expanded="true"]::after {
	-webkit-transform: translate(-50%, calc(-16 / 750 * 100vw)) rotate(45deg);
	transform: translate(-50%, calc(-16 / 750 * 100vw)) rotate(45deg);
}

@media only screen and (max-width: 767px) {
	.nav-menu {
		display: block;
	}
}

/* --------------------------------------------------
 07: Contents Style
-------------------------------------------------- */
main {
	overflow: hidden;
	position: relative;
	z-index: 3;
}

#top main {
	position: relative;
	padding-bottom: calc(1013 / 1366 * 100vw);
}

#top main::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 100%;
	min-width: 1366px;
	height: calc(1013 / 1366 * 100vw);
	min-height: 1013px;
	background: #ed9906 url(/assets/img/top/bg_main@pc.png) center bottom 1px/100% auto no-repeat;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

@media only screen and (max-width: 1366px) {
	#top main {
		padding-bottom: 1013px;
	}
}

@media only screen and (max-width: 767px) {
	#top main {
		padding-bottom: calc(749 / 750 * 100vw);
	}
	#top main::before {
		min-width: auto;
		height: calc(749 / 750 * 100vw);
		min-height: auto;
		background-image: url(/assets/img/top/bg_main@sp.png);
	}
}

.contents {
	position: relative;
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: #ffcf31;
}

#top .contents {
	padding-top: 72px;
}

#top .contents .contents__btn {
	position: relative;
}

#top .contents .contents__btn.aos-animate::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

#top .contents .contents__btn.aos-animate::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

#top .contents .contents__btn::before, #top .contents .contents__btn::after {
	content: "";
	position: absolute;
}

#top .contents .contents__btn::before {
	top: -124px;
	left: -300px;
	width: 323px;
	height: 284px;
	background: url(/assets/img/top/bg_foam_07.png) center center/contain no-repeat;
}

#top .contents .contents__btn::after {
	top: 56px;
	right: -124px;
	width: 80px;
	height: 80px;
	border-radius: 100%;
	background-color: #ed9906;
}

.contents__inner {
	padding: 56px 60px 64px;
	border-radius: 16px;
	background-color: #fff;
}

.contents__btn {
	margin-top: 92px;
}

@media only screen and (max-width: 767px) {
	.contents {
		padding-top: calc(20 / 750 * 100vw);
		padding-bottom: calc(120 / 750 * 100vw);
	}
	#top .contents {
		padding-top: calc(84 / 750 * 100vw);
	}
	#top .contents .contents__btn::before {
		content: none;
	}
	#top .contents .contents__btn::after {
		top: calc(20 / 750 * 100vw);
		right: calc(-24 / 750 * 100vw);
		width: calc(64 / 750 * 100vw);
		height: calc(64 / 750 * 100vw);
	}
	.contents__inner {
		padding: calc(40 / 750 * 100vw) calc(40 / 750 * 100vw) calc(56 / 750 * 100vw);
		border-radius: calc(16 / 750 * 100vw);
	}
	.contents__btn {
		margin-top: calc(64 / 750 * 100vw);
	}
}

/* wave
------------------------------ */
.wave {
	position: absolute;
	right: 0;
	bottom: calc(100% - 1px);
	left: 0;
	z-index: -1;
}

.wave.-footer {
	top: 0;
	bottom: auto;
	-webkit-transform: scale(1, -1);
	transform: scale(1, -1);
}

.wave canvas {
	width: 100%;
	vertical-align: bottom;
}

/* --------------------------------------------------
 08: Footer Style
 -------------------------------------------------- */
.footer {
	position: relative;
	z-index: 3;
	padding-top: 140px;
	padding-bottom: 88px;
	background-color: #ed9906;
}

#top .footer {
	padding-top: 80px;
}

@media only screen and (max-width: 767px) {
	.footer {
		padding-top: calc(240 / 750 * 100vw);
		padding-bottom: calc(80 / 750 * 100vw);
	}
	#top .footer {
		padding-top: calc(140 / 750 * 100vw);
	}
}

/* nav-footer */
.nav-footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-right: 40px;
	padding-left: 40px;
}

.nav-footer__nav, .nav-footer__sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.nav-footer__nav {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -36px;
}

.nav-footer__nav li {
	margin-left: 36px;
	font-size: 1.3rem;
	color: #fff;
}

.nav-footer__nav a:hover {
	color: #ffcf31;
}

.nav-footer__sns {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.nav-footer__sns li:not(:first-child) {
	margin-left: 40px;
}

.nav-footer__sns a:hover path {
	fill: #ffcf31;
}

.nav-footer__sns svg {
	max-width: none;
}

@media only screen and (max-width: 767px) {
	.nav-footer {
		display: block;
		padding-right: 0;
		padding-left: 0;
	}
	.nav-footer__nav {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-top: calc(-24 / 750 * 100vw);
		margin-left: calc(-72 / 750 * 100vw);
	}
	.nav-footer__nav li {
		margin-top: calc(24 / 750 * 100vw);
		margin-left: calc(72 / 750 * 100vw);
		font-size: calc(24 / 750 * 100vw);
		letter-spacing: .16em;
	}
	.nav-footer__sns {
		margin-top: calc(32 / 750 * 100vw);
		padding-top: calc(40 / 750 * 100vw);
		border-top: 1px solid rgba(255, 255, 255, .2);
	}
	.nav-footer__sns li:not(:first-child) {
		margin-left: calc(80 / 750 * 100vw);
	}
}

/* copyright */
.copyright {
	margin-top: 28px;
	padding-top: 32px;
	border-top: 1px solid rgba(255, 255, 255, .2);
	color: #fff;
	font-size: 1.2rem;
	letter-spacing: .08em;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.copyright {
		margin-top: calc(40 / 750 * 100vw);
		padding-top: calc(32 / 750 * 100vw);
		font-size: calc(24 / 750 * 100vw);
		line-height: 2;
	}
}

/* --------------------------------------------------
 Component
 -------------------------------------------------- */
/* headline
------------------------------ */
/* headline-main */
.headline-main {
	position: relative;
	padding-top: 72px;
	padding-bottom: 72px;
	text-align: center;
	z-index: 5;
}

.headline-main__en {
	color: #ed9906;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: .46em;
	text-indent: .46em;
	line-height: 1;
}

.headline-main__jp {
	margin-top: 10px;
	color: #795815;
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-indent: .18em;
}

@media only screen and (max-width: 767px) {
	.headline-main {
		padding-top: calc(40 / 750 * 100vw);
		padding-bottom: calc(60 / 750 * 100vw);
	}
	.headline-main__en {
		font-size: calc(40 / 750 * 100vw);
	}
	.headline-main__jp {
		margin-top: calc(16 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
	}
}

/* headline-group */
.headline-group {
	text-align: center;
}

.headline-group__en {
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: .46em;
	text-indent: .46em;
	line-height: 1;
}

.headline-group__jp {
	margin-top: 10px;
	color: #795815;
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-indent: .18em;
}

@media only screen and (max-width: 767px) {
	.headline-group__en {
		font-size: calc(48 / 750 * 100vw);
	}
	.headline-group__jp {
		margin-top: calc(20 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
	}
}

/* btn
------------------------------ */
.btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.btn.-primary {
	position: relative;
	z-index: 3;
	max-width: 532px;
	height: 80px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 16px;
	padding-left: 16px;
	color: #715d36;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .03em;
}

.btn.-primary::before, .btn.-primary::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	border-radius: 80px;
}

.btn.-primary::before {
	background-color: rgba(255, 207, 49, .25);
	background-image: repeating-linear-gradient(-45deg, transparent, transparent 3px, #d3a326 3px, #d3a326 5px);
	-webkit-transform: translate(8px, 8px);
	transform: translate(8px, 8px);
}

.btn.-primary::after {
	border: 4px solid #715d36;
	background-color: #fff;
	-webkit-transition: .3s;
	transition: .3s;
}

.btn.-primary:hover {
	color: #fff;
}

.btn.-primary:hover::after {
	background-color: #eb9806;
}

@media only screen and (max-width: 767px) {
	.btn.-primary {
		max-width: calc(532 / 750 * 100vw);
		height: calc(80 / 750 * 100vw);
		padding-right: calc(16 / 750 * 100vw);
		padding-left: calc(16 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
	}
	.btn.-primary::before {
		-webkit-transform: translate(calc(8 / 750 * 100vw), calc(8 / 750 * 100vw));
		transform: translate(calc(8 / 750 * 100vw), calc(8 / 750 * 100vw));
	}
	.btn.-primary::after {
		border-width: calc(4 / 750 * 100vw);
	}
}

/* list
------------------------------ */
.list-news__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.list-news__item:not(:first-child) {
	margin-top: 32px;
}

.list-news dt, .list-news dd {
	line-height: 1.75;
}

.list-news dt {
	-ms-flex-preferred-size: 10em;
	flex-basis: 10em;
}

.list-news dd {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

@media only screen and (max-width: 767px) {
	.list-news__item {
		display: block;
	}
	.list-news__item:not(:first-child) {
		margin-top: calc(28 / 750 * 100vw);
	}
	.list-news dt {
		color: #999;
	}
	.list-news dd {
		margin-top: calc(12 / 750 * 100vw);
	}
}

/* --------------------------------------------------
 Project
 -------------------------------------------------- */
/* --------------------------------------------------
 TOP
 -------------------------------------------------- */
/* visual-main */
.visual-main {
	position: relative;
	z-index: 3;
	height: 780px;
}

.visual-main::before, .visual-main::after {
	content: "";
	position: absolute;
	z-index: -1;
}

.visual-main::before {
	right: 0;
	bottom: -154px;
	left: 0;
	height: 881px;
	background: url(/assets/img/top/bg_foam.svg) center bottom -1px/100% auto no-repeat;
}

.visual-main::after {
	top: 40px;
	left: calc(50% + 26px);
	width: 686px;
	height: 482px;
	background: url(/assets/img/top/bg_moon.svg) center center/contain no-repeat;
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.visual-main > .wrap {
	position: relative;
	height: 100%;
}

.visual-main > .wrap::before, .visual-main > .wrap::after {
	content: "";
	position: absolute;
	background: center center / contain no-repeat;
	-webkit-animation: fadeUp 1.5s cubic-bezier(0, .55, .45, 1) both;
	animation: fadeUp 1.5s cubic-bezier(0, .55, .45, 1) both;
}

.visual-main > .wrap::before {
	bottom: 15px;
	right: calc(50% - 68px);
	width: 683px;
	height: 645px;
	background-image: url(/assets/img/top/visual_img_01.svg);
	-webkit-animation-delay: 1.5s;
	animation-delay: 1.5s;
}

.visual-main > .wrap::after {
	bottom: 63px;
	left: calc(50% + 248px);
	width: 58px;
	height: 133px;
	background-image: url(/assets/img/top/visual_img_02.svg);
	-webkit-animation-delay: 1.8s;
	animation-delay: 1.8s;
}

.visual-main__group {
	position: absolute;
	top: 132px;
	left: calc(50% + 96px);
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.visual-main__company, .visual-main__headline {
	font-family: "M PLUS Rounded 1c", sans-serif;
	-webkit-animation: fadeUp cubic-bezier(0, .55, .45, 1) both;
	animation: fadeUp cubic-bezier(0, .55, .45, 1) both;
}

.visual-main__company {
	color: #e0d734;
	font-size: 1.8rem;
	letter-spacing: .32em;
	-webkit-animation-duration: 3.3s;
	animation-duration: 3.3s;
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}

.visual-main__headline {
	margin-right: 8px;
	color: #715d36;
	font-size: 3.8rem;
	letter-spacing: .42em;
	text-indent: .75em;
	-webkit-animation-duration: 2.5s;
	animation-duration: 2.5s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

@media only screen and (max-width: 767px) {
	.visual-main {
		height: calc(636 / 750 * 100vw);
	}
	.visual-main::before {
		bottom: 0;
		left: -70px;
		height: calc(592 / 750 * 100vw);
	}
	.visual-main::after {
		top: calc(16 / 750 * 100vw);
		left: calc(50% + calc(16 / 750 * 100vw));
		width: calc(345 / 750 * 100vw);
		height: calc(243 / 750 * 100vw);
	}
	.visual-main > .wrap::before {
		bottom: 0;
		right: calc(50% - calc(72 / 750 * 100vw));
		width: calc(613 / 750 * 100vw);
		height: calc(580 / 750 * 100vw);
	}
	.visual-main > .wrap::after {
		bottom: 0;
		left: calc(50% + calc(218 / 750 * 100vw));
		width: calc(59 / 750 * 100vw);
		height: calc(133 / 750 * 100vw);
	}
	.visual-main__group {
		top: calc(204 / 750 * 100vw);
		left: calc(50% + calc(118 / 750 * 100vw));
	}
	.visual-main__company, .visual-main__headline {
		font-family: "M PLUS Rounded 1c", sans-serif;
	}
	.visual-main__company {
		color: #e0d734;
		font-size: calc(24 / 750 * 100vw);
		letter-spacing: .24em;
	}
	.visual-main__headline {
		margin-right: calc(8 / 750 * 100vw);
		font-size: calc(42 / 750 * 100vw);
		text-indent: .18em;
	}
}

/* .nes-top */
.news-top {
	position: relative;
	z-index: 10;
}

.news-top.aos-animate::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

.news-top.aos-animate::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.news-top::before, .news-top::after {
	content: "";
	position: absolute;
	width: 136px;
	height: 136px;
}

.news-top::before {
	top: -50px;
	left: -240px;
	border-radius: 136px;
	background-color: #ed9906;
}

.news-top::after {
	top: 136px;
	right: -200px;
	background: url(/assets/img/top/bg_foam_01.png) center center/contain no-repeat;
}

.news-top__inner {
	position: relative;
	z-index: 3;
	padding: 72px 56px 28px;
	border-radius: 16px;
	background-color: #fff;
}

.news-top__headline {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 50%;
	width: 275px;
	height: 60px;
	border-radius: 60px;
	background-color: #574625;
	color: #ed9906;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 2.4rem;
	font-weight: 500;
	letter-spacing: .46em;
	text-indent: .46em;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.news-top__headline::before, .news-top__headline::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 114px;
	height: 4px;
	border-radius: 2px;
	background-color: #574625;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.news-top__headline::before {
	right: calc(100% - 2px);
}

.news-top__headline::after {
	left: calc(100% - 2px);
}

.news-top__link {
	margin-top: 28px;
	text-align: right;
}

.news-top__link a {
	display: inline-block;
	position: relative;
	color: #666;
	padding-left: 16px;
}

.news-top__link a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 6px;
	height: 10px;
	background: url(/assets/img/common/ic_arrow.svg) center center/contain no-repeat;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: .3s;
	transition: .3s;
}

.news-top__link a:hover {
	color: #e0d734;
}

.news-top__link a:hover::before {
	-webkit-transform: translateX(3px) translateY(-50%);
	transform: translateX(3px) translateY(-50%);
}

.news-top .list-news {
	max-width: 760px;
	margin-right: auto;
	margin-left: auto;
}

.news-top .list-news__item:not(:first-child) {
	margin-top: 20px;
}

@media only screen and (max-width: 767px) {
	.news-top::before, .news-top::after {
		content: "";
		position: absolute;
		width: calc(136 / 750 * 100vw);
		height: calc(136 / 750 * 100vw);
	}
	.news-top::before {
		top: calc(-92 / 750 * 100vw);
		left: calc(-60 / 750 * 100vw);
	}
	.news-top::after {
		top: calc(196 / 750 * 100vw);
		right: calc(-96 / 750 * 100vw);
		background: rgba(255, 255, 255, .7);
	}
	.news-top__inner {
		padding: calc(60 / 750 * 100vw) calc(40 / 750 * 100vw) calc(76 / 750 * 100vw);
		border-radius: calc(16 / 750 * 100vw);
	}
	.news-top__headline {
		width: calc(275 / 750 * 100vw);
		height: calc(60 / 750 * 100vw);
		font-size: calc(32 / 750 * 100vw);
	}
	.news-top__headline::before, .news-top__headline::after {
		width: calc(114 / 750 * 100vw);
		height: calc(4 / 750 * 100vw);
	}
	.news-top__headline::before {
		right: calc(100% - calc(2 / 750 * 100vw));
	}
	.news-top__headline::after {
		left: calc(100% - calc(2 / 750 * 100vw));
	}
	.news-top__link {
		margin-top: calc(54 / 750 * 100vw);
		text-align: center;
	}
	.news-top__link a {
		padding-left: calc(36 / 750 * 100vw);
	}
	.news-top__link a::before {
		width: calc(12 / 750 * 100vw);
		height: calc(20 / 750 * 100vw);
	}
	.news-top__link a:hover::before {
		-webkit-transform: translateX(calc(6 / 750 * 100vw)) translateY(-50%);
		transform: translateX(calc(6 / 750 * 100vw)) translateY(-50%);
	}
	.news-top .list-news__item:not(:first-child) {
		margin-top: calc(28 / 750 * 100vw);
	}
}

/* products-top */
.products-top {
	position: relative;
	padding-top: 112px;
}

.products-top.aos-animate::before {
	-webkit-animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
	animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
}

.products-top.aos-animate::after {
	-webkit-animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 1s both;
	animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 1s both;
}

.products-top::before, .products-top::after {
	content: "";
	position: absolute;
	background: center center / contain no-repeat;
}

.products-top::before {
	top: 20px;
	left: -432px;
	width: 441px;
	height: 344px;
	background-image: url(/assets/img/top/bg_foam_02.png);
}

.products-top::after {
	top: 64px;
	right: -172px;
	width: 151px;
	height: 269px;
	background-image: url(/assets/img/top/bg_ic_01.png);
}

.products-top__list {
	display: -webkit-box;
	display: -ms-flexbox;
/*	display: flex; */
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	margin-top: 112px;
}

.aos-animate .products-top__list::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

.aos-animate .products-top__list::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.products-top__list::before, .products-top__list::after {
	content: "";
	position: absolute;
	background-color: #fff;
	border-radius: 100%;
}

.products-top__list::before {
	top: 224px;
	left: -152px;
	width: 68px;
	height: 68px;
}

.products-top__list::after {
	top: 356px;
	left: -176px;
	width: 36px;
	height: 36px;
}

.products-top__item {
	position: relative;
	z-index: 3;
	-ms-flex-preferred-size: calc(450 / 960 * 100%);
	flex-basis: calc(450 / 960 * 100%);
	max-width: calc(450 / 960 * 100%);
	padding: 20px 36px;
	text-align: center;
}

.products-top__item::before, .products-top__item::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	border-radius: 16px;
}

.products-top__item::before {
	background-color: rgba(255, 207, 49, .25);
	background-image: repeating-linear-gradient(-45deg, transparent, transparent 3px, #d3a326 3px, #d3a326 5px);
	-webkit-transform: translate(10px, 10px);
	transform: translate(10px, 10px);
}

.products-top__item::after {
	background-color: #fff;
}

.products-top__image {
	margin-top: -46px;
}

.products-top__headline {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 3em;
	margin-top: 20px;
	color: #eda618;
	font-size: 1.8rem;
	letter-spacing: .1em;
	text-indent: .1em;
	line-height: 1.667;
}

.products-top__text {
	display: inline-block;
	margin-top: 16px;
	color: #999;
	text-align: left;
}

.products-top__text p {
	word-break: break-all;
}

.products-top__text p:not(:first-child) {
	margin-top: 4px;
}

.products-top__app {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 20px -36px 0;
}

.products-top__app li {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 12px;
}

.products-top__app li:not(:first-child) {
	border-left: 1px solid #e5e5e5;
}

.products-top__app li > img {
	display: block;
	margin: 0 auto 12px;
}

.products-top__app a {
	display: inline-block;
}

.products-top__app a:hover {
	opacity: .7;
}

@media only screen and (max-width: 767px) {
	.products-top {
		padding-top: calc(128 / 750 * 100vw);
	}
	.products-top::before {
		top: calc(256 / 750 * 100vw);
		left: calc(-72 / 750 * 100vw);
		width: calc(184 / 750 * 100vw);
		height: calc(184 / 750 * 100vw);
		border-radius: 100%;
		background: rgba(255, 255, 255, .7);
	}
	.products-top::after {
		top: calc(136 / 750 * 100vw);
		right: calc(-60 / 750 * 100vw);
		width: calc(118 / 750 * 100vw);
		height: calc(209 / 750 * 100vw);
	}
	.products-top__list {
		display: block;
		margin-top: calc(112 / 750 * 100vw);
	}
	.products-top__list::before {
		top: calc(748 / 750 * 100vw);
		left: calc(-184 / 750 * 100vw);
		width: calc(364 / 750 * 100vw);
		height: calc(364 / 750 * 100vw);
		background-color: rgba(255, 255, 255, .7);
	}
	.products-top__list::after {
		content: none;
	}
	.products-top__item {
		max-width: none;
		padding: calc(36 / 750 * 100vw) calc(60 / 750 * 100vw);
		border-radius: calc(16 / 750 * 100vw);
	}
	.products-top__item:not(:first-child) {
		margin-top: calc(120 / 750 * 100vw);
	}
	.products-top__image {
		margin-top: calc(-72 / 750 * 100vw);
	}
	.products-top__image img {
		width: 100%;
	}
	.products-top__headline {
		margin-top: calc(24 / 750 * 100vw);
		font-size: calc(32 / 750 * 100vw);
	}
	.products-top__text {
		margin-top: calc(20 / 750 * 100vw);
		font-size: calc(24 / 750 * 100vw);
	}
	.products-top__text p:not(:first-child) {
		margin-top: calc(8 / 750 * 100vw);
	}
	.products-top__app {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin: calc(32 / 750 * 100vw) calc(-60 / 750 * 100vw) 0;
	}
	.products-top__app li {
		padding: calc(24 / 750 * 100vw) calc(12 / 750 * 100vw);
	}
	.products-top__app li > img {
		display: none;
	}
	.products-top__app a > img {
		width: calc(240 / 750 * 100vw);
	}
}

/* services-top */
.services-top {
	position: relative;
	padding-top: 112px;
}

.services-top.aos-animate::before {
	-webkit-animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
	animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
}

.services-top.aos-animate::after {
	-webkit-animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 2s both;
	animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 2s both;
}

.services-top::before, .services-top::after {
	content: "";
	position: absolute;
	background: center center / contain no-repeat;
}

.services-top::before {
	top: 44px;
	left: -188px;
	width: 299px;
	height: 273px;
	background-image: url(/assets/img/top/bg_ic_02.png);
}

.services-top::after {
	top: -480px;
	right: -888px;
	width: 1085px;
	height: 786px;
	background-image: url(/assets/img/top/bg_foam_03.png);
}

.services-top__lead {
	margin-top: 64px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 2.625;
	text-align: center;
}

.services-top__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	z-index: 3;
	margin-top: 100px;
	padding-top: 24px;
	padding-bottom: 24px;
	border-radius: 12px;
	background-color: #fff;
	text-align: center;
}

.aos-animate .services-top__list::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

.aos-animate .services-top__list::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.services-top__list::before, .services-top__list::after {
	content: "";
	position: absolute;
	border-radius: 100%;
}

.services-top__list::before {
	top: -84px;
	right: -178px;
	width: 216px;
	height: 216px;
	background-color: rgba(255, 255, 255, .26);
}

.services-top__list::after {
	top: 76px;
	right: -220px;
	width: 100px;
	height: 100px;
	background-color: #ed9906;
}

.services-top__item {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 48px 12px 12px;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 1.857;
}

.services-top__item::before {
	content: "";
	position: absolute;
	top: -24px;
	left: 50%;
	background: center center / contain no-repeat;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.services-top__item:not(:first-child) {
	border-left: 1px solid #ffcf31;
}

.services-top__item.-item01::before {
	width: 83px;
	height: 120px;
	background-image: url(/assets/img/top/services_ic_01.svg);
}

.services-top__item.-item02::before {
	width: 107px;
	height: 115px;
	background-image: url(/assets/img/top/services_ic_02.svg);
}

.services-top__item.-item03::before {
	width: 89px;
	height: 104px;
	background-image: url(/assets/img/top/services_ic_03.svg);
}

.services-top__item.-item04::before {
	width: 84px;
	height: 73px;
	background-image: url(/assets/img/top/services_ic_04.svg);
}

@media only screen and (max-width: 767px) {
	.services-top {
		padding-top: calc(128 / 750 * 100vw);
	}
	.services-top.aos-animate::after {
		-webkit-animation: none;
		animation: none;
	}
	.services-top::before {
		top: calc(116 / 750 * 100vw);
		left: calc(-40 / 750 * 100vw);
		width: calc(193 / 750 * 100vw);
		height: calc(177 / 750 * 100vw);
	}
	.services-top::after {
		opacity: .7;
		top: calc(580 / 750 * 100vw);
		right: calc(-740 / 750 * 100vw);
		width: calc(1085 / 750 * 100vw);
		height: calc(785 / 750 * 100vw);
	}
	.services-top__lead {
		margin-top: calc(64 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
		text-align: left;
	}
	.services-top__list {
		display: block;
		margin-top: calc(240 / 750 * 100vw);
		padding-top: 0;
		padding-bottom: 0;
		background-color: transparent;
	}
	.services-top__list::before, .services-top__list::after {
		z-index: -1;
	}
	.services-top__list::before {
		top: calc(352 / 750 * 100vw);
		right: auto;
		left: calc(32 / 750 * 100vw);
		width: calc(64 / 750 * 100vw);
		height: calc(64 / 750 * 100vw);
		background-color: rgba(255, 255, 255, .7);
	}
	.services-top__list::after {
		top: calc(-76 / 750 * 100vw);
		right: auto;
		left: calc(-80 / 750 * 100vw);
		width: calc(136 / 750 * 100vw);
		height: calc(136 / 750 * 100vw);
	}
	.services-top__item {
		padding: calc(140 / 750 * 100vw) calc(32 / 750 * 100vw) calc(48 / 750 * 100vw);
		border-radius: calc(16 / 750 * 100vw);
		background-color: #fff;
		font-size: calc(32 / 750 * 100vw);
		line-height: 2;
	}
	.services-top__item::before {
		top: calc(-24 / 750 * 100vw);
	}
	.services-top__item:not(:first-child) {
		margin-top: calc(220 / 750 * 100vw);
		border-left: 0;
	}
	.services-top__item.-item01::before {
		width: calc(220 / 750 * 100vw);
		height: calc(320 / 750 * 100vw);
	}
	.services-top__item.-item02::before {
		width: calc(271 / 750 * 100vw);
		height: calc(307 / 750 * 100vw);
	}
	.services-top__item.-item03::before {
		width: calc(213 / 750 * 100vw);
		height: calc(262 / 750 * 100vw);
	}
	.services-top__item.-item03::after {
		opacity: .7;
		content: "";
		position: absolute;
		top: calc(-172 / 750 * 100vw);
		left: calc(-148 / 750 * 100vw);
		width: calc(351 / 750 * 100vw);
		height: calc(454 / 750 * 100vw);
		background: url(/assets/img/top/bg_foam_04.png) center center/contain no-repeat;
	}
	.services-top__item.-item04::before {
		width: calc(188 / 750 * 100vw);
		height: calc(176 / 750 * 100vw);
	}
}

/* corporate-top */
.corporate-top {
	position: relative;
	padding-top: 112px;
	padding-bottom: 28px;
}

.corporate-top.aos-animate::before {
	-webkit-animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
	animation: fadeUp 1.8s cubic-bezier(0, .55, .45, 1) 1.3s both;
}

.corporate-top.aos-animate::after {
	-webkit-animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 1s both;
	animation: fadeUp 2.3s cubic-bezier(0, .55, .45, 1) 1s both;
}

.corporate-top::before, .corporate-top::after {
	content: "";
	position: absolute;
	background: center center / contain no-repeat;
}

.corporate-top::before {
	top: 652px;
	left: -392px;
	width: 351px;
	height: 454px;
	background-image: url(/assets/img/top/bg_foam_04.png);
}

.corporate-top::after {
	top: 116px;
	right: -160px;
	width: 202px;
	height: 326px;
	background-image: url(/assets/img/top/bg_ic_03.png);
}

.corporate-top__contents {
	position: relative;
	z-index: 3;
	margin-top: 40px;
	padding: 64px 36px;
	background-color: #fff;
	border-radius: 200px;
}

.aos-animate .corporate-top__contents::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.6s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.6s both;
}

.corporate-top__contents::before, .corporate-top__contents::after {
	content: "";
	position: absolute;
}

.corporate-top__contents::before {
	right: 0;
	bottom: -28px;
	left: 0;
	z-index: -1;
	height: 784px;
	background: url(/assets/img/top/bg_box.svg) center bottom/100% auto no-repeat;
}

.corporate-top__contents::after {
	bottom: 0;
	right: -212px;
	width: 186px;
	height: 169px;
	background: url(/assets/img/top/bg_foam_06.png) center center/contain no-repeat;
}

.corporate-top__message {
	padding-bottom: 36px;
	border-bottom: 1px solid #ffcf31;
	color: #715d36;
	line-height: 2.143;
	text-align: center;
}

.aos-animate .corporate-top__message::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

.aos-animate .corporate-top__message::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.corporate-top__message::before, .corporate-top__message::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 100%;
}

.corporate-top__message::before {
	top: 4px;
	left: -188px;
	width: 136px;
	height: 136px;
	background-color: #ed9906;
}

.corporate-top__message::after {
	top: 160px;
	left: -76px;
	width: 64px;
	height: 64px;
	background-color: #fff;
}

.corporate-top__message p:not(:first-child) {
	margin-top: 2em;
}

.corporate-top__message strong {
	font-size: 1.8rem;
}

.corporate-top__message-name {
	margin-top: 8px;
	padding-right: 36px;
	padding-left: 36px;
	letter-spacing: .5em;
	text-align: right;
}

.corporate-top__message-name picture {
	display: inline;
	vertical-align: 2px;
}

.corporate-top__corporate {
	max-width: 640px;
	margin: 40px auto 0;
}

.aos-animate .corporate-top__corporate::before {
	-webkit-animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
	animation: fadeUp 2.5s cubic-bezier(0, .55, .45, 1) .8s both;
}

.aos-animate .corporate-top__corporate::after {
	-webkit-animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
	animation: fadeUp 2s cubic-bezier(0, .55, .45, 1) 1.2s both;
}

.corporate-top__corporate::before, .corporate-top__corporate::after {
	content: "";
	position: absolute;
	z-index: -1;
}

.corporate-top__corporate::before {
	top: 504px;
	right: -116px;
	width: 36px;
	height: 36px;
	border-radius: 100%;
	background-color: #fff;
}

.corporate-top__corporate::after {
	top: 744px;
	right: -264px;
	width: 140px;
	height: 127px;
	background: url(/assets/img/top/bg_foam_05.png) center center/contain no-repeat;
}

.corporate-top__name {
	color: #715d36;
	font-weight: 700;
}

.corporate-top__table {
	width: 100%;
	margin-top: 12px;
}

.corporate-top__table th, .corporate-top__table td {
	height: 32px;
	color: #715d36;
	line-height: 2.143;
}

.corporate-top__table th {
	width: 4em;
	text-align: left;
}

.corporate-top__map {
	overflow: hidden;
	position: relative;
	max-width: 840px;
	margin: 40px auto 0;
	border-radius: 80px;
}

.corporate-top__map::before {
	content: "";
	display: block;
	padding-top: 56.334%;
}

.corporate-top__map iframe, .corporate-top__map object, .corporate-top__map embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media only screen and (max-width: 767px) {
	.corporate-top {
		padding-top: calc(128 / 750 * 100vw);
	}
	.corporate-top.aos-animate::before {
		-webkit-animation: none;
		animation: none;
	}
	.corporate-top::before {
		opacity: .7;
		top: calc(744 / 750 * 100vw);
		left: calc(-232 / 750 * 100vw);
		width: calc(351 / 750 * 100vw);
		height: calc(454 / 750 * 100vw);
	}
	.corporate-top::after {
		top: calc(120 / 750 * 100vw);
		right: calc(-80 / 750 * 100vw);
		width: calc(190 / 750 * 100vw);
		height: calc(308 / 750 * 100vw);
	}
	.corporate-top__contents {
		margin-top: calc(56 / 750 * 100vw);
		padding: calc(68 / 750 * 100vw) calc(40 / 750 * 100vw) calc(84 / 750 * 100vw);
		border-radius: calc(80 / 750 * 100vw);
	}
	.corporate-top__message {
		padding-bottom: calc(54 / 750 * 100vw);
		text-align: left;
	}
	.aos-animate .corporate-top__message::before, .aos-animate .corporate-top__message::after {
		-webkit-animation: none;
		animation: none;
	}
	.corporate-top__message::before, .corporate-top__message::after {
		opacity: .7;
		width: calc(351 / 750 * 100vw);
		height: calc(454 / 750 * 100vw);
		border-radius: 0;
		background: url(/assets/img/top/bg_foam_04.png) center center/contain no-repeat;
	}
	.corporate-top__message::before {
		top: calc(1108 / 750 * 100vw);
		right: calc(-164 / 750 * 100vw);
		left: auto;
	}
	.corporate-top__message::after {
		top: calc(1624 / 750 * 100vw);
		left: calc(-164 / 750 * 100vw);
	}
	.corporate-top__message p:not(:first-child) {
		margin-top: 1em;
	}
	.corporate-top__message strong {
		font-size: calc(32 / 750 * 100vw);
	}
	.corporate-top__message-name {
		margin-top: 1em;
		padding-right: 0;
		padding-left: 0;
	}
	.corporate-top__message-name picture {
		vertical-align: calc(4 / 750 * 100vw);
	}
	.corporate-top__message-name img {
		width: calc(183 / 750 * 100vw);
	}
	.corporate-top__corporate {
		max-width: none;
		margin-top: calc(56 / 750 * 100vw);
	}
	.corporate-top__name {
		font-size: calc(32 / 750 * 100vw);
	}
	.corporate-top__table {
		display: block;
		margin-top: calc(20 / 750 * 100vw);
	}
	.corporate-top__table tbody, .corporate-top__table tr {
		display: block;
	}
	.corporate-top__table th, .corporate-top__table td {
		display: block;
		height: auto;
		padding-top: calc(24 / 750 * 100vw);
		line-height: 1.5;
	}
	.corporate-top__table th {
		float: left;
		clear: left;
	}
	.corporate-top__table td {
		overflow: hidden;
	}
	.corporate-top__map {
		margin-top: calc(48 / 750 * 100vw);
		border-radius: calc(40 / 750 * 100vw);
	}
}

/* --------------------------------------------------
 NEWS
 -------------------------------------------------- */
.tab__nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.tab__nav li {
	font-size: 1.4rem;
	letter-spacing: .1em;
}

.tab__nav li:not(:first-child) {
	margin-left: 40px;
}

.tab__nav li button {
	cursor: pointer;
	outline: none;
	-webkit-transition: .3s;
	transition: .3s;
}

.tab__nav li button:hover, .tab__nav li button[aria-expanded="true"] {
	color: #ed9906;
}

.tab__nav li button[aria-expanded="true"] {
	pointer-events: none;
}

.tab__select {
	display: none;
}

.tab__contents {
	margin-top: 72px;
}

.tab__panel {
	display: none;
	-webkit-transition: .3s;
	transition: .3s;
}

.tab__panel[aria-hidden="false"] {
	display: block;
	-webkit-animation: fadeIn .7s ease-in-out;
	animation: fadeIn .7s ease-in-out;
}

@media only screen and (max-width: 767px) {
	.tab__nav {
		display: none;
	}
	.tab__select {
		display: block;
		position: relative;
		text-align: right;
	}
	.tab__select::before {
		content: "";
		position: absolute;
		top: calc(50% + calc(4 / 750 * 100vw));
		right: calc(20 / 750 * 100vw);
		border-top: calc(16 / 750 * 100vw) solid #ccc;
		border-right: calc(10 / 750 * 100vw) solid transparent;
		border-left: calc(10 / 750 * 100vw) solid transparent;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.tab__select select {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: calc(260 / 750 * 100vw);
		height: calc(76 / 750 * 100vw);
		padding-left: calc(20 / 750 * 100vw);
		padding-right: calc(60 / 750 * 100vw);
		border: 1px solid #ccc;
		border-radius: calc(8 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
		letter-spacing: .1em;
		text-align: left;
	}
	.tab__contents {
		margin-top: calc(40 / 750 * 100vw);
	}
}

/* area-detail */
.area-detail {
	letter-spacing: .1em;
}

.area-detail__date {
	margin-bottom: 20px;
	color: #999;
	font-size: 1.7rem;
}

.area-detail__headline {
	font-size: 1.8rem;
	line-height: 1.778;
}

.area-detail__contents {
	margin-top: 28px;
}

.area-detail__text {
	line-height: 2.286;
}

@media only screen and (max-width: 767px) {
	.area-detail__date {
		margin-bottom: calc(12 / 750 * 100vw);
		font-size: calc(28 / 750 * 100vw);
	}
	.area-detail__headline {
		font-size: calc(36 / 750 * 100vw);
		line-height: 1.667;
	}
	.area-detail__contents {
		margin-top: calc(32 / 750 * 100vw);
	}
}

/* paging */
.paging {
	position: relative;
	max-width: 525px;
	margin: 48px auto 0;
	text-align: center;
}

.paging__list {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.paging__list a {
	position: relative;
}

.paging__list a::before {
	content: "";
	position: absolute;
	top: calc(50% + 1px);
	width: 6px;
	height: 10px;
	background: url(/assets/img/common/ic_arrow_accent.svg) center center/contain no-repeat;
	-webkit-transition: .3s;
	transition: .3s;
}

.paging__prev a {
	padding-left: 16px;
}

.paging__prev a::before {
	left: -3px;
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}

.paging__prev a:hover::before {
	-webkit-transform: translateX(-3px) translateY(-50%) rotate(180deg);
	transform: translateX(-3px) translateY(-50%) rotate(180deg);
}

.paging__next a {
	padding-right: 16px;
}

.paging__next a::before {
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.paging__next a:hover::before {
	-webkit-transform: translateX(3px) translateY(-50%);
	transform: translateX(3px) translateY(-50%);
}

.paging__back {
	display: inline-block;
	position: relative;
	z-index: 3;
}

@media only screen and (max-width: 767px) {
	.paging {
		margin-top: calc(72 / 750 * 100vw);
	}
	.paging__list {
		position: static;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.paging__list li:not(:first-child) {
		margin-left: calc(144 / 750 * 100vw);
	}
	.paging__list a::before {
		width: calc(12 / 750 * 100vw);
		height: calc(20 / 750 * 100vw);
	}
	.paging__prev a {
		padding-left: calc(36 / 750 * 100vw);
	}
	.paging__next a {
		padding-right: calc(36 / 750 * 100vw);
	}
	.paging__back {
		display: block;
		margin-top: calc(48 / 750 * 100vw);
		padding-top: calc(52 / 750 * 100vw);
		border-top: 1px solid #e5e5e5;
	}
}

/* --------------------------------------------------
 NEWS
 -------------------------------------------------- */
.area-privacy {
	letter-spacing: .05em;
	line-height: 2;
}

.area-privacy__headline {
	margin-bottom: 32px;
	font-size: 2rem;
	letter-spacing: .1em;
	line-height: 1.334;
}

.area-privacy__headline:not(:first-child) {
	margin-top: 40px;
}

.area-privacy__text + .area-privacy__text {
	margin-top: 20px;
}

.area-privacy__list {
	margin-top: 20px;
	counter-reset: count;
}

.area-privacy__list li {
	padding-left: 1.4em;
	counter-increment: count;
	text-indent: -1.4em;
}

.area-privacy__list li::before {
	content: counter(count) ".";
	margin-right: .5em;
}

.area-privacy__headline-sub {
	margin-top: 28px;
	line-height: 1.5;
}

.area-privacy__sign {
	margin-top: 24px;
	text-align: right;
}

@media only screen and (max-width: 767px) {
	.area-privacy__headline {
		margin-bottom: calc(32 / 750 * 100vw);
		font-size: calc(32 / 750 * 100vw);
	}
	.area-privacy__headline:not(:first-child) {
		margin-top: calc(56 / 750 * 100vw);
	}
	.area-privacy__text + .area-privacy__text {
		margin-top: calc(32 / 750 * 100vw);
	}
	.area-privacy__list {
		margin-top: calc(32 / 750 * 100vw);
	}
	.area-privacy__headline-sub {
		margin-top: calc(40 / 750 * 100vw);
	}
	.area-privacy__sign {
		margin-top: calc(36 / 750 * 100vw);
	}
}