@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
 -------------------------------------------------- */
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: 75%;
	-ms-overflow-style: -ms-autohiding-scrollbar;
}

@media only screen and (max-width: 767px) {
	html {
		font-size: 62.5%;
	}
}

body {
	color: #1a273e;
	font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic W3", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, system-ui, sans-serif;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: .025em;
	-webkit-text-size-adjust: 100%;
	text-align: justify;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}

body:lang(zh-Hant) {
	font-family: "Noto Sans TC", "PingFang TC", "Hiragino Sans CNS", "Microsoft JhengHei", sans-serif;
}

body:lang(ko) {
	font-family: "Noto Sans KR", "Noto Sans JP", "Apple SD Gothic Neo", Gulim, "Malgun Gothic", sans-serif;
}

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

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-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;
	}
}

/* loadAnimationText */
@-webkit-keyframes loadAnimationText {
	0% {
		color: transparent;
	}
	100% {
		color: #1a273e;
	}
}
@keyframes loadAnimationText {
	0% {
		color: transparent;
	}
	100% {
		color: #1a273e;
	}
}

/* loadAnimationTextBar */
@-webkit-keyframes loadAnimationTextBar {
	0% {
		visibility: visible;
		opacity: 1;
		right: 0;
		left: 100%;
	}
	40%, 55% {
		right: 0;
		left: 0;
	}
	100% {
		visibility: visible;
		opacity: 1;
		right: 100%;
		left: 0;
	}
}
@keyframes loadAnimationTextBar {
	0% {
		visibility: visible;
		opacity: 1;
		right: 0;
		left: 100%;
	}
	40%, 55% {
		right: 0;
		left: 0;
	}
	100% {
		visibility: visible;
		opacity: 1;
		right: 100%;
		left: 0;
	}
}

/* loadAnimationBG */
@-webkit-keyframes loadAnimationBG {
	0% {
		opacity: 0;
		border-radius: 0;
		-webkit-transform: translateY(-50%) scale(.3);
		transform: translateY(-50%) scale(.3);
	}
	40% {
		opacity: 1;
		-webkit-transform: translateY(-50%) scale(1.05);
		transform: translateY(-50%) scale(1.05);
	}
	100% {
		opacity: 1;
		border-radius: 100px;
		-webkit-transform: translateY(-50%) scale(1);
		transform: translateY(-50%) scale(1);
	}
}
@keyframes loadAnimationBG {
	0% {
		opacity: 0;
		border-radius: 0;
		-webkit-transform: translateY(-50%) scale(.3);
		transform: translateY(-50%) scale(.3);
	}
	40% {
		opacity: 1;
		-webkit-transform: translateY(-50%) scale(1.05);
		transform: translateY(-50%) scale(1.05);
	}
	100% {
		opacity: 1;
		border-radius: 100px;
		-webkit-transform: translateY(-50%) scale(1);
		transform: translateY(-50%) scale(1);
	}
}

@media only screen and (max-width: 767px) {
	@-webkit-keyframes loadAnimationBG {
		0% {
			opacity: 0;
			border-radius: 0;
			-webkit-transform: translateY(-50%) scale(.3);
			transform: translateY(-50%) scale(.3);
		}
		40% {
			opacity: 1;
			-webkit-transform: translateY(-50%) scale(1.05);
			transform: translateY(-50%) scale(1.05);
		}
		100% {
			opacity: 1;
			border-radius: 110px 0 0 110px;
			-webkit-transform: translateY(-50%) scale(1);
			transform: translateY(-50%) scale(1);
		}
	}
	@keyframes loadAnimationBG {
		0% {
			opacity: 0;
			border-radius: 0;
			-webkit-transform: translateY(-50%) scale(.3);
			transform: translateY(-50%) scale(.3);
		}
		40% {
			opacity: 1;
			-webkit-transform: translateY(-50%) scale(1.05);
			transform: translateY(-50%) scale(1.05);
		}
		100% {
			opacity: 1;
			border-radius: 110px 0 0 110px;
			-webkit-transform: translateY(-50%) scale(1);
			transform: translateY(-50%) scale(1);
		}
	}
}

