@charset "UTF-8";

:root {
	--family-base: 'gilroymedium', 'Microsoft YaHei', 'Hiragino Sans GB', sans-serif, Arial;
	--line-height--root: 1.7;
	--z-index-overlay1: 1;
	--z-index-overlay2: 2;
	--z-index-overlay3: 3;
	--z-index-footer: 4;
	--z-index-footer-pagetop: 5;
	--z-index-float-menu: 6;
	--z-index-header-overlay: 7;
	--z-index-header-contents: 8;
	--z-index-header: 9;
	--z-index-popup-overlay: 10;
	--z-index-popup-contents: 11;
	--width-wx: 1200px;
	--width-pc: 960px;
	--width-tb: 768px;
	--width-sp: 480px;
	--width-scrollbar: 20px;
	--btn-shadow-pc: 0 .1rem .3rem .2rem rgba(0,0,0, .25);
	--btn-shadow-hover-pc: 0 .2rem .6rem .3rem rgba(0,0,0, .25);
	--btn-shadow-sp: 0 .05rem .15rem .1rem rgba(0,0,0, .25);
	--btn-shadow-hover-sp: 0 .1rem .3rem .15rem rgba(0,0,0, .25);
	--frame-shadow-pc: 0 .1rem .3rem .2rem rgba(0,0,0, .15);
	--frame-shadow-hover-pc: 0 .2rem .6rem .3rem rgba(0,0,0, .15);
	--frame-shadow-sp: 0 .05rem .15rem .1rem rgba(0,0,0, .15);
	--frame-shadow-hover-sp: 0 .1rem .3rem .15rem rgba(0,0,0, .15)
}

:root {
	font-family: var(--family-base);
	font-weight: 500;
	font-display: swap;
	-webkit-font-feature-settings: "pkna";
	font-feature-settings: "pkna";
	line-height: var(--line-height--root);
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%
}

.site-area-header__sns-nav p img {
	display: block;
	height: 1.1rem;
	width: auto;
	margin-left:-5px
}

@media screen and (min-width:788px) {
	:root {
		font-size: .625rem
	}
}

@media screen and (max-width:787px) {
	:root {
		font-size: .625rem
	}
}

@media only screen and (max-width:787px) and (min-width:321px) {
	:root {
		font-size: calc(.625rem + ((1vw - 3.21px) * 3.132))
	}
}

::after:focus:not(:focus-visible),::before:focus:not(:focus-visible),:focus:not(:focus-visible) {
	outline: 0
}

*,::after,::before {
	box-sizing: border-box
}

body,html {
	height: 100%
}

html {
	font-size: 62.5%;
	font-size: calc(10em / 16)
}

body {
	margin: 0;
	-webkit-text-size-adjust: 100%;
	color: #333;
	
}

@media screen and (min-width:788px) {
	body {
		font-size: 1.6rem
	}
}

@media screen and (max-width:787px) {
	body {
		font-size: 1.4rem
	}
}

dl,h1,h2,h3,h4,h5,h6,ol,p,pre,table,ul {
	margin: 0;
	padding: 0
}

dd,dl,dt {
	margin: 0
}

dd,dt,h1,h2,h3,h4,h5,h6,li,p,pre,td,th {
	-ms-line-break: strict;
	line-break: strict;
	word-break: break-word
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top
}

table {
	border-spacing: 0;
	border-collapse: collapse
}

table td,table th {
	padding: 0
}

button {
	width: auto;
	padding: 0;
	margin: 0;
	border: none;
	background: 0 0;
	font-family: var(--family-base);
	overflow: visible;
	cursor: pointer;
	color: #404040
}

button::-moz-focus-inner {
	padding: 0;
	border: none
}

.firefox button:focus-visible {
	outline: dotted 1px #000
}

input[type=password],input[type=text],select,textarea {
	border-radius: 0
}

input::-ms-clear {
	visibility: hidden
}

input::-ms-reveal {
	visibility: hidden
}

input,select,textarea {
	font-family: var(--family-base);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}

i[class^=svg--] {
	position: relative;
	display: inline-block;
	vertical-align: middle
}

@media screen and (min-width:788px) {
	i[class^=svg--] {
		width: 1.8rem;
		height: 1.8rem
	}
}

@media screen and (max-width:787px) {
	i[class^=svg--] {
		width: 1.4rem;
		height: 1.4rem
	}
}

i[class^=svg--] svg {
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translate(50%,-50%);
	display: inherit;
	width: inherit;
	height: inherit;
	fill: currentColor
}

