.cast-page-main-block{
	width:calc(100% - 6rem);
	margin:1rem 3rem;
	display:flex;
	
}

.cast-page-head-block{
	margin:2em auto;
	width:100%;
	height:80px;
	
}

.cast-page-head-block img{
	margin:0 auto;
	width:100%;
	height:100%;
	object-fit:contain;
}

.cast-page-name-box{
	margin-top:5em;
}

.cast-page-name-box,
.cast-page-profile-box,
.cast-page-like-box
{
	margin-bottom:2em;
}

.cast-page-profile-box th,
.cast-page-profile-box td,
.cast-page-like-box th,
.cast-page-like-box td
{
	padding-top:0.5em;
}

.cast-page-like-image{
	width:450px;
	height:350px;
	margin:0 auto;
}
.cast-page-like-image img{
	width:100%;
	height:100%;
	object-fit:contain;
}

.cast-page-icons{
	margin-left:4em;
	margin-right:4em;
}

.cast-page-icons li{
	margin:0 1em;
}

.cast-page-comment-myself,
.cast-page-comment-priveroom
{
	margin-top:1em;
	margin-bottom:1em;
}

.myself-comment-box,
.priveroom-comment-box
{
	width:90%;
	height:250px;
	margin-top:0.5em;
	margin-left:1em;
	overflow-y: scroll;
	-ms-overflow-style: none;
	overflow-wrap:break-word;
	white-space: pre-wrap;
}

.myself-comment-box::-webkit-scrollbar,
.priveroom-comment-box::-webkit-scrollbar
{
  display: none;
}

/* グラフ作成 */
.traits-wrapper {
	display: flex;
	justify-content: space-around;
	padding: 0 1em;
	margin-top: 2em;
	flex-wrap: wrap;
}

.trait {
	text-align: center;
	margin: 1em;
}

.circle-chart {
	width: 100px;
	height: 100px;
}

.circle-bg {
	fill: none;
	stroke: #eee;
	stroke-width: 10;
}

.circle {
	fill: none;
	stroke-width: 10;
	stroke-linecap: round;
	transform: rotate(-90deg);
	transform-origin: center;
	transition: stroke-dasharray 0.5s;
}

.circle-text {
	font-size: 1rem;
	font-weight: bold;
	fill: #333;
}

/* アイコン部分 */
.sns-box {
	display: flex;
	gap: 0.5rem;
}

.btn-sns {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 3rem;
	height: 3rem;
	box-sizing: border-box;
	border-radius: 50%;
	color: white;
	font-size: 1.5rem;
	text-align: center;
	text-decoration: none;
	transition: 0.3s;
}

.btn-sns svg {
	fill: #fff;
}

