/* 物書き16タイプ診断（2026-09-02）
 * サイト本体の紫を土台に、書き物のインク色（藍）を差す。
 * 推し診断（css/oshi-shindan.css）と同じ骨格。
 */
.mk{padding:0 0 60px}

/* ---- はじめの画面 ---- */
.mk-top__grid{display:block}
.mk-top__art{display:block;width:100%;height:auto;border-radius:22px;margin:0 0 22px;box-shadow:0 18px 44px rgba(72,63,140,.18)}
.mk-top__visual{margin:4px 0 0}
.mk-top__visual picture{display:block}
.mk-top__visual .mk-top__art{max-height:46vh;object-fit:cover;object-position:center 30%;margin:0}
@media (min-width:860px){
	.mk-top__grid{display:grid;grid-template-columns:1fr .82fr;gap:34px;align-items:center;margin:0 0 6px}
	.mk-top__head,.mk-top__eyebrow,.mk-top__h1,.mk-top__sub,.mk-top__btnwrap,.mk-top__note{text-align:left}
	.mk-top__facts{justify-content:flex-start}
	.mk-top__visual{margin:0}
	.mk-top__visual .mk-top__art{max-height:none;object-fit:contain}
	.mk-top__lead{max-width:none}
}
.mk-top__eyebrow{margin:0 0 8px;text-align:center;font:800 11px Poppins,sans-serif;letter-spacing:.18em;color:#5a5aa8}
.mk-top__h1{margin:0 0 8px;text-align:center;font-size:clamp(26px,6.4vw,38px);line-height:1.25;color:#2f2a55}
.mk-top__sub{margin:0 0 18px;text-align:center;font-size:15px;font-weight:800;color:#6f5fb0}
.mk-top__lead{margin:0 0 18px;font-size:14px;line-height:2.05;color:#544766}
.mk-top__lead strong{color:#4a4fa8;font-weight:900}
.mk-top__facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 22px;padding:0;list-style:none}
.mk-top__facts li{padding:7px 13px;border-radius:99px;background:#eef0fb;border:1px solid #d9dcf3;font-size:12px;font-weight:800;color:#4a4fa8}
.mk-top__btnwrap{margin:0 0 14px;text-align:center}
.mk-top__btn{display:inline-block;min-height:56px;padding:17px 44px;border:0;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,#5b63c9,#9b5fc7);color:#fff;font-family:inherit;font-size:16px;font-weight:900;letter-spacing:.06em;box-shadow:0 12px 30px rgba(91,99,201,.34);-webkit-tap-highlight-color:transparent}
.mk-top__note{margin:0;text-align:center;font-size:11px;line-height:1.8;color:#6f6680}

body.mk-running .ms-header__cta,body.mk-running .ms-header__quickcta,body.mk-running .ms-nav-cta-top,body.mk-running .ms-nav-cta-pc,body.mk-running .ms-header__hamburger,body.mk-running .ms-header__nav,body.mk-running #msBottomNav{display:none !important}
body.mk-running .mk{padding-bottom:24px}

/* ---- 設問 ---- */
.mk-stage.has-bg{background:var(--mk-qbg) center/cover no-repeat;border-radius:22px;padding:22px 18px}
.mk-prog{margin:0 0 20px}
.mk-prog__t{margin:0 0 7px;font:900 12px Poppins,sans-serif;color:#5a5aa8;text-align:center}
.mk-prog__bar{height:7px;border-radius:9px;background:#e9e9f5;overflow:hidden}
.mk-prog__bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#5b63c9,#9b5fc7);transition:width .32s ease}
.mk-scene{margin:0 0 8px;font-size:12.5px;font-weight:900;color:#5a5aa8;letter-spacing:.04em}
.mk-q{margin:0 0 22px;font-size:19px;line-height:1.65;color:#2f2348}
.mk-opts{display:flex;flex-direction:column;gap:11px}
.mk-opt{display:grid;grid-template-columns:auto 1fr;gap:13px;align-items:center;width:100%;min-height:58px;padding:15px 17px;border-radius:16px;cursor:pointer;background:#fff;border:1.5px solid #e4e2f0;color:#3a2f52;font-family:inherit;font-size:14.5px;line-height:1.75;text-align:left;-webkit-tap-highlight-color:transparent;transition:border-color .16s,background .16s}
.mk-opt span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef0fb;font:900 12px Poppins,sans-serif;color:#4a4fa8}
.mk-opt b{font-weight:700}
.mk-opt:hover,.mk-opt:focus{border-color:#b7b9e6;background:#f8f8fd}
.mk-opt.is-on{border-color:#5b63c9;background:#eef0fb}
.mk-back{margin:18px 0 0;text-align:center}
.mk-back button{border:0;background:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:800;color:#6c6284;text-decoration:underline}

/* ---- 判定中 ---- */
.mk-loading{padding:40px 20px 56px;text-align:center}
.mk-loading__art{display:block;width:min(260px,60vw);height:auto;margin:0 auto 14px;border-radius:50%}
.mk-loading i{display:block;width:46px;height:46px;margin:0 auto 18px;border-radius:50%;border:3px solid #e4e2f0;border-top-color:#5b63c9;animation:mkSpin .9s linear infinite}
@keyframes mkSpin{to{transform:rotate(360deg)}}
.mk-loading p{margin:0 0 6px;font-size:15px;font-weight:900;color:#2f2a55}
.mk-loading small{font-size:12px;color:#6c6284}

/* ---- 結果 ---- */
.mk-res{text-align:center;margin:0 0 18px}
.mk-res__eyebrow{margin:0 0 10px;font:800 11px Poppins,sans-serif;letter-spacing:.18em;color:#5a5aa8}
.mk-res__art{margin:0 auto 14px;width:min(340px,78vw)}
.mk-res__art img{display:block;width:100%;height:auto;border-radius:28px;box-shadow:0 18px 44px rgba(72,63,140,.2)}
.mk-res__name{margin:0 0 6px;font-size:clamp(24px,6vw,34px);line-height:1.3;color:#2f2a55}
.mk-res__code{margin:0 0 10px;font:900 15px Poppins,sans-serif;letter-spacing:.18em;color:#5b63c9}
.mk-res__code span{display:block;font-size:11px;letter-spacing:.1em;color:#8a86a8;margin-top:3px}
.mk-res__catch{margin:0 0 8px;font-size:16px;font-weight:800;line-height:1.7;color:#3a2f52}
.mk-res__axes{margin:0;display:inline-block;padding:6px 14px;border-radius:99px;background:#eef0fb;font-size:12.5px;font-weight:800;color:#4a4fa8}

.mk-share{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 22px}
.mk-share a,.mk-share button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border-radius:999px;border:0;cursor:pointer;font-family:inherit;font-size:14px;font-weight:900;text-decoration:none;-webkit-tap-highlight-color:transparent}
.mk-share__x{background:#111;color:#fff}
.mk-share__line{background:#06c755;color:#fff}
.mk-share__copy{background:#fff;color:#4a4fa8;border:1.5px solid #c9cbea !important}
.mk-landed{text-align:center;margin:0 0 26px}

.mk-panel{margin:0 0 18px;padding:20px 18px;border-radius:20px;background:#fff;border:1px solid #ebe7f3;box-shadow:0 8px 24px rgba(72,63,140,.06)}
.mk-panel h3{margin:0 0 12px;font-size:17px;color:#2f2a55}
.mk-panel h4{margin:0 0 6px;font-size:13px;color:#5a5aa8}
.mk-panel p{margin:0 0 10px;font-size:14px;line-height:1.95;color:#3f3552}
.mk-axes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.mk-axis{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-size:13px;font-weight:800;color:#8a86a8}
.mk-axis__l.is-on,.mk-axis__r.is-on{color:#4a4fa8}
.mk-axis__bar{position:relative;height:10px;border-radius:9px;background:#e9e9f5;overflow:hidden}
.mk-axis__bar i{position:absolute;top:0;height:100%;border-radius:9px;background:linear-gradient(90deg,#5b63c9,#9b5fc7)}
.mk-axis.is-left .mk-axis__bar i{left:0}
.mk-axis.is-right .mk-axis__bar i{right:0;background:linear-gradient(90deg,#9b5fc7,#e0619a)}
.mk-axis__note{grid-column:1/-1;font-size:11.5px;font-weight:600;font-style:normal;color:#6c6284}
.mk-sw{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 12px}
.mk-sw ul{margin:0;padding:0 0 0 1.2em;font-size:13px;line-height:1.9;color:#3f3552}
.mk-tip{padding:12px 14px;border-radius:14px;background:#f5f2fb;font-size:13.5px !important}
.mk-tip b{display:block;margin:0 0 4px;color:#5a5aa8;font-size:12px}

.mk-att{border-color:#e8d6ef;background:linear-gradient(180deg,#fdf8ff,#fff)}
.mk-att__eyebrow{margin:0 0 4px !important;font:800 11px Poppins,sans-serif;letter-spacing:.14em;color:#a8517f}
.mk-att h3 small{display:block;margin-top:4px;font-size:13px;font-weight:800;color:#8b5fa8}
.mk-att__go a{font-weight:900;color:#b8477f}

.mk-mate__c{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;text-decoration:none;color:inherit}
.mk-mate__c img{width:72px;height:72px;border-radius:50%;object-fit:cover}
.mk-mate__c b{display:block;font-size:15px;color:#2f2a55}
.mk-mate__c em{display:block;font:900 11px Poppins,sans-serif;letter-spacing:.14em;color:#5b63c9;font-style:normal}
.mk-mate__c span{display:block;font-size:12.5px;line-height:1.7;color:#6c6284;margin-top:4px}

.mk-next{display:block;margin:0 0 22px;border-radius:20px;overflow:hidden;text-decoration:none;color:inherit;background:#fff;border:1px solid #ebe7f3;box-shadow:0 12px 30px rgba(72,63,140,.12)}
.mk-next__img{display:block;width:100%;height:auto}
.mk-next__body{display:block;padding:16px 18px 18px}
.mk-next__label{display:block;font:800 10px Poppins,sans-serif;letter-spacing:.18em;color:#a8517f;margin:0 0 6px}
.mk-next__body b{display:block;font-size:17px;line-height:1.5;color:#2f2a55;margin:0 0 8px}
.mk-next__lead{display:block;font-size:12.5px;line-height:1.85;color:#544766;margin:0 0 12px}
.mk-next__btn{display:inline-block;padding:11px 22px;border-radius:999px;background:linear-gradient(135deg,#e0619a,#9b5fc7);color:#fff;font-size:13px;font-weight:900}

.mk-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (min-width:640px){.mk-grid{grid-template-columns:repeat(4,1fr)}}
.mk-grid__c a{display:block;padding:10px 8px;border-radius:14px;background:#faf9fd;border:1px solid #ebe7f3;text-align:center;text-decoration:none;color:inherit}
.mk-grid__c img{display:block;width:64px;height:64px;margin:0 auto 6px;border-radius:50%;object-fit:cover}
.mk-grid__c b{display:block;font-size:12.5px;line-height:1.4;color:#2f2a55}
.mk-grid__c em{display:block;font:900 10px Poppins,sans-serif;letter-spacing:.14em;color:#8a86a8;font-style:normal;margin-top:3px}
.mk-grid__c.is-me a{border-color:#5b63c9;background:#eef0fb}
.mk-grid__more{margin:12px 0 0;text-align:center;font-size:13px;font-weight:800}
.mk-retry{text-align:center;margin:0}
.mk-retry button{border:0;background:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:800;color:#6c6284;text-decoration:underline}

/* ---- 説明（検索向け） ---- */
.mk-about{margin:40px 0 0;padding:26px 18px;border-radius:22px;background:#fff;border:1px solid #ebe7f3}
.mk-about h2{margin:0 0 12px;font-size:19px;color:#2f2a55}
.mk-about h2+p,.mk-about p{font-size:14px;line-height:2;color:#3f3552;margin:0 0 14px}
.mk-about h3{margin:22px 0 8px;font-size:15.5px;color:#4a4fa8}
.mk-about__list{margin:0 0 16px;padding:0 0 0 1.2em;font-size:14px;line-height:2;color:#3f3552}
.mk-about__go{font-weight:900}
.mk-about__go a{color:#b8477f}
.mk-faq dt{font-weight:900;color:#2f2a55;margin:14px 0 4px;font-size:14.5px}
.mk-faq dd{margin:0;font-size:13.5px;line-height:1.95;color:#3f3552}

/* ---- 図鑑ページ ---- */
.mk-book{padding:0 0 60px}
.mk-book__h1{margin:0 0 10px;text-align:center;font-size:clamp(24px,6vw,34px);color:#2f2a55}
.mk-book__lead{margin:0 0 22px;text-align:center;font-size:14px;line-height:2;color:#544766}
.mk-book__go{text-align:center;margin:0 0 26px}
.mk-book__card{margin:0 0 16px;padding:18px;border-radius:20px;background:#fff;border:1px solid #ebe7f3;display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}
.mk-book__card img{width:96px;height:96px;border-radius:50%;object-fit:cover}
.mk-book__card h2{margin:0 0 2px;font-size:17px;color:#2f2a55}
.mk-book__card em{display:block;font:900 11px Poppins,sans-serif;letter-spacing:.16em;color:#5b63c9;font-style:normal;margin:0 0 6px}
.mk-book__card p{margin:0 0 8px;font-size:13.5px;line-height:1.9;color:#3f3552}
.mk-book__card .mk-book__catch{font-weight:800;color:#3a2f52}
.mk-book__card .mk-book__meta{font-size:12px;color:#6c6284}
.mk-book__card .mk-book__try{font-size:13px;font-weight:900}
.mk-book__card .mk-book__try a{color:#b8477f}
@media (max-width:480px){.mk-book__card{grid-template-columns:72px 1fr}.mk-book__card img{width:72px;height:72px}}
