@charset "UTF-8";
/*------------------------
トップイメージ
------------------------*/
#topimg h1,#topimg .sub-en{
	letter-spacing: .08em;
}
#topimg .jp{
	color: var(--black);
	font-weight: 600;
	letter-spacing: .08em;
	position: relative;
	display: inline-block;
}
#topimg .jp .min{
	display: block;
	line-height: 1;
}
/* PC */
@media screen and (min-width:768px) {
	.top-bg{
		min-height: 770px;
		background: url(../img/three-story/topimg.jpg) no-repeat center;
		background-size: cover;
	}
	#topimg{
		position: relative;
		overflow: hidden;
	}
	#topimg .inner{
		position: relative;
		padding-bottom: 140px;
	}
	#topimg .inner::before {
		content: "";
		width: 424px;
		height: 536px;
		background: url(../img/three-story/img_topfv.png) no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 0px;
		left: 160px;
		z-index: 10;
	}
	#topimg .text-wrap{
		width: 550px;
		margin: 110px 0 0 auto;
	} 
	#topimg .en01{
		width: 520px;
		position: absolute;
		left: 80px;
		top: 0;
	}
	#topimg .en02{
		width: 435px;
	}
	#topimg .jp{
		font-size: 26px;
		position: absolute;
		top: 225px;
		right: 242px;
	}
	#topimg .jp .min{
		font-size: 16px;
	}
	#topimg .jp::after{
		content: "";
		width: 100vw;
		height: 1px;
		background: var(--black);
		mix-blend-mode: multiply;
		position: absolute;
		left: 0%;
		right: 0;
		bottom: -5px;
		transform: translateY(-50%);
	}
	#topimg .anime-arrow{
		width: 150px;
		position: unset;
		margin-bottom: 50px;
	}
	#topimg .new{
		width: 307px;
		position: absolute;
		top: 20px;
		right: 140px;
	}
	
}
/* SP */
@media screen and (max-width:767px) {
	#topimg{
		background: url(../img/three-story/sp_topimg.jpg) no-repeat center;
		background-size: cover;
		min-height: 161.6vw;
	}
	#topimg .inner::before{
		content: "";
		width: 36.33vw;
		height: 48.33vw;
		background: url(../img/three-story/img_topfv.png) no-repeat;
		background-size: contain;
		position: absolute;
		top: 16vw;
		right: 0;
		left: 0;
		margin: auto;
		z-index: 10;
	}
	#topimg .text-wrap{
		padding-top: 8vw;
	} 
	#topimg .en01{
		width: 48.67vw;
		position: absolute;
		left: 0;
		right: 0;
		top: 11.67vw;
		margin: auto;
	}
	#topimg .en02{
		width: 77.33vw;
		margin: 0 auto;
	}
	#topimg .jp{
		font-size: 4.8vw;
		position: absolute;
		top: 106.67vw;
		right: 29.33vw;
	}
	#topimg .jp .min{
		font-size: 16px;
	}
	#topimg .jp::after{
		content: "";
		width: 60vw;
		height: 1px;
		background: var(--black);
		mix-blend-mode: multiply;
		position: absolute;
		left: 0%;
		right: 0;
		bottom: -5px;
		transform: translateY(-50%);
	}
	#topimg .anime-arrow{
		width: 23.67vw;
		position: unset;
		margin-bottom: 8vw;
		margin-left: 8vw;
	}
	#topimg .new{
		width: 48vw;
		position: absolute;
		top: 75vw;
		right: 18vw;
	}
}

