@charset "utf-8";



/*reset css*/
/*-----------------------------------------------------------------*/
#lp-content article,#lp-content aside,#lp-content figure,#lp-content figcaption,#lp-content footer,#lp-content header,#lp-content nav,#lp-content section,#lp-content main{ display: block; }
#lp-content small{ font-size: inherit; line-height: inherit; }
#lp-content body,#lp-content p,#lp-content h1,#lp-content h2,#lp-content h3,#lp-content h4,#lp-content h5,#lp-content h6,#lp-content dl,#lp-content dt,#lp-content dd,#lp-content div{ margin: 0; padding: 0; font-size: 100%; line-height: 1.5; }
#lp-content ul,#lp-content li,#lp-content ol{ list-style: none; margin: 0; padding: 0; }
#lp-content a img{ border: none; }
#lp-content a{ transition: all 0.25s linear; }
#lp-content a:hover{ opacity: 0.7; text-decoration: none; }
#lp-content img{ vertical-align: bottom; max-width: 100%; height: auto; }
#lp-content html{ font-size: 17px; }
#lp-content sup{ line-height: 0; }
#lp-content body,#lp-content p,#lp-content div{
	font-family: 'YakuHanJP','Noto Sans JP', "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #231815;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
@media screen and (max-width: 480px){ /*1112px以下のcss*/
	#lp-content a:hover{ opacity: 1; }
	#lp-content a:active{ opacity: 0.7; text-decoration: none; }
}



/*override css*/
/*-----------------------------------------------------------------*/
.header{ z-index: 200; }
.inner-container{ padding: 0; }
.c-breadcrumb{ position: relative; z-index: 100; }
.c-headings{ display: none; }
.footer{ position: relative; z-index: 100; }



/*common css*/
/*-----------------------------------------------------------------*/
#lp-content .js-inview{ opacity: 0; transition: opacity 0.5s; }
#lp-content .show{ opacity: 1!important; }
#lp-content .txt-left{ text-align: left; }
#lp-content .txt-center{ text-align: center; }
#lp-content .txt-right{ text-align: right; }
#lp-content .txt-bold{ font-weight: bold; }
#lp-content .pc{ display: block; }
#lp-content .sp{ display: none; }
@media screen and (max-width: 750px){ /*750px以下のcss*/
	#lp-content .pc{ display: none; }
	#lp-content .sp{ display: block; }
}




/*#lp-content tmp css*/
/*-----------------------------------------------------------------*/
#lp-content{ display: flex; display: -ms-flex; background: transparent; }
#lp-content .end-caption{ margin-top: 15%; font-size: 0.8rem; }
#lp-content .side-view01{ flex: 1; pointer-events: none; }
#lp-content .side-view01 .bg{ background: url(../image/bg01.webp) center center no-repeat; background-size: cover; position: fixed; width: calc((100% - 700px) / 2); height: 100dvh; right: 0; top: 0; margin-right: calc(((100% - 700px) / 2) + 700px); padding-top: 132px; }
#lp-content .side-view02{ flex: 1; pointer-events: none; }
#lp-content .side-view02 .bg{ background: url(../image/bg02.webp) center center no-repeat; background-size: cover; position: fixed; width: calc((100% - 700px) / 2); height: 100dvh; left: 0; top: 0; margin-left: calc(((100% - 700px) / 2) + 700px); padding-top: 132px; }
#lp-content .content{ overflow: hidden; background: #ffffff; width: 100%; padding: 0; position: relative; width: 700px; }
#lp-content .content img{ width: 100%; max-width: auto; height: auto; }
@media screen and (max-width: 750px){ /*750px以下のcss*/
	#lp-content .side-view01{ background-color: #2f523f; }
	#lp-content .side-view01 .bg{ display: none; }
	#lp-content .side-view02{ background-color: #2f523f; }
	#lp-content .side-view02 .bg{ display: none; }
	#lp-content .content{ width: 95%; }
}
@media screen and (max-width: 480px){ /*480px以下のcss*/
	#lp-content .content{ padding: 0; margin: 0; }
}



