#photo{
	width:650px;
	background-color:#FFFFFF;
	margin:0px;
	text-align:center;
}
.phototxt{
	font-size:12px;
	color:#339900;
}
.photoline{
	font-size:1px;
	line-height:1px;
	background-color: #64D080;
	margin: 5px 0px 5px 0px;
}
#mail{
	width:650px;
	background-color:#FFFFFF;
	margin:0px;
	text-align:center;
}
.mailtable{
	background-color:#33CC00;
	text-align:left;
	margin: 0px auto;
}
.mailtxt01{
	font-size:14px;
	line-height:16px;
	background-color: #eeffee;
	margin:0px;
	padding:5px;
	color:#666666;
	font-weight:bold;
}
.mailtxt02{
	font-size:14px;
	line-height:16px;
	background-color: #ffffff;
	margin:0px;
	padding:5px;
	color:#666666;
}
input{
	padding:3px;
	background-color: #ffffff;
	border: 1px solid #00aa00;
	color:#000000;
	font-size:14px;
}
.red{
	color:#ff0000;
	font-size:12px;
}
form{
	padding:0px;
	margin:0px;
}
#yfc{
	width:650px;
	background-color:#FFFFFF;
	margin:0px;
	text-align:center;
}
.yfcframe{border:#007700 1px dashed;}
.yfctable{
	background-color:#11dd00;
	text-align:left;
	margin: 0px auto;
}
.yfctxt01{
	font-size:14px;
	line-height:16px;
	background-color: #eeffee;
	margin:0px;
	padding:5px;
	color:#666666;
	font-weight:bold;
}
.yfctxt02{
	font-size:14px;
	line-height:16px;
	background-color: #ffffff;
	margin:0px;
	padding:5px;
	color:#666666;
}


.maildomain{
	background-color: #f5fff5;
	font-size:12px;
	line-height:18px;
	margin: 0px auto 10px auto;
	color:#666666;
	border:#007700 1px dashed;
}
.maildomain01{
	font-size:12px;
	height:40px;
	line-height:40px;
	margin: 0px 0px 0px 0px;
	color:#666666;
	font-weight:bold;
}
.maildomain_t01{
	font-size:14px;
	font-weight:bold;
	color:#087902;
}
.maildomain_t02{
	font-size:16px;
	font-weight:bold;
	color:#cc0000;
	padding-left:15px;
}

.maildomain01 A:LINK ,
.maildomain01 A:VISITED ,
.maildomain01 A:ACTIVE { color: #cc0000; text-decoration: none; font-size: 14px;}
.maildomain01 A:HOVER { color: #087902; text-decoration: none; font-size: 14px;}


.clink td{
	padding:15px;
}



@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap');

  .yasuragi-section {
    font-family: 'A-OTF リュウミン Pro', 'Ryumin', 'A-OTF-RyuminPro-L', 'Yu Mincho', 'YuMincho', '游明朝', 'Hiragino Mincho ProN', 'HiraMinProN-W3', 'Noto Serif JP', serif;
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
    padding: clamp(30px, 8vw, 10px) clamp(20px, 6vw, 48px) clamp(24px, 8vw, 5px);
    box-sizing: border-box;	
	background-image: url('../system/img/yasuragi_price_bg.png');
	background-color: rgba(255, 255, 255, 0.5); /* 白を40%被せて透過っぽく見せる */
	background-blend-mode: lighten; /* 画像を明るくして馴染ませる */
	background-size: cover;	
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
  }

  .yasuragi-section * {
    box-sizing: border-box;
  }

  /* ---- タイトルエリア ---- */
  .ys-title-wrap {
    text-align: center;
    margin-bottom: clamp(28px, 6vw, 2px);
    position: relative;
  }

  .ys-script {
    font-family: 'Kunstler Script', 'KunstlerScript', 'Great Vibes', cursive;
    font-size: 42px;
    color: #3a5a2a;
    letter-spacing: 0.04em;
    display: block;
    margin-bottom: 2px;
    font-weight: 400;
    font-style: italic;
  }

  .ys-title-ja {
    font-size: 54px;
    color: #1e2d10;
    letter-spacing: 0.15em;
    font-weight: 400;
    margin: 0;
    line-height: 1.2;
  }
  .ys-title_2rin-ja {
    font-size: 51px;
    color: #1e2d10;
    letter-spacing: 0.15em;
    font-weight: 400;
    margin: 30px auto 24px;
    line-height: 1.2;
  }
  .ys-title-ja span{
	font-size: 36px;
  }

  .ys-badge {
    display: block;
    width: fit-content;
    margin: 60px auto 24px;
    background-color: rgba(225, 50, 175, 0.45);
    color: #ffffff;
    font-size: clamp(14px, 3.5vw, 18px);
    letter-spacing: 0.2em;
    padding: 7px 32px;
    border-radius: 4px;
    font-weight: 400;
    position: relative;
  }

  /* ---- サブテキスト ---- */
  .ys-sub {
    text-align: center;
    font-size: 20px;
	line-height: 1.2;
    color: #5a5045;
    letter-spacing: 0.1em;
    margin: 15px 0 36px 0;
    position: relative;
  }
  .ys-sub_s {
    text-align: center;
    font-size: 16px;
	line-height: 1.4;
    color: #5a5045;
    letter-spacing: 0.1em;
    margin: 24px 0 24px 0;
    position: relative;
  }
  .ys-supplement-wrap {
    text-align: center;
    margin-bottom: clamp(28px, 6vw, 2px);
    position: relative;
  }

  .tl-left{
	text-align: left;
  }

  /* ========================================
     カードブロック共通（タグがカード上端に重なる）
  ======================================== */
  .ys-block {
    position: relative;
    margin-bottom: clamp(16px, 4vw, 5px);
  }

  .ys-block:last-of-type {
    margin-bottom: 10px;
  }

  /* セクションタグ：カード上端に半分かかる */
  .ys-tag {
    display: block;
    width: fit-content;
    margin: 0 auto;
    background: rgba(185, 175, 158, 0.55);
    color: #2a2a2a;
    font-size: clamp(18px, 4.5vw, 26px);
    letter-spacing: 0.2em;
    padding: 7px 36px;
    border-radius: 4px;
    position: relative;
    z-index: 2;
    transform: translateY(50%);
    font-weight: 400;
  }

  /* 2輪車コースタグは少し小さめ */
  .ys-tag--sm {
    font-size: clamp(15px, 3.8vw, 21px);
    letter-spacing: 0.15em;
    padding: 7px 28px;
    background: rgba(225, 50, 175, 0.45);
  }

  /* カード本体 */
  .ys-card {
    border-radius: 6px;
    padding: clamp(24px, 5vw, 32px) clamp(16px, 5vw, 40px) clamp(20px, 4vw, 10px);
    position: relative;
    z-index: 1;
  }

  .ys-card--white {
    background: rgba(255, 255, 255, 0.82);
  }

  .ys-card--gray {
    background: rgba(247, 129, 226, 0.25);
  }

  /* ---- オールタイムラベル ---- */
  .ys-alltime {
    text-align: center;
    font-size: 24px;
    color: #3a3a3a;
    letter-spacing: 0.12em;
    margin: 0 0 6px;
  }

  /* ---- 料金行 ---- */
  .ys-row {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: clamp(6px, 1.8vw, 14px);
    padding: clamp(9px, 2vw, 13px) 0;
  }

  .ys-row + .ys-row {
    border-top: 1px solid rgba(180, 165, 145, 0.3);
  }

  .ys-duration {
	font-size: 42px;
    font-weight: bold;
    color: #1e2d5a;
    letter-spacing: 0.03em;
    min-width: clamp(68px, 16vw, 96px);
    text-align: right;
  }

  .ys-duration span {
    font-size: clamp(14px, 3.2vw, 19px);
  }

  .ys-label {
    font-size: 18px;
	font-weight: bold;
    color: #2a2a2a;
    letter-spacing: 0.05em;
    white-space: nowrap;
    line-height: 1;
    align-self: flex-end;
    padding-bottom: 18px;
  }

  .ys-amount {
    font-size: 48px;
    font-weight: 700;
    color: #1e2d5a;
    letter-spacing: 0.02em;
    line-height: 1;
  }

  .ys-yen {
    font-size: 22px;
	font-weight: bold;
    color: #1e2d5a;
    font-weight: 400;
    align-self: flex-end;
    padding-bottom: 12px;
  }

  /* ---- 2輪車コース：会員様以外の小さい行 ---- */
  .ys-row--sm .ys-member-prefix {
    font-size: clamp(12px, 3vw, 15px);
    color: #2a2a2a;
    white-space: nowrap;
    align-self: flex-end;
    padding-bottom: 6px;
    letter-spacing: 0.05em;
  }

  .ys-row--sm .ys-duration {
    font-size: 30px;
    min-width: auto;
  }

  .ys-row--sm .ys-duration span {
    font-size: clamp(11px, 2.5vw, 14px);
  }

  .ys-row--sm .ys-label {
    font-size: 16px;
    padding-bottom: 10px;
  }

  .ys-row--sm .ys-amount {
    font-size: 36px;
  }

  .ys-row--sm .ys-yen {
    font-size: clamp(13px, 3.2vw, 19px);
    padding-bottom: 5px;
	margin-left: -10px;
  }

  /* ---- CTAボタン ---- */
  .ys-cta {
    display: block;
    width: 100%;
    margin-top: clamp(20px, 5vw, 32px);
    padding: clamp(14px, 3.5vw, 20px) 24px;
    background-color: #1e2d5a;
    color: #ffffff;
    text-align: center;
    font-size: clamp(16px, 4vw, 22px);
    letter-spacing: 0.15em;
    border-radius: 5px;
    text-decoration: none;
    font-family: inherit;
    font-weight: 400;
    cursor: pointer;
    border: none;
    position: relative;
    transition: opacity 0.2s;
  }

  .ys-cta:hover {
    opacity: 0.85;
  }



