/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,::after,::before{background-repeat:no-repeat;box-sizing:inherit}::after,::before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}

html {
	font-size: 62.5%;
	/*scroll-behavior: smooth;*/
}
body {
	color: black;
	font-size: 1.6rem;
	line-height: 1.875;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
	font-weight: 500;
	letter-spacing: .05em;
	font-feature-settings: "palt";
}
.c-menu-button {
	font-family: "Roboto Condensed", sans-serif;
}
time {
	font-family: "Montserrat", sans-serif;
}
button {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
img, svg, iframe {
	vertical-align: middle;
}
ul {
	list-style: none;
}
a {
	color: inherit;
	text-decoration: inherit;
}
.t {
	fill: none;
	stroke: currentcolor;
	stroke-width: 1.5;
}
@media screen and (max-width: 1024px) {
	.v-dt { display: none; }
}
@media screen and (min-width: 1025px) {
	.v-mb { display: none; }
}

body.pace-running {}
body.pace-done {}
.pace {
	pointer-events: none;
	z-index: 20;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: white;
}
.pace-active {}
.pace-inactive {
	opacity: 0;
	transition: opacity .4s;
}
.pace-progress {
	background: #fcf356;
	position: absolute;
	top: calc(50% - 2px);
	right: 100%;
	width: 100%;
	height: 4px;
}

/**
 * header
 -------------------------------------------------- */
.l-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 10;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 20px;
}
.l-header .t {
	stroke: currentcolor;
}
@media screen and (min-width: 568px) {
	.l-header {
		padding: 34px 40px;
	}
}
/* logo */
.c-logo {
	line-height: 1;
}
.c-logo a {
	display: flex;
	justify-content: center;
	align-items: center;
}
.c-logo .t {
	width: 184px;
	height: 33px;
	vertical-align: top;
}
@media screen and (max-width: 567px) {
	.c-logo .t {
		width: 123px;
		height: 22px;
	}
}
/* button */
.c-menu-button {
	display: flex;
	align-items: center;
	font-size: 1.3rem;
	text-transform: uppercase;
}
.c-menu-button:focus {
	outline: transparent;
}
.c-menu-button .bar,
.c-menu-button .bar::before,
.c-menu-button .bar::after {
	width: 24px;
	height: 2px;
	background: currentcolor;
}
.c-menu-button .bar {
	position: relative;
	margin-left: 16px;
	vertical-align: middle;
}
.c-menu-button .bar::before,
.c-menu-button .bar::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
}
.c-menu-button .bar::before {
	transform: translateY(-10px);
}
.c-menu-button .bar::after {
	transform: translateY(10px);
}
/* animation */
.c-logo,
.l-header:not(.is-home) .c-menu-button,
.l-header.is-nav .c-menu-button {
	color: black;
}
.c-menu-button,
.l-header.is-nav .c-logo {
	color: white;
}
.l-header.anima .c-logo,
.l-header.anima .c-menu-button {
	transition: color .3s;
}
.l-header.anima.is-nav .c-logo,
.l-header.anima.is-nav .c-menu-button {
	transition-delay: .4s;
}
.l-header.anima:not(.is-nav) .c-logo,
.l-header.anima:not(.is-nav) .c-menu-button {
	transition-delay: .6s;
}


/**
 * menu
 -------------------------------------------------- */
