/*=========== Fonts =====================*/
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

@font-face {
	font-family: 'TSHA';
	src: url('../fonts/notincluded.eot?#iefix') format('embedded-opentype'), url('../fonts/notincluded.woff') format('woff'), url('../fonts/notincluded.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

/*=========== Base =====================*/
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	font: inherit;
	font-style: normal;
	font-weight: normal;
	font-weight: inherit;
	text-decoration: none;
	vertical-align: baseline;
	list-style: none;
	border: 0;
}
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
body{
	font-size: 16px;
	font-family: "Outfit", sans-serif;
}
.wcm{
	max-width: 1180px;
	width: 100%;
	padding: 0 20px;
	margin: 0 auto;
}

@font-face {
	font-family: 'tsha';
	src: url('../fonts/tsha.TTF') format('truetype')
}


/*=========== Header =====================*/
.header-inner{
	background: #041735;
	padding: 20px 50px;
	position: relative;
	
}
@media screen and (max-width: 767px) {
	.header-inner{
		padding: 10px 20px;
		-webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);
		-moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);
		box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);
	}
}
.header-inner-logo{
	max-width: 80px;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.header-inner-logo{
		max-width: 50px;
	}
}
.header-inner-logo img {
	max-width: 100%;
}
.header-inner-nav{
	display: flex;
	align-items: center;
	position: absolute;
	right: 50px;
	top: 50%;
	transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
	.header-inner-nav{
		width: 100%;
		justify-content: space-between;
		right: 0;
		padding: 0 20px;
	}
}
.header-inner-nav p:first-child{
	order: 2;
}
.header-inner-nav p:first-child a{
	width: 151px;
	display: block;
	color: #fff;
	text-transform: uppercase;
	background: #AE1738 url("../img/icon-arrow.png") no-repeat right 20px center;
	background-size: 14px 14px;
	padding: 10px 10px 10px 20px;
}
@media screen and (max-width: 767px) {
	.header-inner-nav p:first-child a{
		width: 101px;
		background: #AE1738 url("../img/icon-arrow.png") no-repeat right 5px center;
		background-size: 14px 14px;
		text-align: left;
		padding: 4px 5px 4px 5px;
	}
}
.header-inner-nav p:first-child a:hover{
	opacity: .65;
}
.header-inner-nav p:last-child {
	order: 1;
	margin-right: 20px;
}
.header-inner-nav p:last-child a{
	color: #fff;
	padding: 0 10px;
}
@media screen and (max-width: 767px) {
	.header-inner-nav p:last-child a{
		padding: 0;
	}
}
.header-inner-nav p:last-child a:hover{
	text-decoration: underline;
	text-underline-offset: 3px;
}
.header-slogan{
	padding: 16px 0;
	font-weight: bold;
	font-size: 24px;
	text-align: center;
	color: #223A5E;
	border-top: 7px solid #AE1738;
	border-bottom: 7px solid #AE1738;
}
@media screen and (max-width: 767px) {
	.header-slogan{
		border-width: 4px;
		font-size: 14px;
		padding: 9px 0;
	}
}

/*=========== footer =====================*/
.footer {
	background: #041735;
	padding: 50px 50px 0;
	border-top: 14px solid #AE1738;
}
@media screen and (max-width: 767px) {
	.footer {
		padding: 30px 20px 0;
		border-width: 7px;
	}
}
.footer-follow {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
	.footer-follow {
		margin-bottom: 30px;
	}
}
.footer-follow h2 {
	font-size: 32px;
	font-weight: bold;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.footer-follow h2 {
		font-size: 25px;
		margin-right: 20px;
	}
}
.footer-follow a {
	display: inline-block;
	margin-left: 25px;
}
@media screen and (max-width: 767px) {
	.footer-follow a {
		margin-left: 10px;
	}
}
.footer-follow a img {
	max-width: 50px;
}
@media screen and (max-width: 767px) {
	.footer-follow a img {
		max-width: 40px;
	}
}
.footer-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
	.footer-nav {
		margin-bottom: 20px;
	}
}
.footer-nav li {
	margin: 0 25px;
}
@media screen and (max-width: 767px) {
	.footer-nav li {
		margin: 0 15px;
	}
}
.footer-nav li a {
	font-size: 32px;
	font-weight: bold;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.footer-nav li a {
		font-size: 20px;
	}
}
.footer-copy {
	display: block;
	text-align: center;
	border-top: 1px solid #3A558A;
	padding: 15px 0;
	font-size: 12px;
	color: #fff;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.footer-copy {
		padding: 9px 0;
		font-size: 10px;
		letter-spacing: 0.02em;
	}
}
/*=========== Main =====================*/
section{

}
section h2{
	color: #AE1738;
	font-size: 70px;
	line-height: 1;
	font-family: 'tsha', serif;
	text-align: center;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	section h2 {
		font-size: 40px;
	}
}
.top-visual{
	background: #041735;
	padding: 80px 100px;
	border-bottom: 14px solid #AE1738;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.top-visual{
		padding: 25px 22px;
		border-bottom: 7px solid #AE1738;
	}
}
.top-visual h1{
	color: #fff;
	font-size: 10vw;
	font-family: 'tsha', serif;
}
@media screen and (max-width: 1024px) {
	.top-visual h1 {
		font-size: 8vw;
	}
}
.top-visual p{
	width: 41%;
}
@media screen and (max-width: 767px) {
	.top-visual p{
		display: none;
	}
}
.top-visual p img{
	width: 100%;
	display: block;
}
.top-visual h1{
	width: 59%;
	padding-right: 30px;
}
@media screen and (max-width: 767px) {
	.top-visual h1{
		display: none;
	}
}
.top-visual h1 img{
	width: 100%;
	display: block;
}
.top-visual_sp {
	display: none;
}
.top-visual_sp img {
	width: 100%;
}
@media screen and (max-width: 767px) {
	.top-visual_sp {
		display: block;
	}
}
.yamato-cup-top {
    width: 100vw;
    height: calc(100vw * 0.5); /* Height scales proportionally with the viewport width */
    padding: 0 0 0 10vw;
    background: #AE1738;
    background-image: url('/images/yamato_cup_monster_for_web.png');
    background-position: right;
    background-size: auto 100%;
    background-repeat: no-repeat;
    border-bottom: 14px solid #041735;
    display: flex;
    align-items: center;
}

