@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;500;700;900&display=swap');

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html{
font-size: 62.5%;
/*\*/
_font-size: 62.5%;
/**/
}

a{
	color: #343434;
	text-decoration: none;
}


h5, a{ /*-- 20220621追加 --*/
	color: #e8411d;
}

a.out:after{
	content: url(../img/ico_out.png);
	display: inline-block;
	margin-left: 3px;
}

a:hover, a:focus{text-decoration: none;}

a:hover,a:focus,
a:hover img,
a:focus img{
	filter: alpha(opacity=9) !important;
	-moz-opacity: 0.9 !important;
	opacity: 0.9 !important;
}

img {
	margin: 0;
	padding: 0;
	border: 0;
}

ul, ol {
list-style: none;
}

.clearfix:after {
content: "";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix { display: inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height: 1% }
.clearfix {display:block;}
/* end MacIE5 */

.embed{
	width: 100%;
	display: block;
	position: relative;
	background-color: #ffffff;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.embed iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 10px solid #fff5d1;
}
.embed video{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	background-size: contain;
}
video::-internal-media-controls-download-button {
    display:none;
}
video::-webkit-media-controls-enclosure {
	overflow:hidden;
}
video::-webkit-media-controls-panel {
	width: calc(100% + 30px);
}


body{
	font-family:'Noto Sans JP','ヒラギノ角ゴ Pro W6','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
	line-height: 2;
  background-color: #331a18;
	color: #331a18;
}

/* Layout */
section{
	width:100%;
	display:block;
}
#page{
  width: 100%;
  display: block;
	position: relative;
	z-index: auto;
  overflow: hidden;
}
.wrapper{
	width: 1000px;
	display: block;
	margin: 0 auto 0 auto;
	text-align: center;
	position: relative;
  overflow: visible;
}
.wrapper *{
	position: relative;
}
h2{
	font-size: 4.8rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
}
.nolink{
	color: #666666;
	pointer-events: none;
	cursor: default;
}

.pcHide{
	display: none !important;
}
.spHide{
	display: block !important;
}
.pc_br{
	display: inline;
}
.sp_br{
	display: none;
}

#page:after{
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

/* footer */
footer{
  display: block;
  padding: 50px 0 64px 0;
	font-size: 1.4rem;
	line-height: 1;
	color: #ffffff;
}
footer .footerLeft{
	width: 70%;
  display: block;
	float: left;
	text-align: left;
}
footer .footerRight{
	width: 30%;
  display: block;
	float: right;
}
footer ul{
	display: inline-block;
}
footer ul li{
	display: inline-block;
	padding: 0 0 0 14px;
}
footer ul li:first-child{
	padding: 0 0 0 0;
}
footer li a{
	display: inline-block;
	color: #ffffff;
	line-height: 1;
}
footer #copyright{
  display: block;
  text-align: right;
	color: #ffffff;
}

footer:after,
footer .wrapper:after{
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}


/* menu */
#menu{
  width: 50px;
  height: 50px;
  display: block;
	font-size: 1.3rem;
	font-weight: 900;
	background-color: #ffffff;
	color: #fd1f4c;
	box-shadow: 0px 2px 2.82px 0.18px rgba(150, 0, 46, 0.6);
	text-align: center;
	line-height: 50px;
	border-radius: 25px;
  position: fixed;
  top: 10px;
  right: 20px;
  z-index: 91000;
	cursor: pointer;
}


#slideMenu{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(231,16,156,0.95);
	z-index: 90000;
}
.menu-open #slideMenu{

}


#slideMenu ul{
	width: 40%;
	height: 60vh;
	display: block;
	margin: 14vh 24px 0 auto;
	text-align: center;
	position: absolute;
	top: 0;
	right: -40%;
	animation: menu-close-slide .5s forwards;
}
.menu-open #slideMenu ul{
	right: 24px;
	animation: menu-open-slide .5s forwards;
}
@keyframes menu-close-slide{
0% {
right: 24px;
}
100% {
right: -40%;
}
}
@keyframes menu-open-slide{
0% {
right: -40%;
}
100% {
right: 24px;
}
}

