@charset "utf-8";

/*
GLOBAL
***************************************************************************/
html {
	overflow-y: scroll;
	overflow-x: hidden;
}

body {
	width: 100%;
	height: 100%;
	text-align: left;
	font-family: "Noto Sans JP", sans-serif;
	word-break: break-all;
	font-size: calc((100vw / 320) * 10);
	font-weight: 500;
	line-height: 2;
	color: #3f3f3f;
	letter-spacing: 0.025rem;
	background: #fff;
	overflow-x: hidden;
	-webkit-text-size-adjust: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.base_box { position:relative; }

.sec_inner {
	position: relative;
	z-index: 5;
}

/*
DEFAULT
***************************************************************************/
body,
h1,h2,h3,h4,h5,h6,p,div,
ul,ol,li,dl,dt,dd,
form,fieldset,legend,pre,blockquote,main,
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display: block;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	word-wrap: break-word;
	font-feature-settings: "pkna";
}

p {
	margin-block-start: 0;
	margin-block-end: 0;
}

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

li {
	list-style-type: none;
}

table {
	width: 100%;
	text-align: left;
	border-collapse: collapse;
}

th {
	text-align: left;
	font-weight: normal;
}

/* ▼LINK▼ */
a {
	color: #ea64ae;
	text-decoration: none;
	outline: none;
}

/* ▼IMG▼ */
img, input[type="image"]{
	max-width: 100%;
	vertical-align: middle;
	font-size: 0;
	line-height: 0;
	border: 0;
}

button, input[type="submit"] {
	padding: 0;
	vertical-align: middle;
	color: #fff;
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	transition: .3s;
}

.img_frame {
	position: relative;
	overflow: hidden;
}

.img_frame img {
	position: absolute;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/* ▼BR▼ */
@media screen and (min-width: 480px){

	.landscape { display:block; }
	.portrait { display:none; }

}

@media screen and (max-width: 479px){

	.landscape { display:none; }
	.portrait { display:block; }

}

/*
CONTENTS
***************************************************************************/
/* ▼TOPIMG▼ */
#topimg {
	background: url(../images/topimg_bg.jpg) center center / cover no-repeat;
}

/* ▼INTRO▼ */
#intro_sec {
	background: url(../images/intro_bg.jpg) center center / cover no-repeat;
}

/* ▼PRESENT▼ */
#present_sec .sec_inner {
	padding-bottom: calc((100vw / 320) * 35);
	background: url(../images/present_bg.jpg) center center / cover no-repeat;
}

.form_box {
	margin: 0 calc((100vw / 320) * 15);
	padding: calc((100vw / 320) * 25) calc((100vw / 320) * 15);
	background: #fff;
}

.form_box li {
	margin-bottom: calc((100vw / 320) * 15);
}

.form_box .txt {
	margin-bottom: calc((100vw / 320) * 15);
	text-align: center;
	font-size: calc((100vw / 375) * 14);
	font-weight: 700;
	line-height: 1.6;
}

.form_box .btn {
	margin-bottom: calc((100vw / 320) * 15);
}

.form_box .stxt {
	font-size: calc((100vw / 375) * 10);
	font-weight: 700;
	line-height: 1.7;
}

input[type="text"], input[type="email"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	height: calc((100vw / 375) * 50);
	padding: 0 calc((100vw / 375) * 15);
	vertical-align: middle;
	font-size: calc((100vw / 375) * 12);
	font-weight: 700;
	color: #3f3f3f;
	line-height: calc((100vw / 375) * 50);
	font-family: "Noto Sans JP", sans-serif;
	background: #fff;
	border: solid 1px #b5b5b5;
	border-radius: calc((100vw / 375) * 5);
	caret-color: #999;
}

input[type="text"]:focus, input[type="email"]:focus {
	border: solid 1px #b5b5b5;
	outline: none;
}

input[type="submit"]:focus, button:focus { outline:none; }

input::-webkit-input-placeholder {
	font-size: calc((100vw / 375) * 12)!important;
	color: #b5b5b5;
	font-weight: 700;
}

