* {
  box-sizing:border-box;
}

a {
  color:var(--dt-blue);
  
  text-decoration:none;
}

a:hover {
  text-decoration:underline;
}

img {
  max-width:100%;
  
  height:auto;
  
  display:block;
}

.dt-container {
  width:min(1180px,calc(100% - 40px));
  
  margin-inline:auto;
}

.dt-narrow {
  width:min(840px,calc(100% - 40px));
}

.dt-hero {
  background:linear-gradient(135deg,#eff5ff,#fff);
  
  padding:86px 0 70px;
}

.dt-hero h1 {
  font-size:clamp(34px,5vw,60px);
  
  line-height:1.15;
  
  margin:0 0 12px;
}

.dt-kicker {
  margin:0 0 8px;
  
  color:var(--dt-blue);
  
  font-weight:600;
  
  letter-spacing:.08em;
  
  text-transform:uppercase;
}

.dt-hero p {
  font-size:18px;
  
  color:var(--dt-muted);
  
  max-width:760px;
}

.dt-page-header {
  background:var(--dt-bg-soft);
  
  padding:48px 0;
  
  border-bottom:1px solid var(--dt-border);
}

.dt-term-description {
  max-width:760px;
  
  color:var(--dt-muted);
}

.dt-section {
  padding:56px 0;
}

.dt-section-muted {
  background:var(--dt-bg-soft);
}

.dt-section-heading {
  display:flex;
  
  align-items:center;
  
  justify-content:space-between;
  
  gap:20px;
  
  margin-bottom:24px;
}

.dt-section-heading h2 {
  margin:0;
  
  font-size:30px;
}

.dt-content-area {
  padding:44px 0;
}

.dt-content-area-app {
  padding-top:0;
}

.dt-empty {
  background:#fff;
  
  border:1px solid var(--dt-border);
  
  border-radius:var(--dt-radius);
  
  padding:28px;
}

.dt-content {
  font-size:17px;
}

.dt-content h2,.dt-content h3 {
  line-height:1.35;
}

.dt-required {
  display:inline-block;
  
  margin-left:4px;
  
  padding:2px 6px;
  
  border-radius:999px;
  
  background:#fee2e2;
  
  color:#b91c1c;
  
  font-size:.72rem;
  
  font-weight:800;
  
  vertical-align:middle;
}

.dt-field-error {
  margin-top:5px;
  
  color:#b91c1c;
  
  font-size:.84rem;
  
  font-weight:800;
}

.dt-hero-meta-stack {
  display:grid;
  
  gap:10px;
  
  margin-top:16px;
}

.dt-detail-panel .dt-content {
  font-size:17px;
  
  line-height:1.9;
}

body {
  margin:0;
  
  color:var(--dt-text);
  
  font-family:var(--dt-font-body) !important;
  
  background:var(--dt-bg);
  
  line-height:1.7;
  
  font-feature-settings:"palt" 1;
  
  -webkit-font-smoothing:antialiased;
  
  text-rendering:optimizeLegibility;
}

.dt-area-pref-block-head .dt-kicker {
  margin:0 0 5px;
  
  color:#2b6eaa;
  
  font-size:14px;
}

.dt-page-header h1 {
  font-size:clamp(28px,3.4vw,40px);
  
  margin:0;
  
  line-height:1.18;
  
  overflow-wrap:anywhere;
}

.dt-section-heading h2 {
  font-size:clamp(23px,2.2vw,29px);
  
  line-height:1.22;
}

.dt-content h2 {
  font-size:clamp(20px,2vw,24px);
  
  line-height:1.32;
}

.dt-section-heading h2,.dt-content h2 {
  font-size:clamp(19px,1.7vw,22px);
  
  line-height:1.36;
  
  font-weight:600;
  
  letter-spacing:0;
}

.dt-section-heading h2,.dt-content h2 {
  font-size:clamp(19px,1.7vw,22px);
  
  line-height:1.36;
  
  font-weight:600;
  
  letter-spacing:0;
}

.dt-content h2 {
  margin-top:1.55em;
  
  line-height:1.38;
}

:root {
  --dt-blue:#2457a6;
  
  --dt-blue-dark:#173f80;
  
  --dt-accent:#f58a2a;
  
  --dt-text:#182033;
  
  --dt-muted:#667085;
  
  --dt-border:#e6e9ef;
  
  --dt-bg:#ffffff;
  
  --dt-bg-soft:#f6f8fb;
  
  --dt-shadow:0 10px 30px rgba(24,32,51,.08);
  
  --dt-radius:10px;
  
  --dt-font-body:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",YuGothic,Meiryo,"Segoe UI",sans-serif;
  
  --dt-font-heading:var(--dt-font-body);
  
  --dt-font-ui:var(--dt-font-body);
  
  --dt-place-card-radius:5px;
  
  --dt-place-card-overlay:linear-gradient(180deg,rgba(15,23,42,.04) 0%,rgba(15,23,42,.18) 38%,rgba(15,23,42,.88) 100%);
  
  --dt-place-card-title-size:15.5px;
  
  --dt-place-card-title-weight:600;
  
  --dt-place-card-title-line:1.35;
  
  --dt-place-card-meta-size:10.5px;
  
  --dt-place-card-status-size:11px;
}

@media (hover:none) and (pointer:coarse) and (max-width:1100px) {
  .dt-page-header {
    padding:24px 0;
  }
  .dt-page-header .dt-kicker,.dt-page-header h1 {
    display:none;
  }
}

@media (hover:none) and (pointer:coarse) and (orientation:landscape) and (max-width:1100px) {
  .dt-page-header {
    padding:10px 0;
  }
}

@media (max-width:760px), (hover:none) and (pointer:coarse) and (max-width:1100px) {
  body.post-type-archive-dt_listing .dt-container,body.tax-dt_listing_category .dt-container,body.tax-dt_region .dt-container,body.tax-dt_admin_area .dt-container,body.tax-dt_area .dt-container,body.tax-dt_feature .dt-container {
    max-width:calc(100vw - 28px) !important;
  }
}

@media(max-width:560px) {
  .dt-container {
    width:min(100% - 28px,1180px);
  }
  .dt-hero {
    padding:54px 0;
  }
  .dt-page-header {
    padding:34px 0;
  }
}

@media (max-width:640px) {
  .dt-page-header h1 {
    font-size:clamp(25px,7vw,31px);
  }
  .dt-section-heading h2 {
    font-size:clamp(21px,6vw,26px);
  }
  .dt-content h2 {
    font-size:20px;
  }
  .dt-section-heading h2,.dt-content h2 {
    font-size:clamp(19px,5.2vw,22px);
    
    line-height:1.38;
  }
  .dt-section-heading h2,.dt-content h2 {
    font-size:clamp(19px,5vw,22px);
    
    line-height:1.38;
  }
}

@media (max-width:760px) {
  .dt-page-header {
    padding:24px 0;
  }
  .dt-page-header .dt-kicker,.dt-page-header h1 {
    display:none;
  }
}
