カジュアル面談

RECRUIT

国産医療AIの、
第二創業期へ。

経営を担うCxO、エンジニア、営業、学生
インターンの採用強化中。

AI CREATED
WITH THOUSANDS OF HEARTS

2,000名を超える医師の知見を、現場で使われるAIへ。
研究開発から、社会実装へ。

プレシジョンのオフィス、メンバー、看板

NOW WHY A SECOND FOUNDING

なぜ、いま第二創業期なのか。

創業10年。医療知識とAIを磨いてきた。
次は、事業と組織を大きくする。

  1. 2016年

    会社設立

    次世代診療マニュアルCDSリリース

    医師の知見を集約・構造化し、診療を支える知識基盤づくりを開始。
    プレシジョンの原点となる、「医療知識をテクノロジーで届ける」という挑戦が始まりました。

  2. 2020年

    外部からも評価され、事業成長の基盤を強化

    「週刊東洋経済」の「医療をかえる新旗手たち 有望ベンチャー21社」に選出。
    また、富士通アクセラレータに採択され、大手企業との共同開発もスタートしました。
    自社だけでプロダクトをつくる段階から、外部企業と連携し、事業を広げる段階へ。

  3. 2021年

    AI問診「今日の問診票」リリース

    医療現場の問診業務を支援するAI問診をリリース。
    同年には日経ネクストユニコーンにも選定され、医療AI企業として事業拡大を本格化しました。
    医療知識を持つ会社から、複数のプロダクトを社会に届ける会社へ。

  4. 2023年

    国の研究開発に参画

    内閣府の戦略的イノベーション創造プログラム(SIP)に参画し、国産AI開発の研究に従事。

  5. 2025年

    医療特化生成AI「今日のAI音声認識」リリース

    発売直後から注目を集め、医療系大型展示会で4000名以上を集客。

  6. 2026年

    次の10年へ、第二創業期

    医療AIの可能性を、もっと大きく、もっと社会へ。
    次の10年をともにつくる仲間を募集します。

プレシジョンの強み

STRENGTH

医療AIを、研究で終わらせず社会へ。

医師の知見、AI技術、医療現場への実装力を掛け合わせ、実際に使われる
医療AIをつくっています。

医師の知見

約2,000名の医師と築いた医療知識基盤

約2,000名の著名医師と築いてきた診療知識基盤を、AIやプロダクト開発に活かしています。

プロダクト・社会実装

医療AIを自社開発し、全国900以上の医療機関へ

AI問診、医療特化型AI音声認識、電子医療辞典などを自社開発。
全国900以上の医療機関で導入実績があります。

研究・連携

国のプロジェクトにも採択される医療AI開発

内閣府SIP、経済産業省・NEDO「GENIAC」、厚生労働省関連事業など、国の研究・実証プロジェクトに参画。
大学・大手企業との連携に加え、日本経済新聞での紹介や、NVIDIA主催イベントへの登壇実績もあります。

現場・実装力

医療現場に合わせて、使われる形までつくる

代表は医師で、社内にも医師・看護師経験者が在籍。
医療現場の声や運用を理解し、施設ごとに実際に使われ続ける形まで一緒につくります。

プレシジョンの代表、メンバー、展示会

大切にしていること

WHAT WE VALUE

プレシジョンで働くうえで、
大切にしている3つの姿勢。

日々の判断や行動のよりどころとなる、
私たちらしさです。

  1. 01

    素直さ

    自分の考えに固執せず、周囲の意見を受け止め、より良い答えへ変わり続ける。

  2. 02

    成長意欲

    現状に満足せず、学びと挑戦を重ねる。

  3. 03

    社会への視点

    目の前の仕事だけでなく、その先の医療や社会への影響まで考える。

働く人

MEMBER

プレシジョンで働くメンバーが、
職場でのやりがいや日々の挑戦をリアルに語ります。

  • 代表取締役

    なぜ、医療AIの社会実装に挑むのか。

    現役医師兼AI研究者として、現場で本当に使われる医療AIシステムをつくり、医療現場へ届けることを使命としています。

  • 営業企画室

    若いうちから、事業の中心で働ける。

    若いうちから裁量を持って、事業づくりに関われる環境があります。自分の意見やアイデアを、実際の仕事に反映できる機会も多いです。

  • カスタマーサクセス

    部署を越えて、すぐ相談できる。

    部署や役職の垣根が低く、困ったときにすぐ相談できる距離感があります。少数精鋭だからこそ、チームで助け合いながら仕事を進められます。

  • 編集

    専門的な知識を、すぐに頼れる。

    医師や看護師などの医療専門職が在籍しており、専門的な知識が必要な場面でも、社内ですぐに相談しながら仕事を進めることができます。

まずは話を聞く

MEDICINE, REIMAGINED.

お知らせ

FAQ

Q.1 カジュアル面談は選考に含まれますか?
A.1

いいえ、カジュアル面談は選考には含まれません。
プレシジョンの事業や仕事内容、働き方について知っていただくための機会です。
「まずは話を聞いてみたい」「自分に合うポジションがあるか相談したい」という段階でも歓迎しています。
面談後に、選考へ進むかどうかをご判断いただけます。

Q.2 学生インターンの勤務条件を教えてください。
A.2

学業と両立しながら、継続して実務に関わっていただくことを想定しています。
勤務日数や時間については、授業や研究との両立も含めて、ご相談のうえ決定します。

Q.3 医療業界未経験でも応募できますか?
A.3

はい、入社時点で医療業界での経験がなくてもご応募いただけます。
これまでの経験や専門性を活かしながら、必要な知識を学び、医療という領域に向き合っていただける方を歓迎しています。
社内には医師や看護師経験者も在籍しており、医療現場の知識や考え方を学べる環境があります。

Q.4 選考プロセスと期間を教えてください。
A.4

基本的には、2?3回の面談・面接を通じて、お互いの理解を深めながら進めます。
カジュアル面談をご希望の場合は、まず会社や事業についてお話しし、その後、ご希望があれば選考をご案内します。
選考期間については、日程調整の状況にもよりますが、できるだけスムーズに進めています。

募集要項を見る

募集要項

DETAIL

雇用内容

雇用形態
正社員

※試用期間最大6ヶ月(試用期間中の条件変更はなし)

