@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

main {
	display: block;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b, strong {
	font-weight: bolder;
}

code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button, input {
	overflow: visible;
}

button, select {
	text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
	appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type=checkbox], [type=radio] {
	box-sizing: border-box;
	padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
	height: auto;
}

[type=search] {
	appearance: textfield;
	outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

/* box-sizing */
html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
*,
*::before,
*::after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}
html {
	font-size: 62.5%;
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
	display: block;
}
body {
	position: relative;
	background-color: #fff;
	color: #151515;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, san-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1.6;
	text-align: left;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-ms-text-size-adjust: 100%;
	-ms-overflow-style: scrollbar;
}
[tabindex="-1"]:focus:not(:focus-visible) {
	outline: 0 !important;
}

a {
	color: blue;
	text-decoration: none;
	background-color: transparent;
}
a:hover {
	color: #09f;
	text-decoration: underline;
}
a:not([href]):not([class]) {
	color: inherit;
	text-decoration: none;
}
a:not([href]):not([class]):hover {
	color: inherit;
	text-decoration: none;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-size: inherit;
}
dd {
	margin-left: 0;
}
img {
	vertical-align: bottom;
	border-style: none;
	line-height: 1;
}
svg {
	vertical-align: middle;
	fill: currentColor;
}

.responsive {
	width: 100%;
	height: auto;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* 
html body {
	opacity: 0;
}

html.js .outer-container {
	opacity: 0;
} */

/* Profile の上部テキストで使っている */
.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
}

@media (min-width: 576px) {
	.container,
.container-sm {
		max-width: 540px;
	}
}
@media (min-width: 768px) {
	.container,
.container-sm,
.container-md {
		max-width: 720px;
	}
}
@media (min-width: 992px) {
	.container,
.container-sm,
.container-md,
.container-lg {
		max-width: 960px;
	}
}
@media (min-width: 1200px) {
	.container,
.container-sm,
.container-md,
.container-lg,
.container-xl {
		max-width: 1140px;
	}
}

.xs-inline,
.xs-inline-block,
.xs-block,
.xs-flex,
.md-inline,
.md-inline-block,
.md-block,
.md-flex,
.lg-inline,
.lg-inline-block,
.lg-block,
.lg-flex {
	display: none;
}

@media (max-width: 360px) {
	.xs-inline {
		display: inline !important;
	}
	.xs-inline-block {
		display: inline-block !important;
	}
	.xs-block {
		display: block !important;
	}
	.xs-flex {
		display: -ms-flexbox !important;
		display: flex !important;
	}
}
@media (max-width: 768px) {
	.md-inline {
		display: inline !important;
	}
	.md-inline-block {
		display: inline-block !important;
	}
	.md-block {
		display: block !important;
	}
	.md-flex {
		display: -ms-flexbox !important;
		display: flex !important;
	}
}
@media (min-width: 769px) {
	.lg-inline {
		display: inline !important;
	}
	.lg-inline-block {
		display: inline-block !important;
	}
	.lg-block {
		display: block !important;
	}
	.lg-flex {
		display: -ms-flexbox !important;
		display: flex !important;
	}
}

.fade {
	transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
	.fade {
		transition: none;
	}
}
.fade:not(.show) {
	opacity: 0;
}






/*	Loading Splash
----------------------------------------------------- */

/*
html.no-js #splash {
	display: none;
}

html.js #splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #fff;
	text-align: center;
	color: #999;
}

html.js #splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

html.js #splash_logo img {
	width: 60px;
}

@keyframes loading_anime {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.loading_rotate {
	animation: loading_anime 2s linear infinite;
}
*/



/*	Navigation	ブレークポイント: 992px (lg)
----------------------------------------------------- */
ul.navbar-nav,
ul.footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.navbar-menu li,
ul.footer-menu li {
	font-family: 'dunbar-low' !important;
	font-weight: 600;
	font-style: italic;
	text-transform: uppercase;
}

.navbar {
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
}
.navbar.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}