#slideMenu ul li{
	width: 100%;
	height: 12vh;
	display: block;
	margin: 0;
	color: #ffffff;
	text-align: left;
	font-size: 2.4rem;
	line-height: 12vh;
}
#slideMenu ul li:first-child{
	border-top: 1px solid #ffffff;
}
#slideMenu ul li a{
	display: block;
	color: #ffffff;
	font-size: 2.4rem;
	font-weight: 700;
	box-sizing: border-box;
}
#slideMenu ul li.sub{
	height: 10vh;
	margin: 2vh 0 0 0;
	padding: 2vh 0 2vh 0;
	border-top: 1px solid #ffffff;
	overflow: hidden;
	position: relative;
}
#slideMenu ul li.sub:after{
	content:"";
	width: 50%;
	height: 1px;
	display: block;
	background-color: #ffffff;
	position: absolute;
	bottom: 0;
}
#slideMenu ul li.sub span{
	height: 0;
	padding: 6vh 0 0 0;
	line-height: 6vh;
	background: url(../img/logo_second_w.svg) no-repeat left center;
  background-size: contain;
	overflow: hidden;
	position: absolute;
	top: 2vh;
}

#slideMenu ul li#slideMenu_close{
	height: 8vh;
	display: block;
	border-top: 1px solid #ffffff;
	color: #ffffff;
	line-height: 8vh;
	font-weight: 700;
	cursor: pointer;
	box-sizing: border-box;
}
#slideMenu ul li#slideMenu_close span{
	font-weight: 300;
}




/* -- */
/* -- */
/* SP */
/* -- */
/* -- */
@media screen and (max-width: 768px) {
/* */
/* */

a:hover,a:focus,
a:hover img,
a:focus img{
	filter: alpha(opacity=1) !important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
}

body{
  font-size: 1.4rem;
	line-height: 1.6;
}

/* Layout */
section{
}
#page{
}
.wrapper{
	width: auto;
	margin: 0 20px 0 20px;
}
.wrapper *{
}
h2{
	font-size: 3.0rem;
	line-height: 1.2;
}

.pcHide{
	display: block !important;
}
.spHide{
	display: none !important;
}
.pc_br{
	display: none;
}
.sp_br{
	display: inline;
}

/* footer */
footer{
  padding: 42px 0 54px 0;
	font-size: 1.2rem;
}
footer .footerLeft{
	width: auto;
	float: none;
	text-align: left;
}
footer .footerRight{
	width: auto;
	float: none;
	margin: 42px 0 0 0;
}
footer ul{
	display: block;
}
footer ul li{
	display: block;
	padding: 12px 0 0 0;
}
footer ul li:first-child{
	padding: 0 0 0 0;
}
footer li a{
	display: inline-block;
}
footer #copyright{
}



/* menu */
#menu{
  width: 50px;
  height: 50px;
  display: block;
	font-size: 1.3rem;
	font-weight: 900;
	background-color: #ffffff;
	color: #fd1f4c;
	box-shadow: 0px 2px 2.82px 0.18px rgba(150, 0, 46, 0.6);
	text-align: center;
	line-height: 50px;
	border-radius: 25px;
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 91000;
	cursor: pointer;
}


#slideMenu{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(231,16,156,0.95);
	z-index: 90000;
}
.menu-open #slideMenu{

}
#slideMenu ul{
	width: 60%;
	height: 60vh;
	display: block;
	margin: 14vh 20px 0 auto;
	text-align: center;
	position: absolute;
	top: 0;
	right: -60%;
	animation: menu-close-slide .5s forwards;
}
.menu-open #slideMenu ul{
	right: 20px;
	animation: menu-open-slide .5s forwards;
}
@keyframes menu-close-slide{
0% {
right: 20px;
}
100% {
right: -60%;
}
}
@keyframes menu-open-slide{
0% {
right: -60%;
}
100% {
right: 20px;
}
}

#slideMenu ul li{
	width: 100%;
	height: 12vh;
	display: block;
	margin: 0;
	color: #ffffff;
	text-align: left;
	font-size: 2.4rem;
	line-height: 12vh;
}
#slideMenu ul li:first-child{
}
#slideMenu ul li a{
	font-size: 2.4rem;
}
#slideMenu ul li.sub{
}
#slideMenu ul li.sub:after{
}
#slideMenu ul li.sub span{
}

#slideMenu ul li#slideMenu_close{
}
#slideMenu ul li#slideMenu_close span{

}




/* */
/* */
}
/* -- */
/* -- */
/* SP */
/* -- */
/* -- */