.yamato-cup-top h1 {
    color: #fff;
    font-size: 10vw;
    font-family: 'tsha', serif;
}

/* About */
.sec-about{
	padding: 0 100px;
	max-width: 1340px;
	width: 95%;
	margin: 100px auto;
	line-height: 1.4;
	background: url("../img/bg-about.png") no-repeat center;
	background-size: 100% 100%;
}
@media screen and (max-width: 1024px) {
	.sec-about {
		padding: 0 60px;
	}
}
@media screen and (max-width: 767px) {
	.sec-about{
		padding: 0 36px;
		border-width: 7px;
		margin: 20px auto;
		background: url("../img/bg-about-sp.png") no-repeat center;
		background-size: 100% 100%;
	}
}

.sec-about h2{
	padding-top: 110px;
	margin-bottom: 25px;
	text-align: left;
}
@media screen and (max-width: 767px) {
	.sec-about h2{
		padding-top: 70px;
		margin-bottom: 0;
	}
}
.sec-about h2 img{
	max-width: 502px;
	width: 100%;
}
@media screen and (max-width: 767px) {
	.sec-about h2 img{
		max-width: 126px;
		display: block;
		margin: 0 auto;
	}
}
.sec-about__cont{
	display: flex;
	padding-bottom: 110px;
}
@media screen and (max-width: 767px) {
	.sec-about__cont {
		display: block;
		padding-bottom: 50px;
	}
}
.sec-about__cont__desc{
	width: calc(100% - 561px);
	padding-right: 70px;
}
@media screen and (max-width: 1100px) {
	.sec-about__cont__desc {
		width: 50%;
		padding-right: 30px;
	}
}
@media screen and (max-width: 767px) {
	.sec-about__cont__desc{
		width: 100%;
		padding-right: 0;
	}
}
.sec-about__cont__desc p {
	font-size: 21px;
	text-align: justify;
}
@media screen and (max-width: 767px) {
	.sec-about__cont__desc p {
		font-size: 15px;
	}
}
.sec-about__cont__desc p + p{
	margin-top: 30px;
}
@media screen and (max-width: 767px) {
	.sec-about__cont__desc p+p {
		margin-top: 10px;
	}
}
.sec-about__cont__thumb{
	width: 561px;
}
@media screen and (max-width: 1100px) {
	.sec-about__cont__thumb {
		width: 50%;
	}
}
@media screen and (max-width: 767px) {
	.sec-about__cont__thumb{
		width: 100%;
		margin-top: 10px;
	}
}
.sec-about__cont__thumb img{
	display: block;
	width: 100%;
}


/* What */
.sec-what{
	padding: 100px 0;
	background: #041735 url("../img/bg-common.png") no-repeat center;
	background-size: 929px auto;
	border-top: 14px solid #AE1738;
	border-bottom: 14px solid #AE1738;
}
@media screen and (max-width: 767px) {
	.sec-what{
		background-size: 87% auto;
		padding: 40px 0;
		border-width: 7px;
	}
}

.sec-what > * {
	max-width: 1140px;
	margin: 0 auto;
	width: 95%;
}
@media screen and (max-width: 767px) {
	.sec-what > * {
		max-width: 100%;
		padding: 0 20px;
	}
}
.sec-what h2{
	margin-bottom: 30px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.sec-what h2{
		margin-bottom: 20px;
	}
}
.sec-what h2 img{
	display: block;
	max-width: 895px;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-what h2 img {
		max-width: 300px;
	}
}
.sec-what p{
	color: #fff;
	font-size: 24px;
}
@media screen and (max-width: 767px) {
	.sec-what p{
		font-size: 16px;
		text-align: justify;
	}
}
.sec-what p + p{
	margin-top: 25px;
}
@media screen and (max-width: 767px) {
	.sec-what p + p{
		margin: 25px auto;
	}
}
.sec-what img{
	display: block;
	max-width: 640px;
	width: 100%;
	margin: 18px auto;
}