.nav-container {
	position: relative;
	padding: 1rem 1.5rem;
	width: 100%;
	max-height: 6rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #fff;
	background: #000000;
}
.nav-container a {
	color: #fff;
	text-decoration: none;
}
.navbar-brand {
	flex: 0 1 50vw;
}
.navbar-brand img {
	width: auto;
	max-height: 4rem;
}
.navbar-toggler {
	flex: 0 1 3rem;
	padding: 1.5rem 1rem;
	border-radius: 3px;
	z-index: 10000;
}
.navbar-toggler.fixed {
	position: fixed;
	top: 0.8rem;
	right: 1.5rem;
	background-color: #202020;
}
.navbar-toggle-icon {
	position: relative;
	display: block;
	height: 2px;
	width: 30px;
	background: #fff;
	-webkit-transition: ease 0.5s;
	transition: ease 0.5s;
}
.navbar-toggle-icon:nth-child(1) {
	top: 0;
}
.navbar-toggle-icon:nth-child(2) {
	margin: 8px 0;
}
.navbar-toggle-icon:nth-child(3) {
	top: 0;
}
.navbar-toggler.open .navbar-toggle-icon:nth-child(1) {
	top: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navbar-toggler.open .navbar-toggle-icon:nth-child(2) {
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	opacity: 0;
}
.navbar-toggler.open .navbar-toggle-icon:nth-child(3) {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* .navbar-toggler.fixed-top {
	mix-blend-mode: difference;
}
.navbar-toggler.fixed-top .navbar-toggle-icon {
	background: #333333;
} */

@media (max-width: 991px) {
	.navbar-collapse {
		position: fixed;
		top: 60px;
		left: 0;
		width: 100vw;
		background: #333;
		box-shadow:
		opacity: 0;
		transform: translateX(-110%);
		transition: all ease 0.5s;
		z-index: 1050 !important;
	}
	.navbar-collapse.open {
		opacity: 1;
		transform: translateX(0);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
	}
	ul.navbar-menu li {
		border-bottom: 1px solid #484848;
	}
	ul.navbar-menu li:last-of-type {
		border-bottom: 0 solid;
	}
	ul.navbar-menu li a {
		display: block;
		padding: 15px 0;
		font-size: 1.143em;
		font-weight: 500;
		text-align: center;
		outline: none;
		color: #fff;
	}
	ul.navbar-menu li a:hover,
	ul.navbar-menu li a:focus,
	ul.navbar-menu li a:active {
		color: #fff;
		text-decoration: none;
	}
	.navbar ul.sns-list {
		display: none;
	}
}
@media (min-width: 992px) {
	.nav-container {
		height: 14rem;
		max-height: 14rem;
	}
	.navbar-brand {
		flex: 0 1 120px;
		text-align: center;
	}
	.navbar-brand img {
		max-height: 80px;
	}
	.navbar-toggler {
		display: none;
	}
	.navbar-collapse {
		max-width: calc(100% - 200px);
		display: flex;
		justify-content: flex-end;
		align-items: center;
		transform: translateX(0);
	}
	ul.navbar-nav {
		display: flex;
		justify-content: flex-end;
		align-items: center;
	}
	ul.navbar-nav li {
		flex: 0 1 auto;
		margin: 0 12px;
	}
	ul.navbar-nav a {
		color: #fff;
	}
	ul.navbar-menu {
		/* font-size: 0.857em; */
		flex-wrap: wrap;
	}
	ul.navbar-menu a {
		position: relative;
		display: inline-block;
		padding: 10px 0;
		border-top: 3px solid transparent;
		border-bottom: 3px solid transparent;
		transition: all ease 0.5s;
	}
	ul.navbar-menu a:visited,
	ul.navbar-menu a:focus,
	ul.navbar-menu a:active {
		color: #fff;
		text-decoration: none;
		transition: all ease 0.5s;
	}
	ul.navbar-menu a:hover {
		color: #a9a9a9;
		text-decoration: none;
		transition: all ease 0.5s;
	}
	/* ボーダーラインアニメーション */
	ul.navbar-menu a::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0%;
		/*線の形状*/
		width: 100%;
		height: 3px;
		/*アニメーションの指定*/
		transition: all 0.3s;
		transform: scale(0, 1); /*X方向0、Y方向1*/
		transform-origin: left top;
	}
	ul.navbar-menu a.current::after {
		background: #ffffff;
		transform: scale(1, 1); /*X方向にスケール拡大*/
	}
	ul.navbar-menu a:hover::after {
		background: #a9a9a9;
		transform: scale(1, 1);
	}
}
/*	SNS List
----------------------------------------------------- */
ul.sns-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
ul.sns-list > li {
	line-height: 1;
	vertical-align: middle;
}

.navbar .sns-list li,
.footer-nav .sns-list li {
	flex: 0 1 auto;
	margin: 0 1.2rem;
}
.navbar .sns-list a,
.footer-nav .sns-list a {
	color: #fff;
}
.navbar .sns-list a img,
.footer-nav .sns-list a img {
	transition: all 0.3s;
}
.navbar .sns-list a:hover img,
.footer-nav .sns-list a:hover img {
	transform: scale(1.2);
	transition: all 0.3s;
}

.navbar .sns-list {
	justify-content: flex-end;
	margin-left: 40px;
}

.md-block .sns-list {
	margin: 4rem 0 6rem;
	justify-content: center;
}
.md-block .sns-list > li {
	margin: 0 1rem;
}
.md-block .sns-list > li a {
	color: #333;
}

.footer-nav .sns-list {
	flex-wrap: wrap;
	justify-content: center;
}

@media (max-width: 991px) {
	ul.sns-list a img {
		width: 30px;
		height: auto;
	}
}
@media (min-width: 992px) {
	ul.sns-list a img {
		width: 32px;
		height: auto;
	}
	.sns-line {
		display: none;
	}
}
/*	Footer
----------------------------------------------------- */
footer {
	padding: 4rem 1.5rem;
	background: #000000;
	color: #ffffff;
	text-align: center;
}
footer .logo {
	width: 10rem;/* 48px */
	margin: 0 auto;
}
footer .logo img {
	width: 100%;
	height: auto;
}
footer .copyright {
	margin-top: 30px;
}

@media (max-width: 991px) {
	footer {
		margin-top: 6rem;
	}
}
@media (min-width: 992px) {
	footer {
		margin-top: 10rem;
		padding: 6rem 1.5rem;
	}
	footer .logo {
		width: 12rem;
	}
}
ul.footer-menu {
	list-style: none;
	margin: 3rem 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
ul.footer-menu li {
	flex: 0 1 auto;
	margin: 0 8px;
}
ul.footer-menu a {
	color: #fff;
	text-transform: uppercase;
	transition: all ease 0.5s;
}
ul.footer-menu a:visited,
ul.footer-menu a:focus,
ul.footer-menu a:active {
	color: #fff;
	text-decoration: none;
	transition: all ease 0.5s;
}
ul.footer-menu a:hover {
	color: #a9a9a9;
	text-decoration: none;
	transition: all ease 0.5s;
}

@media (max-width: 991px) {
	ul.footer-menu a {
		font-size: 0.857em;
	}
}
@media (min-width: 992px) {
	ul.footer-menu li {
		margin: 0 12px;
	}
}
/*	Scroll button
----------------------------------------------------- */
.fixed-scroll-btn {
	position: fixed;
	bottom: 0;
	z-index: 900;
	cursor: pointer;
}
.fixed-scroll-btn .fa-stack {
	font-size: 1.5em;
}
.fixed-scroll-btn .fa-circle {
	color: rgba(102, 102, 102, 0.4);
}
.fixed-scroll-btn .fa-chevron-up {
	color: #ffffff;
}

@media (max-width: 991px) {
	.fixed-scroll-btn {
		right: 10px;
		padding-bottom: 15px;
	}
}
@media (min-width: 992px) {
	.fixed-scroll-btn {
		right: 30px;
		padding-bottom: 30px;
	}
}
/*	Main Visual
----------------------------------------------------- */
.main-header {
	position: relative;
}

@media (max-width: 991px) {
	.main-header {
		margin-bottom: 0rem;
	}
}
@media (min-width: 992px) {
	.main-header {
		margin-bottom: 0rem;
	}
}
.main-visual {
	position: relative;
}
.main-visual picture source,
.main-visual img {
	width: 100%;
	height: auto;
}

/*	Animation
----------------------------------------------------- */
.fade {
	transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
	.fade {
		transition: none;
	}
}
.fade:not(.show) {
	opacity: 0;
}

/*	Slick Slider
----------------------------------------------------- */
.home-slider .slick__inner img {
	width: 100%;
	height: auto;
}
.home-slider .slick-prev,
.home-slider .slick-next {
	top: 50% !important;
}

@media (max-width: 480px) {
	.home-slider {
		margin: 10px 0 40px;
	}
	.home-slider .slick__inner {
		padding: 10px;
	}
	.home-slider .slick-prev {
		left: 12%;
	}
	.home-slider [dir='rtl'] .slick-prev {
		right: 12%;
		left: auto;
	}
	.home-slider .slick-next {
		right: 12%;
	}
	.home-slider [dir='rtl'] .slick-next {
		right: auto;
		left: 12%;
	}
}
@media (min-width: 481px) {
	.home-slider {
		margin: 30px 0 90px;
	}
	.home-slider .slick__inner {
		padding: 10px 20px;
	}
	.home-slider .slick-prev {
		left: 27.2%;
	}
	.home-slider [dir='rtl'] .slick-prev {
		right: 27.2%;
		left: auto;
	}
	.home-slider .slick-next {
		right: 27.2%;
	}
	.home-slider [dir='rtl'] .slick-next {
		right: auto;
		left: 27.2%;
	}
}

/*	JS Text Effect
----------------------------------------------------- */
.text-effect {
	position: relative;
	opacity: 0;
}

.text-effect span {
	opacity: 0;
}

/*	Animation Sets
----------------------------------------------------- */
@-webkit-keyframes iconHoverB {
	0% {
		right: 10px;
	}
	50% {
		right: 6px;
	}
	100% {
		right: 10px;
	}
}
@keyframes iconHoverB {
	0% {
		right: 10px;
	}
	50% {
		right: 6px;
	}
	100% {
		right: 10px;
	}
}
@-webkit-keyframes iconHoverB_bg {
	0% {
		background-color: #fff;
	}
	100% {
		background-color: #fff;
	}
}
@keyframes iconHoverB_bg {
	0% {
		background-color: #fff;
	}
	100% {
		background-color: #fff;
	}
}
@-webkit-keyframes iconHoverA {
	0% {
		right: 9px;
	}
	50% {
		right: 5px;
	}
	100% {
		right: 9px;
	}
}
@keyframes iconHoverA {
	0% {
		right: 9px;
	}
	50% {
		right: 5px;
	}
	100% {
		right: 9px;
	}
}
@-webkit-keyframes iconHoverA_bg {
	0% {
		border-color: #fff;
	}
	100% {
		border-color: #fff;
	}
}
@keyframes iconHoverA_bg {
	0% {
		border-color: #fff;
	}
	100% {
		border-color: #fff;
	}
}
@-webkit-keyframes backbtnB {
	0% {
		left: 10px;
	}
	50% {
		left: 6px;
	}
	100% {
		left: 10px;
	}
}
@keyframes backbtnB {
	0% {
		left: 10px;
	}
	50% {
		left: 6px;
	}
	100% {
		left: 10px;
	}
}
@-webkit-keyframes backbtnA {
	0% {
		left: 9px;
	}
	50% {
		left: 5px;
	}
	100% {
		left: 9px;
	}
}
@keyframes backbtnA {
	0% {
		left: 9px;
	}
	50% {
		left: 5px;
	}
	100% {
		left: 9px;
	}
}
@-webkit-keyframes morebtn {
	0% {
		bottom: 9px;
	}
	50% {
		bottom: 5px;
	}
	100% {
		bottom: 9px;
	}
}
@keyframes morebtn {
	0% {
		bottom: 9px;
	}
	50% {
		bottom: 5px;
	}
	100% {
		bottom: 9px;
	}
}
@-webkit-keyframes linkfirebtnB {
	0% {
		right: -5px;
	}
	50% {
		right: -9px;
	}
	100% {
		right: -5px;
	}
}
@keyframes linkfirebtnB {
	0% {
		right: -5px;
	}
	50% {
		right: -9px;
	}
	100% {
		right: -5px;
	}
}
@-webkit-keyframes linkfirebtnA {
	0% {
		right: -6px;
	}
	50% {
		right: -10px;
	}
	100% {
		right: -6px;
	}
}
@keyframes linkfirebtnA {
	0% {
		right: -6px;
	}
	50% {
		right: -10px;
	}
	100% {
		right: -6px;
	}
}
@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(1turn);
		transform: rotate(1turn);
	}
}
@keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(1turn);
		transform: rotate(1turn);
	}
}
@-webkit-keyframes passingBox {
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@keyframes passingBox {
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@-webkit-keyframes passingImg {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes passingImg {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
/*	View All Button
----------------------------------------------------- */
@media (min-width: 992px) {
	.view-all-button {
		margin-top: 2rem;
	}
}
.arrow_button_link,
.arrow_button_icon,
.arrow_button_icon + span {
	display: inline-block;
	vertical-align: middle;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.arrow_button_link {
	width: auto;
}
.arrow_button_link .arrow_button_icon {
	position: relative;
	width: 32px;
	height: 32px;
	border: 1px solid #999;
	border-radius: 16px;
	transition: border-color 0.3s, background-color 0.75s;
}
.arrow_button_link .arrow_button_icon::before, .arrow_button_link .arrow_button_icon::after {
	position: absolute;
	display: block;
	content: "";
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.arrow_button_link .arrow_button_icon::before {
	top: 50%;
	right: 10px;
	width: 13px;
	height: 1px;
	background-color: #999;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.arrow_button_link .arrow_button_icon::after {
	width: 6px;
	height: 6px;
	right: 9px;
	top: calc(50% - 3px);
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.arrow_button_link .arrow_button_icon + span {
	margin-left: 8px;
	font-family: "dunbar-low" !important;
	font-weight: 600;
	color: #999;
}

.arrow_button_link:hover .arrow_button_icon {
	background-color: #89d6fe;
	border-color: #89d6fe;
}
.arrow_button_link:hover .arrow_button_icon::before {
	-webkit-animation: iconHoverB 0.5s ease-out 0.3s 1, iconHoverB_bg 0.5s ease-out 0.3s infinite;
	animation: iconHoverB 0.5s ease-out 0.3s 1, iconHoverB_bg 0.5s ease-out 0.3s infinite;
}
.arrow_button_link:hover .arrow_button_icon::after {
	-webkit-animation: iconHoverA 0.5s ease-out 0.3s 1, iconHoverA_bg 0.5s ease-out 0.3s infinite;
	animation: iconHoverA 0.5s ease-out 0.3s 1, iconHoverA_bg 0.5s ease-out 0.3s infinite;
}
.arrow_button_link:hover .arrow_button_icon + span {
	color: #89d6fe;
}

.arrow_button_link_prev .arrow_button_icon::before {
	left: 10px;
	right: auto;
}
.arrow_button_link_prev .arrow_button_icon::after {
	left: 9px;
	right: auto;
	border-left: 1px solid #89d6fe;
	border-right: none;
	transform: rotate(45deg);
}

.arrow_button_link_prev:hover .arrow_button_icon::before {
	-webkit-animation: backbtnB 0.5s ease-out 0.3s 1, iconHoverB_bg 0.5s ease-out 0.3s infinite;
	animation: backbtnB 0.5s ease-out 0.3s 1, iconHoverB_bg 0.5s ease-out 0.3s infinite;
}
.arrow_button_link_prev:hover .arrow_button_icon::after {
	-webkit-animation: backbtnA 0.5s ease-out 0.3s 1, iconHoverA_bg 0.5s ease-out 0.3s infinite;
	animation: backbtnA 0.5s ease-out 0.3s 1, iconHoverA_bg 0.5s ease-out 0.3s infinite;
}

/*	Section Styles
----------------------------------------------------- */
.home-section,
.home-section-title,
.home-section-body {
	position: relative;
}

.home-section-title {
	margin-bottom: 3rem;
}

.section-title {
	font-family: "dunbar-low", sans-serif;
	font-size: 2.571em;
	font-weight: 600;
	line-height: 1;
	font-style: italic;
	text-transform:uppercase;
}

.text-center {
	text-align: center;
}

@media (max-width: 991px) {
	.home-section {
		margin-bottom: 6rem;
		padding: 6rem 0 0;
	}
	.home-section .section-title {
		text-align: center;
		font-size: 2em;
	}
	.home-section .view-all-button {
		text-align: center;
		margin-top: 2rem;
	}
	.section-side-margin {
		margin-left: 15px;
		margin-right: 15px;
	}
}
@media (min-width: 992px) {
	.home-section {
		width: 100%;
		max-width: 900px;
		margin: 0 auto 10rem;
		padding: 10rem 0 0;
	}
	.home-section-title {
		margin-bottom: 5rem;
	}
	.section-title {
		font-size: 3.429em;
	}
}
/*	NO List style
----------------------------------------------------- */
.profile-body ul,
.news-body ul,
.news-article ul,
.music-body ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.no-list-style {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.no-list-style > li {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

/*	News (Home)
----------------------------------------------------- */
.home-news {
	position: relative;
	display: flex;
}
	.home-news .view-all-button {
		text-align: center;
	}

@media (max-width: 991px) {
	.home-news {
		margin: 3rem 2rem 5rem;
		flex-direction: column;
	}
	.home-news .home-section-title {
		margin-bottom: 2rem;
	}
}
@media (min-width: 992px) {
	.home-news {
		margin: 13rem auto 10rem;
		justify-content: space-between;
	}
	.home-news .home-section-title {
		flex: 0 1 20%;
	}
	.home-news .home-section-body {
		flex: 0 1 75%;
	}
}
/*	Music (Home)
----------------------------------------------------- */
.music-list-block {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

@media (max-width: 768px) {
	.music-list-block {
		justify-content: space-between;
		margin: 15px 0 0 !important;
	}
	.music-list {
		flex: 0 1 48%;
		margin-bottom: 4% !important;
	}
	.music-list img {
		width: 100%;
		height: auto;
	}
}
@media (min-width: 769px) {
	.music-list-block {
		margin: 0 -1% !important;
	}
	.music-list {
		flex: 0 1 23%;
		overflow: hidden;
		margin: 0 1% 2% 1% !important;
	}
	.music-list img {
		display: block;
		width: 100%;
		height: auto;
		transition-duration: 0.3s;
	}
	.music-list a:hover img {
		transform: scale(1.05);
		transition-duration: 0.3s;
	}
}
/*	Schedule (Home)
----------------------------------------------------- */
.home-schedule .schedule-body iframe {
	width: 100%;
	height: 500px;
}

@media (min-width: 992px) {
	.home-schedule .schedule-body iframe {
		height: 600px;
	}
}


/*	Page Styles
----------------------------------------------------- */
main.main {
	padding: 20px 15px 0;
}
@media (min-width: 992px) {
	main.main {
		width: 1024px;
		margin: 0 auto;
		padding: 40px 0 0;
	}
}
@media (min-width: 1220px) {
	main.main {
		padding: 50px 0 0;
	}
}
body.home main.main {
	width: 100%;
	padding: 0;
}

.page-section-title {
	margin-bottom: 2.5rem;
}
.page-section-title.smaller {
	margin-bottom: 1rem;
}
.page-section-title.smaller .section-title {
	font-size: 1.714em;
}
.page-section-title > p {
	margin: 0;
}
@media (min-width: 992px) {
	.page-section-title {
		margin: 0 0 4rem;
	}
	body.page-template-default .page-section-title {
		margin-bottom: 5em;
	}
	.page-section-title.smaller {
		margin-bottom: 2rem;
	}
	.page-section-title.smaller .section-title {
		font-size: 2.857em;
	}
}


/*	News (archive)
----------------------------------------------------- */
/*@keyframes bgShine {
	0% {
		background-color: #C6E7FF;
	}
	100% {
		background-color: #ffffff;
	}
}
*/
.news-list {
	position: relative;
}
.news-list > a {
	display: block;
	width: 100%;
	padding: 10px 0;
	border-bottom: 1px solid #dcdcdc;
	color: #151515;
	overflow: hidden;
}
.news-list > a:hover {
	border-bottom: 1px solid transparent;
	text-decoration: none;
	color: #151515;
}

@media (min-width: 992px) {
	.news-article {
		min-height: 70vh;
	}
/*	.news-list {
		padding: 0 20px !important;
	}
	.news-list:hover {
		animation: bgShine 1s;
	}
	.news-list > a {
		padding: 15px 0;
	}*/
	.news-list {
		padding: 0 20px !important;
		transition: all .3s;
	}
	.news-list:hover {
		box-shadow: 0 0 30px 1px #ccc;
		transition: all .3s;
	}
	.news-list > a {
		padding: 15px 0;
	}
}

.news-heading {
	margin: 0;
}
.news-heading dt {
	margin-bottom: 0.5rem;
	font-family: "dunbar-low", sans-serif !important;
	font-weight: 600;
	font-style: italic;
}
.news-heading dt span {
	vertical-align: middle;
}
.news-heading .badge {
	display: inline-block;
	margin-left: 20px;
	padding: 2px 15px 3px;
	border-radius: 15px;
	line-height: 1.0;
	font-weight: 500;
}
.news-heading .badge.new {
	background: #f36;
	color: #fff;
}
.news-heading .badge.event {
	background: #ab33ff;
	color: #fff;
}

/*	News (single)
----------------------------------------------------- */
.not-exist {
	margin: 50px 0;
	text-align: center;
}
@media (min-width: 992px) {
	.not-exist {
		margin: 100px 0;
	}
}
.news-article.single img {
	width: 100%;
	height: auto;
}
.news-article.single .news-heading {
	margin-bottom: 30px;
}
.news-article.single .news-heading dt {
	padding: 0 0 .5em;
	border-bottom: 1px solid #333;
}
.news-article.single .news-heading dd {
	margin-top: 1em;;
	font-size: 1.286em;
	font-weight: 700;
}
.news-article.single .news-image {
	margin: 30px 0 40px;
}
.news-back-button {
	margin-top: 50px;
}

@media (min-width: 992px) {
	.news-article.single .page-section-title {
		margin-left: 0;
	}
	.news-article.single .news-heading {
		margin-bottom: 40px;
	}
	.news-article.single .news-heading dd {
		font-size: 1.429em;
	}
	.news-article.single .news-image {
		margin: 40px 0;
	}
	.news-back-button {
		margin-top: 80px;
	}
}


/* ビジュアルエディターのクラス */
.news-article em {
	font-style: normal;
	font-weight: bold;
}
.news-article .wp-block-group {
	margin-top: 2em;
	margin-bottom: 2em;
}
.news-article .wp-block-heading {
	margin-top: 2em;
	margin-bottom: 2em;
}
.news-article h1.wp-block-heading {
	font-size: 2em;
}
.news-article h2.wp-block-heading {
	font-size: 1.5em;
}
.news-article h3.wp-block-heading {
	font-size: 1.17em;
}
.news-article h4.wp-block-heading {
	font-size: 1em;
}
.news-content ul.wp-block-list {
	list-style-type: disc;
	margin: 1em 0;
	padding-left: 4rem;
}

.has-red-color.has-text-color {
	color: red;
}
.has-blue-color.has-text-color {
	color: blue;
}
.has-pink-color.has-text-color {
	color: #ff68a7;
}
.has-gray-color.has-text-color {
	color: gray;
}

/* News カスタムクラス */
.padding20 {
	padding: 2rem;
}

.news-block {
	margin-bottom: 2.0rem;
	padding: 2.8rem;
	font-size: 1.6rem;
	font-weight: bold;
}
.news-block.navy {
	background-color: #162785;
	color: #ffffff;
}
.news-block.royalblue {
	background-color: #4169E1;
	color: #ffffff;
}
.news-block.azur {
	background-color: #008BC2;
	color: #ffffff;
}
.news-block.sky {
	background-color: #a0e9ff;
}
.news-block.orange {
	background: linear-gradient(125deg,rgba(255, 193, 130, 1) 0%, rgba(255, 243, 201, 1) 100%);
}
.news-block.yellow {
	background: linear-gradient(125deg,rgba(255, 252, 214, 1) 0%, rgba(255, 244, 199, 1) 100%);
}
.news-block.white {
	background: #ffffff;
	box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
}
.news-block.gray {
	background: linear-gradient(125deg, rgba(229, 229, 229, 1) 0%, rgba(249, 249, 249, 1) 100%);
}
.news-block.black {
	color: #fff;
	background: linear-gradient(35deg, rgba(30, 30, 30, 1) 0%, rgba(60, 60, 60, 1) 100%);
}
.box-shadow {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #eee;
	border-radius: 3px;
	box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.2);
	margin-bottom: 2.0rem;
	padding: 2.8rem;
}

/*	Profile (archive)
----------------------------------------------------- */
@keyframes slide-in-bottom {
	0% {
		-webkit-transform: translateY(50px);
		transform: translateY(50px);
		opacity: 0;
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
.profile-article {
	margin-bottom: 80px;
}
.profile-article:last-of-type {
	margin-bottom: 30px;
}

.profile-visual {
	margin-left: -15px;
	margin-right: -15px;
}
.profile-visual img {
	width: 100%;
	height: auto;
}
.profile-message {
	position: relative;
	text-align: center;
}
.profile-message-logo {
	margin: 2rem 0;
	opacity: 0;
	-webkit-animation: slide-in-bottom 1.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
	animation: slide-in-bottom 1.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}
.profile-message-logo img {
	width: auto;
	height: 30px;
}
.profile-message-head {
	margin: 2rem 0;
	opacity: 0;
	-webkit-animation: slide-in-bottom 1.5s 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
	animation: slide-in-bottom 1.5s 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}
.profile-message-head em {
	display: inlin-block;
	padding: .25em .75em .5em;
	font-size: 1.143em;
	font-style: normal;
	font-weight: bolder;
	background: #000;
	color: #fff;
	text-align: center;
}
.profile-message-text {
	opacity: 0;
	line-height: 1.8;
	-webkit-animation: slide-in-bottom 1.5s 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
	animation: slide-in-bottom 1.5s 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}
.profile-message-text u {
	text-decoration: none;
	padding-bottom: .25em;
	border-bottom: 2px dotted #999;
}
.profile-content {
	margin: 50px 0;
}
.profile-content h2 {
	padding: 0 0 10px;
	border-bottom: 1px solid #000;
	font-family: 'dunbar-low' !important;
	font-weight: 600;
	font-style: italic;
}
.profile-content .text {
	margin: 15px 0 15px 15px;
}

@media (min-width: 992px) {
	.profile-article {
		margin-bottom: 100px;
	}
	.profile-article:last-of-type {
		margin-bottom: 60px;
	}
	.profile-visual {
		margin-bottom: 80px;
	}
	.profile-message .profile-message-logo img {
		height: 60px;
	}
	.profile-message-head {
		margin: 40px 0;
	}
	.profile-message-head em {
		padding: 8px 20px 10px;
		font-size: 1.429em;
		letter-spacing: 1px;
	}
	.profile-message-text {
		font-size: 1.143em;
	}
	.profile-content {
		margin: 80px 0;
	}
	.profile-content h2 {
		padding: 0 0 15px;
		font-size: 1.429em;
	}
	.profile-content .text {
		margin: 30px 40px 120px;
		line-height: 1.8;
	}
}
@media (min-width: 1220px) {
	.profile-visual {
		margin: 0 0 80px;
	}
}

ul.member-list-block,
.member-sns,
.member-slider {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.member-list-block {
	display: flex;
	flex-wrap: wrap;
}
.member-list a,
.member__inner a {
	display: block;
	color: #151515;
	text-decoration: none;
	outline: none;
}
.member-photo img,
.member-sns a img {
	width: 100%;
	height: auto;
}
.member-name {
	padding: 8px 0 10px;
	text-align: center;
}
.member-sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.member-sns > li {
	flex: 0 1 32px;
	margin: 0 6px;
}
@media (max-width: 991px) {
	ul.member-list-block {
		justify-content: space-between;
	}
	.member-list {
		flex: 0 1 48%;
		margin-bottom: 30px;
	}
}
@media (min-width: 992px) {
	.member-list {
		flex: 0 1 24%;
		margin-bottom: 40px;
		margin-left: 1%;
	}
	.member-list:nth-child(4n+1) {
		margin-left: 0;
	}
	.member-photo {
		overflow: hidden;
	}
	.member-photo img {
		transition-duration: .3s;
	}
	.member-photo:hover img {
		transform: scale(1.1);
		transition-duration: .3s;
	}
	.member-sns a img {
		transition: all .3s;
	}
	.member-sns a:hover img {
		transform: scale(1.2);
		transition: all .3s;
	}
}
@media (min-width: 1220px) {
	.member-list {
		flex: 0 1 240px;
		margin-bottom: 40px;
		margin-left: 21px;
	}
}

/*	Profile (single)
----------------------------------------------------- */
@media (min-width: 992px) {
	body.single-profile .profile-article:first-of-type {
		margin-bottom: 120px;
	}
}
.profile-card {
	display: flex;
}
.profile-card .fa-heart {
	color: #f39;
}
.profile-photo img {
	width: 100%;
	height: auto;
}
.profile-color {
	height: 30px;
}
.profile-color.red {
	background: #f32128;
}
.profile-color.white {
	border: 1px solid #e6e6e6;
}
.profile-color.skyblue {
	background: #38beff;
}
.profile-color.orange {
	background: #ff8012;
}
.profile-color.pink {
	background: #ff4f92;
}
.profile-color.blue {
	background: #0456b7;
}
.profile-color.yellow {
	background: #f2e826;
}
.profile-color.purple {
	background: #7327ff;
}
.profile-color.green {
	background: #4dff33;
}

.profile-detail h1 span {
	vertical-align: middle;
}
.profile-detail h1 small {
	margin-left: 30px;
	color: #999;
	font-size: 0.786em;
	font-weight: normal;
	letter-spacing: 1px;
	vertical-align: middle;
}
.profile-detail h2 {
	margin-bottom: 1em;
	padding-bottom: .5em;
	border-bottom: 1px solid #000;
	font-size: 0.857em;
	font-family: 'dunbar-low', sans-serif;
	font-weight: 600;
	font-style: italic;
	letter-spacing: 1px;
}
.profile-data th {
	width: 6em;
	text-align: right;
	font-weight: normal;
	vertical-align: top;
}
.profile-caption {
	position: relative;
	margin: 3em 0;
	padding: .5em 1.5em;
}
.profile-caption:before,
.profile-caption:after {
	position: absolute;
	display: inline-block;
	content: '';
	width: 40px;
	height: 40px;
}
.profile-caption:before {
	top: 0;
	left: 0;
	border-left: solid 1px #000;
	border-top: solid 1px #000;
}
.profile-caption:after {
	bottom: 0;
	right: 0;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
}
.profile-sns {
	list-style: none;
	margin: 0;
	padding: 0;
}
.profile-sns li {
	margin: 0 0 10px;
	font-size: 0.857em;
}
.profile-sns a {
	color: #000;
}
.profile-sns a:hover {
	color: #808080;
	text-decoration: none;
}
.profile-sns li {
	margin: 0 0 10px;
	font-size: 0.857em;
}
.profile-sns img {
	width: 2em;
	height: auto;
	vertical-align: middle;
}

@media (max-width: 991px) {
	.profile-card {
		flex-direction: column;
	}
	.profile-detail {
		margin-top: 30px;
	}
	.profile-detail h1 {
		margin-bottom: 30px;
	}
	.profile-detail h1 span {
		font-size: 1.714em;
	}
}
@media (min-width: 992px) {
	.profile-card {
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
	}
	.profile-photo {
		flex: 0 1 420px;
	}
	.profile-color {
		height: 40px;
	}
	.profile-detail {
		flex: 0 1 440px;
	}
	.profile-detail h1 {
		margin-bottom: 70px;
	}
	.profile-detail h1 span {
		font-size: 2.143em;
	}
	.profile-caption {
		margin: 60px 0 40px;
		padding: 1em 2em;
	}
	.profile-caption:before,
	.profile-caption:after {
		width: 60px;
		height: 60px;
	}
}

/*	Biography (archive)
----------------------------------------------------- */
.biography-article {
	margin-bottom: 80px;
}
.biography-article:last-of-type {
	margin-bottom: 30px;
}
.biography-visual {
	margin-left: -15px;
	margin-right: -15px;
}
.biography-visual img {
	width: 100%;
	height: auto;
}
.biography-content {
	margin: 50px 0;
}
.biography-content h2 {
	padding: 0 0 10px;
	border-bottom: 1px solid #000;
	font-family: 'dunbar-low' !important;
	font-weight: 600;
	font-style: italic;
}
.biography-content .text {
	margin: 15px 0 15px 15px;
}
.biography-content .bio-year {
	margin-top: 2rem;
}
.biography-content .bio-year span {
	display: inline-block;
	padding: .2em .8em;
	line-height: 1.4;
	background: #000;
	color: #fff;
}
.biography-content dl {
	width: 100%;
	margin: 0 0 0 1rem;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	align-content: stretch;
}
.biography-content dt {
	flex: 0 1 auto;
	min-width: 4em;
	margin-right: 1em;
}
.biography-content dd {
	flex: 0 1 auto;
	width: auto;
}
@media (min-width: 992px) {
	.biography-article {
		margin-bottom: 100px;
	}
	.biography-visual {
		margin-bottom: 80px;
	}
	.biography-content {
		margin: 80px 0;
		line-height: 1.8;
	}
	.biography-content h2 {
		padding: 0 0 15px;
		font-size: 1.429em;
	}
	.biography-content .text {
		margin: 30px 40px;
		line-height: 1.8;
	}
}



/*	Contact
----------------------------------------------------- */
.wpcf7-form .hidden-fields-container {
	display: none;
}

.contact-steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.contact-steps .step {
	padding-bottom: 10px;
	border-bottom: 4px solid #a9a9a9;
	color: #a9a9a9;
	font-size: 1.286em;
	text-align: center;
}
.contact-steps .step-current {
	border-color: #333;
	color: #333;
	font-weight: 700;
}
@media (max-width: 991px) {
	.step {
		flex: 0 1 60px;
		margin: 0 8px;
	}
}
@media (min-width: 992px) {
	.step {
		flex: 0 1 144px;
		margin: 0 16px;
	}
}
.form-content {
	border-top: 1px solid #dcdcdc;
}
.form-content dt {
	font-weight: bold;
}
.form-content dd input[type=text],
.form-content dd input[type=email],
.form-content dd textarea {
	width: 100%;
	border: 1px solid #a9a9a9;
	border-radius: 6px;
	background: #f5f5f5;
	outline: none;
}
.form-content dd input[type=text]:focus,
.form-content dd input[type=email]:focus,
.form-content dd textarea:focus {
	border: 1px solid #2038ee;
}
.form-content.has-error dd input[type=text],
.form-content.has-error dd input[type=email],
.form-content.has-error dd textarea {
	background-color: #fde7e7 !important;
	border-color: #ec1010 !important;
}
.form-content dd input[type=radio] {
	margin-right:.5em;
}
.wpcf7-radio .wpcf7-list-item {
	margin-right: 2em;
}
.form-content dd select {
	width: 100%;
	padding: .5em;
}
.form-label {
	font-weight: bold;
}
.form-required {
	margin-left: 1.5rem;
	padding: 0.3em 0.5em;
	background: #ff0000;
	color: #fff;
}
.form-note {
	font-size: 0.857em;
	color: #666;
}
.form-error {
	font-size: 1.143em;
	font-weight: 700;
	color: #ff0000;
}
.form-button {
	display: flex;
	justify-content: center;
	/* align-items: center; */
	text-align: center;
}
.form-button p {
	margin-top: 0;
	margin-bottom: 0;
}
.form-button input[type=submit] {
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 1em;
	border: 0 none;
	border-radius: 3em;
	background: #00b9f0;
	color: #fff;
	line-height: 1;
	cursor: pointer;
	outline: none;
	transition: ease 0.3s;
}
.form-button input[type=submit]:hover {
	background: #336ed8;
}

.form-button .to-confirm {
	position: relative;
}
.form-button .to-confirm::after {
	position: absolute;
	content: "";
	top: 33%;
	right: 2.5rem;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
	transition: all 0.3s;
}
.form-button .to-confirm:hover::after {
	right: 2rem;
}

.form-button .modify input[type=button],
.form-button .backtoTop a {
	display: inline-block;
	width: 100%;
	padding: 1em;
	border: 1px solid #a9a9a9;
	border-radius: 3em;
	background: #fff;
	color: #999;
	line-height: 1;
	cursor: pointer;
	outline: none;
}
.form-button .backtoTop a:hover {
	text-decoration: none;
}

@media (max-width: 991px) {
	.contact-form-head {
		margin: 30px 0;
	}
	.form-content {
		margin-top: 30px;
		padding-top: 25px;
	}
	.form-content dt {
		margin-bottom: 8px;
	}
	.form-content dd input[type=text],
	.form-content dd input[type=email],
	.form-content dd textarea {
		padding: 1em;
	}
	.form-required {
		margin-left: 15px;
	}
	.form-button input[type=submit],
	.form-button input[type=button] {
		padding-left: 3em;
		padding-right: 3em;
	}
}
@media (min-width: 992px) {
	.contact-form-head {
		margin: 50px 0;
		text-align: center;
	}
	.form-content {
		margin-top: 50px;
		padding-top: 45px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.form-content dt {
		flex: 0 1 240px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.form-content dt .form-label {
		flex: 0 1 auto;
	}
	.form-content dt .form-required {
		flex: 0 1 auto;
	}
	.form-content dd {
		flex: 0 1 740px;
		font-size: 1.143em;
	}
	.form-content dd input[type=text],
	.form-content dd input[type=email],
	.form-content dd textarea {
		padding: 20px;
		font-size: inherit;
	}
	.form-note {
		padding-left: 280px;
	}
	.form-error {
		padding-left: 280px;
	}
	.form-button {
		margin: 50px auto 0;
	}
	.form-button input[type=submit],
	.form-button .modify input[type=button] {
		font-size: 1.429em;
	}
	.form-button .backtoTop a {
		font-size: 1.143em;
	}
	.form-button .to-confirm {
		flex: 0 1 20em;
		margin: 0;
	}
}
/* Confirm */
.contact-confirm-head {
	margin: 30px 0;
	padding: 30px;
	background: #f5f5f5;
	text-align: center;
}
.contact-confirm-head h2 {
	font-size: 1.286em;
	color: #ff0000;
}
.contact-complete-head {
	margin-top: 50px;
	padding: 30px;
	text-align: center;
}
.contact-complete-head h2 {
	font-size: 1.286em;
}
.contact-confirm-error {
	text-align: center;
	font-size: 1.286em;
	font-weight: bold;
	color: #ff0000;
}
@media (max-width: 991px) {
	.contact-form.confirm .form-button {
		margin-top: 4rem;
	}
	.contact-form.confirm .form-button .modify,
	.contact-form.confirm .form-button .to-thanks {
		flex: 0 1 40%;
	}
	.contact-form.confirm .form-button .modify {
		margin-right: 2rem;
	}
}
@media (min-width: 992px) {
	.contact-confirm-head {
		margin: 5rem 10rem;
	}
	.contact-confirm-error {
		font-size: 1.429em;
	}
	.contact-form.confirm .form-button .modify,
	.contact-form.confirm .form-button .to-thanks {
		flex: 0 1 24rem;
	}
	.contact-form.confirm .form-button .modify {
		margin-right: 3rem;
	}
	.contact-form.confirm .form-button .to-thanks {
		margin-left: 3rem;
	}
	.contact-complete-head h2 {
		font-size: 1.429em;
	}
}

/* エラーメッセージの上部を消去 */
div.screen-reader-response {
	display: none;
}
.wpcf7-not-valid-tip {
	color: #ff0000;
	font-weight: bold;
}
div.wpcf7-mail-sent-ok {
	background-color: #4ea629;
	color: #fff;
	font-weight: bold;
	padding: 1.2rem;
	border-radius: 10px;
}
div.wpcf7-mail-sent-ng {
	background-color: #ff0000;
	color: #fff;
	font-weight: bold;
	padding: 1.2rem;
	border-radius: 10px;
}
div.wpcf7-spam-blocked {
	background-color: #ffa500;
	color: #fff;
	font-weight: bold;
	padding: 1.2rem;
	border-radius: 10px;
}
div.wpcf7-validation-errors {
	background-color: #ff0000;
	color: #fff;
	font-weight: bold;
	padding: 1.2rem;
	border-radius: 10px;
}

/*	Contact, Entry Buttons
----------------------------------------------------- */
.fade-btn {
	text-align: center;
}
.fade-btn a {
	display: block;
	width: 100%;
	line-height: 1;
	text-decoration: none;
	transition: all 0.5s;
}
.fade-btn a:hover {
	transition: all 0.5s;
}

.fade-btn-dark a {
	border: 1px solid #fff;
	background-color: #333;
	color: #fff;
}
.fade-btn-dark a:hover {
	border: 1px solid #333;
	background-color: #fff;
	color: #333;
}

.fade-btn-light a {
	border: 1px solid #333;
	background-color: #fff;
	color: #333;
}
.fade-btn-light a:hover {
	border: 1px solid #333;
	background-color: #333;
	color: #fff;
}

.btn-more .fade-btn a {
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

@media (max-width: 991px) {
	.fade-btn a {
		padding: 1em 1.5em;
	}
	.btn-more .fade-btn a {
		font-size: 1.286em;
	}
}
@media (min-width: 992px) {
	.fade-btn {
		width: 30em;
		margin: 0 auto;
	}
	.fade-btn a {
		padding: 1em;
		font-size: 1.286em;
	}
	.btn-more .fade-btn {
		width: 24em;
	}
	.btn-more .fade-btn a {
		font-size: 1.5em;
	}
}
/*	Sub Pages
----------------------------------------------------- */
.sub-pages {
	position: relative;
	width: 100%;
}
.sub-pages .page-title {
	text-align: center;
}
.sub-pages .contents {
	line-height: 1.6;
}

@media (max-width: 991px) {
	.sub-pages {
		margin-top: 40px;
		background-size: 60% auto, 60% auto;
	}
	.sub-pages .container {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.sub-pages .page-title {
		margin-bottom: 15px;
		font-size: 1.286em;
	}
	.sub-pages .contents {
		padding: 15px;
	}
}
@media (min-width: 992px) {
	.sub-pages {
		margin-top: 80px;
		background-size: 566px 598px, 566px 598px;
	}
	.sub-pages .container {
		padding-top: 30px;
		padding-bottom: 60px;
	}
	.sub-pages .page-title {
		margin-bottom: 40px;
		font-size: 1.714em;
	}
	.sub-pages .contents {
		padding: 40px 60px;
	}
}

/*	Page (default)
----------------------------------------------------- */
.page-article {
	margin-bottom: 8rem;
}
.page-article:last-of-type {
	margin-bottom: 3rem;
}
.page-visual {
	margin-left: -15px;
	margin-right: -15px;
}
.page-visual img {
	width: 100%;
	height: auto;
}
.page-content {
	margin: 5rem 0;
}
.page-content h2 {
	padding: 0 0 1rem;
	border-bottom: 1px solid #000;
	font-family: 'dunbar-low' !important;
	font-weight: 600;
	font-style: italic;
}
.page-content .text {
	margin: 15px 0 15px 15px;
}

@media (min-width: 992px) {
	.page-article {
		margin-bottom: 10rem;
	}
	.page-article:last-of-type {
		margin-bottom: 6rem;
	}
	.page-visual {
		margin-bottom: 8rem;
	}
	.page-content {
		margin: 8rem 0 15rem;
	}
	.page-content h2 {
		padding: 0 0 15px;
		font-size: 1.429em;
	}
	.page-content .text {
		margin: 3rem 4rem;
		line-height: 1.8;
	}
}

/*	Page (single)
----------------------------------------------------- */

.page-article.single img {
	width: 100%;
	height: auto;
}
.page-article.single .page-heading {
	margin-bottom: 30px;
}
.page-article.single .page-heading dd {
	font-size: 1.286em;
	font-weight: 700;
}
.npage-article.single .page-image {
	margin: 30px 0 40px;
}

.page-back-button {
	margin-top: 50px;
}

@media (min-width: 992px) {
	.page-article.single .page-section-title {
		margin-left: 0;
	}
	.page-article.single .news-heading {
		margin-bottom: 40px;
	}
	.page-article.single .page-heading dd {
		font-size: 1.429em;
	}
	.page-article.single .page-image {
		margin: 40px 0;
	}

	.page-back-button {
		margin-top: 80px;
	}
}

/*	pagination
----------------------------------------------------- */
.wp-pagenavi {
	margin: 60px auto;
	text-align: center;
}
.wp-pagenavi .page {
	display: inline-block;
	text-align: center;
	width: 42px;
	line-height: 34px;
	border: 1px solid #999999 !important;
	border-radius: 21px;
	margin: auto 6px;
	transition: 0.3s ease-out;
	color: #333;
}
.wp-pagenavi .page:hover {
	color: #fff;
	background: #000000;
	border: 1px solid #000000;
	text-decoration: none;
}
.wp-pagenavi .current {
	display: inline-block;
	text-align: center;
	width: 42px;
	line-height: 34px;
	color: #fff;
	background: #484848;
	border: 1px solid #484848 #important;
	border-radius: 21px;
	margin: auto 6px;
}
.wp-pagenavi .extend {
	margin: auto 8px;
	color: #333;
	border: 0 none !important;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last {
	line-height: 42px;
	margin: auto 8px;
	transition: 0.3s ease-out;
	color: #333;
	background: #dcdcdc;
	border: 1px solid #dcdcdc #important;
}
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .first:hover,
.wp-pagenavi .last:hover {
	color: #66ffff;
	background: #000000;
	border: 1px solid #000000;
	text-decoration: none;
}
.wp-pagenavi .pages {
	border: 0 none;
}
