@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{font-size:100%;}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{zoom:1;}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline: none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
/*-----------------------------------------------
 * Base
 * Modal
 * Header
 * Parts
-------------------------------------------------*/
/*-----------------------------------------------
 * Base
-------------------------------------------------*/
:root{
	--vw-min: 1366;
	--vh-min: 768;

	/* カラー */
	--color-blue002: #002D69;
	--color-purple616: #6161AB;
	--color-purple585: #58589B;
	--color-purple272: #272745;
	--color-green1E7: #1E7883; 
	--color-green406: #406B77; 
	--color-green3B8: #3B8989; 
	--color-green1F3: #1F3E48; 

	--color-op20-blue002: rgba(0,45,105,.2);

	--purple-gradient: linear-gradient(var(--color-purple616), var(--color-purple272));
	--green-gradient: linear-gradient(var(--color-green406), var(--color-green1F3));
	--blue-gradient: linear-gradient(var(--color-blue002), var(--color-green3B8));
	--blue-90-gradient: linear-gradient(90deg, var(--color-blue002), var(--color-green3B8));

    --cubic-bezier01: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    --cubic-bezier02: cubic-bezier(0.34, 1.56, 0.64, 1);


	/* フォント */
	--main-font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
	--font-sans: "Noto Sans JP", sans-serif;
	--font-reggae: "Reggae One", system-ui;

}
@media screen and (max-width:768px) {
	:root {
		--vw-min: 375;

		--main-font-size: calc(24 / var(--vw-min) * 100vw);
	}
}
body{
	font-family: var(--font-sans);
	font-size: var(--main-font-size);
	color: var(--color-blue002);
	font-feature-settings: "palt";
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
}
.pc{ display: block; }
.sp{ display: none; }
a{ color: var(--color-blue002); }
a:hover{ text-decoration: none; }
.ah { transition: opacity .3s ease; }
.ah:hover { opacity: .7; }
::selection{
	background: #6ccfee;
	color: #fff;
}
::-moz-selection{
	background: #6ccfee;
	color:#fff;
}
@media screen and (max-width:768px){ 
	.sp{ display: block; }
	.pc{ display: none; }
	.ah:hover { opacity: 1; }
}
/**
* scroll bar
**/
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}
::-webkit-scrollbar-track {
	background: #fff;
}
::-webkit-scrollbar-thumb {
	background: var(--color-blue002);
	margin: 2px;
	box-shadow: none;
}
#fullWrap {
	min-height: 100vh;
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
}
.f-reggae {
	font-family: var(--font-reggae);
}
.js-animate.--paused,
.js-animate.--paused::before{
    animation-play-state: paused!important;
}
/*-----------------------------------------------
 * Common
-------------------------------------------------*/
/**
* bg
**/
.contBg {
	width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -3;
    pointer-events: none;
}
.contBgIn {
    width: 100%;
    height: min(100vh, 100%);
    position: sticky;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	background: url(../img/common/bg/bg_w.jpg)no-repeat center/cover;
}
@supports (background-image: url(../img/common/bg/bg_w.webp)){
	.contBgIn {
		background-image: url(../img/common/bg/bg_w.webp);
	}
}
/**
* hone
**/
.deco__hone-l {
    width: min(calc(430 / var(--vw-min) * 100vw),430px);
    height: min(calc(1077 / var(--vw-min) * 100vw),1077px);
    position: absolute;
    top: min(calc(152 / var(--vw-min) * 100vw),152px);
    right: 0;
    z-index: -2;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .deco__hone-l {
        width: calc(240 / var(--vw-min) * 100vw);
        height: calc(601 / var(--vw-min) * 100vw);
        top: calc(78 / var(--vw-min) * 100vw);
    }
}
.deco__hone-l::before {
    content: "";
    width: min(calc(430 / var(--vw-min) * 100vw),430px);
    height: min(calc(1077 / var(--vw-min) * 100vw),1077px);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/common/deco/deco_hone-l.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_hone-l.webp)){
	.deco__hone-l::before {
		background-image: url(../img/common/deco/deco_hone-l.webp);
	}
}
@media screen and (max-width:768px){
    .deco__hone-l::before {
        width: calc(240 / var(--vw-min) * 100vw);
        height: calc(601 / var(--vw-min) * 100vw);        
    }
}
/**
* tit
**/
.cont-titWrap {
    display: flex;
    flex-direction: column;
}
.cont-tit-ja {
    font-size: min(calc(70 / var(--vw-min) * 100vw),70px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (max-width:768px){
    .cont-tit-ja {
        font-size: calc(40 / var(--vw-min) * 100vw);
    }
}
.cont-tit-en {
    font-size: min(calc(30 / var(--vw-min) * 100vw),30px);
    color: var(--color-green1E7);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.04em;
    margin-top: min(calc(18 / var(--vw-min) * 100vw),18px);
}
@media screen and (max-width:768px){
    .cont-tit-en {
        font-size: calc(24 / var(--vw-min) * 100vw);
        margin-top: calc(16 / var(--vw-min) * 100vw);
    }
}
/**
* btn
**/
.linkBtn {
    display: flex;
    justify-content: flex-end;
    margin-top: min(calc(60 / var(--vw-min) * 100vw),60px);
}
@media screen and (max-width:768px){
	.linkBtn {
		justify-content: center;
		margin-top: calc(50 / var(--vw-min) * 100vw);
	}
}
.linkA {
    font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0em;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: min(calc(12 / var(--vw-min) * 100vw),12px) min(calc(70 / var(--vw-min) * 100vw),70px);
    text-decoration: none;
	transition: transform .4s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.linkA {
		font-size: calc(20 / var(--vw-min) * 100vw);
		padding: calc(12 / var(--vw-min) * 100vw) calc(70 / var(--vw-min) * 100vw);
	}
}
.linkA::before,
.linkA::after {
    content: "";
    width: min(calc(14 / var(--vw-min) * 100vw),14px);
    height: min(calc(40 / var(--vw-min) * 100vw),40px);
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-mask: url(../img/common/deco/deco_hone.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_hone.svg)no-repeat center/contain;
    background-color: var(--color-blue002);
	transition: transform .4s var(--cubic-bezier02), background-color 0.3s ease;

}
.linkA::before {
    left: 0;
}
.linkA::after {
    right: 0;
}
@media screen and (max-width:768px){
	.linkA::before,
	.linkA::after {
		width: calc(14 / var(--vw-min) * 100vw);
		height: calc(40 / var(--vw-min) * 100vw);
	}
}
.backBtn {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: min(calc(100 / var(--vw-min) * 100vw),100px);
}
@media screen and (max-width:768px){
	.backBtn {
		padding-top: calc(40 / var(--vw-min) * 100vw);
	}
}
.backLink {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	display: flex;
    align-items: center;
	text-decoration: none;
	transition: .4s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.backLink {
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}
.backLink::before {
	content: "";
	width: min(calc(59 / var(--vw-min) * 100vw),59px);
	height: calc(40 / var(--vw-min) * 100vw);
	display: inline-block;
	-webkit-mask: url(../img/common/deco/deco_arrow.svg)no-repeat center/contain;
	mask: url(../img/common/deco/deco_arrow.svg)no-repeat center/contain;
	background-color: var(--color-blue002);
	margin-right: min(calc(14 / var(--vw-min) * 100vw),14px);
	transform: scale(-1,1);
	transition: .4s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.backLink::before {
		width: calc(47 / var(--vw-min) * 100vw);
		height: calc(32 / var(--vw-min) * 100vw);
		margin-right: calc(10 / var(--vw-min) * 100vw);
	}
}
@media (hover: hover) and (pointer: fine){
	.linkA:hover {
		color: var(--color-green1E7);
	}
	.linkA:hover::before {
		background-color: var(--color-green1E7);
        animation:  kata-bottom 0.25s ease forwards;
	}
	.linkA:hover::after {
		background-color: var(--color-green1E7);
        animation:  kata-bottom 0.25s ease forwards;
	}
	.backLink:hover {
		color: var(--color-green1E7);
	}
	.backLink:hover::before {
		transform: scale(-1,1) translateX(5px);
		background-color: var(--color-green1E7);
	}
}
/*-----------------------------------------------
 * subSec
-------------------------------------------------*/
.subSec {
	position: relative;
	padding: min(calc(265 / var(--vw-min) * 100vw),265px) 0 min(calc(168 / var(--vw-min) * 100vw),168px);
}
@media screen and (max-width:768px){
	.subSec {
		padding: calc(220 / var(--vw-min) * 100vw) 0 calc(100 / var(--vw-min) * 100vw);
	}
}
.subSecWrap {
	width: min(calc(1100 / var(--vw-min) * 100vw),1100px);
	margin: 0 auto;
}
@media screen and (max-width:768px){
	.subSecWrap {
		width: 100%;
		padding: 0 calc(24 / var(--vw-min) * 100vw);
	}
}
.subSec .cont-titWrap {
    align-items: center;
    margin-bottom: min(calc(80 / var(--vw-min) * 100vw),80px);
}
@media screen and (max-width:768px){
	.subSec .cont-titWrap {
		align-items: flex-start;
		margin-bottom: calc(34 / var(--vw-min) * 100vw);
	}
}
/**
* logo
**/
.subSec__logo {
	width: min(calc(210 / var(--vw-min) * 100vw),210px);
	height: min(calc(122 / var(--vw-min) * 100vw),122px);
	position: fixed;
	top: min(calc(40 / var(--vw-min) * 100vw),40px);
	left: min(calc(40 / var(--vw-min) * 100vw),40px);
	z-index: 900;
	transition: .3s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.subSec__logo {
		width: calc(160 / var(--vw-min) * 100vw);
		height: calc(93 / var(--vw-min) * 100vw);
		top: calc(12 / var(--vw-min) * 100vw);
		left: calc(12 / var(--vw-min) * 100vw);
	}
}
.subSec__logoLink {
	width: 100%;
	height: 100%;
	display: block;
	background: url(../img/common/logo/logo.png)no-repeat center/contain;
}
@media (hover: hover) and (pointer: fine){
	.subSec__logo:hover {
		transform: scale(1.05);
	}
}
/**
* pageNav
**/
.pageNavWrap {
	position: relative;
	margin-top: min(calc(107 / var(--vw-min) * 100vw),107px);
}
@media screen and (max-width:768px){
	.pageNavWrap {
		margin-top: calc(117 / var(--vw-min) * 100vw);
	}
}
.wp-pagenavi {
	width: min(calc(750 / var(--vw-min) * 100vw),750px);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
@media screen and (max-width:768px){
	.wp-pagenavi {
		width: 100%;
	}
}
.wp-pagenavi .page,
.wp-pagenavi span {
	font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
	color: var(--color-blue002);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	width: min(calc(46 / var(--vw-min) * 100vw),46px);
	height: min(calc(46 / var(--vw-min) * 100vw),46px);
	position: relative;
	display: flex;
    flex-direction: column;
	justify-content: center;
    align-items: center;
	text-decoration: none;
	margin: 0 min(calc(5 / var(--vw-min) * 100vw),5px);
	background-color: rgba(255, 255, 255, .6);
	transition: .3s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.wp-pagenavi .page,
	.wp-pagenavi span {
		font-size: calc(12 / var(--vw-min) * 100vw);
		width: calc(34 / var(--vw-min) * 100vw);
		height: calc(34 / var(--vw-min) * 100vw);
		margin: 0 calc(5 / var(--vw-min) * 100vw);
	}
}
.wp-pagenavi span::before,
.wp-pagenavi .page::before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	inset: 0;
	z-index: -1;
	opacity: 0;
	margin: auto;
	background-image: var(--blue-gradient);
	transition: .3s var(--cubic-bezier02);
}
.wp-pagenavi span.current {
	color: #fff;
	background-color: unset;
}
.wp-pagenavi span.current::before {
	opacity: 1;
}
.previouspostslink,
.nextpostslink {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	display: flex;
	align-items: center;
	text-decoration: none;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .3s var(--cubic-bezier02);
}
.previouspostslink::before,
.nextpostslink::after {
	content: "";
	width: min(calc(59 / var(--vw-min) * 100vw),59px);
	height: min(calc(40 / var(--vw-min) * 100vw),40px);
	display: inline-block;
	-webkit-mask: url(../img/common/deco/deco_arrow.svg)no-repeat center/contain;
	mask: url(../img/common/deco/deco_arrow.svg)no-repeat center/contain;
	background-color: var(--color-blue002);
	transition: .3s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.previouspostslink,
	.nextpostslink {
		font-size: calc(16 / var(--vw-min) * 100vw);
		top: calc(-57 / var(--vw-min) * 100vw);
		bottom: unset;
	}
	.previouspostslink::before,
	.nextpostslink::after {
		width: calc(47 / var(--vw-min) * 100vw);
		height: calc(32 / var(--vw-min) * 100vw);
	}
}
.previouspostslink {
	left: 0;
}
.nextpostslink {
	right: 0;
}
.previouspostslink::before {
	transform: scale(-1,1);
	margin-right: min(calc(10 / var(--vw-min) * 100vw),10px);
}
.nextpostslink::after {
	margin-left: min(calc(10 / var(--vw-min) * 100vw),10px);
}
@media screen and (max-width:768px){
	.previouspostslink::before {
		margin-right: calc(6 / var(--vw-min) * 100vw);
	}
	.nextpostslink::after {
		margin-left: calc(6 / var(--vw-min) * 100vw);
	}
}
@media (hover: hover) and (pointer: fine){
	.previouspostslink:hover,
	.nextpostslink:hover {
		color: var(--color-green1E7);
	}
	.previouspostslink:hover::before {
		transform: scale(-1,1) translateX(5px);
		background-color: var(--color-green1E7);
	}
	.nextpostslink:hover::after {
		transform: translateX(5px);
		background-color: var(--color-green1E7);
	}
	.wp-pagenavi .page:hover {
		color: #fff;
    	background-color: unset;
	}
	.wp-pagenavi .page:hover::before {
		opacity: 1;
	}
}

/*-----------------------------------------------
 * Modal
-------------------------------------------------*/
/**
 * modalBox
 * 基盤のモーダル
 */
.modalBox{
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0,0,0,.75);
	-webkit-overflow-scrolling: touch;
	display: none;

}
.oneModal{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
	display: none;
}
.oneModal.is-show {
	display: block;
}

/* oneModalIn */
.oneModalIn{
	width: 100%;
	height: auto;
	min-height: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
.oneModalIn__cont{
	padding: min(calc(50 / var(--vw-min) * 100vw),50px) 0;
}
@media screen and (max-width:768px){
	.oneModalIn{
		min-width: 100%;
	}
	.oneModalIn__cont{
		width: 100%;
		padding: min(calc(30 / var(--vw-min) * 100vw), 30px) 0;
	}
}

/**
 * closeBtn
 */
.closeBtn {
	width: min(calc(80 / var(--vw-min) * 100vw), 80px);
	height: min(calc(10 / var(--vw-min) * 100vw), 10px);
	position: absolute;
	top: min(calc(48 / var(--vw-min) * 100vw),48px);
	right: min(calc(48 / var(--vw-min) * 100vw),48px);
	z-index: 2;
}
@media screen and (max-width:768px){
	.closeBtn{
		width: calc(40 / var(--vw-min) * 100vw);
		height: calc(6 / var(--vw-min) * 100vw);
		top: calc(24 / var(--vw-min) * 100vw);
		right: calc(10 / var(--vw-min) * 100vw);
	}
}
.closeBtn a{
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}
.closeBtn__line {
	width: 100%;
	height: 100%;
	position: relative;
}
.closeBtn__line span {
	width: 100%;
	height: min(calc(1 / var(--vw-min) * 100vw),1px);
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: var(--color-whiteEBE);
}
.closeBtn__line span:nth-child(1) {
	transform: rotate(16deg);
}
.closeBtn__line span:nth-child(2) {
	transform: rotate(-16deg);
}
@media screen and (max-width:768px){
	.closeBtn__line span {
		height: calc(1 / var(--vw-min) * 100vw);
	}
}

/**
 * iframe
 */
/* common */
.commonIframe{
	width: 100%;
	height: 100%;
	display: block;
}

/* youtube */
.youtubeIframeWrap {
	width: 70%;
	max-width: 159.993vh;
	position: relative;
}
@media screen and (max-width:768px){
	.youtubeIframeWrap {
		width: 100%;
		max-width: 100%;
	}
}
.youtubeIframeWrap:before{
	content: "";
	display: block;
	padding-top: 56.25%;
	z-index: 0;
}
.youtubeIframe{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.modalBox[data-option="-ytShort"] .youtubeIframeWrap,
.youtubeIframeWrap[data-type="short"]{
	max-width: calc(56.25vh - 80px);
}
.modalBox[data-option="-ytShort"] .youtubeIframeWrap:before,
.youtubeIframeWrap[data-type="short"]:before{
	padding-top: 177.7778%;
}

/**
* COMMENT MODAL
**/
.commentWrap {
	max-width: min(calc(880 / var(--vw-min) * 100vw),880px);
}
@media screen and (max-width:768px){
	.commentWrap {
		max-width: 100%;
		padding: 0 calc(32 / var(--vw-min) * 100vw);
	}
}
.commentIn {
	display: flex;
}
@media screen and (max-width:768px){
	.commentIn {
		flex-direction: column;
	}
}
.comment__img {
	width: calc(100% - min(calc(520 / var(--vw-min) * 100vw),520px));
}
@media screen and (max-width:768px){
	.comment__img {
		width: 100%;
	}
}
.comment__img img {
	width: 100%;
	pointer-events: none;
}
.commentDetail {
	width: min(calc(520 / var(--vw-min) * 100vw),520px);
	padding-left: min(calc(80 / var(--vw-min) * 100vw),80px);
	margin-top: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
	.commentDetail {
		width: 100%;
		padding-left: 0;
		margin-top: calc(32 / var(--vw-min) * 100vw);
	}
}
.comment__nameWrap {
	display: flex;
	flex-direction: column;
}
.comment__pos {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	color: var(--color-orangeF29);
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.03em;
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw),8px);
}
@media screen and (max-width:768px){
	.comment__pos {
		font-size: calc(17 / var(--vw-min) * 100vw);
		text-align: center;
		margin-bottom: calc(4 / var(--vw-min) * 100vw);
	}
}
.comment__name {
	font-size: min(calc(32 / var(--vw-min) * 100vw),32px);
	font-weight: 500;
	line-height: 1.31;
	letter-spacing: 0.08em;
	margin-bottom: min(calc(66 / var(--vw-min) * 100vw),66px);
}
@media screen and (max-width:768px){
	.comment__name {
		font-size: calc(28 / var(--vw-min) * 100vw);
		text-align: center;
		margin-bottom: calc(24 / var(--vw-min) * 100vw);
	}
}
.comment__txt {
	font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
	font-weight: 500;
	line-height: 2.13;
	letter-spacing: 0.03em;
}
@media screen and (max-width:768px){
	.comment__txt {
		font-size: calc(13 / var(--vw-min) * 100vw);
	}
}
/**
* IMG MODAL
**/
.imgModalCont img {
	width: 100%;
	max-width: 100%;
	height: 100%;
	object-fit: scale-down;
	/* position: absolute; */
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 48px;
	-webkit-touch-callout: none;
	-ms-user-select: none;
	-webkit-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-moz-touch-callout: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	pointer-events: none;
}

/*-----------------------------------------------
 * Header
-------------------------------------------------*/
.header {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 999;
}
/* inner */
.header__inner {
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;		
	z-index: 1;
	pointer-events: none;
}
.headerNavBg {
    width: min(calc(360 / var(--vw-min) * 100vw), 360px);
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
    background-color: rgba(0,0,0,.8);
    -webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
}
.headerNavBg::before {
	content: "";
	width: min(calc(100 / var(--vw-min) * 100vw), 100px);
    height: min(calc(54 / var(--vw-min) * 100vw), 54px);
	display: block;
	position: absolute;
	top: min(calc(40 / var(--vw-min) * 100vw), 40px);
    right: min(calc(40 / var(--vw-min) * 100vw), 40px);
	z-index: 1;
    border-radius: min(calc(120 / var(--vw-min) * 100vw), 120px);
	box-shadow: 0 0 12px #000;
	opacity: 0;
	transition: .3s ease;
}
@media screen and (max-width:768px){
	.headerNavBg {
		width: 100%;
	}
	.headerNavBg::before {
		width: calc(70 / var(--vw-min) * 100vw);
		height: calc(38 / var(--vw-min) * 100vw);
		top: calc(12 / var(--vw-min) * 100vw);
		right: calc(12 / var(--vw-min) * 100vw);
		border-radius: calc(120 / var(--vw-min) * 100vw);
	}
}
.headerNav {
	width: min(calc(360 / var(--vw-min) * 100vw),360px);
	height: 100%;
	min-height: min(100%,100vh);
	position: relative;
	z-index: 2;
	margin-left: calc(100vw - min(calc(360 / var(--vw-min) * 100vw),360px));
	padding: min(calc(210 / var(--vw-min) * 100vw),210px) 0 min(calc(40 / var(--vw-min) * 100vw),40px);
}
@media screen and (max-width:768px){
	.headerNav {
		width: 100%;
		height: unset;
		margin-left: auto;
		padding: calc(148 / var(--vw-min) * 100vw) 0 calc(30 / var(--vw-min) * 100vw);
	}
}
.headerNavLists,
.header .official__lists {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: min(calc(28 / var(--vw-min) * 100vw),28px);
	padding: 0 min(calc(40 / var(--vw-min) * 100vw),40px);
}
@media screen and (max-width:768px){
	.headerNavLists,
	.header .official__lists {
		gap: calc(30 / var(--vw-min) * 100vw);
		padding: 0 calc(48 / var(--vw-min) * 100vw);
	}
}
.headerNavLists__item {
	display: flex;
	align-items: center;
}
.headerNavLists__item::before {
	content: "";
	width: min(calc(11 / var(--vw-min) * 100vw),11px);
	height: min(calc(11 / var(--vw-min) * 100vw),11px);
	display: block;
	border-radius: 50%;
	background-color: #fff;
	margin-right: min(calc(14 / var(--vw-min) * 100vw),14px);
	transition: .3s ease;
}
@media screen and (max-width:768px){
	.headerNavLists__item::before {
		width: calc(11 / var(--vw-min) * 100vw);
		height: calc(11 / var(--vw-min) * 100vw);
		margin-right: calc(12 / var(--vw-min) * 100vw);
	}
}
.navLink {
    font-size: min(calc(24 / var(--vw-min) * 100vw), 24px);
    color: #fff;
	font-weight: 400;
    line-height: 1;
    display: inline-block;
    text-decoration: none;
	transition: .3s ease;
}
@media screen and (max-width:768px){
	.navLink {
		font-size: calc(24 / var(--vw-min) * 100vw);
	}
}
.header .official__lists {
	flex-direction: column;
	align-items: flex-end;
	padding-top: min(calc(170 / var(--vw-min) * 100vw),170px);
}
@media screen and (max-width:768px){
	.header .official__lists {
		padding-top: calc(200 / var(--vw-min) * 100vw);
	}
}
/**
 * navBtn
 */
.header__navBtnWrap {
	width: min(calc(100 / var(--vw-min) * 100vw), 100px);
	height: min(calc(54 / var(--vw-min) * 100vw), 54px);
	position: absolute;
	top: min(calc(40 / var(--vw-min) * 100vw),40px);
	right: min(calc(40 / var(--vw-min) * 100vw),40px);
	z-index: 2;
	border-radius: min(calc(120 / var(--vw-min) * 100vw),120px);
	overflow: hidden;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid #000;
}
@media screen and (max-width:768px){
	.header__navBtnWrap {
		width: calc(70 / var(--vw-min) * 100vw);
		height: calc(38 / var(--vw-min) * 100vw);
		top: calc(12 / var(--vw-min) * 100vw);
		right: calc(12 / var(--vw-min) * 100vw);
		border-radius: calc(120 / var(--vw-min) * 100vw);
		border-width: calc(1 / var(--vw-min) * 100vw);
	}
}
.header__navBtn {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../img/common/bg/bg_b.jpg)no-repeat center/cover;
}
@supports (background-image: url(../img/common/bg/bg_b.webp)){
	.header__navBtn {
		background-image: url(../img/common/bg/bg_b.webp);
	}
}
.header__navBtn__lineWrap {
	width: min(calc(40 / var(--vw-min) * 100vw), 40px);
	height: min(calc(24 / var(--vw-min) * 100vw), 24px);
	position: relative;
}
@media screen and (max-width:768px){
	.header__navBtn__lineWrap {
		width: calc(28 / var(--vw-min) * 100vw);
		height: calc(17 / var(--vw-min) * 100vw);
	}
}
.header__navBtn--line {
	width: 100%;
	height: min(calc(10 / var(--vw-min) * 100vw),10px);
	display: block;
	position: absolute;
	margin: auto;
	-webkit-mask: url(../img/common/deco/deco_hone-he.svg)no-repeat center/contain;
	mask: url(../img/common/deco/deco_hone-he.svg)no-repeat center/contain;
	background-color: #fff;
}
.header__navBtn--line:nth-child(1) {
	top: 0;
}
.header__navBtn--line:nth-child(2) {
	bottom: 0;
}
@media screen and (max-width:768px){
	.header__navBtn--line {
		height: calc(7 / var(--vw-min) * 100vw);
	}
}
/**
 * active
 */
.header__inner {
	transform: translateX(100%);
	transition: transform .5s ease;
}
.header.is-active .header__inner {
	transform: translateX(0);
	pointer-events: auto;
}
.header.is-active .headerNavBg::before {
	opacity: 1;
	transition-delay: .4s;
}
.header__navBtn--line {
	transition: transform .3s ease, opacity .3s ease;
}
.header.is-active .header__navBtnWrap {
	border-color: #fff;
}
.header__navBtn.is-active .header__navBtn--line:nth-child(1) {
	transform: rotate(25deg);
	bottom: 0;
}
.header__navBtn.is-active .header__navBtn--line:nth-child(2) {
	transform: rotate(-25deg);
	top: 0;
}
.headerNavLists__item.is-active::before {
	background-color: var(--color-green1E7);
}
.headerNavLists__item.is-active .navLink {
	color: var(--color-green1E7);
}
@media (hover: hover) and (pointer: fine){
	.headerNavLists__item:hover::before {
		background-color: var(--color-green1E7);
	}
	.navLink:hover {
		color: var(--color-green1E7);
	}
	.header__navBtn:not(.is-active):hover .header__navBtn--line:nth-child(1) {
		animation: kata-top 0.25s linear;
	}
	.header__navBtn:not(.is-active):hover .header__navBtn--line:nth-child(2) {
		animation: kata-bottom 0.25s linear;
	}
	.header__navBtn.is-active:hover .header__navBtn__lineWrap {
		animation: kata-top 0.25s linear;
	}
}
/*-----------------------------------------------
 * Footer
-------------------------------------------------*/
.footer {
	position: relative;
	margin-top: auto;
	padding: min(calc(100 / var(--vw-min) * 100vw),100px) 0 min(calc(105 / var(--vw-min) * 100vw),105px);
}
@media screen and (max-width:768px){
	.footer {
		padding: calc(50 / var(--vw-min) * 100vw) calc(24 / var(--vw-min) * 100vw) calc(36 / var(--vw-min) * 100vw);
	}
}
.footerWrap {
	width: min(calc(1100 / var(--vw-min) * 100vw),1100px);
	display: flex;
	margin: 0 auto;
}
@media screen and (max-width:768px){
	.footerWrap {
		width: 100%;
		flex-direction: column;
	}
}
/**
* left
**/
.footer__left {
	width: min(calc(370 / var(--vw-min) * 100vw),370px);
}
@media screen and (max-width:768px){
	.footer__left {
		width: 100%;
	}
}
.footer__logo {
	width: 100%;
	height: min(calc(215 / var(--vw-min) * 100vw),215px);
	transition: .3s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.footer__logo {
		width: calc(240 / var(--vw-min) * 100vw);
		height: calc(139 / var(--vw-min) * 100vw);
		margin: 0 auto;
	}
}
.footer__logoLink {
	width: 100%;
	height: 100%;
	display: block;
	background: url(../img/common/logo/logo.png)no-repeat center/contain;
}
/**
* right
**/
.official__right {
	width: calc(100% - min(calc(370 / var(--vw-min) * 100vw),370px));
	padding-left: min(calc(100 / var(--vw-min) * 100vw),100px);
}
@media screen and (max-width:768px){
	.official__right {
		width: 100%;
		padding-left: 0;
	}
}
.footer__navLists {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	column-gap: min(calc(96 / var(--vw-min) * 100vw),96px);
}
@media screen and (max-width:768px){
	.footer__navLists {
		justify-content: flex-start;
		column-gap: calc(92 / var(--vw-min) * 100vw);
		padding-top: calc(53 / var(--vw-min) * 100vw);
	}
}
.footer__navLink {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	text-align: right;
	display: flex;
    align-items: center;
	text-decoration: none;
	transition: .3s ease;
}
.footer__navLink::before {
	content: "";
	width: min(calc(8 / var(--vw-min) * 100vw),8px);
	height: min(calc(8 / var(--vw-min) * 100vw),8px);
	display: inline-block;
	border-radius: 50%;
	background-color: #fff;
	margin-right: min(calc(15 / var(--vw-min) * 100vw),15px);
	transition: .3s ease;
}
@media screen and (max-width:768px){
	.footer__navLink {
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
	.footer__navLink::before {
		width: calc(8 / var(--vw-min) * 100vw);
		height: calc(8 / var(--vw-min) * 100vw);
		margin-right: calc(8 / var(--vw-min) * 100vw);
	}
}
.footer__navLink.is-active::before {
	background-color: var(--color-green1E7);
}
.footer__navLink.is-active {
	color: var(--color-green1E7);
}
.official__lists {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	flex-wrap: wrap;
	padding-top: min(calc(150 / var(--vw-min) * 100vw),150px);
}
.footer .official__lists {
	gap: min(calc(28 / var(--vw-min) * 100vw),28px);
}
@media screen and (max-width:768px){
	.official__lists {
		justify-content: center;
		padding-top: calc(40 / var(--vw-min) * 100vw);
	}
	.footer .official__lists {
		gap: calc(30 / var(--vw-min) * 100vw);
	}
}
.official__link {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0em;
	display: flex;
    align-items: center;
	text-decoration: none;
	transition: .3s var(--cubic-bezier02);
}
@media screen and (max-width:768px){
	.official__link {
		font-size: calc(16 / var(--vw-min) * 100vw);
	}
}
.official__icon {
	width: min(calc(48 / var(--vw-min) * 100vw),48px);
	height: min(calc(48 / var(--vw-min) * 100vw),48px);
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background-color: #fff;
	margin-left: min(calc(15 / var(--vw-min) * 100vw),15px);
}
.official__icon::before {
	content: "";
	width: min(calc(42 / var(--vw-min) * 100vw),42px);
	height: min(calc(42 / var(--vw-min) * 100vw),42px);
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid #000;
	margin: auto;
} 
.official__icon::after {
	content: "";
	width: min(calc(20 / var(--vw-min) * 100vw),20px);
	height: min(calc(20 / var(--vw-min) * 100vw),20px);
	display: inline-block;
	position: absolute;
	inset: 0;
	z-index: 1;
	margin: auto;
	background-color: #000;
}
.official__link.--official-x .official__icon::after {
	-webkit-mask: url(../img/common/sns/icon_x.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_x.svg)no-repeat center/contain;
}
.official__link.--official-insta .official__icon::after {
	-webkit-mask: url(../img/common/sns/icon_Instagram.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_Instagram.svg)no-repeat center/contain;
}
.official__link.--official-yt .official__icon::after {
	-webkit-mask: url(../img/common/sns/icon_youtube.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_youtube.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
	.official__icon {
		width: calc(34 / var(--vw-min) * 100vw);
		height: calc(34 / var(--vw-min) * 100vw);
		margin-left: calc(12 / var(--vw-min) * 100vw);
	}
	.official__icon::before  {
		width: calc(30 / var(--vw-min) * 100vw);
		height: calc(30 / var(--vw-min) * 100vw);
		border-width: calc(1 / var(--vw-min) * 100vw);
	}
	.official__icon::after {
		width: calc(14 / var(--vw-min) * 100vw);
		height: calc(14 / var(--vw-min) * 100vw);
	}
}
.copyright {
	font-size: min(calc(14 / var(--vw-min) * 100vw),14px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
	padding-top: min(calc(96 / var(--vw-min) * 100vw),96px);
}
@media screen and (max-width:768px){
	.copyright {
		font-size: calc(12 / var(--vw-min) * 100vw);
		text-align: left;
		padding-top: calc(115 / var(--vw-min) * 100vw);
	}
}
/**
* bnr 
**/
.footer__bnrlists {
	width: min(calc(760 / var(--vw-min) * 100vw),760px);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: min(calc(20 / var(--vw-min) * 100vw),20px);
	margin: 0 auto;
	padding-top: min(calc(100 / var(--vw-min) * 100vw),100px);
}
@media screen and (max-width:768px){
	.footer__bnrlists {
		width: 100%;
		gap: calc(15 / var(--vw-min) * 100vw);
		padding-top: calc(60 / var(--vw-min) * 100vw);
	}
}
.footer__bnrItem {
	width: calc((100% - min(calc(40 / var(--vw-min) * 100vw),40px)) / 3);
}
@media screen and (max-width:768px){
	.footer__bnrItem {
		width: calc((100% - calc(15 / var(--vw-min) * 100vw)) / 2);
	}
}
.footer__bnrLink {
	width: 100%;
	height: 100%;
	display: block;
}
.footer__bnrItem img {
	width: 100%;
	pointer-events: none;
}
/**
* scrollTop
**/
.scrollTop {
	width: min(calc(52 / var(--vw-min) * 100vw),52px);
	height: min(calc(77 / var(--vw-min) * 100vw),77px);
	position: absolute;
	right: min(calc(35 / var(--vw-min) * 100vw),35px);
	bottom: min(calc(35 / var(--vw-min) * 100vw),35px);
}
.scrollTop::before {
	content: "";
	width: min(calc(98 / var(--vw-min) * 100vw),98px);
	height: min(calc(55 / var(--vw-min) * 100vw),55px);
	display: block;
	position: absolute;
	top: max(calc(-52 / var(--vw-min) * 100vw),-52px);
	left: max(calc(-90 / var(--vw-min) * 100vw),-90px);
	background: url(../img/common/deco/deco_top-fu.svg)no-repeat center/contain;
	animation: poyopoyo 1.5s ease-out infinite;
}
@media screen and (max-width:768px){
	.scrollTop {
		width: calc(37 / var(--vw-min) * 100vw);
		height: calc(55 / var(--vw-min) * 100vw);
		right: calc(12 / var(--vw-min) * 100vw);
		bottom: calc(36 / var(--vw-min) * 100vw);
	}
	.scrollTop::before {
		width: calc(70 / var(--vw-min) * 100vw);
		height: calc(39 / var(--vw-min) * 100vw);
		top: calc(-37 / var(--vw-min) * 100vw);
		left: calc(-64 / var(--vw-min) * 100vw);
	}
}
.scrollTopLink {
	width: 100%;
	height: 100%;
	display: block;
}
.scrollTopLink::before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	-webkit-mask: url(../img/common/deco/deco_arrow-h.svg)no-repeat center/contain;
	mask: url(../img/common/deco/deco_arrow-h.svg)no-repeat center/contain;
	background-color: #fff;
	transition: .3s var(--cubic-bezier02);
}
/**
* footerBg
**/
.footer__bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	pointer-events: none;
	/* overflow: hidden; */
}
.footer__bg-clip {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.footer__bg-clip-in {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	background: url(../img/common/bg/bg_b.jpg)no-repeat center/cover;
}
@supports (background-image:url(../img/common/bg/bg_b.webp)){
	.footer__bg-clip-in {
		background-image: url(../img/common/bg/bg_b.webp);
	}
}
 @media (hover: hover) and (pointer: fine){
	.footer__logo:hover {
        transform: scale(1.05);
    }
	.footer__navLink:hover {
		color: var(--color-green1E7);
	}
	.footer__navLink:hover::before {
		background-color: var(--color-green1E7);
	}
	.official__link:hover {
		transform: scale(1.05);
	}
	.scrollTopLink:hover::before {
		transform: translateY(-5px);
	}
}
/*-----------------------------------------------
 * keyframes
-------------------------------------------------*/
@keyframes ani_rotate01 {
	0% {transform: rotate(0);}
	100% {transform: rotate(360deg);}
}
@keyframes ani_rotate02 {
	0% {transform: rotate(0);}
	100% {transform: rotate(-360deg);}
}
@keyframes jumpBounce {
  0% {
	opacity: 1;
    transform: translateY(0) scale(1);
  }
  10% {
	opacity: 1;

    transform: translateY(-10px) scale(1.1);
  }
  25% {
	opacity: 1;

    transform: translateY(0) scale(1);
  }
  40% {
	opacity: 1;

    transform: translateY(-5px) scale(1.05);
  }
  50% {
	opacity: 1;

    transform: translateY(0) scale(1);
  }
  100% {
	opacity: 1;

    transform: translateY(0) scale(1);
  }
}
@keyframes kiran {
  0% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  20% {
    transform: scale(20) rotate(45deg);
    opacity: 0.6;
  }
  40% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }
  80% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80%, 100%{
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
@keyframes kata-top {
    0%   { transform: translateX(0) rotate(0); }
    20%  { transform: translateX(-1px) rotate(-3deg); }
    40%  { transform: translateX(1px) rotate(3deg); }
    60%  { transform: translateX(-1px) rotate(-2deg); }
    80%  { transform: translateX(1px) rotate(2deg); }
    100% { transform: translateX(0) rotate(0); }
}

@keyframes kata-bottom {
    0%   { transform: translateX(0) rotate(0); }
    20%  { transform: translateX(1px) rotate(3deg); }
    40%  { transform: translateX(-1px) rotate(-3deg); }
    60%  { transform: translateX(1px) rotate(2deg); }
    80%  { transform: translateX(-1px) rotate(-2deg); }
    100% { transform: translateX(0) rotate(0); }
}
@keyframes shake1 {
    0%, 100% {transform: translateY(0%);}
    50% {transform: translateY(5%);}
}
/*-----------------------------------------------
 * 共通アニメーション
-------------------------------------------------*/
.--kiran {
	position: relative;
	overflow: hidden;
	transition: .2s ease;
}
.--kiran::after {
	content: "";
	width: min(calc(30 / var(--vw-min) * 100vw),30px);
	height: 100%;
	display: block;
	position: absolute;
	top: max(calc(-100 / var(--vw-min) * 100vw),-100px);
	left: 0;
	opacity: 0;
	background-color: #fff;
	transition: var(--cubic-bezier01);
}
@media (hover: hover) and (pointer: fine){
	.--kiran:hover {
		transform: scale(1.03);
	}
	.--kiran:hover::after {
		animation: kiran 0.5s linear;
	}
}
/*-------------------------------------
* sub loading
--------------------------------------*/
.subLoading{
    display: none;
}
body.--is-subload .subLoading{
    display: block;
    content: "";
    position:fixed;
	z-index: 10000;
    width: 100%;
    height: 100vh;
    top: 0;
	left: 0;
    transform: scaleX(0);
    background-color: var(--color-blue002);
	animation: subload 1.2s var(--cubic-bezier02) forwards;
}
@keyframes subload{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}
.subFullWrap{
	opacity: 0;
}
body.--is-subload .subFullWrap{
	animation: subloadfade 1s forwards;
	animation-delay: 0.8s;
	opacity: 0;
}
@keyframes subloadfade{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}