i[class^=svg--][class^=svg--chevron] svg {
	fill: #ff607e
}

@media screen and (min-width:788px) {
	i[class^=svg--].svg--open-in-new {
		width: 2rem;
		height: 2rem
	}
}

@media screen and (max-width:787px) {
	i[class^=svg--].svg--open-in-new {
		width: 1.6rem;
		height: 1.6rem
	}
}

i[class^=svg--].svg--open-in-new svg {
	fill: #ff607e
}

@media screen and (min-width:788px) {
	i[class^=svg--].svg--open-in-contact,i[class^=svg--].svg--open-in-excel,i[class^=svg--].svg--open-in-pdf,i[class^=svg--].svg--open-in-ppt,i[class^=svg--].svg--open-in-word {
		width: 2.2rem;
		height: 2.2rem
	}
}

@media screen and (max-width:787px) {
	i[class^=svg--].svg--open-in-contact,i[class^=svg--].svg--open-in-excel,i[class^=svg--].svg--open-in-pdf,i[class^=svg--].svg--open-in-ppt,i[class^=svg--].svg--open-in-word {
		width: 1.8rem;
		height: 1.8rem
	}
}

i[class^=svg--].svg--open-in-excel svg {
	fill: #206e45
}

i[class^=svg--].svg--open-in-word svg {
	fill: #2b5590
}

i[class^=svg--].svg--open-in-ppt svg {
	fill: #c84526
}[data-icon-type] {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-weight: 700;
	font-style: normal;
	line-height: 1
}

@media screen and (min-width:788px) {
[	data-icon-type] {
		min-width: 7.5rem;
		border-radius: .4rem;
		padding: 1rem 1.5rem;
		font-size: 1.4rem
	}
}

@media screen and (max-width:787px) {
[	data-icon-type] {
		padding: .65rem .8rem;
		border-radius: .4rem;
		font-size: 1rem
	}
}[data-icon-type][data-icon-type=event-open] {
	color: #fff;
	background: #ff607e
}[data-icon-type][data-icon-type=event-close] {
	color: #fff;
	background: #8f8f8f
}[data-badge-type=taisho] {
	display: inline-block;
	vertical-align: top;
	background: url(../img/contents/badge_taisho.png) 0 0 no-repeat;
	background-size: cover;
	flex-shrink: 0
}

@media screen and (min-width:788px) {
[	data-badge-type=taisho] {
		width: 5rem;
		height: 5rem
	}
}

@media screen and (max-width:787px) {
[	data-badge-type=taisho] {
		width: 4rem;
		height: 4rem
	}
}[data-badge-type=taisho] span {
	position: absolute;
	white-space: nowrap;
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: none;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	margin: -1px
}

.el-loading-icon__holder {
	position: relative
}

@media screen and (min-width:788px) {
	.el-loading-icon__holder {
		width: 8rem;
		height: 8rem
	}
}

@media screen and (max-width:787px) {
	.el-loading-icon__holder {
		width: 6rem;
		height: 6rem
	}
}

.el-loading-icon__item {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0
}

.el-loading-icon__item::before {
	content: '';
	display: block;
	margin: 0 auto;
	width: 15%;
	height: 15%;
	background-color: #333;
	border-radius: 100%;
	-webkit-animation: loading-icon-fade-delay 1.2s infinite ease-in-out both;
	animation: loading-icon-fade-delay 1.2s infinite ease-in-out both
}

.el-loading-icon__item[data-object="2"] {
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg)
}

.el-loading-icon__item[data-object="2"]::before {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s
}

.el-loading-icon__item[data-object="3"] {
	-webkit-transform: rotate(60deg);
	-ms-transform: rotate(60deg);
	transform: rotate(60deg)
}

.el-loading-icon__item[data-object="3"]::before {
	-webkit-animation-delay: -1s;
	animation-delay: -1s
}

.el-loading-icon__item[data-object="4"] {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg)
}

.el-loading-icon__item[data-object="4"]::before {
	-webkit-animation-delay: -.9s;
	animation-delay: -.9s
}

.el-loading-icon__item[data-object="5"] {
	-webkit-transform: rotate(120deg);
	-ms-transform: rotate(120deg);
	transform: rotate(120deg)
}

.el-loading-icon__item[data-object="5"]::before {
	-webkit-animation-delay: -.8s;
	animation-delay: -.8s
}

.el-loading-icon__item[data-object="6"] {
	-webkit-transform: rotate(150deg);
	-ms-transform: rotate(150deg);
	transform: rotate(150deg)
}