.l-menu {
	z-index: 9;
	position: fixed;
}
.l-menu,
.l-menu_bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.l-menu_bg {
	position: absolute;
	background: white;
}
/* container */
.l-menu_container {
	position: absolute;
	top: 0;
	left: 50%;
	width: 50%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: black;
}
.c-menu {
	position: relative;
	color: black;
}
.c-menu_item:not(:first-child) {
	margin-top: 32px;
}
.c-menu .t {
	height: 24px;
	stroke: currentcolor;
}
.c-menu_item:nth-child(1) .t { width: 67px; }
.c-menu_item:nth-child(2) .t { width: 147px; }
.c-menu_item:nth-child(3) .t { width: 94px; }
.c-menu a {
	display: inline-block;
}
.c-menu .sub {
	display: block;
	margin-top: 4px;
	font-size: 1rem;
}
@media screen and (min-width: 375px) {
	.c-menu .t { height: 24px; }
	.c-menu_item:nth-child(1) .t { width: 67px; }
	.c-menu_item:nth-child(2) .t { width: 147px; }
	.c-menu_item:nth-child(3) .t { width: 94px; }
}
@media screen and (min-width: 768px) {
	.c-menu_item:not(:first-child) {
		margin-top: 48px;
	}
	.c-menu .t { height: 60px; }
	.c-menu_item:nth-child(1) .t { width: 162px; }
	.c-menu_item:nth-child(2) .t { width: 342px; }
	.c-menu_item:nth-child(3) .t { width: 231px; }
	.c-menu .sub { font-size: 1.2rem; }
}
/* overlay */
.l-menu_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	background: black;
}
/* foot */
.l-menu .c-foot {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 32px 20px;
}
@media screen and (max-width: 567px) {
	.l-menu .c-foot {
		flex-direction: column;
		align-items: flex-end;
		font-size: 1rem;
	}
	.l-menu .c-foot_item:not(:first-child) {
		margin: 8px 0 0;
	}
}
/* animation */
.l-menu:not(.is-open) {
	pointer-events: none;
}
.l-menu:not(.is-open) .l-menu_bg,
.l-menu:not(.is-open) .l-menu_overlay {
	transform: translateY(100%);
}
.l-menu:not(.is-open).anima .l-menu_bg,
.l-menu:not(.is-open).anima .l-menu_overlay {
	transform: translateY(-100%);
}
.l-menu:not(.is-open) .c-menu_item,
.l-menu:not(.is-open) .c-foot {
	opacity: 0;
	transform: translateY(32px);
}
.l-menu:not(.is-open).anima .c-menu_item,
.l-menu:not(.is-open).anima .c-foot {
	transform: translateY(-32px);
}
.l-menu.anima .l-menu_bg,
.l-menu.anima .l-menu_overlay {
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.l-menu.anima:not(.is-open) .l-menu_bg,
.l-menu.anima:not(.is-open) .l-menu_overlay {
	transition-delay: .2s;
}
.l-menu.anima:not(.is-open) .l-menu_bg,
.l-menu.anima:not(.is-open) .l-menu_overlay {
	transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
.l-menu.anima .c-menu_item,
.l-menu.anima .c-foot {
	transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.l-menu.anima:not(.is-open) .c-menu_item,
.l-menu.anima:not(.is-open) .c-foot {
	transition-duration: .4s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.l-menu.anima.is-open .c-menu_item:nth-child(1) { transition-delay: .3s; }
.l-menu.anima.is-open .c-menu_item:nth-child(2) { transition-delay: .2s; }
.l-menu.anima.is-open .c-menu_item:nth-child(3) { transition-delay: .1s; }
.l-menu.anima:not(.is-open) .c-menu_item:nth-child(1) { transition-delay: .2s; }
.l-menu.anima:not(.is-open) .c-menu_item:nth-child(2) { transition-delay: .1s; }
.l-menu.anima:not(.is-open) .c-menu_item:nth-child(3) { transition-delay: 0s; }


/**
 * pagetop
 -------------------------------------------------- */
.c-pagetop {
	display: inline-block;
	z-index: 2;
	position: relative;
	margin: 0 20px -24px;
}
.c-pagetop img {
	width: 103px;
	transform: rotateY(-180deg);
}
@media screen and (min-width: 768px) {
	.c-pagetop {
		margin: 0 40px -86px;
	}
	.c-pagetop img {
		width: 140px;
	}
}
@media screen and (min-width: 1025px) {
	.c-pagetop {
		margin: 0 80px -86px;
	}
}
@media screen and (min-width: 1280px) {
	.c-pagetop {
		left: calc(50% - 640px);
	}
}


/**
 * footer
 -------------------------------------------------- */
.l-footer {
	position: relative;
	overflow: hidden;
	color: white;
	text-align: left;
}
.c-footer {
	max-width: 1280px;
	margin: 0 auto;
}
.c-footer .c-title {
	line-height: 1;
	text-align: left;
}
@media screen and (max-width: 767px) {
	.c-footer {
		display: flex;
		flex-direction: column;
	}
}
@media screen and (min-width: 768px) {
	.c-footer {
		display: flex;
		flex-wrap: wrap;
	}
}

/* :::::: layout :::::: */
.l-contentsinfo {
	padding: 40px;
}
@media screen and (max-width: 374px) {
	.l-contentsinfo {
		padding: 40px 20px;
	}
}
@media screen and (max-width: 767px) {
	.c-footer_contact {
		order: -1;
	}
}
@media screen and (min-width: 768px) {
	.l-contentsinfo {
		flex-basis: 50%;
		padding: 120px 40px;
	}
}
@media screen and (min-width: 1025px) {
	.l-contentsinfo {
		padding-left: 80px;
	}
}
@media screen and (min-width: 1281px) {
	.l-contentsinfo {
		z-index: 1;
		position: relative;
	}
	.l-contentsinfo::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		bottom: 0;
	}
	.c-footer_nav::before {
		right: 0;
		left: calc(50% - 50vw);
		background: black;
	}
	.c-footer_contact::before {
		right: calc(50% - 50vw);
		left: 0;
		background: #fcf356;
	}
}

/* :::::: TANKYU :::::: */
.c-footer_nav {
	color: white;
	background: black;
}
.c-footer_nav .c-title .t {
	width: 275px;
	height: 49px;
	stroke: currentcolor;
}
@media screen and (max-width: 374px) {
	.c-footer_nav .c-title .t {
		width: 184px;
		height: 33px;
	}
}

.c-nav {
	display: flex;
	margin-top: 32px;
	font-size: 1.25rem;
}
.c-nav_item:not(:first-child) {
	margin-left: 32px;
}
@media screen and (max-width: 374px) {
	.c-nav_item:not(:first-child) {
		margin-left: 24px;
	}
}
@media screen and (min-width: 1025px) {
	.c-nav {
		font-size: 1.5rem;
	}
}

/* :::::: お問い合わせ :::::: */
.c-footer_contact {
	color: black;
	background: #fcf356;
}
.c-footer_contact .c-title {
	font-size: 3.2rem;
}
@media screen and (max-width: 374px) {
	.c-footer_contact .c-title {
		font-size: 2.4rem;
	}
}

.c-contact {
	position: relative;
	margin-top: 32px;
	padding-left: 24px;
}
.c-contact:before {
	content: "";
	position: absolute;
	top: .2em;
	left: 0;
	height: calc(100% - .2em);
	border-left: 4px solid currentcolor;
}
.c-contact_item {
	margin-top: 16px;
	line-height: 1;
	white-space: nowrap;
}
.c-contact_head,
.c-contact_body {
	display: inline-block;
	vertical-align: baseline;
}
.c-contact_head {
	position: relative;
	top: -.1em;
	min-width: 5em;
	font-size: 1.1rem;
}
.c-contact_body {
	font-size: 1.6rem;
}
@media screen and (max-width: 374px) {
	.c-contact {
		margin-top: 16px;
		padding-left: 16px;
	}
	.c-contact_item {
		margin-top: 12px;
	}
}
@media screen and (min-width: 1025px) {
	.c-contact:before {
		top: .4em;
		height: calc(100% - .4em);
	}
	.c-contact_body {
		font-size: 2.1rem;
	}
}

/* :::::: リンク :::::: */
.c-foot {
	flex-basis: 100%;
	display: flex;
	padding: 40px 40px 0;
	font-size: 1.2rem;
}
.c-footer .c-foot {
	z-index: 1;
	position: relative;
}
.c-footer .c-foot::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: -1px;
	right: calc(50% - 50vw);
	bottom: -1px;
	left: calc(50% - 50vw);
	background: black;
}
.c-foot_item:not(:first-child) {
	margin-left: 32px;
}
@media screen and (max-width: 374px) {
	.c-foot {
		padding: 16px;
	}
}
@media screen and (max-width: 767px) {
	.c-foot {
		justify-content: center;
	}
}
@media screen and (min-width: 768px) {
	.c-foot {
		padding: 64px 80px 0;
		font-size: 1.3rem;
	}
}

.copyright {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 96px;
	font-size: 1.1rem;
	background: black;
}
@media screen and (max-width: 374px) {
	.copyright {
		height: 48px;
	}
}