.btn-x {
	background-color: #111319;
}
/* 2026-08-09: session-site style session creator */
.input-page{min-height:100vh;color:#2d2635;background:#f7f5fa}
.input-page-container{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:48px 0 72px}
.input-page-header{margin-bottom:28px}.input-page-header h1{margin:0;font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;color:#2f2440}.input-page-header>p:last-child{margin:10px 0 0;color:#6d6476}.input-page-kicker{margin:0 0 8px;font-size:.78rem;font-weight:800;letter-spacing:.18em;color:#815aa8}
.input-page-card{padding:clamp(20px,4vw,32px);margin-bottom:22px;border:1px solid #e5deeb;border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(58,38,74,.08)}.input-page-message{text-align:center}
.input-page-section-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px}.input-page-section-heading h2{margin:0;color:#35283f;font-size:clamp(1.3rem,3vw,1.8rem)}.input-page-section-heading p{margin:6px 0 0;color:#766d7e}.input-page-step{display:inline-grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;color:#fff;font-weight:800;background:#8255a5}
.input-page-summary{display:flex;flex-wrap:wrap;gap:18px}.input-page-summary span{color:#756b7d;font-size:.84rem}.input-page-summary>div{flex:1 1 220px;display:grid;gap:5px;padding:16px;border-radius:14px;background:#f8f5fb}
.input-page input[type=text],.input-page input[type=url],.input-page input[type=number],.input-page input[type=date],.input-page input[type=time],.input-page textarea,.input-page select{box-sizing:border-box;max-width:100%;padding:12px 14px;border:1px solid #d8cfdf;border-radius:12px;color:#2f2835;background:#fff;font:inherit}.input-page input:focus,.input-page textarea:focus,.input-page select:focus{outline:3px solid rgba(130,85,165,.16);border-color:#8255a5}
.input-primary-button,.input-secondary-button,.input-danger-button,.input-page-actions .return-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border-radius:12px;font-weight:800;text-decoration:none;cursor:pointer}.input-primary-button{border:1px solid #744795;color:#fff;background:#8255a5}.input-secondary-button,.input-page-actions .return-btn{border:1px solid #d5c9dd;color:#4d3e58;background:#fff}.input-danger-button{min-height:36px;padding:6px 12px;border:1px solid #e4b9bd;color:#9b3f48;background:#fff5f6}.input-page-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}
.session-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;margin:0;list-style:none}.session-type-grid li{margin:0}.session-type-card{position:relative;display:flex;align-items:center;gap:10px;min-height:64px;padding:14px 16px;border:1px solid #ded4e5;border-radius:14px;background:#fbf9fc;cursor:pointer}.session-type-card:has(input:checked){border-color:#8255a5;background:#f2eafa;box-shadow:inset 0 0 0 1px #8255a5}
.session-input-card{margin-top:22px}.session-input-card-inner>h2:first-of-type{margin-top:0}.session-input-card h2{color:#3d3047}.session-input-card hr{border:0;border-top:1px solid #eee8f1;margin:22px 0}.session-input-card ul{padding-left:0;list-style:none}.session-input-card label{color:#4f4358}.session-input-card input[type=checkbox],.session-input-card input[type=radio]{width:auto}.session-input-card form>.margin-center{margin:0!important;width:auto!important}.session-input-card form>.margin-center>p:last-child{text-align:center}.session-input-card form>.margin-center>p:last-child input[type=submit]{min-height:46px;padding:10px 22px;border:1px solid #744795;border-radius:12px;color:#fff;background:#8255a5;font-weight:800;cursor:pointer}
.booking-datetime-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px;margin-bottom:10px;border:1px solid #e8e1ed;border-radius:14px;background:#faf8fc}.booking-datetime-row p{margin:0}.booking-datetime-row label{display:grid;gap:6px}.session-input-note{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.visit-search-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.visit-search-row label{display:grid;gap:6px;flex:1 1 260px}
.input-table-scroll{overflow-x:auto}.input-status-section table{min-width:760px}.talk-input-visit-wrap .visit-card-list{margin-top:0}
@media(max-width:760px){.session-type-grid{grid-template-columns:1fr}.booking-datetime-row{grid-template-columns:1fr}.input-page-actions>*{width:100%}}

/* 2026-08-09: session-site public cast profile parity */
.cast-dashboard{width:min(1120px,calc(100% - 32px));margin:2rem auto 4rem;color:#302833}.cast-dashboard__hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,4vw,3rem);margin-bottom:1rem;border-radius:24px;background:linear-gradient(135deg,#f7f3ff,#eef7ff)}.cast-dashboard__hero h1{margin:.2rem 0 .5rem;font-size:clamp(2rem,5vw,3.2rem);color:#302833}.cast-dashboard__hero p{margin:.25rem 0;color:#62596a}.cast-dashboard__eyebrow{font-size:.76rem!important;font-weight:800!important;letter-spacing:.18em;color:#765d88!important}.cast-dashboard__hero-text{flex:1;min-width:0}.cast-dashboard__hero-description{margin-top:1rem!important;max-width:42rem;line-height:1.8}
.cast-dashboard__avatar{overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(48,40,51,.12)}.cast-dashboard__avatar--large{flex:0 0 clamp(190px,24vw,270px);width:clamp(190px,24vw,270px);height:clamp(190px,24vw,270px);border-radius:28px}.cast-dashboard__avatar img{width:100%;height:100%;object-fit:cover}.cast-dashboard__hero--expanded{min-height:300px;padding:clamp(2rem,5vw,4rem);align-items:center}
.cast-dashboard__hero-links{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin:.65rem 0 .85rem}.cast-dashboard__hero-links a{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#302833;text-decoration:none;overflow:hidden}.cast-dashboard__hero-links .btn-sns{width:48px;height:48px;background:transparent}.cast-dashboard__hero-links svg{width:24px!important;height:24px!important;fill:#fff!important}.cast-dashboard__hero-links svg path{fill:#fff!important}.cast-dashboard__hero-links a:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(48,40,51,.18)}
.cast-dashboard__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cast-dashboard__card{padding:1.4rem;border:1px solid #e5e2e9;border-radius:18px;background:#fff;box-shadow:0 8px 30px rgba(30,20,50,.05)}.cast-dashboard__card--wide{grid-column:1/-1}.cast-dashboard__heading{margin-bottom:1rem}.cast-dashboard__heading h2{margin:.15rem 0 0;font-size:1.25rem;color:#302833}.cast-dashboard__profile{margin:0}.cast-dashboard__profile>div{display:grid;grid-template-columns:8em 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid #eee9f0}.cast-dashboard__profile>div:last-child{border-bottom:0}.cast-dashboard__profile dt{color:#6b626f;font-weight:700}.cast-dashboard__profile dd{margin:0;overflow-wrap:anywhere}.cast-dashboard__comment{padding:1rem;border-radius:14px;background:#faf8fb;white-space:pre-wrap;overflow-wrap:anywhere;min-height:100px}.cast-dashboard__empty{color:#756d79}.cast-dashboard__footer{display:flex;justify-content:center;margin-top:1.25rem;padding:1.25rem;border-radius:18px;background:#f7f4f9}.cast-dashboard .traits-wrapper{margin-top:0}
@media(max-width:760px){.cast-dashboard__hero{align-items:flex-start;flex-direction:column}.cast-dashboard__grid{grid-template-columns:1fr}.cast-dashboard__card--wide{grid-column:auto}.cast-dashboard__profile>div{grid-template-columns:1fr}.cast-dashboard__avatar--large{width:150px;height:150px;flex-basis:150px}.cast-dashboard__hero--expanded{min-height:0}}


/* 2026-08-09: session creator visit cards use the same visual as the user page */
.talk-input-visit-wrap .user-panel__heading-inline{display:flex;justify-content:flex-end;margin:-.25rem 0 .75rem}
.talk-input-visit-wrap .user-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:3rem;padding:.38rem .7rem;border-radius:999px;background:#f2eef5;color:#5e5268;font-size:.82rem;font-weight:800}
.talk-input-visit-wrap .visit-card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:0}
.talk-input-visit-wrap .visit-card{display:flex;flex-direction:column;padding:1.15rem;border:1px solid #e8e1eb;border-radius:15px;background:#fff}
.talk-input-visit-wrap .visit-card__header{padding-bottom:.9rem;border-bottom:1px solid #eee}
.talk-input-visit-wrap .visit-card__header>strong{display:block;font-size:.78rem;color:#6f6478;margin-bottom:.15rem}
.talk-input-visit-wrap .visit-card__header time{display:block;font-weight:800;color:#302833}
.talk-input-visit-wrap .visit-card__partner{margin-top:.8rem;padding:.75rem;border-radius:10px;background:#f8f6f9}
.talk-input-visit-wrap .visit-card__partner span{display:block;font-size:.75rem;color:#746b79;margin-bottom:.15rem}
.talk-input-visit-wrap .visit-card__partner b{display:block;overflow-wrap:anywhere}
.talk-input-visit-wrap .visit-card dl{margin:.4rem 0 0}
.talk-input-visit-wrap .visit-card dl>div{display:grid;grid-template-columns:7em 1fr;gap:1rem;padding:.7rem 0;border-bottom:1px solid #eee}
.talk-input-visit-wrap .visit-card dl>div:last-child{border-bottom:0}
.talk-input-visit-wrap .visit-card dt{color:#666}
.talk-input-visit-wrap .visit-card dd{margin:0;overflow-wrap:anywhere}
.talk-input-visit-wrap .user-empty{margin:0;padding:1rem;border-radius:12px;background:#faf8fb;color:#6f6478}
@media(max-width:760px){.talk-input-visit-wrap .visit-card-list{grid-template-columns:1fr}.talk-input-visit-wrap .visit-card dl>div{grid-template-columns:1fr;gap:.2rem}}

.cast-dashboard__booking-button{display:inline-flex;align-items:center;justify-content:center;margin:.25rem 0 .85rem;padding:.7rem 1rem;border:1px solid #302833;border-radius:10px;background:#fff;color:#302833;font-weight:800;cursor:pointer}
.cast-dashboard__booking-button:hover{background:#302833;color:#fff}
.cast-price-list{display:grid;gap:.65rem}.cast-price-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.8rem;border-radius:12px;background:#faf8fb;border:1px solid #eee8f0}.cast-price-list span{white-space:nowrap;color:#665d6a}
.cast-session-dialog{width:min(680px,calc(100% - 32px));border:0;border-radius:20px;padding:1.5rem;color:#302833;box-shadow:0 22px 70px rgba(30,20,50,.25)}.cast-session-dialog::backdrop{background:rgba(20,15,25,.52)}.cast-session-dialog__close{position:absolute;right:1rem;top:1rem;border:0;background:transparent;font-size:1.8rem;cursor:pointer}.cast-session-list{display:grid;gap:.7rem;margin-top:1rem}.cast-session-list a{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid #e7e0ea;border-radius:12px;color:#302833;text-decoration:none;background:#fff}.cast-session-list a:hover{background:#f7f3f9}