input:-ms-input-placeholder {
	font-size: calc((100vw / 375) * 12)!important;
	color: #b5b5b5;
	font-weight: 700;
}

input::-moz-placeholder {
	font-size: calc((100vw / 375) * 12)!important;
	color: #b5b5b5;
	font-weight: 700;
}

/*
PARTS
***************************************************************************/
/* ▼SCROLL▼ */
.scroll_box { overflow-y:auto; }

.scroll_box::-webkit-scrollbar {
	width: calc((100vw / 320) * 2);
}

.scroll_box::-webkit-scrollbar-track {
	background: #444;
}

.scroll_box::-webkit-scrollbar-thumb {
	background: #999;
}

.gecko .scroll_box {
	scrollbar-width: calc((100vw / 320) * 2);
	scrollbar-color: #999 #444;
}

/* ▼CONTENTS EFFECT▼ */
.move_parts {
	opacity: 0;
	transition: all 0.5s;
}

.move_parts.btm_top {
	transform: translateY(calc((100vw / 320) * 50));
}

.move_parts.top_btm {
	transform: translateY(calc((100vw / 320) * -50));
}

.move_parts.left_right {
	transform: translateX(calc((100vw / 320) * -50));
}

.move_parts.right_left {
	transform: translateX(calc((100vw / 320) * 50));
}

.move_parts.expand {
	opacity: 1;
	transform: scale(0.001);
}

.move_parts.expand.rev {
	opacity: 0;
	transform: scale(1.5);
}

.move_parts.on {
	opacity: 1!important;
	transform: scale(1)!important;
}

.delay_fade {
	opacity: 0;
	transition: all 0.5s;
}

.delay_fade.active {
	opacity: 1.0;
}

.blink {
	animation: blink 1.2s linear 0s infinite normal;
	transition: .1s;
}

@-webkit-keyframes blink {
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}

@keyframes blink {
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}