/* loadAnimationExplosion */
@-webkit-keyframes loadAnimationExplosion {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%) scale(.01);
		transform: translate(-50%, -50%) scale(.01);
	}
	1% {
		opacity: 1;
		-webkit-transform: translate(-50%, -50%) scale(.01);
		transform: translate(-50%, -50%) scale(.01);
	}
	5% {
		border-width: 15px;
	}
	20% {
		border-width: 30px;
	}
	50% {
		border-width: 1;
		border-color: rgba(216, 110, 247, .7);
		-webkit-transform: translate(-50%, -50%) scale(1.1);
		transform: translate(-50%, -50%) scale(1.1);
	}
	50.1% {
		border-width: 0;
	}
	100% {
		border-width: 0;
		border-color: rgba(216, 110, 247, .7);
		-webkit-transform: translate(-50%, -50%) scale(1.1);
		transform: translate(-50%, -50%) scale(1.1);
	}
}
@keyframes loadAnimationExplosion {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%) scale(.01);
		transform: translate(-50%, -50%) scale(.01);
	}
	1% {
		opacity: 1;
		-webkit-transform: translate(-50%, -50%) scale(.01);
		transform: translate(-50%, -50%) scale(.01);
	}
	5% {
		border-width: 15px;
	}
	20% {
		border-width: 30px;
	}
	50% {
		border-width: 1;
		border-color: rgba(216, 110, 247, .7);
		-webkit-transform: translate(-50%, -50%) scale(1.1);
		transform: translate(-50%, -50%) scale(1.1);
	}
	50.1% {
		border-width: 0;
	}
	100% {
		border-width: 0;
		border-color: rgba(216, 110, 247, .7);
		-webkit-transform: translate(-50%, -50%) scale(1.1);
		transform: translate(-50%, -50%) scale(1.1);
	}
}

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

a:hover {
	text-decoration: none;
}

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

/* --------------------------------------------------
 06: Header Style
 -------------------------------------------------- */
