@charset "utf-8";
body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size:16px;
	line-height:1.6;
	word-wrap: break-word;
	color: #000000;
	background:#fff;
}


a{
	color: #000000;
}


h1,h2,h3,h4,h5,h6{
	font-weight:normal;
}

@media screen and (max-width: 500px) {
body {
	font-size:14px;
}
}

/* contents
-------------------------------------------------------------------*/
.wrap{
	position:relative;
}

.main-bg{
	position:fixed;
	left:0;
	right:0;
	top:0;
	bottom:0;
	width:100%;
	height:100%;
	background:url(../img/common/main-bg.jpg) no-repeat center center;
	background-size:cover;
	z-index:-1;
}

.contents{
	clear:both;
	max-width:550px;
	margin:0 auto;
	position:relative;
	z-index:3;
	background:#fff;
}

.youtube{
	max-width:330px;
	margin:0 auto;
}

.youtube .inner {
	padding-top: 56.25%;
	position: relative;
	height: 0;
	overflow: hidden;
}

.youtube .inner iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border:none;
}

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

.left{
	float:left;
}

.right{
	float:right;
}

img{
	max-width:100%;
	height:auto;
}

.sp{
	display:none;
}
@media screen and (max-width: 450px) {
.pc{
	display:none;
}
.sp{
	display:block;
}
}

/* header
-------------------------------------------------------------------*/
.gnav{
	max-width:550px;
	box-sizing:border-box;
	padding:0 20px 0 0;
	margin:0 auto;
	display:flex;
	justify-content:flex-end;
}

.triger_wrap.movmobb1{
	position:fixed;
    top: 20px;
	height:50px;
	width:50px;
	z-index:999;
}

.topmenu {
    display: block;
	height:50px;
	width:50px;
    cursor: pointer;
	transition: all 0.3s;
	position:relative;
	background: #f8c4c4;
	filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	border-radius:6px;
}

.top-trigger,
.top-trigger span {
	display: block;
	transition: all .4s;
	box-sizing: border-box;
    z-index: 99999;
}
.top-trigger {
    position: relative;
    width: 100%;
    height: 100%;
	cursor: pointer;
	transition: all 0.2s ease-in-out;
}
.top-trigger span {
	position: absolute;
	left: 50%;
	width: 30px;
	margin-left: -15px;
	height: 2px;
	background-color: #fff;
    z-index: 99999;
	top:50%;
}

.mobilenav {
    top:0;
	bottom:0;
	left:0;
	right:0;
    z-index: 998;
    position: fixed;
    height: 100%;
	box-sizing:border-box;
	overflow:auto;
	max-width:550px;
	margin:0 auto;
	display:none;
	border-top:8px solid #EAA291;
	background:#FDEDED;
}

.top-trigger span:nth-of-type(1) {
    margin-top: -5px;
}

.top-trigger span:nth-of-type(2) {
    margin-top: 3px;
}

.movmobb1 .active span:nth-of-type(1) {
	margin-top: -3px;
	-webkit-transform: translateY(1px) rotate(-45deg);
	transform: translateY(1px) rotate(-45deg);
}
.movmobb1 .active span:nth-of-type(2) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
	margin-top: 6px;
}

.movmobb1 .active span:nth-of-type(1) {
	margin-top: -2px;
}
.movmobb1 .active span:nth-of-type(2) {
	margin-top: 7px;
}

.gnav .link02{
	padding:20px 10px;
}

.gnav .link02 > li:nth-child(1){
	margin:0 0 -20px 0;
}
@media screen and (max-width: 500px) {
.gnav .link02 {
    padding: 20px 0;
}
}

/* footer
-------------------------------------------------------------------*/
.application{
	padding:40px 20px 60px 20px;
	background:#FCF5E7;
	text-align:center;
}

.application .box{
	border-radius:20px;
	background:#F57F64;
	padding:8px;
}

.application .box h2{
	font-size: clamp(16px, 4.5vw, 25px);
	font-weight:700;
	color:#fff;
	padding:7px 0 10px 0;
}

.application .box ul{
	background:#FDFCF4;
	padding:30px 20px;
	border-radius:0 0 15px 15px;
}

.application .box ul li{
	margin:0 -20px;
}

.application .box ul li:nth-child(1){
	padding:0 0 10px 0;
}

footer{
	max-width:550px;
	margin:0 auto;
}

.pagenav{
	padding:20px 20px 30px 20px;
	background:#FDEDED;
	position:relative;
	text-align:center;
}

footer .pagenav{
	padding:0 20px 40px 20px;
}

footer .pagenav:after{
	content:"";
	width:100%;
	height:10px;
	position:absolute;
	top:-10px;
	left:0;
	right:0;
	background:url(../img/common/f-border.png) repeat-x top center;
}

.pagenav .tit{
	font-size:20px;
	font-weight:700;
	color:#C46752;
	padding:0 0 20px 0;
}

footer .pagenav .ico{
	position:relative;
	z-index:2;
	top:-30px;
	margin:0 auto -30px;
}

.pagenav .ico{
	width:56px;
	margin:0 auto;
}

.pagenav .link{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:0 10px;
}

.pagenav .link > li{
	width:48%;
}

footer .copy{
	background:#E9B2A5;
	color:#fff;
	font-size:12px;
	padding:10px 0;
	text-align:center;
}

@media screen and (max-width: 500px) {
.application .box {
    padding: 5px;
}	
	
.pagenav{
	padding:20px 10px 30px 10px;
}
	
footer .pagenav{
	padding:0 10px 40px 10px;
}
}