/* Schedule */
.sec-schedule{
	padding: 135px 0 0;
	margin-bottom: 150px;
}

@media screen and (max-width: 767px) {
	.sec-schedule{
		width: 60%;
		padding: 50px 10px 40px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 660px) {
	.sec-schedule {
		width: 72%;
	}
}
@media screen and (max-width: 520px) {
	.sec-schedule {
		width: 92%;
	}
}
@media screen and (max-width: 420px) {
	.sec-schedule {
		width: 100%;
	}
}
.sec-schedule h2{
	margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
	.sec-schedule h2{
		margin-bottom: 20px;
	}
}
.sec-schedule h2 img{
	max-width: 376px;
	width: 100%;
	display: block;
	margin: 0 auto 50px;
}
@media screen and (max-width: 767px) {
	.sec-schedule h2 img{
		max-width: 129px;
		margin: 0 auto;
	}
}
.sec-schedule__desc{
	text-align: center;
	margin-bottom: 40px;
	font-size: 16px;
	letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
	.sec-schedule__desc {
		margin-bottom: 25px;
	}
	.sec-schedule__desc p + p {
		margin-top: 15px;
	}
}
.sec-schedule__desc strong{
	color: #223A5E;
	font-weight: bold;
}
.sec-schedule__list{
	max-width: 640px;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 100px;
	border-bottom: 1px solid rgba(174,23,56,.4);
}
@media screen and (max-width: 767px) {
	.sec-schedule__list {
		max-width: 100%;
		padding-bottom: 30px;
	}
}
.sec-schedule__list .lbl{
	font-weight: bold;
	font-size: 32px;
	color: #fff;
	background: #AE1738;
	text-align: center;
	margin-bottom: 15px;
	padding: 10px 0;
}
@media screen and (max-width: 767px) {
	.sec-schedule__list .lbl {
		font-size: 18px;
		margin: 10px 0;
	}
}
.sec-schedule__list li{
	color: #fff;
	background: #041735;
	padding: 16px 20px;
	font-size: 20px;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	.sec-schedule__list li {
		padding: 10px 7px;
		font-size: 13px;
	}
}
.sec-schedule__list li + li{
	margin-top: 15px;
}
@media screen and (max-width: 767px) {
	.sec-schedule__list li+li {
		margin-top: 8px;
	}
}
.sec-schedule__list li strong{
	display: inline-block;
	width: 42%;
	font-size: 24px;
	font-weight: 500;
}
@media screen and (max-width: 767px) {
	.sec-schedule__list li strong {
		width: 34%;
		font-size: 15px;
	}
}
.sec-schedule__list li s{
	width: 45%;
	height: 66px;
	position: absolute;
	right: 0;
	top: 0;
	background: #AE1738;
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
@media screen and (max-width: 767px) {
	.sec-schedule__list li s {
		font-size: 13px;
		width: 52%;
		height: 41px;
	}
}
.sec-schedule__slide {
	border-bottom: 1px solid #ccc;
	padding-bottom: 50px;
}
.sec-schedule__slide__box {
	margin: 0 15px;
	width: 76px;
	height: 76px;
	background: #041735;
	text-align: center;
	color: #fff;
	padding: 5px;
}
.sec-schedule__slide__box p {
	font-size: 14px;
}
.sec-schedule__slide__box strong {
	font-size: 20px;
	font-weight: 600;
	color:#AE1738;
	display: block;
}
.sec-schedule__slide__box small {
	font-size: 12px;
}
.sec-schedule__slide .slick-arrow {
	width: 30px;
	height: 30px;
	position: absolute;
	top: calc(50% - 45px);
	color: transparent;
	background: url(../img/arrow.png) no-repeat;
	background-size: contain;
}
.sec-schedule__slide .slick-next {
	right: -30px;
}
.sec-schedule__slide .slick-prev {
	left: -30px;
	transform: rotate(-180deg);
}

/* Location */
@media screen and (max-width: 767px) {
	.sec-location {
		padding: 0 15px 20px;
	}
}
.sec-location h2,
.sec-location__box{
	max-width: 736px;
	width: 95%;
	margin: 0 auto;
}

.sec-location h2 img{
	max-width: 348px;
	display: block;
	margin: 0 auto 48px;
}
@media screen and (max-width: 767px) {
	.sec-location h2 img{
		max-width: 120px;
		margin: 0 auto 15px;
	}
}
.sec-location__box{
	margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
	.sec-location__box{
		margin-bottom: 20px;
	}
}
.sec-location__box__desc{
	background: url("../img/bg-location.png") no-repeat top center;
	background-size: 100% 100%;
	padding: 30px 50px;
	font-size: 16px;
	line-height: 1.4;
	letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
	.sec-location__box__desc{
		background: none;
		-webkit-box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
		-moz-box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
		box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
		padding: 20px;
	}
}
.sec-location__box__desc h3{
	font-size: 32px;
	font-weight: bold;
	color: #223A5E;
	text-transform: uppercase;
}
@media screen and (max-width: 767px) {
	.sec-location__box__desc h3{
		font-size: 18px;
		margin-bottom: 10px;
	}
}
.sec-location__box__desc a{
	color: #223A5E;
	text-decoration: underline;
}
.sec-location__box__desc p +p{
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	.sec-location__box__desc p+p {
		margin-top: 10px;
	}
}
.sec-location__box__thumb{
	position: relative;
}
.sec-location__box__thumb:before{
	content: "";
	display: block;
	padding-top: 65%;
}
@media screen and (max-width: 767px) {
	.sec-location__box__thumb:before {
		padding-top: 56.25%;
	}
}
.sec-location__box__thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.yamato_cup_cover_image img {
	top: 0;
	left: 0;
	width: 100%;
}


/* Price */
.sec-price{
	padding: 140px 0 0;
	background: #041735 url("../img/bg-common.png") no-repeat center;
	background-size: 740px auto;
	border-top: 14px solid #AE1738;
	border-bottom: 14px solid #AE1738;
}
@media screen and (max-width: 767px) {
	.sec-price{
		padding: 60px 20px 50px;
		background: #041735;
		border-width: 7px;
	}
}
.sec-price > *{
	max-width: 1140px;
	margin: 0 auto;
	width: 95%;
}
 @media screen and (max-width: 850px) { 
	.sec-price--list--pc{
		width: 95%;
	}
} 
.sec-price h2{
	margin-bottom: 20px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.sec-price h2{
		margin-bottom: 20px;
	}
}
.sec-price h2 img{
	max-width: 225px;
	display: block;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-price h2 img{
		max-width: 75px;
	}
}
.sec-price ul{
	background: #fff;
	padding: 35px;
	display: flex;
}
@media screen and (max-width: 767px) {
	.sec-price ul {
		display: block;
		padding: 30px 20px 15px;
	}
}
.sec-price ul li{
	width: 33.33%;
	text-align: center;
	border-right: 1px solid rgba(0, 0, 0, .1);
}
@media screen and (max-width: 767px) {
	.sec-price ul li {
		width: 100%;
		margin-bottom: 15px;
		padding-bottom: 15px;
		border-right: none;
		border-bottom: 2px dashed rgba(0, 0, 0, .1);
	}
}
.sec-price ul li:last-child{
	border-right: none
}
.sec-price ul li:first-child{
	width: 35%;
}
@media screen and (max-width: 767px) {
	.sec-price ul li:first-child {
		width: 100%;
	}
}
.sec-price ul li:first-child p{
	text-align: left;
}
@media screen and (max-width: 1120px) {
	.sec-price ul li:first-child p {
		text-align: center;
	}
}
.sec-price p{
	font-size: 32px;
	padding: 15px 30px 15px 0;
	color: #223A5E;
	border-bottom: 1px solid rgba(0,0,0,.1);
	font-weight: bold;
	margin-bottom: 15px;
}
@media screen and (max-width: 1120px) {
	.sec-price p {
		font-size: 26px;
		padding-right: 0;
	}
}
@media screen and (max-width: 767px) {
	.sec-price p {
		font-size: 25px;
		margin-bottom: 5px;
		padding: 0;
		border-bottom: none;
	}
}
.sec-price--list--pc li{
	font-size: 32px;
	color: #223A5E;
}
@media screen and (max-width: 1120px) {
	.sec-price--list--pc li {
		font-size: 26px;
	}
}
@media screen and (max-width: 767px) {
	.sec-price--list--pc li {
		font-size: 25px;
	}
}
.sec-price--list--pc li strong{
	color: #AE1738;
}
.sec-price--list--pc li strong span{
	display: block;
	font-weight: bold;
}
.sec-price--list--pc li .pt-25{
	display: block;
	padding-top: 25px;
}
@media screen and (max-width: 767px) {
	.sec-price--list--pc li .pt-25 {
		padding-top: 0;
	}
}
p.sec-price__bot{
	max-width: 892px;
	width: 100%;
	margin: 0 auto 140px;
	color: #fff;
	background: #AE1738;
	font-size: 24px;
	text-align: center;
	font-weight: 400;
	padding: 13px 0;
}
 @media screen and (max-width: 850px) {
	p.sec-price__bot {
		width: 95%;
		padding: 10px;
	}
 }
@media screen and (max-width: 767px) {
	p.sec-price__bot {
		padding: 8px 10px;
		font-size: 16px;
		margin-bottom: 10px;
	}
}
p.sec-price__bot strong{
	font-weight: 700;
}
/* Bring */
.sec-bring{
	max-width: 1140px;
	width: 95%;
	margin: 0 auto 150px;
	padding: 135px 0 130px;
	position: relative;
}
@media screen and (max-width: 767px) {
	.sec-bring {
		padding: 60px 20px 30px;
		margin-bottom: 50px;
	}
}

.sec-bring:after {
	content: "";
	width: 640px;
	height: 1px;
	background: rgba(174, 23, 56, .4);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
	.sec-bring:after {
		width: calc(100% - 30px);
	}
}
.sec-bring h2{
	margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
	.sec-bring h2 {
		margin-bottom: 5px;
	}
}
.sec-bring h2 img{
	max-width: 595px;
	display: block;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-bring h2 img {
		max-width: 260px;
	}
}
.sec-bring p{
	margin-bottom: 18px;
}
@media screen and (max-width: 767px) {
	.sec-bring p {
		margin-bottom: 20px;
	}
}
.sec-bring .ttl{
	display: block;
	font-size: 32px;
	line-height: 1.3;
	font-weight: bold;
	color: #223A5E;
}
@media screen and (max-width: 767px) {
	.sec-bring .ttl {
		font-size: 20px;
	}
}
.sec-bring strong.ttl{
	margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
	.sec-bring strong.ttl {
		margin-bottom: 5px;
	}
	.sec-bring p.ttl {
		margin-bottom: 5px;
	}
}

/* Safety */
.sec-safety{
	margin-bottom: 90px;
	max-width: 1140px;
	margin: 0 auto;
	width: 95%;
}
@media screen and (max-width: 767px) {
	.sec-safety {
		margin-bottom: 50px;
	}
}

.sec-safety h2 img {
	max-width: 280px;
	display: block;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-safety h2 img {
		max-width: 140px;
	}
}
.sec-safety p{
	text-align: center;
	max-width: 750px;
	color: #223A5E;
	margin: 0 auto 70px;
	font-size: 32px;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.sec-safety p {
		font-size: 20px;
		margin-bottom: 30px;
	}
}
.sec-safety__cont{
	display: flex;
	flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
	.sec-safety__cont {
		display: block;
	}
}
.sec-safety ul{
	width: 50%;
	padding-left: 45px;
}
@media screen and (max-width: 767px) {
	.sec-safety ul {
		width: 100%;
		padding-left: 0;
	}
}
.sec-safety ul:first-child{
	padding-left: 0;
	padding-right: 45px;
}
@media screen and (max-width: 767px) {
	.sec-safety ul:first-child {
		padding-right: 0;
	}
}
.sec-safety ul li{
	margin-bottom: 60px;
	color: #223A5E;
	font-size: 32px;
	font-weight: bold;
	position: relative;
	padding-left: 70px;
}
@media screen and (max-width: 767px) {
	.sec-safety ul li {
		font-size: 24px;
		margin-bottom: 30px;
		padding-left: 60px;
	}
}
.sec-safety ul li:before{
	content: "";
	position: absolute;
	top: 0;
}
@media screen and (max-width: 767px) {
	.sec-safety ul li:before {
		top: 9px;
	}
}
li.one-item:before {
	width: 22px;
	height: 100%;
	left: 10px;
	background: url("../img/one.png") no-repeat center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	li.one-item:before {
		width: 18px;
		height: 50px;
	}
}
li.two-item:before {
	width: 42px;
	height: 100%;
	left: 5px;
	background: url("../img/two.png") no-repeat center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	li.two-item:before {
		width: 33px;
		margin-top: -9px;
	}
}
li.three-item:before {
	width: 42px;
	height: 65px;
	left: 5px;
	background: url("../img/three.png") no-repeat center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	li.three-item:before {
		width: 38px;
		height: 50px;
	}
}
li.four-item:before {
	width: 42px;
	height: 65px;
	left: 5px;
	background: url("../img/four.png") no-repeat center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	li.four-item:before {
		width: 38px;
		height: 50px;
	}
}
li.five-item:before {
	width: 42px;
	height: 65px;
	left: 5px;
	background: url("../img/five.png") no-repeat center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	li.five-item:before {
		width: 38px;
		height: 50px;
	}
}

.sec-safety ul p{
	font-size: 16px;
	color: #000;
	font-weight: 400;
	text-align: left;
}
@media screen and (max-width: 767px) {
	.sec-safety ul p {
		margin: 5px 0 0;
	}
}

/* Rules */
.sec-rules {
	padding: 80px 0 50px;
	background: #041735;
	border-top: 14px solid #AE1738;
	border-bottom: 14px solid #AE1738;
}
@media screen and (max-width: 767px) {
	.sec-rules {
		padding: 40px 20px 50px;
		border-width: 7px;
	}
}
.sec-rules__inner {
	max-width: 832px;
	margin: 0 auto;
	background: url("../img/bg-rule.png") no-repeat center;
	background-size: 100% 100%;
	padding: 75px 48px 80px;
}
@media screen and (max-width: 767px) {
	.sec-rules__inner {
		background: url("../img/bg-rule-sp.jpg") no-repeat center;
		background-size: 100% 100%;
		padding: 40px 20px 30px;
		max-width: 416px;
	}
}
.sec-rules h2 {
	margin: 30px 0 0;
}
@media screen and (max-width: 767px) {
	.sec-rules h2 {
		margin: 15px 0 0;
	}
}
.sec-rules h2 img {
	max-width: 238px;
	display: block;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-rules h2 img {
		max-width: 119px;
	}
}
.sec-rules ul {
	list-style-type: disc;
	padding: 0 30px;
}
@media screen and (max-width: 767px) {
	.sec-rules ul {
		padding: 0 0 0 20px;
	}
}
.sec-rules ul li {
	list-style-type: disc;
	margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
	.sec-rules ul li {
		font-size: 16px;
		margin-bottom: 15px;
	}
}
.sec-rules img {
	display: block;
	max-width: 80px;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-rules img {
		max-width: 60px;
	}
}
/* Hockey Resources */
.sec-resources {
	padding: 100px 0;
	max-width: 1140px;
	margin: 0 auto;
	width: 95%;
}
@media screen and (max-width: 767px) {
	.sec-resources {
		padding: 60px 0;
	}
}
.sec-resources h2 {
	margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
	.sec-resources h2 {
		margin-bottom: 10px;
	}
}
.sec-resources h2 img {
	max-width: 774px;
    display: block;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.sec-resources h2 img {
		max-width: 290px;
	}
}
.sec-resources__main {
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.sec-resources__main {
		display: block;
	}
}
.sec-resources__col {
	width: 45%
}
@media screen and (max-width: 767px) {
	.sec-resources__col {
		width: 100%
	}
}
.sec-resources__col:nth-child(1) {
	width: 50%;
}
@media screen and (max-width: 767px) {
	.sec-resources__col:nth-child(1) {
		width: 100%;
		margin-bottom: 20px;
	}
}
.sec-resources__box {
	-webkit-box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
	-moz-box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
	box-shadow: 0px 0px 5px 0px rgba(160,0,0,0.15);
	padding: 45px;
}
@media screen and (max-width: 767px) {
	.sec-resources__box {
		padding: 20px;
	}
}
.sec-resources__box:nth-child(2) {
	margin-top: 40px;
}
@media screen and (max-width: 767px) {
	.sec-resources__box:nth-child(2) {
		margin-top: 25px;
	}
}
.sec-resources__box h3 {
	margin-bottom: 20px;
    color: #223A5E;
    font-size: 32px;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
	.sec-resources__box h3 {
		margin-bottom: 10px;
		font-size: 25px;
	}
}
.sec-resources__box p + p{
	margin-top: 30px;
}
@media screen and (max-width: 767px) {
	.sec-resources__box p+p {
		margin-top: 12px;
	}
}
.sec-resources__box a {
	text-decoration: underline;
	color: #223A5E;
}
.sec-resources__box strong{
	font-weight: 700;
}


/*====================== CONTACT ======================*/


#debug_output {
  display: none;
}

/*This ID is from hCaptcha
*/ 
#msg_fail {
  display: none;
}

