@charset "UTF-8";
/* CSS Document */

html {scroll-behavior:smooth;}

body,header,footer,section,div,img,p,ul,li,h1,h2,h3 {
    margin: 0;
    padding: 0;
	font-feature-settings: "palt" 1;}


.p_ja {font-family:'Zen Kaku Gothic New', sans-serif;}
/*font-weight:400,500,900;*/
.p_eng {font-family:'IBM Plex Sans', sans-serif;}
/*font-weight:300,400;font-style:italic;*/


img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    line-height:0;
	margin:0 auto;}

#contents {
    width: auto;
    /*overflow: hidden;*/
    padding: 0;}

.clearfix:after {
    display: block;
    clear: both;
    content: "";}

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

ul {list-style: none;
    margin-left: 0;
    padding-left: 0;}
li {list-style: none;}

a {text-decoration:none;color:inherit;}




/* ローディング画面*/
#loading_ingura {
    z-index:999;position:fixed;
	width:100%;height:100vh;
	background:#000;
	display:flex;
	/* 水平方向中央寄せ */
	justify-content: center;
	/* 垂直方向中央寄せ */
	align-items: center;
}
.spinner {
	width:20px;height:20px;
	border:2px solid #fff;
	border-top:2px solid transparent;
	border-radius:50%;
	animation:spin 0.3s linear 0s infinite;
}
@keyframes spin {
	from {transform: rotate(0);}
	to{transform: rotate(359deg);}
}


/*画面遷移アニメーション*/
.splashbg{display:none;}
/*bodyにappearクラスがついたら出現*/
body.appear .splashbg{
    display:block;
    content:"";
    position:fixed;
	z-index:999;
    width:100%;
    height:100vh;
    top:0;
	left:0;
    transform:scaleY(0);
    background-color:#fff;/*伸びる背景色の設定*/
	animation-name:PageAnime;
	animation-duration:0.4s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
}
@keyframes PageAnime{
	0% {transform-origin:bottom;transform:scaleY(1);}
	100% {transform-origin:bottom;transform:scaleY(0);}
}

/* メインコンテンツ出現 */
/* はじめは透過0に */
.wrap {opacity:0;}
/* bodyにappearクラスがついたら出現 */
body.appear .wrap {opacity:1;}






.top_logo {width:100%;margin:0 auto;}

.tp_logo_content {
	display:flex;
	align-items:flex-start;
	justify-content:space-between;}
.tp_lg_cntnt_A {width:67.11%;margin:0 0 0 auto;}
.tp_lg_cntnt_B {width:100%;}


.tp_logo_box {
	display:block;
	height:31.25vw;
	overflow:hidden;}


.bx_m_i {margin-right:8.229vw;}
.bx_m_n {margin-right:7.326vw;}
.bx_m_g1 {margin-right:0;}
.bx_m_g2 {margin-right:7.326vw;}
.bx_m_u {margin-right:7.673vw;}
.bx_m_r {margin-right:4.062vw;}
.bx_m_a {margin-right:0;}


.bx_inner {height:200%;transition:0.3s ease;
	pointer-events:none;}

.bx_inner img {display:block;height:50%;
	-webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-touch-callout:none;
    -moz-user-select:none;
    user-select:none;}


.delay1 {transition-delay:0.05s;}
.delay2 {transition-delay:0.10s;}
.delay3 {transition-delay:0.15s;}
.delay4 {transition-delay:0.20s;}
.delay5 {transition-delay:0.25s;}
.delay6 {transition-delay:0.30s;}


@media (hover: hover) {
.tp_logo_content:hover .bx_inner {
	transform:translateY(-50%);}
}
@media (hover: none) {
	.tp_logo_content:active .bx_inner {
		transform:translateY(-50%);}
}




/* フレーム */
.sec {width:88.88vw;margin:0 auto;}
@media screen and (max-width: 768px){
	.sec {width:80.46vw;margin:0 auto;}
}


/* カラム */
.clm_about_A {width:100%;}
.clm_about_B {width:820px;margin-bottom:100px;}
@media screen and (max-width: 923px){
	.clm_about_B {width:100%;}
}
@media screen and (max-width: 768px){
	.clm_about_B {width:100%;margin-bottom:10.41vw;}
}


/* about */
.info_about {font-weight:700;font-size:35px;line-height:1.7;
	letter-spacing:-0.03em;text-align:justify;
	padding-top:100px;margin-bottom:100px;}
