/* AI退去立会（/aimi）専用。
   現行 STUDIO 版（service.remodela.jp/aimi）のレイアウト・余白・文字サイズ・色に合わせている。
   相談CTA（.t-contact）・AI連携機能（.t-mcp）・表示アニメーション（[data-appear]）はトップと同じ部品なので top.css を共用する。
   このファイルの読み込み（link[href*="aimi/aimi.css"]）は shared.css が右下の「ページ先頭へ」ボタンを出す条件になっているので、名前を変えないこと。
   ブレークポイントは現行と同じ 1280 / 840 / 540 / 320px。 */
.am{--g:#286b4a;--g2:#309873;--deep:#085f2a;--ink:#242528;--txt:#333;--mint:#f0f8f3;--sage:#94c9a6;background:#fff;word-spacing:1px}
/* 現行と同じく本文を縦並びの flex にする（ブロックのままだと上下の余白が相殺されて詰まる） */
.am.t-main{display:flex;flex-direction:column;align-items:center}
:where(.am>section){width:100%}
/* shared.css の p{text-wrap:pretty} は現行と改行位置が変わるため、折り返しの方式だけ既定に戻す */
.am p{text-wrap-style:auto}
.am h1,.am h2,.am h3{font-weight:700}
.am img{display:block}
/* shared.css の strong{display:block} を打ち消す */
.am strong{display:inline;margin:0;font-weight:700}
/* 語の途中で折り返さないよう、<wbr> の位置（文節の区切り）でだけ折り返す */
.am .am-kw{word-break:keep-all;overflow-wrap:anywhere}

/* ---------- ファーストビュー ---------- */
/* 現行は固定ヘッダーの下にファーストビューの背景が潜り込んでいるため、ヘッダーの高さ分だけ上に重ねる */
.am-hero{position:relative;z-index:1;isolation:isolate;width:100%;margin-top:-70px;background:var(--deep);display:flex;flex-direction:column;align-items:center;justify-content:center}
.am-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:url(../media/pages/aimi/4cf0aebb-7436-4ae4-a250-5291a512a845.png) center/cover no-repeat;pointer-events:none}
.am-hero__in{width:1500px;max-width:100%;margin-top:90px;padding:50px 0;display:flex;align-items:stretch;justify-content:center}
.am-hero__in>*{flex:none}
.am-hero__copy{width:40%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.am-hero__catch{margin-bottom:30px;display:flex;flex-direction:column;align-items:flex-start}
.am .am-hero__line1{margin-bottom:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}
.am-hero__line1 span{flex:none;font-size:40px;line-height:1.4}
.am-hero__line1 .am-hero__em{font-size:48px;line-height:1}
.am .am-hero__line2{color:#fff;font-size:40px;font-weight:700;line-height:1.4;text-align:center}
.am .am-hero__title{margin-bottom:30px;display:flex;align-items:flex-end;gap:5px;color:#fff;line-height:1}
.am-hero__ai{padding-bottom:1px;font-size:90px;line-height:1}
.am-hero__name{font-size:72px;line-height:1.25}
.am-hero__badges{width:100%;margin-bottom:30px;display:flex;align-items:flex-start}
.am .am-hero__badges img{flex:none;width:auto;height:70px}
.am-hero__dl-wrap{width:70%;display:flex;flex-direction:column;align-items:center}
.am-hero__dl{flex:none;width:100%;margin:30px 0 15px;padding:10px 30px;border-radius:96px;background:linear-gradient(90deg,#ff6 0%,#ffb054 100%);box-shadow:3px 3px 0 rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;color:#282828}
.am .am-hero__dl img{position:relative;flex:none;width:100px;height:auto}
.am-hero__dl-body{flex:none;padding:0 70px 0 10px;display:flex;flex-direction:column;align-items:center}
.am-hero__dl-cap{color:var(--ink);font-size:18px;font-weight:600;line-height:1.75;text-align:center;font-feature-settings:'palt' 1}
.am-hero__dl-text{color:#282828;font-size:28px;font-weight:700;line-height:1.25;text-align:center;white-space:nowrap}
.am-hero__contact{flex:none;width:422px;max-width:100%;margin-bottom:15px;padding:10px 40px;border-radius:64px;background:rgba(255,255,255,.95);box-shadow:3px 3px 0 rgba(0,0,0,.2);display:flex;align-items:flex-start;justify-content:center;color:var(--ink)}
.am-hero__contact-icon{flex:none;box-sizing:content-box;width:28px;height:28px;padding:1px 9.5px;fill:var(--deep)}
.am-hero__contact span{color:var(--ink);font-size:20px;font-weight:800;line-height:1.75;letter-spacing:.1em;text-align:center;font-feature-settings:'palt' 1;white-space:nowrap}
.am .am-hero__note{color:#f6f7f9;font-size:13px;line-height:1.4}
/* スマホの操作動画。現行は埋め込み枠の中で、枠の幅が 480px 以下なら 260×530px、それ以外は 280×570px（769px 以上は 300×610px） */
.am-hero__phone{width:34%;height:640px;z-index:1;container-type:inline-size;display:flex;align-items:center;justify-content:center}
.am-hero__phone-box{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.am-phone{position:relative;flex:none;width:280px;height:570px;margin-bottom:3px}
.am-phone__screen{position:absolute;top:2.5%;left:5%;z-index:1;width:90%;overflow:hidden}
.am .am-phone__screen video{display:block;width:100%;height:auto}
.am .am-phone__frame{position:absolute;top:0;left:0;z-index:2;width:100%;height:auto;pointer-events:none}
@container (max-width:480px){.am-phone{width:260px;height:530px}.am-phone__screen{top:2%}}
@container (min-width:769px){.am-phone{width:300px;height:610px}.am-phone__screen{top:2%}}
.am-hero__illust{width:21%;display:flex;align-items:flex-end;justify-content:center;--ad:.6s;--adl:.6s}
.am-hero__illust>div{width:100%;display:flex;flex-direction:column;align-items:center}
.am .am-hero__illust img{width:100%;height:auto}

/* ---------- 導入企業 ---------- */
.am-cust{display:flex;flex-direction:column;align-items:center}
.am .am-cust__title{margin:50px 0 30px;color:var(--ink);font-size:24px;line-height:1.6;text-align:left;font-feature-settings:normal}
/* 現行のスライドショーと同じく、ロゴが左へ 220px／5秒の速さで流れ続ける */
.am-logos{width:1400px;max-width:100%;margin:5px 0;overflow:hidden}
.am .am-logos__track{width:max-content;margin-left:calc((100% - 1540px) / 2);display:flex;animation:am-logos 65s linear infinite}
.am-logos__item{flex:none;width:220px;padding-right:20px}
.am .am-logos__item img{width:200px;height:70px;object-fit:contain}
@keyframes am-logos{to{transform:translateX(-2860px)}}

/* ---------- 保証会社との連携バナー ---------- */
.am-banner{width:1200px;max-width:100%;margin:60px auto;display:flex;flex-direction:column;align-items:center;transition:opacity .3s cubic-bezier(.4,.4,0,1)}
.am-banner:hover{opacity:.8}
.am .am-banner img{width:100%;height:auto}
/* 現行と同じく 841px 以上は横長、840px 以下は縦長のバナーに切り替える */
.am .am-banner__sp{display:none}

/* ---------- お悩み ---------- */
.am-worry{position:relative;z-index:1;padding:80px 100px 40px;background:var(--mint);display:flex;flex-direction:column;align-items:center}
.am-worry__in{width:1280px;max-width:100%;padding:0 40px;display:flex;flex-direction:column;align-items:center}
.am .am-worry__title{margin-bottom:20px;color:var(--ink);font-size:32px;line-height:1.35;font-feature-settings:'palt' 1}
.am .am-worry__list{width:100%;display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:30px}
.am-worry__item{flex:none;width:calc(33.3% - 20.01px);padding:30px 16px;background:#fff;display:flex;flex-direction:column;align-items:center;gap:15px}
.am .am-worry__item img{flex:none;width:70%;height:auto}
.am-worry__text{width:100%;color:var(--txt);font-size:20px;font-weight:700;line-height:1.5;text-align:center}
.am .am-worry__text p{color:var(--ink);font-weight:500}
.am .am-worry__text strong{color:var(--ink);font-weight:800}
.am .am-wave{width:100%;height:auto;margin-top:-4px;rotate:180deg}

/* ---------- 解決（POINT 01〜03） ---------- */
.am-feature{padding:100px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.am-feature__head{display:flex;align-items:center;justify-content:center;gap:20px}
.am .am-slash{flex:none;width:calc(3% - 19.4px);max-width:calc(3% - 19.4px);padding:1px;display:flex;justify-content:center;color:#333;font-size:48px;font-weight:800;line-height:1.4;text-align:center}
.am-feature__title-wrap{flex:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px}
.am .am-feature__title{color:var(--ink);font-size:38px;line-height:1.35;text-align:left;font-feature-settings:'palt' 1}
.am-point{width:100%;padding:80px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.am-point__row{width:1350px;max-width:100%;display:flex;align-items:center;justify-content:center;gap:80px;overflow:hidden auto}
.am-point--2 .am-point__row{flex-direction:row-reverse}
.am-point__row>*{flex:none}
.am-point__body{flex:1;--ad:.6s;--adl:.6s;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.am-point__head{display:flex;align-items:flex-start}
.am .am-point__title{margin-bottom:30px;color:var(--g);font-size:40px;line-height:1.35;text-align:left;font-feature-settings:'palt' 1}
.am .am-point__lead{margin-bottom:30px;color:var(--ink);font-size:18px;font-weight:700;line-height:1.6}
.am .am-point__list{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.am-point__item{display:flex;align-items:flex-start}
.am-point__dot{flex:none;width:14px;height:14px;margin:5px 10px 0 0;border-radius:50%;background:var(--g)}
.am-point__item>div{flex:1;line-height:1.6}
.am .am-point__item p{color:#333;font-size:16px;line-height:1.8}
.am .am-point__item-title{font-weight:700}
.am-point__fig{width:calc(45% - 44px);--ad:.6s;--adl:.6s;border-radius:8px;display:flex;flex-direction:column;align-items:center}
.am-point--2 .am-point__fig,.am-point--3 .am-point__fig{width:calc(40% - 48px)}
.am .am-point__fig img{width:100%;height:auto}

/* ---------- 流れ ---------- */
.am-flow{margin-bottom:80px;padding:60px;background:var(--mint);display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.am-flow__in{width:1280px;max-width:100%;padding:0 40px;display:flex;flex-direction:column;align-items:center}
.am .am-flow__title{margin-top:20px;color:var(--ink);font-size:36px;line-height:1.35;font-feature-settings:'palt' 1}
.am .am-flow__list{width:100%;padding-top:40px;display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:40px}
.am-flow__step{flex:none;width:calc(33.33% - 26.668px);padding:25px 30px;border-radius:4px;background:#fff;display:flex;flex-direction:column;align-items:center}
/* 手順の番号は全ページ共通の「STEP 1」の札。見出しより目立たせない */
.am .am-flow__no{width:200px;max-width:100%;margin-bottom:10px;display:flex;justify-content:center}
.am-flow__no span{padding:4px 12px 3px;border:1px solid var(--g);border-radius:99px;background:#fff;color:var(--g);font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.04em;white-space:nowrap}
.am-flow__role-wrap{display:flex;justify-content:center}
.am .am-flow__role{margin-bottom:10px;padding:8px 24px 5px 25px;border-radius:24px;background:var(--g);color:#fff;font-size:16px;font-weight:500;line-height:1}
.am-flow__name-wrap{max-width:100%;display:flex;flex-direction:column;align-items:flex-start}
.am .am-flow__name{max-width:100%;margin-top:5px;color:var(--ink);font-size:24px;line-height:1.5}
.am .am-flow__img{width:80%;height:auto;margin:30px 0}
.am-flow__text{width:100%}
.am .am-flow__text p{margin:10px 0;color:#333;font-size:18px;font-weight:500;line-height:1.7;text-align:left}

/* ---------- AIによる動画解析 ---------- */
.am-video{position:relative;width:1400px;max-width:100%;margin:0 auto 40px;padding:60px 100px;border-bottom:1px solid rgba(36,37,40,.1);border-radius:24px;background:var(--g2);display:flex;flex-direction:column;align-items:center}
.am-video__dots{position:absolute;top:1px;right:0;bottom:0;width:50%;opacity:.1;background:url(../media/common/c5d01adb-aed8-4fd5-a7cf-38f9a06f165a.png) center/cover no-repeat;pointer-events:none}
.am-video__row{position:relative;width:1280px;max-width:100%;padding-bottom:40px;display:flex;align-items:center;justify-content:flex-start;gap:80px;overflow:hidden auto}
.am-video__fig{flex:none;width:calc(50% - 40px)}
.am .am-video__fig img{width:100%;height:auto}
.am-video__body{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.am-video__head{display:flex;align-items:flex-start;justify-content:center}
.am .am-video__head img{flex:none;width:80px;height:auto;margin-right:30px}
.am .am-video__title{flex:1;margin-bottom:30px;color:#fff;font-size:36px;line-height:1.35;text-align:left;font-feature-settings:'palt' 1}
.am-video__text{width:100%;margin-bottom:15px}
.am .am-video__text p{margin:10px 0;color:#fff;font-size:18px;font-weight:500;line-height:1.7}

/* ---------- 料金シミュレーション ---------- */
.am-price{width:100%;margin-top:60px}
.am-price__head{height:100px;display:flex;align-items:center;justify-content:center}
.am .am-price__title{color:var(--ink);font-size:36px;line-height:1.35;font-feature-settings:'palt' 1}
/* 現行は埋め込み枠の下に 3px（行の高さの余り）＋30px の余白がある */
.am-price__frame{width:100%;margin-bottom:33px}
.am-price__frame iframe{display:block;width:100%;height:821px;border:0}

/* ---------- 紹介動画 ---------- */
.am-movie{width:100%;margin:0 auto;padding:80px 40px;background:var(--mint);display:flex;flex-direction:column;align-items:center}
.am-movie__card{width:1000px;max-width:100%;padding:0 50px 50px;border-radius:16px;background:#fff;box-shadow:1px 2px 25px 2px rgba(48,152,115,.2);display:flex;flex-direction:column;align-items:center}
.am .am-movie__catch{margin-top:30px;display:flex;align-items:center;justify-content:center;color:var(--deep);font-size:20px;font-weight:700;line-height:1.4;font-feature-settings:'palt' 1}
.am .am-movie__catch img{flex:none;width:10px;height:auto}
.am-movie__catch span{margin:0 20px}
.am .am-movie__title{margin:15px 0 30px;color:var(--ink);font-size:32px;line-height:1.35;text-align:center;font-feature-settings:'palt' 1}
.am-movie__wrap{max-width:100%;display:flex;flex-direction:column;align-items:center}
.am-movie__col{width:100%;display:flex;flex-direction:column;align-items:center}
.am-movie__frame{width:600px;max-width:100%;height:345px}
.am-movie__frame iframe{display:block;width:100%;height:100%;border:0}

/* ---------- 利用者の声 ---------- */
.am-voice{padding:80px 60px 100px;border-top:1px solid rgba(0,0,0,.3);display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.am .am-voice__title{width:1100px;max-width:100%;margin-bottom:50px;padding:0 40px;color:var(--ink);font-size:40px;line-height:1.35;text-align:center;font-feature-settings:'palt' 1;--ad:.4s;--adl:.4s}
.am-voice__wrap{width:1100px;max-width:100%;display:flex;justify-content:center}
.am-voice__list{width:100%;display:flex;align-items:stretch;justify-content:space-between}
.am-voice__card{flex:none;width:calc(50% - 40px);margin:0 20px;border-radius:12px;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.2);display:flex;flex-direction:column;color:#333}
.am .am-voice__photo{width:100%;height:300px;border-radius:12px 12px 0 0;object-fit:cover}
.am-voice__body{flex:1;padding:30px;display:flex;flex-direction:column;align-items:flex-start}
.am .am-voice__lead{color:#333;font-size:20px;font-weight:800;line-height:1.4}
.am .am-voice__logo{width:auto;height:40px;margin:10px 0}
.am-voice__company{margin:10px 0;display:flex;align-items:center;justify-content:center}
.am .am-voice__company p{margin-bottom:10px;color:#333;font-family:Lato,var(--f);font-size:16px;font-weight:700;line-height:1}
.am .am-voice__tags{display:flex;flex-wrap:wrap}
.am-voice__tags li{display:flex;flex-direction:column;align-items:center;justify-content:center}
.am .am-voice__tags p{margin:0 5px 5px 0;padding:5px 15px;border-radius:32px;background:rgba(148,201,166,.5);color:var(--g);font-size:15px;font-weight:500;line-height:1.4}

/* ---------- ご相談・お問い合わせ（top.css の .t-contact に、このページの見出し・案内文・余白を足す） ---------- */
.am .am-contact{padding:100px}
.am .am-contact h2{margin-bottom:30px;font-size:40px;line-height:1.35}
.am .am-contact__lead{margin-bottom:30px;color:#fff;font-size:20px;line-height:1.4;text-align:left}
/* 現行のこのページの相談ボタンはホバーで変化しない（トップの部品は薄くなる） */
.am .am-contact .t-contact__btn:hover{opacity:1}

/* ---------- 主な機能 ---------- */
.am-fn{padding:100px;border:1px solid rgba(36,37,40,.1);background:var(--g2);display:flex;flex-direction:column;align-items:center}
.am .am-fn__title{color:#fff;font-size:32px;line-height:1}
.am-fn__in{width:1280px;max-width:100%;padding:35px 40px 0;display:flex;flex-direction:column;align-items:flex-start}
.am .am-fn__list{padding:10px;display:flex;flex-wrap:wrap;align-items:stretch;justify-content:space-around;gap:20px 0}
.am-fn__item{flex:none;width:364px;max-width:100%;padding:32px 15px 30px;border:1px solid transparent;border-radius:4px;background:#fff;display:flex;align-items:center;gap:15px}
.am-fn__icon{flex:none;width:calc(30% - 10.5px);display:flex}
.am .am-fn__icon img{width:100%;height:auto}
.am-fn__body{flex:none;width:calc(68% - 4.8px);display:flex;flex-direction:column;align-items:flex-start}
.am .am-fn__name{width:100%;color:var(--deep);font-size:18px;line-height:1.6;text-align:left}
.am .am-fn__text{width:100%;padding-top:10px;color:#001a2b;font-size:15px;font-weight:500;line-height:1.7;text-align:left}

/* ---------- AI連携機能（top.css の .t-mcp。現行は高さ 1140px の埋め込み枠なので、同じ高さを確保する） ---------- */
.am-mcp{min-height:1140px}
/* 現行の埋め込みでは「NEW」・小見出しの行の高さが既定（normal＝ヒラギノでは 1.5）なので、トップの部品の 1.4 から合わせる */
.am .am-mcp .t-mcp__in,.am .am-mcp .t-mcp__label,.am .am-mcp .t-mcp__ptitle{line-height:1.5}
/* 3行のリードは左そろえにし、途中の強調は色を付けず太字だけにする */
.am .am-mcp .t-mcp__lead{text-align:left}
.am .am-mcp .t-mcp__lead strong{color:inherit}

/* ---------- よくある質問 ---------- */
.am-faq{padding:100px 100px 60px;border-bottom:1px solid rgba(36,37,40,.2);background:#fff;display:flex;flex-direction:column;align-items:center}
.am-faq__in{width:1280px;max-width:100%;padding:0 40px;display:flex;align-items:flex-start;gap:80px}
.am-faq__head{flex:none;width:400px}
.am .am-faq__title{color:var(--ink);font-size:40px;line-height:1.35;font-feature-settings:'palt' 1}
.am-faq__list{flex:2;min-width:0;display:flex;flex-direction:column;gap:10px}
/* shared.css の details / summary の装飾を打ち消す */
.am .am-faq__item{margin:0;padding:0;border:0;border-radius:0;background:#fff}
.am .am-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:0;padding:15px;border:1px solid transparent;border-radius:12px;font-weight:700;list-style:none;cursor:pointer;transition:border-color .3s cubic-bezier(.4,.4,0,1)}
.am .am-faq__item summary::before,.am .am-faq__item summary::after{content:none}
.am-faq__item summary::-webkit-details-marker{display:none}
.am .am-faq__item summary:hover{border-color:rgba(36,37,40,.7)}
.am-faq__q-row{flex:1;min-width:0;display:flex;align-items:flex-start;gap:20px}
.am-faq__q{flex:none;color:var(--ink);font-size:28px;font-weight:700;line-height:1}
.am-faq__question{flex-shrink:0;width:calc(90% - 2px);color:var(--ink);font-size:18px;font-weight:700;line-height:1.85}
.am-faq__icon{flex:none;width:40px;height:40px;padding:7px;border:1px solid rgba(36,37,40,.1);border-radius:96px;fill:var(--ink);transition:rotate .3s cubic-bezier(.4,.4,0,1),border-color .3s cubic-bezier(.4,.4,0,1)}
.am-faq__item summary:hover .am-faq__icon{border-color:rgba(36,37,40,.7)}
.am-faq__item[open] .am-faq__icon{rotate:180deg}
.am-faq__item.is-closing .am-faq__icon{rotate:0deg}
.am-faq__answer{overflow:hidden}
.am .am-faq__answer p{padding:15px;color:var(--ink);font-size:18px;font-weight:500;line-height:1.75}

/* ---------- 1280px 以下 ---------- */
@media (max-width:1280px){
  .am-hero{margin-top:0;padding:0 15px}
  .am-hero__in{width:100%;margin-top:0}
  .am .am-hero__line1 span{font-size:28px}
  .am .am-hero__line1 .am-hero__em{font-size:40px}
  .am .am-hero__line2{font-size:36px}
  .am-hero__ai{font-size:60px}
  .am-hero__name{font-size:48px}
  .am-hero__dl-wrap{width:90%}
  .am-hero__dl-cap{font-size:16px}
  .am-hero__dl-text{font-size:24px}
  .am-hero__contact span{font-size:16px}
  .am-hero__phone{width:40%;height:700px}
  .am-hero__illust{align-items:center;justify-content:flex-start}
  .am-logos{width:100%}
  .am-worry__item{width:calc(50% - 15px);gap:20px}
  .am .am-worry__item img{width:180px}
  .am .am-feature__title{font-size:32px}
  .am-point__row{gap:40px}
  .am-point__fig{width:calc(45% - 37px);margin-right:15px}
  .am-point--2 .am-point__fig{width:calc(40% - 39px);margin:0 0 0 15px}
  .am-point--3 .am-point__fig{width:calc(40% - 39px);margin-right:15px}
  .am .am-point__title{font-size:36px}
  .am-flow__in{width:auto;padding:0}
  .am .am-flow__title{font-size:32px}
  .am .am-flow__list{gap:30px}
  .am-flow__step{width:calc(33.33% - 20.001px)}
  .am .am-flow__name{font-size:20px}
  .am .am-flow__img{width:190px}
  .am-video{padding:100px 60px}
  .am-video__row{gap:40px}
  .am-video__fig{width:calc(50% - 20px)}
  .am .am-video__head img{margin-right:15px}
  .am .am-price__title{font-size:32px}
  .am-movie{width:1080px;max-width:100%}
  .am-movie__card{width:100%}
  .am-movie__wrap{width:100%;justify-content:center}
  .am-movie__col{width:50%}
  .am-voice{padding:80px 60px}
  .am-voice__wrap{width:100%}
  .am .am-contact{padding:100px 60px}
  .am-fn{padding:60px}
  .am-fn__in{padding:35px 0 0}
  .am-fn__item{width:33%;padding:55px 35px}
  .am-faq{padding:100px 60px}
  .am-faq__in{flex-direction:column;gap:40px}
  .am-faq__head{width:auto}
  .am-faq__list{flex:none;width:calc(100% + 20px);margin:0 -10px}
  .am .am-faq__item summary{gap:20px}
}
/* ---------- 840px 以下 ---------- */
@media (max-width:840px){
  .am-hero{padding:0}
  .am-hero__in{padding:50px 40px 40px;flex-direction:column;align-items:center;justify-content:flex-start}
  .am-hero__copy{width:100%;align-items:center;justify-content:flex-start}
  .am-hero__catch{gap:15px}
  .am .am-hero__line1{margin-bottom:0}
  .am-hero__badges{flex-direction:column;align-items:center}
  .am-hero__dl{width:460px;max-width:100%}
  .am .am-hero__dl img{left:6px;width:90px}
  .am-hero__dl-body{padding:0 70px 0 20px}
  .am-hero__dl-cap{font-size:12px}
  .am-hero__dl-text{font-size:20px}
  .am-hero__contact{width:420px}
  .am-hero__contact span{font-size:14px}
  .am-hero__ai{font-size:48px}
  .am-hero__name{font-size:40px}
  .am-hero__phone{width:100%;height:auto}
  .am-hero__phone-box{height:600px}
  .am-hero__illust{width:100%;flex-direction:column;align-items:center;justify-content:flex-start}
  .am-hero__illust>div{width:50%}
  .am-banner{width:calc(100% - 60px);margin:60px 30px}
  .am .am-banner__pc{display:none}
  .am .am-banner__sp{display:block}
  .am-worry{padding:100px 30px}
  .am-worry__in{padding:0 20px}
  .am .am-worry__title{font-size:28px}
  .am .am-worry__list{gap:50px 30px}
  .am-worry__item{width:100%}
  .am-feature__head{gap:30px}
  .am .am-slash{width:auto;max-width:100%;font-size:36px}
  .am .am-feature__title{font-size:24px}
  .am-point{padding:40px 0}
  .am-point--1{padding:0}
  .am-point__row,.am-point--2 .am-point__row{width:100%;padding:0 15px 40px;flex-direction:column-reverse;align-items:flex-start;justify-content:flex-end;gap:40px}
  .am-point--1 .am-point__row{margin-bottom:80px}
  .am-point__body{flex:none;width:100%}
  .am .am-point__title{font-size:24px}
  .am-point__fig,.am-point--2 .am-point__fig,.am-point--3 .am-point__fig{width:100%;margin:0}
  .am-flow__in{width:100%;padding:0 20px}
  .am .am-flow__title{font-size:24px}
  .am .am-flow__list{gap:50px 30px}
  .am-flow__step{width:100%}
  .am-flow__name-wrap{width:100%}
  .am .am-flow__name{width:729px;font-size:24px;text-align:center}
  .am-video{padding:60px 40px 100px}
  .am-video__row{width:100%;padding:0;flex-direction:column-reverse;align-items:center;justify-content:flex-end;gap:40px}
  .am-video__fig{width:70%}
  .am-video__body{flex:none;width:100%}
  .am .am-video__head img{width:60px;margin-right:30px}
  .am .am-video__title{margin-bottom:15px;font-size:24px}
  .am .am-price__title{font-size:24px}
  .am-movie{width:100%}
  .am .am-movie__title{font-size:24px}
  .am-movie__wrap{width:auto}
  .am-movie__col{width:100%}
  .am-voice__wrap{padding:0 20px;flex-direction:column}
  .am .am-voice__title{font-size:24px}
  .am-voice__list{margin-bottom:30px;flex-direction:column}
  .am-voice__card{width:calc(100% - 30px);margin:0 15px 45px;overflow:hidden auto}
  .am .am-voice__company{margin:10px 0 15px}
  .am .am-voice__company p{margin:0;font-family:var(--f);font-size:18px}
  .am .am-voice__tags p{border-radius:24px;background:var(--sage)}
  .am .am-contact{padding:50px 40px}
  .am .am-contact h2{font-size:24px}
  .am-fn{padding:100px 40px}
  .am .am-fn__title{margin-left:10px;font-size:24px}
  .am-fn__in{padding:40px 20px 0}
  .am-fn__item{width:100%;padding:30px 35px;gap:40px}
  .am-fn__icon{width:calc(30% - 28px)}
  .am-fn__body{width:calc(68% - 12.8px)}
  .am .am-fn__text{padding-top:18px;font-size:16px}
  .am-faq{padding:100px 40px}
  .am-faq__in{padding:0 20px}
  .am .am-faq__title{font-size:36px}
  .am-faq__list{width:calc(100% + 40px);margin:0 -20px}
}
/* ---------- 540px 以下 ---------- */
@media (max-width:540px){
  /* 現行はヘッダー60pxに対してファーストビューが70px下から始まるため、ヘッダーとの間に10pxの白い帯がある */
  .am-hero{margin-top:10px}
  .am-hero__in{padding:50px 5px 40px;justify-content:center}
  .am-hero__copy{justify-content:center}
  .am-hero__catch{flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:center}
  .am .am-hero__line1 span{font-size:24px}
  .am .am-hero__line1 .am-hero__em{font-size:28px}
  .am .am-hero__line2{font-size:24px}
  .am-hero__ai{font-size:48px}
  .am-hero__name{font-size:36px}
  .am-hero__dl-wrap{width:100%}
  .am-hero__dl{width:100%}
  .am .am-hero__dl img{left:0;width:80px}
  .am-hero__dl-cap{font-size:14px}
  .am-hero__illust>div{width:70%}
  .am-hero__contact span{font-size:16px}
  .am .am-cust__title{margin:40px 15px 15px;font-size:18px;text-align:center}
  .am-logos{margin:0 0 5px}
  .am-logos__item{padding-right:10px}
  .am .am-logos__item img{width:210px;height:50px}
  .am-banner{width:calc(100% - 30px);margin:40px 15px}
  .am-worry{padding:80px 25px 25px}
  .am-worry__in{padding:0;gap:5px}
  .am .am-worry__title{font-size:20px}
  .am .am-worry__list{gap:30px;padding-top:20px}
  .am-worry__item{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px}
  .am .am-worry__item img{width:calc(70% - 3px)}
  .am .am-worry__text p{font-size:16px}
  .am-feature{padding:60px 0 0}
  .am-feature__head{gap:10px}
  .am .am-slash{font-size:24px}
  .am .am-feature__title{font-size:20px}
  .am-point--2{padding:0}
  .am-point__row,.am-point--2 .am-point__row{margin-bottom:60px;padding:0;gap:30px}
  .am-point--1 .am-point__row{margin-bottom:60px}
  .am-point--2 .am-point__row{padding-bottom:40px}
  .am-point__body{padding:0 15px}
  .am .am-point__title{margin-bottom:15px;line-height:1.5}
  .am .am-point__lead{margin-bottom:15px}
  .am-point__fig,.am-point--2 .am-point__fig,.am-point--3 .am-point__fig{padding:0 15px}
  .am-flow{margin-bottom:40px;padding:50px 30px}
  .am-flow__in{padding:0 10px;gap:5px}
  .am .am-flow__title{font-size:20px}
  .am .am-flow__list{gap:30px;padding-top:20px}
  .am-flow__step{flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:10px}
  .am .am-flow__no{width:100%}
  .am-flow__name-wrap{height:32px;align-items:center}
  .am .am-flow__name{font-size:20px}
  .am .am-flow__img{width:calc(70% - 3px);margin:30px 0 0}
  .am-video{margin-bottom:0;padding:60px 20px}
  .am-video__row{gap:20px}
  .am-video__fig{width:85%}
  .am .am-video__head img{width:50px}
  .am .am-video__title{font-size:20px}
  .am .am-video__text p{font-size:16px}
  .am .am-price__title{font-size:20px}
  .am-movie{padding:50px 15px}
  .am-movie__card{padding:0 15px 50px}
  .am .am-movie__title{font-size:20px}
  .am-voice{padding:50px 30px}
  .am-voice__wrap{padding:0;align-items:center}
  .am-voice__list{margin-bottom:0}
  .am-voice__card{width:100%;margin:0 0 45px}
  .am .am-contact{padding:60px 20px}
  .am .am-contact h2{font-size:20px}
  .am .am-contact__lead{font-size:16px}
  .am-fn{padding:60px 20px}
  .am .am-fn__title{font-size:20px}
  .am-fn__in{padding:40px 0 0}
  .am .am-fn__list{padding:0}
  .am-fn__item{padding:20px 16px 15px;gap:20px}
  .am-fn__icon{width:calc(30% - 14px)}
  .am-fn__body{width:calc(68% - 6.4px)}
  .am .am-fn__name{font-size:15px}
  .am .am-fn__text{padding-top:10px;font-size:13px}
  .am-mcp{min-height:1300px}
  .am-faq{padding:60px 20px}
  .am-faq__in{padding:0 10px}
  .am .am-faq__title{font-size:32px}
  .am-faq__list{width:calc(100% + 20px);margin:0 -10px}
  .am .am-faq__answer p{font-size:14px}
}
/* ---------- 320px 以下 ---------- */
@media (max-width:320px){
  .am-hero__copy{margin-bottom:30px}
  .am-hero__catch{margin-bottom:15px;gap:0}
  .am .am-hero__line1 span{font-size:16px}
  .am .am-hero__line1 .am-hero__em{font-size:20px}
  .am .am-hero__line2{font-size:16px}
  .am .am-hero__title{margin-bottom:15px}
  .am .am-hero__dl img{width:60px}
  .am-hero__dl-body{margin-right:5px;padding:0 20px 0 10px}
  .am-hero__dl-cap{font-size:10px}
  .am-hero__phone-box{height:560px}
  .am-hero__illust>div{width:75%}
  .am .am-cust__title{font-size:16px}
  .am-worry{padding:80px 15px 25px}
  .am-feature{padding:60px 0}
  .am-feature__head{width:100%;padding:0 14px}
  .am-point,.am-point--3{padding:0}
  .am-point__row,.am-point--2 .am-point__row{padding:0}
  .am-point--3 .am-point__row{margin-bottom:0}
  .am .am-point__title{font-size:20px}
  .am .am-point__lead{font-size:16px}
  .am .am-point__list{gap:5px}
  .am-flow{padding:50px 15px}
  .am-flow__in{padding:0}
  .am-flow__step{padding:25px 15px}
  .am-video{padding:60px 15px}
  .am-video__row{gap:0}
  .am-video__fig{width:95%}
  .am .am-video__head img{width:40px;margin-right:15px}
  .am .am-video__title{font-size:18px}
  .am-movie{padding:50px 0}
  .am-voice{padding:50px 15px}
  .am .am-voice__title{margin-bottom:30px;padding:0}
  .am .am-voice__photo{height:200px}
  .am-voice__body{padding:30px 15px}
  .am .am-voice__lead{font-size:16px}
  .am .am-voice__company p{font-size:16px}
  .am .am-voice__tags p{font-size:14px}
  .am-fn{padding:60px 15px}
  .am-faq__in{padding:0}
  .am-faq__question{font-size:16px;line-height:1.7}
}
/* 動きを減らす設定の端末ではロゴの流れ・ホバー・開閉のアニメーションを止める */
@media (prefers-reduced-motion:reduce){
  .am .am-logos__track{animation:none}
  .am-banner,.am .am-faq__item summary,.am-faq__icon{transition:none}
}