#contact_section{
	padding: 105px 0;
}
@media screen and (max-width: 767px) {
	#contact_section {
		padding: 60 0;
	}
}
#contact_section h2 img{
	display: block;
	max-width: 338px;
	width: 100%;
	margin: 0 auto 50px;
}
@media screen and (max-width: 767px) {
	#contact_section h2 img {
		max-width: 159px;
		margin-bottom: 30px;
	}
}
.l-contact{
	max-width: 769px;
	width: 100%;
	margin: 0 auto;
	padding: 50px 55px 40px;
	background: url("../img/bg-form.png") no-repeat center;
	background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
	.l-contact {
		background: url("../img/bg-form-sp.png") no-repeat center;
		background-size: 100% 100%;
		max-width: 330px;
		padding: 30px;
	}
}
.l-contact h2 {
	text-align: center;
	font-size: 100px;
	line-height: 1;
	text-transform: uppercase;
	font-weight: 500;
	color: #AE1738;
	font-family: 'tsha', serif;
}
@media screen and (max-width: 767px) {
	.l-contact h2 {
		font-size: 50px;
	}
}
 .l-contact__head{
	max-width: 360px;
	text-align: center;
	margin: 0 auto 25px;
	font-size: 20px;
 }
 @media screen and (max-width: 767px) {
	.l-contact__head {
		max-width: 300px;
		font-size: 16px;
		margin-bottom: 15px;
	}
 }
