/* copy font */

/* /////////////////////////////////////////////////////////////////////
 *	
 *	mainVisual
 *	
///////////////////////////////////////////////////////////////////// */
	.mainVisualWrap {
		position: relative;
		background: rgba(var(--site-themeColor),.15);
		width: 100%;
	}
	.mainVisualWrap [class*="scene"]{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
	}
	.mainVisualWrap .scene01 {z-index: 10; position: relative;}
	.mainVisualWrap .scene02 {z-index: 5;	}
	.mainVisualWrap .scene03 {z-index: 1;	}

@media print, screen and (min-width: 736.02px) {
}
@media print, screen and (min-width: 1360.02px) {
}

/* copyUnit
-------------------------------------------------------------- */
	.mainVisualWrap .copyUnit {
		position: absolute;
		z-index: 15;
		top: 8.3%;
		left: 13.5%;
		writing-mode: vertical-rl;
		text-orientation: upright;
		
		display: flex;
		flex-direction: column;
		
		color: rgba(var(--site-accentColor),1);
		font-family: "Shippori Mincho", var(--site-fontFamily);
		font-size: 4.6vw;
		
	}
	.mainVisualWrap .copyUnit::after {
		content: "";
		position: absolute;
		top: 0;
		left: 42.5%;
		display: block;
		width: 1px;
		height: 98%;
		background: rgba(var(--site-accentColor),1);

		transform-origin: top center;
		transform: scaleY(var(--line-scale, 0));
	}
	.mainVisualWrap > :not(.scene01) .copyUnit::after {
		transform: scaleY(1) !important;
	}
	.mainVisualWrap .copyUnit .mainCopy {
		opacity: 0.9;
		position: relative;
		align-self: flex-start;
		font-size: 1.62em;
		font-weight: 500;
		letter-spacing: 0.28em;
		text-shadow: 0 0 1px rgba(var(--site-accentColor), 1);
		margin-left: 1.1em;
	}
	.mainVisualWrap .copyUnit .subCopy {
		opacity: 0.9;
		align-self: flex-end;
		padding-top: 2em;
		letter-spacing: 0.22em;
	}

@media screen and (max-width: 736px) {
	.mainVisualWrap[data-scene="scene02"] .copyUnit {
		--site-accentColor : 255, 255, 255;
		transition: color 0.3s ease;
	}
}
@media screen and (max-width: 1360px) {
	.mainVisualWrap[data-scene="scene03"] .copyUnit {
		--site-accentColor : 255, 255, 255;
		transition: color 0.3s ease;
	}
}

@media print, screen and (min-width: 736.02px) {
	.mainVisualWrap .copyUnit {
		top: 6%;
		left: 4%;
		font-size: 2.2vw;
	}
	.mainVisualWrap .copyUnit .mainCopy {
		margin-left: 0.8em;
	}
	.mainVisualWrap .copyUnit .subCopy {
		letter-spacing: 0.1em;
	}
}
@media print, screen and (min-width: 1049.02px) {
	.mainVisualWrap .copyUnit {
		top: 11%;
		left: 3%;
		font-size: 1.8vw;
	}
}
@media print, screen and (min-width: 1360.02px) {
	.mainVisualWrap .copyUnit {
		top: 17%;
		left: 79%;
		font-size: 2.2vw;
	}
	.mainVisualWrap .copyUnit .subCopy {
		padding-top: 2.2em;
	}
}



/* meritWrap
-------------------------------------------------------------- */
	.mainVisualWrap > .meritWrap {
		color: #FFF;
		text-align: center;
		background: rgba(var(--site-accentColor),1);
		padding: 15px;
	}
@media screen and (min-width: 736.02px) and (max-width: 1360px) {
}

@media screen and (max-width: 1360px) {
	.scene01 .meritWrap {
		display: none;
	}
}
@media print, screen and (min-width: 1360.02px) {
	.mainVisualWrap .meritWrap {
		width: calc(100% - 70.885% - 20px);
		position: absolute;
		bottom: 10px;
		right: 10px;
		padding: 1.8em 1.5em;
		box-sizing: border-box;
	}
	.scene01 .meritWrap {
		width: 80%;
		left: 10%;
		right: auto;
		bottom: 0;
		text-align: center;
		padding: 0;
		padding-bottom: 1vw;
	}
}

/* scene01
-------------------------------------------------------------- */
	.mainVisualWrap .scene01 {
		height: 100%;
		overflow: hidden;
		position: relative;
	}
@media screen and (max-width: 736px) {
}
@media print, screen and (min-width: 736.02px) {
	/*.scene01 .mainVisualBox {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}*/
	.scene01 .mainVisualBox img {
		object-fit: cover;
		object-position: bottom center;
	}
}
@media screen and (min-width: 736.02px) and (max-width: 1360px) {
	.scene01 .mainVisualBox {
		width: 100%;
		overflow: hidden;
		aspect-ratio: 1361 / 975;
	}
	.scene01 .mainVisualBox img {
		position: relative;
		max-width: none;
		height: 100%;
		margin-left: -10%;
	}
}
@media print, screen and (min-width: 1400.02px) {
	.scene01 .mainVisualBox img {
	}
}




	.mainVisualWrap .scene01 .copyUnit {
		top: 48.5%;
		left: 14.8%;
		font-size: 6vw;
	}
	.mainVisualWrap .scene01 .copyUnit .mainCopy {
		letter-spacing: 0.15em;
		margin-left: 0.7em;
	}
	.mainVisualWrap .scene01 .copyUnit .subCopy {
		letter-spacing: 0.07em;
	}