.el-loading-icon__item[data-object="6"]::before {
	-webkit-animation-delay: -.7s;
	animation-delay: -.7s
}

.el-loading-icon__item[data-object="7"] {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg)
}

.el-loading-icon__item[data-object="7"]::before {
	-webkit-animation-delay: -.6s;
	animation-delay: -.6s
}

.el-loading-icon__item[data-object="8"] {
	-webkit-transform: rotate(210deg);
	-ms-transform: rotate(210deg);
	transform: rotate(210deg)
}

.el-loading-icon__item[data-object="8"]::before {
	-webkit-animation-delay: -.5s;
	animation-delay: -.5s
}

.el-loading-icon__item[data-object="9"] {
	-webkit-transform: rotate(240deg);
	-ms-transform: rotate(240deg);
	transform: rotate(240deg)
}

.el-loading-icon__item[data-object="9"]::before {
	-webkit-animation-delay: -.4s;
	animation-delay: -.4s
}

.el-loading-icon__item[data-object="10"] {
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg)
}

.el-loading-icon__item[data-object="10"]::before {
	-webkit-animation-delay: -.3s;
	animation-delay: -.3s
}

.el-loading-icon__item[data-object="11"] {
	-webkit-transform: rotate(300deg);
	-ms-transform: rotate(300deg);
	transform: rotate(300deg)
}

.el-loading-icon__item[data-object="11"]::before {
	-webkit-animation-delay: -.2s;
	animation-delay: -.2s
}

.el-loading-icon__item[data-object="12"] {
	-webkit-transform: rotate(330deg);
	-ms-transform: rotate(330deg);
	transform: rotate(330deg)
}

.el-loading-icon__item[data-object="12"]::before {
	-webkit-animation-delay: -.1s;
	animation-delay: -.1s
}

@-webkit-keyframes loading-icon-fade-delay {
	0%,100%,39% {
		opacity: 0
	}

	40% {
		opacity: 1
	}
}

@keyframes loading-icon-fade-delay {
	0%,100%,39% {
		opacity: 0
	}

	40% {
		opacity: 1
	}
}

body[data-active-fixed=true] {
	position: fixed;
	width: 100%;
	height: 100vh;
	overflow: hidden;
	overflow-y: scroll
}

#skip-main-content {
	position: absolute;
	white-space: nowrap;
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: none;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	margin: -1px
}

.site-area-header[data-active-float=true] .site-area-header__holder {
	position: fixed;
	top: 0;
	z-index: var(--z-index-header)
}