/*------------------------
ショールーム
------------------------*/
#three-story{
	background: #E3E2E5;
}
#three-story h2{
	text-align: center;
}
#three-story .recommend h3,
#three-story .merit h3  {
	text-align: center;
	color: var(--gray);
	letter-spacing: .08em;
}
#three-story .recommend .box-wrap .box {
	background: #464255;
}
#three-story .recommend .box-wrap .box .num {
	color: var(--gray);
	text-align: center;
	font-weight: 600;
}
#three-story .recommend .box-wrap .box .txt {
	color: #fff;
	line-height: 1.5;
	letter-spacing: .09em;
}
#three-story .merit .box-wrap .box {
	background: #fff;
	border-radius: 70px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: var(--gray);
	position: relative;
}
#three-story .merit .box-wrap .box::before{
	content: "";
	background: var(--gray);
	position: absolute;
}
#three-story .merit .box-wrap .box::after{
	content: "";
	background: var(--gray);
	position: absolute;
}
#three-story .merit .box-wrap .box .min {
	line-height: 1.4;
	display: flex;
	justify-content: center;
	align-items: center;
}
#three-story .merit .box-wrap .box .txt {
	line-height: 1.286;
	font-weight: 600;
	position: relative;
	display: flex;
	align-items: center;
}
#three-story .merit .note{
	color: var(--gray);
	letter-spacing: 0;
}
#three-story .library{
	width: 100%;
	height: auto;
}
#three-story .btn-wrap .btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
#three-story .btn-wrap .btn .icon img{
	object-fit: contain;
}
/* PC */
@media screen and (min-width:768px) {
	#three-story .inner{
		padding: 90px 0 270px;
	}
	#three-story h2 {
		font-size: 30px;
		margin-bottom: 35px;
		letter-spacing: .08em;
		text-align: center;
		font-weight: 600;
	}
	#three-story .story-logo {
		width: 144px;
		margin: 0 auto 45px;
	}
	#three-story .top-txt {
		line-height: 2.214;
		letter-spacing: .09em;
		text-align: center;
		margin-bottom: 70px;
	}

	/* ===== オススメ ====== */
	#three-story .recommend h3,
	#three-story .merit h3  {
		font-size: 20px;
		margin-bottom: 25px;
	}
	#three-story .recommend{
		width: 765px;
		margin: 0 auto 80px;
	}
	#three-story .recommend .box-wrap {
		display: flex;
		justify-content: space-between;
	}
	#three-story .recommend .box-wrap .box {
		width: 248px;
		padding: 15px 15px 15px;
	}
	#three-story .recommend .box-wrap .box .num {
		font-size: 16px;
		line-height: 1;
		margin-bottom: 10px;
	}
	#three-story .recommend .box-wrap .box .txt {
		font-size: 14px;
		text-align: center;
	}

	/* ===== メリット ====== */
	#three-story .merit{
		width: 1070px;
		margin: 0 auto 70px;
	}
	#three-story .merit .box-wrap {
		display: flex;
		justify-content: space-between;
	}
	#three-story .merit .box-wrap .box {
		width: 250px;
		height: 125px;
	}
	#three-story .merit .box-wrap .box::before{
		width: 200px;
		height: 0.25px;
		top: 60px;
	}
	#three-story .merit .box-wrap .box::after{
		width: 28px;
		height: 2px;
		top: 59px;
	}
	#three-story .merit .box-wrap .box .txt {
		margin-bottom: 8px;
		min-height: 46px;
	}
	#three-story .merit .box-wrap .box .min {
		font-size: 10px;
		min-height: 42px;
		letter-spacing: 0;
		flex-direction: column;
	}
	#three-story .merit .box-wrap .box .min span.kome {
		position: absolute;
		right: 32px;
		bottom: 21px;
		font-size: 8px;
	}
	#three-story .merit .note{
		font-size: 10px;
		text-align: right;
		padding: 5px 13px 0 0;
	}
	#three-story .library{
		margin-bottom: 50px;
	}
	
	/* ===== リンク ====== */
	#three-story .btn-wrap{
		width: 1136px;
		margin: 0 auto;
		/*justify-content: space-between;*/
		justify-content:center;
	}
	#three-story .btn-wrap .btn a{
		width: 563px;
		height: 80px;
		font-size: 24px;
		letter-spacing: .14em;
		overflow: hidden;
	}
	#three-story .btn-wrap .btn .icon{
		width: 21px;
		height: 18px;
		margin-left: 15px;
		padding-top: 2px;
	}
	#three-story .btn-wrap .btn.vr a{
		background: url(../img/three-story/btn_vr_preview.png) no-repeat;
		background-size: cover;
	}
	#three-story .btn-wrap .btn.charm a{
		background: url(../img/three-story/btn_charm.png) no-repeat;
		background-size: cover;
	}
	#three-story .btn-wrap .btn .vr-icon{
		width: 45px;
		height: 35px;
		margin-left: 15px;
	}
	#three-story .btn-wrap .btn .charm-icon{
		width: 40px;
		height: 46px;
		margin-left: 15px;
	}
	#three-story .btn-wrap .text-hover{        
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		white-space: nowrap;
		transition: transform 0.5s ease;
		z-index: 2;
		background: url(../img/three-story/btn_vr_preview_on.png);
		transform: translateX(-100%);
		background-size: cover;
		font-size: 16px;
		font-weight: bold;
		color: #fff;
	}
	#three-story .btn-wrap .charm .text-hover{
		background: url(../img/three-story/btn_charm_on.png);
		background-size: cover;
	}
	#three-story .btn-wrap .btn a:hover .text-hover {
		transform: translateX(0);
	}

}

