 :root {
   /* 白青（しろあお）ベースの和紙パレット */
   --my-kr-bg-blue: #eef2f6;
   /* 白青（極薄い青みがかった白） */
   --my-kr-card-bg: rgba(255, 255, 255, 0.75);
   /* すりガラス用の半透明白 */
   --my-kr-text-main: #000e1c;
   /* 濃い青墨色（文字色） */
   --my-kr-text-muted: #00244d;
   /* 薄墨色 */

   --my-kr-accent-red: #cc1020;
   /* 鮮血の赤（維持） */
   --my-kr-accent-dark-red: #8b0a14;
   /* 濃い赤 */

   --my-kr-accent-silver: #4a6482;
   /* 藍鼠色（リンクやアクセントカラー） */
   --my-kr-border-silver: rgba(74, 100, 130, 0.25);
   /* 枠線 */
 }

 body {
   background-color: var(--my-kr-bg-blue);
   /* 和紙テクスチャ: SVGのフラクタルノイズを利用して繊維のようなざらつきを表現 */
   background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02 0.05' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.08'/%3E%3C/svg%3E");
   background-attachment: fixed;
   color: var(--my-kr-text-main);
   font-family: 'Noto Serif JP', serif;
   font-weight: 300;
   margin: 0;
   padding: 0;
   position: relative;
 }

 /* 背景1: 霊気を感じさせる青白いグラデーション */
 body::before {
   content: "";
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   pointer-events: none;
   z-index: -2;
   background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.6) 0%, transparent 90%);
 }

 /* 背景2: 見えないくらい薄い「霊・人魂」のパターン */
 body::after {
   content: "";
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   pointer-events: none;
   z-index: -3;
   background-image: url("data:image/svg+xml,%3Csvg width='150' height='150' viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30,80 Q25,50 40,40 Q55,30 50,60 Q45,90 30,80 Z' fill='%234a6482' opacity='0.02'/%3E%3Cpath d='M100,40 Q90,50 110,60 Q120,40 100,40 Z' fill='%234a6482' opacity='0.025'/%3E%3Cpath d='M120,110 C100,90 140,80 150,110 C160,130 130,140 120,110 Z' fill='%234a6482' opacity='0.015'/%3E%3C/svg%3E");
 }

 /* ==========================================================
       光の演出 (Light Effects)
       ========================================================== */
 .my-kr-light-container {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   pointer-events: none;
   z-index: -1;
   overflow: hidden;
 }

 /* 差し込む光の筋 */
 .my-kr-light-beam {
   position: absolute;
   top: -50%;
   left: -50%;
   width: 200%;
   height: 200%;
   background: linear-gradient(45deg,
       transparent 30%,
       rgba(74, 100, 130, 0.05) 45%,
       rgba(74, 100, 130, 0.1) 50%,
       rgba(74, 100, 130, 0.05) 55%,
       transparent 70%);
   transform-origin: center;
   animation: rotateBeam 30s linear infinite;
 }

 /* 漂う光のオーブ（霊気） */
 .my-kr-orb {
   position: absolute;
   border-radius: 50%;
   filter: blur(50px);
   mix-blend-mode: multiply;
   /* 白背景に合わせて乗算に変更 */
   opacity: 0.5;
 }

 .orb-1 {
   width: 400px;
   height: 400px;
   background: radial-gradient(circle, rgba(74, 100, 130, 0.15), transparent 70%);
   top: 10%;
   left: 20%;
   animation: floatOrb 18s infinite ease-in-out alternate;
 }

 .orb-2 {
   width: 300px;
   height: 300px;
   /* 僅かに怨念を感じさせる仄暗い赤紫のオーブ */
   background: radial-gradient(circle, rgba(160, 20, 40, 0.08), transparent 70%);
   bottom: 20%;
   right: 10%;
   animation: floatOrb 25s infinite ease-in-out alternate-reverse;
 }

 .orb-3 {
   width: 250px;
   height: 250px;
   background: radial-gradient(circle, rgba(100, 140, 200, 0.1), transparent 70%);
   top: 40%;
   right: 30%;
   animation: floatOrb 22s infinite ease-in-out alternate;
 }

 @keyframes rotateBeam {
   0% {
     transform: rotate(0deg);
     opacity: 0.5;
   }

   50% {
     opacity: 1;
   }

   100% {
     transform: rotate(360deg);
     opacity: 0.5;
   }
 }

 @keyframes floatOrb {
   0% {
     transform: translate(0, 0) scale(1);
     opacity: 0.4;
   }

   50% {
     transform: translate(30px, -50px) scale(1.1);
     opacity: 0.8;
   }

   100% {
     transform: translate(-20px, 30px) scale(0.9);
     opacity: 0.4;
   }
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
   font-family: 'Noto Serif JP', serif;
   font-weight: 400;
   letter-spacing: 2px;
 }

 a {
   color: var(--my-kr-accent-silver);
   text-decoration: none;
   transition: 0.4s ease;
 }

 a:hover {
   color: var(--my-kr-accent-red);
 }

 /*--------------------------------------------------------------
    # Header (Top Navigation)
    --------------------------------------------------------------*/
 #my-kr-header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 9997;
   padding: 15px 30px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   /* 白ベースのすりガラス効果 */
   background: rgba(255, 255, 255, 0.85);
   backdrop-filter: blur(15px);
   -webkit-backdrop-filter: blur(15px);
   border-bottom: 1px solid var(--my-kr-border-silver);
   box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
   transition: all ease-in-out 0.3s;
 }

 .my-kr-profile-header {
   text-align: left;
   padding: 0;
 }

 .my-kr-profile-header h1 {
   font-size: 20px;
   margin: 0;
   line-height: 1.2;
   letter-spacing: 1px;
   font-family: 'Yuji Syuku', serif;
 }

 .my-kr-profile-header h1 a {
   /* 怨念の赤黒グラデーション */
   background: linear-gradient(180deg, #e60000 0%, #b30000 60%, #660000 100%);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
   filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.2));
   -webkit-text-stroke: 0.5px rgba(255, 255, 255, 0.2);
 }

 .my-kr-profile-header h1 a span {
   font-family: 'Noto Serif JP', serif;
   -webkit-text-fill-color: var(--my-kr-text-muted);
   -webkit-text-stroke: 0;
   background: none;
   font-size: 1.1em;
   margin-left: 10px;
   display: inline-block;
 }

 /* Desktop Navigation */
 .my-kr-nav-menu {
   margin: 0;
   padding: 0;
 }

 .my-kr-nav-menu ul {
   margin: 0;
   padding: 0;
   display: flex;
   list-style: none;
   align-items: center;
 }

 .my-kr-nav-menu li {
   position: relative;
 }

 .my-kr-nav-menu a,
 .my-kr-nav-menu a:focus {
   display: flex;
   align-items: center;
   color: var(--my-kr-text-main);
   padding: 10px 15px;
   font-size: 14px;
   letter-spacing: 1px;
   transition: 0.3s;
   white-space: nowrap;
 }

 .my-kr-nav-menu a i,
 .my-kr-nav-menu a:focus i {
   font-size: 16px;
   margin-right: 8px;
   color: var(--my-kr-accent-silver);
   transition: 0.3s;
 }

 .my-kr-nav-menu a:hover,
 .my-kr-nav-menu .active,
 .my-kr-nav-menu .active:focus,
 .my-kr-nav-menu li:hover>a {
   color: var(--my-kr-accent-red);
 }

 .my-kr-nav-menu a:hover i,
 .my-kr-nav-menu .active i {
   color: var(--my-kr-accent-red);
 }

 /* 下線エフェクト */
 .my-kr-nav-menu a::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 15px;
   right: 15px;
   height: 2px;
   background: var(--my-kr-accent-red);
   transform: scaleX(0);
   transition: transform 0.3s ease;
 }

 .my-kr-nav-menu a:hover::after,
 .my-kr-nav-menu .active::after {
   transform: scaleX(1);
 }

 /*--------------------------------------------------------------
    # Mobile Navigation Toggle & Menu
    --------------------------------------------------------------*/
 .my-kr-mobile-toggle {
   font-size: 28px;
   cursor: pointer;
   display: none;
   color: var(--my-kr-accent-silver);
   transition: 0.3s;
 }

 @media (max-width: 991px) {
   .my-kr-mobile-toggle {
     display: block;
   }

   .my-kr-nav-menu {
     position: absolute;
     top: 100%;
     left: 0;
     right: 0;
     background: rgba(255, 255, 255, 0.95);
     backdrop-filter: blur(15px);
     -webkit-backdrop-filter: blur(15px);
     border-bottom: 1px solid var(--my-kr-border-silver);
     display: none;
     /* hidden by default on mobile */
     padding: 10px 0;
     box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
   }

   .my-kr-nav-menu ul {
     flex-direction: column;
   }

   .my-kr-nav-menu a,
   .my-kr-nav-menu a:focus {
     padding: 15px 30px;
     width: 100%;
   }

   .my-kr-nav-menu a::after {
     display: none;
     /* 下線エフェクトはスマホではオフ */
   }

   .my-kr-nav-menu a:hover,
   .my-kr-nav-menu .active {
     background: linear-gradient(90deg, rgba(204, 16, 32, 0.1) 0%, transparent 100%);
     border-left: 3px solid var(--my-kr-accent-red);
   }

   /* トグル時の表示クラス */
   .mobile-nav-active .my-kr-nav-menu {
     display: block;
   }
 }

 /*--------------------------------------------------------------
    # Main Layout
    --------------------------------------------------------------*/


 #my-kr-main {
   padding-top: 80px;
   /* ヘッダーの高さ分の余白 */
 }

 #my-kr-footer {
   background: rgba(238, 242, 246, 0.9);
   color: var(--my-kr-text-muted);
   border-top: 1px solid var(--my-kr-border-silver);
   padding: 30px 0;
   text-align: center;
   font-size: 0.9rem;
   letter-spacing: 2px;
 }

 .my-kr-container {
   max-width: 1000px;
   margin: 0 auto;
   padding: 40px 30px;
 }

 @media (max-width: 768px) {
   .my-kr-container {
     padding: 30px 15px;
   }
 }

 /*--------------------------------------------------------------
    # Hero Section
    --------------------------------------------------------------*/

 .my-kr-hero-img-wrapper {
   max-width: 1000px;
   margin: 0 auto 60px auto;
   padding: 25px;
   /* 白いマット（台紙）の幅 */
   background: #fcfcfc;
   /* マットの色 */

   /* シンプルな壁掛け風のフレーム（額縁） */
   border: 12px solid #575757;
   border-top-color: #444;
   /* 上部を少し明るくして立体感 */
   border-bottom-color: rgb(95, 95, 95);
   /* 下部を暗くして立体感 */
   border-left-color: #575757;
   border-right-color: #575757;

   /* 内側のマットへの影と、壁に掛かっているような外側の影 */
   box-shadow:
     inset 0 3px 6px rgba(0, 0, 0, 0.15),
     /* 画像周りのくぼみ */
     0 25px 50px rgba(0, 0, 0, 0.25);
   /* 壁に落ちる強い影 */
 }

 .my-kr-hero-img {
   width: 100%;
   height: auto;
   display: block;
   /* 画像自体に少しだけ影をつけて台紙の上に貼ってある感を出す */
   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
   /* 画像自体の少し暗めの補正（和紙世界観用） */
   filter: contrast(105%) brightness(95%);
 }

 /* 内側の細い線（二重枠効果） */
 .my-kr-hero-img-wrapper::after {
   content: '';
   position: absolute;
   top: 5px;
   bottom: 5px;
   left: 5px;
   right: 5px;
   border: 1px solid rgba(204, 16, 32, 0.2);
   pointer-events: none;
 }

 .my-kr-main-title {
   font-size: 1.3rem;
   line-height: 1.8;
   color: #ffffff;
   text-align: center;
   margin-bottom: 25px;
   font-weight: 700;
 }

 .my-kr-main-title span.highlight {
   font-family: 'Yuji Syuku', serif;
   color: #cc1020;
   font-weight: 700;
   display: inline-block;
   font-size: 1.4em;
   margin: 5px 0;
   letter-spacing: 3px;
 }

 /* 新設：ヒーローセクションのタイトル枠 */
 .my-kr-hero-title-box {
   position: relative;
   margin: 0 auto 30px auto;
   padding: 50px 30px 40px 30px;
   background: rgba(0, 0, 0, 0.85);
   color: #FFF;
   border: 1px solid var(--my-kr-accent-red);
   /* 赤い枠線 */
   box-shadow: 0 15px 35px rgba(204, 16, 32, 0.08);
   /* 赤みがかった影 */
   max-width: 900px;
 }

 /* 四隅の和風角飾り（左上） */
 .my-kr-hero-title-box::before {
   content: '';
   position: absolute;
   top: -8px;
   left: -8px;
   width: 40px;
   height: 40px;
   border-top: 3px solid var(--my-kr-accent-dark-red);
   border-left: 3px solid var(--my-kr-accent-dark-red);
   pointer-events: none;
 }

 /* 四隅の和風角飾り（右下） */
 .my-kr-hero-title-box::after {
   content: '';
   position: absolute;
   bottom: -8px;
   right: -8px;
   width: 40px;
   height: 40px;
   border-bottom: 3px solid var(--my-kr-accent-dark-red);
   border-right: 3px solid var(--my-kr-accent-dark-red);
   pointer-events: none;
 }

 /* 修正：枠内に収めるため下の余白*/
 .my-kr-date-badge {
   display: inline-block;
   background: rgba(255, 255, 255, 0.774);
   backdrop-filter: blur(5px);
   -webkit-backdrop-filter: blur(5px);
   color: var(--my-kr-accent-dark-red);
   padding: 15px 40px;
   font-size: 1.2rem;
   letter-spacing: 3px;
   border: 1px solid var(--my-kr-border-silver);
   box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.05), 0 5px 15px rgba(0, 0, 0, 0.05);
   margin-bottom: 0;
   /* ←ここを変更しました */
   font-family: 'Yuji Syuku', serif;
   font-weight: 700;
 }

 .my-kr-intro-text {
   /* padding指定を外し、my-kr-intro-box側に任せるように変更 */
   line-height: 2.2;
   font-size: 1rem;
   color: var(--my-kr-text-main);
 }

 /* 新設：導入文（ごあいさつ）の装飾ボックス */
 .my-kr-intro-box {
   position: relative;
   padding: 60px 50px;
   background: rgba(255, 255, 255, 0.95);
   border: none;
   border-top: 2px solid var(--my-kr-accent-red);
   border-bottom: 2px solid var(--my-kr-accent-red);
   box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08), 0 0 30px rgba(204, 16, 32, 0.05);
   /* ほんのり赤い光 */
   text-align: justify;
   margin-top: 40px;
   /* 見出しラベル用の余白 */
 }

 /* 上部に重なる「ごあいさつ」ラベル */


 /* 内側の細い装飾線（二重枠効果） */
 .my-kr-intro-box::after {
   content: '';
   position: absolute;
   top: 6px;
   bottom: 6px;
   left: 6px;
   right: 6px;
   border: 1px solid rgba(204, 16, 32, 0.15);
   pointer-events: none;
 }

 /* スマホ用のサイズ調整 */
 @media (max-width: 768px) {
   .my-kr-intro-box {
     padding: 50px 20px 30px 20px;
   }

   .my-kr-intro-box::before {
     font-size: 0.9rem;
     padding: 5px 25px;
     letter-spacing: 4px;
     top: -15px;
   }
 }

 /*--------------------------------------------------------------
    # Shared Glass Card Style (すりガラス効果)
    --------------------------------------------------------------*/
 .my-kr-glass-card {
   background: var(--my-kr-card-bg);
   border: 1px solid var(--my-kr-border-silver);
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   /* 背景の光のオーブを美しく透過させる */
   backdrop-filter: blur(12px);
   -webkit-backdrop-filter: blur(12px);
 }

 /*--------------------------------------------------------------
    # Sections & Components
    --------------------------------------------------------------*/
 .my-kr-section {
   margin-bottom: 80px;
 }

 /* 📜 巻物風のセクションタイトル */
 .my-kr-section-title {
   font-family: 'Yuji Syuku', serif;
   font-size: 1.8rem;
   /* どんな環境でも確実に表示されるよう、グラデーションを外し濃い赤色の単色に修正 */
   color: #8b0a14;
   text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.15);

   margin-bottom: 50px;
   text-align: center;
   position: relative;
   display: inline-block;
   left: 50%;
   transform: translateX(-50%);
   letter-spacing: 4px;
   padding: 15px 50px;
   z-index: 1;
 }

 .my-kr-section-title::before {
   content: '';
   position: absolute;
   top: 0;
   left: 15px;
   right: 15px;
   bottom: 0;
   /* 白青の和紙イメージ */
   background: rgba(255, 255, 255, 0.95);
   backdrop-filter: blur(5px);
   border-top: 1px solid var(--my-kr-border-silver);
   border-bottom: 1px solid var(--my-kr-border-silver);
   z-index: -1;
 }

 .my-kr-section-title::after {
   content: '';
   position: absolute;
   top: -8px;
   bottom: -8px;
   left: 0;
   right: 0;
   z-index: -2;
   background-image:
     linear-gradient(90deg, #99aabf, #eef2f6, #99aabf),
     linear-gradient(90deg, #99aabf, #eef2f6, #99aabf);
   background-size: 15px 100%, 15px 100%;
   background-position: left center, right center;
   background-repeat: no-repeat;
   border-radius: 4px;
 }

 .my-kr-intro-text {
   line-height: 2.2;
   font-size: 1rem;
   padding: 40px;
   color: var(--my-kr-text-main);
 }

 /*--------------------------------------------------------------
    # Information Table
    --------------------------------------------------------------*/
 .my-kr-table-subhead {
   /* 文字色を濃い赤に変更 */
   color: var(--my-kr-accent-dark-red);
   /* 背景にうっすらと赤いグラデーション帯を敷く */
   background: linear-gradient(90deg, rgba(204, 16, 32, 0.08) 0%, transparent 100%);
   padding: 15px 20px;
   /* 文字を少し大きくし、太字に */
   font-size: 1.25rem;
   font-weight: 900;
   letter-spacing: 2px;
   margin-bottom: 25px;
   /* 左側に赤い太線を配置 */
   border-left: 6px solid var(--my-kr-accent-red);
   /* 下部にもうっすらと線を追加 */
   border-bottom: 1px solid rgba(204, 16, 32, 0.15);
   line-height: 1.6;
   /* フォントを筆文字風に変更 */
   font-family: 'Yuji Syuku', serif;
 }

 .my-kr-info-table {
   width: 100%;
   border-collapse: collapse;
   margin-bottom: 40px;
 }

 .my-kr-info-table th {
   width: 25%;
   padding: 25px 20px;
   color: var(--my-kr-accent-silver);
   text-align: left;
   vertical-align: top;
   border-bottom: 1px solid var(--my-kr-border-silver);
   font-weight: 400;
 }

 .my-kr-info-table td {
   padding: 25px 20px;
   vertical-align: top;
   border-bottom: 1px solid var(--my-kr-border-silver);
   line-height: 2;
 }

 .my-kr-info-table tr:last-child th,
 .my-kr-info-table tr:last-child td {
   border-bottom: none;
 }

 .my-kr-table-subhead {
   color: var(--my-kr-accent-red);
   padding: 0 0 10px 0;
   font-size: 1.1rem;
   font-weight: 700;
   letter-spacing: 2px;
   margin-bottom: 20px;
   border-bottom: 1px solid var(--my-kr-border-silver);
 }

 @media (max-width: 768px) {

   .my-kr-info-table th,
   .my-kr-info-table td {
     display: block;
     width: 100%;
     padding: 15px;
   }

   .my-kr-info-table th {
     border-bottom: none;
     padding-bottom: 5px;
   }
 }

 /*--------------------------------------------------------------
    # Ticket Section
    --------------------------------------------------------------*/
 /* チケットカード全体の余白と中央揃え */
 .my-kr-ticket-card {
   padding: 50px 30px;
   text-align: center;
 }

 /* 各チケットのブロック（ファンクラブと一般） */
 .my-kr-ticket-block {
   margin-bottom: 50px;
 }

 /* 2つ目のブロック（一般）の上部に点線を引く */
 .my-kr-ticket-block:last-child {
   margin-bottom: 0;
   border-top: 1px dashed var(--my-kr-border-silver);
   padding-top: 50px;
 }

 /* チケット見出し（赤い太字） */
 .my-kr-ticket-title {
   color: var(--my-kr-accent-dark-red);
   font-size: 1.2rem;
   font-weight: 700;
   margin-bottom: 15px;
   letter-spacing: 2px;
 }

 /* チケットの日付 */
 .my-kr-ticket-date {
   font-size: 1.1rem;
   letter-spacing: 1px;
   margin-bottom: 25px;
   color: var(--my-kr-text-main);
 }

 /*--------------------------------------------------------------
    # Profile Cards
    --------------------------------------------------------------*/
 .my-kr-profile-list {
   display: flex;
   flex-direction: column;
   gap: 80px;
 }

 .my-kr-profile-card {
   display: flex;
   align-items: center;
   gap: 50px;
 }

 /* ジグザグ配置（交互に左右入れ替え） */
 .my-kr-profile-card.reverse {
   flex-direction: row-reverse;
 }

 .my-kr-profile-img-wrap {
   flex: 0 0 320px;
   position: relative;
 }

 /* 背後の和モダンな装飾枠 */
 .my-kr-profile-img-wrap::before {
   content: '';
   position: absolute;
   top: 15px;
   left: -15px;
   width: 100%;
   height: 100%;
   background: linear-gradient(135deg, rgba(74, 100, 130, 0.1), rgba(204, 16, 32, 0.05));
   border: 1px solid var(--my-kr-border-silver);
   border-radius: 20px;
   z-index: -1;
   transition: all 0.5s ease;
 }

 .my-kr-profile-card.reverse .my-kr-profile-img-wrap::before {
   left: 15px;
 }

 .my-kr-profile-card:hover .my-kr-profile-img-wrap::before {
   transform: translate(-10px, -10px);
   background: linear-gradient(135deg, rgba(74, 100, 130, 0.2), rgba(204, 16, 32, 0.1));
 }

 .my-kr-profile-card.reverse:hover .my-kr-profile-img-wrap::before {
   transform: translate(10px, -10px);
 }

 .my-kr-profile-img-wrap img {
   width: 100%;
   height: auto;
   /* 縦長の4:3（横3：縦4） */
   aspect-ratio: 3 / 4;
   object-fit: contain;
   background: #fff;
   /* 白背景を敷いて透過画像や余白を綺麗に見せる */
   border: 1px solid rgba(0, 0, 0, 0.05);
   border-radius: 20px;
   box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
   /*filter: grayscale(10%) contrast(105%) sepia(10%) hue-rotate(200deg);*/
   transition: all 0.5s ease;
 }

 .my-kr-profile-card:hover .my-kr-profile-img-wrap img {
   transform: translateY(-5px);
   box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
 }

 .my-kr-profile-content {
   flex: 1;
   background: var(--my-kr-card-bg);
   backdrop-filter: blur(12px);
   -webkit-backdrop-filter: blur(12px);
   padding: 40px;
   border-radius: 2px 30px 2px 30px;
   /* 和風の変則的な角丸 */
   border: 1px solid var(--my-kr-border-silver);
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
   position: relative;
 }

 /* コンテンツ部分のアクセント装飾（左端の細い線） */
 .my-kr-profile-content::after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 4px;
   height: 60px;
   background: var(--my-kr-accent-red);
   border-radius: 2px 0 0 2px;
 }

 .my-kr-profile-card.reverse .my-kr-profile-content::after {
   left: auto;
   right: 0;
   border-radius: 0 2px 2px 0;
 }

 .my-kr-profile-name {
   font-family: 'Yuji Syuku', serif;
   font-size: 1.6rem;
   color: var(--my-kr-text-main);
   margin-bottom: 25px;
   font-weight: 400;
   letter-spacing: 2px;
   display: inline-block;
 }

 /* 名前の下のグラデーション下線 */
 .my-kr-profile-name::after {
   content: '';
   display: block;
   width: 100%;
   height: 1px;
   background: linear-gradient(90deg, var(--my-kr-accent-dark-red), transparent);
   margin-top: 10px;
 }

 .my-kr-profile-card.reverse .my-kr-profile-name::after {
   background: linear-gradient(270deg, var(--my-kr-accent-dark-red), transparent);
 }

 .my-kr-profile-comment {
   line-height: 2.2;
   margin-bottom: 30px;
   text-align: justify;
 }

 .my-kr-profile-works {
   padding: 20px 0;
   border-top: 1px dashed var(--my-kr-border-silver);
   border-bottom: 1px dashed var(--my-kr-border-silver);
   font-size: 0.9rem;
   line-height: 1.8;
   color: var(--my-kr-text-muted);
 }

 .my-kr-profile-about {
   margin-top: 25px;
   padding: 20px 25px;
   background: linear-gradient(90deg, rgba(204, 16, 32, 0.04) 0%, transparent 100%);
   border-left: 4px solid var(--my-kr-accent-red);
   border-radius: 0 8px 8px 0;
 }

 .my-kr-profile-about h4 {
   color: var(--my-kr-accent-dark-red);
   font-family: 'Yuji Syuku', serif;
   font-size: 1.1rem;
   margin-bottom: 10px;
   letter-spacing: 2px;
   font-weight: 700;
 }

 .my-kr-profile-about p {
   font-size: 0.9rem;
   line-height: 1.9;
   color: var(--my-kr-text-main);
   margin-bottom: 0;
 }

 @media (max-width: 991px) {

   .my-kr-profile-card,
   .my-kr-profile-card.reverse {
     flex-direction: column;
     gap: 40px;
   }

   /* 縦長画像がスマホで巨大になりすぎないよう最大幅を調整 */
   .my-kr-profile-img-wrap {
     flex: auto;
     width: 100%;
     max-width: 320px;
     margin: 0 auto;
   }

   .my-kr-profile-content {
     border-radius: 20px;
     padding: 30px;
   }

   .my-kr-profile-content::after {
     display: none;
   }

   .my-kr-profile-name::after {
     background: linear-gradient(90deg, transparent, var(--my-kr-accent-dark-red), transparent) !important;
   }

   .my-kr-profile-name {
     display: block;
     text-align: center;
   }
 }

 /*--------------------------------------------------------------
    # Link Box (Buttons)
    --------------------------------------------------------------*/
 .my-kr-link-box {
   padding: 40px;
   margin-bottom: 10px;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 20px;
 }

 .my-kr-btn {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   max-width: 400px;
   padding: 15px 20px;
   background: rgba(255, 255, 255, 0.8);
   border: 1px solid rgba(204, 16, 32, 0.3);
   color: var(--my-kr-accent-red);
   border-radius: 8px;
   font-weight: 400;
   letter-spacing: 2px;
   transition: all 0.3s ease;
   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.02);
   text-decoration: none;
 }

 .my-kr-btn i {
   margin-right: 10px;
   font-size: 1.2rem;
 }

 .my-kr-btn:hover {
   background: var(--my-kr-accent-red);
   color: #fff;
   transform: translateY(-2px);
   box-shadow: 0 8px 20px rgba(204, 16, 32, 0.15);
   border: 1px solid var(--my-kr-accent-red);
 }