/****** header ******/
@media only screen and (min-width:641px) {
	.pindex #sitehead {
		color: #fff;
	}
	.pindex #sitehead a.add-line span::before,
	.pindex #sitehead a.add-line span::after {
		background-color: #fff;
	}
	.pindex.pOthers #sitehead {
		color: var(--cl-pageink);
	}
	.pindex.pOthers #sitehead a.add-line span::before,
	.pindex.pOthers #sitehead a.add-line span::after {
		background-color: var(--cl-add-bg);
	}
}

/****** pageHero ******/
.pindex .hero-tit {
	justify-content: center;
	white-space: nowrap;
}
	.hero-tit h1 {
		letter-spacing: 0.04em;
		line-height: 1em;
		margin-bottom: 0;
	}
	.hero-tit p {
		font-size: 16px;
		line-height: 2.5em;
		letter-spacing: 0.02em;
		margin: 0 -0.75em;
		padding-right: var(--u-gutter-half);
		padding-top: var(--u-gutter-half);
	}
.hero-im img {
	object-fit: contain;
}
@media only screen and (min-width:641px) {
	.phero {
        /*position: relative;
		top: calc(var(--header-height-1) * -1);
		margin-bottom: calc(var(--header-height-1) * -1);*/
        z-index: -1;
    }
	.hero-wrap {
        height: 100%;
    }
	.hero-tit {
		align-items: center;
		width: 55%;
	}
	.hero-im {
        width: 45%;
    }
		.hero-im img {
			width: 100%;
			height: 100vh;
			object-fit: cover;
		}
}
@media only screen and (max-width:640px) {
	.phero {
        padding-top: var(--share-smp-padding);
        padding-right: var(--share-smp-padding);
        margin-bottom: 120px;
    }
	.hero-wrap.flexbox {
		flex-wrap: nowrap;
	}
	.hero-tit {
        padding: 0 calc(var(--u-gc) * 2);
        margin-top: var(--share-smp-padding);
		width: calc(100% - 62.72%);
    }
		.hero-tit .tate {
			display: flex;
			flex-wrap: nowrap;
			align-items: center;
		}
			.hero-tit p {
				font-size: 13px;
				padding-top: var(--u-base-s);
				padding-right: 0;
			}
	.hero-im {	
		width: 62.72%;
	}
		.hero-im img {
			width: 100%;
			aspect-ratio: 3/4;
		}
}

/****** pageindexGuide ******/
.pnav {
	letter-spacing: 0.04em;
    padding-left: var(--u-base-s);
	margin-bottom: 120px;
}
.pnav p {
	font-size: 12px;
	line-height: 1em;
}
.pnav ul {
	margin-top: 1em;
	margin-left: 10px;
}
	.pnav li {
		font-size: 13px;
		margin-bottom: 0.7em;
	}
	.pnav li:last-of-type {
		margin-bottom: 0;
	}
		.pnav li a {
			padding: 0.3em 0;
		}	
@media only screen and (min-width:641px) {
	.pnav {
		position: sticky;
		z-index: 1;
		display: inline-block;
		bottom: var(--u-gutter);
		left: 0;
		padding-left: 42px;
		margin-bottom: var(--u-gutter);
	}
}
@media only screen and (max-width:640px) {
	.pnav p {
		font-size: 11px;
	}
	.pnav li {
		font-size: 12px;
	}
}

/**/
.psec + .psec {
    margin-top: 200px;
}
@media only screen and (min-width:1000px) {
	.psec {
		position: relative;
	}
	.lo-left {
		position: absolute;
		top: 0;
		left: 0;
		width: var(--u-side-margin);
	}
	.lo-right {
		padding-left: var(--u-gc);
		padding-top: var(--u-side-margin);
	}
}

/****** base settings ******/
.pindex .psec h1,
.pindex .psec h2,
.pindex .psec h3 {
    writing-mode: vertical-rl;
	font-family: var(--font-heading-vertical);
}

.pOthers.pindex .psec h3 {
	 writing-mode: initial;
}
/***lo-left***/
.pindex .psec h2 {
    position: relative;
    line-height: 1;
    padding-right: var(--u-column);
    padding-top: var(--u-gutter);
    margin-left: auto;
    margin-right: 0;
}
	.pindex .psec h2::before {
		position: absolute;
		display: inline-block;
		content: "";
		width: var(--u-side-margin);
		height: 1px;
		top: 0;
		background-color: var(--cl-add-bg);
	}