.txt_kirarin {
	background-image: linear-gradient(-45deg, #fff067 45%, #FFF 50%, #fff067 55%);
	background-size: 500% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	animation: txt_kirarin 1s infinite;
}

@keyframes txt_kirarin {
	0% { background-position:100% 50%; }
	100% { background-position:0% 50%; }
}

@-webkit-keyframes txt_kirarin {
	0% { background-position:100% 50%; }
	100% { background-position:0% 50%; }
}

.kirarin {
	overflow: hidden;
}

.kirarin:after {
	display: block;
	content: "";
	position: absolute;
	top: calc((100vw / 320) * -120);
	left: 0;
	width: calc((100vw / 320) * 30);
	height: 100%;
	background: #fff;
	overflow: hidden;
	opacity: 0;
	transform: rotate(45deg);
	animation: kirarin 2s ease-in-out infinite;
	-webkit-transform: rotate(45deg);
	-webkit-animation: kirarin 2s ease-in-out infinite;
}

@keyframes kirarin {
	0% { transform: scale(0) rotate(45deg); opacity: 0; }
	80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
	81% { transform: scale(4) rotate(45deg); opacity: 1; }
	100% { transform: scale(50) rotate(45deg); opacity: 0; }
}

@-webkit-keyframes kirarin {
	0% { transform: scale(0) rotate(45deg); opacity: 0; }
	80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
	81% { transform: scale(4) rotate(45deg); opacity: 1; }
	100% { transform: scale(50) rotate(45deg); opacity: 0; }
}

/* ▼BUTTON▼ */
.btn_bound img {
	-webkit-animation: bomb 3s linear 0s infinite normal;
	animation: bomb 3s linear 0s infinite normal;
	transition: .3s;
}

@-webkit-keyframes bomb {
	0% { -webkit-transform:scale(1); }
	7% { -webkit-transform:scale(0.98); }
	14% { -webkit-transform:scale(0.94); }
	21% { -webkit-transform:scale(1); }
	28% { -webkit-transform:scale(0.94); }
	35% { -webkit-transform:scale(0.98); }
	42% { -webkit-transform:scale(0.95); }
	49% { -webkit-transform:scale(1); }
	100% { -webkit-transform:scale(1); }
}

@keyframes bomb {
	0% { transform:scale(1); }
	7% { transform:scale(0.98); }
	14% { transform:scale(0.94); }
	21% { transform:scale(1); }
	28% { transform:scale(0.94); }
	35% { transform:scale(0.98); }
	42% { transform:scale(0.95); }
	49% { transform:scale(1); }
	100% { transform:scale(1); }
}

/*
COMMON PARTS
***************************************************************************/
/* ▼display▼ */
.block { display:block!important; }
.inline { display:inline!important; }

.posit_r { position:relative!important; overflow-x:hidden; }
.posit_a { position:absolute!important; }
.posit_f { position:fixed!important; }

.align_c { text-align:center!important; }
.align_r { text-align:right!important; }
.align_l { text-align:left!important; }

.disp_l { float:left!important; }
.disp_r { float:right!important; }

.va_top { vertical-align:top!important; }
.va_mid { vertical-align:middle!important; }
.va_btm { vertical-align:bottom!important; }

/* ▼width▼ */
.w4per { width:4%; }
.w5per { width:5%; }
.w8per { width:8%; }
.w10per { width:10%; }
.w15per { width:15%; }
.w20per { width:20%; }
.w22per { width:22%; }
.w25per { width:25%; }
.w30per { width:30%; }
.w35per { width:35%; }
.w40per { width:40%; }
.w45per { width:45%; }
.w50per { width:50%; }
.w55per { width:55%; }
.w56per { width:56%; }
.w60per { width:60%; }
.w70per { width:70%; }
.w75per { width:75%; }
.w80per { width:80%; }
.w100per { width:100%!important; }

.w90 { width:calc((100vw / 320) * 90)!important; }
.w160 { width:calc((100vw / 320) * 160)!important; }
.w250 { width:calc((100vw / 320) * 250)!important; }
.w400 { width:calc((100vw / 320) * 400)!important; }
.w500 { width:calc((100vw / 320) * 500)!important; }
.w510 { width:calc((100vw / 320) * 510)!important; }
.w580 { width:calc((100vw / 320) * 580)!important; }

.h240 { height:calc((100vw / 320) * 240)!important; }

/* ▼area▼ */
.mb90 { margin-bottom:calc((100vw / 320) * 90)!important; }
.mb80 { margin-bottom:calc((100vw / 320) * 80)!important; }
.mb70 { margin-bottom:calc((100vw / 320) * 70)!important; }
.mb60 { margin-bottom:calc((100vw / 320) * 60)!important; }
.mb55 { margin-bottom:calc((100vw / 320) * 55)!important; }
.mb50 { margin-bottom:calc((100vw / 320) * 50)!important; }
.mb45 { margin-bottom:calc((100vw / 320) * 45)!important; }
.mb40 { margin-bottom:calc((100vw / 320) * 40)!important; }
.mb35 { margin-bottom:calc((100vw / 320) * 35)!important; }
.mb30 { margin-bottom:calc((100vw / 320) * 30)!important; }
.mb25 { margin-bottom:calc((100vw / 320) * 25)!important; }
.mb20 { margin-bottom:calc((100vw / 320) * 20)!important; }
.mb15 { margin-bottom:calc((100vw / 320) * 15)!important; }
.mb12 { margin-bottom:calc((100vw / 320) * 12)!important; }
.mb10 { margin-bottom:calc((100vw / 320) * 10)!important; }
.mb8 { margin-bottom:calc((100vw / 320) * 8)!important; }
.mb5 { margin-bottom:calc((100vw / 320) * 5)!important; }
.mb0 { margin-bottom:calc((100vw / 320) * 0)!important; }

.mlr60 { margin-left:calc((100vw / 320) * 60)!important; margin-right:calc((100vw / 320) * 60)!important; }
.mlr55 { margin-left:calc((100vw / 320) * 55)!important; margin-right:calc((100vw / 320) * 55)!important; }
.mlr50 { margin-left:calc((100vw / 320) * 50)!important; margin-right:calc((100vw / 320) * 50)!important; }
.mlr45 { margin-left:calc((100vw / 320) * 40)!important; margin-right:calc((100vw / 320) * 45)!important; }
.mlr40 { margin-left:calc((100vw / 320) * 40)!important; margin-right:calc((100vw / 320) * 40)!important; }
.mlr35 { margin-left:calc((100vw / 320) * 35)!important; margin-right:calc((100vw / 320) * 35)!important; }
.mlr30 { margin-left:calc((100vw / 320) * 30)!important; margin-right:calc((100vw / 320) * 30)!important; }
.mlr25 { margin-left:calc((100vw / 320) * 25)!important; margin-right:calc((100vw / 320) * 25)!important; }
.mlr20 { margin-left:calc((100vw / 320) * 20)!important; margin-right:calc((100vw / 320) * 20)!important; }
.mlr15 { margin-left:calc((100vw / 320) * 15)!important; margin-right:calc((100vw / 320) * 15)!important; }
.mlr12 { margin-left:calc((100vw / 320) * 12)!important; margin-right:calc((100vw / 320) * 12)!important; }
.mlr10 { margin-left:calc((100vw / 320) * 10)!important; margin-right:calc((100vw / 320) * 10)!important; }
.mlr5 { margin-left:calc((100vw / 320) * 5)!important; margin-right:calc((100vw / 320) * 5)!important; }
.mlr-1 { margin-left:calc((100vw / 320) * -1)!important; margin-right:calc((100vw / 320) * -1)!important; }
.mlr-5 { margin-left:calc((100vw / 320) * -5)!important; margin-right:calc((100vw / 320) * -5)!important; }
.mlr-10 { margin-left:calc((100vw / 320) * -10)!important; margin-right:calc((100vw / 320) * -10)!important; }
.mlr-20 { margin-left:calc((100vw / 320) * -20)!important; margin-right:calc((100vw / 320) * -20)!important; }

.mr50 { margin-right:calc((100vw / 320) * 50)!important; }
.mr40 { margin-right:calc((100vw / 320) * 40)!important; }
.mr30 { margin-right:calc((100vw / 320) * 30)!important; }
.mr25 { margin-right:calc((100vw / 320) * 25)!important; }
.mr20 { margin-right:calc((100vw / 320) * 20)!important; }
.mr15 { margin-right:calc((100vw / 320) * 15)!important; }
.mr10 { margin-right:calc((100vw / 320) * 10)!important; }
.mr5 { margin-right:calc((100vw / 320) * 5)!important; }
.mr0 { margin-right:calc((100vw / 320) * 0)!important; }
.mr-5 { margin-right:calc((100vw / 320) * -5)!important; }

.ml50 { margin-left:calc((100vw / 320) * 50)!important; }
.ml40 { margin-left:calc((100vw / 320) * 40)!important; }
.ml30 { margin-left:calc((100vw / 320) * 30)!important; }
.ml20 { margin-left:calc((100vw / 320) * 20)!important; }
.ml15 { margin-left:calc((100vw / 320) * 15)!important; }
.ml10 { margin-left:calc((100vw / 320) * 10)!important; }
.ml0 { margin-left:calc((100vw / 320) * 0)!important; }
.ml-5 { margin-left:calc((100vw / 320) * -5)!important; }
.ml-10 { margin-left:calc((100vw / 320) * -10)!important; }
.ml-15 { margin-left:calc((100vw / 320) * -15)!important; }
.ml-20 { margin-left:calc((100vw / 320) * -20)!important; }

.mt60 { margin-top:calc((100vw / 320) * 60)!important; }
.mt55 { margin-top:calc((100vw / 320) * 55)!important; }
.mt50 { margin-top:calc((100vw / 320) * 50)!important; }
.mt45 { margin-top:calc((100vw / 320) * 45)!important; }
.mt40 { margin-top:calc((100vw / 320) * 40)!important; }
.mt30 { margin-top:calc((100vw / 320) * 30)!important; }
.mt20 { margin-top:calc((100vw / 320) * 20)!important; }
.mt15 { margin-top:calc((100vw / 320) * 15)!important; }
.mt10 { margin-top:calc((100vw / 320) * 10)!important; }
.mt5 { margin-top:calc((100vw / 320) * 5)!important; }
.mt3 { margin-top:calc((100vw / 320) * 3)!important; }
.mt0 { margin-top:calc((100vw / 320) * 0)!important; }
.mt-5 { margin-top:calc((100vw / 320) * -5)!important; }
.mt-10 { margin-top:calc((100vw / 320) * -10)!important; }
.mt-20 { margin-top:calc((100vw / 320) * -20)!important; }
.mt-40 { margin-top:calc((100vw / 320) * -40)!important; }
.mt-50 { margin-top:calc((100vw / 320) * -50)!important; }

.pb30 { padding-bottom:calc((100vw / 320) * 30)!important; }
.pb8 { padding-bottom:calc((100vw / 320) * 8)!important; }
.pb0 { padding-bottom:calc((100vw / 320) * 0)!important; }

.p20 { padding:calc((100vw / 320) * 20)!important; }
.p15 { padding:calc((100vw / 320) * 15)!important; }
.p10 { padding:calc((100vw / 320) * 10)!important; }

.pt60 { padding-top:calc((100vw / 320) * 60)!important; }
.pt50 { padding-top:calc((100vw / 320) * 50)!important; }

.ptb20 { padding-top:calc((100vw / 320) * 20)!important; padding-bottom:calc((100vw / 320) * 20)!important; }
.ptb15 { padding-top:calc((100vw / 320) * 15)!important; padding-bottom:calc((100vw / 320) * 15)!important; }
.ptb5 { padding-top:calc((100vw / 320) * 5)!important; padding-bottom:calc((100vw / 320) * 5)!important; }
.ptb0 { padding-top:calc((100vw / 320) * 0)!important; padding-bottom:calc((100vw / 320) * 0)!important; }

.plr25 { padding-left:calc((100vw / 320) * 25)!important; padding-right:calc((100vw / 320) * 25)!important; }

/* ▼font▼ */
.bold { font-weight:bold!important; }
.normal { font-weight:normal!important; }

.size10 { font-size:calc((100vw / 320) * 10)!important; }
.size11 { font-size:calc((100vw / 320) * 11)!important; }
.size12 { font-size:calc((100vw / 320) * 12)!important; }
.size13 { font-size:calc((100vw / 320) * 13)!important; }
.size14 { font-size:calc((100vw / 320) * 14)!important; }
.size16 { font-size:calc((100vw / 320) * 16)!important; }
.size17 { font-size:calc((100vw / 320) * 17)!important; }
.size18 { font-size:calc((100vw / 320) * 18)!important; }
.size19 { font-size:calc((100vw / 320) * 19)!important; }
.size20 { font-size:calc((100vw / 320) * 20)!important; }
.size22 { font-size:calc((100vw / 320) * 22)!important; }
.size24 { font-size:calc((100vw / 320) * 24)!important; }
.size30 { font-size:calc((100vw / 320) * 30)!important; }

.c_blue { color:#265a91!important; }

.lh2 { line-height:2!important; }
.lh18 { line-height:1.8!important; }
.lh16 { line-height:1.6!important; }
.lh15 { line-height:1.5!important; }

/* ▼link▼ */
a.line, .line { text-decoration:underline!important; }
a.no_line { text-decoration:none!important; }

/* ▼frame▼ */
.img_frame01 { border:solid 1px #fff; }

/* ▼line▼ */

/* ▼indent▼ */
.indent1 { margin-left:1em; text-indent:-1em; }
.indent2 { margin-left:2em; text-indent:-2em; }
.indent3 { margin-left:3em; text-indent:-3em; }
.indent4 { margin-left:4em; text-indent:-4em; }
.indent5 { margin-left:5em; text-indent:-5em; }
.indent6 { margin-left:6em; text-indent:-6em; }

/* ▼background▼ */
.bg_none { background:none!important; }