/*#lp-content css*/
/*-----------------------------------------------------------------*/
html{ scroll-padding-top: 0; }
#lp-content .content .anchor{ position: absolute; transform: translateY(-132px); }
#lp-content .content .util-navi{ margin: 0 auto; width: 90%; max-width: 490px; }
#lp-content .content .util-navi .navi{ border: solid #000000; border-width: 2px 0; }
#lp-content .content .util-navi .navi:nth-child(n+2){ margin-top: -2px; }
#lp-content .content .util-navi .navi a{ display: block; padding: 14px 0; font-size: 24px; line-height: 1.5; font-weight: bold; position: relative; }
#lp-content .content .util-navi .navi04 a{ color: #a01b46; }
#lp-content .content .util-navi .navi a::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translate(-50%,-50%) rotate(45deg); border: solid #000000; border-width: 2px 2px 0 0; width: 15px; height: 15px; box-sizing: content-box; }
#lp-content .content .info-section{ position: relative; }
#lp-content .content .info-section .date{ font-size: 21px; line-height: 1.42; font-weight: bold; text-align: center; }
#lp-content .content .info-section .caption{ font-size: 15px; line-height: 1.5; text-align: center; margin-top: 5px; }
#lp-content .content .info-section .copyright{ font-size: 16px; line-height: 1.5; text-align: center; margin-top: 5px; }
#lp-content .content .info-section .util-navi{ margin-top: 28px; }
#lp-content .content .intro-section{ margin-top: 30px; }
#lp-content .content .intro-section .txt{ font-size: 21px; line-height: 2; color: #345b3e; font-weight: bold; text-align: center; }
#lp-content .content .intro-section .movie{ width: 67.7142%; padding-top: 67.7142%; margin: 30px auto 0; position: relative; }
#lp-content .content .intro-section .movie video{ position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; transform: translate(-50%, -50%); }
#lp-content .content .intro-section .txt~.txt{ margin-top: 30px; }
#lp-content .content .message-section{ margin-top: 120px; }
#lp-content .content .message-section .frame-body{ width: 85.7143%; margin: 0 auto; background-color: #a01b46; padding: 36px 0; position: relative; border-radius: 32px; }
#lp-content .content .message-section .frame-body .deco{ position: absolute; left: 0; top: 0; width: 101.6667%; margin: -16.5621% 0 0 5%; }
#lp-content .content .message-section .frame-body .ttl{ font-size: 29px; line-height: 1.34; color: #e2ca60; font-weight: bold; text-align: center; }
#lp-content .content .message-section .frame-body .txt{ font-size: 18px; line-height: 2; color: #ffffff; text-align: center; margin-top: 20px; }
#lp-content .content .message-section .frame-body .photo{ width: 425px; margin: 20px 0 0 112px; }
#lp-content .content .message-section .frame-body .profile{ max-width: 500px; width: 90%; font-size: 18px; line-height: 2; color: #ffffff; margin: 20px auto 0; }
#lp-content .content .message-section .frame-body .profile .marker{ font-size: 111%; font-weight: bold; }
#lp-content .content .message-section .frame-body .navi{ max-width: 400px; width: 90%; margin: 20px auto 0; }
#lp-content .content .message-section .frame-body .navi a{ display: block; background-color: #ffffff; font-size: 20px; line-height: 1.5; padding: 16px 0; border-radius: 46px; text-align: center; font-weight: bold; color: #a01b46; vertical-align: middle; }
#lp-content .content .message-section .frame-body .navi a::after{ content: ""; display: inline-block; width: 0; height: 0; line-height: 0; border: solid transparent; border-width: 9px 0 9px 16px; border-left-color: #a01b46; margin-left: 0.5em; }
#lp-content .content .bag-section{ margin: 70px auto 0; text-align: center; }
#lp-content .content .bag-section .navi{ width: 90%; margin: 20px auto 0; }
#lp-content .content .bag-section .navi a{ display: block; background-color: #a01b46; font-size: 20px; line-height: 1.5; padding: 16px 0; border-radius: 31px; text-align: center; font-weight: bold; color: #ffffff; vertical-align: middle; }
#lp-content .content .bag-section .navi a::after{ content: ""; display: inline-block; width: 0; height: 0; line-height: 0; border: solid transparent; border-width: 9px 0 9px 16px; border-left-color: #ffffff; margin-left: 0.5em; }
#lp-content .content .bag-section .copy{ font-size: 25px; line-height: 2; font-weight: bold; color: #345b3e; }
#lp-content .content .bag-section .navi+.copy{ margin-top: 20px; }
#lp-content .content .bag-section .date{ font-size: 20px; line-height: 1.5; font-weight: bold; margin-top: 5px; }
#lp-content .content .bag-section .caption{ font-size: 15px; line-height: 1.5; margin-top: 5px; }
#lp-content .content .bag-section .photo{ margin-top: 40px; }
#lp-content .content .bag-section .photo01,
#lp-content .content .bag-section .photo04{ margin-top: 20px; }
#lp-content .content .bag-section .txt01{ font-size: 21px; line-height: 2; font-weight: bold; color: #000000; margin-top: 10px; }
#lp-content .content .bag-section .txt02{ font-size: 20px; line-height: 2; font-weight: bold; color: #a01b46; margin-top: 10px; }
#lp-content .content .bag-section .txt02+.copy{ margin-top: 40px; }
#lp-content .content .evt-section{ margin-top: 50px; position: relative; background: url(../image/bg03.webp) center 0 repeat-y; background-size: 100% auto; }
#lp-content .content .evt-section .deco{ position: absolute; left: 0; top: 0; width: 47.4286%; margin: 8.8571% 0 0 55.4286%; }
#lp-content .content .evt-section .inner-body{ width: 600px; margin: 0 auto; }
#lp-content .content .evt-section .ttl{ padding: 30px 0 50px; width: 297px; }
#lp-content .content .evt-section .evt-item{ padding: 30px 0; }
#lp-content .content .evt-section .evt-item .head{ font-size: 25px; line-height: 2; color: #a01b46; font-weight: bold; }
#lp-content .content .evt-section .evt-item .date{ font-size: 20px; line-height: 2; font-weight: bold; margin-top: 10px; }
#lp-content .content .evt-section .evt-item .caption{ font-size: 15px; line-height: 1.5; margin-top: 5px; }
#lp-content .content .evt-section .evt-item .photo{ margin-top: 20px; }
#lp-content .content .evt-section .evt-item .txt{ font-size: 20px; line-height: 2; margin-top: 10px; }
#lp-content .content .evt-section .evt-item .spec{ font-size: 20px; line-height: 2; font-weight: bold; margin-top: 10px; }
#lp-content .content .evt-section .evt-item .spec .s-size{ font-size: 80%; }
#lp-content .content .evt-section .evt-item .link-body{ margin-top: 30px; }
#lp-content .content .evt-section .evt-item .link-body .txt{ color: #a01b46; text-align: center; font-weight: bold; }
#lp-content .content .evt-section .evt-item .link-body .navi{ max-width: 460px; width: 100%; margin: 0 auto; }
#lp-content .content .evt-section .evt-item .link-body .txt~.navi{ margin-top: 10px; }
#lp-content .content .evt-section .evt-item .link-body .navi~.navi{ margin-top: 20px; }
#lp-content .content .evt-section .evt-item .link-body .navi a{ display: block; background-color: #a01b46; font-size: 20px; line-height: 1.5; padding: 16px 0; border-radius: 31px; text-align: center; font-weight: bold; color: #ffffff; vertical-align: middle; }
#lp-content .content .evt-section .evt-item .link-body .navi a::after{ content: ""; display: inline-block; width: 0; height: 0; line-height: 0; border: solid transparent; border-width: 9px 0 9px 16px; border-left-color: #ffffff; margin-left: 0.5em; }
#lp-content .content .evt-section .evt-item01 .date{ padding-left: 1em; text-indent: -1em; }
#lp-content .content .evt-section .evt-item05 .split-view01{ overflow: hidden; }
#lp-content .content .evt-section .evt-item05 .split-view01 .icon{ width: 133px; float: right; }
#lp-content .content .evt-section .evt-item05 .etc01{ margin-top: 30px; }
#lp-content .content .evt-section .evt-item05 .etc01 .bubble{ display: inline-block; background-color: #345b3e; color: #ffffff; font-size: 20px; line-height: 1.5; font-weight: bold; padding: 2px 15px; border-radius: 5px; }
#lp-content .content .evt-section .evt-item05 .etc01 .txt .marker{ color: #a01b46; font-weight: bold; }
#lp-content .content .evt-section .evt-item05 .etc01 .photo{ margin-top: 10px; }
#lp-content .content .evt-section .evt-item05 .etc01 .split-view02{ display: flex; justify-content: space-between; }
#lp-content .content .evt-section .evt-item05 .etc01 .split-view02 .txt-body{ flex: 1; }
#lp-content .content .evt-section .evt-item05 .etc01 .split-view02 .photo{ width: 30.833%; margin: 0 0 0 4%; }
#lp-content .content .catalog-section{ margin-top: 50px; text-align: center; }
#lp-content .content .catalog-section .photo{ width: 515px; margin: 0 auto; }
#lp-content .content .catalog-section .date{ font-size: 20px; line-height: 2; font-weight: bold; margin-top: 10px; }
#lp-content .content .catalog-section .caption{ font-size: 15px; line-height: 1.5; margin-top: 5px; }
#lp-content .content .catalog-section .txt{ font-size: 20px; line-height: 2; font-weight: bold; color: #a01b46; margin-top: 20px; }
#lp-content .content .catalog-section .navi{ max-width: 460px; width: 100%; margin: 20px auto 0; }
#lp-content .content .catalog-section .navi a{ display: block; background-color: #a01b46; font-size: 20px; line-height: 1.5; padding: 16px 0; border-radius: 31px; text-align: center; font-weight: bold; color: #ffffff; vertical-align: middle; }
#lp-content .content .catalog-section .navi a::after{ content: ""; display: inline-block; width: 0; height: 0; line-height: 0; border: solid transparent; border-width: 9px 0 9px 16px; border-left-color: #ffffff; margin-left: 0.5em; }
#lp-content .content .end-section{ margin-top: 40px; }
#lp-content .content .end-section .app-body{ background-color: #a01b46; padding: 30px 0; margin-top: 30px; }
#lp-content .content .end-section .app-body .split-view{ display: flex; justify-content: center; align-items: center; }
#lp-content .content .end-section .app-body .split-view .icon{ width: 68px; padding-right: 10px; }
#lp-content .content .end-section .app-body .split-view .txt{ font-size: 25px; line-height: 1.4; color: #ffffff; font-weight: bold; }
#lp-content .content .end-section .app-body .navi{ max-width: 460px; width: 90%; margin: 15px auto 0; }
#lp-content .content .end-section .app-body .navi a{ display: block; background-color: #ffffff; font-size: 20px; line-height: 1.5; padding: 16px 0; border-radius: 31px; text-align: center; font-weight: bold; color: #a01b46; vertical-align: middle; }
#lp-content .content .end-section .app-body .navi a::after{ content: ""; display: inline-block; width: 0; height: 0; line-height: 0; border: solid transparent; border-width: 9px 0 9px 16px; border-left-color: #a01b46; margin-left: 0.5em; }