#contact_form{
	padding: 40px 0;
}
 @media screen and (max-width: 767px) {
	#contact_form {
		padding: 20px 0;
	}
 }
.form_section{
	margin-bottom: 35px;
}
 @media screen and (max-width: 767px) {
	.form_section {
		margin-bottom: 20px;
	}
 }
.form_section label{
	display: block;
	margin-bottom: 15px;
	font-size: 24px;
}
 @media screen and (max-width: 767px) {
	.form_section label {
		font-size: 16px;
		margin-bottom: 8px;
	}
 }
input,
label,
select,
button,
textarea {
	margin: 0;
	border: 0;
	padding: 0;
	display: inline-block;
	background: none;
	font: inherit;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none
}
input{
	width: 100%;
	font-size: 32px;
	font-weight: 300;
	padding: 0 20px 4px;
	border-bottom: 1px solid #CBCBCB;
}
 @media screen and (max-width: 767px) {
	input {
		font-size: 20px;
		padding: 0 15px 4px;
	}
 }
textarea{
	width: 100%;
	height: 229px;
	padding: 20px;
	font-size: 20px;
	font-size: 20px;
	box-shadow: 0px 0px 20px 0px rgba(160, 0, 0, 0.15) inset;
	-webkit-box-shadow: 0px 0px 20px 0px rgba(160, 0, 0, 0.15) inset;
	-moz-box-shadow: 0px 0px 20px 0px rgba(160, 0, 0, 0.15) inset;
}
 @media screen and (max-width: 767px) {
	textarea {
		height: 130px;
		font-size: 16px;
	}
 }