業務内容
事業戦略、新規事業、組織づくりなどを担い、経営チームとともに次の成長をつくります。
勤務地
東京本社: 東京都文京区本郷
最寄駅: 本郷三丁目駅(東京メトロ丸ノ内線、都営大江戸線)
大阪事業所:大阪府内

※転勤はありません。

勤務時間
09:30?18:30(休憩1時間)
給与
年収:600万? ストックオプション等相談

応募資格

戦略的に課題を整理し、経営層や複数部門を巻き込みながら実行まで推進できる方。
事業開発、M&A、プロジェクト・チームマネジメント経験のある方は歓迎します。

休日・休暇

  • 完全週休2日制(年間休日120日以上)
  • 原則土曜・日曜・祝日
  • 有給休暇
  • 年末年始休暇
  • 慶弔休暇
  • 産前産後休暇、育児休暇
  • 介護休暇

待遇・福利厚生

自己研鑽サポート

  • ビジネス書籍購入制度
  • ライブラリー完備
  • 社内研修

社内イベント

  • チーム達成会
  • 食事費用負担

その他

  • 社会保険完備
  • 交通費支給(上限あり)
  • 受動喫煙防止措置

選考フロー

  1. 書類選考
  2. オンライン面接
  3. 経営陣との面接
  4. 対面面接
  5. 内定

※選考フローは、ご経験やポジションに応じて変更する場合があります。
※必要に応じてリファレンスチェックを実施します。

応募方法

選考への応募はもちろん、「まずは事業や期待される役割について話を聞いてみたい」という段階でも歓迎しています。

こちらの応募フォームよりご応募ください。

雇用内容

雇用形態
正社員

※試用期間最大6ヶ月(試用期間中の条件変更はなし)

業務内容
病院・クリニックの課題を聞き、AI問診や医療特化型AI音声認識などを提案し、契約・導入につなげます。
勤務地
東京本社: 東京都文京区本郷
最寄駅: 本郷三丁目駅(東京メトロ丸ノ内線、都営大江戸線)
大阪事業所:大阪府内

※転勤はありません。

勤務時間
09:30?18:30(休憩1時間)
給与
年収:600万?1,200万円程度 ストックオプション等相談

※みなし残業代(月45時間分)および深夜勤務手当(月5時間分)を含みます。
超過分は全額支給します。

応募資格

戦略的に課題を整理し、経営層や複数部門を巻き込みながら実行まで推進できる方。
事業開発、M&A、プロジェクト・チームマネジメント経験のある方は歓迎します。

休日・休暇

  • 完全週休2日制(年間休日120日以上)
  • 原則土曜・日曜・祝日
  • 有給休暇
  • 年末年始休暇
  • 慶弔休暇
  • 産前産後休暇、育児休暇
  • 介護休暇

待遇・福利厚生

自己研鑽サポート

  • ビジネス書籍購入制度
  • ライブラリー完備
  • 社内研修

社内イベント

  • チーム達成会
  • 食事費用負担

その他

  • 社会保険完備
  • 交通費支給(上限あり)
  • 受動喫煙防止措置

選考フロー

  1. 書類選考
  2. オンライン面接
  3. 経営陣との面接
  4. 対面面接(東京または大阪)
  5. 内定

※選考フローは、ご経験やポジションに応じて変更する場合があります。
※必要に応じてリファレンスチェックを実施します。

応募方法

選考への応募はもちろん、
「まずは事業や期待される役割について話を聞いてみたい」という段階でも歓迎しています。

こちらの応募フォームよりご応募ください。

雇用内容

雇用形態
正社員

※試用期間最大6ヶ月(試用期間中の条件変更はなし)

業務内容
AI問診、AI音声認識、診療支援など、医療現場で使われるプロダクトの開発・改善を担います。
勤務地
東京本社: 東京都文京区本郷
最寄駅: 本郷三丁目駅(東京メトロ丸ノ内線、都営大江戸線)
大阪事業所:大阪府内

※転勤はありません。

勤務時間
09:30?18:30(休憩1時間)
給与
年収:500万?1,200万円程度 ストックオプション等相談

※みなし残業代(月45時間分)および深夜勤務手当(月5時間分)を含みます。
超過分は全額支給します。

応募資格

ITシステム開発経験2年以上。自ら課題を見つけ、主体的に開発を進められる方。
自社プロダクトの開発・運用・保守経験がある方は歓迎します。

休日・休暇

  • 完全週休2日制(年間休日120日以上)
  • 原則土曜・日曜・祝日
  • 有給休暇
  • 年末年始休暇
  • 慶弔休暇
  • 産前産後休暇、育児休暇
  • 介護休暇

待遇・福利厚生

自己研鑽サポート

  • ビジネス書籍購入制度
  • ライブラリー完備
  • 社内研修

社内イベント

  • チーム達成会
  • 食事費用負担

その他

  • 社会保険完備
  • 交通費支給(上限あり)
  • 受動喫煙防止措置

選考フロー

  1. 書類選考
  2. オンライン面接
  3. 経営陣との面接
  4. 対面面接(東京または大阪)
  5. 内定

※選考フローは、ご経験やポジションに応じて変更する場合があります。
※必要に応じてリファレンスチェックを実施します。

応募方法

選考への応募はもちろん、
「まずは事業や期待される役割について話を聞いてみたい」という段階でも歓迎しています。

こちらの応募フォームよりご応募ください。

雇用内容

雇用形態
インターン
業務内容
営業、エンジニア、新規事業など、興味のあることや得意なことをお話ししながら、担当する仕事を一緒に決めます。
勤務地
東京本社: 東京都文京区本郷

※勤務方法・頻度は相談のうえ決定

勤務時間
要相談
給与
要設定

応募資格

医療AIやスタートアップに興味のある学生。
医学部生や、プログラミング・開発経験のある学生も歓迎します。

休日・休暇

  • 学業との両立を前提に、勤務日数・時間は相談のうえ決定
  • 授業、試験、研究等の予定にも柔軟に対応

待遇・福利厚生

自己研鑽サポート

  • ビジネス書籍購入制度
  • ライブラリー完備
  • 社内研修

社内イベント

  • チーム達成会
  • 食事費用負担

その他

  • 交通費支給(上限あり)
  • 受動喫煙防止措置