@media screen and (max-width: 1360px) {
}
@media print, screen and (min-width: 736.02px) {
	.mainVisualWrap .scene01 .copyUnit {
		top: 26.8%;
		left: 72.5%;
		font-size: 3.3vw;
	}
}
@media print, screen and (min-width: 1360.02px) {
	.mainVisualWrap .scene01 .copyUnit {
		top: 30.5%;
		left: 65.8%;
		font-size: 2.3vw;
	}
}






/* scene02 
-------------------------------------------------------------- */
	.mainVisualWrap .scene02 {
	}
@media print, screen and (min-width: 1360.02px) {
	.scene02 {
		display: grid;
		grid-template-columns: 70.885% 1fr;
		width: 100%;
	}
	.scene02 .mainVisualBox img {
		max-width: none;
		width: 100%;
	}
}
/* scene03 
-------------------------------------------------------------- */
	.mainVisualWrap .scene03 {
	}
@media print, screen and (min-width: 1360.02px) {
	.scene03 {
		display: grid;
		grid-template-columns: 70.885% 1fr;
		width: 100%;
	}
	.scene03 .mainVisualBox img {
		max-width: none;
		width: 100%;
	}
	.scene03 .meritWrap {
		position: static;
		align-self: stretch;
		display: flex !important;
		flex-direction: column;
		align-items: center;
		justify-content: end;
		width: 100%;
		padding: 1.8em 1.5em;
		box-sizing: border-box;
	}
}


/* /////////////////////////////////////////////////////////////////////
 *	
 *	informationWrap
 *	
///////////////////////////////////////////////////////////////////// */
	.pt-informationWrap {
		padding-bottom: 80px;
		border-bottom: 1px solid rgba(var(--site-accentColor),.6);
	}
	.pt-informationWrap h2.ptHeading {
		width: 100%;
		margin-bottom: 0;
	}
	.noticeWrap .obi2 {
		position: relative;
		display: inline-block;
		color: rgba(var(--site-accentColorText),1);
		background: rgba(var(--site-accentColor),1);
		padding: 0.1em 0.3em;
	}

	.noticetxt .obi {
		display: inline-block;
		background: rgba(var(--site-themeColor),.2);
		padding: 0.2em 0.8em;
	}
	.noticetxt .moreInfo {
		font-size: .92em;
		margin-top: 0.8em;
	}


	@media print, screen and (min-width: 600.02px) {
	}
	@media print, screen and (min-width: 1049.02px) {
		.pt-informationWrap h2.ptHeading {
			text-align: left;
		}
	}

	.suc {
		font-size: 0.6em;
		margin-top: 1em;
	}
	.sucUnit {
		display: inline-block;
		margin-top: 0.5em;
		padding: 0.4em 0.8em;
		/*border: 1px solid rgba(var(--site-accentColor), .3);*/
		background: rgba(var(--site-themeColor),.2);
	}
	.sucLine {
		display: grid;
		grid-template-columns: 8em 1fr;
		font-size: 0.9em;
	}
	.sucLine + .sucLine {
		margin-top: 0.3em;
		padding-top: 0.3em;
		border-top: 1px dotted rgba(var(--site-accentColor), .3);
	}


/* /////////////////////////////////////////////////////////////////////
 *	
 *	pt-onePoint
 *	
///////////////////////////////////////////////////////////////////// */
	.positionCol {
		margin-top: 50px;
	}
	.positionCol .positionTxtWrap {
		width: 94%;
		background: rgba(var(--site-themeColor), .32);
		align-self: flex-start;
		padding: 0 30px;
	}
	.positionCol .positionTxtUnit {
		padding: 60px 0 80px;
		padding-left: 8%;
	}
	.positionCol .positionTxtUnit i {
		display: inline-block;
		color: rgba(var(--site-accentColorText), .7);
		line-height: 1;
		letter-spacing: .1em;
		font-family: var(--site-fontFamily-en01);
		background: rgba(var(--site-accentColor),1);
		padding: 3px 10px 1px;
	}
	.positionCol .positionTxtUnit h2 {
		margin: 2em 0;
	}
	.positionCol .positionTxtUnit .txtBox {
		line-height: 2.2;
		letter-spacing: 0.05em;
	}
	.positionCol .picBox {
		display: block;
		width: 90%;
		max-width: 715px;
		margin: 3.2em auto 0;
	}

@media screen and (max-width: 480px) {
	.positionCol .positionTxtWrap {
		padding: 0 30px;
	}
	.positionCol .positionTxtUnit {
		padding: 20px 0 40px;
		padding-left: 0%;
	}
	.positionCol .positionTxtUnit h2 {
		margin: 1.0em 0;
	}
	.positionCol .positionTxtUnit .txtBox {
		font-size: 80%;
		letter-spacing: 0.015em;
	}
}
@media screen and (min-width: 736.02px) and (max-width: 1049px) {
}
@media print, screen and (min-width: 1049.02px) {
	.positionCol {
		margin-top: 50px;
	}
	.positionCol {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
	.positionCol .positionTxtUnit {
		width: 90%;
		max-width: 600px;
		margin-left: auto;
		padding-left: 0;
		border-left: 1px solid rgba(var(--site-accentColor),1);
	}
	.positionCol .positionTxtUnit h2 {
		padding-left: 5%;
	}
	.positionCol .positionTxtUnit .txtBox {
		padding-left: 5%;
	}
	.positionCol .picBox {
		margin-top: 0;
	}
}








/* ***************************************************************************************************
	printOnly
*************************************************************************************************** */
@media print { /*{printOnly}*/
	.mainVisualWrap .scene01 {
		opacity: 1 !important;
	}
}