.form_require{
	display: flex;
}
 @media screen and (max-width: 767px) {
	.form_require {
			display: block;
		}
 }
.form_require p{
	width: 140px;
}
 @media screen and (max-width: 767px) {
	.form_require p {
		width: 100%;
	}
 }
.form_require ul{
	width: calc(100% - 140px);
}
 @media screen and (max-width: 767px) {
	.form_require {
		font-size: 14px;
	}
	.form_require ul {
		width: 100%;
	}
	.form_require ul {
		margin-top: 5px;
	}
	.form_require ul li{
		padding-left: 15px;
		position: relative;
	}
	.form_require ul li:before{
		content: "";
		width: 6px;
		height: 6px;
		background: #000;
		border-radius: 50%;
		position: absolute;
		left: 0;
		top: 6px;
	}
 }
#contact_submit{
	width: 151px;
	cursor: pointer;
	display: block;
	margin: 35px auto 0;
	text-align: left;
	font-weight: bold;
	color: #fff;
	text-transform: uppercase;
	background: #AE1738 url("../img/icon-arrow.png") no-repeat right 20px center;
	background-size: 14px 14px;
	padding: 10px 10px 10px 30px;
}
@media screen and (max-width: 767px) {
	#contact_submit {
		text-align: center;
		padding: 10px;
	}
}
#contact_submit:hover{
	opacity: .65;
}