選考フロー

  1. 書類選考
  2. オンライン面談・面接
  3. 必要に応じて追加面談
  4. 採用決定

※選考フローは、ご経験や希望する業務に応じて変更する場合があります。

応募方法

選考への応募はもちろん、
「まずは事業や期待される役割について話を聞いてみたい」という段階でも歓迎しています。

こちらの応募フォームよりご応募ください。

答えのない問いほど、燃える人へ。

まずは30分、プレシジョンが向き合う医療の未来と、
あなたが担える役割について話しませんか。

カジュアル面談

MEET US

まずは話をきいてみる

プレシジョンにご関心をお持ちいただき、ありがとうございます。
選考への応募はもちろん、まずは会社や事業、募集ポジションについて話を聞いてみたいという方も歓迎しています。
ご希望に合わせてお話しできればと思いますので、右記よりお気軽にお申し込みください。

お名前必須

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@500;700&family=Noto+Sans+JP:wght@500;700;900&display=swap"); @font-face { font-family: "Inter"; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuFuYAZ9hiA.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } html { --red: #c00000; --navy: #0b1f2e; scroll-padding-top: 100px; scroll-behavior: smooth; } body { margin: 0; background: #fff; font-family: "Inter", "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; } *, *::before, *::after { box-sizing: border-box; } .fv a, .position a, .member a, .faq a, .detail a, .footer a { color: inherit; text-decoration: none; } .fv-nav a, .fv-label, .fv-title, .why-heading, .why-intro, .why-year, .why-label, .why-title, .why-text, .position-label, .position-note, .position-name, .position-lead, .position-text, .strength-label, .strength-lead, .strength-intro, .value-label, .value-lead-main, .value-lead-sub, .value-name, .value-text, .member-label, .member-intro, .member-role, .faq-label, .detail-label, .detail a.detail-tab, .meet-label, .meet-name-label span, .meet-form .mauticform-row.mauticform-required .mauticform-label::after, .meet-form .mauticform-button-wrapper .mauticform-button.btn-default { letter-spacing: 0.04em; } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } } .fv { position: relative; padding-top: 100px; background: #fff; color: var(--navy); line-height: 1.7; overflow: hidden; } .fv img { max-width: 100%; height: auto; vertical-align: top; border: 0; } .fv-header { position: fixed; top: 0; left: 0; right: 0; z-index: 30; display: flex; align-items: center; justify-content: space-between; gap: 28px; width: 100%; max-width: none; height: 100px; margin: 0; padding: 0 max(32px, calc((100% - 1440px) / 2 + 32px)); background: #fff; } @supports (animation-timeline: scroll()) { .fv-header { background-color: rgba(255, 255, 255, 0); animation: header-bg linear both; animation-timeline: scroll(root); animation-range: 0 160px; } } @keyframes header-bg { from { background-color: rgba(255, 255, 255, 0); } to { background-color: rgba(255, 255, 255, 0.9); } } .fv-logo { display: block; flex: 0 0 auto; } .fv-logo img { display: block; width: auto; height: 38px; } .fv-nav { display: flex; align-items: center; justify-content: flex-end; gap: 36px; margin-left: auto; } .fv-nav a { font-size: 15px; font-weight: 500; white-space: nowrap; } .fv-nav a:hover { color: var(--red); } .fv .fv-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; background: var(--red); color: #fff; border-radius: 999px; font-weight: 500; line-height: 1; white-space: nowrap; transition: background 0.2s ease; } .fv .fv-btn:hover { background: #9d0000; color: #fff; } .fv-btn:focus-visible, .fv-nav a:focus-visible, .fv-logo:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; } .fv .fv-btn-sm { flex: 0 0 auto; padding: 20px 44px; border-radius: 8px; color: #fff; } .fv-btn-arrow { position: absolute; top: 50%; right: 20px; line-height: 1; transform: translateY(-50%); } .fv-main { position: relative; display: grid; grid-template-columns: minmax(0, 480px) minmax(420px, 1fr); column-gap: clamp(28px, 8vw, 120px); align-items: start; width: 100%; max-width: 1440px; margin-inline: auto; padding: 28px 0 96px clamp(20px, 8.2vw, 118px); } .fv-hex { position: absolute; z-index: 0; left: 381px; top: -74px; width: 344px; height: auto; pointer-events: none; } .fv-copy { position: relative; z-index: 1; max-width: 480px; padding-top: clamp(12px, 6vw, 90px); } .fv-label { display: flex; align-items: center; gap: 12px; margin: 0 0 20px; color: var(--red); font-size: 13px; font-weight: 700; line-height: 1; } .fv-label-line { display: block; width: 48px; height: 1px; background: var(--red); } .fv-title { margin: 0 0 22px; font-size: 56px; font-weight: 900; line-height: 1.2; } .fv-lead { margin: 0 0 10px; font-size: 24px; font-weight: 700; line-height: 1.5; } .fv-en { margin: 0 0 20px; color: var(--red); font-size: 18px; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; } .fv-text { margin: 0; font-size: 18px; font-weight: 500; line-height: 1.5; } .fv-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 32px; } .fv-btn-lg { padding: 20px 48px; border-radius: 999px; color: #fff; font-size: 18px; font-weight: 500; line-height: 1.2; } .fv-photos { position: relative; z-index: 1; width: 721px; max-width: 100%; } .fv-photos > img { display: block; width: 100%; height: auto; } .fv-photos .fv-script { position: absolute; left: -43%; top: 82%; width: 64%; max-width: none; height: auto; pointer-events: none; z-index: 2; } @media (max-width: 1100px) { html { scroll-padding-top: 140px; } .fv { padding-top: 140px; } .fv-header { height: auto; flex-wrap: wrap; padding: 16px 20px 12px; gap: 12px 20px; } .fv-nav { order: 3; width: 100%; justify-content: flex-start; gap: 22px; margin-left: 0; overflow-x: auto; padding-bottom: 4px; } .fv-main { grid-template-columns: 1fr; row-gap: 36px; padding: 8px 0 56px; } .fv-copy { max-width: 640px; padding: 8px 20px 0; } .fv-hex { left: auto; right: 16px; top: 0; width: min(280px, 46vw); } .fv-photos { padding: 0 20px; } } @media (max-width: 720px) { html { scroll-padding-top: 84px; } .fv { padding-top: 108px; } .fv-header { flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 12px 12px 10px; gap: 10px 12px; } .fv-logo img { height: 24px; } .fv-nav { justify-content: center; gap: 14px; overflow: visible; padding-bottom: 0; } .fv-nav a { font-size: 14px; } .fv .fv-btn-sm { padding: 8px 28px; font-size: 12px; } .fv-header .fv-btn-arrow { right: 10px; } .fv-title { font-size: 11vw; } .fv-lead { font-size: 18px; } .fv-text { font-size: 3.6vw; } .fv-main { grid-template-columns: minmax(0, 1fr); } .fv-copy, .fv-photos { min-width: 0; max-width: 100%; } .fv-actions { flex-direction: column; align-items: stretch; } .fv-btn-lg { width: 100%; } .fv-photos .fv-script { display: none; } .fv-photos { width: 100%; padding: 0 16px; } } .why { position: relative; isolation: isolate; background: var(--red); color: #fff; line-height: 1.7; overflow: hidden; border-radius: 80px 80px 0 0; padding: 100px 0 80px; } .why::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; pointer-events: none; opacity: 0.38; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n' x='0' y='0' width='180' height='180' primitiveUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.15 0.62' numOctaves='1' stitchTiles='stitch' seed='4' result='t'/%3E%3CfeComponentTransfer in='t' result='b'%3E%3CfeFuncR type='linear' slope='1.8' intercept='-0.38'/%3E%3CfeFuncG type='linear' slope='1.8' intercept='-0.38'/%3E%3CfeFuncB type='linear' slope='1.8' intercept='-0.38'/%3E%3C/feComponentTransfer%3E%3CfeColorMatrix in='b' type='luminanceToAlpha' result='a'/%3E%3CfeFlood flood-color='%23FF8C8C' result='c'/%3E%3CfeComposite in='c' in2='a' operator='in'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E"); background-repeat: repeat; } .why-en { margin: 0 0 36px; padding-left: 24px; font-size: 100px; font-weight: 700; line-height: 1; white-space: nowrap; } .why-inner { position: relative; z-index: 1; width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 240px; } .why-heading { margin: 0; font-size: 40px; font-weight: 700; line-height: 1.5; text-align: center; } .why-intro { margin: 18px 0 0; font-size: 20px; font-weight: 500; line-height: 1.5; text-align: center; } .why-list { position: relative; list-style: none; margin: 64px 0 0; padding: 0; } .why-item { display: grid; grid-template-columns: 150px minmax(0, 1fr); column-gap: 36px; align-items: center; position: relative; padding: 20px 0 20px 40px; } .why-item::before { content: ""; position: absolute; left: 0; top: 50%; z-index: 1; width: 12px; height: 12px; border-radius: 50%; background: #fff; transform: translateY(-50%); } .why-item::after { content: ""; position: absolute; left: 5px; top: 0; bottom: 0; width: 2px; background: rgba(255, 255, 255, 0.5); } .why-item:first-child::after { top: 50%; } .why-item:last-child::after { bottom: 50%; } .why-year { margin: 0; font-size: 22px; font-weight: 700; line-height: 1.5; } .why-year span { font-size: 40px; line-height: 1.5; letter-spacing: 0; } .why-card { display: grid; align-content: center; height: 150px; border-bottom: 1px solid rgba(255, 255, 255, 0.5); } .why-label { margin: 0 0 8px; font-size: 18px; font-weight: 700; line-height: 1.5; } .why-title { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.5; } .why-text { margin: 10px 0 0; font-size: 16px; font-weight: 500; line-height: 1.5; } .why-hex { position: absolute; right: 0; bottom: 0; height: auto; max-width: none; pointer-events: none; } @media (max-width: 1100px) { .why { border-radius: 48px 48px 0 0; padding: 64px 0 88px; } .why-en { font-size: 64px; margin-bottom: 28px; } .why-heading { font-size: 26px; } .why-list { margin-top: 40px; } .why-item { grid-template-columns: 132px minmax(0, 1fr); column-gap: 16px; padding-left: 32px; } .why-year span { font-size: 34px; } } @media (max-width: 720px) { .why { border-radius: 28px 28px 0 0; padding: 48px 0 50px; } .why-inner { padding-right: 16px; padding-left: 20px; } .why-en { font-size: 6vw; padding-left: 5px; margin-bottom: 20px; } .why-heading { font-size: 6vw; } .why-intro { font-size: 14px; } .why-item { grid-template-columns: 1fr; row-gap: 8px; align-items: start; padding: 22px 0 22px 28px; } .why-item::before { top: 34px; transform: none; } .why-item:first-child::after { top: 40px; } .why-item:last-child::after { bottom: auto; height: 40px; } .why-year { margin-top: -6px; } .why-year span { font-size: 32px; } .why-card { height: unset; border-bottom: none; } .why-title { font-size: 16px; } .why-text { font-size: 14px; } .why-hex { width: 40%; } } .position { background: #f9f8f5; color: var(--navy); line-height: 1.5; padding: 150px 0 140px; } .position-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 152.5px; } .position-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 40px; margin: 0 0 80px; } .position-label { display: flex; align-items: center; gap: 20px; margin: 0; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .position-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .position-title { margin: 16px 0 0; font-size: 60px; font-weight: 700; line-height: 1.2; } .position-note { margin: 0 0 8px; font-size: 15px; font-weight: 500; line-height: 1.5; } .position-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 23px; list-style: none; margin: 48px 0 0; padding: 0; } .position-card { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--red); border-radius: 8px; padding: 24px 22px; transition: background 0.2s ease; } .position-card:hover { background: #fff7f7; } .position-card:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; } .position-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .position-icon { display: block; width: 50px; height: 50px; } .position-icon img { display: block; width: 100%; height: auto; } .position-go { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #c8c8c8; border-radius: 50%; color: var(--red); transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease; } .position-go svg { width: 22px; height: 22px; } .position-card:hover .position-go { background: var(--red); border-color: var(--red); color: #fff; } .position-name { margin: 70px 0 0; color: var(--red); font-size: 18px; font-weight: 700; line-height: 1.5; } .position-lead { margin: 25px 0 0; font-size: 16px; font-weight: 500; line-height: 1.5; } .position-text { margin: 15px 0 0; color: #5a656e; font-size: 15px; font-weight: 500; line-height: 1.5; } .position-actions { display: flex; justify-content: center; margin: 56px 0 0; } .position-btn, .member-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 280px; padding: 29px 61px; background: var(--red); color: #fff !important; border-radius: 999px; font-size: 18px; font-weight: 500; line-height: 1.2; transition: background 0.2s ease; } .position-btn:hover, .member-btn:hover { background: #9d0000; color: #fff; } .position-btn:focus-visible, .member-btn:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; } @media (max-width: 1100px) { .position { padding: 64px 0 80px; } .position-title { font-size: 56px; } .position-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } } @media (max-width: 720px) { .position { padding: 50px 0; } .position-head { flex-direction: column; align-items: flex-start; margin: 0 0 40px; gap: 20px; } .position-title { font-size: 40px; } .position-note { margin: 0; } .position-inner { padding: 0 20px; } .position-list { grid-template-columns: 1fr; margin-top: 32px; } .position-actions { margin: 26px 0 0; } .position-btn, .member-btn { padding: 20px 61px; } } .strength { background: #fff; color: var(--navy); line-height: 1.5; padding: 140px 0 120px; } .strength-inner { display: grid; grid-template-columns: minmax(0, 560px) 596px; column-gap: 48px; justify-content: space-between; align-items: start; width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 32px 0 160px; } .strength-copy { max-width: 560px; } .strength-label { display: flex; align-items: center; gap: 20px; margin: 0 0 20px; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .strength-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .strength-title { margin: 0; font-size: 60px; font-weight: 700; line-height: 1.2; } .strength-lead { margin: 20px 0 0; font-size: 20px; font-weight: 500; line-height: 1.5; } .strength-intro { margin: 10px 0 0; font-size: 15px; font-weight: 500; line-height: 1.5; } .strength-list { margin: 80px 0 0; } .strength-item { padding: 24px 0; border-bottom: 1px solid #e4e4e4; } .strength-item:first-child { border-top: 1px solid #e4e4e4; } .strength-tag { display: inline-flex; align-items: center; margin: 0; padding: 4px 10px; border: 1px solid var(--red); border-radius: 999px; color: var(--red); font-size: 12px; font-weight: 500; line-height: 1.5; } .strength-heading { margin: 5px 0 0; color: var(--red); font-size: 22px; font-weight: 700; line-height: 38px; } .strength-text { margin: 10px 0 0; font-size: 14px; font-weight: 500; line-height: 1.8; } .strength-photos { display: block; width: 596px; max-width: 100%; height: auto; margin-top: 48px; } @media (max-width: 1100px) { .strength { padding: 80px 0 72px; } .strength-inner { grid-template-columns: 1fr; padding: 0 40px; } .strength-title { font-size: 44px; } .strength-photos { margin-top: 40px; } } @media (max-width: 720px) { .strength { padding: 56px 0 48px; } .strength-inner { padding: 0 20px; } .strength-title { font-size: 36px; } .strength-lead { font-size: 16px; } .strength-heading { font-size: 18px; } .strength-list { margin: 40px 0 0; } } .value { background: #fff; line-height: 1.5; padding: 0 0 40px; } .value-panel { position: relative; width: 100%; max-width: 1380px; margin-inline: auto; padding: 64px 0 0; border-radius: 24px; } .value-panel::before { content: ""; position: absolute; top: 0; right: 0; left: 0; z-index: 0; height: 455px; background: var(--red); border-radius: 24px; } .value-hex { position: absolute; top: 0; right: 0; z-index: 0; height: auto; pointer-events: none; } .value-inner { position: relative; z-index: 1; width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 130px; color: #fff; } .value-label { display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0 0 24px; font-size: 16px; font-weight: 700; line-height: 20px; } .value-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.15); } .value-title { margin: 0; font-size: 60px; font-weight: 700; line-height: 1.2; text-align: center; } .value-lead-main { margin: 24px 0 5px; font-size: 18px; font-weight: 700; line-height: 1.5; text-align: center; } .value-lead-sub { margin: 0; font-size: 16px; font-weight: 500; line-height: 1.5; text-align: center; } .sp-br { display: none; } .value-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 60px 0 0; padding: 0; } .value-card { position: relative; background: #fff; color: var(--navy); border-radius: 8px; padding: 32px 28px 24px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.13); } .value-illust { position: absolute; top: 0; right: 30px; width: auto; height: 100px; transform: translateY(-18%); } .value-num { margin: 0; color: var(--red); font-size: 40px; font-weight: 700; line-height: 1.2; } .value-name { margin: 40px 0 0; color: var(--red); font-size: 22px; font-weight: 700; line-height: 1.5; } .value-text { margin: 10px 0 0; font-size: 16px; font-weight: 500; line-height: 1.5; } @media (max-width: 1100px) { .value-inner { padding: 0 40px; } .value-title { font-size: 44px; } .value-list { grid-template-columns: 1fr; max-width: 480px; margin-inline: auto; } } @media (max-width: 720px) { .value-inner { padding: 0 20px; } .value-title { font-size: 32px; } .value-lead-main { font-size: 20px; } .value-lead-sub { font-size: 16px; } .sp-br { display: block; } .value-hex { display: none; } } .member { background: #fff; line-height: 1.5; padding: 100px 0 0; } .member-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 152.5px; } .member-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; margin: 0 0 80px; } .member-label { display: flex; align-items: center; gap: 20px; margin: 0 0 20px; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .member-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .member-title { margin: 0; color: var(--navy); font-size: 60px; font-weight: 700; line-height: 1.2; } .member-intro { margin: 0 0 8px; color: var(--navy); font-size: 15px; font-weight: 500; line-height: 1.5; } .member-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; } .member-card { overflow: hidden; border: 1px solid #dadada; border-radius: 8px; background: #fff; } .member-photo { position: relative; background: #f3f7fa; } .member-photo img { display: block; width: 100%; height: auto; } .member-role { position: absolute; left: 12px; bottom: 12px; margin: 0; padding: 3px 8px; border: 1px solid var(--red); border-radius: 4px; background: #fff; color: var(--red); font-size: 12px; font-weight: 500; line-height: 1.5; } .member-name { margin: 24px 20px 0; color: var(--red); font-size: 16px; font-weight: 700; line-height: 1.5; } .member-text { margin: 24px 20px; color: #414040; font-size: 14px; font-weight: 500; line-height: 1.5; } .member-actions { display: flex; justify-content: center; margin: 56px 0 0; } .member-slogan { margin: 0; padding: 140px 0 80px; color: #a5a5a5; font-size: 110px; font-weight: 700; line-height: 1; text-align: center; } @media (max-width: 1100px) { .member { padding: 64px 0 0; } .member-inner { padding: 0 40px; } .member-head { flex-direction: column; align-items: flex-start; gap: 20px; margin: 0 0 40px; } .member-title { font-size: 44px; } .member-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } } @media (max-width: 720px) { .member { padding: 48px 0 0; } .member-inner { padding: 0 20px; } .member-title { font-size: 36px; } .member-intro { font-size: 14px; } .member-list { grid-template-columns: 1fr; max-width: 420px; } .member-actions { margin: 26px 0 0; } } .faq { background: #fff; line-height: 1.5; } .faq-panel { background: #f9f8f5; padding: 140px 0; } .faq-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 248.5px; } .faq-label { display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0 0 20px; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .faq-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .faq-title { margin: 0; color: var(--navy); font-size: 60px; font-weight: 700; line-height: 1.2; text-align: center; } .faq-list { display: grid; gap: 24px; margin: 80px 0 0; } .faq-item { border: 1px solid #dadada; border-radius: 8px; background: #fff; interpolate-size: allow-keywords; transition: background-color 0.4s ease; } .faq-item::details-content { height: 0; overflow: clip; transition: height 0.45s ease, content-visibility 0.45s allow-discrete; } .faq-item[open]::details-content { height: auto; } .faq-item[open] { background: #fff4f4; } .faq-item summary { display: flex; align-items: center; gap: 16px; padding: 32px 40px; list-style: none; cursor: pointer; } .faq-item summary::-webkit-details-marker { display: none; } .faq-q, .faq-a { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 48px; height: auto; padding: 2px 10px; border-radius: 999px; color: #fff; font-size: 16px; font-weight: 700; line-height: 1.5; } .faq-q { background: var(--red); } .faq-a { background: var(--navy); } .faq-line { flex: 0 0 auto; width: 1px; height: 24px; background: #e4e4e4; } .faq-question { color: var(--navy); font-size: 16px; font-weight: 500; line-height: 1.8; } .faq-icon { position: relative; flex: 0 0 auto; width: 22px; height: 22px; margin-left: auto; } .faq-icon::before, .faq-icon::after { content: ""; position: absolute; background: var(--red); border-radius: 1px; } .faq-icon::before { top: 50%; left: 0; width: 22px; height: 3px; transform: translateY(-50%); } .faq-icon::after { top: 0; left: 50%; width: 3px; height: 22px; transform: translateX(-50%); transition: opacity 0.3s ease, transform 0.3s ease; } .faq-item[open] .faq-icon::after { opacity: 0; transform: translateX(-50%) scaleY(0); } .faq-answer { display: flex; align-items: flex-start; gap: 16px; padding: 0 40px 32px; } .faq-answer p { margin: 0; color: var(--navy); font-size: 16px; font-weight: 500; line-height: 1.8; } .faq-actions { display: flex; justify-content: flex-end; margin: 40px 0 0; } .faq-btn { position: relative; display: inline-flex; align-items: center; padding: 14px 48px; background: var(--red); color: #fff !important; border-radius: 999px; font-size: 16px; font-weight: 700; line-height: 1.5; } .faq-btn:hover { background: #9d0000; } .faq-btn:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; } @media (max-width: 1100px) { .member-slogan { font-size: 56px; padding: 120px 24px 40px; } .faq-panel { padding: 72px 0 80px; } .faq-inner { padding: 0 40px; } .faq-title { font-size: 44px; } } @media (max-width: 720px) { .member-slogan { font-size: 7.5vw; padding: 60px 0 32px; } .faq-panel { padding: 56px 0 64px; } .faq-inner { padding: 0 20px; } .faq-title { font-size: 36px; text-align: left; } .faq-label { justify-content: flex-start; } .faq-list { margin: 40px 0 0; } .faq-actions { margin: 26px 0 0; } .faq-item summary, .faq-answer { padding-right: 20px; padding-left: 20px; } } .detail { position: relative; padding: 140px 0; background: #fff; color: #414040; line-height: 1.5; } .detail-jumps { position: absolute; top: 0; left: 0; width: 1px; height: 1px; } .detail-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 152.5px; } .detail-label { display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0 0 20px; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .detail-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .detail-title { margin: 0; color: var(--navy); font-size: 60px; font-weight: 700; line-height: 1.2; text-align: center; } .detail-body { display: grid; grid-template-columns: 240px minmax(0, 1fr); column-gap: 50px; align-items: start; margin-top: 80px; } .detail-nav { position: sticky; top: 120px; z-index: 2; display: flex; flex-direction: column; gap: 15px; } .detail a.detail-tab { display: flex; align-items: center; gap: 12px; min-height: 24px; padding-left: 20px; color: #a5a5a5; font-size: 15px; font-weight: 500; line-height: 1.5; cursor: pointer; transition: color 0.35s ease; } .detail:not(:has(#detail-cxo:target, #detail-sales:target, #detail-engineer:target, #detail-intern:target)) .detail-tab:nth-child(1), .detail:has(#detail-cxo:target) .detail-tab:nth-child(1), .detail:has(#detail-sales:target) .detail-tab:nth-child(2), .detail:has(#detail-engineer:target) .detail-tab:nth-child(3), .detail:has(#detail-intern:target) .detail-tab:nth-child(4) { padding-left: 0; color: var(--red); font-weight: 700; } .detail:not(:has(#detail-cxo:target, #detail-sales:target, #detail-engineer:target, #detail-intern:target)) .detail-tab:nth-child(1)::before, .detail:has(#detail-cxo:target) .detail-tab:nth-child(1)::before, .detail:has(#detail-sales:target) .detail-tab:nth-child(2)::before, .detail:has(#detail-engineer:target) .detail-tab:nth-child(3)::before, .detail:has(#detail-intern:target) .detail-tab:nth-child(4)::before { content: ""; flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background: var(--red); animation: detail-dot 0.35s ease; } .detail a.detail-tab:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; } .detail-main { border-top: 1px solid #e4e4e4; } .detail-panel { display: none; } .detail:not(:has(#detail-cxo:target, #detail-sales:target, #detail-engineer:target, #detail-intern:target)) .detail-panel:nth-child(1) { display: block; } .detail:has(#detail-cxo:target) .detail-panel:nth-child(1), .detail:has(#detail-sales:target) .detail-panel:nth-child(2), .detail:has(#detail-engineer:target) .detail-panel:nth-child(3), .detail:has(#detail-intern:target) .detail-panel:nth-child(4) { display: block; animation: detail-in 0.5s ease; } @keyframes detail-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } } @keyframes detail-dot { from { opacity: 0; transform: scale(0.4); } to { opacity: 1; transform: none; } } @media (prefers-reduced-motion: reduce) { .detail:has(#detail-cxo:target) .detail-panel:nth-child(1), .detail:has(#detail-sales:target) .detail-panel:nth-child(2), .detail:has(#detail-engineer:target) .detail-panel:nth-child(3), .detail:has(#detail-intern:target) .detail-panel:nth-child(4), .detail:not(:has(#detail-cxo:target, #detail-sales:target, #detail-engineer:target, #detail-intern:target)) .detail-tab:nth-child(1)::before, .detail:has(#detail-cxo:target) .detail-tab:nth-child(1)::before, .detail:has(#detail-sales:target) .detail-tab:nth-child(2)::before, .detail:has(#detail-engineer:target) .detail-tab:nth-child(3)::before, .detail:has(#detail-intern:target) .detail-tab:nth-child(4)::before { animation: none; } } .detail-block { padding: 35px 0; border-bottom: 1px solid #e4e4e4; } .detail-heading { margin: 0 0 24px; color: var(--red); font-size: 20px; font-weight: 700; line-height: 38px; } .detail-block p, .detail-row dd { margin: 0; color: #414040; font-size: 14px; font-weight: 500; line-height: 1.8; } .detail-rows { display: grid; gap: 28px; margin: 0; } .detail-row { display: grid; grid-template-columns: 125px minmax(0, 1fr); margin: 0; } .detail-row dd { font-size: 14px; } .detail-row dt { margin: 0; color: #414040; font-size: 16px; font-weight: 700; line-height: 1.8; } .detail-note { margin: 8px 0 0; color: #414040; font-size: 14px; font-weight: 500; line-height: 1.5; } .detail-sub { margin: 28px 0 15px; color: #414040; font-size: 16px; font-weight: 700; line-height: 1.5; } .detail-list, .detail-steps { margin: 0 0 0 10px; padding-left: 1em; color: #414040; font-size: 14px; font-weight: 500; line-height: 1.8; } .detail-list li + li, .detail-steps li + li { margin-top: 2px; } .detail-block .detail-note { margin-top: 13px; font-size: 12px; } .detail a.detail-form { display: inline-block; margin-top: 20px; color: var(--red); font-size: 14px; font-weight: 500; line-height: 1.5; text-decoration: underline; text-underline-offset: 2px; } .detail a.detail-form:hover { color: #9d0000; } @media (max-width: 1100px) { .detail { padding: 72px 0 80px; } .detail-inner { padding: 0 40px; } .detail-title { font-size: 44px; } .detail-body { grid-template-columns: 200px minmax(0, 1fr); column-gap: 32px; } .detail-nav { top: 160px; } } @media (max-width: 720px) { .detail { padding: 56px 0 64px; } .detail-inner { padding: 0 20px; } .detail-title { font-size: 36px; text-align: left; } .detail-label { justify-content: flex-start; } .detail-body { grid-template-columns: 1fr; row-gap: 32px; margin-top: 40px; } .detail-nav { position: sticky; top: 84px; display: grid; grid-template-columns: 1fr 1fr; width: 100vw; gap: 0; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); padding: 0; background: #f5f5f5; border: 1px solid #e4e4e4; } .detail a.detail-tab { justify-content: center; gap: 0; padding: 10px 14px; font-size: 13px; line-height: 1.4; text-align: center; white-space: normal; border-right: 1px solid #e4e4e4; border-bottom: 1px solid #e4e4e4; } .detail a.detail-tab:nth-child(2n) { border-right: none; } .detail a.detail-tab:nth-last-child(-n + 2) { border-bottom: none; } .detail:not(:has(#detail-cxo:target, #detail-sales:target, #detail-engineer:target, #detail-intern:target)) .detail-tab:nth-child(1), .detail:has(#detail-cxo:target) .detail-tab:nth-child(1), .detail:has(#detail-sales:target) .detail-tab:nth-child(2), .detail:has(#detail-engineer:target) .detail-tab:nth-child(3), .detail:has(#detail-intern:target) .detail-tab:nth-child(4) { padding-left: 14px; } .detail a.detail-tab::before { display: none; } .detail-row { grid-template-columns: 1fr; gap: 4px; } } .entry { padding: 100px 40px; background: #c00000 url("img/entry-bg.jpg") center / cover no-repeat; color: #fff; line-height: 1.5; text-align: center; } .entry-title { margin: 0; color: #fff; font-size: 48px; font-weight: 700; line-height: 1.4; } .entry-lead { margin: 32px 0 0; color: #fff; font-size: 16px; font-weight: 500; line-height: 2; } @media (max-width: 1100px) { .entry { padding: 72px 40px; } .entry-title { font-size: 40px; } } @media (max-width: 720px) { .entry { padding: 56px 20px; } .entry-title { font-size: 5.5vw; } .entry-lead { margin: 16px 0 0; font-size: 3.5vw; line-height: 1.8; } } .meet { padding: 100px 0 100px; background: #fff; color: var(--navy); line-height: 1.5; } .meet-inner { display: flex; justify-content: space-between; align-items: flex-start; column-gap: 72px; width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 207.5px; } .meet-label { display: flex; align-items: center; gap: 20px; margin: 0 0 20px; color: var(--red); font-size: 16px; font-weight: 700; line-height: 20px; } .meet-dot { flex: 0 0 auto; width: 8px; height: 8px; margin: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 8px #edc6c4; } .meet-title { margin: 0; color: var(--navy); font-size: 60px; font-weight: 700; line-height: 1.2; } .meet-lead { margin: 10px 0 0; color: var(--navy); font-size: 28px; font-weight: 700; line-height: 1.5; } .meet-copy { flex: 0 1 360px; width: 360px; max-width: 360px; min-width: 0; } .meet-text p { margin: 16px 0 0; color: var(--navy); font-size: 16px; font-weight: 500; line-height: 1.8; } .meet-text p:first-child { margin-top: 28px; } .meet-form { flex: 0 1 560px; width: 560px; max-width: 560px; min-width: 0; padding: 50px 0 0; } .meet-form iframe { width: 100%; height: 1600px; border: 0; } .meet-form .mauticform_wrapper { max-width: none; margin: 0; } .meet-form .mauticform-page-wrapper { display: flex; flex-wrap: wrap; column-gap: 16px; } .meet-form .mauticform-page-wrapper > .mauticform-row { width: 100%; margin: 0 0 40px; } .meet-form .mauticform-page-wrapper > .mauticform-field-1, .meet-form .mauticform-page-wrapper > .mauticform-field-2 { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; width: calc(50% - 8px); } .meet-form .mauticform-field-6 { order: 1; } .meet-form .mauticform-field-5 { order: 2; } .meet-form .mauticform-button-wrapper { order: 3; margin: 4px 0 0; text-align: center; } .meet-name-label, .meet-form .mauticform-label { margin: 0 0 8px; color: var(--navy); font-size: 16px; font-weight: 700; line-height: 1.5; } .meet-form .mauticform-field-1 .mauticform-label, .meet-form .mauticform-field-2 .mauticform-label { margin: 0; flex: none; } .meet-name-label span, .meet-form .mauticform-row.mauticform-required .mauticform-label::after { display: inline-block; margin-left: 8px; padding: 0 6px; border-radius: 4px; background: var(--red); color: #fff; font-size: 11px; font-weight: 700; line-height: 18px; vertical-align: 1px; } .meet-form .mauticform-row.mauticform-required .mauticform-label::after { content: "必須"; } .meet-form .mauticform-field-1.mauticform-required .mauticform-label::after, .meet-form .mauticform-field-2.mauticform-required .mauticform-label::after { content: none; } .meet-form .mauticform-helpmessage { margin: 0 0 10px; color: #868584; font-size: 12px; font-weight: 500; line-height: 1.7; } .meet-form .mauticform-input, .meet-form .mauticform-textarea, .meet-form .mauticform-selectbox { width: 100%; margin: 0; padding: 12px 16px; border: 1px solid #e6e6e6; border-radius: 8px; background: #fff; box-shadow: none; color: var(--navy); font-family: inherit; font-size: 15px; font-weight: 500; line-height: 1.5; } .meet-form .mauticform-input { height: 52px; padding: 0 16px; } .meet-form .mauticform-field-1 .mauticform-input, .meet-form .mauticform-field-2 .mauticform-input { flex: 1; min-width: 0; } .meet-form .mauticform-textarea { display: block; min-height: 140px; resize: vertical; } .meet-form .mauticform-selectbox { min-height: 168px; } .meet-form .mauticform-input::placeholder, .meet-form .mauticform-textarea::placeholder { color: #a3a3a3; } .meet-form .mauticform-input:focus, .meet-form .mauticform-textarea:focus, .meet-form .mauticform-selectbox:focus { outline: none; border-color: var(--red); } .meet-form .mauticform-errormsg { flex: 1 0 100%; margin-top: 6px; color: var(--red); font-size: 12px; line-height: 1.5; } .meet-form .mauticform-button-wrapper .mauticform-button.btn-default { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 200px; height: 60px; padding: 0 48px; border: 0; border-radius: 999px; background: var(--red); color: #fff; font-family: inherit; font-size: 16px; font-weight: 700; line-height: 1; cursor: pointer; } .meet-form .mauticform-button-wrapper .mauticform-button.btn-default::after { content: "→"; position: absolute; top: 50%; right: 20px; line-height: 1; transform: translateY(-50%); } .meet-form .mauticform-button-wrapper .mauticform-button.btn-default:hover { background: #9d0000; color: #fff; } .meet-form .mauticform-button-wrapper .mauticform-button.btn-default:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; } @media (max-width: 1100px) { .meet { padding: 72px 0 80px; } .meet-inner { flex-direction: column; row-gap: 48px; padding: 0 40px; } .meet-copy, .meet-form { flex-basis: auto; width: 100%; max-width: none; } .meet-title { font-size: 44px; } .meet-lead { font-size: 28px; } } @media (max-width: 720px) { .meet { padding: 56px 0 20px; } .meet-inner { padding: 0 20px; } .meet-title { font-size: 36px; } .meet-lead { font-size: 24px; } .meet-text p { font-size: 15px; } .meet-form { padding: 0; } .meet-form .mauticform-page-wrapper > .mauticform-field-1, .meet-form .mauticform-page-wrapper > .mauticform-field-2 { width: 100%; } .meet-form .mauticform-page-wrapper > .mauticform-field-1 { margin-bottom: 20px; } } .footer { background: #f9f8f5; color: var(--navy); line-height: 1.5; } .footer-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 80px 152.5px 40px; } .footer-main { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px; } .footer-logo { display: inline-block; } .footer-logo img { display: block; width: 224px; height: 40px; } .footer-tagline { margin: 26px 0 0; color: var(--navy); font-size: 24px; font-weight: 700; line-height: 1.5; } .footer-address { margin: 28px 0 0; color: var(--navy); font-style: normal; font-size: 14px; font-weight: 500; line-height: 1.8; } .footer-nav { display: grid; grid-template-columns: auto auto; column-gap: 65px; row-gap: 18px; align-content: start; margin-top: 40px; font-size: 15px; font-weight: 500; line-height: 1.5; } .footer-copy { margin: 40px 0 0; padding-top: 20px; border-top: 1px solid #dadada; color: #868584; font-size: 13px; font-weight: 500; line-height: 1.5; } @media (max-width: 1100px) { .footer-inner { padding: 64px 40px 40px; } .footer-nav { column-gap: 48px; margin-top: 8px; } } @media (max-width: 720px) { .footer-inner { padding: 48px 20px 32px; } .footer-main { flex-direction: column; gap: 32px; } .footer-tagline { font-size: 18px; } .footer-nav { margin-top: 0; } }