.header {
	position: relative;
	z-index: 10;
	padding-top: 18px;
	padding-bottom: 15px;
	background: -webkit-gradient(linear, left top, left bottom, from(#ff8158), to(#f0395e)) no-repeat;
	background: linear-gradient(to bottom, #ff8158 0%, #f0395e 100%) no-repeat;
	background-size: auto 130px;
	-webkit-filter: drop-shadow(0 0 20px rgba(0, 0, 0, .16));
	filter: drop-shadow(0 0 20px rgba(0, 0, 0, .16));
}

.header::before, .header::after {
	content: "";
	position: absolute;
	bottom: 1px;
	z-index: -1;
	width: 92px;
	height: 27px;
	background: -webkit-gradient(linear, left top, left bottom, from(#f0395e), to(#ef335e));
	background: linear-gradient(to bottom, #f0395e 0%, #ef335e 100%);
	-webkit-transform: skew(30deg);
	transform: skew(30deg);
}

.header::before {
	left: calc(50% - 10px);
	-webkit-transform: skew(-30deg);
	transform: skew(-30deg);
}

.header::after {
	right: calc(50% - 10px);
	-webkit-transform: skew(30deg);
	transform: skew(30deg);
}

.header__logo {
	text-align: center;
}

.header__logo img {
	width: 135px;
	margin-right: 4px;
}

@media only screen and (max-width: 767px) {
	.header {
		padding-top: 6px;
		padding-bottom: 15px;
		background: -webkit-gradient(linear, left top, left bottom, from(#ff8158), to(#ef335e));
		background: linear-gradient(to bottom, #ff8158 0%, #ef335e 100%);
		-webkit-filter: none;
		filter: none;
	}
	.header::before, .header::after {
		content: none;
	}
}

/* --------------------------------------------------
 07: Contents Style
-------------------------------------------------- */
main {
	position: relative;
}

main::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	max-width: 816px;
	height: 27px;
	margin-right: auto;
	margin-left: auto;
	background-color: #fff;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.contents {
	overflow: hidden;
}

/* --------------------------------------------------
 08: Footer Style
 -------------------------------------------------- */
.footer {
	position: relative;
	padding-top: 40px;
	padding-bottom: 25px;
	background: -webkit-gradient(linear, left top, left bottom, from(#ff8158), color-stop(80%, #f0395e), to(#ef335e));
	background: linear-gradient(to bottom, #ff8158 0%, #f0395e 80%, #ef335e 100%);
	color: #fff;
	text-align: center;
}

.footer.aos-animate::before {
	opacity: 1;
}

.footer.-none::before {
	content: none;
}

.footer::before {
	opacity: 0;
	content: "";
	position: absolute;
	bottom: calc(100% - 14px);
	left: calc(50% - 23px);
	width: 674px;
	height: 169px;
	background: url(/assets/img/common/bg_footer@pc.png) center center/contain no-repeat;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity 1.2s;
	transition: opacity 1.2s;
}

.footer__logo img {
	width: 135px;
	margin-right: 4px;
}

.footer__btn {
	margin-top: 20px;
}

.footer__logo-company {
	margin-top: 30px;
	margin-bottom: 30px;
	line-height: 1;
}

.footer__langage li {
	display: inline-block;
	margin-top: 20px;
	width: 20%;
}

.footer__langage li + li {
	border-left: 1px solid #fff;
}

.footer__langage a {
	display: block;
	text-decoration: none;
}

@media only screen and (max-width: 767px) {
	.footer {
		padding-top: 50px;
		padding-bottom: 30px;
	}
	.footer::before {
		left: calc(50% - 7px);
		width: 342px;
		height: 133px;
		background-image: url(/assets/img/common/bg_footer@sp.png);
	}
	.footer__logo-company {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.footer__langage li {
		width: 40%;
	}
}

/* copyright */
/* trademark */
.copyright, .trademark {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: .05em;
}

.copyright {
	margin-top: 5px;
	font-family: "Montserrat", sans-serif;
}

@media only screen and (max-width: 767px) {
	.copyright {
		margin-top: 10px;
	}
}

.trademark {
	margin-top: 5px;
}

@media only screen and (max-width: 767px) {
	.trademark {
		margin-top: 10px;
	}
}

/* --------------------------------------------------
 Component
 -------------------------------------------------- */
/* headline
------------------------------ */
.headline {
	position: relative;
	z-index: 3;
	margin-bottom: 25px;
	padding-top: 60px;
	font-size: 3.2rem;
	font-weight: 900;
	letter-spacing: .05em;
}

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

.headline::before {
	top: 0;
	right: calc(50% - 50vw);
	left: calc(50% - 50vw);
	height: 80px;
}

.headline::after {
	top: 47px;
	right: 100%;
	width: 35px;
	height: 34px;
	background: url(/assets/img/common/ic_sharp.svg) center center/contain no-repeat;
}

.headline.-none::before {
	content: none;
}

.headline.-bg01::before {
	background: -webkit-gradient(linear, left top, right top, from(#ffdc47), to(#ff9d60));
	background: linear-gradient(to right, #ffdc47 0%, #ff9d60 100%);
	opacity: .9;
}

.headline.-bg02::before {
	background: -webkit-gradient(linear, left top, right top, from(#ff406e), color-stop(50%, #ff8756), to(#ffb444));
	background: linear-gradient(to right, #ff406e 0%, #ff8756 50%, #ffb444 100%);
}

.headline.-bg03::before {
	background: -webkit-gradient(linear, left top, right top, from(#fc6538), to(#ffd81f));
	background: linear-gradient(to right, #fc6538 0%, #ffd81f 100%);
	opacity: .9;
}

@media only screen and (max-width: 767px) {
	.headline {
		font-size: 2.6rem;
	}
}

/* button
------------------------------ */
.text {
	line-height: 1.86;
}

.text p:not(:first-child) {
	margin-top: 15px;
}

/* button
------------------------------ */
.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;
	margin-right: auto;
	margin-left: auto;
	border-radius: 10px;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.btn.-default {
	overflow: hidden;
	position: relative;
	z-index: 3;
	max-width: 200px;
	height: 60px;
	background-color: #1a273e;
	-webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, .16);
	box-shadow: 0 10px 20px rgba(0, 0, 0, .16);
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: .05em;
}

.btn.-default::before {
	content: "";
	position: absolute;
	top: 0;
	right: -30%;
	bottom: 0;
	left: -30%;
	z-index: -1;
	background-color: #234683;
	-webkit-filter: blur(15px);
	filter: blur(15px);
	-webkit-transform: translateX(-100%) skewX(-30deg);
	transform: translateX(-100%) skewX(-30deg);
	-webkit-transition: .5s;
	transition: .5s;
}

.btn.-default:hover::before {
	-webkit-transform: translateX(0) skewX(-30deg);
	transform: translateX(0) skewX(-30deg);
}

.btn.-large {
	max-width: 480px;
}

.btn.-official {
	position: relative;
	max-width: 320px;
	height: 30px;
	padding-left: 8px;
	background-color: #ff9372;
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: -.05em;
}

.btn.-official::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 17px;
	width: 8px;
	height: 12px;
	background: url(/assets/img/common/ic_arrow.svg) no-repeat;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: .3s;
	transition: .3s;
}

.btn.-official:hover {
	background-color: rgba(255, 147, 114, .5);
}

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

@media only screen and (max-width: 767px) {
	.btn.-default {
		max-width: 180px;
		height: 48px;
		font-size: 1.5rem;
	}
	.btn.-large {
		max-width: 315px;
	}
}

/* --------------------------------------------------
 Project
 -------------------------------------------------- */
/* --------------------------------------------------
 INDEX
 -------------------------------------------------- */
canvas {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -3;
	pointer-events: none;
}

/* area-intro */
.area-intro > .wrap {
	padding-top: 35px;
	padding-bottom: 220px;
	background-color: #fff;
}

.area-intro__movie {
	position: relative;
	-webkit-filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
}

.area-intro__movie::before {
	content: "";
	display: block;
	padding-top: calc(380 / 660 * 100%);
}

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

.area-intro__logo {
	margin-top: 30px;
	text-align: center;
}

.area-intro__logo img {
	width: 300px;
	background-color: #fff;
}

.area-intro__headline {
	margin-top: 30px;
	font-size: 2.4rem;
	font-weight: 900;
	text-align: center;
}

.area-intro__btn {
	position: relative;
	z-index: 10;
	margin-top: 30px;
}

@media only screen and (max-width: 767px) {
	.area-intro > .wrap {
		padding-top: 0;
		padding-bottom: 115px;
		background-color: transparent;
	}
	.area-intro__movie {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
	}
	.area-intro__movie::before {
		content: "";
		display: block;
		padding-top: calc(210 / 375 * 100%);
	}
	.area-intro__unit {
		display: block;
	}
	.area-intro__logo {
		margin-top: 20px;
	}
	.area-intro__logo img {
		width: 250px;
	}
	.area-intro__headline {
		margin-top: 20px;
		font-size: 1.4rem;
	}
	.area-intro__btn {
		margin-top: 25px;
	}
}

/* schedule */
.schedule {
	position: relative;
	margin-top: 55px;
	padding: 10px 10px 20px;
	border: 3px solid #ff557b;
	background-color: #fff;
	text-align: center;
}

.schedule__headline {
	position: absolute;
	top: -2px;
	left: 50%;
	display: inline-block;
	padding-right: 25px;
	padding-left: 25px;
	background-color: #fff;
	font-size: 2.2rem;
	font-weight: 900;
	line-height: 1;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.schedule__time {
	font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: .01em;
	line-height: 2.6;
}

.schedule__date {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 10px;
	font-family: "Montserrat", sans-serif;
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1.1;
	text-align: center;
}

.schedule__date > b {
	font-weight: 700;
	text-align: left;
}

.schedule__date > b:first-child {
	padding-left: .37em;
}

.schedule__date > b i {
	display: block;
	margin-bottom: 5px;
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .01em;
}

.schedule__date > b strong {
	margin-right: .25em;
}

.schedule__date span {
	margin-right: .8em;
	margin-left: .8em;
}

.schedule__notes {
	margin-top: 10px;
	font-size: 1.2rem;
	letter-spacing: .01em;
}

@media only screen and (max-width: 767px) {
	.schedule {
		margin-top: 25px;
		padding-bottom: 15px;
	}
	.schedule__headline {
		padding-right: 30px;
		padding-left: 30px;
		font-size: 1.4rem;
	}
	.schedule__time {
		font-size: 1rem;
	}
	.schedule__date {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-top: 5px;
		font-size: 1.8rem;
		text-align: center;
	}
	.schedule__date > b {
		text-align: center;
	}
	.schedule__date > b:first-child {
		padding-left: .55em;
	}
	.schedule__date > b i {
		font-size: 1.2rem;
	}
	.schedule__date > b strong {
		display: block;
		margin-bottom: 5px;
		margin-right: 0;
		font-size: 2rem;
	}
	.schedule__date span {
		margin-right: 1em;
		margin-left: 1em;
	}
	.schedule__notes {
		font-size: 1rem;
	}
}

/* area-about */
.area-about {
	position: relative;
	z-index: 3;
	background: -webkit-gradient(linear, left top, left bottom, from(#ff8158), color-stop(80%, #f0395e), to(#ef335e));
	background: linear-gradient(to bottom, #ff8158 0%, #f0395e 80%, #ef335e 100%);
	color: #fff;
}

.area-about.aos-animate::before, .area-about.aos-animate::after {
	opacity: 1;
}

.area-about::before, .area-about::after {
	opacity: 0;
	content: "";
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: center center / contain no-repeat;
	pointer-events: none;
	-webkit-transition: opacity 1.2s;
	transition: opacity 1.2s;
}

.area-about::before {
	bottom: calc(100% - 25px);
	left: calc(50% - 2px);
	z-index: -1;
	width: 558px;
	height: 230px;
	background-image: url(/assets/img/top/area-about_bg_01@pc.png);
}

.area-about::after {
	bottom: calc(100% - 11px);
	left: calc(50% + 11px);
	width: 131px;
	height: 175px;
	background-image: url(/assets/img/top/area-about_bg_02@pc.png);
}

.area-about > .wrap {
	background-image: inherit;
	padding-bottom: 200px;
}

.area-about__logo {
	margin-top: 30px;
	text-align: center;
}

.area-about__logo img {
	width: 280px;
}

@media only screen and (max-width: 767px) {
	.area-about::before {
		bottom: calc(100% - 21px);
		left: 50%;
		width: 370px;
		height: 191px;
		background-image: url(/assets/img/top/area-about_bg_01@sp.png);
	}
	.area-about::after {
		bottom: calc(100% - 10px);
		left: calc(50% + 13px);
		width: 99px;
		height: 133px;
		background-image: url(/assets/img/top/area-about_bg_02@sp.png);
	}
	.area-about > .wrap {
		padding-bottom: 160px;
	}
	.area-about__logo {
		margin-top: 25px;
	}
	.area-about__logo img {
		width: 240px;
	}
}

/* area-hold */
.area-hold {
	position: relative;
}

.area-hold.aos-animate::before {
	opacity: 1;
}

.area-hold::before {
	opacity: 0;
	content: "";
	position: absolute;
	bottom: calc(100% - 20px);
	left: calc(50% - 4px);
	z-index: 5;
	width: 492px;
	height: 179px;
	background: url(/assets/img/top/area-hold_bg@pc.png) center center/contain no-repeat;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity 1.2s;
	transition: opacity 1.2s;
}

.area-hold > .wrap {
	padding-bottom: 160px;
	background-color: #fff;
}

.area-hold__headline {
	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;
	margin-top: 35px;
	padding-right: 11px;
	padding-left: 11px;
	background: url(/assets/img/common/ic_ball.svg) left center no-repeat, url(/assets/img/common/ic_ball.svg) right center no-repeat;
	font-weight: 900;
	letter-spacing: .011em;
	text-align: center;
}

.area-hold__headline::before, .area-hold__headline::after {
	content: "";
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	height: 3px;
	background-color: #ff406e;
}

.area-hold__headline::before {
	margin-right: 2em;
	border-radius: 0 3px 3px 0;
}

.area-hold__headline::after {
	margin-left: 2em;
	border-radius: 3px 0 0 3px;
}

.area-hold__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	text-align: center;
}

.area-hold__list li {
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	margin-top: 30px;
}

.area-hold__list li.-item1of2 {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
}

@media only screen and (max-width: 767px) {
	.area-hold::before {
		bottom: calc(100% - 12px);
		left: calc(50% - 2px);
		width: 367px;
		height: 145px;
		background-image: url(/assets/img/top/area-hold_bg@sp.png);
	}
	.area-hold > .wrap {
		padding-bottom: 115px;
		background-color: transparent;
	}
	.area-hold__headline {
		margin-top: 25px;
	}
	.area-hold__headline::before {
		margin-right: 1.5em;
	}
	.area-hold__headline::after {
		margin-left: 1.5em;
	}
	.area-hold__list {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.area-hold__list li {
		-ms-flex-preferred-size: calc(50% - 8px);
		flex-basis: calc(50% - 8px);
		margin-top: 20px;
	}
	.area-hold__list li.-item1of2 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
	}
}

/* area-attend */
.area-attend {
	position: relative;
}

.area-attend.aos-animate::before {
	opacity: 1;
}

.area-attend::before {
	opacity: 0;
	content: "";
	position: absolute;
	bottom: calc(100% - 22px);
	left: calc(50% - 21px);
	z-index: 5;
	width: 658px;
	height: 168px;
	background: url(/assets/img/top/area-attend_bg@pc.png) center center/contain no-repeat;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity 1.2s;
	transition: opacity 1.2s;
}

.area-attend > .wrap {
	padding-bottom: 220px;
	background-color: #fff;
}

.area-attend__unit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.area-attend__image {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	-ms-flex-item-align: start;
	align-self: flex-start;
	position: relative;
	-webkit-filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
	text-align: center;
}

.area-attend__image img {
	width: 240px;
}

.area-attend__image span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	top: calc(50% + 11px);
	left: 50%;
	width: 165px;
	height: 27px;
	padding-right: 30px;
	padding-left: 35px;
	font-size: 1rem;
	line-height: 1;
	text-align: left;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.area-attend__step {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	margin-right: 50px;
	counter-reset: count;
}

.area-attend__step li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	counter-increment: count;
}

.area-attend__step li::before {
	content: counter(count);
	-ms-flex-item-align: stretch;
	-ms-grid-row-align: stretch;
	align-self: stretch;
	-ms-flex-preferred-size: 50px;
	flex-basis: 50px;
	min-width: 50px;
	margin-right: 20px;
	border-right: 2px solid #ffb045;
	color: #ff406e;
	font-family: "Montserrat", sans-serif;
	font-size: 3rem;
	text-align: center;
}

.area-attend__step li:not(:first-child) {
	margin-top: 30px;
}

.area-attend__notes {
	margin-top: 30px;
}

.area-attend__notes li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.2rem;
}

.area-attend__notes li::before {
	content: "※";
	margin-right: .8em;
}

.area-attend__notes li:not(:first-child) {
	margin-top: 5px;
}

.area-attend__btn {
	margin-top: 30px;
}

@media only screen and (max-width: 767px) {
	.area-attend::before {
		left: 50%;
		width: 370px;
		height: 118px;
		background-image: url(/assets/img/top/area-attend_bg@sp.png);
	}
	.area-attend > .wrap {
		padding-bottom: 130px;
		background-color: transparent;
	}
	.area-attend__unit {
		display: block;
	}
	.area-attend__step {
		margin-top: 30px;
	}
	.area-attend__step li::before {
		-ms-flex-preferred-size: 40px;
		flex-basis: 40px;
		min-width: 40px;
	}
	.area-attend__step li:not(:first-child) {
		margin-top: 25px;
	}
	.area-attend__notes {
		margin-top: 25px;
	}
	.area-attend__btn {
		margin-top: 20px;
	}
}

/* area-result */
.area-result {
	position: relative;
}

.area-result.aos-animate::before {
	opacity: 1;
}

.area-result::before {
	opacity: 0;
	content: "";
	position: absolute;
	bottom: calc(100% - 13px);
	left: calc(50% - 21px);
	z-index: 5;
	width: 645px;
	height: 207px;
	background: url(/assets/img/top/area-result_bg@pc.png) center center/contain no-repeat;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity 1.2s;
	transition: opacity 1.2s;
}

.area-result > .wrap {
	padding-bottom: 200px;
	background-color: #fff;
}

.area-result__btn {
	margin-top: 35px;
}

@media only screen and (max-width: 767px) {
	.area-result::before {
		left: calc(50% + 2px);
		width: 367px;
		height: 154px;
		background-image: url(/assets/img/top/area-result_bg@sp.png);
	}
	.area-result > .wrap {
		padding-bottom: 155px;
		background-color: transparent;
	}
	.area-result__btn {
		margin-top: 15px;
	}
}

/* --------------------------------------------------
 RESULT
 -------------------------------------------------- */
/* area-vote */
.area-vote {
	text-align: center;
}

.area-vote > .wrap {
	padding-top: 20px;
	padding-bottom: 30px;
	background-color: transparent;
}

.area-vote__logo img {
	width: 420px;
	background-color: transparent;
}

.area-vote__headline {
	margin-top: 20px;
	font-size: 3rem;
	font-weight: 900;
	letter-spacing: .05em;
}

.area-vote__lead {
	font-size: 2.4rem;
	font-weight: 900;
	letter-spacing: normal;
}

.area-vote__total {
	max-width: 600px;
	margin: 15px auto 0;
	padding-top: 15px;
	padding-bottom: 10px;
	border-top: 2px solid;
	border-bottom: 2px solid;
	color: #ff406e;
	font-size: 2.6rem;
	font-weight: 700;
	letter-spacing: normal;
	line-height: 1;
}

.area-vote__total > span, .area-vote__total > b {
	font-family: "Montserrat", sans-serif;
}

.area-vote__total > span {
	font-size: 3.1rem;
}

.area-vote__total > b {
	margin-right: 5px;
	margin-left: 5px;
	font-size: 5.2rem;
}

@media only screen and (max-width: 767px) {
	.area-vote > .wrap {
		padding-bottom: 20px;
		background-color: transparent;
	}
	.area-vote__logo img {
		width: 262px;
	}
	.area-vote__headline {
		margin-top: 25px;
	}
	.area-vote__lead {
		margin-top: 15px;
		font-size: 2.2rem;
	}
	.area-vote__total {
		margin-top: 10px;
		padding-bottom: 20px;
		font-size: 2.2rem;
		font-weight: 500;
	}
	.area-vote__total > span, .area-vote__total > b {
		font-weight: 700;
	}
	.area-vote__total > span {
		display: block;
		margin-bottom: 5px;
		font-size: 2.2rem;
	}
	.area-vote__total > b {
		margin-left: 0;
		font-size: 4.2rem;
	}
}

/* area-ranking */
.area-ranking > .wrap {
	padding-bottom: 60px;
	background-color: transparent;
}

@media only screen and (max-width: 767px) {
	.area-ranking > .wrap {
		padding-bottom: 40px;
		background-color: transparent;
	}
}

/* ranking */
.ranking {
	opacity: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 12px;
	margin-left: -21px;
	-webkit-animation: fadeIn .3s .2s forwards;
	animation: fadeIn .3s .2s forwards;
}

.ranking#total .ranking__item:nth-child(-n + 3) .ranking__image img, .ranking#kalos .ranking__item:nth-child(-n + 3) .ranking__image img {
	width: 190px;
}

.ranking#total .ranking__item:nth-child(-n + 3) .ranking__image img[src*="658"], .ranking#kalos .ranking__item:nth-child(-n + 3) .ranking__image img[src*="658"] {
	width: 250px;
	margin-top: -30px;
	margin-bottom: -30px;
}

.ranking__item {
	-ms-flex-preferred-size: calc(100% / 3 - 21px);
	flex-basis: calc(100% / 3 - 21px);
	min-height: 200px;
	margin-top: 28px;
	margin-left: 21px;
}

.ranking__item:nth-child(-n + 3) .ranking__tier {
	margin-top: -7px;
	margin-right: 10px;
	font-size: 5rem;
}

.ranking__item:nth-child(-n + 3) .ranking__image {
	margin-top: 7px;
}

.ranking__item:nth-child(-n + 3) .ranking__image::before {
	top: calc(50% + 20px);
	height: 140px;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffd59b), to(#fff9b4));
	background: linear-gradient(to bottom, #ffd59b 0%, #fff9b4 100%);
}

.ranking__item:nth-child(-n + 3) .ranking__image::after {
	width: 200px;
	height: 200px;
}

.ranking__item:nth-child(-n + 3) .ranking__image img {
	width: 220px;
}

.ranking__item.aos-animate .ranking__number, .ranking__item.aos-animate .ranking__name, .ranking__item.aos-animate .ranking__vote {
	-webkit-animation-name: loadAnimationText;
	animation-name: loadAnimationText;
}

.ranking__item.aos-animate .ranking__number::after, .ranking__item.aos-animate .ranking__name::after, .ranking__item.aos-animate .ranking__vote::after {
	-webkit-animation-name: loadAnimationTextBar;
	animation-name: loadAnimationTextBar;
}

.ranking__item.aos-animate .ranking__image::before {
	-webkit-animation-name: loadAnimationBG;
	animation-name: loadAnimationBG;
}

.ranking__item.aos-animate .ranking__image::after {
	-webkit-animation-name: loadAnimationExplosion;
	animation-name: loadAnimationExplosion;
}

.ranking__item.aos-animate .ranking__image img {
	-webkit-transform: none;
	transform: none;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}

.ranking__header {
	overflow: hidden;
	line-height: 1;
}

.ranking__tier {
	float: left;
	margin-right: 15px;
	font-family: "Montserrat", sans-serif;
	font-size: 4rem;
	font-weight: 700;
}

.ranking__text {
	overflow: hidden;
}

.ranking__number, .ranking__name, .ranking__vote {
	position: relative;
	color: transparent;
	-webkit-animation: .1s linear .6s forwards;
	animation: .1s linear .6s forwards;
}

.ranking__number::after, .ranking__name::after, .ranking__vote::after {
	content: "";
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: -webkit-gradient(linear, left top, right top, from(#e6feba), to(#fdf7b1));
	background: linear-gradient(to right, #e6feba 0%, #fdf7b1 100%);
	-webkit-animation: .8s .3s forwards;
	animation: .8s .3s forwards;
}

.ranking__number {
	font-family: "Montserrat", sans-serif;
	font-size: 1.3rem;
	letter-spacing: .05em;
}

.ranking__name {
	margin-top: 5px;
	font-size: 2rem;
	font-weight: 900;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.ranking__name::after {
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}

.ranking__vote {
	margin-top: 7px;
	letter-spacing: .05em;
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
}

.ranking__vote::after {
	-webkit-animation-delay: .7s;
	animation-delay: .7s;
}

.ranking__vote > span {
	margin-right: .1em;
	font-family: "Montserrat", sans-serif;
	font-size: 1.8rem;
}

.ranking__image {
	position: relative;
	z-index: 3;
	margin-top: 5px;
	text-align: center;
}

.ranking__image::before, .ranking__image::after {
	content: "";
	opacity: 0;
	position: absolute;
}

.ranking__image::before {
	top: 50%;
	right: 0;
	left: 0;
	z-index: -1;
	height: 100px;
	border-radius: 100px;
	background: -webkit-gradient(linear, left top, right top, from(#e6feba), to(#fdf7b1));
	background: linear-gradient(to right, #e6feba 0%, #fdf7b1 100%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-animation: .6s .8s forwards;
	animation: .6s .8s forwards;
}

.ranking__image::after {
	top: 50%;
	left: 50%;
	width: 150px;
	height: 150px;
	border-radius: 100%;
	border: 10px solid rgba(216, 110, 247, .7);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-animation: 1s 1.05s forwards;
	animation: 1s 1.05s forwards;
}

.ranking__image img {
	opacity: 0;
	width: 150px;
	-webkit-animation: .7s 1.4s forwards;
	animation: .7s 1.4s forwards;
}

.ranking__image img[src*="382"] {
	width: 200px;
	margin-top: -25px;
	margin-bottom: -25px;
}

.ranking__image img[src*="695"] {
	width: 190px;
	margin-top: -20px;
	margin-bottom: -20px;
}

@media only screen and (max-width: 767px) {
	.ranking {
		display: block;
		margin: 10px calc(50% - 50vw) 0;
	}
	.ranking#total .ranking__item:nth-child(-n + 3) .ranking__image img, .ranking#kalos .ranking__item:nth-child(-n + 3) .ranking__image img {
		width: 200px;
	}
	.ranking#total .ranking__item:nth-child(-n + 3) .ranking__image img[src*="658"], .ranking#kalos .ranking__item:nth-child(-n + 3) .ranking__image img[src*="658"] {
		max-width: none;
		margin: -25px 0 -25px -30px;
	}
	.ranking__item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		position: relative;
		min-height: 100px;
		margin-top: 10px;
		margin-left: 50px;
	}
	.ranking__item::before, .ranking__item::after {
		content: "";
		opacity: 0;
		position: absolute;
	}
	.ranking__item::before {
		top: 50%;
		right: 0;
		left: 0;
		z-index: -1;
		height: 110px;
		border-radius: 110px 0 0 110px;
		background: -webkit-gradient(linear, left top, right top, from(#e6feba), to(#fdf7b1));
		background: linear-gradient(to right, #e6feba 0%, #fdf7b1 100%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		-webkit-animation: .6s 1.2s forwards;
		animation: .6s 1.2s forwards;
	}
	.ranking__item:nth-child(-n + 3)::before {
		height: 160px;
		background: -webkit-gradient(linear, left top, left bottom, from(#ffd59b), to(#fff9b4));
		background: linear-gradient(to bottom, #ffd59b 0%, #fff9b4 100%);
	}
	.ranking__item:nth-child(-n + 3)::after {
		width: 200px;
		height: 200px;
	}
	.ranking__item:nth-child(-n + 3) .ranking__tier {
		margin-top: 0;
		margin-right: 0;
	}
	.ranking__item:nth-child(-n + 3) .ranking__header {
		-ms-flex-item-align: start;
		align-self: flex-start;
		padding-top: 25px;
	}
	.ranking__item:nth-child(-n + 3) .ranking__tier {
		position: static;
		font-size: 5rem;
		-webkit-transform: none;
		transform: none;
	}
	.ranking__item:nth-child(-n + 3) .ranking__text {
		margin-top: 10px;
		padding-left: 0;
	}
	.ranking__item:nth-child(-n + 3) .ranking__image {
		margin-top: 0;
	}
	.ranking__item:nth-child(-n + 3) .ranking__image img {
		width: 200px;
	}
	.ranking__item.aos-animate::before {
		-webkit-animation-name: loadAnimationBG;
		animation-name: loadAnimationBG;
	}
	.ranking__header {
		overflow: visible;
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}
	.ranking__tier {
		float: none;
		position: absolute;
		top: 50%;
		left: 0;
		margin-right: 0;
		font-size: 4.6rem;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.ranking__text {
		overflow: visible;
		padding-left: 40px;
	}
	.ranking__number::after, .ranking__name::after, .ranking__vote::after {
		background: #1a273e;
	}
	.ranking__number {
		font-size: 1.4rem;
	}
	.ranking__name {
		font-size: 1.8rem;
		white-space: nowrap;
	}
	.ranking__vote {
		margin-top: 10px;
		white-space: nowrap;
	}
	.ranking__image {
		-ms-flex-preferred-size: 220px;
		flex-basis: 220px;
		margin-top: 8;
	}
	.ranking__image::before {
		content: none;
	}
	.ranking__image::after {
		width: 130px;
		height: 130px;
	}
	.ranking__image img {
		width: 130px;
	}
	.ranking__image img[src*="382"] {
		width: 180px;
	}
	.ranking__image img[src*="695"] {
		width: 170px;
	}
}

/* nav-local */
.nav-local > .wrap {
	padding-bottom: 40px;
	background-color: #fff;
}

.nav-local__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	margin-top: 30px;
	margin-left: -10px;
}

.nav-local__list li {
	-ms-flex-preferred-size: calc(100% / 4 - 10px);
	flex-basis: calc(100% / 4 - 10px);
	margin-top: 10px;
	margin-left: 10px;
	font-size: 1.8rem;
	line-height: 1.334;
	text-align: center;
}

.nav-local__list li.-total {
	margin-top: 30px;
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
}

.nav-local__list li.-total a {
	-webkit-filter: none;
	filter: none;
}

.nav-local__list li a {
	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: relative;
	height: 73px;
	padding: 0 20px 2px 40px;
	border: 2px solid;
	border-radius: 10px;
	background-color: #fff;
	-webkit-filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .16));
	text-decoration: none;
}

.nav-local__list li a::before, .nav-local__list li a::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 20px;
	width: 14px;
	height: 4px;
	border-radius: 4px 0 0 4px;
	background-color: #1a273e;
	-webkit-transition: .3s;
	transition: .3s;
}

.nav-local__list li a::before {
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	-webkit-transform-origin: 100% 0;
	transform-origin: 100% 0;
}

.nav-local__list li a::after {
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	-webkit-transform-origin: 100% 100%;
	transform-origin: 100% 100%;
}

.nav-local__list li a:hover, .nav-local__list li a.is-active {
	border-color: #234580;
	background-color: #234580;
	color: #fff;
}

.nav-local__list li a:hover::before, .nav-local__list li a:hover::after {
	background-color: #fff;
}

.nav-local__list li a.is-active {
	padding-left: 20px;
	pointer-events: none;
}

.nav-local__list li a.is-active::before, .nav-local__list li a.is-active::after {
	content: none;
}

@media only screen and (max-width: 767px) {
	.nav-local > .wrap {
		padding-bottom: 20px;
	}
	.nav-local__list {
		display: block;
		margin: 0 calc(50% - 50vw);
	}
	.nav-local__list li {
		margin-top: -1px;
		margin-left: 0;
	}
	.nav-local__list li.-total {
		margin-top: -1px;
	}
	.nav-local__list li a {
		height: 64px;
		padding-left: 0;
		border: 1px solid;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
		-webkit-filter: none;
		filter: none;
	}
	.nav-local__list li a:hover, .nav-local__list li a.is-active {
		position: relative;
		z-index: 3;
	}
}