#contact_thanks{
	padding: 105px 0;
    display: none;
}
@media screen and (max-width: 767px) {
	#contact_thanks {
		padding: 50px 0;
	}
}
#contact_thanks .l-contact {
	min-height: 0;
	background: none;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 100px 40px 80px;
	border: 10px solid #AE1738;
}
@media screen and (max-width: 767px) {
	#contact_thanks .l-contact {
		padding: 50px 20px 40px;
		border-width: 5px;
	}
}
#contact_thanks .l-contact p{
	text-align: center;
	font-size: 32px;
	margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
	#contact_thanks .l-contact p {
		font-size: 18px;
		margin-bottom: 5px;
	}
}

body.p-ja{
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
	.header-inner-nav p:last-child a{
		font-size: 11px;
	}
	.sec-schedule__list li strong{
		font-size: 14px;
	}
}
.p-ja section h2{
	font-size: 4vw;
}
@media screen and (max-width: 767px) {
	.p-ja section h2 {
		font-size: 28px;
	}
	.p-ja .sec-what h2,
	.p-ja .sec-schedule h2{
		margin-bottom: 10px;
	}
	.p-ja .sec-location h2{
		margin-bottom: 15px;
	}
}
.p-ja .sec-schedule__list li{
	letter-spacing: 0;
}
.p-ja .sec-schedule__list li strong{
	width: 35%;
}
@media screen and (max-width: 380px) {
	.p-ja .sec-schedule__list li strong {
		width: 30%;
	}
}
.p-ja .sec-schedule__list li s{
	width: 63%;
}
@media screen and (max-width: 380px) {
	.p-ja .sec-schedule__list li s {
		width: 68%;
	}
}
.p-ja .header-slogan{
	font-size: 18px;
	padding: 16px;
}
@media screen and (max-width: 767px) {
	.p-ja .header-slogan {
		font-size: 13px;
		padding: 10px;
	}
}
.p-ja .sec-location__box__desc h3{
	margin-bottom: 5px;
}
.p-ja .sec-safety ul li{
	font-size: 28px;
}
@media screen and (max-width: 767px) {
	.p-ja .sec-safety ul li {
		font-size: 24px;
	}
}
.p-ja .sec-safety ul p{
	margin-top: 5px;
	line-height: 1.825;
}
.p-ja li.one-item:before,
.p-ja li.two-item:before{
	top: -42px;
}
@media screen and (max-width: 767px) {
	.p-ja li.one-item:before,
	.p-ja li.two-item:before {
		top: 9px;
	}
	.p-ja li.two-item:before {
		height: 70px;
	}
}
.p-ja .footer{
	margin-top: 200px;
}
@media screen and (max-width: 767px) {
	.p-ja .footer {
		margin-top: 40px;
	}
}
.p-ja .sec-rules img{
	margin-top: 30px;
}
@media screen and (max-width: 767px) {
	.p-ja .sec-rules img {
		margin-top: 12px;
	}
}


