/* ======================================================================
   TOOLS by GOtomedia — サイト共通テーマ
   適用範囲: body.gt-redesign 内のみ。
   ページ別の機能JS・ID・入力ロジックには一切変更を加えない。
   全ページで最後のCSSとして読み込む。
   ====================================================================== */
body.gt-redesign {
  --gt-ink: #2c2926;
  --gt-ink-soft: #514b46;
  --gt-muted: #77706a;
  --gt-paper: #f7f3ed;
  --gt-white: #ffffff;
  --gt-line: #e5ddd4;
  --gt-accent: #efa04b;
  --gt-accent-strong: #d97724;
  --gt-footer: #b75b21;
  --gt-max: 1200px;
  margin: 0;
  background: var(--gt-paper);
  color: var(--gt-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}
body.gt-redesign *,
body.gt-redesign *::before,
body.gt-redesign *::after { box-sizing: border-box; }
body.gt-redesign a { text-underline-offset: .17em; }
body.gt-redesign img { max-width: 100%; }
body.gt-redesign .gt-skip-link {
  position: fixed; top: -100px; left: 12px; z-index: 100000;
  padding: 10px 16px; background: #fff; color: #111; border: 2px solid #111;
}
body.gt-redesign .gt-skip-link:focus { top: 6px; }
/* 共通ヘッダー --------------------------------------------------------- */
body.gt-redesign .gt-site-header {
  z-index: 1100; position: relative; width: 100%;
  background: rgba(245,243,238,.97); border-bottom: 1px solid var(--gt-line);
}
body.gt-redesign .gt-site-header__inner {
  position: relative; margin: auto; max-width: 1440px;
  height: 88px; padding: 0 clamp(20px, 4.5vw, 70px);
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
body.gt-redesign .gt-site-brand {
  color: var(--gt-ink); display: inline-flex; align-items: center;
  gap: 10px; text-decoration: none; white-space: nowrap; flex-shrink: 0;
}
body.gt-redesign .gt-site-brand__mark {
  position: relative; width: 34px; height: 34px; display: grid;
  grid-template-columns: repeat(2, 8px); grid-template-rows: repeat(2, 8px);
  place-content: center; gap: 4px; transform: rotate(-20deg);
}
body.gt-redesign .gt-site-brand__mark span { display: block; background: var(--gt-ink); border-radius: 100%; }
body.gt-redesign .gt-site-brand__mark span:nth-child(2) { background: var(--gt-accent-strong); }
body.gt-redesign .gt-site-brand__name { color: var(--gt-accent-strong); font: 900 26px/1.1 Arial, Helvetica, sans-serif; letter-spacing: -.075em; }
body.gt-redesign .gt-site-brand__period { color: var(--gt-accent-strong); }
body.gt-redesign .gt-site-brand small { align-self: flex-end; font: 500 10px/1.5 Arial, sans-serif; color: var(--gt-muted); letter-spacing: .04em; margin-bottom: 1px; }
body.gt-redesign .gt-site-nav { display: flex; gap: clamp(15px,2.5vw,32px); margin: 0 0 0 auto; align-items: center; }
body.gt-redesign .gt-site-nav a { font-size: 13px; font-weight: 700; color: var(--gt-ink); text-decoration: none; transition: opacity .16s; white-space: nowrap; }
body.gt-redesign .gt-site-nav a:hover { opacity: .5; }
body.gt-redesign .gt-site-menu { position: relative; margin: 0; }
body.gt-redesign .gt-site-menu summary {
  display: flex; align-items: center; justify-content: center; gap: 17px;
  list-style: none; cursor: pointer; user-select: none;
  background: var(--gt-accent-strong); color: #fff;
  border-radius: 50px; padding: 11px 15px 11px 20px;
  font: 800 11px/1 Arial, sans-serif; letter-spacing: .07em;
}
body.gt-redesign .gt-site-menu summary::-webkit-details-marker { display: none; }
body.gt-redesign .gt-site-menu__symbol { font: 300 25px/1 Arial, sans-serif; transition: transform .16s; }
body.gt-redesign .gt-site-menu[open] .gt-site-menu__symbol { transform: rotate(45deg); }
body.gt-redesign .gt-site-menu__panel {
  position: absolute; top: calc(100% + 13px); right: 0;
  z-index: 2000; width: min(370px, calc(100vw - 30px));
  max-height: min(75vh, 630px); overflow-y: auto;
  display: grid; padding: 12px; background: #fff;
  border: 1px solid var(--gt-line); border-radius: 12px;
  box-shadow: 0 15px 40px rgba(64,42,26,.14);
}
body.gt-redesign .gt-site-menu__panel a {
  padding: 11px 14px; color: var(--gt-ink); text-decoration: none;
  font-size: 13px; border-radius: 7px; font-weight: 700;
}
body.gt-redesign .gt-site-menu__panel a:hover,
body.gt-redesign .gt-site-menu__panel a:focus-visible { background: var(--gt-paper); }
body.gt-redesign .gt-site-menu__panel .gt-site-menu__all {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 4px; background: #fff4e8; color: #9a4718;
}
body.gt-redesign .gt-site-menu__group { padding: 10px 0 7px; border-top: 1px solid var(--gt-line); }
body.gt-redesign .gt-site-menu__heading {
  margin: 0; padding: 2px 14px 5px; color: var(--gt-accent-strong);
  font: 800 10px/1.4 Arial, sans-serif; letter-spacing: .14em;
}
body.gt-redesign .gt-site-menu__group > a { display: block; padding: 8px 14px; font-size: 12px; }
/* グローバル基盤 ------------------------------------------------------- */
body.gt-redesign .main-contents { width: 100%; max-width: none; padding: 0 0 72px; background: transparent; }
body.gt-redesign .main-contents > .container,
body.gt-redesign .main-contents > .wrap,
body.gt-redesign .cv-area > .container,
body.gt-redesign .breadcrumb,
body.gt-redesign .gt-hero,
body.gt-redesign .gt-list-intro,
body.gt-redesign .gt-tool-categories { max-width: var(--gt-max); margin-left: auto; margin-right: auto; }
body.gt-redesign .main-contents > .container { width: calc(100% - 48px); padding: 0; }
body.gt-redesign .main-contents > .wrap { width: calc(100% - 48px); }
body.gt-redesign .main-contents .section_title { color: var(--gt-ink); }
body.gt-redesign button,
body.gt-redesign input,
body.gt-redesign textarea,
body.gt-redesign select { font-family: inherit; }
body.gt-redesign button:focus-visible,
body.gt-redesign input:focus-visible,
body.gt-redesign textarea:focus-visible,
body.gt-redesign select:focus-visible,
body.gt-redesign a:focus-visible,
body.gt-redesign summary:focus-visible { outline: 3px solid #d97724; outline-offset: 3px; }
body.gt-redesign .gt-kicker { margin: 0 0 20px; font: 800 11px/1.5 Arial, sans-serif; letter-spacing: .19em; color: var(--gt-muted); }
body.gt-redesign .gt-kicker span { color: var(--gt-ink-soft); font-family: inherit; letter-spacing: 0; }
/* OSの絵文字フォントに依存しない共通矢印。 */
body.gt-redesign .gt-arrow {
  position: relative; display: inline-block; flex: 0 0 auto;
  width: 16px; height: 16px; color: inherit; vertical-align: -.18em;
}
body.gt-redesign .gt-arrow::before,
body.gt-redesign .gt-arrow::after {
  content: ''; position: absolute; display: block; box-sizing: border-box;
}
body.gt-redesign .gt-arrow--ne::before {
  left: 1.5px; top: 7.25px; width: 13px; height: 1.5px;
  background: currentColor; border-radius: 2px; transform: rotate(-45deg);
}
body.gt-redesign .gt-arrow--ne::after {
  top: 1.5px; right: 1.5px; width: 7px; height: 7px;
  border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor;
}
body.gt-redesign .gt-arrow--right::before {
  left: 1.5px; top: 7.25px; width: 13px; height: 1.5px;
  background: currentColor; border-radius: 2px;
}
body.gt-redesign .gt-arrow--right::after {
  top: 4.25px; right: 1.5px; width: 6.5px; height: 6.5px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(-45deg);
}
body.gt-redesign .gt-arrow--up::before,
body.gt-redesign .gt-arrow--down::before {
  left: 7.25px; top: 1.5px; width: 1.5px; height: 13px;
  background: currentColor; border-radius: 2px;
}
body.gt-redesign .gt-arrow--up::after,
body.gt-redesign .gt-arrow--down::after {
  left: 4.25px; width: 6.5px; height: 6.5px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
}
body.gt-redesign .gt-arrow--up::after { top: 1.5px; transform: rotate(-135deg); }
body.gt-redesign .gt-arrow--down::after { bottom: 1.5px; transform: rotate(45deg); }
/* トップページ --------------------------------------------------------- */
body.gt-redesign.gt-home .main-contents > .container { max-width: none; width: 100%; }
body.gt-redesign .gt-hero {
  width: calc(100% - 48px); max-width: 1320px;
  padding: clamp(30px,6vw,78px) clamp(12px,3vw,42px) 50px; position: relative;
}
body.gt-redesign .gt-hero__inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; min-height: 525px; gap: 20px; }
body.gt-redesign .gt-hero__copy { position: relative; z-index: 1; }
body.gt-redesign .gt-hero h1 {
  font-size: clamp(47px,5.65vw,86px); line-height: 1.3; font-weight: 850;
  letter-spacing: -.082em; margin: 0 0 30px; color: var(--gt-ink);
  white-space: nowrap;
}
body.gt-redesign .gt-hero h1 em,
body.gt-redesign .gt-list-intro h2 em { font-style: normal; color: var(--gt-accent-strong); }
body.gt-redesign .gt-hero__lead { font-size: clamp(14px,1.25vw,17px); line-height: 2.15; color: var(--gt-ink-soft); margin: 0 0 35px; }
body.gt-redesign .gt-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 40px; }
body.gt-redesign .gt-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 26px;
  font-weight: 800; font-size: 13px; line-height: 1.4;
  padding: 16px 23px; border-radius: 3px; text-decoration: none;
  border: 1px solid var(--gt-ink); transition: transform .18s,background .18s,color .18s;
}
body.gt-redesign .gt-btn:hover { transform: translateY(-2px); }
body.gt-redesign .gt-btn--dark { background: var(--gt-accent-strong); border-color: var(--gt-accent-strong); color: #fff; }
body.gt-redesign .gt-btn--dark:hover { color: #fff; background: #bb5c1d; border-color: #bb5c1d; }
body.gt-redesign .gt-btn--outline { color: var(--gt-ink); background: transparent; }
body.gt-redesign .gt-btn--outline:hover { background: #fff; }
body.gt-redesign .gt-hero__micro { font-size: 11px; color: var(--gt-muted); margin: 0; }
body.gt-redesign .gt-hero-art { width: min(100%, 570px); aspect-ratio: 1; position: relative; place-self: center; isolation: isolate; }
body.gt-redesign .gt-hero-art__orb {
  position: absolute; width: 66%; height: 66%; top: 17%; left: 17%; border-radius: 50%;
  background: radial-gradient(circle at 27% 27%, #ffe5bf 0%, #f3ad5c 48%, #d87527 84%, #994116 100%);
  box-shadow: inset -22px -34px 70px rgba(112,48,14,.22), 0 35px 95px rgba(128,71,35,.14);
}
body.gt-redesign .gt-hero-art__ring {
  position: absolute; inset: 8%; border: 1px solid rgba(119,71,40,.24);
  border-radius: 50%; transform: rotate(-35deg) scaleY(.58);
}
body.gt-redesign .gt-hero-art__ring--two { inset: -6%; transform: rotate(52deg) scaleY(.68); border-color: rgba(119,71,40,.16); }
body.gt-redesign .gt-hero-art__label {
  position: absolute; z-index: 2; padding: 11px 15px; border-radius: 0;
  background: #fff; border: 1px solid #eadfd3;
  font: 800 11px/1 Arial,sans-serif; letter-spacing: .13em;
  box-shadow: 0 10px 30px rgba(72,45,27,.08);
}
body.gt-redesign .gt-hero-art__label--one { top: 15%; right: 11%; }
body.gt-redesign .gt-hero-art__label--two { bottom: 20%; left: 2%; }
body.gt-redesign .gt-hero-art__label--three { bottom: 11%; right: 14%; }
body.gt-redesign .gt-hero-art__icon {
  z-index: 2; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 86px; height: 86px; display: grid; place-items: center;
  background: var(--gt-ink); color: #fff; border-radius: 50%;
  font: 300 80px/1 Arial,sans-serif; box-shadow: 0 0 0 12px rgba(255,255,255,.18);
}
body.gt-redesign .gt-hero-art__icon span { transform: translateY(-5px); }
body.gt-redesign .gt-hero__scroll { display: inline-flex; align-items: center; gap: 8px; width: max-content; color: var(--gt-muted); font: 700 10px/1 Arial,sans-serif; text-decoration: none; letter-spacing: .18em; }
body.gt-redesign .gt-list-intro {
  width: calc(100% - 48px); display: flex; align-items: end; justify-content: space-between;
  border-top: 1px solid var(--gt-line); padding: clamp(56px,7vw,100px) 0 16px; gap: 20px;
}
body.gt-redesign .gt-list-intro h2 { font-size: clamp(37px,4.6vw,65px); line-height: 1.33; letter-spacing: -.065em; margin: 0; color: var(--gt-ink); }
body.gt-redesign .gt-list-intro > p { max-width: 345px; font-size: 14px; color: var(--gt-muted); margin-bottom: 16px; }
body.gt-redesign .gt-tool-categories { width: calc(100% - 48px); display: flex; flex-wrap: wrap; gap: 8px; padding: 25px 0 30px; }
body.gt-redesign .gt-tool-categories a {
  display: inline-flex; align-items: center; color: var(--gt-ink); font-size: 12px; font-weight: 750;
  border: 1px solid #d5c7ba; padding: 8px 18px; border-radius: 25px; background: transparent; text-decoration: none;
}
body.gt-redesign .gt-tool-categories a:hover { background: var(--gt-ink); color: #fff; }
/* トップページの既存serviceカードをカードグリッドに再配置。中のリンク先・文章は維持。 */
body.gt-redesign.gt-home .service_wrap {
  display: block !important; width: calc(100% - 48px) !important;
  max-width: var(--gt-max) !important; margin: 0 auto !important;
  padding: 0 !important; background: transparent !important; box-shadow: none !important;
}
body.gt-redesign.gt-home .gt-tool-group { margin: 0 0 clamp(48px,6vw,78px); scroll-margin-top: 110px; }
body.gt-redesign.gt-home .gt-tool-group:last-child { margin-bottom: 0; }
body.gt-redesign.gt-home .gt-tool-group__heading {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 24px;
  margin: 0; padding: 24px 0 18px; border-top: 1px solid var(--gt-line);
}
body.gt-redesign.gt-home .gt-tool-group__heading > div { min-width: 0; }
body.gt-redesign.gt-home .gt-tool-group__heading .gt-section-kicker {
  margin: 0 0 5px; color: var(--gt-accent-strong);
  font: 800 10px/1.4 Arial, sans-serif; letter-spacing: .15em;
}
body.gt-redesign.gt-home .gt-tool-group__heading h3 {
  margin: 0; color: var(--gt-ink); font-size: clamp(25px,3vw,38px);
  font-weight: 850; line-height: 1.25; letter-spacing: -.04em;
}
body.gt-redesign.gt-home .gt-tool-group__heading > p {
  flex: none; margin: 0 0 4px; color: var(--gt-muted);
  font: 700 10px/1.4 Arial, sans-serif; letter-spacing: .12em;
}
body.gt-redesign.gt-home .gt-tool-group__grid {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px;
}
body.gt-redesign.gt-home .service_wrap .service,
body.gt-redesign.gt-home .service_wrap .service._reverse {
  position: relative; display: flex !important; flex-direction: column !important;
  background: var(--gt-white); border: 1px solid var(--gt-line); margin: 0 !important;
  padding: 18px 18px 23px !important; border-radius: 4px;
  min-width: 0; gap: 0 !important; box-shadow: none;
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
body.gt-redesign.gt-home .service_wrap .service:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(70,45,28,.09); border-color: #ddb98f; }
body.gt-redesign.gt-home .service_wrap .service_img { position: relative; width: 100% !important; max-width: none !important; margin: 0 0 20px !important; height: 190px; flex: none; border-radius: 2px; overflow: hidden; background: #f2ece5; }
body.gt-redesign.gt-home .service_wrap .service_img img { display: block; width: 100% !important; height: 100% !important; object-fit: cover; margin: 0 !important; }
body.gt-redesign.gt-home .service_wrap .service_img .gt-service-image-link {
  position: absolute; inset: 0; z-index: 2; display: block;
  width: 100%; height: 100%; margin: 0; padding: 0;
  border: 0; border-radius: inherit; background: transparent; color: inherit;
  text-decoration: none; box-shadow: none;
}
body.gt-redesign.gt-home .service_wrap .service_img .gt-service-image-link img { pointer-events: none; }
body.gt-redesign.gt-home .service_wrap .service_img .gt-service-image-link:hover,
body.gt-redesign.gt-home .service_wrap .service_img .gt-service-image-link:visited {
  border: 0; background: transparent; color: inherit; text-decoration: none; box-shadow: none;
}
body.gt-redesign.gt-home .service_wrap .service_body { width: 100% !important; max-width: none !important; flex: 1; display: flex; flex-direction: column; padding: 0 !important; margin: 0 !important; text-align: left; }
body.gt-redesign.gt-home .service_wrap .service_body > a { display: block; text-decoration: none; }
body.gt-redesign.gt-home .service_wrap .service_title { margin: 0 0 12px !important; padding: 0 !important; background: transparent !important; border: 0 !important; text-align: left; line-height: 1.4; }
body.gt-redesign.gt-home .service_wrap .service_title .sub { display: block; color: var(--gt-muted); font-size: 11px !important; font-weight: 500; line-height: 1.6; margin-bottom: 6px; }
body.gt-redesign.gt-home .service_wrap .service_title .main { display: block; color: var(--gt-ink); font-size: clamp(17px,1.7vw,21px) !important; font-weight: 850; letter-spacing: -.035em; line-height: 1.5; }
body.gt-redesign.gt-home .service_wrap .service_text { flex: 1; margin: 0 0 22px !important; padding: 0 !important; font-size: 12px; line-height: 1.9; color: var(--gt-ink-soft); }
body.gt-redesign.gt-home .service_wrap .service_text p { margin: 0; font-size: inherit; line-height: inherit; }
body.gt-redesign.gt-home .service_wrap .toplink_btn { display: block; margin: auto 0 0 !important; padding: 0 !important; width: auto !important; background: none !important; }
body.gt-redesign.gt-home .service_wrap .toplink_btn a {
  display: flex; justify-content: space-between; align-items: center; width: 100%;
  padding: 11px 15px !important; background: var(--gt-accent-strong) !important;
  border: 1px solid var(--gt-accent-strong); border-radius: 0; color: #fff !important;
  font-size: 12px; font-weight: 800; text-decoration: none;
}
body.gt-redesign.gt-home .service_wrap .toplink_btn a:hover { background: #b5571b !important; border-color: #b5571b; }
/* ツール詳細のページヘッダー ------------------------------------------- */
body.gt-redesign.gt-tool .pageheader_l {
  position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: center;
  width: calc(100% - 48px) !important; max-width: var(--gt-max) !important;
  margin: clamp(27px,4vw,55px) auto 0 !important;
  padding: clamp(36px,5vw,70px) clamp(24px,5vw,80px) !important;
  min-height: 240px; height: auto !important; overflow: hidden;
  background: #f7e3cd !important; border: 0; border-radius: 4px;
}
body.gt-redesign.gt-tool .pageheader_l::before {
  content: ''; position: absolute; z-index: -1; width: 270px; height: 270px; border-radius: 50%;
  right: 5%; top: -100px; background: radial-gradient(circle at 30% 30%,#ffe0b4,#efa052 65%,#be5d20);
}
body.gt-redesign.gt-tool .pageheader_l::after {
  content: ''; position: absolute; z-index: -1; width: 390px; height: 120px;
  border: 1px solid rgba(132,70,32,.2); border-radius: 50%; right: 0; top: 50%; transform: rotate(-20deg);
}
body.gt-redesign.gt-tool .pagehaader_l_title {
  display: flex; flex-direction: column; gap: 10px;
  width: 100%; max-width: 900px; position: relative; inset: auto !important;
  padding: 0 !important; margin: 0 !important; color: var(--gt-ink) !important;
  background: none !important; text-align: left !important;
}
body.gt-redesign.gt-tool .pagehaader_l_title_sub { display: block; font-size: 12px !important; color: #a7501d !important; font-weight: 700; letter-spacing: .02em; line-height: 1.6; }
body.gt-redesign.gt-tool .pagehaader_l_title_main { display: block; max-width: 100%; font-size: clamp(29px,4.5vw,54px) !important; font-weight: 850; color: var(--gt-ink) !important; letter-spacing: -.055em; line-height: 1.32 !important; white-space: nowrap; }
body.gt-redesign.gt-tool .pagecatch {
  max-width: none !important; margin: 0 !important; padding: 37px 0 25px !important;
  color: var(--gt-ink-soft); background: transparent !important;
}
body.gt-redesign.gt-tool .pagecatch h2,
body.gt-redesign.gt-tool .pagecatch .section_title { margin: 0 0 16px !important; color: var(--gt-ink) !important; font-size: clamp(16px,1.7vw,22px) !important; font-weight: 750; border: 0; background: none; padding: 0 !important; text-align: left; line-height: 1.6; }
body.gt-redesign.gt-tool .pagecatch h3 { font-size: 14px; color: var(--gt-ink); margin: 22px 0 9px; font-weight: 750; }
body.gt-redesign.gt-tool .pagecatch ul {
  display: grid; gap: 7px; width: 100%; max-width: 100%;
  margin: 0; padding: 0; list-style: none;
}
body.gt-redesign.gt-tool .pagecatch li {
  position: relative; width: 100%; max-width: 100%; margin: 0;
  padding: 5px 0 5px 24px; color: var(--gt-ink-soft);
  font-size: 13px; line-height: 1.85; overflow-wrap: anywhere;
  list-style: none !important;
}
body.gt-redesign.gt-tool .pagecatch li::marker { content: ""; font-size: 0; }
body.gt-redesign.gt-tool .pagecatch li::before {
  content: ""; position: absolute; top: .9em; left: 3px;
  width: 8px; height: 8px; border-radius: 2px;
  background: var(--gt-accent-strong); transform: rotate(45deg);
  box-shadow: 0 0 0 3px #fff0e1;
}
body.gt-redesign.gt-tool .pagecatch p { line-height: 1.9; font-size: 14px; }
/* 既存の変換・生成フォームをカード状のワークスペースに統一。 */
body.gt-redesign.gt-tool .service_wrap {
  display: block; width: 100% !important; max-width: none !important;
  margin: 0 auto !important; padding: clamp(22px,4vw,48px) !important;
  background: var(--gt-white); border: 1px solid var(--gt-line); border-radius: 4px;
  box-shadow: 0 15px 55px rgba(71,43,25,.045);
}
body.gt-redesign.gt-tool .service_wrap:empty { display: none; }
body.gt-redesign.gt-tool .service_wrap > .section { padding: 0 !important; margin: 0 !important; border: 0; max-width: none; background: none !important; }
body.gt-redesign.gt-tool .service_wrap > .section + .section { margin-top: 40px !important; padding-top: 35px !important; border-top: 1px solid var(--gt-line); }
body.gt-redesign.gt-tool .service_wrap h3 { margin-top: 0; color: var(--gt-ink); font-weight: 800; }
body.gt-redesign.gt-tool .service_wrap button:not(.checkbtn) {
  cursor: pointer; max-width: 100%; background: var(--gt-accent-strong);
  color: white; border: 1px solid var(--gt-accent-strong); border-radius: 3px;
  padding: 11px 20px; font-weight: 750; line-height: 1.4; transition: background .16s, color .16s;
}
body.gt-redesign.gt-tool .service_wrap button:not(.checkbtn):hover { background: #b5571b; border-color: #b5571b; color: #fff; }
body.gt-redesign.gt-tool .service_wrap .checkbtn { cursor: pointer; }
body.gt-redesign.gt-tool .service_wrap .centerparts,
body.gt-redesign.gt-tool .service_wrap .button-center {
  display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
  gap: 12px; width: 100%; margin-top: clamp(24px,3vw,36px) !important;
  text-align: center;
}
body.gt-redesign.gt-tool .service_wrap .centerparts > button,
body.gt-redesign.gt-tool .service_wrap .button-center > button {
  margin-left: 0 !important; margin-right: 0 !important;
}
body.gt-redesign.gt-tool .service_wrap :is(input:not([type="checkbox"]):not([type="file"]),textarea,select) {
  border-color: #d5c7ba; border-radius: 3px; background-color: #fff;
}
body.gt-redesign.gt-tool .service_wrap textarea,
body.gt-redesign.gt-tool .service_wrap #output {
  display: block; width: 100%; max-width: 100%;
}
body.gt-redesign.gt-tool .service_wrap textarea {
  min-height: 280px; padding: 14px 16px; resize: vertical;
}
body.gt-redesign.gt-tool .service_wrap #input-code,
body.gt-redesign.gt-tool .service_wrap #inputCode,
body.gt-redesign.gt-tool .service_wrap #outputCode,
body.gt-redesign.gt-tool .service_wrap #inputText,
body.gt-redesign.gt-tool .service_wrap #qr-text {
  display: block; width: 100% !important; max-width: none !important;
}
body.gt-redesign.gt-tool .service_wrap #qr-text {
  min-height: 48px; padding: 11px 14px;
}
body.gt-redesign.gt-tool .service_wrap #output {
  min-height: 280px; padding: 14px 16px;
  border: 1px solid #d5c7ba; border-radius: 3px; background: #fff;
  white-space: pre-wrap; overflow: auto; overflow-wrap: anywhere;
}
body.gt-redesign.gt-tool .service_wrap input[type="file"] { max-width: 100%; }
body.gt-redesign.gt-tool .service_wrap input[type="file"]::file-selector-button {
  cursor: pointer; border: 1px solid #ddad7a; background: #fff1e1;
  color: var(--gt-ink); border-radius: 3px; padding: 10px 16px; margin-right: 12px; font-weight: 650;
}
/* 前回追加した複数画像ドラッグ＆ドロップエリアを統一 */
body.gt-redesign.gt-tool #image-drop-zone,
body.gt-redesign.gt-tool #webp-drop-zone { background: #fff8f0; border: 2px dashed #dda263; border-radius: 4px; max-width: none; }
body.gt-redesign.gt-tool #image-drop-zone.is-dragover,
body.gt-redesign.gt-tool #webp-drop-zone.is-dragover { background: #ffead3; border-color: var(--gt-accent-strong); }
/* 画像圧縮結果は、小さなサムネイル付きの縦リストで表示する。 */
body.gt-redesign.tool-file-compression-page #image-preview {
  display: flex; flex-direction: column; gap: 10px;
  width: min(100%,820px); margin: 0 auto;
}
body.gt-redesign.tool-file-compression-page #image-preview .image-container {
  display: grid; grid-template-columns: 84px minmax(0,1fr) auto;
  align-items: center; gap: 14px; width: 100%; margin: 0; padding: 10px 12px;
  border: 1px solid var(--gt-line); border-radius: 4px; background: #fffaf5;
}
body.gt-redesign.tool-file-compression-page .image-thumbnail {
  width: 84px; height: 64px; overflow: hidden;
  border: 1px solid #e0d4c8; border-radius: 3px; background: #fff;
}
body.gt-redesign.tool-file-compression-page .image-thumbnail img {
  display: block; width: 100% !important; height: 100% !important;
  max-width: none !important; object-fit: contain;
}
body.gt-redesign.tool-file-compression-page .image-file-info {
  min-width: 0; text-align: left; line-height: 1.55;
}
body.gt-redesign.tool-file-compression-page .image-file-name {
  margin-bottom: 3px; overflow-wrap: anywhere; color: var(--gt-ink);
  font-size: 13px; font-weight: 750;
}
body.gt-redesign.tool-file-compression-page .image-file-size {
  display: flex; flex-wrap: wrap; gap: 2px 14px;
  color: var(--gt-muted); font-size: 11px;
}
body.gt-redesign.tool-file-compression-page .image-compress-status {
  min-height: 1.55em; color: #a7501d; font-size: 11px;
}
body.gt-redesign.tool-file-compression-page .image-download-area {
  justify-self: end; text-align: right;
}
body.gt-redesign.tool-file-compression-page .download-link,
body.gt-redesign.tool-file-compression-page #download-all-link {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 9px 13px; border: 1px solid var(--gt-accent-strong); border-radius: 3px;
  background: var(--gt-accent-strong); color: #fff; font-size: 11px;
  font-weight: 750; line-height: 1.4; text-decoration: none;
}
body.gt-redesign.tool-file-compression-page .download-link:hover,
body.gt-redesign.tool-file-compression-page #download-all-link:hover {
  background: #b5571b; border-color: #b5571b; color: #fff;
}
/* パスワード設定 */
body.gt-redesign.gt-tool .pass_t {
  width: 100%; table-layout: fixed; border-collapse: collapse;
  border-top: 1px solid var(--gt-line);
}
body.gt-redesign.gt-tool .pass_t tr { border-bottom: 1px solid var(--gt-line); }
body.gt-redesign.gt-tool .pass_t th,
body.gt-redesign.gt-tool .pass_t td { padding: 22px 0; vertical-align: top; }
body.gt-redesign.gt-tool .pass_t th {
  width: min(32%,240px); padding-right: 28px; text-align: left;
}
body.gt-redesign.gt-tool .pass_t th label {
  display: inline-block; color: var(--gt-ink); font-weight: 750; line-height: 1.6;
}
body.gt-redesign.gt-tool .pass_t td { width: auto; padding-left: 24px; }
body.gt-redesign.gt-tool .number-stepper {
  display: grid; grid-template-columns: 42px minmax(74px,110px) 42px;
  align-items: stretch; gap: 6px; width: max-content; max-width: 100%;
}
body.gt-redesign.gt-tool .number-stepper input[type="number"] {
  width: 100% !important; min-width: 0; min-height: 42px; padding: 7px 8px;
  text-align: center; font-variant-numeric: tabular-nums;
  -moz-appearance: textfield;
}
body.gt-redesign.gt-tool .number-stepper input[type="number"]::-webkit-inner-spin-button,
body.gt-redesign.gt-tool .number-stepper input[type="number"]::-webkit-outer-spin-button {
  margin: 0; -webkit-appearance: none;
}
body.gt-redesign.gt-tool .number-stepper .number-stepper__button {
  display: inline-flex; align-items: center; justify-content: center;
  width: 42px; min-width: 42px; height: 42px; margin: 0 !important; padding: 0;
  border: 1px solid #ddad7a; border-radius: 3px; background: #fff1e1;
  color: var(--gt-ink); font-size: 20px; font-weight: 750; line-height: 1;
}
body.gt-redesign.gt-tool .number-stepper .number-stepper__button:hover {
  border-color: var(--gt-accent-strong); background: #ffe2c2;
}
body.gt-redesign.gt-tool .pass_t .checkbtn {
  display: inline-block; margin: 0 7px 8px 0 !important;
}
body.gt-redesign.gt-tool .symbol-group {
  display: flex !important; align-items: center; flex-wrap: wrap;
  gap: 8px; width: 100%; margin-top: 14px;
}
body.gt-redesign.gt-tool .symbol-group .passt {
  display: inline-flex !important; align-items: center; justify-content: center;
  gap: 5px; flex: 0 0 auto; min-width: 52px; margin: 0 !important;
  padding: 7px 9px; border: 1px solid var(--gt-line); border-radius: 3px;
  background: #fffaf5;
}
body.gt-redesign.gt-tool .symbol-group .passt input { margin: 0; }
body.gt-redesign.gt-tool .symbol-group .passt2 { line-height: 1; }
body.gt-redesign.gt-tool #copy-message {
  margin: 24px 0 10px; color: var(--gt-muted) !important; font-size: 12px;
}
body.gt-redesign.gt-tool #password-list {
  display: grid; grid-template-columns: minmax(0,1fr); gap: 8px;
  width: 100%; margin: 0;
}
body.gt-redesign.gt-tool #password-list .password-item {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  width: 100%; min-width: 0; padding: 11px 14px;
  border: 1px solid #d5c7ba; border-radius: 3px; background: #fff;
  color: var(--gt-ink); cursor: pointer; overflow-wrap: anywhere; user-select: all;
  font-family: Consolas, "SFMono-Regular", Menlo, Monaco, monospace;
  font-size: 14px; line-height: 1.6; letter-spacing: .025em;
  transition: border-color .16s, background .16s;
}
body.gt-redesign.gt-tool #password-list .password-item::after {
  content: "COPY"; flex: 0 0 auto; color: #a7501d;
  font: 750 9px/1 Arial,sans-serif; letter-spacing: .1em;
}
body.gt-redesign.gt-tool #password-list .password-item:hover {
  border-color: var(--gt-accent-strong); background: #fff8f0;
}
/* QR入力欄 */
body.gt-redesign.gt-tool .container_pass,
body.gt-redesign.gt-tool .input-group { width: 100%; }
body.gt-redesign.gt-tool .input-group #qr-text { width: 100% !important; min-width: 0; }
/* テキスト比較は左右を均等に使用する。 */
body.gt-redesign.tool-comparison-page .centerparts > .textdbx1,
body.gt-redesign.tool-comparison-page .centerparts > .textdbx2,
body.gt-redesign.tool-comparison-page .text-container > .textdbx1,
body.gt-redesign.tool-comparison-page .text-container > .textdbx2,
body.gt-redesign.tool-comparison-page .text-container > .char-count {
  flex: 1 1 0; width: 0; min-width: 0;
}
body.gt-redesign.tool-comparison-page .text-container {
  display: flex; align-items: stretch; gap: 16px; width: 100%;
}
body.gt-redesign.tool-comparison-page .textdbx1 textarea,
body.gt-redesign.tool-comparison-page .textdbx2 textarea,
body.gt-redesign.tool-comparison-page .text-box {
  display: block; width: 100% !important; max-width: none !important;
  min-height: 320px; padding: 14px 16px;
  border: 1px solid #d5c7ba; border-radius: 3px; background: #fff;
  white-space: pre-wrap; overflow: auto; overflow-wrap: anywhere;
}
/* パスワードテーブル・サムネイル・比較UIの幅を保護 */
body.gt-redesign.gt-tool .container_pass,
body.gt-redesign.gt-tool .pass_t,
body.gt-redesign.gt-tool .image-container,
body.gt-redesign.gt-tool #thumbnails,
body.gt-redesign.gt-tool .text-container,
body.gt-redesign.gt-tool .centerparts { max-width: 100%; }
body.gt-redesign.gt-tool #map { position: relative; min-height: 420px; }
body.gt-redesign.tool-geocoding-page #map .crosshair {
  position: absolute; z-index: 1000; top: 50%; left: 50%;
  width: 18px; height: 18px; border: 2px solid #c95718; border-radius: 50%;
  background: rgba(255,255,255,.72); box-shadow: 0 0 0 1px rgba(255,255,255,.92),0 2px 8px rgba(44,41,38,.28);
  pointer-events: none; transform: translate(-50%,-50%);
}
body.gt-redesign.tool-geocoding-page #map .crosshair::before,
body.gt-redesign.tool-geocoding-page #map .crosshair::after {
  content: ""; position: absolute; top: 50%; left: 50%;
  background: #c95718; box-shadow: 0 0 0 1px rgba(255,255,255,.8);
  transform: translate(-50%,-50%);
}
body.gt-redesign.tool-geocoding-page #map .crosshair::before { width: 42px; height: 2px; }
body.gt-redesign.tool-geocoding-page #map .crosshair::after { width: 2px; height: 42px; }
/* 地図ページ固有の既存 .wrap の横並びレイアウトは維持。 */
body.gt-redesign.gt-tool .main-contents > .wrap { padding: 0; margin-top: 12px; }
body.gt-redesign.tool-geocoding-page .main-contents > .wrap {
  display: grid; grid-template-columns: minmax(400px,.95fr) minmax(0,1.05fr);
  align-items: stretch; gap: 24px;
}
body.gt-redesign.tool-geocoding-page .panel {
  min-width: 0; padding: clamp(22px,3vw,34px);
  border: 1px solid var(--gt-line); border-radius: 4px; background: var(--gt-white);
}
body.gt-redesign.tool-geocoding-page .panel .row,
body.gt-redesign.tool-geocoding-page .panel #addr,
body.gt-redesign.tool-geocoding-page .panel #results,
body.gt-redesign.tool-geocoding-page .panel #pickedOut { width: 100%; min-width: 0; }
body.gt-redesign.tool-geocoding-page .panel #addr,
body.gt-redesign.tool-geocoding-page .panel #results,
body.gt-redesign.tool-geocoding-page .panel #pickedOut,
body.gt-redesign.tool-geocoding-page .grid-copy input {
  padding: 11px 13px; border: 1px solid #d5c7ba;
  border-radius: 3px; background: #fff;
}
body.gt-redesign.tool-geocoding-page .panel #addr { display: block; margin-top: 7px; }
body.gt-redesign.tool-geocoding-page .grid-copy {
  display: grid; grid-template-columns: minmax(0,1fr) max-content;
  align-items: stretch; gap: 10px; width: 100%;
}
body.gt-redesign.tool-geocoding-page .grid-copy input { width: 100%; min-width: 0; }
body.gt-redesign.tool-geocoding-page .grid-copy button {
  min-width: 126px; white-space: nowrap;
}
body.gt-redesign.tool-geocoding-page #centerLatLng { min-width: 0; }
/* 利用規約・お知らせ一覧などの固定ページ ----------------------------- */
body.gt-redesign.gt-content-page .main-contents > .container {
  padding-top: clamp(34px,5vw,64px); padding-bottom: clamp(24px,4vw,48px);
}
body.gt-redesign .gt-static-content,
body.gt-redesign .gt-news-archive {
  width: 100%; max-width: 980px; margin: 0 auto;
}
body.gt-redesign .gt-static-content {
  padding: clamp(28px,5vw,66px); background: var(--gt-white);
  border: 1px solid var(--gt-line); border-radius: 4px;
  box-shadow: 0 15px 55px rgba(71,43,25,.045);
}
body.gt-redesign .gt-static-content__intro {
  padding-bottom: clamp(28px,4vw,46px);
}
body.gt-redesign .gt-static-content__intro > p:first-child {
  margin: 0; color: var(--gt-ink); font-size: 15px; font-weight: 650; line-height: 2;
}
body.gt-redesign .gt-static-content__date {
  margin: 18px 0 0; color: var(--gt-muted); font-size: 11px; text-align: right;
}
body.gt-redesign .gt-static-content > section {
  padding: clamp(26px,3vw,38px) 0; border-top: 1px solid var(--gt-line);
}
body.gt-redesign .gt-static-content > section:last-child { padding-bottom: 0; }
body.gt-redesign .gt-static-content h2 {
  margin: 0 0 15px; color: var(--gt-ink);
  font-size: clamp(18px,2vw,24px); line-height: 1.55; letter-spacing: -.025em;
}
body.gt-redesign .gt-static-content p {
  margin: 0; color: var(--gt-ink-soft); font-size: 13px; line-height: 2;
}
body.gt-redesign .gt-static-content p + p { margin-top: 10px; }
body.gt-redesign .gt-static-content ol {
  display: grid; gap: 8px; margin: 0; padding-left: 1.6em;
}
body.gt-redesign .gt-static-content li {
  padding-left: 4px; color: var(--gt-ink-soft); font-size: 13px; line-height: 1.9;
}
body.gt-redesign .gt-static-content li::marker { color: var(--gt-accent-strong); font-weight: 800; }
body.gt-redesign .gt-news-archive__intro {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(230px,.5fr);
  align-items: end; gap: 14px 40px; padding: 0 0 clamp(25px,4vw,40px);
}
body.gt-redesign .gt-news-archive__intro .gt-section-kicker { grid-column: 1 / -1; margin-bottom: -4px; }
body.gt-redesign .gt-news-archive__intro h2 {
  margin: 0; color: var(--gt-ink); font-size: clamp(28px,3.8vw,46px);
  line-height: 1.35; letter-spacing: -.045em;
}
body.gt-redesign .gt-news-archive__intro > p:last-child {
  margin: 0 0 6px; color: var(--gt-muted); font-size: 12px; line-height: 1.9;
}
body.gt-redesign .gt-news-archive__list {
  list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--gt-line);
}
body.gt-redesign .gt-news-archive__item {
  margin: 0; padding: 0; border-bottom: 1px solid var(--gt-line); list-style: none;
}
body.gt-redesign .gt-news-archive__item::marker { content: ''; }
body.gt-redesign .gt-news-archive__item > a {
  display: grid; grid-template-columns: 118px minmax(0,1fr) auto;
  align-items: center; gap: 24px; min-height: 126px; padding: 23px 6px;
  color: var(--gt-ink); text-decoration: none; transition: padding .16s,color .16s;
}
body.gt-redesign .gt-news-archive__item > a:hover {
  padding-left: 13px; padding-right: 13px; color: var(--gt-accent-strong);
}
body.gt-redesign .gt-news-archive__item time {
  color: var(--gt-muted); font: 700 11px/1.5 Arial,sans-serif; letter-spacing: .06em;
}
body.gt-redesign .gt-news-archive__copy { display: grid; gap: 7px; min-width: 0; }
body.gt-redesign .gt-news-archive__copy strong { font-size: 14px; line-height: 1.65; }
body.gt-redesign .gt-news-archive__copy > span {
  color: var(--gt-muted); font-size: 12px; line-height: 1.75;
}
body.gt-redesign .gt-news-archive__arrow { justify-self: end; }
body.gt-redesign .gt-pagination {
  display: grid; justify-items: center; gap: 18px; padding-top: clamp(28px,4vw,44px);
}
body.gt-redesign .gt-pagination__summary {
  margin: 0; color: var(--gt-muted); font-size: 13px; line-height: 1.7;
}
body.gt-redesign .gt-pagination__controls {
  display: grid; grid-template-columns: minmax(82px,1fr) auto minmax(82px,1fr);
  align-items: center; gap: clamp(12px,3vw,28px); width: min(100%,520px);
}
body.gt-redesign .gt-pagination__direction {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 8px 14px; color: var(--gt-ink); font-size: 13px;
  font-weight: 750; line-height: 1.4; text-decoration: none;
  border: 1px solid var(--gt-line); border-radius: 999px; background: var(--gt-white);
  transition: color .16s,border-color .16s,background-color .16s;
}
body.gt-redesign a.gt-pagination__direction:hover {
  color: var(--gt-accent-strong); border-color: var(--gt-accent); background: #fffaf5;
}
body.gt-redesign .gt-pagination__direction.is-disabled { color: #b9ada4; background: #f8f4f0; }
body.gt-redesign .gt-pagination__direction-mark { font-size: 16px; line-height: 1; }
body.gt-redesign .gt-pagination__pages {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  margin: 0; padding: 0; list-style: none;
}
body.gt-redesign .gt-pagination__pages li { margin: 0; padding: 0; list-style: none; }
body.gt-redesign .gt-pagination__pages li::marker { content: ''; }
body.gt-redesign .gt-pagination__pages a,
body.gt-redesign .gt-pagination__pages span {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; color: var(--gt-ink); font: 750 13px/1 Arial,sans-serif;
  text-decoration: none; border: 1px solid var(--gt-line); border-radius: 50%; background: var(--gt-white);
}
body.gt-redesign .gt-pagination__pages a:hover {
  color: var(--gt-accent-strong); border-color: var(--gt-accent); background: #fffaf5;
}
body.gt-redesign .gt-pagination__pages span[aria-current="page"] {
  color: #fff; border-color: var(--gt-accent-strong); background: var(--gt-accent-strong);
}
/* 更新情報・ツール一覧・パンくず・フッター ----------------------------- */
body.gt-redesign .cv-area {
  background: #f2ebe4; border-top: 1px solid #e2d6cb;
  padding: clamp(60px,7vw,100px) 24px; color: var(--gt-ink);
}
body.gt-redesign .cv-area > .container { width: 100%; padding: 0; }
body.gt-redesign .cv-area a { color: inherit; }
/* パンくず下のSNSシェア。外部SDKは読み込まず、クリック時のみ共有先へ移動する。 */
body.gt-redesign .gt-share-area { background: #fbf7f2; border-top: 1px solid #eadfd5; }
body.gt-redesign .gt-share {
  position: relative; box-sizing: border-box; display: flex; align-items: center; justify-content: center;
  gap: clamp(18px,3vw,34px); width: calc(100% - 48px); max-width: var(--gt-max); margin: 0 auto;
  padding: 14px 0 22px;
}
body.gt-redesign .gt-share__copy { display: flex; align-items: center; }
body.gt-redesign .gt-share__copy h2 {
  margin: 0; color: var(--gt-accent-strong); white-space: nowrap;
  font: 800 10px/1.4 Arial,sans-serif; letter-spacing: .16em;
}
body.gt-redesign .gt-share__actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; }
body.gt-redesign .gt-share__button {
  appearance: none; display: inline-grid; width: 46px; height: 46px; min-width: 46px; padding: 0; place-items: center;
  border: 1px solid #d6c7ba; border-radius: 50%; background: #fff; color: var(--gt-ink); cursor: pointer;
  box-shadow: 0 6px 16px rgba(72,45,28,.08); font-family: inherit; text-decoration: none;
  transition: color .16s,background .16s,border-color .16s,box-shadow .16s,transform .16s;
}
body.gt-redesign .gt-share__button:hover { transform: translateY(-3px); box-shadow: 0 9px 20px rgba(72,45,28,.14); }
body.gt-redesign .gt-share__button:focus-visible { outline: 3px solid rgba(219,111,43,.34); outline-offset: 3px; }
body.gt-redesign .gt-share__button[aria-disabled="true"] { pointer-events: none; opacity: .55; }
body.gt-redesign .gt-share__button[hidden] { display: none; }
body.gt-redesign .gt-share__button > span { display: grid; place-items: center; font-family: Arial,sans-serif; font-weight: 800; line-height: 1; }
body.gt-redesign .gt-share__button--x { color: #171717; }
body.gt-redesign .gt-share__button--x > span { font-size: 15px; }
body.gt-redesign .gt-share__button--x:hover { border-color: #171717; background: #171717; color: #fff; }
body.gt-redesign .gt-share__button--facebook { color: #1877f2; }
body.gt-redesign .gt-share__button--facebook > span { font-family: Arial,sans-serif; font-size: 24px; transform: translateY(2px); }
body.gt-redesign .gt-share__button--facebook:hover { border-color: #1877f2; background: #1877f2; color: #fff; }
body.gt-redesign .gt-share__button--line { color: #06b94f; }
body.gt-redesign .gt-share__button--line > span {
  position: relative; width: 27px; height: 20px; border-radius: 7px; background: #06c755; color: #fff;
  font-size: 7px; letter-spacing: -.04em;
}
body.gt-redesign .gt-share__button--line > span::after {
  content: ""; position: absolute; right: 4px; bottom: -3px; border-width: 4px 1px 0 5px;
  border-style: solid; border-color: #06c755 transparent transparent transparent; transform: rotate(-18deg);
}
body.gt-redesign .gt-share__button--line:hover { border-color: #06c755; background: #06c755; }
body.gt-redesign .gt-share__button--line:hover > span { background: #fff; color: #06a846; }
body.gt-redesign .gt-share__button--line:hover > span::after { border-top-color: #fff; }
body.gt-redesign .gt-share__button--copy,
body.gt-redesign .gt-share__button--native { color: var(--gt-accent-strong); }
body.gt-redesign .gt-share__button--copy:hover,
body.gt-redesign .gt-share__button--native:hover { border-color: var(--gt-accent-strong); background: var(--gt-accent-strong); color: #fff; }
body.gt-redesign .gt-share__link-icon { position: relative; width: 24px; height: 24px; }
body.gt-redesign .gt-share__link-icon::before,
body.gt-redesign .gt-share__link-icon::after { content: ""; position: absolute; width: 10px; height: 6px; border: 2px solid currentColor; border-radius: 6px; transform: rotate(-36deg); }
body.gt-redesign .gt-share__link-icon::before { left: 1px; top: 10px; }
body.gt-redesign .gt-share__link-icon::after { right: 1px; top: 6px; }
body.gt-redesign .gt-share__native-icon::before { content: "↗"; font-size: 21px; font-weight: 500; }
body.gt-redesign .gt-share__status {
  position: absolute; right: 0; bottom: 4px; left: 0; min-height: 1.3em; margin: 0;
  color: #9a4718; font-size: 10px; text-align: center;
}
body.gt-redesign .gt-section-kicker {
  margin: 0 0 14px; color: #ad581f;
  font: 800 10px/1.4 Arial,sans-serif; letter-spacing: .18em;
}
body.gt-redesign .gt-updates {
  display: grid; grid-template-columns: minmax(210px,.7fr) minmax(0,1.6fr);
  gap: clamp(38px,7vw,100px); align-items: start;
  border-top: 1px solid #d5c5b7; border-bottom: 1px solid #d5c5b7;
  padding: clamp(34px,4vw,58px) 0;
}
body.gt-redesign .gt-updates__heading .bottom_30 {
  margin: 0 0 15px !important; color: var(--gt-ink);
  font-size: clamp(30px,3.4vw,47px); line-height: 1.25; letter-spacing: -.045em;
}
body.gt-redesign .gt-updates__lead {
  max-width: 310px; margin: 0; color: var(--gt-muted); font-size: 12px; line-height: 1.9;
}
body.gt-redesign .gt-updates .news-list {
  list-style: none; margin: 0; padding: 0; border-top: 1px solid #d8cabe;
}
body.gt-redesign .gt-updates .news-list .item {
  display: grid; grid-template-columns: 112px minmax(0,1fr); align-items: center;
  min-height: 76px; margin: 0; padding: 0; border-bottom: 1px solid #d8cabe;
}
body.gt-redesign .gt-updates .news-list .item::marker { content: ''; }
body.gt-redesign .gt-updates .news-list p { margin: 0; }
body.gt-redesign .gt-updates .news-list .date {
  color: #7a6f66; font: 700 11px/1.5 Arial,sans-serif; letter-spacing: .05em;
}
body.gt-redesign .gt-updates .news-list .title a {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  min-height: 75px; padding: 15px 4px 15px 0; color: var(--gt-ink);
  font-size: 13px; font-weight: 700; line-height: 1.7; text-decoration: none;
  transition: color .16s, padding .16s;
}
body.gt-redesign .gt-updates .news-list .title a:hover { color: var(--gt-accent-strong); padding-left: 5px; }
body.gt-redesign .gt-updates__more {
  display: flex; align-items: center; justify-content: space-between; gap: 18px;
  width: min(100%,220px); margin: 20px 0 0 auto; padding: 10px 14px;
  color: var(--gt-ink); border: 1px solid #cdbba9; border-radius: 3px;
  font-size: 11px; font-weight: 800; text-decoration: none;
  transition: background .16s,color .16s,border-color .16s;
}
body.gt-redesign .gt-updates__more:hover {
  color: #fff; background: var(--gt-accent-strong); border-color: var(--gt-accent-strong);
}
body.gt-redesign .gt-tools-directory {
  max-width: var(--gt-max); margin: clamp(44px,6vw,82px) auto 0;
  overflow: hidden; color: #fff9f2; background: #99471b; border-radius: 4px;
}
body.gt-redesign .gt-tools-directory__heading {
  display: grid; grid-template-columns: minmax(0,1.5fr) minmax(210px,.5fr);
  align-items: end; gap: 20px; max-width: none !important; width: 100% !important;
  margin: 0 !important; padding: clamp(34px,4vw,56px) clamp(24px,4vw,54px) !important;
}
body.gt-redesign .gt-tools-directory__heading .gt-section-kicker {
  grid-column: 1 / -1; margin-bottom: -1px; color: #ffd09f;
}
body.gt-redesign .gt-tools-directory__heading h2 {
  margin: 0; color: #fff9f2; font-size: clamp(28px,3.4vw,47px);
  line-height: 1.35; letter-spacing: -.05em;
}
body.gt-redesign .gt-tools-directory__heading > p:last-child {
  margin: 0 0 7px; color: #f3d1b3; font-size: 12px; line-height: 1.8;
}
body.gt-redesign .gt-tools-directory .footerul01 {
  width: auto; margin: 0 clamp(24px,4vw,54px) clamp(28px,4vw,52px); padding: 0;
}
body.gt-redesign .gt-tools-directory__groups {
  counter-reset: gt-tool-link; display: grid; grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid rgba(255,244,233,.28);
  border-left: 1px solid rgba(255,244,233,.28);
}
body.gt-redesign .gt-tools-directory__group {
  min-width: 0; margin: 0; padding: 0;
  border-right: 1px solid rgba(255,244,233,.28);
  border-bottom: 1px solid rgba(255,244,233,.28);
}
body.gt-redesign .gt-tools-directory__category {
  min-height: 76px; margin: 0; padding: 17px;
  display: flex; flex-direction: column; justify-content: center; gap: 3px;
  color: #fff9f2; background: rgba(255,244,233,.07);
  font-size: 15px; font-weight: 800; line-height: 1.45;
}
body.gt-redesign .gt-tools-directory__category span {
  color: #f3c293; font: 800 9px/1.3 Arial,sans-serif; letter-spacing: .14em;
}
body.gt-redesign .gt-tools-directory .menu {
  display: grid; grid-template-columns: 1fr;
  list-style: none; margin: 0; padding: 0; border: 0;
}
body.gt-redesign .gt-tools-directory .menu li {
  counter-increment: gt-tool-link; min-width: 0; margin: 0; padding: 0;
  border-top: 1px solid rgba(255,244,233,.2);
}
body.gt-redesign .gt-tools-directory .menu li::marker { content: ''; }
body.gt-redesign .gt-tools-directory .menu a {
  display: grid; grid-template-columns: 27px minmax(0,1fr) auto; align-items: center; gap: 11px;
  min-height: 64px; padding: 12px 17px; color: #fff9f2; text-decoration: none;
  font-size: 12px; font-weight: 700; line-height: 1.55; transition: background .16s,color .16s;
}
body.gt-redesign .gt-tools-directory .menu a::before {
  content: counter(gt-tool-link, decimal-leading-zero);
  color: #f3c293; font: 700 9px/1 Arial,sans-serif; letter-spacing: .08em;
}
body.gt-redesign .gt-tools-directory .menu a:hover { background: #f2ad62; color: #3a1d0d; }
body.gt-redesign .gt-tools-directory .menu a:hover::before { color: #71320f; }
/* 自動広告がセクション間に入っても、コンテンツ幅や余白を壊さない。 */
body.gt-redesign .cv-area > .google-auto-placed {
  max-width: var(--gt-max) !important; margin: clamp(36px,5vw,64px) auto !important;
}
body.gt-redesign .breadcrumb {
  box-sizing: border-box; width: calc(100% - 48px); max-width: var(--gt-max);
  padding: 18px 0 !important; margin: auto !important; background: transparent !important;
}
body.gt-redesign .breadcrumb_list {
  display: flex; align-items: center; flex-wrap: wrap; gap: 0;
  list-style: none !important; padding: 0 !important; margin: 0 !important;
}
body.gt-redesign .breadcrumb_list > li {
  display: inline-flex; align-items: center; min-width: 0;
  list-style: none !important; padding: 0 !important; margin: 0 !important;
}
body.gt-redesign .breadcrumb_list > li::marker { content: ""; }
body.gt-redesign .breadcrumb_list > li + li::before {
  content: "/"; flex: 0 0 auto; margin: 0 10px; color: #b9a99b;
}
body.gt-redesign .breadcrumb a {
  display: inline-block; color: var(--gt-muted); font-size: 12px; line-height: 1.6;
}
body.gt-redesign > footer,
body.gt-redesign .footer,
body.gt-redesign .footer_wrap { background: var(--gt-footer); color: #fff7ee; }
body.gt-redesign > footer a,
body.gt-redesign .footer a,
body.gt-redesign .footer_wrap a { color: #fff7ee; }
body.gt-redesign .footer {
  position: relative; overflow: hidden; margin: 0; padding: 0;
  border-top: 1px solid rgba(255,255,255,.13);
}
body.gt-redesign .footer::before {
  content: ''; position: absolute; pointer-events: none;
  width: clamp(280px,35vw,540px); aspect-ratio: 1; right: clamp(-270px,-14vw,-120px); top: -60%;
  border: 1px solid rgba(255,236,216,.24); border-radius: 50%;
  box-shadow: 0 0 0 58px rgba(255,236,216,.04), 0 0 0 116px rgba(255,236,216,.025);
}
body.gt-redesign .gt-footer__inner {
  position: relative; z-index: 1; width: calc(100% - 48px); max-width: var(--gt-max);
  margin: 0 auto; padding: clamp(52px,6vw,88px) 0 24px;
}
body.gt-redesign .gt-footer__main {
  display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr);
  align-items: start; gap: clamp(48px,9vw,130px); padding-bottom: clamp(50px,6vw,84px);
}
body.gt-redesign .gt-footer__brand-block { min-width: 0; }
body.gt-redesign .gt-footer__brand {
  display: inline-flex; align-items: center; gap: 11px; color: #f5f3ee; text-decoration: none;
}
body.gt-redesign .gt-footer__brand .gt-site-brand__mark { width: 38px; height: 38px; }
body.gt-redesign .gt-footer__brand .gt-site-brand__mark span { background: #f5f3ee; }
body.gt-redesign .gt-footer__brand .gt-site-brand__mark span:nth-child(2) { background: #ffd2a4; }
body.gt-redesign .gt-footer__brand-name {
  font: 900 clamp(32px,4vw,50px)/1 Arial,Helvetica,sans-serif; letter-spacing: -.075em;
}
body.gt-redesign .gt-footer__brand-name span { color: #ffd2a4; }
body.gt-redesign .gt-footer__brand small {
  align-self: flex-end; margin-bottom: 4px; color: #f0c9aa;
  font: 500 10px/1.4 Arial,sans-serif; letter-spacing: .04em;
}
body.gt-redesign .gt-footer__tagline {
  margin: clamp(28px,4vw,47px) 0 0; color: #f5f3ee;
  font-size: clamp(28px,3.8vw,50px); font-weight: 800; line-height: 1.4; letter-spacing: -.055em;
}
body.gt-redesign .gt-footer__navigation {
  display: grid; grid-template-columns: 1fr; align-content: start;
  border-top: 1px solid rgba(255,255,255,.2);
}
body.gt-redesign .gt-footer__label {
  margin: 0; padding: 18px 0 13px; color: #ffe0c2;
  font: 800 9px/1.4 Arial,sans-serif; letter-spacing: .18em;
}
body.gt-redesign .footer .footer_menu {
  display: grid; list-style: none; margin: 0; padding: 0;
  border-top: 1px solid rgba(255,255,255,.12);
}
body.gt-redesign .footer .footer_menu li { margin: 0; padding: 0; }
body.gt-redesign .footer .footer_menu li::marker { content: ''; }
body.gt-redesign .footer .footer_menu a {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  min-height: 54px; padding: 10px 2px; color: #fff2e6;
  border-bottom: 1px solid rgba(255,255,255,.12); text-decoration: none;
  font-size: 12px; font-weight: 700; transition: color .16s,padding .16s;
}
body.gt-redesign .footer .footer_menu .gt-arrow { color: #f2c4a1; }
body.gt-redesign .footer .footer_menu a:hover { padding-left: 7px; color: #fff; }
body.gt-redesign .gt-footer__page-top {
  display: flex; align-items: center; justify-content: space-between; gap: 18px;
  margin-top: 28px; padding: 13px 17px; color: #7b3512 !important;
  background: #ffd5ad; border: 1px solid #ffd5ad; border-radius: 3px;
  font: 800 10px/1.4 Arial,sans-serif; letter-spacing: .11em; text-decoration: none;
  transition: background .16s,color .16s;
}
body.gt-redesign .gt-footer__page-top:hover { background: transparent; color: #f5f3ee !important; }
body.gt-redesign .gt-footer__bottom {
  display: flex; justify-content: space-between; align-items: center; gap: 24px;
  padding-top: 22px; border-top: 1px solid rgba(255,255,255,.16);
}
body.gt-redesign .gt-footer__bottom p {
  margin: 0; color: #efc5a6; font: 700 9px/1.5 Arial,sans-serif; letter-spacing: .12em;
}
body.gt-redesign .gt-footer__bottom .footer_copyright { letter-spacing: .04em; text-transform: none; }
/* アクセシビリティ・デバイス別レイアウト ------------------------------- */
@media (max-width: 980px) {
  body.gt-redesign .gt-site-nav { display: none; }
  body.gt-redesign.tool-geocoding-page .main-contents > .wrap { grid-template-columns: 1fr; }
  body.gt-redesign.gt-home .gt-tool-group__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.gt-redesign .gt-hero__inner { min-height: 460px; }
  body.gt-redesign .gt-updates { grid-template-columns: 1fr; gap: 28px; }
  body.gt-redesign .gt-updates__lead { max-width: 520px; }
  body.gt-redesign .gt-tools-directory__groups { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.gt-redesign .gt-footer__main { grid-template-columns: minmax(0,1fr) minmax(260px,.7fr); gap: 52px; }
}
@media (max-width: 690px) {
  body.gt-redesign .gt-site-header__inner { height: 70px; padding: 0 16px; }
  body.gt-redesign .gt-site-brand__name { font-size: 22px; }
  body.gt-redesign .gt-site-brand small { display: none; }
  body.gt-redesign .gt-site-menu summary { padding: 11px 13px; }
  body.gt-redesign .gt-site-menu__panel { right: -4px; }
  body.gt-redesign .gt-share { width: calc(100% - 32px); padding: 11px 0 20px; flex-direction: column; gap: 7px; }
  body.gt-redesign .gt-share__actions { gap: 9px; }
  body.gt-redesign .gt-share__button { width: 44px; height: 44px; min-width: 44px; }
  body.gt-redesign .main-contents > .container,
  body.gt-redesign .main-contents > .wrap,
  body.gt-redesign .gt-hero,
  body.gt-redesign .gt-list-intro,
  body.gt-redesign .gt-tool-categories,
  body.gt-redesign .breadcrumb { width: calc(100% - 32px) !important; }
  body.gt-redesign .gt-hero { padding: 50px 0 34px; }
  body.gt-redesign .gt-hero__inner { grid-template-columns: 1fr; gap: 12px; }
  body.gt-redesign .gt-hero h1 { font-size: clamp(40px,8.4vw,64px); margin: 0 0 22px; }
  body.gt-redesign .gt-hero__lead { font-size: 13px; margin-bottom: 22px; }
  body.gt-redesign .gt-hero__actions { margin-bottom: 24px; }
  body.gt-redesign .gt-btn { flex: 1; min-width: 180px; font-size: 12px; justify-content: space-between; }
  body.gt-redesign .gt-hero-art { width: min(100%,300px); margin: 0 auto; }
  body.gt-redesign .gt-hero-art__icon { width: 65px; height: 65px; font-size: 62px; }
  body.gt-redesign .gt-hero-art__label { padding: 8px 10px; font-size: 9px; }
  body.gt-redesign .gt-hero__scroll { margin-top: 12px; }
  body.gt-redesign .gt-list-intro { padding: 52px 0 15px; flex-direction: column; align-items: flex-start; }
  body.gt-redesign .gt-list-intro h2 { font-size: 43px; }
  body.gt-redesign .gt-list-intro > p { margin: 0; }
  body.gt-redesign .gt-tool-categories { padding: 22px 0; }
  body.gt-redesign .gt-tool-categories a { font-size: 11px; }
  body.gt-redesign.gt-home .service_wrap { width: calc(100% - 32px) !important; }
  body.gt-redesign.gt-home .gt-tool-group { margin-bottom: 46px; }
  body.gt-redesign.gt-home .gt-tool-group__heading { padding: 20px 0 14px; }
  body.gt-redesign.gt-home .gt-tool-group__heading h3 { font-size: 25px; }
  body.gt-redesign.gt-home .gt-tool-group__grid { grid-template-columns: 1fr; gap: 13px; }
  body.gt-redesign.gt-home .service_wrap .service { padding: 14px !important; }
  body.gt-redesign.gt-home .service_wrap .service_img { height: 215px; }
  body.gt-redesign.gt-home .service_wrap .service_title .main { font-size: 21px !important; }
  body.gt-redesign.gt-tool .pageheader_l { width: calc(100% - 32px) !important; min-height: 215px; padding: 28px 23px !important; }
  body.gt-redesign.gt-tool .pageheader_l::before { width: 170px; height: 170px; right: -70px; top: -56px; }
  body.gt-redesign.gt-tool .pageheader_l::after { right: -130px; }
  body.gt-redesign.gt-tool .pagehaader_l_title_main { font-size: clamp(27px,7vw,39px) !important; }
  body.gt-redesign.gt-tool .pagehaader_l_title_sub { font-size: 11px !important; }
  body.gt-redesign.gt-tool .pagecatch { padding: 27px 0 18px !important; }
  body.gt-redesign.gt-tool .service_wrap { padding: 22px 15px !important; }
  body.gt-redesign.gt-tool .service_wrap > .section + .section { padding-top: 25px !important; margin-top: 28px !important; }
  body.gt-redesign.gt-tool .service_wrap button:not(.checkbtn) { padding: 10px 13px; }
  body.gt-redesign.gt-content-page .main-contents > .container { padding-top: 26px; }
  body.gt-redesign .gt-static-content { padding: 25px 19px; }
  body.gt-redesign .gt-static-content__intro > p:first-child { font-size: 13px; }
  body.gt-redesign .gt-news-archive__intro { grid-template-columns: 1fr; gap: 10px; }
  body.gt-redesign .gt-news-archive__intro .gt-section-kicker { margin-bottom: 0; }
  body.gt-redesign .gt-news-archive__intro > p:last-child { margin: 0; }
  body.gt-redesign .gt-news-archive__item > a {
    grid-template-columns: minmax(0,1fr) auto; gap: 10px 16px;
    min-height: 0; padding: 22px 2px;
  }
  body.gt-redesign .gt-news-archive__item time { grid-column: 1 / -1; }
  body.gt-redesign .gt-news-archive__item > a:hover { padding-left: 2px; padding-right: 2px; }
  body.gt-redesign.tool-geocoding-page .grid-copy {
    grid-template-columns: minmax(0,1fr) minmax(112px,auto);
  }
  body.gt-redesign.tool-file-compression-page #image-preview .image-container {
    grid-template-columns: 64px minmax(0,1fr); gap: 10px; padding: 9px;
  }
  body.gt-redesign.tool-file-compression-page .image-thumbnail { width: 64px; height: 52px; }
  body.gt-redesign.tool-file-compression-page .image-download-area {
    grid-column: 1 / -1; justify-self: stretch;
  }
  body.gt-redesign.tool-file-compression-page .download-link { display: flex; width: 100%; }
  body.gt-redesign.gt-tool .pass_t,
  body.gt-redesign.gt-tool .pass_t tbody,
  body.gt-redesign.gt-tool .pass_t tr,
  body.gt-redesign.gt-tool .pass_t th,
  body.gt-redesign.gt-tool .pass_t td { display: block; width: 100%; }
  body.gt-redesign.gt-tool .pass_t tr { padding: 18px 0; }
  body.gt-redesign.gt-tool .pass_t th {
    padding: 0 0 9px; text-align: left;
  }
  body.gt-redesign.gt-tool .pass_t td { padding: 0; }
  body.gt-redesign.tool-comparison-page .centerparts > .textdbx1,
  body.gt-redesign.tool-comparison-page .centerparts > .textdbx2,
  body.gt-redesign.tool-comparison-page .text-container > .textdbx1,
  body.gt-redesign.tool-comparison-page .text-container > .textdbx2,
  body.gt-redesign.tool-comparison-page .text-container > .char-count {
    flex-basis: 100%; width: 100%;
  }
  body.gt-redesign.tool-comparison-page .text-container { flex-wrap: wrap; }
  body.gt-redesign .cv-area { padding: 52px 16px; }
  body.gt-redesign .gt-updates { padding: 31px 0; gap: 22px; }
  body.gt-redesign .gt-updates__heading .bottom_30 { font-size: 34px; }
  body.gt-redesign .gt-updates .news-list .item {
    grid-template-columns: 1fr; gap: 4px; min-height: 0; padding: 17px 0 14px;
  }
  body.gt-redesign .gt-updates .news-list .title a { min-height: 0; padding: 0; }
  body.gt-redesign .gt-updates .news-list .title a:hover { padding-left: 0; }
  body.gt-redesign .gt-updates__more { width: 100%; margin-top: 18px; }
  body.gt-redesign .gt-tools-directory { margin-top: 42px; }
  body.gt-redesign .gt-tools-directory__heading { grid-template-columns: 1fr; padding: 30px 22px 26px !important; }
  body.gt-redesign .gt-tools-directory__heading h2 { font-size: 31px; }
  body.gt-redesign .gt-tools-directory__heading > p:last-child { margin: 0; }
  body.gt-redesign .gt-tools-directory .footerul01 { margin: 0 22px 26px; }
  body.gt-redesign .gt-tools-directory__groups { grid-template-columns: 1fr; }
  body.gt-redesign .gt-tools-directory__category { min-height: 68px; }
  body.gt-redesign .gt-tools-directory .menu a { min-height: 64px; }
  body.gt-redesign .gt-footer__inner { width: calc(100% - 32px); padding-top: 48px; }
  body.gt-redesign .gt-footer__main { grid-template-columns: 1fr; gap: 44px; padding-bottom: 48px; }
  body.gt-redesign .gt-footer__tagline { font-size: clamp(28px,9vw,40px); }
  body.gt-redesign .gt-footer__navigation { max-width: none; }
  body.gt-redesign .gt-footer__bottom { align-items: flex-start; flex-direction: column; gap: 7px; }

  /* スマホでは本文16px・補助情報13pxを下限とする。アイコン内の記号は対象外。 */
  body.gt-redesign { font-size: 16px; }
  body.gt-redesign .main-contents :where(p,li,dt,dd,label,legend,input,textarea,select,option,button,summary,a,th,td,pre),
  body.gt-redesign .cv-area :where(p,li,a),
  body.gt-redesign .footer :where(p,li,a) {
    font-size: 16px !important;
  }
  body.gt-redesign .gt-site-menu summary { font-size: 13px !important; }
  body.gt-redesign .gt-site-menu__heading { font-size: 13px !important; }
  body.gt-redesign .gt-site-menu__group > a { font-size: 15px !important; }
  body.gt-redesign .gt-tool-categories a { font-size: 14px !important; }

  body.gt-redesign .gt-kicker,
  body.gt-redesign .gt-hero__micro,
  body.gt-redesign .gt-hero__scroll,
  body.gt-redesign .gt-hero-art__label,
  body.gt-redesign.gt-home .gt-tool-group__heading .gt-section-kicker,
  body.gt-redesign.gt-home .gt-tool-group__heading > p,
  body.gt-redesign.gt-home .service_wrap .service_title .sub,
  body.gt-redesign.gt-tool .pagehaader_l_title_sub,
  body.gt-redesign.tool-file-compression-page .image-file-size,
  body.gt-redesign.tool-file-compression-page .image-compress-status,
  body.gt-redesign.gt-tool #copy-message,
  body.gt-redesign.gt-tool #password-list .password-item::after,
  body.gt-redesign .gt-static-content__date,
  body.gt-redesign .gt-section-kicker,
  body.gt-redesign .gt-news-archive__item time,
  body.gt-redesign .gt-share__copy h2,
  body.gt-redesign .gt-share__status,
  body.gt-redesign .gt-updates .news-list .date,
  body.gt-redesign .gt-tools-directory__category span,
  body.gt-redesign .gt-tools-directory .menu a::before,
  body.gt-redesign .breadcrumb a,
  body.gt-redesign .gt-footer__brand small,
  body.gt-redesign .gt-footer__label,
  body.gt-redesign .gt-footer__page-top,
  body.gt-redesign .gt-footer__bottom p {
    font-size: 13px !important;
  }
  body.gt-redesign.gt-tool .pagecatch h3,
  body.gt-redesign .gt-news-archive__copy strong,
  body.gt-redesign .gt-news-archive__copy > span,
  body.gt-redesign .gt-tools-directory__category,
  body.gt-redesign.tool-image-resize-page .resize-related > a strong {
    font-size: 16px !important;
  }

  body.gt-redesign.tool-favicon-page .favicon-step__number,
  body.gt-redesign.tool-favicon-page .favicon-code-block__heading p,
  body.gt-redesign.tool-favicon-page .favicon-clear-button,
  body.gt-redesign.tool-favicon-page .favicon-status,
  body.gt-redesign.tool-favicon-page .favicon-source-card > p,
  body.gt-redesign.tool-favicon-page .favicon-color-field > span,
  body.gt-redesign.tool-favicon-page .favicon-shape-options b,
  body.gt-redesign.tool-favicon-page .favicon-text-field small,
  body.gt-redesign.tool-favicon-page .favicon-browser-tab,
  body.gt-redesign.tool-favicon-page .favicon-browser-address,
  body.gt-redesign.tool-favicon-page .favicon-preview-grid strong,
  body.gt-redesign.tool-favicon-page .favicon-preview-grid article > span,
  body.gt-redesign.tool-favicon-page .favicon-downloads__heading > span,
  body.gt-redesign.tool-favicon-page .favicon-download-row__name,
  body.gt-redesign.tool-favicon-page .favicon-download-row__meta,
  body.gt-redesign.tool-favicon-page .favicon-download-link,
  body.gt-redesign.tool-favicon-page .favicon-code-block pre,
  body.gt-redesign.tool-favicon-page .favicon-copy-status {
    font-size: 13px !important;
  }
  body.gt-redesign.tool-favicon-page .favicon-source-preview span,
  body.gt-redesign.tool-favicon-page .favicon-segmented span,
  body.gt-redesign.tool-favicon-page .favicon-check,
  body.gt-redesign.tool-favicon-page .favicon-empty-output p {
    font-size: 16px !important;
  }

  body.gt-redesign.tool-image-resize-page .resize-step__number,
  body.gt-redesign.tool-image-resize-page .resize-step__heading p,
  body.gt-redesign.tool-image-resize-page .resize-status,
  body.gt-redesign.tool-image-resize-page .resize-field__label,
  body.gt-redesign.tool-image-resize-page .resize-field__control > span,
  body.gt-redesign.tool-image-resize-page .resize-file-meta,
  body.gt-redesign.tool-image-resize-page .resize-progress p,
  body.gt-redesign.tool-image-resize-page .resize-result-summary,
  body.gt-redesign.tool-image-resize-page .resize-download-link,
  body.gt-redesign.tool-image-resize-page .resize-content-kicker,
  body.gt-redesign.tool-image-resize-page .resize-howto-list li::before,
  body.gt-redesign.tool-image-resize-page .resize-example-grid article > span,
  body.gt-redesign.tool-image-resize-page .resize-related > a span {
    font-size: 13px !important;
  }
  body.gt-redesign.tool-image-resize-page .resize-drop-zone__help,
  body.gt-redesign.tool-image-resize-page .resize-mode legend,
  body.gt-redesign.tool-image-resize-page .resize-check,
  body.gt-redesign.tool-image-resize-page .resize-setting-note,
  body.gt-redesign.tool-image-resize-page .resize-howto-list span,
  body.gt-redesign.tool-image-resize-page .resize-example-grid p {
    font-size: 16px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.gt-redesign .service_wrap .service,
  body.gt-redesign .gt-btn,
  body.gt-redesign .gt-site-menu__symbol,
  body.gt-redesign .footer a { transition: none !important; }
}