/* SP */
@media screen and (max-width:767px) {
	#three-story .inner{
		padding: 10.67vw 6.67vw;
	}
	#three-story h2 {
		font-size: 4vw;
		letter-spacing: .08em;
		margin-bottom: 3.33vw;
		text-align: center;
		font-weight: 600;
	}
	#three-story .story-logo {
		width: 37.33vw;
		margin: 0 auto 6.67vw;
	}
	#three-story .top-txt {
		letter-spacing: .09em;
		text-align: center;
		margin-bottom: 8vw;
		font-size: 3.2vw;
		line-height: 1.8;
	}

	/* ===== オススメ ====== */
	#three-story .recommend h3,
	#three-story .merit h3  {
		font-size: 4.8vw;
		margin-bottom: 4vw;
		line-height: 1.4;
	}
	#three-story .recommend{
		margin: 0 auto 10.67vw;
	}
	#three-story .recommend .box-wrap .box {
		padding: 4vw;
		margin-bottom: 1.33vw;
	}
	#three-story .recommend .box-wrap .box .num {
		font-size: 3.73vw;
		line-height: 1;
		margin-bottom: 1.33vw;
	}
	#three-story .recommend .box-wrap .box .txt {
		font-size: 3.73vw;
		text-align: center;
	}

	/* ===== メリット ====== */
	#three-story .merit{
		margin: 0 auto 10.67vw;
	}
	#three-story .merit .box-wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
	}
	#three-story .merit .box-wrap .box {
		width: 40vw;
		height: 40vw;
		margin-bottom: 2.67vw;
		border-radius: 30px;
	}
	#three-story .merit .box-wrap .box::before{
		width: 32vw;
		height: 0.25px;
		top: 20.33vw;
	}
	#three-story .merit .box-wrap .box::after{
		width: 7.47vw;
		height: 0.53vw;
		top: 20vw;
	}
	#three-story .merit .box-wrap .box .txt {
		min-height: 19.33vw;
		font-size: 4.27vw;
		padding-bottom: 2.67vw;
	}
	#three-story .merit .box-wrap .box .min {
		font-size: 2.67vw;
		min-height: 12vw;
		padding: 0 2vw;
		flex-direction: column;
		letter-spacing: -0.02em;
	}
	#three-story .merit .box-wrap .box .min span{
		font-size: 2.13vw;
	}
	#three-story .merit .note{
		font-size: 2.67vw;
		text-align: right;
		padding: 0px 8vw 0 0;
	}
	#three-story .library{
		margin-bottom: 8vw;
	}
	
	/* ===== リンク ====== */
	#three-story .btn-wrap{
		width: 100%;
		display: block;
	}
	#three-story .btn-wrap .btn a{
		width: 100%;
		margin-bottom: 1.33vw;
		height: 18.67vw;
		font-size: 4.8vw;
		letter-spacing: .14em;
	}
	#three-story .btn-wrap .btn .icon{
		width: 4vw;
		height: 3.2vw;
		margin-left: 2.67vw;
	}
	#three-story .btn-wrap .btn.vr a{
		background: url(../img/three-story/btn_vr_preview.png) no-repeat;
		background-size: cover;
	}
	#three-story .btn-wrap .btn.charm a{
		background: url(../img/three-story/btn_charm.png) no-repeat;
		background-size: cover;
	}
	#three-story .btn-wrap .btn .vr-icon{
		width: 9.33vw;
		height: 6.93vw;
		margin-left: 2.67vw;
	}
	#three-story .btn-wrap .btn .charm-icon{
		width: 8.53vw;
		height: 10.67vw;
		margin-left: 2.67vw;
	}
	#three-story .btn-wrap .text-hover{
		display: none;
	}
}
/*------------------------

------------------------*/
/* PC */
@media screen and (min-width:768px) {
	
}

/* SP */
@media screen and (max-width:767px) {

}
