@charset "utf-8";


body{
	background:#dcdddd;
	font-family: "Koburina Gothic W3 JIS2004";
	/* font-family: "Koburina Gothic W3 JIS2004",Segoe UI,Helvetica Neue,Hiragino Kaku Gothic ProN,"メイリオ",meiryo,sans-serif; */
	font-size:18px;
	letter-spacing: 0.15em;

}


#area-wrap {
	height: 100vh;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	position:relative;

	font-variant-ligatures: no-common-ligatures !Important;
	-moz-font-feature-settings: "liga" 0, "clig" 0 !Important;
	-webkit-font-feature-settings: "liga" 0, "clig" 0 !Important;
	font-feature-settings: "liga" 0, "clig" 0 !Important;
}

section{
	text-align:center;
}
section.area {
	height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
section.area *{
	display:block;
	text-align:left;
}
section.area div{
	position:relative;
	width:500px;
}
section.area:first-of-type{
	border-top:30px solid #000;
}
section.area:first-of-type div{
	text-align:center;
}
section.area:first-of-type div img{
	display: inline-block;
}
section.area:first-of-type p#fluffy{
	text-align:center;
	margin-top:8em !important;
	margin-bottom:-13.3em !important;
}
section.area:first-of-type p#fluffy img{
	width:30px !Important;
	margin-right:0 !Important;
}
section.area:first-of-type p#fluffy{
	-webkit-animation: fluffy 1s infinite;
	-moz-animation: fluffy 1s infinite;
	animation: fluffy 1.5s infinite;
}
@keyframes fluffy {
	0% { transform:translateY(0px); }
	50% { transform:translateY(24px); }
	100% { transform:translateY(  0px); }
}

section.area div *:nth-child(2){
	margin-top:0;
}

section h2{
	position:absolute;
	left:-20%;
	letter-spacing: 0.03em;
	-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	font-size: 1.26em;
	font-feature-settings:normal !Important;
}
@media all and (-ms-high-contrast: none) {
	section h2{
		top:-20px;
	}
}
section h3{
	font-size: 1.44em;
}
section.area:nth-of-type(3) h3{
	font-size: 1.24em;
}
section.area:last-of-type > div{
	margin-top:5em;
	margin-bottom:6em;
}
section dl dt{
	float:left;
}
section dl dd{
	margin-left:60px;
}
section form table th,
section form table td{
	width:100%;
}
section.area p{
	line-height:1.75;
}
section.area form table th span{
	display:inline-block;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea{
	width:100% !Important;
	max-width:100% !important;
	border:none;
	font-family: inherit !important;
	padding: 4px !Important;
	font-size:1.0em !important;
}

.mfp_element_text, .mfp_element_number, .mfp_element_select-one, .mfp_element_email, .mfp_element_tel, .mfp_element_textarea, .mfp_element_date, .mfp_element_password{
	border:none !important;
	box-shadow:none !important;
	border-radius:0 !important;
	margin:0 !Important;
}
label span{
	display:inline-block !important;
	font-size:0.6em;
	background:#b5b5b6;
	border-radius:10px;
	padding:0 4.5px;
	margin-left:1em;
	vertical-align: middle;
}

.mfp_buttons .mfp_element_submit{
	background:#000 !important;
	border-radius:20px !important;
	color:#dcdddd !important;
	text-shadow:none !important;
	margin:0 auto;
	padding: 5px 21px !important;
}
.mfp_buttons #mfp_button_send,
.mfp_buttons #mfp_button_cancel{
	background:#000 !important;
	border-radius:20px !important;
	color:#dcdddd !important;
	text-shadow:none !important;
	margin:0 auto;
	padding: 5px 21px !important;
	display:inline-block;
}

div.mfp_err{
	padding:3px 0px 5px 0px !important;
	background:none !important;
}

table#mfp_confirm_table tr.mfp_achroma,
.mfp_achroma{
	background:none !Important;
}
table#mfp_confirm_table tr.mfp_colored,
.mfp_colored{
	background:none !Important;
}