@media screen and (max-width: 1023px){ /*1023px以下のcss*/
	#lp-content .content .anchor{ transform: translateY(-68px); }
}
@media screen and (max-width: 750px){ /*750px以下のcss*/
	#lp-content .content .util-navi{ max-width: none; }
	#lp-content .content .util-navi .navi a{ padding: 5% 0; font-size: 4.3vw; }
	#lp-content .content .util-navi .navi a::before{ width: 2vw; height: 2vw; }
	#lp-content .content .lp-ttl{ margin: 0 -13% 0 -8%; }
	#lp-content .content .info-section .date{ font-size: 4.5vw; }
	#lp-content .content .info-section .caption{ font-size: 3.2vw; margin-top: 1%; }
	#lp-content .content .info-section .copyright{ font-size: 3.2vw; margin-top: 1%; }
	#lp-content .content .info-section .util-navi{ margin-top: 10%; }
	#lp-content .content .intro-section{ margin-top: 10%; }
	#lp-content .content .intro-section .txt{ font-size: 4.5vw; }
	#lp-content .content .intro-section .movie{ width: 90%; padding-top: 90%; margin: 5% auto 0; }
	#lp-content .content .intro-section .txt~.txt{ margin-top: 5%; }
	#lp-content .content .message-section{ margin-top: 16%; }
	#lp-content .content .message-section .frame-body{ width: 90%; padding: 7% 5%; border-radius: 4.26vw; }
	#lp-content .content .message-section .frame-body .ttl{ font-size: 4.5vw; }
	#lp-content .content .message-section .frame-body .txt{ font-size: 3.73vw; margin-top: 5%; text-align: left; }
	#lp-content .content .message-section .frame-body .photo{ width: 100%; margin: 5% auto 0; }
	#lp-content .content .message-section .frame-body .profile{ max-width: none; width: 100%; font-size: 3.73vw; margin-top: 5%; }
	#lp-content .content .message-section .frame-body .profile .marker{ font-size: 111%; font-weight: bold; }
	#lp-content .content .message-section .frame-body .navi{ max-width: none; width: 100%; margin-top: 5%; }
	#lp-content .content .message-section .frame-body .navi a{ font-size: 3.73vw; padding: 4.26vw 0; border-radius: 10.13vw; }
	#lp-content .content .message-section .frame-body .navi a::after{ border-width: 1.5vw 0 1.5vw 2.1vw; }
	#lp-content .content .bag-section{ margin: 10% auto 0; }
	#lp-content .content .bag-section .navi{ margin-top: 5%; }
	#lp-content .content .bag-section .navi a{ font-size: 3.73vw; padding: 4.26vw 0; border-radius: 10.13vw; }
	#lp-content .content .bag-section .navi a::after{ border-width: 1.5vw 0 1.5vw 2.1vw; }
	#lp-content .content .bag-section .copy{ font-size: 4.5vw; }
	#lp-content .content .bag-section .navi+.copy{ margin-top: 5%; }
	#lp-content .content .bag-section .date{ font-size: 3.73vw; margin-top: 1%; }
	#lp-content .content .bag-section .caption{ font-size: 3.2vw; margin-top: 1%; }
	#lp-content .content .bag-section .photo{ margin-top: 8%; }
	#lp-content .content .bag-section .photo01,
	#lp-content .content .bag-section .photo04{ margin-top: 5%; }
	#lp-content .content .bag-section .txt01{ font-size: 3.73vw; margin-top: 3%; }
	#lp-content .content .bag-section .txt02{ font-size: 3.73vw; margin-top: 3%; }
	#lp-content .content .bag-section .txt02+.copy{ margin-top: 7%; }
	#lp-content .content .evt-section{ margin-top: 10%; }
	#lp-content .content .evt-section .inner-body{ width: 90%; }
	#lp-content .content .evt-section .ttl{ padding: 5% 0 10%; width: 50%; }
	#lp-content .content .evt-section .evt-item{ padding: 7% 0; }
	#lp-content .content .evt-section .evt-item .head{ font-size: 4.2vw; line-height: 1.7; }
	#lp-content .content .evt-section .evt-item .date{ font-size: 3.73vw; line-height: 1.7; margin-top: 2%; }
	#lp-content .content .evt-section .evt-item .caption{ font-size: 3.2vw; margin-top: 1%; }
	#lp-content .content .evt-section .evt-item .photo{ margin-top: 5%; }
	#lp-content .content .evt-section .evt-item .txt{ font-size: 3.73vw; line-height: 1.7; margin-top: 5%; }
	#lp-content .content .evt-section .evt-item .spec{ font-size: 3.73vw; line-height: 1.7; margin-top: 2%; }
	#lp-content .content .evt-section .evt-item .link-body{ margin-top: 5%; }
	#lp-content .content .evt-section .evt-item .link-body .navi{ max-width: none; width: 100%; margin-top: 5%; }
	#lp-content .content .evt-section .evt-item .link-body .txt~.navi{ margin-top: 3%; }
	#lp-content .content .evt-section .evt-item .link-body .navi~.navi{ margin-top: 5%; }
	#lp-content .content .evt-section .evt-item .link-body .navi a{ font-size: 3.73vw; padding: 4.26vw 0; border-radius: 10.13vw; }
	#lp-content .content .evt-section .evt-item .link-body .navi a::after{ border-width: 1.5vw 0 1.5vw 2.1vw; }
	#lp-content .content .evt-section .evt-item05 .split-view01 .icon{ max-width: 133px; width: 20%; }
	#lp-content .content .evt-section .evt-item05 .etc01{ margin-top: 8%; }
	#lp-content .content .evt-section .evt-item05 .etc01 .bubble{ font-size: 3.73vw; padding: 0.5333vw 2vw; border-radius: 1.3333vw; }
	#lp-content .content .evt-section .evt-item05 .etc01 .txt{ margin-top: 3%; }
	#lp-content .content .evt-section .evt-item05 .etc01 .txt .marker{ color: #a01b46; font-weight: bold; }
	#lp-content .content .evt-section .evt-item05 .etc01 .photo{ margin-top: 3%; }
	#lp-content .content .evt-section .evt-item05 .etc01 .split-view02 .photo{ margin: 0 0 0 2%; }
	#lp-content .content .catalog-section{ margin-top: 10%; text-align: center; }
	#lp-content .content .catalog-section .photo{ width: 70%; margin: 0 auto; }
	#lp-content .content .catalog-section .date{ font-size: 3.73vw; margin-top: 5%; }
	#lp-content .content .catalog-section .caption{ font-size: 3.2vw; margin-top: 1%; }
	#lp-content .content .catalog-section .txt{ font-size: 3.73vw; margin-top: 5%; }
	#lp-content .content .catalog-section .navi{ max-width: none; width: 90%; margin: 5% auto 0; }
	#lp-content .content .catalog-section .navi a{ font-size: 3.73vw; padding: 4.26vw 0; border-radius: 10.13vw; }
	#lp-content .content .catalog-section .navi a::after{ border-width: 1.5vw 0 1.5vw 2.1vw; }
	#lp-content .content .end-section{ margin-top: 10%; }
	#lp-content .content .end-section .app-body{ padding: 7% 5%; margin-top: 7%; }
	#lp-content .content .end-section .app-body .split-view .icon{ max-width: 68px; width: 20%; padding-right: 3%; }
	#lp-content .content .end-section .app-body .split-view .txt{ font-size: 4.2vw; }
	#lp-content .content .end-section .app-body .navi{ max-width: none; width: 100%; margin: 5% auto 0; }
	#lp-content .content .end-section .app-body .navi a{ font-size: 3.73vw; padding: 4.26vw 0; border-radius: 10.13vw; }
	#lp-content .content .end-section .app-body .navi a::after{ border-width: 1.5vw 0 1.5vw 2.1vw; }
}