@media screen and (min-width:788px) {
	.site-area-header {
		height: 25rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header {
		height: 90px;
		transition: all .3s ease
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header {
		height: 24rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header {
		height: 23rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__holder {
		height: 7rem;
		padding-top: 1.5rem;
		background: #ff607e;
		box-shadow: 0 .8rem .8rem -.4rem rgba(0,0,0,.25)
	}
}

@media screen and (max-width:787px) {
	.site-area-header[data-pos-top=false] .site-area-header__holder {
		box-shadow: 0 .4rem .4rem -.2rem rgba(0,0,0,.25)
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header[data-pos-top=false] .site-area-header__holder {
		padding-top: 1.75rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__holder {
		padding-top: 2rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo {
		position: fixed;
		top: .75rem;
		left: 1.2rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo {
		height: 64px;
		padding: 6px 15px
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo>div::after {
		display: none
	}
}

@media screen and (max-width:787px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo>div::after {
		bottom: 1px
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo img {
		width: 9.8rem;
		-webkit-animation: header-logo-fade .3s ease-in-out both;
		animation: header-logo-fade .3s ease-in-out both
	}
}

@media screen and (max-width:787px) {
	.site-area-header[data-pos-top=false] .site-area-header__logo img {
		height: 50px
	}
}

@media screen and (max-width:787px) {
	.site-area-header[data-pos-top=false] .site-area-header__menu__container {
		height: calc(100% - 64px);
		margin-top: 64px
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__sns-nav {
		display: none
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__search-btn {
		top: .5rem;
		bottom: auto
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header[data-pos-top=false] .site-area-header__search-btn {
		top: .2rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__search-btn {
		top: 0
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__global-nav {
		margin-left: 10rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav {
		padding-top: 0;
		padding-bottom: 1.5rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav a span,.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav button span {
		width: 4rem;
		height: 4rem;
		border-radius: 1rem
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav a span,.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav button span {
		width: 3.25rem;
		height: 3.25rem;
		border-radius: .75rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav a span,.site-area-header[data-pos-top=false] .site-area-header__global-nav__nav button span {
		width: 2.75rem;
		height: 2.75rem;
		border-radius: .5rem
	}
}

.site-area-header__holder {
	width: 100%;
	background: url(../images/header-bg.jpg) 0 0 repeat-x #ff607e;
	background-size: auto 100%;
	z-index: var(--z-index-header)
}

@media screen and (min-width:788px) {
	.site-area-header__holder {
		height: 25rem;
		padding: 2.5rem 2rem 0;
		transition: all .3s ease
	}
}

@media screen and (max-width:787px) {
	.site-area-header__holder {
		transition: box-shadow .15s ease
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header__holder {
		height: 24rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header__holder {
		height: 23rem
	}
}

.site-area-header__container {
	position: relative;
	max-width: 1200px;
	margin: 0 auto
}

@media screen and (max-width:787px) {
	.site-area-header__container {
		transition: box-shadow .15s ease
	}
}

.site-area-header__logo {
	text-align: center
}

@media screen and (max-width:787px) {
	.site-area-header__logo {
		height: 90px;
		padding: 12px 15px;
		transition: all .3s ease
	}
}

.site-area-header__logo>div {
	position: relative
}

.site-area-header__logo>div::after {
	position: absolute;
	right: 50%;
	transform: translate(50%,0);
	display: block;
	content: "";
	width: 100%;
	background: url(../images/header-line.png) 0 0 repeat-x;
	background-size: auto 100%;
	mix-blend-mode: multiply;
	z-index: -1
}

@media screen and (min-width:788px) {
	.site-area-header__logo>div::after {
		bottom: 2.3rem;
		height: .9rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__logo>div::after {
		bottom: 7px;
		height: 5px;
		transition: all .3s ease
	}
}

.site-area-header__logo>div a {
	display: inline-block;
	vertical-align: top
}

@media screen and (max-width:787px) {
	.site-area-header__logo img {
		height: 67.25px;
		width: auto;
		transition: all .3s ease
	}
}

.site-area-header__menu__button {
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translate(0,-50%);
	padding: 5px;
	background: #aa4054;
	border: .1rem solid rgba(0,0,0,.1)
}

@media screen and (min-width:788px) {
	.site-area-header__menu__button {
		display: none!important
	}
}

.site-area-header__menu__button>button {
	position: relative;
	display: block;
	width: 20px;
	height: 18px;
	min-height: 18px
}

.site-area-header__menu__button>button>span::before {
	position: absolute;
	top: 0;
	display: block;
	content: " ";
	width: 100%;
	height: 2px;
	background: #fff;
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

.site-area-header__menu__button>button>span::after {
	position: absolute;
	bottom: 0;
	display: block;
	content: " ";
	width: 100%;
	height: 2px;
	background: #fff;
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

.site-area-header__menu__button>button>span>span {
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 100%;
	height: 2px;
	background: #fff;
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

.site-area-header__menu__button>button>span>span>span {
	display: none
}

.site-area-header__menu__button>button[data-active=true]>span::before {
	top: 9px;
	transform: rotate(45deg);
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

.site-area-header__menu__button>button[data-active=true]>span::after {
	width: 100%;
	bottom: 7.5px;
	transform: rotate(-45deg);
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

.site-area-header__menu__button>button[data-active=true]>span>span {
	display: none;
	transition: all .5s cubic-bezier(.25,.8,.25,1)
}

@media screen and (max-width:787px) {
	.site-area-header__menu__container {
		overflow: hidden;
		visibility: hidden;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: calc(100% - 90px);
		margin-top: 90px;
		opacity: 0;
		background: 0 0;
		box-shadow: 0 .4rem .4rem -.2rem rgba(0,0,0,.25);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		transition: visibility .15s ease,opacity .15s ease
	}
}

@media screen and (max-width:787px) {
	html.ios15 .site-area-header__menu__container,html.safari14 .site-area-header__menu__container {
		transition: none
	}
}

@media screen and (max-width:787px) {
	.site-area-header__menu__container[data-active-sp=true] {
		visibility: visible;
		opacity: 1;
		background: #ff607e;
		transition: visibility .25s ease,opacity .25s ease,background-color .2s ease
	}
}

@media screen and (max-width:787px) {
	html.ios15 .site-area-header__menu__container[data-active-sp=true],html.safari14 .site-area-header__menu__container[data-active-sp=true] {
		transition: none
	}
}

@media screen and (max-width:787px) {
	.site-area-header__menu__container>div {
		border-top: 1px solid #bc2e2e;
		overscroll-behavior: contain
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav {
		position: absolute;
		top: 3rem;
		right: 0
	}
	.site-area-header__sns-nav p img {
	display: block;
	height: 1.1rem;
	width: auto;
	margin-left:35px
}

}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav {
		padding: 15px 1.5rem
	}
}

.site-area-header__sns-nav p {
	margin-bottom: 1.3rem
}


.site-area-header__sns-nav ul {
	display: flex;
	align-items: center;
	list-style: none
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul {
		justify-content: space-between
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li {
		margin-left: 3.5rem
	}
}

.site-area-header__sns-nav ul li a {
	display: flex;
	align-items: center
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__twitter img {
		width: 2.1rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__twitter img {
		width: 24px
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__insta img {
		width: 2.1rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__insta img {
		width: 22px
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__line img {
		width: 2.2rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__line img {
		width: 26px
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__youtube img {
		width: 2.6rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__youtube img {
		width: 30px
	}
}

@media screen and (min-width:788px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__tiktok img {
		width: 1.7rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__sns-nav ul li.site-area-header__sns-nav__tiktok img {
		width: 20px
	}
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav {
		max-width: 105rem;
		margin-right: 5rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav {
		background: #fff
	}
}

.site-area-header__global-nav__list {
	list-style: none
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__list {
		display: flex;
		justify-content: space-between
	}
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__item {
		margin-left: 1rem
	}
}

.site-area-header__global-nav__item:first-child {
	margin-left: 0
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__nav {
		padding-top: 2rem;
		padding-bottom: 2.5rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav {
		padding: 1.5rem 1.5rem 0
	}
	.site-area-header__global-nav__item:last-child{display:none}
}

.site-area-header__global-nav__nav a,.site-area-header__global-nav__nav button {
	font-weight: 700;
	text-decoration: none;
	transition: opacity .25s ease
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__nav a,.site-area-header__global-nav__nav button {
		display: flex;
		align-items: center;
		color: #fff
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a,.site-area-header__global-nav__nav button {
		position: relative;
		display: block;
		width: 100%;
		padding-bottom: 0rem;
		color: #333;
		pointer-events: none;
		cursor: default
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a::before,.site-area-header__global-nav__nav button::before {
		position: absolute;
		bottom: 0;
		left: 0;
		display: block;
		content: "";
		width: 8rem;
		height: .2rem;
		background-color: #ff607e;
		z-index: var(--z-index-overlay1)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a::after,.site-area-header__global-nav__nav button::after {
		position: absolute;
		bottom: 0;
		left: 0;
		display: block;
		content: "";
		width: 100%;
		height: .2rem;
		background-color: #dde0e5
	}
}

.site-area-header__global-nav__nav a:hover,.site-area-header__global-nav__nav button:hover {
	text-decoration: none!important
}

@media screen and (min-width:788px) {
	html:not(.ipad):not(.iphone):not(.andoroid) .site-area-header__global-nav__nav a:hover,html:not(.ipad):not(.iphone):not(.andoroid) .site-area-header__global-nav__nav button:hover {
		opacity: .75;
		transition: opacity .25s ease
	}
}

.site-area-header__global-nav__nav a>span,.site-area-header__global-nav__nav button>span {
	display: block;
	background: #fff
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__nav a>span,.site-area-header__global-nav__nav button>span {
		width: 5rem;
		height: 5rem;
		border-radius: 1.5rem;
		transition: all .3s ease
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a>span,.site-area-header__global-nav__nav button>span {
		display: none;
		width: 3rem;
		height: 3rem;
		border-radius: .5rem
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header__global-nav__nav a>span,.site-area-header__global-nav__nav button>span {
		width: 4rem;
		height: 4rem;
		border-radius: 1rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header__global-nav__nav a>span,.site-area-header__global-nav__nav button>span {
		width: 3.25rem;
		height: 3.25rem;
		border-radius: .75rem
	}
}

.site-area-header__global-nav__nav a p,.site-area-header__global-nav__nav button p {
	text-align: left;
	line-height: 1.8
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__nav a p,.site-area-header__global-nav__nav button p {
		padding-left: 1rem;
		font-size: 1.3rem
	}
	.site-area-header__global-nav__nav a p:hover {
	color:#000000
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a p,.site-area-header__global-nav__nav button p {
		font-size: 1.8rem
	}
}

@media only screen and (max-width:1100px) and (min-width:1001px) {
	.site-area-header__global-nav__nav a p,.site-area-header__global-nav__nav button p {
		font-size: 1.2rem
	}
}

@media only screen and (max-width:1000px) and (min-width:788px) {
	.site-area-header__global-nav__nav a p,.site-area-header__global-nav__nav button p {
		font-size: 1.1rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__nav a p>span,.site-area-header__global-nav__nav button p>span {
		display: none
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__nav a p>span,.site-area-header__global-nav__nav button p>span {
		display: none
	}
}

.site-area-header__global-nav__mega-menu {
	overflow: hidden
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu {
		position: absolute;
		top: 100%;
		right: 50%;
		transform: translate(50%,0);
		width: 100vw;
		background: #fff;
		visibility: visible;
		opacity: 1;
		transition: all .3s ease;
		box-shadow: 0 .8rem .8rem -.4rem rgba(0,0,0,.15)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu {
		padding: 1.5rem
	}
}

@media screen and (min-width:788px) {
	.safari .site-area-header__global-nav__mega-menu {
		width: 100vw
	}
}

@media screen and (min-width:788px) {
	.safari .site-area-header__global-nav__mega-menu {
		transition: none
	}
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu[aria-hidden=true] {
		visibility: hidden;
		opacity: 0;
		overflow: hidden;
		transition: all .3s ease
	}
}

@media screen and (min-width:788px) {
	.safari .site-area-header__global-nav__mega-menu[aria-hidden=true] {
		transition: none
	}
}

.site-area-header__global-nav__mega-menu>div {
	max-width: calc(var(--width-wx) + 4rem);
	margin: 0 auto
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu>div {
		display: flex;
		justify-content: center;
		padding: 2rem
	}
}

.site-area-header__global-nav__mega-menu>div>div {
	display: inline-block;
	vertical-align: top
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul+ul {
		margin-left: 4rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul+ul {
		margin-top: 2rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=card] {
	display: flex;
	flex-wrap: wrap;
	list-style: none
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] {
		margin-top: -2rem;
		margin-left: -2rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] {
		margin-top: -1rem;
		margin-left: -1rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=card] li {
	border-radius: .4rem;
	overflow: hidden
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li {
		width: 15.4rem;
		margin-top: 2rem;
		margin-left: 2rem;
		box-shadow: 0 .1rem .3rem .2rem rgba(0,0,0,.15)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li {
		width: calc(50% - 1rem);
		margin-top: 1rem;
		margin-left: 1rem;
		box-shadow: 0 .05rem .2rem .15rem rgba(0,0,0,.15)
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=card] li a {
	display: block;
	height: 100%;
	color: #333;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.3
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li a {
		font-size: 1.4rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li a {
		font-size: 1.1rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=card] li a:hover {
	text-decoration: none!important
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li a img {
		width: 100%
	}
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li a p {
		padding: 1rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=card] li a p {
		padding: .75rem;
		margin-top: .3rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=link] {
	list-style: none
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li {
		margin-top: 1rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li {
		margin-top: .75rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=link] li:first-child {
	margin-top: 0
}

.site-area-header__global-nav__mega-menu ul[data-type=link] li a {
	display: inline-block;
	vertical-align: top;
	position: relative;
	color: #333;
	text-decoration: none
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li a {
		padding-right: 3rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li a {
		padding-right: 2.25rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=link] li a p {
	font-weight: 700
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li a p {
		font-size: 1.8rem
	}
}

.site-area-header__global-nav__mega-menu ul[data-type=link] li a i {
	position: absolute;
	right: 0
}

@media screen and (min-width:788px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li a i {
		top: .6rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__global-nav__mega-menu ul[data-type=link] li a i {
		top: .45rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search-btn {
		position: absolute;
		background: #aa4054;
		border: .1rem solid rgba(0,0,0,.1)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search-btn {
		display: none
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search-btn[data-active-pc=true] {
		opacity: .7
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search-btn {
		right: 0;
		bottom: 3.5rem;
		width: 3rem;
		height: 3rem;
		border-radius: 1rem;
		transition: all .3s ease
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search {
		visibility: visible;
		opacity: 1;
		transition: all .3s ease
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search {
		background: #fff
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search[data-active-pc=false] {
		visibility: hidden;
		opacity: 0;
		overflow: hidden;
		transition: all .3s ease
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__container {
		position: absolute;
		top: 100%;
		right: 50%;
		transform: translate(50%,0);
		width: 100vw;
		padding: 2rem;
		background: #fff;
		box-shadow: 0 .8rem .8rem -.4rem rgba(0,0,0,.15)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__container {
		padding: 1.5rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__container>div {
		display: flex;
		max-width: 1200px;
		margin: 0 auto
	}
}

.site-area-header__search__btn ul {
	list-style: none
}

@media screen and (min-width:788px) {
	.site-area-header__search__btn ul {
		display: flex;
		margin-left: -1rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__btn ul li {
		margin-left: 1rem;
		min-width: 20.8rem;
		max-width: 22.8rem;
		width: 100%
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__btn ul li {
		margin-top: .75rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__btn ul li:first-child {
		margin-top: 0
	}
}

.site-area-header__search__btn a {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 100%;
	background: #ff607e;
	border: 1px solid transparent;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	transition: background-color .25s ease,box-shadow .25s cubic-bezier(.25,.8,.25,1)
}

@media screen and (min-width:788px) {
	.site-area-header__search__btn a {
		padding: 1.3rem 3rem;
		font-size: 1.8rem;
		border-radius: .6rem;
		box-shadow: 0 .2rem .4rem .3rem rgba(0,0,0,.15)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__btn a {
		padding: .75rem 2rem;
		font-size: 1.6rem;
		border-radius: .4rem;
		box-shadow: 0 .1rem .3rem .2rem rgba(0,0,0,.15)
	}
}

.site-area-header__search__btn a:hover {
	text-decoration: none!important
}

@media screen and (min-width:788px) {
	html:not(.ipad):not(.iphone):not(.andoroid) .site-area-header__search__btn a:hover {
		background: #aa4054;
		transition: background-color .25s ease,box-shadow .25s cubic-bezier(.25,.8,.25,1)
	}
}

.site-area-header__search__btn a i {
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translate(0,-50%)
}

@media screen and (min-width:788px) {
	.site-area-header__search__btn a i[class^=svg--chevron] {
		width: 1.8rem;
		height: 1.8rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__btn a i[class^=svg--chevron] {
		width: 1.2rem;
		height: 1.2rem
	}
}

.site-area-header__search__btn a i[class^=svg--chevron] svg {
	fill: #fff
}

@media screen and (min-width:788px) {
	.site-area-header__search__btn+.site-area-header__search__input {
		margin-left: 2rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__input {
		display: flex;
		width: 100%
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input {
		margin-top: 1.2rem
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__input__heading {
		display: none
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input__heading {
		margin-bottom: .5rem
	}
}

.site-area-header__search__input__heading p {
	font-weight: 700;
	font-size: 2rem
}

.site-area-header__search__input__inner {
	display: flex;
	width: 100%
}

@media screen and (min-width:788px) {
	.site-area-header__search__input__inner {
		border-radius: .6rem;
		box-shadow: 0 .1rem .3rem .2rem rgba(0,0,0,.15)
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input__inner {
		border-radius: .6rem;
		box-shadow: 0 .05rem .2rem .15rem rgba(0,0,0,.15)
	}
}

.site-area-header__search__input input {
	border: none;
	background: #fff;
	border-radius: .6rem 0 0 .6rem;
	font-size: 1.6rem;
	font-family: var(--family-base);
	font-weight: 500
}

@media screen and (min-width:788px) {
	.site-area-header__search__input input {
		width: calc(100% - 7.3rem);
		padding: 1.3rem 2.5rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input input {
		width: 80%;
		padding: 1rem 2rem
	}
}

.site-area-header__search__input button {
	background: #ff607e;
	border-radius: 0 .6rem .6rem 0;
	transition: background-color .25s ease
}

@media screen and (min-width:788px) {
	.site-area-header__search__input button {
		width: 7.3rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input button {
		width: 20%
	}
}

@media screen and (min-width:788px) {
	html:not(.ipad):not(.iphone):not(.andoroid) .site-area-header__search__input button:hover {
		background: #aa4054;
		transition: background-color .25s ease
	}
}

@media screen and (min-width:788px) {
	.site-area-header__search__input button i {
		width: 2.2rem;
		height: 2.2rem
	}
}

@media screen and (max-width:787px) {
	.site-area-header__search__input button i {
		width: 2rem;
		height: 2rem
	}
}

.site-area-header__search__input button i svg {
	fill: #fff
}

@-webkit-keyframes header-logo-fade {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@keyframes header-logo-fade {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

.site-area-footer {
	position: relative;
	background: #000
}

.site-area-footer__holder {
	margin: 0 auto
}

@media screen and (min-width:788px) {
	.site-area-footer__holder {
		max-width: calc(var(--width-wx) + 8rem);
		padding-left: 4rem;
		padding-right: 4rem
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__holder {
		padding-left: 1.5rem;
		padding-right: 1.5rem
	}
}

@media screen and (min-width:788px) {
	.site-area-footer__container {
		padding: 4rem 0
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__container {
		padding: 3rem 0 2rem
	}
}

@media screen and (min-width:788px) {
	.site-area-footer__divide__holder {
		display: flex;
		justify-content: space-between
	}
}

@media screen and (min-width:788px) {
	.site-area-footer__divide__item {
		display: flex
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__support-nav {
		margin-bottom: 2rem
	}
}

.site-area-footer__support-nav>ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none
}

@media screen and (min-width:788px) {
	.site-area-footer__support-nav>ul {
		margin-top: -1rem
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__support-nav>ul {
		margin-top: -.75rem
	}
}

@media screen and (min-width:788px) {
	.site-area-footer__support-nav>ul>li {
		line-height: 1.5;
		margin-top: 1rem;
		margin-left: 2.5rem
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__support-nav>ul>li {
		width: 50%;
		margin-top: .75rem;
		line-height: 1.3
	}
}

@media screen and (min-width:788px) {
	.site-area-footer__support-nav>ul>li:first-child {
		margin-left: 0
	}
}

.site-area-footer__support-nav>ul>li>a {
	color: #fff;
	text-decoration: none
}

.site-area-footer__support-nav>ul>li>a:hover {
	text-decoration: none!important
}

@media screen and (min-width:788px) {
	.site-area-footer__support-nav>ul>li>a {
		font-weight: 500;
		font-size: 1.6rem
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__support-nav>ul>li>a {
		font-weight: 500;
		font-size: 1.2rem
	}
}

.site-area-footer__copyright {
	display: block;
	color: #757575
}

@media screen and (min-width:788px) {
	.site-area-footer__copyright {
		font-weight: 500;
		font-size: 1.4rem
	}
}

@media screen and (max-width:787px) {
	.site-area-footer__copyright {
		text-align: center;
		font-weight: 500;
		font-size: 1.1rem
	}
}

#site-pagetop {
	position: fixed;
	bottom: -6rem;
	right: 1rem;
	transition: all .25s ease-in-out;
	z-index: var(--z-index-footer-pagetop)
}

#site-pagetop p a {
	position: relative;
	display: block;
	border-radius: 50%;
	opacity: 1;
	background: #dfdfdf;
	transition: opacity .25s ease-in-out
}

@media screen and (min-width:788px) {
	#site-pagetop p a {
		width: 5.6rem;
		height: 5.6rem
	}
}

@media screen and (max-width:787px) {
	#site-pagetop p a {
		width: 3.8rem;
		height: 3.8rem
	}
}

#site-pagetop p a:after {
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translate(50%,-50%);
	display: block;
	content: "";
	margin-top: -.25rem;
	transform: rotate(-45deg)
}

@media screen and (min-width:788px) {
	#site-pagetop p a:after {
		margin-right: -.65rem;
		width: 1.25rem;
		height: 1.25rem;
		border-top: solid .2rem #333;
		border-right: solid .2rem #333
	}
}

@media screen and (max-width:787px) {
	#site-pagetop p a:after {
		margin-right: -.575rem;
		width: 1rem;
		height: 1rem;
		border-top: solid .2rem #333;
		border-right: solid .2rem #333
	}
}

@media screen and (min-width:788px) {
	html:not(.ipad):not(.iphone):not(.andoroid) #site-pagetop p a:hover {
		opacity: .75;
		transition: opacity .25s ease-in-out
	}
}

#site-pagetop p a span {
	display: none
}

#site-pagetop[data-active=true] {
	transition: all .25s ease-in-out;
	bottom: 1rem!important
}

#site-pagetop[data-active=true][data-float-menu=true] {
	bottom: 4.5rem!important
}

#site-pagetop[data-stop=true] {
	position: absolute;
	bottom: auto;
	opacity: 1!important;
	transition: all .25s ease-in-out
}

@media screen and (min-width:788px) {
	#site-pagetop[data-stop=true] {
		top: -2.8rem
	}
}

@media screen and (max-width:787px) {
	#site-pagetop[data-stop=true] {
		top: -2.4rem
	}
}

@media screen and (max-width:787px) {
[	data-show-only=pc] {
		display: none!important
	}
}

@media screen and (min-width:788px) {
[	data-show-only=sp] {
		display: none!important
	}
}