/* MHL Rink page
===================================*/
.u-sp{
    display: none;
}
@media screen and (max-width: 767px) {
    .u-sp {
        display: block;
    }
}
.sec-mhl01{
    padding: 100px 0;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .sec-mhl01 {
        padding: 60px 0;
    }
}
.sec-mhl01 h2{
    margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
    .sec-mhl01 h2 {
        margin-bottom: 25px;
    }
}
.sec-mhl01 h3{
    font-size: 50px;
    line-height: 1;
    font-family: 'tsha', serif;
    color: #AE1738;
    font-weight: bold;
    margin-bottom: -12px;
}
@media screen and (max-width: 767px) {
    .sec-mhl01 h3 {
        font-size: 28px;
        margin-bottom: -6px;
    }
}
.sec-mhl01__txt01{
    margin-bottom: 18px;
}
.sec-mhl01__txt01 a{
    color: #000;
    font-size: 20px;
    font-weight: bold;
} 
@media screen and (max-width: 767px) {
    .sec-mhl01__txt01 a {
        font-size: 16px;
    }
}
.sec-mhl01__txt02{
    font-size: 20px;
}
@media screen and (max-width: 767px) {
    .sec-mhl01__txt02 {
        font-size: 16px;
        padding: 0 20px;
        margin-bottom: 10px;
    }
}
.sec-mhl01 iframe{
    display: block;
    margin: 30px auto 0;
    max-width: 644px;
    width: 100%;
    height: 552px;
}
@media screen and (max-width: 767px) {
    .sec-mhl01 iframe {
        width: 90%;
        height: 204px;
    }
}
.sec-mhl01__link{
    margin-top: 10px;
}
.sec-mhl01__link a{
    color: #000;
    text-decoration: underline;
}

.sec-mhl02{
    padding: 100px 0 70px;
    color: #fff;
    background: #041735;
    border-top: 14px solid #AE1738;
    border-bottom: 14px solid #AE1738;
}
@media screen and (max-width: 767px) {
    .sec-mhl02 {
        padding: 60px 20px;
        border-width: 7px;
    }
}
.sec-mhl02 > *{
    max-width: 1140px;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 767px) {
    .sec-mhl02>* {
        width: 100%;
    }
}
.sec-mhl02 h2{
    color: #fff;
}
.sec-mhl02__intro{
    max-width: 640px;
    width: 100%;
    margin: 0 auto;
    font-size: 20px;
    line-height: 1.65;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__intro {
        font-size: 16px;
    }
}
.sec-mhl02 h3{
    font-weight: bold;
    font-size: 40px;
    margin: 50px auto 20px;
}
@media screen and (max-width: 767px) {
    .sec-mhl02 h3 {
        font-size: 22px;
        margin: 25px auto 10px;
    }
}
.sec-mhl02__box{
    padding: 50px;
    background: #fff;
    display: flex;
    margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box {
        padding: 20px;
        display: block;
        margin-bottom: 20px;
    }
}
.sec-mhl02__box-intro{
    width: 20%;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-intro {
        width: 100%;
        margin-bottom: 10px;
    }
}
.sec-mhl02__box-intro img{
    max-width: 144px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-intro img {
        max-width: 75px;
        display: block;
        margin: 0 auto;
    }
}
.sec-mhl02__box-intro img.img_people{
    max-width: 71px;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-intro img.img_people {
        max-width: 35px;
    }
}
.sec-mhl02__box-intro h4{
    color: #AE1738;
    font-size: 32px;
    font-weight: bold;
}
@media screen and (max-width: 950px) {
    .sec-mhl02__box-intro h4 {
        font-size: 24px;
    }
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-intro h4 {
        font-size: 20px;
        text-align: center;
    }
}
.sec-mhl02__box-desc{
    width: 80%;
    padding-left: 50px;
    color: #000;
    font-size: 20px;
    line-height: 1.65;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-desc {
        width: 100%;
        padding-left: 0;
        font-size: 16px;
    }
}
.sec-mhl02__box-desc p + p{
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .sec-mhl02__box-desc p+p {
        margin-top: 10px;
    }
}
.sec-mhl03{
    padding: 100px 0;
}
@media screen and (max-width: 767px) {
    .sec-mhl03 {
        padding: 50px 0 0;
    }
}
p.sec-mhl03__intro{
    font-size: 20px;
    line-height: 1.65;
    font-weight: normal;
    color: #000;
}
@media screen and (max-width: 767px) {
    p.sec-mhl03__intro {
        font-size: 16px;
    }
}
.sec-mhl03 ul li{
    margin-bottom: 30px;
}
.sec-mhl03 ul .one-item:before{
    height: 71px;
}
@media screen and (max-width: 767px) {
    .sec-mhl03 ul li:before{
        height: 50px;
    }
}
.sec-mhl03 ul .two-item:before {
    height: 71px;
}
@media screen and (max-width: 767px) {
    .sec-mhl03 ul .two-item:before {
        height: 50px;
    }
    .sec-mhl03 ul .three-item:before {
        top: -2px;
    }
}
.sec-mhl03 ul p{
    font-size: 20px;
    margin-bottom: 0;
    line-height: 1.65;
}
@media screen and (max-width: 767px) {
    .sec-mhl03 ul p {
        font-size: 18px;
    }
}
.sec-mhl03 ul strong{
    font-weight: bold;
}
.sec-mhl03 ul a{
    text-decoration: underline;
    color: #000;
}