@charset "UTF-8";

[type="button"], [type="submit"], button{
  border-color: transparent; color: inherit; border-radius: 0;
}
[type="button"]:focus, [type="button"]:hover,
[type="submit"]:focus, [type="submit"]:hover,
button:focus, button:hover{
  background-color: transparent; color: inherit;
}

.elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
  padding: 116px 0 44px !important;   
  min-height: 600px;
  border-width: 0 !important;
}

.iter-hero-en, .iter-hero-main, .iter-hero-body,
.iter-hero-region{ text-align: left !important; }
.elementor-2 .elementor-element.iter-hero-en{ text-align: left !important; }

.iter-hero-en     > .elementor-widget-container,
.iter-hero-main   > .elementor-widget-container,
.iter-hero-body   > .elementor-widget-container,
.iter-hero-region > .elementor-widget-container{
  max-width: 1160px; margin-left: auto; margin-right: auto;
}

.iter-hero-body strong{ color: #1a1a20 !important; }

.iter-hero-en .elementor-heading-title{
  display: inline-flex; align-items: center; gap: 12px;
  font-size: 12px !important; line-height: 1.6 !important;
  letter-spacing: 3.5px !important; font-weight: 500 !important;
  text-transform: uppercase; color: #2E2E37 !important; margin-bottom: 24px;
}

.iter-hero-main .elementor-heading-title{
  font-family: "Noto Sans JP", Sans-serif;
  font-weight: 900; font-size: clamp(28px, 3.6vw, 48px);
  line-height: 1.42; letter-spacing: .01em;
  color: #1a1a20 !important; margin: 0;
}

.iter-hero-body > .elementor-widget-container{ margin-top: 30px; }

.iter-hero-body strong,
.oi-fig-lead strong{ white-space: nowrap; }

.md-fig .oi-fig-lead strong{ white-space: normal; }
.iter-hero-body p{
  font-size: 16px; line-height: 2.1; font-weight: 400;
  color: #33333a; max-width: 960px; margin: 0;   
}

.iter-btn{
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 14px; font-weight: 600; letter-spacing: 1px;
  padding: 14px 26px; border: 1.5px solid #ffffff; border-radius: 0;
  text-decoration: none; transition: background .2s, color .2s;
}
.iter-btn .arw{ font-weight: 400; }

.iter-hero-region > .elementor-widget-container{ margin-top: 240px; }
.region-line{
  padding-top: 28px;
  display: flex; flex-wrap: wrap; gap: 14px 44px; align-items: baseline;
}
.region-line .rl-label{
  font-size: 12px; letter-spacing: 3px; color: #c6c6ca;
  font-weight: 600; text-transform: uppercase;
}
.region-line .rl-items{ display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.region-line .rl-items span{ font-weight: 700; font-size: 17px; color: #ffffff; }
.region-line .rl-items span small{
  font-weight: 400; font-size: 11px; color: #b6b6bb;
  letter-spacing: 2px; margin-left: 9px; text-transform: uppercase;
}

@media (max-width: 1024px){
  .elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
    padding: 72px 0 60px !important; min-height: 0;
  }
  .iter-hero-en > .elementor-widget-container, .iter-hero-main > .elementor-widget-container,
  .iter-hero-body > .elementor-widget-container,
  .iter-hero-region > .elementor-widget-container{ max-width: 100%; }
  .region-line .rl-items{ gap: 8px; }
}
@media (max-width: 767px){
  .iter-btn{ padding: 14px 22px; font-size: 13.5px; }
  .iter-hero-body p{ font-size: 15px; line-height: 2; }
}

.elementor-2 .elementor-element[data-iter="exec"] > .elementor-container{
  flex-wrap: wrap;
}
.elementor-2 .elementor-element[data-iter="exec"] > .elementor-container{ max-width: 1080px; }

.elementor-2 .elementor-element[data-iter="exec"] > .elementor-container > .elementor-column{
  width: 25% !important;      
}

@media (max-width: 1024px){
  .elementor-2 .elementor-element[data-iter="exec"] > .elementor-container > .elementor-column{
    width: 50% !important;
  }
}
@media (max-width: 767px){

  .elementor-2 .elementor-element[data-iter="exec"] > .elementor-container > .elementor-column{
    width: 50% !important;
  }
}

.iter-tel{ text-align: center; margin-bottom: 34px; }
.iter-tel p{ font-size: 15px; line-height: 2; margin: 0; }
.iter-tel strong{ font-size: 26px; letter-spacing: .04em; }

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-background-overlay{
  background-image: url("/assets/media/2026/08/hero.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  filter: none !important;              
}

.elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
  border-width: 0 !important;
}

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container{
  min-height: 56.25vw !important;   
}
@media (max-width: 767px){

  .elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container{
    min-height: 78vw !important;
  }
  .elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-background-overlay{
    background-position: center bottom !important;
  }
}

.elementor-2 .elementor-section:has(.elementor-widget-menu-anchor),
.elementor-2 .elementor-section:has(.elementor-widget-menu-anchor) > .elementor-container,
.elementor-2 .elementor-section:has(.elementor-widget-menu-anchor) .elementor-element-populated{
  min-height: 0 !important;
  height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden;
}

.elementor-2 .elementor-element.elementor-element-66499b5{
  padding: 0 200px !important;
}
.elementor-2 .elementor-element.elementor-element-66499b5 > .elementor-container,
.elementor-2 .elementor-element.elementor-element-7b7f82e > .elementor-container{
  max-width: none !important;
  padding: 0 !important;
}
.elementor-2 .elementor-element.elementor-element-7b7f82e > .elementor-container{
  display: flex; align-items: center; justify-content: space-between; height: 80px;
}
.elementor-2 .elementor-element.elementor-element-7b7f82e .elementor-element-populated{
  padding: 0 !important;
}

.elementor-2 .elementor-element.elementor-element-fc2de41 img{
  height: 46px; width: auto; max-width: none; object-fit: contain;
}

.iter-nav .nav-links{
  display: flex; align-items: center; justify-content: flex-end;
}
.iter-nav .nav-panel{
  display: flex; align-items: center; gap: 34px; justify-content: flex-end;
}

.iter-nav .nav-burger{
  display: none; width: 40px; height: 40px; padding: 9px 7px;
  background: none; border: 0; cursor: pointer;
  flex-direction: column; justify-content: space-between; align-items: stretch;
}
.iter-nav .nav-burger span{
  display: block; height: 2px; background: #141416; border-radius: 1px;
  transition: transform .25s ease, opacity .2s ease;
}
.nav-links.is-open .nav-burger span:nth-child(1){ transform: translateY(9px) rotate(45deg); }
.nav-links.is-open .nav-burger span:nth-child(2){ opacity: 0; }
.nav-links.is-open .nav-burger span:nth-child(3){ transform: translateY(-9px) rotate(-45deg); }
.iter-nav .nav-links a.link{
  font-size: 14px; color: #1f1f22; font-weight: 500; letter-spacing: .5px;
  position: relative; padding: 5px 0; text-decoration: none; white-space: nowrap;
}
.iter-nav .nav-links a.link::after{
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px;
  background: #141416; transform: scaleX(0); transform-origin: left;
  transition: transform .25s ease;
}
.iter-nav .nav-links a.link:hover::after{ transform: scaleX(1); }

.iter-nav .nav-btn{
  padding: 8px 20px; font-size: 12.5px; font-weight: 600; letter-spacing: .6px;
  background: #141416; border: 1.5px solid #141416; color: #ffffff;
  white-space: nowrap;   
}
.iter-nav .nav-btn:hover{ background: transparent; color: #141416; }

.iter-nav .nav-links{ position: relative; }
.iter-nav .lang-switch{

  position: absolute; right: 0; bottom: calc(50% + 24px);
  font-size: 11.5px; font-weight: 600; letter-spacing: .6px;

  color: #141416; text-decoration: underline; text-underline-offset: 2px;
  text-decoration-thickness: 1px;
  white-space: nowrap; line-height: 1; padding: 0;
  transition: text-decoration-thickness .2s ease;
}
.iter-nav .lang-switch:hover{ text-decoration-thickness: 2px; }

@media (max-width: 1159px){
  .elementor-2 .elementor-element.elementor-element-7b7f82e > .elementor-container{
    flex-wrap: nowrap; height: 72px;
  }
  .elementor-2 .elementor-element.elementor-element-2f6157c{ width: auto !important; flex: 0 0 auto; }
  .elementor-2 .elementor-element.elementor-element-bf7553d{ width: auto !important; flex: 1 1 auto; }
  .iter-nav .nav-links{ justify-content: flex-end; flex-wrap: nowrap; }
  .iter-nav .nav-burger{ display: flex; margin-right: -7px; }

  .iter-nav .nav-panel{
    display: none;
    position: fixed; left: 0; right: 0; top: 72px; z-index: 999;
    flex-direction: column; align-items: stretch; gap: 0;
    background: #ffffff; border-top: 1px solid #e3e3e6;
    box-shadow: 0 12px 24px rgba(0,0,0,.10);
    padding: 6px 200px 18px;
  }
  .iter-nav .nav-links.is-open .nav-panel{ display: flex; }
  .iter-nav .nav-panel a.link{
    display: block; font-size: 15px; padding: 14px 2px;
    border-bottom: 1px solid #ececee;
  }
  .iter-nav .nav-panel a.link::after{ display: none; }
  .iter-nav .nav-panel .nav-btn{
    margin-top: 16px; justify-content: center; padding: 14px 20px; font-size: 14px;
  }

  .iter-nav .lang-switch{
    position: static; margin-right: 14px; font-size: 12.5px; padding: 6px 2px;
  }
}

@media (max-width: 1024px){
  .elementor-2 .elementor-element.elementor-element-66499b5{ padding: 0 20% !important; }
  .elementor-2 .elementor-element.elementor-element-fc2de41 img{ height: 40px; }
  .iter-nav .nav-panel{ padding: 6px 20% 18px; }
}

@media (max-width: 767px){
  .elementor-2 .elementor-element.elementor-element-66499b5{ padding: 0 10% !important; }
  .elementor-2 .elementor-element.elementor-element-7b7f82e > .elementor-container{ height: 68px; }
  .iter-nav .nav-panel{ top: 68px; padding: 6px 10% 18px; }
}

.elementor-2 .elementor-element.elementor-element-fc2de41{ text-align: left !important; }
.elementor-2 .elementor-element.elementor-element-fc2de41 .elementor-widget-container{
  margin: 0 !important; padding: 0 !important;
}
.elementor-2 .elementor-element.elementor-element-fc2de41 img{ margin-left: 0 !important; }

.elementor-2 .elementor-element.iter-cname{
  font-family: "Noto Sans JP", Sans-serif !important;
  font-weight: 700 !important;
}

.elementor-2 .elementor-element.iter-ccard .elementor-widget-text-editor p{
  margin: 0 !important;
}

.iter-hero-body strong{ font-weight: 700; color: #ffffff; }

.elementor-2 section[data-iter]{ background-image: none !important; }
.elementor-2 section[data-iter] > .elementor-background-overlay{
  background-image: none !important;
  opacity: 1 !important;
  filter: none !important;
}

.elementor-2 section[data-iter="service"],
.elementor-2 section[data-iter="cert"],
.elementor-2 section[data-iter="career"],
.elementor-2 section[data-iter="profile"],
.elementor-2 section[data-iter="service"] > .elementor-background-overlay,
.elementor-2 section[data-iter="cert"] > .elementor-background-overlay,
.elementor-2 section[data-iter="career"] > .elementor-background-overlay,
.elementor-2 section[data-iter="profile"] > .elementor-background-overlay{
  background-color: #E8E8E8 !important;
}

.elementor-2 section[data-iter="member-head"],
.elementor-2 section[data-iter="exec"],
.elementor-2 section[data-iter="manager"],
.elementor-2 section[data-iter="consult-row"],
.elementor-2 section[data-iter="message"],
.elementor-2 section[data-iter="contact"],
.elementor-2 section[data-iter="member-head"] > .elementor-background-overlay,
.elementor-2 section[data-iter="exec"] > .elementor-background-overlay,
.elementor-2 section[data-iter="manager"] > .elementor-background-overlay,
.elementor-2 section[data-iter="consult-row"] > .elementor-background-overlay,
.elementor-2 section[data-iter="message"] > .elementor-background-overlay,
.elementor-2 section[data-iter="contact"] > .elementor-background-overlay{
  background-color: #FFFFFF !important;
}

.elementor-2 section[data-iter="service"] .elementor-element-832f292 .elementor-heading-title,
.elementor-2 section[data-iter="service"] .elementor-element-f68e8a3{
  color: #2E2E37 !important;
}

.elementor-2 .elementor-element.elementor-element-cdbe355{
  padding: 44px 0 36px !important;
}
.elementor-2 .elementor-element.elementor-element-cdbe355 .elementor-element-populated{
  padding-top: 0 !important; padding-bottom: 0 !important;
}
.elementor-2 .elementor-element.elementor-element-cdbe355 .elementor-widget:not(:last-child){
  margin-bottom: 14px !important;
}

.elementor-2 section[data-iter]{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.elementor-2 section[data-iter="cert"]{      padding-top: 4px !important; }   
.elementor-2 section[data-iter="message"]{    padding-top: 10px !important; }  
.elementor-2 section[data-iter="contact"]{    padding-top: 10px !important; }  

.elementor-2 section[data-iter="oi"]{ margin-top: -20px !important; }

.elementor-2 section[data-iter="service"]{
  margin-top: -32px !important;   
  padding-top: 103px !important;  
}

.elementor-2 section[data-iter="exec"]{ margin-top: -40px !important; }

.elementor-2 section[data-iter="exec"]{ margin-bottom: -7px !important; }  

@media (max-width: 1024px){
  .elementor-2 section[data-iter="service"],
  .elementor-2 section[data-iter="exec"]{ margin-top: 0 !important; }

  .elementor-2 section[data-iter="service"]{ padding-top: 71px !important; }
}

.oi-fig{
  background: #ffffff; color: #2E2E37;
  padding: 40px 40px 32px; margin: 0 0 64px;
  text-align: left;
}
.oi-fig-title{
  font-size: 22px; font-weight: 700; letter-spacing: .04em;
  margin: 0 0 14px; color: #1a1a20;
}
.oi-fig-lead{ font-size: 14.5px; line-height: 1.9; margin: 0 0 26px; color: #33333a; }
.oi-fig-lead p{ margin: 0 0 14px; }
.oi-fig-lead p:last-child{ margin-bottom: 0; }

.oi-fig-bridge{
  font-size: 14.5px; line-height: 1.9; color: #33333a; margin: 0;
}

.oi-bridge-note{
  display: block; margin: 4px 0; font-size: 11.5px; line-height: 1.6; color: #55555c;
}

.oi-elems-head{
  display: flex; align-items: center; gap: 10px;
  font-size: 15px; font-weight: 700; color: #1a1a20;
  letter-spacing: .02em; line-height: 1.6; margin: 0 0 14px;
}
.oi-elems-head::before{
  content: ""; width: 7px; height: 7px; background: #2E2E37; flex-shrink: 0;
}

.oi-elems{ display: flex; align-items: stretch; flex-wrap: wrap; gap: 10px; margin-bottom: 56px; }
.oi-elem{
  flex: 1 1 0; min-width: 150px;
  border: 2px solid #6f6f78; padding: 11px 14px;
  font-size: 14px; font-weight: 700; color: #1a1a20;
  text-align: center; white-space: nowrap;
}
.oi-plus{ align-self: center; font-size: 20px; font-weight: 700; color: #4a4a52; }

.oi-chart{
  display: grid;
  grid-template-columns: 36px 62px 172px 56px 152px 72px 1fr;
  gap: 0 10px; align-items: start;
}
.oi-chart > *{ height: var(--oi-bar-h, 460px); position: relative; }

.oi-axis{ font-size: 11px; color: #55555c; }
.oi-axis span{ position: absolute; right: 0; transform: translateY(-50%); }
.oi-axis span:nth-child(1){ top: 0; }
.oi-axis span:nth-child(2){ top: 50%; }
.oi-axis::after{
  content: ""; position: absolute; right: -5px; top: 0; bottom: 0;
  width: 1px; background: #2E2E37;
}

.oi-sales{ border: 1px solid #b6b6bc; background: #fff; }
.oi-sales span{
  position: absolute; top: 12px; left: 0; right: 0;
  text-align: center; font-size: 15px; font-weight: 700;
}

.oi-stack{ display: flex; flex-direction: column; }
.oi-seg{ position: relative; padding: 8px 10px; box-sizing: border-box; overflow: hidden; }
.oi-seg-name{ font-size: 14px; font-weight: 700; white-space: nowrap; }

.oi-seg.is-thin{ display: flex; align-items: center; padding: 0 10px; }
.oi-seg.is-thin .oi-seg-name{ font-size: 11.5px; }
.oi-seg.is-thin .oi-seg-name em{ margin-left: 7px; }
.oi-seg-name em{ font-style: normal; margin-left: 10px; }
.oi-seg small{
  display: block; font-size: 10px; line-height: 1.5; margin-top: 6px; opacity: .85;
}
.oi-seg--profit{ background: #FFFFFF; border: 1px solid #cfcfd4; color: #2E2E37; }
.oi-seg--cogs  { background: #E4E4E8; color: #2E2E37; }

.oi-seg--sell  { background: #74747B; color: #ffffff; }
.oi-seg--admin { background: #3F3F47; color: #ffffff; }

.oi-link-col{ pointer-events: none; }
.oi-zoom{ width: 100%; height: var(--oi-bar-h, 460px); display: block; overflow: visible; }
.oi-zoom-fill{ fill-opacity: .10; }
.oi-zoom-fill--sell { fill: #74747B; }   
.oi-zoom-fill--admin{ fill: #3F3F47; }   
.oi-zoom-edge{
  stroke: #7A7A82; stroke-width: 1; fill: none; vector-effect: non-scaling-stroke;
}

.oi-breaks{
  display: flex; flex-direction: column; justify-content: center;
  gap: var(--oi-gap-out, 34px);
}
.oi-group{ display: flex; flex-direction: column; gap: var(--oi-gap-in, 8px); }

.oi-breaks-head, .oi-marks-head, .oi-notes-head{

  position: absolute; top: calc(var(--oi-top, 30px) - 30px); left: 0; right: 0;
  font-size: 12.5px; font-weight: 700; text-align: center; white-space: nowrap;
  border-bottom: 1px solid #2E2E37; padding-bottom: 4px; line-height: 1.35;
}
.oi-box{
  height: var(--oi-box-h, 56px); box-sizing: border-box; padding: 8px 12px;
  display: flex; flex-direction: column; justify-content: center;
}
.oi-box span{ font-size: 14px; font-weight: 700; white-space: nowrap; }
.oi-box span em{ font-style: normal; margin-left: 10px; }
.oi-box small{ font-size: 10px; margin-top: 3px; opacity: .9; }
.oi-box--sell { background: #74747B; color: #ffffff; }   
.oi-box--admin{ background: #3F3F47; color: #ffffff; }   

.oi-marks{
  display: flex; flex-direction: column; justify-content: center;
  gap: var(--oi-gap-out, 34px);
}
.oi-mark-group{ display: flex; flex-direction: column; gap: var(--oi-gap-in, 8px); }
.oi-mark{
  height: var(--oi-box-h, 56px);
  display: flex; align-items: center; justify-content: center;
  font-size: 17px; color: #6f6f78;
}
.oi-mark.is-on{ color: #2E2E37; font-weight: 700; }

.oi-notes{ position: relative; padding-left: 6px; }
.oi-notes-head{ left: 6px; }
.oi-notes p{
  position: absolute; left: 6px; right: 0; margin: 0;
  font-size: 12.5px; line-height: 1.75; color: #33333a;

  padding-left: 1em; text-indent: -1em;
}
.oi-notes p::before{ content: "・"; }

@media (max-width: 1159px){
  .oi-fig{ padding: 28px 20px; }
    .oi-elem{ white-space: normal; }
}

.oi-chart-head{ margin-top: 28px; }
.oi-chart{ margin-top: 0; }
.oi-link-col{ margin-left: -10px; margin-right: -10px; }

.elementor-2 section[data-iter="oi"],
.elementor-2 section[data-iter="oi"] > .elementor-background-overlay{
  background-color: #FFFFFF !important;
}

.elementor-2 section[data-iter="oi"] .elementor-container{ max-width: 1160px !important; }
.elementor-2 section[data-iter="oi"] .oi-fig{
  background: transparent; padding: 0; margin: 0;
}
.elementor-2 section[data-iter="oi"] .oi-fig-title{ display: none; }  

.elementor-2 section[data-iter="member-head"],
.elementor-2 section[data-iter="exec"],
.elementor-2 section[data-iter="manager"],
.elementor-2 section[data-iter="consult-row"],
.elementor-2 section[data-iter="career"],
.elementor-2 section[data-iter="profile"],
.elementor-2 section[data-iter="member-head"] > .elementor-background-overlay,
.elementor-2 section[data-iter="exec"] > .elementor-background-overlay,
.elementor-2 section[data-iter="manager"] > .elementor-background-overlay,
.elementor-2 section[data-iter="consult-row"] > .elementor-background-overlay,
.elementor-2 section[data-iter="career"] > .elementor-background-overlay,
.elementor-2 section[data-iter="profile"] > .elementor-background-overlay{
  background-color: #E8E8E8 !important;
}

.elementor-2 section[data-iter="cert"],
.elementor-2 section[data-iter="message"],
.elementor-2 section[data-iter="contact"],
.elementor-2 section[data-iter="cert"] > .elementor-background-overlay,
.elementor-2 section[data-iter="message"] > .elementor-background-overlay,
.elementor-2 section[data-iter="contact"] > .elementor-background-overlay{
  background-color: #FFFFFF !important;
}

.cert-head{ margin-top: 38px !important; }
.cert-head:first-of-type{ margin-top: 0 !important; }

.elementor-2 section[data-iter="cert"] table tbody > tr:nth-child(n) > td,
.elementor-2 section[data-iter="cert"] table tbody > tr:nth-child(n) > th{
  background-color: transparent !important;
}

.svc-photos{
  width: 100%;                 
  margin-left: auto; margin-right: auto;
  margin-top: 34px; margin-bottom: 26px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 8px;
  line-height: 0;
}
.svc-photos img{
  width: 100%; height: 100%; object-fit: cover; display: block;
}
@media (max-width: 767px){
  .svc-photos{ grid-template-columns: 1fr; margin-top: 26px; }
}

.iter-hero-en .elementor-heading-title{ display: block; }

.region-line .rl-label{
  text-transform: none;
  letter-spacing: .12em;
  font-size: 13px;
}

.elementor-2 section[data-iter="profile"]{
  background-image: url("/assets/media/2026/08/profile-bg.jpg") !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll;
}
.elementor-2 section[data-iter="profile"] > .elementor-background-overlay{
  background-color: rgba(255,255,255,.88) !important;
  background-image: none !important;
  opacity: 1 !important;
}

.region-line{ flex-wrap: wrap; }
.region-line .rl-label, .region-line .rl-items{ flex-shrink: 0; }
.hero-logos{
  margin-left: auto; display: flex; flex-direction: column; align-items: flex-end;
  gap: 10px; flex-shrink: 0; align-self: center;
}
.hero-logos-row{ display: flex; align-items: center; gap: 30px; }
.hero-logos img{ height: 84px; width: auto; opacity: .95; }
.hero-logos-note{
  margin: 0; font-size: 12px; letter-spacing: .06em; color: #c6c6ca; white-space: nowrap;
}
@media (max-width: 1024px){
  .region-line{ flex-wrap: wrap; }
  .hero-logos{ margin-left: 0; gap: 24px; }
  .hero-logos img{ height: 60px; }
  .hero-logos-note{ font-size: 11px; }
}

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container{
  min-height: calc(100vh - 80px) !important;
}
.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container > .elementor-column{
  display: flex;
}
.elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
  flex: 1 1 auto;
  display: flex; flex-direction: column;
  padding: clamp(24px, 3.6vh, 72px) 0 clamp(20px, 3.5vh, 44px) !important;
  min-height: 0 !important;
}

.iter-hero-en .elementor-heading-title{ margin-bottom: clamp(10px, 2vh, 24px) !important; }
.iter-hero-body > .elementor-widget-container{ margin-top: clamp(14px, 2.6vh, 30px); }

.elementor-2 .elementor-element.elementor-element-a6eb84a{
  position: relative;
  z-index: 1;
}

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container{
  align-items: stretch !important;
}

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container
  > .elementor-column > .elementor-element-populated > .elementor-widget{
  margin-bottom: 0 !important;
}

.iter-hero-region{ margin-top: auto !important; }
.iter-hero-region > .elementor-widget-container{ margin-top: clamp(16px, 2.8vh, 56px) !important; }

@media (min-height: 900px){
  .elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container > .elementor-column
    > .elementor-element-populated{
    padding-bottom: 26px !important;
  }
}

@media (max-height: 700px){
  .iter-hero-main .elementor-heading-title{ font-size: 42px !important; line-height: 1.34 !important; }
  .iter-hero-body p{ font-size: 15px; line-height: 28px; }
}

.hero-logos img{ height: clamp(50px, 7.4vh, 84px); }

.elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-background-overlay{
  background-position: center 62% !important;
}

@media (max-width: 1024px){
  .elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-container{
    min-height: 0 !important;
  }
  .elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
    padding: 72px 0 48px !important;
  }
  .iter-hero-region{ margin-top: 0 !important; }
}

.elementor-element.elementor-element-049824e > .elementor-widget-container{
  margin: 22px 0 0 0;
}
.elementor-element.elementor-element-049824e{
  text-align: center;
  font-family: "Roboto", Sans-serif;
  font-size: 13px;
  font-weight: 400;
  color: #ffffff;
}
.elementor-element.elementor-element-049824e a,
.elementor-element.elementor-element-049824e a:visited,
.elementor-element.elementor-element-049824e a:hover,
.elementor-element.elementor-element-049824e a:active{
  color: #ffffff;
  text-decoration: none;
}

.iter-purpose{ display: flex; flex-wrap: wrap; gap: 10px 28px; }
.iter-purpose .elementor-field-option{ display: inline-flex; align-items: center; gap: 8px; }
.iter-purpose input[type=radio]{ width: auto; margin: 0; }
.iter-purpose label{ font-size: 15px; cursor: pointer; margin: 0; }
@media (max-width: 767px){
  .iter-purpose{ flex-direction: column; gap: 10px; }
}

.iter-reply-note{
  font-size: 13.5px; line-height: 1.9; color: #54595F;
  margin: 18px 0 0; text-align: center;
}

.iter-ccard .cskill{ display: inline-block; }

.oi-m{ display: none; }

@media (max-width: 1159px){
  .oi-chart{ display: none !important; }

  .oi-m{ display: block; max-width: 620px; margin-left: 16px; margin-right: auto; }

  .oi-m-stack{ height: 380px; width: 100%; max-width: 260px; margin: 0 0 30px; }
  .oi-m-stack .oi-seg{ padding: 8px 12px; }
  .oi-m-stack .oi-seg-name{ font-size: 13.5px; }
  .oi-m-stack .oi-seg.is-thin .oi-seg-name{ font-size: 12px; }
  .oi-m-stack .oi-seg--cogs small{ font-size: 10.5px; }

  .oi-m-group{ margin-bottom: 26px; }

  .oi-m-gh{
    font-size: 14px; font-weight: 700; color: #1a1a20; margin: 0 0 12px;
    display: flex; align-items: center; gap: 9px;
    border-bottom: 1px solid #2E2E37; padding-bottom: 7px;
  }
  .oi-m-gh::before{ content: ""; width: 14px; height: 14px; flex-shrink: 0; }
  .oi-m-gh--sell::before { background: #74747B; }
  .oi-m-gh--admin::before{ background: #3F3F47; }

  .oi-m-row{ padding: 12px 0; border-bottom: 1px solid #ececee; }
  .oi-m-row:last-child{ border-bottom: 0; }
  .oi-m-head{ display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; }
  .oi-m-head b{ font-size: 14.5px; font-weight: 700; color: #1a1a20; }
  .oi-m-head em{ font-style: normal; font-size: 14.5px; font-weight: 700; }
  .oi-m-tag{
    font-size: 10.5px; letter-spacing: .04em; padding: 2px 7px;
    border: 1px solid #b6b6bc; color: #55555c; white-space: nowrap;
  }
  .oi-m-tag.is-on{ border-color: #2E2E37; background: #2E2E37; color: #ffffff; }
  .oi-m-row small{
    display: block; font-size: 11px; color: #55555c; margin-top: 4px;
  }
  .oi-m-row p{
    font-size: 12.5px; line-height: 1.85; color: #33333a; margin: 7px 0 0;
    padding-left: 1em; text-indent: -1em;
  }
  .oi-m-row p::before{ content: "・"; }

  }

@font-face{
  font-family: "ITER Latin";
  font-style: normal;

  font-display: swap;
  font-weight: 100 900;
  size-adjust: 108%;
  src: url(/assets/fonts/fonts/notosansjp-f62fjtqlzi2jpcgqbnw7hfywqgp.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;
}

.iter-hero-main .elementor-heading-title,
.elementor-2 h2.elementor-heading-title,
.oi-elems-head,
.oi-m-gh{
  font-family: "ITER Latin", "Noto Sans JP", Sans-serif;
}

html{ scroll-padding-top: 80px; }
@media (max-width: 1159px){ html{ scroll-padding-top: 72px; } }
@media (max-width: 767px){  html{ scroll-padding-top: 68px; } }

.iter-backlink{
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 600; letter-spacing: .04em;
  color: #1a1a20 !important; text-decoration: none !important;
  border-bottom: 1.5px solid #1a1a20; padding-bottom: 3px;
  transition: opacity .2s;
}
.iter-backlink::after{ content: "→"; font-weight: 400; }
.iter-backlink:hover{ opacity: .6; }

.elementor-2 .elementor-element.elementor-element-66499b5,
.elementor-2 .elementor-element.elementor-element-66499b5 > .elementor-background-overlay{
  background-color: transparent !important;
  background-image: linear-gradient(to right, #E3E3E3 0%, #E9E9E9 34%, #EBEBEB 100%) !important;
}

@media (max-width: 1159px){
  .iter-nav .nav-panel{
    background: #EBEBEB !important;
    border-top-color: #d5d5d8 !important;
  }
  .iter-nav .nav-panel a.link{ border-bottom-color: #d5d5d8 !important; }
}

.elementor-2 section[data-iter="contact"] iframe{
  background-color: #FFFFFF;
}

.elementor-225 .elementor-element.elementor-element-a85e79a .elementor-heading-title,
.elementor-231 .elementor-element.elementor-element-a85e79a .elementor-heading-title,
.elementor-240 .elementor-element.elementor-element-a85e79a .elementor-heading-title{
  font-size: 30px !important;
  line-height: 1.5 !important;
}

.oi-chart-sub{ display: block; font-weight: 400; }

@media (max-width: 767px){

  .elementor-2 .elementor-element.elementor-element-a6eb84a > .elementor-background-overlay{
    background-position: left bottom !important;
    background-size: auto 1780px !important;
  }

  .elementor-2 .elementor-element.elementor-element-a6eb84a{
    padding-left: 6% !important; padding-right: 6% !important;
  }

  .iter-hero-main .elementor-heading-title{
    font-size: 22px !important; line-height: 1.45 !important;
  }

  .elementor-2 h2.elementor-heading-title{
    font-size: 30px !important; line-height: 1.3 !important;
  }
  .elementor-2 .iter-hero-en .elementor-heading-title{
    font-size: 12px !important; line-height: 1.6 !important;
  }

  .oi-elems{ flex-direction: column; align-items: stretch; gap: 8px; }
  .oi-elems > *{ width: 100% !important; }
  .oi-elems .oi-elem{ min-height: 52px; }
  .oi-elems .oi-plus{ text-align: center; width: 100% !important; }
}

.oi-h-wrap{ display: block; }

.oi-h-short{ display: none; }

@media (max-width: 767px){

  .oi-h-long{ display: none; }
  .oi-h-short{ display: inline; }

  .elementor-2 .elementor-element.elementor-element-2485314 > .elementor-element-populated{
    padding-bottom: 24px !important;
  }
  .elementor-2 section[data-iter="service"]{ padding-top: 36px !important; }
  .elementor-2 section[data-iter="oi"]{ margin-top: -40px !important; }

  .elementor-2 .elementor-element[data-iter="exec"] .elementor-widget-image img{
    width: 96% !important; max-width: 96% !important;
  }

  .elementor-2 section[data-iter="cert"] table{

    min-width: 1120px;
  }
  .elementor-2 section[data-iter="cert"] table td,
  .elementor-2 section[data-iter="cert"] table th{
    padding: 5px 8px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
}

.elementor-2 section[data-iter="methodology"],
.elementor-2 section[data-iter="methodology"] > .elementor-background-overlay{
  background-color: #FFFFFF !important;
}
.elementor-2 section[data-iter="methodology"] .elementor-container{ max-width: 1160px !important; }

.md-fig{ padding-top: 0 !important; padding-bottom: 0 !important; }
.elementor-2 section[data-iter="methodology"] .elementor-inner-section{
  padding-left: 0 !important; padding-right: 0 !important;
}
.md-fig{ padding-left: 16px !important; padding-right: 16px !important; }
.md-note{ font-size: 13.5px; line-height: 1.85; color: #55555c; margin: -4px 0 14px; }

.md-sched{ margin: 0 0 52px; font-size: 11px; }
.md-band{ display: grid; grid-template-columns: 104px repeat(9, 1fr); gap: 3px; margin-bottom: 3px; }
.md-band-lab{
  display: flex; flex-direction: column; justify-content: center; gap: 1px;
  padding: 6px 8px; background: #E8E8E8; color: #2E2E37;
  font-size: 11px; font-weight: 700; line-height: 1.3;
}
.md-band-lab b{ font-size: 11.5px; letter-spacing: .04em; }
.md-band-lab span{ font-weight: 400; font-size: 10.5px; color: #55555c; }
.md-cell{ grid-column: span var(--sp, 1); padding: 6px 7px; }
.md-band--phase .md-cell{
  background: #2E2E37; color: #fff; text-align: center; line-height: 1.35;
}
.md-band--phase .md-cell b{ display: block; font-size: 11.5px; letter-spacing: .04em; }
.md-band--phase .md-cell span{ font-size: 10px; opacity: .85; }
.md-band--qg .md-cell{
  background: #6f6f78; color: #fff; text-align: center; line-height: 1.3;
  padding: 6px 4px;   
}
.md-band--qg .md-cell b{ display: block; font-size: 11px; }

.md-band--qg .md-cell span{ font-size: 9.5px; opacity: .9; text-wrap: balance; }

.md-band--ms .md-cell{
  padding: 3px 4px; font-size: 9.5px; color: #55555c; line-height: 1.3;
  white-space: nowrap; overflow: visible;
}
.md-band--ms .md-ms.is-on{ font-weight: 700; color: #1a1a20; }
.md-band--row .md-band-lab{ background: #F2F2F3; }

.md-band--full{ grid-template-rows: auto auto; }
.md-band--full .md-band-lab{ grid-row: 1 / span 2; }
.md-band--full .md-cell--all{ grid-column: 2 / -1; grid-row: 1; }
.md-tasks{ background: #FAFAFA; border: 1px solid #E4E4E6; padding: 4px; }
.md-task{
  display: block; font-size: 10px; line-height: 1.35; color: #2E2E37;
  padding: 3px 5px; margin-bottom: 3px; background: #fff; border-left: 3px solid #6f6f78;
}

.md-task--all{ border-left-width: 4px; }
.md-task:last-child{ margin-bottom: 0; }
.md-task i{ display: block; font-style: normal; font-size: 9px; color: #6f6f78; letter-spacing: .03em; }

.md-fold{ margin: 0 0 52px; }
.md-fold > summary{
  cursor: pointer;
  list-style: none;              
  padding: 12px 14px;
  margin: 0;                     
  background: #FAFAFA;
  border: 1px solid #E4E4E6;
}
.md-fold > summary::-webkit-details-marker{ display: none; }  

.md-fold > summary::before{ content: none; }

.md-fold > summary{ flex-wrap: wrap; row-gap: 4px; }
.md-fold > summary > .oi-h-wrap{ min-width: 0; }
.md-fold[open] > summary{ margin-bottom: 14px; }
.md-fold .md-dels{ margin-bottom: 0; }

.md-fold-hint{
  margin-left: auto; flex-shrink: 0;
  font-size: 12px; font-weight: 400; color: #55555c; letter-spacing: 0;
}
.md-fold-hint::after{ content: "＋"; margin-left: 8px; }
.md-fold[open] .md-fold-hint::after{ content: "−"; }

.md-dels{
  display: grid; grid-template-columns: repeat(auto-fill, minmax(248px, 1fr));
  gap: 14px; margin: 0 0 52px;
}
.md-del{ border: 1px solid #D8D8DC; padding: 0 0 12px; background: #fff; }
.md-del-h{
  background: #2E2E37; color: #fff; font-size: 12px; font-weight: 700;
  padding: 8px 12px; letter-spacing: .02em;
}
.md-del-ws{
  font-size: 11px; font-weight: 700; color: #6f6f78; letter-spacing: .06em;
  padding: 10px 12px 2px;
}
.md-del ul{ margin: 0; padding: 0 12px 0 28px; }
.md-del li{ font-size: 11.5px; line-height: 1.7; color: #2E2E37; }

table.md-ops{ width: 100%; border-collapse: collapse; font-size: 11.5px; }  

table.md-ops th, table.md-ops td{

  border: none; border-bottom: 1px solid #E4E4E6;
  padding: 3px 8px; text-align: left;
  vertical-align: middle; line-height: 1.4;
}
table.md-ops tbody th{ vertical-align: top; }
table.md-ops thead th{
  background: #2E2E37; color: #fff; font-size: 11.5px; font-weight: 700;
  border-bottom: none; white-space: nowrap;
  vertical-align: middle;              
}
table.md-ops thead th.md-mk{ text-align: center; font-size: 11.5px; color: #fff; }

table.md-ops thead th.md-grp{ text-align: center; border-bottom: 1px solid #55555c; }

table.md-ops tbody th{

  font-size: 11.5px; font-weight: 700; color: #55555c; width: 250px;
  background: transparent;

  border-top: none; border-bottom: none;
}

table.md-ops tbody > tr:nth-child(n) > td,
table.md-ops tbody > tr:nth-child(n) > th{ background-color: transparent; }

table.md-ops tr.md-ops-top > th{ border-top: 1px solid #E4E4E6; }

table.md-ops{ border-bottom: 1px solid #E4E4E6; }

table.md-ops tbody tr:first-child > *{ border-top: none; }

table.md-ops .md-mk{ text-align: center; width: 82px; font-size: 13px; color: #2E2E37; }

@media (max-width: 1160px){

  .md-sched{ overflow-x: auto; padding-bottom: 8px; }

  .md-band{ grid-template-columns: 110px repeat(9, 108px); width: max-content; }
}
@media (max-width: 767px){
  .md-dels{ grid-template-columns: 1fr; }

  table.md-ops{ min-width: 820px; }
  table.md-ops th, table.md-ops td{ padding: 3px 6px; font-size: 11.5px; }

  table.md-ops tbody th{ font-size: 11.5px; width: 240px; }
}

.elementor-2 section[data-iter="service"] .elementor-widget-heading + .elementor-widget-text-editor,
.elementor-2 section[data-iter="career"] .elementor-widget-heading + .elementor-widget-text-editor,
.elementor-2 section[data-iter="message"] .elementor-widget-heading + .elementor-widget-text-editor,
.elementor-2 section[data-iter="profile"] .elementor-widget-heading + .elementor-widget-text-editor,
.elementor-2 section[data-iter="contact"] .elementor-widget-heading + .elementor-widget-text-editor{
  margin-bottom: 20px !important;
}

.elementor-2 section[data-iter="oi"]{          margin-top: -51px !important; padding-top: 16px !important; }
.elementor-2 section[data-iter="methodology"]{ padding-top: 11px !important; margin-top: -6px !important; }

.elementor-2 section[data-iter="record"]{      margin-top: -68px !important; }

.elementor-2 section[data-iter="member-head"]{ margin-top: -11px !important; padding-top: 16px !important; }

.elementor-2 section[data-iter="consult-row"][data-iter-last]{ padding-bottom: 33px !important; }
.elementor-2 section[data-iter="cert"]{        padding-top:  17px !important; }  
.elementor-2 section[data-iter="career"]{      margin-top: -20px !important; padding-top: 16px !important; }
.elementor-2 section[data-iter="message"]{     margin-top: 0 !important; padding-top: 16px !important; }
.elementor-2 section[data-iter="profile"]{     margin-top: -26px !important; padding-top: 17px !important; }
.elementor-2 section[data-iter="contact"]{     padding-top:  21px !important; }  

@media (max-width: 767px){
  .elementor-2 section[data-iter="oi"]{          margin-top: -71px !important; padding-top: 9px !important; }
  .elementor-2 section[data-iter="methodology"]{ margin-top: -11px !important; padding-top: 0 !important; }
  .elementor-2 section[data-iter="record"]{      margin-top: -75px !important; }
  .elementor-2 section[data-iter="member-head"]{ margin-top: -21px !important; padding-top: 9px !important; }
  .elementor-2 section[data-iter="consult-row"][data-iter-last]{ padding-bottom: 28px !important; }
  .elementor-2 section[data-iter="cert"]{        margin-top: 0 !important; padding-top: 11px !important; }
  .elementor-2 section[data-iter="career"]{      margin-top: -20px !important; padding-top: 9px !important; }
  .elementor-2 section[data-iter="message"]{     margin-top: 0 !important; padding-top: 9px !important; }
  .elementor-2 section[data-iter="profile"]{     margin-top: -26px !important; padding-top: 9px !important; }
  .elementor-2 section[data-iter="contact"]{     margin-top: 0 !important; padding-top: 13px !important; }
}

@media (min-width: 768px) and (max-width: 839px){
  .elementor-2 section[data-iter="methodology"]{ margin-top: -17px !important; }
}
@media (min-width: 840px) and (max-width: 1159px){
  .elementor-2 section[data-iter="methodology"]{ margin-top: -6px !important; }
}

@media (max-width: 360px){
  .hero-logos-row{ gap: 14px; }
  .hero-logos-note{ font-size: 10px; white-space: normal; text-align: right; }
}

@media (max-width: 767px){
  .hero-logos img{ height: clamp(40px, 15vw, 60px) !important; }
}

@media (max-width: 767px){
  .iter-hero-region > .elementor-widget-container{ margin-top: 100px !important; }
}

.elementor-2 section[data-iter="cert"] table td,
.elementor-2 section[data-iter="cert"] table th{
  padding: 3px 8px !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

.elementor-2 section[data-iter="cert"] .elementor-container{ max-width: 1160px !important; }
.elementor-2 section[data-iter="cert"] .elementor-inner-section{
  padding-left: 0 !important; padding-right: 0 !important;
}

.elementor-2 section[data-iter="cert"] table th:last-child,
.elementor-2 section[data-iter="cert"] table td:last-child{ width: 70px !important; }

.elementor-2 section[data-iter="cert"] table td:first-child:empty{
  border-top-style: hidden !important;
}

.cert-head{ margin-top: 26px !important; margin-bottom: 8px !important; }
.cert-head:first-of-type{ margin-top: 0 !important; }

.elementor-2 section[data-iter="record"],
.elementor-2 section[data-iter="record"] > .elementor-background-overlay{
  background-color: #FFFFFF !important;
}

.elementor-2 section[data-iter="record"] .elementor-container{ max-width: 1160px !important; }
.elementor-2 section[data-iter="record"] .elementor-inner-section{
  padding-left: 0 !important; padding-right: 0 !important;
}

.tr-note{
  margin: 0 0 6px; text-align: right;
  font-size: 11.5px; line-height: 1.5; color: #55555c;
}
table.tr-tbl{ width: 100%; border-collapse: collapse; font-size: 12px; }

table.tr-tbl th, table.tr-tbl td{
  padding: 3px 8px; line-height: 1.4; text-align: left; vertical-align: middle;
  border: none; border-bottom: 1px solid #E4E4E6;
}

table.tr-tbl thead tr:first-child th:nth-child(4),
table.tr-tbl thead tr:first-child th:nth-child(5),
table.tr-tbl thead tr:first-child th:nth-child(6),
table.tr-tbl thead tr:nth-child(2) th:nth-child(1),
table.tr-tbl thead tr:nth-child(2) th:nth-child(7),
table.tr-tbl thead tr:nth-child(2) th:nth-child(9){ border-left: 1px solid #6f6f78; }

table.tr-tbl td.tr-gl{ border-left: 1px solid #E4E4E6; }
table.tr-tbl thead th{
  background: #2E2E37; color: #fff; font-weight: 700; text-align: center;
  border-bottom: none; white-space: nowrap;
}

table.tr-tbl thead th.tr-grp{ border-bottom: 1px solid #55555c; }
table.tr-tbl .tr-mk{ text-align: center; white-space: nowrap; }
table.tr-tbl tbody .tr-mk{ font-size: 13px; color: #2E2E37; }

table.tr-tbl .tr-y{ text-align: center; white-space: nowrap; vertical-align: top; }

table.tr-tbl tbody td:nth-child(2){ white-space: nowrap; }

table.tr-tbl tbody > tr:nth-child(n) > td{ background-color: transparent !important; }

table.tr-tbl tbody tr:first-child > td{ border-top: none; }
table.tr-tbl{ border-bottom: 1px solid #E4E4E6; }

table.tr-tbl tbody tr.tr-sum > td{
  font-weight: 700; border-top: 1px solid #C9C9CE; border-bottom: none;
}

@media (max-width: 767px){

  .elementor-2 section[data-iter="record"] .table-container{ overflow-x: auto; }
  table.tr-tbl{ min-width: 900px; }
  table.tr-tbl th, table.tr-tbl td{ padding: 3px 6px; font-size: 11.5px; }
}

.elementor-2 section[data-iter="profile"] .iter-profile-table{
  width: 100%; border-collapse: collapse; border: none; table-layout: auto;
  margin: 0 auto 1rem;
}
.elementor-2 section[data-iter="profile"] .iter-profile-table > tbody > tr > td{
  padding: 0.5rem; text-align: left; vertical-align: top;
  border: none; border-top: 1px solid #ddd; background: none;
}
.elementor-2 section[data-iter="profile"] .iter-profile-table > tbody > tr:first-child > td{
  border-top: none;
}

.elementor-2 section[data-iter="profile"] table tbody > tr:nth-child(n) > td,
.elementor-2 section[data-iter="profile"] table tbody > tr:nth-child(n) > th{
  background-color: transparent !important;
}

.oi-flow-head{ margin-top: 56px !important; }
.oi-flow{ display: flex; align-items: stretch; flex-wrap: wrap; gap: 10px;
          margin-top: 18px; margin-bottom: 0; }
.oi-flow-item{
  flex: 1 1 0; min-width: 170px;
  border: 2px solid #6f6f78; padding: 11px 14px; text-align: center;
}
.oi-flow-item b{ display: block; font-size: 14px; font-weight: 700; color: #1a1a20; line-height: 1.5; }
.oi-flow-item > span{
  display: block; margin-top: 5px;
  font-size: 12px; font-weight: 400; color: #55555c; line-height: 1.6;
}
.oi-arrow{ align-self: center; font-size: 20px; font-weight: 700; color: #4a4a52; }
.oi-arrow::before{ content: "→"; }

@media (max-width: 767px){

  .oi-flow-item{ flex: 1 1 100%; }
  .oi-arrow{ width: 100% !important; text-align: center; }
  .oi-arrow::before{ content: "↓"; }
}

.oi-cta{
  margin-top: 40px; display: flex; flex-wrap: wrap; align-items: center;
  gap: 14px 28px;
}
.oi-cta p{
  margin: 0; flex: 1 1 320px;
  font-size: 14.5px; line-height: 1.9; color: #33333a;
}
.iter-btn--dark{
  background: #141416; border-color: #141416; color: #ffffff; flex-shrink: 0;
  white-space: nowrap;
}
.iter-btn--dark:hover{ background: transparent; color: #141416; }

@media (max-width: 767px){

  .oi-cta{ display: block; margin-top: 32px; }
  .oi-cta p{ margin-bottom: 18px; font-size: 14px; }
  .iter-btn--dark{ padding: 13px 22px; font-size: 13.5px; }
}

.nav-more{ position: relative; }
.iter-nav .nav-more-btn{
  display: inline-flex; align-items: center; gap: 7px;
  background: none; border: 0; padding: 5px 0; cursor: pointer;
  font-family: inherit; font-size: 14px; font-weight: 500; letter-spacing: .5px;
  color: #1f1f22; white-space: nowrap;
}
.nav-caret{
  width: 0; height: 0; border-left: 4.5px solid transparent; border-right: 4.5px solid transparent;
  border-top: 5px solid #1f1f22; transition: transform .2s ease;
}
.nav-more.is-open .nav-caret{ transform: rotate(180deg); }
.iter-nav .nav-more-panel{
  display: none;
  position: absolute; top: calc(100% + 14px); right: 0; z-index: 1000;
  min-width: 240px; padding: 6px 0;
  background: #ffffff; border: 1px solid #e3e3e6;
  box-shadow: 0 12px 24px rgba(0,0,0,.12);
}
.nav-more.is-open .nav-more-panel{ display: block; }
.iter-nav .nav-more-panel a.link{
  display: block; padding: 10px 18px; font-size: 13.5px; white-space: nowrap;
}
.iter-nav .nav-more-panel a.link::after{ display: none; }
.iter-nav .nav-more-panel a.link:hover{ background: #f2f2f3; }

.nav-logo{ display: inline-block; line-height: 0; }

@media (max-width: 1159px){

  .iter-nav .nav-panel > a.nav-primary{ display: none; }
  .iter-nav .nav-more-btn{ display: none; }
  .iter-nav .nav-more{ position: static; }
  .iter-nav .nav-more-panel{
    display: block; position: static; min-width: 0; padding: 0;
    background: none; border: 0; box-shadow: none;
  }
  .iter-nav .nav-more-panel a.link{
    padding: 14px 2px; font-size: 15px; border-bottom: 1px solid #ececee;
  }
  .iter-nav .nav-more-panel a.link:hover{ background: none; }
}

a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.elementor-field-group .elementor-field-textual:focus-visible,
.nav-burger:focus-visible,
.nav-more-btn:focus-visible{
  outline: 2px solid #1F1F22 !important;
  outline-offset: 2px !important;

  box-shadow: 0 0 0 2px #FFFFFF !important;
}

.elementor-2 .elementor-element.elementor-element-11e7706 a{ color: #2F66B9; }

.elementor-2 .elementor-mark-required .elementor-field-label:after,
.elementor-2 .elementor-field-required .elementor-field-label:after,
.elementor-2 .elementor-field-label:after{ color: #E60000 !important; }

body,
.elementor-2 .elementor-widget-text-editor,
.elementor-2 li, .elementor-2 td, .elementor-2 th{
  font-family: -apple-system, "system-ui", "Segoe UI", Roboto, "Helvetica Neue",
               Arial, "Noto Sans JP", "Noto Sans", sans-serif,
               "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.legal-links{
  display: flex; flex-wrap: wrap; justify-content: center;
  column-gap: 2em; row-gap: 2px;
}

html[lang="en"] .oi-sales span{ font-size: 13.5px; letter-spacing: 0; }

html[lang="en"] .iter-hero-body strong,
html[lang="en"] .oi-fig-lead strong{ white-space: normal; }

html[lang="en"] .iter-btn--dark{ white-space: normal; text-align: center; }