.info_about span {letter-spacing:-0.10em;}
@media screen and (max-width: 923px){
	.info_about {font-size:3.68vw;}
}
@media screen and (max-width: 768px){
	.info_about {font-size:4.70vw;line-height:1.8;
		letter-spacing:0.03em;
		padding-top:13.02vw;margin-bottom:13.02vw;}
	.info_about span {letter-spacing:-0.08em;}
	.info_about span2 {letter-spacing:0.01em;}
}


.about_list {width:100%;display:flex;
	justify-content:space-between;align-items:flex-start;
	text-align:left;
	font-weight:400;font-size:16px;
	line-height:2;}
.about_list:not(:last-child) {margin-bottom:30px;}
.about_list li:first-child {width:18%;}
.about_list li:last-child {width:80%;}
@media screen and (max-width: 768px){
	.about_list {font-size:3.64vw;line-height:1.7;}
	.about_list:not(:last-child) {margin-bottom:5.20vw;}
	.about_list li:first-child {width:21%;}
	.about_list li:last-child {width:77%;}
}

.list_margin {margin-bottom:10px;}
@media screen and (max-width: 768px){
	.list_margin {margin-bottom:2.60vw;}
}



/* menuリンク */
.menu {display:block;font-size:0;}
.menu li {position:relative;}

.menu li:first-child {margin-bottom:30px;}
@media screen and (max-width: 768px){
	.menu li:first-child {margin-bottom:3.90vw;}
}

.menu li a {padding:15px 15px 15px 5.56vw;}
.menu li a {display:inline-block;
	overflow:hidden;
	background-image:linear-gradient(to left, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 50%);
	background-position:100% 0;
	background-size:200% 100%;
	transition:all 0.3s;}
.menu li a:hover {background-position:0 0;}
@media screen and (max-width: 768px){
	.menu li a {padding:1.95vw 1.95vw 1.95vw 9.77vw;}
	.menu li a {
		background-color:#000;
		backgound-image:none;
		background-size:100% 100%;}
}


.menu li img {margin-left:30px;}
.menu li .imgA {opacity:1;}
.menu li .imgB {opacity:0;display:none;}
.menu li a:hover .imgA {opacity:0;display:none;}
.menu li a:hover .imgB {opacity:1;display:inline-block;}
@media screen and (max-width: 768px){
	.menu li img {margin-left:3.90vw;}
	.menu li a:hover .imgA {opacity:1;display:inline-block;}
}

.menu li a::before {position:absolute;content:"";
	display:inline-block;
	width:9px;height:22px;margin:0;padding:0;
	background-image:url("../img/arrow_right_white.svg");
	background-repeat:no-repeat;
	background-position:center center;
	background-size:contain;vertical-align:middle;}
.menu li a:hover::before {
	position:absolute;content:"";
	display:inline-block;
	width:9px;height:22px;margin:0;padding:0;
	background-image:url("../img/arrow_right.svg");
	background-repeat:no-repeat;
	background-position:center center;
	background-size:contain;vertical-align:middle;
	}
@media screen and (max-width: 768px){
	.menu li a::before {
		position:absolute;content:"";
		display:inline-block;
		width:1.43vw;height:3.38vw;margin:0;padding:0;
		background-image:url("../img/arrow_right_white.svg");
		background-size:contain;vertical-align:middle;}
	.menu li a:hover::before {
		position:absolute;content:"";
		display:inline-block;
		width:1.43vw;height:3.38vw;margin:0;padding:0;
		background-image:url("../img/arrow_right_white.svg");
		background-size:contain;vertical-align:middle;}
}

.logo_design img {width:245px;}
.logo_room img {width:210px;}
@media screen and (max-width: 768px){
	.logo_design img {width:36.06vw;}
	.logo_room img {width:31.0vw;}
}



/* フッター */
.ft_ingura_logo {width:120px;margin-top:80px;}
.ft_ingura_logo a:hover {opacity:0.2;transition:0.3s;}
@media screen and (max-width: 768px){
	.ft_ingura_logo {width:19.92vw;margin-top:10.41vw;}
	.ft_ingura_logo a:hover {opacity:1;}
}

.p_copyright {margin:20px 0 50px;
	font-weight:300;font-size:11px;
	line-height:1;color:#000;}
@media screen and (max-width: 768px){
	.p_copyright {margin:2.60vw 0 6.51vw;font-size:2.34vw;}
}