table#mfp_confirm_table tr th{
	font-size:inherit !important;
	border-top:none !important;
	padding: 0 !Important;
	width:100%;
	margin:3px !Important;
}
table#mfp_confirm_table tr td{
	font-size:inherit !important;
	border-top:none !important;
	font-size:0.6em !important;
	background:#ccc !important;
	padding: 8.5px 8px !Important;
}
#mfp_phase_confirm table#mfp_confirm_table tr td{
	font-size:0.9em !important;
}
div#mfp_phase_confirm h4{
	font-size:1em !important;
	padding:0 !important;
	margin:0 0 1em !important;
	background:#000 !important;
	color:#dcdddd !important;
}

footer{
	scroll-snap-align: end;
	background:#000;
	padding:18px 0;
	position:relative;
	letter-spacing: 0.08em;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}
footer p{
	margin:0.4em;
	color:#dcdddd;
	text-align:center !Important;
}
footer p#sns{
	margin:0;
	font-size: 0.9em;
}
footer p#sns i{
	display:inline-block;
}
footer p#copylight{
	font-size: 0.9em;
	margin-top:0.8em;
}
footer p a{
	text-decoration:none !important;
	color:#dcdddd;
}
footer p a:hover{
	color:#727171;
}
footer p a i{
	margin-right:0.2em;
	font-size: 1.5em;
	vertical-align: top;
}
footer div{
	width:500px;
	position:relative;
	margin:0 auto;
}

body#thanks section.area{
	height: calc(100vh - 147.64px - 30px);
}
body#thanks section.area div{
	width:auto;
}

body#thanks section h1{
	text-align:center;
}

body#thanks section p a{
	background: #000 !important;
	border-radius: 20px !important;
	color: #dcdddd !important;
	text-shadow: none !important;
	margin: 0 auto;
	padding: 5px 21px !important;
	text-decoration: none;
	width: 240px;
	text-align: center;
	margin-top:4em;
}

#g_navi{
	position: fixed !important;
	width: 100%;
	top: 6% !Important;
	z-index: 10000;
}
#g_navi ul {
	overflow: hidden;
	margin: 0 auto;
	padding: 0 2%;
	width: 500px;
	background: #d3d3d4;
}
#g_navi ul li {
	position: relative;
	float: left;
	width: 25%;
	text-align: center;
}
#g_navi ul li a {
	display: block;
	margin: 0 auto;
	color: #000;
	text-align: center;
	text-decoration: none;
	position:relative;
}

#g_navi ul li:not(:last-of-type) a::after {
	content:"/";
	position:absolute;
	right:-4px;
}
#g_navi ul li:first-of-type a::after {
	right:-12px;
}


@media (min-width: 1000px){
	footer p#sns{
		position: absolute;
		top: 48%;
		left: -157px;
		transform: translateY(-50%) translateX(-50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
	}
}
@media (min-width: 661px){
	section.area:first-of-type img{
		width:370px !Important;
		margin-right:1em;
	}
	section.area:nth-of-type(3) img,
	section.area:nth-of-type(4) img{
		width:500px !Important;
	}
	section.area {
		min-height:600px;
	}
}
@media (max-width: 999px){
	footer p#sns{
		margin-bottom:0.8em;
	}
	footer p#sns a{
		text-align:center !Important;
	}
}

@media (max-width: 660px){
	body{
		font-size:90%;
	}
	br.off{
		display:none;
	}
	section.area div,
	footer div{
		width:100%;
	}
	img{
		width:100% !Important;
		height:auto !Important;
		max-width:100% !Important;
	}
	#area-wrap {
		scroll-snap-type: none;
		padding:0 20px;
	}
	section.area:first-of-type,
	footer{
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}
	section.area:first-of-type img{
		width:80% !Important;
		margin-right:0.5em;
	}
	section h2{
		position: relative;
		left: 0;
		font-size: 2em;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}


	body#thanks #area-wrap{
		scroll-snap-type: none;
	}
	body#thanks section.area div{
		padding:0 20px;
	}

	#g_navi{
		width: calc(100% - 40px);
	}
	#g_navi ul {
		padding: 0 2%;
		width: 100%;
	}
	#g_navi ul li a {
		font-size:0.9em;
		padding: 0.5em 0;
	}

	footer p#sns{
		/* display:inline-block !important; */
	}


}