@media only screen and (min-width:1000px) {
   .pindex .psec h2::before {
       width: var(--u-side-margin);
       right: 0;
    } 
}
@media only screen and (max-width:999px) {
   .pindex .psec h2 {
        writing-mode: initial;
		padding-top: calc(var(--u-base-s) * 2);
		padding-right: 0;
		margin-bottom: 1.3em;
    }
	   .pindex .psec h2::before {
			width: 180px;
			left: -85px;
		} 
}
@media only screen and (max-width:640px) {
   .pindex .psec h2 {
		font-size: 18px;
		line-height: 1.85em;
    }
	   .pindex .psec h2::before {
			width: 92px;
			left: calc(var(--share-smp-padding) * -1);
		} 
}

/***lo-right***/
.pbox,
.con {
    margin-bottom: var(--u-con-bottom);
}
.boxList .pbox:last-of-type,
.conList .con:last-of-type {
	margin-bottom: 0;
}
.pindex .psec h3 {
    display: inline-block;
    line-height: 1;
	margin-bottom: 0;
}
.pindex .psec h4 {
    align-items: center;
    display: inline-flex;
    margin-bottom: 0;
}
.pbox p {
	line-height: 2.2em;
	margin-top: -0.75em;
}
.pbox p + p {
	margin-top: calc(var(--u-gutter-s) - 0.75em);
}
.pbox p.note {
    font-size: 13px;
    line-height: 1.65em;
    margin: 0;
    margin-left: 2em;
    text-indent: -2em;
}
	.pbox p.note + p.note {
		margin-top: 0.7em;
	}
.pbox .noteGr {
    margin-top: calc(var(--u-gutter-s) - 0.75em);
}
.pbox.box-intro > p {
    font-size: 18px;
	letter-spacing: 0.02em;
	line-height: 2.2em;
	margin-bottom: var(--u-gutter);
}
@media only screen and (max-width:640px) {
	.pbox p.note + p.note {
		margin-top: 1em;
	}
	.pbox .noteGr {
		margin-top: var(--u-gutter-3x);
	}
    .pbox.box-intro > p {
        font-size: 14px;
        letter-spacing: 0;
        line-height: 2em;
        margin-top: -0.5em;
        margin-bottom: var(--u-gutter-3x);
    }
}

/*box-intro*/
@media only screen and (min-width:641px) {
    .box-intro .id-im {
        width: calc(50% + var(--u-column) / 2);    
    }
    .box-intro .id-desc {
        width: calc(50% - var(--u-column) / 2 - var(--u-gutter));    
    }
}
@media only screen and (max-width:640px) {
	.box-intro .imdesc {
		gap: var(--u-gutter-3x);
	}
    .box-intro .id-desc > p {
        line-height: 1.85em;
        margin-top: -0.425em;
		margin-bottom: calc(24px + 0.425em);
    }
	.box-intro .id-desc > p:last-of-type {
        margin-bottom: 0;
    }
}

/*box-content*/
.box-content.pbox {
    margin-bottom: 0;
}
.con .wrap-l1.flexbox {
	flex-wrap: nowrap;
}
.con .wrap-l2 {
    padding-left: var(--u-gutter);
    padding-top: var(--u-gutter);
}
.con .wrap-l2 .wrap-l3:not(:last-of-type) {
    margin-bottom: var(--u-con-bottom);
}

/**/
.box-bt {
    text-align: center;
}
	.box-bt .bt {
		width: calc(50% - 30px);
		margin: 0 auto;
	}

/*
Vender Prefix 250304
*/

/*firefox*/
@-moz-document url-prefix() {
  div.lo-left h2 {
    width: 100%;
  }
}

/*20250317*/
@media only screen and (min-width:1000px) {
    .lo-left {
        width: calc((100% - 960px) / 2);
        min-width: 160px;
		transition: all 0.3s;
    }
    .pindex .psec h2,
    .pindex .psec h2::before {
        width: 100%;
		transition: all 0.3s;
    }
}

/*lo-right-fullwide*/
.lo-right-fullwide {
	width: var(--lo-right-fullwide);
}
@media only screen and (max-width:999px) {
	.lo-right-fullwide {
		width: 100%;
	}
}

/**/
.pcustom-collection {
    display: flex;
    flex-wrap: wrap;
    gap: var(--u-gutter);
    margin-bottom: 0;
}
    .pcustom-collection > img {
        width: 100%;
        margin-bottom: 0!important;
	}
	.pcustom-collection > img.im-w50 {
		width: calc(50% - var(--u-gutter) / 2);
	}
.proom .lo-right .imGr + div {
    margin-top: 60px;
}
@media only screen and (max-width:640px) {
	.proom .lo-right .imGr + div {
		margin-top: 36px;
	}
}