@charset "UTF-8";

/*tmp overwrite*/
/*-------------------------------------------------------*/
#header{ position: relative; z-index: 5000; }
#footer{ z-index: 5000; position: relative; }
#footer .contain{ display: none; }
.wrap-link-footer{ background: #eef0f1; }
.article{ min-height: 0; }
.btn-top-sp{display: none !important;}



/*initialize*/
/*-------------------------------------------------------*/
#cp-content{ overflow: hidden; background-color: #ffffff; }
#cp-content *{ font-family: 'YakuHanJP','Noto Sans Japanese',sans-serif; }
#cp-content a{ display: block; }
#cp-content img{ width: 100%; height: auto; }
#cp-content .defs{ display: none; }
#cp-content .sp{ display: none; }
#cp-loader-bg{ background-color: #ffffff; position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 2000; /*display: none;*/ }
#cp-loader{ /*display: none;*/ }
#cp-loader .load-body{ position: fixed; z-index: 2001; /*margin-top: 63px;*/ top: 50%; left: 50%; width: 8.75%; /*width: 119px;*/ transform: translate(-50%,-50%); }
#cp-loader .load-body .txt{ width: 32.77%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
#cp-loader .logo{ position: fixed; z-index: 2002; bottom: 0; right: 0; width: 20.07%; margin: 0 2.21% 2.21% 0; }
#cp-menu-btn{ position: absolute; right: 0; top: 0; width: 6.62%; margin: 1.76% 1.76% 0 0; z-index: 6001; border-radius: 50%; box-shadow: 0 0.74vw 0.74vw rgba(0,0,0,0.2); }
#cp-menu-btn.pos-fixed{ position: fixed; }
#cp-menu-btn .overlay{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(255,255,255,0); }
#cp-menu-btn .open{ display: block; }
#cp-menu-btn .close{ display: none; }
#cp-menu-btn.active{ position: fixed; box-shadow: none; }
#cp-menu-btn.active .open{ display: none; }
#cp-menu-btn.active .close{ display: block; }
#cp-menu-display{ position: fixed; left: 0; top: 0; width: 100%; background-color: #dc000d; z-index: 6000; overflow: hidden; }
#cp-menu-display::before{ content: ''; position: absolute; width: 114.26%; padding-top: 114.26%; position: absolute; left: 0; top: 0; margin-top: 1.84%; transform: translateX(-50%); background-color: #e65652; border-radius: 50%; }
#cp-menu-display::after{ content: ''; position: absolute; width: 64.04%; padding-top: 64.04%; position: absolute; left: 0; left: 100%; margin-top: -37.79%; transform: translateX(-50%); background-color: #e65652; border-radius: 50%; }
#cp-menu-display .display-block{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: -ms-flex; display: flex; overflow-y: auto; -webkit-overflow-scrolling: touch; align-items: center; justify-content: center; z-index: 10; }
#cp-menu-display .display-block .menu-body{ margin: auto; padding: 11.32% 0; width: 100%; display: -ms-flex; display: flex; align-items: center; }
#cp-menu-display .display-block .menu-body .logo-body{ width: 23.53%; margin-left: 10.76%; }
#cp-menu-display .display-block .menu-body .logo-body .home-btn{ width: 21.88%; margin: 13.13% auto 0; position: relative; }
#cp-menu-display .display-block .menu-body .logo-body .home-btn a{ display: block; position: relative; border-radius: 50%; }
#cp-menu-display .display-block .menu-body .logo-body .home-btn a::before{ content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 1px solid #ffffff; box-sizing: border-box; border-radius: 50%; }
#cp-menu-display .display-block .menu-body .navi-body{ width: 46.18%; /*width: 628px;*/ margin-left: 8.68%; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list{ display: -ms-flex; display: flex; flex-wrap: wrap; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi{ width: 49.36%; /*width: 310px;*/ position: relative; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 5; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a::before{ content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg); border: solid; border-width:  0.22vw  0.22vw 0 0; width: 1.94%; padding-top: 1.94%; margin-right: 8%; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view{ padding: 4.84% 5.81%; /*padding: 15px 18px;*/ border-radius: 1.1vw; display: -ms-flex; display: flex; align-items: center; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view .photo{ width: 29.2%; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view .txt{ margin-left: 5.11%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi01{ order: 1; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi02{ order: 3; margin-top: 1.28%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi03{ order: 2; margin-left: 1.28%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi04{ order: 4; margin-top: 1.28%; margin-left: 1.28%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi a::before{ border-color: #ffffff; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi .split-view{ background-color: #ba0012; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi01 .split-view .txt{ width: 37.23%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi02 .split-view .txt{ width: 54.01%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi03 .split-view .txt{ width: 33.94%; }
#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi04 .split-view .txt{ width: 48.54%; }
#cp-menu-display .display-block .menu-body .navi-body .copy{ width: 27.87%; margin: 2.23% 0 2.23% 0.96%; }
#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi02{ margin-left: 1.28%; }
#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi a::before{ border-color: #dc000d; }
#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi .split-view{ background-color: #ffffff; }
#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi01 .split-view .txt{ width: 54.01%; }
#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi02 .split-view .txt{ width: 52.92%; }


@media only screen and (max-width: 767px) {
	#cp-content .pc{ display: none; }
	#cp-content .sp{ display: block; }
	#cp-content img.sp{ display: inline; }
	#cp-loader .load-body{ /*margin-top: 27px;*/ width: 24.8%; /*width: 93px;*/ }
	#cp-loader .logo{ right: auto; left: 0; width: 48.18%; margin: 0 0 9.6% 25.91%; }
	#cp-menu-btn{ width: 12%; margin: 4.71% 4.05% 0 0; box-shadow: 0 1.07vw 1.07vw rgba(0,0,0,0.2); }
	#cp-menu-btn.pos-fixed,
	#cp-menu-btn.active{ margin: 4.71% 4.05% 0 0; }
	#cp-menu-btn.active{ box-shadow: none; }
	#cp-menu-display::before{ width: 226.67%; padding-top: 226.67%; margin-top: 60%; }
	#cp-menu-display::after{ width: 94.93%; padding-top: 94.93%; margin-top: -49.33%; }
	#cp-menu-display .display-block .menu-body{ padding: 5.25% 0 10.67%; display: block; }
	#cp-menu-display .display-block .menu-body .logo-body{ width: 100%; margin-left: 0; }
	#cp-menu-display .display-block .menu-body .logo-body .logo{ width: 41.37%; margin: 0 auto; }
	#cp-menu-display .display-block .menu-body .logo-body .home-btn{ position: absolute; width: 12%; left: 0; top: 0; margin: 4.71% 0 0 4.05%; }
	#cp-menu-display .display-block .menu-body .navi-body{ width: 77.33%; /*width: 290px;*/ margin: 3.47% auto 0; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list{ display: block; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi{ width: 100%; margin: 0; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi+.navi{ margin-top: 1.72%; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a::before{ border-width: 0.22vw  0.22vw 0 0; width: 1.94%; padding-top: 1.94%; margin-right: 8%; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view{ padding: 2.41% 3.1%; /*padding: 7px 9px;*/ border-radius: 2.67vw; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view .photo{ width: 18.38%; }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi .split-view .txt{ margin-left: 4.41%; }
	#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi01 .split-view .txt{ width: 35.16%; }
	#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi02 .split-view .txt{ width: 50.49%; }
	#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi03 .split-view .txt{ width: 32.11%; }
	#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi04 .split-view .txt{ width: 45.43%; }
	#cp-menu-display .display-block .menu-body .navi-body .copy{ width: 48.33%; margin: 3.45% auto; }
	#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi01 .split-view .txt{ width: 58.13%; }
	#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi02 .split-view .txt{ width: 49.62%; }
}



/*contetnt*/
/*-------------------------------------------------------*/
#cp-content{ position: relative; overflow: hidden; }

@media only screen and (max-width: 767px) { /*767px以下*/
}



/*animation*/
/*-------------------------------------------------------*/
#cp-loader.hide .load-body{ animation: cp_load_circle_hide 0.2s ease-in forwards; }
#cp-loader.hide .logo{ animation: cp_load_logo_hide 0.2s ease-in forwards; }
#cp-loader .load-body .circle{ animation: cp_load_circle 3s linear infinite; }
#cp-loader .load-body .txt{ animation: cp_load_txt 0.1s ease-in-out infinite; }
#cp-menu-btn.hide{ opacity: 0; }
#cp-menu-btn{ transition: opacity 0.5s, transform 0.2s cubic-bezier(0.47, -0.54, 0.57, 1.84); }
#cp-menu-btn:hover{ transform: scale(1.05); }
#cp-menu-display{ height: 0; opacity: 0; transition: height 0s 0.5s, opacity 0.5s; }
#cp-menu-btn.active+#cp-menu-display{ height: 100%; opacity: 1; transition: height 0s, opacity 0.5s; }
#cp-menu-display .display-block .menu-body .logo-body .home-btn a{ transition: transform 0.2s cubic-bezier(0.47, -0.54, 0.57, 1.84); }
#cp-menu-display .display-block .menu-body .logo-body .home-btn a:hover{ transform: scale(1.05); }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi{ transform: translateX(10%); opacity: 0; transition: transform 0s 0.5s, opacity 0s 0.5s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi{ transform: translateX(0); opacity: 1; transition: transform 0.5s, opacity 0.5s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi:nth-child(3){ transition-delay: 0.05s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi:nth-child(2){ transition-delay: 0.1s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi:nth-child(4){ transition-delay: 0.15s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi:nth-child(1){ transition-delay: 0.2s; }
#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .etc-navi .navi:nth-child(2){ transition-delay: 0.25s; }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a,
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a+.split-view{ transition: transform 0.2s cubic-bezier(0.47, -0.54, 0.57, 1.84); }
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:hover,
#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:hover+.split-view{ transform: scale(1.05); }
@media only screen and (max-width: 767px) { /*767px以下*/
	#cp-menu-btn:hover{ transform: scale(1); }
	#cp-menu-btn:active{ transform: scale(1.05); }
	#cp-menu-display .display-block .menu-body .logo-body .home-btn a:hover{ transform: scale(1); }
	#cp-menu-display .display-block .menu-body .logo-body .home-btn a:active{ transform: scale(1.05); }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:hover,
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:hover+.split-view{ transform: scale(1); }
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:active,
	#cp-menu-display .display-block .menu-body .navi-body .navi-list .navi a:active+.split-view{ transform: scale(1.05); }
	#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi:nth-child(2){ transition-delay: 0.05s; }
	#cp-menu-btn.active+#cp-menu-display .display-block .menu-body .navi-body .home-navi .navi:nth-child(3){ transition-delay: 0.1s; }
}






/*keyframes*/
/*-------------------------------------------------------*/
@keyframes cp_load_circle_hide{
	0%{ opacity: 1; transform: translate(-50%,-50%) scale(1); }
	100%{ opacity: 0; transform: translate(-50%,-50%) scale(3); }
}
@keyframes cp_load_logo_hide{
	0%{ opacity: 1; }
	100%{ opacity: 0; }
}
@keyframes cp_load_circle{
	0%{ transform: rotate(0deg); }
	100%{ transform: rotate(360deg); }
}
@keyframes cp_load_txt{
	0%{ opacity: 1; }
	50%{ opacity: 0; }
	100%{ opacity: 1; }
}







