@charset "UTF-8";
*,
*::before,
*::after{
  box-sizing:border-box;
}

ul,
ol{
  padding:0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd{
  margin:0;
}

html{
  scroll-behavior:smooth;
}

body{
  min-height:100vh;
  text-rendering:optimizeSpeed;
}

ul,
ol{
  list-style:none;
}

a:not([class]){
  -webkit-text-decoration-skip:ink;
          text-decoration-skip-ink:auto;
}

a{
  -webkit-text-decoration:none;
  text-decoration:none;
}

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

input,
button,
textarea,
select{
  font:inherit;
}

img:not([alt]){
  filter:blur(10px);
}

input,
button,
select,
textarea{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background:transparent;
  border:none;
  border-radius:0;
  font:inherit;
  outline:none;
}

textarea{
  resize:none;
}

input[type=checkbox],
input[type=radio]{
  display:none;
}

input[type=submit],
input[type=button],
label,
button,
select{
  cursor:pointer;
}

select::-ms-expand{
  display:none;
}

.inner{
  margin-left:auto;
  margin-right:auto;
  max-width:100rem;
  padding-inline:calc(80 / 1440 * 100vw);
  width:100%;
}

.recruit-inner{
  margin-left:auto;
  margin-right:auto;
  max-width:1440px;
  padding-left:80px;
  padding-right:80px;
  width:100%;
}

.header{
  background-color:#FBFBFB;
  border-bottom:1px solid rgba(115, 137, 159, 0.2);
  height:max(90px, 100 / 1440 * 100vw);
  left:0;
  position:sticky;
  right:0;
  top:0;
  z-index:100;
}

.header__inner{
  display:flex;
  height:inherit;
  justify-content:space-between;
  padding:0 calc(40 / 1440 * 100vw);
}

.header__logo{
  height:inherit;
  max-width:calc(91 / 1440 * 100vw);
  width:100%;
}

.header__logo a{
  align-items:center;
  display:flex;
  height:inherit;
}

.header__logo img{
  height:100%;
  object-fit:contain;
  width:100%;
}

.header__nav{
  height:inherit;
  padding-bottom:calc(8 / 1440 * 100vw);
  padding-top:calc(20 / 1440 * 100vw);
}

.header__nav-list{
  align-items:baseline;
  display:flex;
  justify-content:end;
}

.header__nav-list:nth-child(1){
  height:45%;
}

.header__nav-list:nth-child(2){
  height:56%;
  margin-top:0.5rem;
}

.header__nav-item{
  height:100%;
}

.header__nav-list:nth-child(2) .header__nav-item{
  padding-bottom:calc(18 / 1440 * 100vw);
}

.header__nav-link,
.header__nav-flex{
  align-items:center;
  color:#34414E;
  display:flex;
  font-weight:500;
  height:100%;
  line-height:1.75;
  padding:0 calc(12 / 1440 * 100vw);
  position:relative;
}
.header--recruit .header__nav-item a{
  color:#fff;
}

.header__nav-link::after,
.header__nav-flex::after{
  background-color:#E7352C;
  content:"";
  height:1px;
  left:50%;
  position:absolute;
  transform:translateX(-50%);
  transition:width 0.3s ease;
  width:0;
}

.header__nav-link::after{
  bottom:-0.375rem;
}

.header__nav-flex::after{
  bottom:0.25rem;
}

.header__nav-link:hover::after,
.header__nav-flex:hover::after{
  width:80%;
}

.header__nav-gtranslate a:hover::after,
.header__nav-item--contact a:hover::after{
  width:0%;
}

.header__nav-flex{
  font-size:0.8125rem;
}

.header__nav-list:nth-child(2) .header__nav-link{
  font-size:0.9375rem;
}
.header__nav-link.active::after{
  width:80%;
}

.header__nav-flex{
  align-items:center;
  display:flex;
  gap:calc(4 / 1440 * 100vw);
}

.header__nav-circle--pink,
.header__nav-circle--blue,
.header__nav-circle--green{
  border-radius:50%;
  height:calc(10 / 1440 * 100vw);
  width:calc(10 / 1440 * 100vw);
}

.header__nav-circle--pink{
  background-color:#ff7e77;
}

.header__nav-circle--green{
  background-color:#79c5a8;
}

.header__nav-circle--blue{
  background-color:#5a9ad7;
}

.header__nav-new-tab{
  height:max(14px, 16 / 1440 * 100vw);
  width:max(14px, 16 / 1440 * 100vw);
}

.header__nav-item.header__nav-item--contact a{
  background-color:#E7352C;
  border:1px solid #E7352C;
  border-radius:999px;
  color:#fff;
  height:auto;
  line-height:1;
  margin-left:calc(12 / 1440 * 100vw);
  padding:calc(16 / 1440 * 100vw) calc(22 / 1440 * 100vw) calc(16 / 1440 * 100vw) calc(46 / 1440 * 100vw);
  position:relative;
  transition:background-color 0.3s, color 0.3s;
}

.header__nav-item.header__nav-item--contact a:hover{
  background-color:#fff;
  color:#E7352C;
}

.header__nav-item.header__nav-item--contact a:hover::before{
  background-image:url(./../images/header_mail-red.svg);
}

.header__nav-item.header__nav-item--contact a::before{
  background-image:url(./../images/header_mail.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  content:"";
  display:inline-block;
  height:calc(16 / 1440 * 100vw);
  left:calc(22 / 1440 * 100vw);
  position:absolute;
  transition:background-image 0.3s;
  width:calc(16 / 1440 * 100vw);
}

.header__hamburger{
  display:none;
}

.header__hamburger.is-open{
  background-color:transparent;
}

.header__hamburger span{
  background-color:#fff;
  display:block;
  height:1px;
  left:50%;
  position:relative;
  transform:translateX(-50%);
  transition:0.5s;
  width:calc(20 / 375 * 100vw);
}

.header__hamburger span:nth-of-type(1){
  top:calc(-4 / 375 * 100vw);
}

.header__hamburger span:nth-of-type(2){
  top:calc(4 / 375 * 100vw);
}

.header__hamburger.is-open span:nth-of-type(1){
  top:0;
  transform:translateX(-50%) rotate(45deg);
}

.header__hamburger.is-open span:nth-of-type(2){
  top:calc(-1 / 375 * 100vw);
  transform:translateX(-50%) rotate(-45deg);
}

.header__drawer{
  background-color:#34414E;
  bottom:0;
  display:none;
  height:100dvh;
  left:0;
  overflow-y:scroll;
  padding:calc(40 / 375 * 100vw) 0 calc(100 / 375 * 100vw);
  position:absolute;
  right:0;
  scrollbar-width:none;
  top:0;
  width:100%;
  z-index:100;
}

.header__drawer::-webkit-scrollbar{
  display:none;
}

.header__drawer-gtranslate{
  display:none;
  margin-left:auto;
  padding-right:calc(20 / 375 * 100vw);
}

.header__drawer-gtranslate a{
  color:#34414E;
  font-size:calc(15 / 375 * 100vw);
}

.header__drawer-nav{
  margin:auto;
  padding-inline:calc(40 / 375 * 100vw);
  width:100%;
}

.header__drawer-item a,
.header__drawer-column a{
  color:#fff;
  display:block;
  font-size:calc(15 / 375 * 100vw);
  font-weight:500;
  line-height:1.75;
}

.header__drawer-item a{
  border-bottom:1px solid #fff;
  padding:calc(20 / 375 * 100vw) 0;
}

.header__drawer-list{
  margin-top:calc(25 / 375 * 100vw);
}

.header__drawer-column a{
  align-items:center;
  display:flex;
  gap:calc(4 / 375 * 100vw);
  padding:calc(15 / 375 * 100vw) 0;
}

.header__drawer-contact{
  margin-top:calc(25 / 375 * 100vw);
}

.header__drawer-contact a{
  background-color:#fff;
  color:#34414E;
  display:block;
  font-size:calc(15 / 375 * 100vw);
  font-weight:500;
  line-height:1;
  max-width:100%;
  padding:calc(16 / 375 * 100vw);
  position:relative;
  text-align:center;
  width:100%;
}

.header__drawer-contact a::before{
  background-image:url(./../images/header_mail-black.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  content:"";
  display:inline-block;
  height:calc(16 / 375 * 100vw);
  left:calc(80 / 375 * 100vw);
  position:absolute;
  width:calc(16 / 375 * 100vw);
}

.gtranslate_wrapper{
  display:flex;
  flex-direction:row-reverse;
  margin-left:calc(28 / 1440 * 100vw);
}

.gtranslate_wrapper a.glink:nth-child(2){
  padding:0 calc(20 / 1440 * 100vw) 0 0;
}

.gtranslate_wrapper a.glink:nth-child(1){
  border-left:1px solid rgba(115, 137, 159, 0.2);
  padding:0 0 0 calc(20 / 1440 * 100vw);
}

.gtranslate_wrapper a.glink img{
  display:none;
}

.gtranslate_wrapper a:nth-child(1).glink{
  margin-right:calc(20 / 1440 * 100vw);
}

.header__nav-link{
  cursor:pointer;
}

.header__nav-modal{
  align-items:flex-start;
  background-color:#FBFBFB;
  display:flex;
  justify-content:center;
  left:0;
  opacity:0;
  position:fixed;
  top:max(118px, 128 / 1440 * 100vw);
  transform:translateY(-20px);
  transition:0.3s;
  visibility:hidden;
  width:100%;
}

.header__nav-modal.is-scrolled{
  top:max(90px, 100 / 1440 * 100vw);
}

.header__nav-modal__inner{
  display:flex;
  justify-content:space-around;
}

.header__nav-modal-title-wrap{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-block:calc(60 / 1440 * 100vw);
  padding-right:calc(72 / 1440 * 100vw);
  position:relative;
  transition:0.3s;
}

.header__nav-modal-title-wrap::before{
  background-color:#34414E;
  content:"";
  display:block;
  height:100%;
  position:absolute;
  right:0;
  top:0;
  width:100vw;
}

.header__nav-modal-title-en{
  color:#fff;
  font-family:"Outfit", sans-serif;
  font-size:1.25rem;
  font-weight:600;
  line-height:1;
  z-index:1;
}

.header__nav-modal-title-jp{
  align-items:center;
  border-bottom:0.125rem solid #E7352C;
  color:#fff;
  display:flex;
  font-size:2rem;
  font-weight:700;
  justify-content:center;
  padding-bottom:calc(16 / 1440 * 100vw);
  padding-right:7.5rem;
  position:relative;
}

.header__nav-modal-title-jp::before{
  background-image:url(./../images/arrow.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  content:"";
  display:block;
  height:max(16px, 18 / 1440 * 100vw);
  position:absolute;
  right:calc(6 / 1440 * 100vw);
  transition:transform 0.6s;
  width:max(16px, 18 / 1440 * 100vw);
  z-index:1;
}

.header__nav-modal-title-jp::after{
  background-color:#fff;
  border-radius:50%;
  content:"";
  display:block;
  height:max(24px, 30 / 1440 * 100vw);
  position:absolute;
  right:0;
  transition:transform 0.6s;
  width:max(24px, 30 / 1440 * 100vw);
}
.header__nav-modal-double{
  align-items:center;
  border-right:0.125rem solid rgba(115, 137, 159, 0.2);
  display:flex;
  gap:2.5rem;
  margin-block:calc(60 / 1440 * 100vw);
  padding-right:calc(40 / 1440 * 100vw);
}

.header__nav-modal-double--none{
  border-right:none;
  padding-right:0;
}

.header__nav-modal-img{
  aspect-ratio:220/150;
  border-radius:0.5rem;
  height:auto;
  max-width:16.25rem;
  overflow:hidden;
  width:100%;
}

.header__nav-modal-img img{
  object-fit:cover;
  transition:transform 0.3s;
}
.header__nav-modal-text{
  color:#34414E;
  display:flex;
  font-size:1.25rem;
  font-weight:500;
  justify-content:center;
  margin-top:calc(4 / 1440 * 100vw);
}

.header__nav-modal-wrap:hover > .header__nav-modal{
  opacity:1;
  transform:translateY(0);
  visibility:visible;
}

.header__nav-modal-list{
  padding-block:calc(60 / 1440 * 100vw);
}

.header__nav-modal-item + .header__nav-modal-item{
  margin-top:calc(16 / 1440 * 100vw);
}

.header__nav-modal-link{
  color:#34414E;
  display:block;
  transition:color 0.3s;
}

.header__nav-modal-link:hover{
  color:#E7352C;
}

.header__nav-modal-wrapper{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
}

.header__nav-modal-wrapper .header__nav-modal-img{
  aspect-ratio:220/80;
}

.global-nav{
  position:relative;
  z-index:100;
}

.global-nav__body{
  background:#fff;
  display:none;
  left:0;
  max-height:100vh;
  overflow-y:auto;
  position:fixed;
  top:0;
  width:100%;
  z-index:199;
}

.global-nav__body-inner.inner{
  max-width:75rem;
}

.global-nav__close{
  align-items:center;
  border-bottom:0.0625rem solid rgba(115, 137, 159, 0.2);
  display:flex;
  justify-content:center;
  padding-block:1.25rem;
  position:relative;
  width:100%;
}

.global-nav__close-text{
  font-size:1.125rem;
  font-weight:500;
}

.global-nav__close-line::before,
.global-nav__close-line::after{
  background-color:#34414E;
  content:"";
  display:block;
  height:0.125rem;
  position:absolute;
  right:44%;
  width:1.25rem;
}

.global-nav__close-line::before{
  transform:rotate(45deg);
}

.global-nav__close-line::after{
  transform:rotate(-45deg);
}

.global-nav__nav{
  margin-bottom:8rem;
}

.global-nav__group{
  padding-block:2.5rem;
}

.global-nav__group:nth-child(1){
  border-bottom:0.0625rem solid rgba(115, 137, 159, 0.2);
}

.global-nav__title{
  color:#E7352C;
  font-size:1rem;
  font-weight:500;
}

.global-nav__top-lists{
  display:flex;
  gap:3rem;
  margin-top:1.25rem;
}

.global-nav__link{
  color:#34414E;
  font-size:1rem;
  padding-bottom:0.25rem;
  position:relative;
}

.global-nav__link::before{
  background-color:rgba(115, 137, 159, 0.2);
  bottom:0;
  content:"";
  height:0.0625rem;
  left:0;
  position:absolute;
  transform:scale(0, 1);
  transform-origin:left top;
  transition:transform 0.3s, border-bottom 0.3s;
  width:100%;
}
.global-nav__link:hover::before{
  transform:scale(1, 1);
}

.global-nav__under-lists{
  display:flex;
  gap:3rem;
}

.global-nav__under-items{
  margin-top:1.25rem;
}

.global-nav__under-item + .global-nav__under-item{
  margin-top:0.75rem;
}

.global-nav__under-link{
  align-items:center;
  display:flex;
  padding-right:1.5rem;
  position:relative;
  width:fit-content;
}

.global-nav__under-link::after{
  background-image:url(./../images/new_tab.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  content:"";
  display:block;
  height:0.875rem;
  position:absolute;
  right:0;
  width:0.875rem;
}

.global-nav__head{
  align-items:center;
  background-color:#E7352C;
  display:flex;
  height:calc(28 / 1440 * 100vw);
  justify-content:center;
  padding-block:0.5rem;
}

.global-nav__head--outside.is-hidden{
  visibility:hidden;
}

.global-nav__btn{
  align-items:center;
  color:#fff;
  display:flex;
  font-size:0.875rem;
  font-weight:500;
  gap:1rem;
  justify-content:center;
  position:relative;
  width:100%;
}

.global-nav__btn-icon{
  display:block;
}

.global-nav__btn-line{
  background-color:#fff;
  display:block;
  height:1px;
  left:50%;
  position:relative;
  transform:translateX(-50%);
  transition:0.5s;
  width:1.25rem;
}

.global-nav__btn-line:nth-of-type(1){
  top:-0.25rem;
}

.global-nav__btn-line:nth-of-type(2){
  top:0;
}

.global-nav__btn-line:nth-of-type(3){
  top:0.25rem;
}

.global-nav__btn.is-open .global-nav__btn-line:nth-of-type(1){
  top:0.125rem;
  transform:translateX(-50%) rotate(45deg);
}

.global-nav__btn.is-open .global-nav__btn-line:nth-of-type(2){
  background-color:transparent;
}

.global-nav__btn.is-open .global-nav__btn-line:nth-of-type(3){
  top:0;
  transform:translateX(-50%) rotate(-45deg);
}

.footer{
  background-color:#34414E;
  overflow:hidden;
  padding:calc(80 / 1440 * 100vw) 0 calc(80 / 1440 * 100vw);
}

.footer__top{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-bottom:calc(80 / 1440 * 100vw);
  position:relative;
}

.footer__top::after{
  background-color:rgba(255, 255, 255, 0.2);
  bottom:0;
  content:"";
  display:block;
  height:1px;
  left:0;
  margin-left:calc(50% - 50vw);
  position:absolute;
  width:100vw;
}

.footer__logo{
  aspect-ratio:216/28;
  display:block;
  height:auto;
  margin-inline:auto;
  max-width:calc(216 / 1440 * 100vw);
  width:100%;
}

.footer__logo img{
  object-fit:cover;
}

.footer__nav{
  align-items:center;
  display:flex;
  gap:calc(60 / 1440 * 100vw);
  justify-content:center;
}

.footer__nav + .footer__nav{
  margin-top:calc(60 / 1440 * 100vw);
}

.footer__nav-list a{
  color:#fff;
  font-size:1.125rem;
  font-weight:500;
  transition:color 0.3s;
}
.footer__under{
  align-items:center;
  display:flex;
  justify-content:space-around;
  margin-top:calc(30 / 1440 * 100vw);
}

.footer__policy{
  display:flex;
  gap:calc(20 / 1440 * 100vw);
}

.footer__policy-list a,
.footer__copy{
  color:#fff;
  font-weight:500;
}
.footer__policy-list a{
  font-size:0.875rem;
  transition:color 0.3s;
}

.footer__copy{
  display:block;
  font-size:0.75rem;
}

.footer__sns{
  display:flex;
  gap:calc(12 / 1440 * 100vw);
}

.footer__sns-link{
  aspect-ratio:40/40;
  height:auto;
  max-width:max(30px, 40 / 1440 * 100vw);
  transition:opacity 0.3s;
  width:100%;
}
.footer__sns-link img{
  object-fit:cover;
}

:root{
  --font-family-base:"Noto Sans JP", sans-serif;
  --font-family-en:"Outfit", sans-serif;
  --font-family-poppins:"Poppins", sans-serif;
}

:root{
  --font-weight-light:300;
  --font-weight-regular:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;
  --font-weight-extrabold:800;
  --font-weight-black:900;
}

:root{
  --white:#fff;
  --black:#34414e;
  --navy:#2e3442;
  --red:#e7352c;
  --blue:#64778a;
  --gray:#fbfbfb;
  --border:#73899f;
  --border-20:rgba(115, 137, 159, 0.2);
  --navy-26:rgba(46, 52, 66, 0.26);
}

:root{
  --conveyor:#ff7e77;
  --conveyor-bg:#ffebeb;
  --energy:#79c5a8;
  --energy-bg:#e4f6ef;
  --robot:#5b81da;
  --robot-bg:#e5edf5;
}

:root{
  --belt:#888888;
  --belt-roller:#f5f5f5;
}

:root{
  --z-index-header:100;
  --z-index-to-top:200;
  --z-index-drawer:1000;
  --z-index-hamburger:10000;
  --z-index-modal:100000;
}

:root{
  --cq-ref-mobile:375;
  --cq-ref:1440;
  --fluid-basis-mobile:(100vw - 320px) / (375 - 320);
  --fluid-basis:(100vw - 768px) / (1440 - 768);
  --fluid-basis-2:(100vw - 1440px) / (1800 - 1440);
}

:root{
  --duration-short:0.2s;
  --duration-base:0.3s;
  --duration-long:0.5s;
  --duration-extra-long:0.7s;
  --duration-scroll-short:0.5s;
  --duration-scroll:0.7s;
  --duration-scroll-long:0.9s;
  --duration-image-scale:0.8s;
  --ease-smooth-bounce:cubic-bezier(.48, .07, .33, .79);
}

.u-desktop{
  display:block;
}

.u-mobile{
  display:none;
}

.u-desktop-inline{
  display:inline;
}

.u-mobile-inline{
  display:none;
}

html{
  font-size:max(9px, min(1.1111111111vw, 16px));
  font-size:clamp(9px, 1.1111111111vw, 16px);
}

body{
  background-color:var(--gray);
  color:var(--black);
  font-family:var(--font-family-base);
  letter-spacing:0.05em;
  line-height:1.5;
}

main{
  letter-spacing:normal;
}

a[href^="tel:"]{
  pointer-events:none;
}

.u-pc{
  display:block;
}

.u-sp{
  display:none;
}

.u-visually-hidden{
  border:0;
  clip-path:inset(50%);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px;
}

.business{
  font-feature-settings:normal;
  margin-top:8.75rem;
}

.business__inner{
  margin-inline:auto;
  max-width:90rem;
  padding-inline:5rem;
}

.business__head{
  display:flex;
  flex-direction:column;
  gap:1.25rem;
  max-width:64.875rem;
}

.business__title{
  color:var(--navy);
  font-size:2.5rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.business__lead{
  color:var(--navy);
  font-size:1rem;
  line-height:1.75;
}

.business__columns{
  grid-column-gap:1.5625rem;
  -moz-column-gap:1.5625rem;
  align-items:start;
       column-gap:1.5625rem;
  display:grid;
  grid-template-columns:450fr 330fr 450fr;
  margin-top:3.5rem;
}

.business__card{
  background-color:var(--business-card-bg);
  border-radius:1.25rem;
  min-width:0;
  padding:1.8125rem 2.4375rem 1.25rem;
  position:relative;
}

.business__card--conveyor{
  --business-accent:var(--conveyor);
  --business-card-bg:var(--conveyor-bg);
  padding:2rem 1.25rem 1.25rem;
}

.business__card--energy{
  --business-accent:var(--energy);
  --business-card-bg:var(--energy-bg);
}

.business__card--robot{
  --business-accent:var(--robot);
  --business-card-bg:var(--robot-bg);
  padding-top:2.0625rem;
}

.business__badge{
  background-color:var(--white);
  border:2px solid var(--business-accent);
  border-radius:1.875rem;
  color:var(--navy);
  font-size:1rem;
  font-weight:var(--font-weight-medium);
  left:50%;
  line-height:1.75;
  padding:0.25rem 1.375rem;
  position:absolute;
  top:-1rem;
  transform:translateX(-50%);
  white-space:nowrap;
}

.business__card--energy .business__badge{
  top:-1.1875rem;
}

.business__card--robot .business__badge{
  top:-0.8125rem;
}

.business__badge--sm{
  font-size:0.9375rem;
}

.business__body{
  display:flex;
  flex-direction:column;
  gap:0.75rem;
}

.business__card--conveyor .business__body{
  gap:1.25rem;
}

.business__card--robot .business__body{
  gap:0.5rem;
}

.business__main{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.business__catch{
  color:var(--business-accent);
  font-size:1.75rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.business__row{
  align-items:center;
  display:flex;
  gap:0.6875rem;
  justify-content:space-between;
}

.business__photo{
  aspect-ratio:180/145;
  border-radius:0.625rem;
  flex-shrink:0;
  overflow:hidden;
  width:11.25rem;
}

.business__photo img{
  border-radius:inherit;
  height:100%;
  object-fit:cover;
  width:100%;
}

.business__row-text{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.business__desc{
  color:var(--navy);
  font-size:1rem;
  line-height:1.75;
}

.business__desc--narrow{
  max-width:10.75rem;
}

.business__point{
  color:var(--business-accent);
  font-size:1.125rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.business__customer{
  background-color:var(--white);
  border-radius:1.25rem;
  display:flex;
  flex-direction:column;
  gap:1.25rem;
  padding:1.25rem 1.1875rem;
}

.business__customer-head{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  max-width:100%;
  width:19.875rem;
}

.business__customer-title{
  color:var(--navy);
  font-size:1rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.business__customer-text{
  color:var(--navy);
  font-size:1rem;
  line-height:1.75;
}

.business__thumbs{
  display:flex;
  gap:1.3125rem;
}

.business__thumb{
  align-items:center;
  display:flex;
  flex:1;
  flex-direction:column;
  gap:0.375rem;
  min-width:0;
}

.business__thumb-img{
  aspect-ratio:110/60;
  border-radius:0.625rem;
  overflow:hidden;
  width:100%;
}

.business__thumb-img img{
  border-radius:inherit;
  height:100%;
  object-fit:cover;
  width:100%;
}

.business__thumb-label{
  color:var(--navy);
  font-size:0.75rem;
  line-height:1;
  text-align:center;
}

.business__icons{
  align-items:flex-start;
  display:flex;
  gap:1.125rem;
}

.business__icon{
  align-items:center;
  display:flex;
  flex:1;
  flex-direction:column;
  gap:0.375rem;
  min-width:0;
}

.business__icon-img{
  aspect-ratio:1/1;
  max-width:100%;
  width:3.75rem;
}

.business__icon-img img{
  height:auto;
  width:100%;
}

.business__icon-label{
  color:var(--navy);
  font-size:0.75rem;
  line-height:1.3;
  text-align:center;
  white-space:nowrap;
}

.business__robot{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.business__robot-imgs{
  align-items:center;
  display:flex;
  gap:1.25rem;
}

.business__robot-img{
  height:3.5625rem;
}

.business__robot-img img{
  height:100%;
  width:auto;
}

.business__robot-text{
  color:var(--navy);
  font-size:0.875rem;
  line-height:1.75;
}

.business__chart{
  align-items:center;
  display:flex;
  flex-direction:column;
  gap:1.375rem;
  margin-top:0.375rem;
}

.business__chart-title{
  color:var(--navy);
  font-size:1.75rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.business__chart-img{
  max-width:20.625rem;
  width:100%;
}

.business__chart-img img{
  height:auto;
  width:100%;
}

.business__stack{
  display:flex;
  flex-direction:column;
  gap:2.0625rem;
  margin-top:0.1875rem;
  min-width:0;
}

.business__btn-wrap{
  display:flex;
  justify-content:center;
  margin-top:3.5rem;
}

.business__btn{
  align-items:center;
  background-color:var(--red);
  border-radius:1.875rem;
  color:var(--white);
  display:flex;
  justify-content:space-between;
  max-width:100%;
  min-height:4.125rem;
  padding-inline:2rem 1.375rem;
  width:19.5rem;
}

.business__btn-text{
  font-size:1rem;
  font-weight:var(--font-weight-medium);
  letter-spacing:0.05em;
  line-height:1.8;
}

.business__btn-icon{
  align-items:center;
  aspect-ratio:1/1;
  background-color:var(--white);
  border-radius:calc(infinity * 1px);
  display:grid;
  flex-shrink:0;
  justify-items:center;
  overflow:hidden;
  place-items:center;
  transition:transform var(--duration-base) ease;
  width:2rem;
}

.business__btn-arrow{
  aspect-ratio:1/1;
  color:var(--red);
  display:block;
  width:0.875rem;
}
@keyframes business-btn-arrow{
  0%{
    opacity:1;
    transform:translateX(0);
  }
  45%{
    opacity:0;
    transform:translateX(1rem);
  }
  46%{
    opacity:0;
    transform:translateX(-1rem);
  }
  100%{
    opacity:1;
    transform:translateX(0);
  }
}
.history{
  margin-block:10rem;
  overflow-x:clip;
}

.history__inner{
  margin-inline:auto;
  max-width:90rem;
  padding-inline:5rem;
}

.history__title{
  color:var(--navy);
  font-size:2.5rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
  white-space:nowrap;
}

.history__band{
  --history-duration:108s;
  --history-gear-duration:6s;
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  margin-top:2.5rem;
}

.history__belt{
  align-items:center;
  align-self:start;
  background-color:var(--belt);
  border-radius:calc(infinity * 1px);
  display:flex;
  gap:6.25rem;
  grid-area:1/1;
  height:5rem;
  justify-content:center;
  margin-top:23rem;
  z-index:0;
}

.history__roller{
  aspect-ratio:1/1;
  background-color:var(--belt-roller);
  border-radius:calc(infinity * 1px);
  flex-shrink:0;
  width:2.5rem;
}

.history__belt--gear .history__roller{
  --history-gear-shape:polygon(
    42% 0%, 58% 0%, 61% 11%, 70% 4%, 81% 10%, 79% 22%, 90% 20%, 96% 31%, 88% 40%,
    100% 44%, 100% 56%, 88% 60%, 96% 69%, 90% 80%, 79% 78%, 81% 90%, 70% 96%,
    61% 89%, 58% 100%, 42% 100%, 39% 89%, 30% 96%, 19% 90%, 21% 78%, 10% 80%,
    4% 69%, 12% 60%, 0% 56%, 0% 44%, 12% 40%, 4% 31%, 10% 20%, 21% 22%, 19% 10%,
    30% 4%, 39% 11%
  );
  animation:history-gear var(--history-gear-duration) linear infinite;
  border-radius:0;
  clip-path:var(--history-gear-shape);
  position:relative;
}

.history__belt--gear .history__roller::after{
  background-color:var(--belt);
  border-radius:calc(infinity * 1px);
  content:"";
  inset:34%;
  position:absolute;
}

.history__viewport{
  grid-area:1/1;
  overflow-x:clip;
  z-index:1;
}

.history__list{
  --history-gutter:calc(50% - min(50%, 45rem) + 5rem);
  --history-cycle:0px;
  align-items:flex-start;
  animation:history-marquee var(--history-duration) linear infinite;
  display:flex;
  gap:7.5rem;
  margin-inline-start:calc(var(--history-gutter) - var(--history-cycle));
  width:-moz-max-content;
  width:max-content;
  will-change:transform;
}

.history__item{
  flex-shrink:0;
  width:25rem;
}

.history__head{
  display:flex;
  flex-direction:column;
  gap:1.75rem;
}

.history__year{
  color:var(--navy);
  font-family:var(--font-family-en);
  font-size:2.5rem;
  font-weight:var(--font-weight-medium);
  line-height:1;
  text-align:center;
}

.history__photo{
  aspect-ratio:4/3;
  border-radius:0.625rem;
  overflow:hidden;
}

.history__photo img{
  height:100%;
  object-fit:cover;
  width:100%;
}

.history__body{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  margin-top:6.25rem;
}

.history__subtitle{
  color:var(--navy);
  font-size:1.75rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.history__subtitle--sm{
  font-size:1.625rem;
}

.history__text{
  color:var(--navy);
  font-size:0.9375rem;
  line-height:1.75;
}

.history__character{
  align-self:start;
  aspect-ratio:100/139;
  grid-area:1/1;
  justify-self:start;
  margin-top:15.625rem;
  pointer-events:none;
  width:6.25rem;
  z-index:2;
}

.history__character img{
  height:100%;
  width:100%;
}

@keyframes history-marquee{
  to{
    transform:translateX(calc(var(--history-cycle) * -1));
  }
}
@keyframes history-gear{
  to{
    rotate:-1turn;
  }
}
.jrc-map{
  font-feature-settings:normal;
  container-type:inline-size;
  margin-top:7.5rem;
  padding-top:2.5rem;
}

.jrc-map__inner{
  margin-inline:auto;
  max-width:90rem;
  padding-inline:5rem;
  position:relative;
}

.jrc-map__head{
  display:flex;
  flex-direction:column;
  gap:1.25rem;
  max-width:59.625rem;
}

.jrc-map__title{
  color:var(--navy);
  font-size:2.5rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.jrc-map__lead{
  color:var(--navy);
  font-size:1rem;
  line-height:1.75;
}

.jrc-map__character{
  aspect-ratio:295/366;
  pointer-events:none;
  position:absolute;
  right:2.125rem;
  top:-2.5rem;
  width:18.4375rem;
}

.jrc-map__character img{
  height:100%;
  width:100%;
}

.jrc-map__map{
  --map-art-scale:1.08;
  --map-pin-scale:1.2;
  --map-lift:-6px;
  --map-spring:linear(0, 0.215 6%, 0.69 13%, 1.02 18%, 1.13 22%, 1.16 25%, 1.13 29%, 1.04 36%, 0.977 43%, 0.967 50%, 0.992 60%, 1.006 70%, 1.002 84%, 1);
  --map-out:cubic-bezier(0.33, 1, 0.68, 1);
  border-radius:1.25rem;
  margin-top:3.75rem;
  overflow:hidden;
  position:relative;
}

.jrc-map__scroll::-webkit-scrollbar{
  display:none;
}

.jrc-map__svg{
  display:block;
  height:auto;
  width:100%;
}

.jrc-map__spot{
  pointer-events:none;
}

.jrc-map__art{
  transition:transform 0.34s var(--map-out);
  will-change:transform;
}

.jrc-map__pin{
  cursor:pointer;
  pointer-events:auto;
  transition:transform 0.3s var(--map-out);
  will-change:transform;
}

.jrc-map__spot.is-active .jrc-map__art{
  transform:translateY(var(--map-lift)) scale(var(--map-art-scale));
}

.jrc-map__spot.is-active .jrc-map__pin{
  transform:scale(var(--map-pin-scale));
  transition:transform 0.66s var(--map-spring);
}

.jrc-map__map.is-hovering .jrc-map__spot:not(.is-active) .jrc-map__pin{
  opacity:0;
  pointer-events:none;
  transition:opacity 0.22s ease;
}

.jrc-map__pin:focus{
  outline:none;
}

.jrc-map__pin:focus-visible .jrc-map__disc{
  stroke:var(--white);
  stroke-width:3;
}

.jrc-map__ripple{
  fill:none;
  stroke:var(--red);
  stroke-width:1.5;
  animation:jrc-map-ripple 1.5s ease-out infinite;
  opacity:0;
  pointer-events:none;
}

.jrc-map__map.is-pending .jrc-map__pin{
  opacity:0;
}

.jrc-map__map.is-entering .jrc-map__pin{
  animation:jrc-map-pin-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
  animation-delay:calc(var(--i) * 0.06s + 0.2s);
}

.jrc-map__dimmer{
  opacity:0;
  pointer-events:none;
  transition:opacity 0.32s ease;
  will-change:opacity;
}

.jrc-map__map.is-hovering .jrc-map__dimmer{
  opacity:1;
}

@keyframes jrc-map-ripple{
  0%{
    opacity:0.3;
    transform:scale(1);
  }
  100%{
    opacity:0;
    transform:scale(1.7);
  }
}
@keyframes jrc-map-pin-in{
  from{
    opacity:0;
    transform:scale(0);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}
.jrc-map__overlay{
  background-color:var(--navy-26);
  inset:0;
  position:absolute;
  z-index:1;
}

.jrc-map__modal{
  display:flex;
  flex-direction:column;
  max-height:calc(100% - 3.3125rem);
  max-width:calc(100% - 2.5rem);
  position:absolute;
  right:1.25rem;
  top:1.75rem;
  width:50rem;
  z-index:2;
}

.jrc-map__modal[hidden]{
  display:none;
}

.jrc-map__slot{
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow-y:auto;
}

.jrc-map__close{
  align-items:center;
  aspect-ratio:1/1;
  border-radius:calc(infinity * 1px);
  color:var(--navy);
  cursor:pointer;
  display:grid;
  justify-items:center;
  place-items:center;
  position:absolute;
  right:0.25rem;
  top:0.25rem;
  transition:color var(--duration-base) ease;
  width:2.75rem;
  z-index:1;
}

.jrc-map__close-icon{
  aspect-ratio:1/1;
  display:block;
  position:relative;
  width:1rem;
}

.jrc-map__close-icon::before,
.jrc-map__close-icon::after{
  background-color:currentcolor;
  border-radius:calc(infinity * 1px);
  content:"";
  height:1.5px;
  left:0;
  position:absolute;
  top:50%;
  width:100%;
}

.jrc-map__close-icon::before{
  transform:rotate(45deg);
}

.jrc-map__close-icon::after{
  transform:rotate(-45deg);
}

.jrc-map__card{
  background-color:var(--white);
  border-radius:0.625rem;
  padding:1.875rem;
}

.jrc-map__card-row{
  align-items:flex-start;
  display:flex;
  gap:1.5rem;
}

.jrc-map__card-icon{
  aspect-ratio:1/1;
  flex-shrink:0;
  width:10rem;
}

.jrc-map__card-icon img{
  height:100%;
  width:100%;
}

.jrc-map__card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:1rem;
  min-width:0;
}

.jrc-map__card-title{
  font-size:1.5rem;
  font-weight:var(--font-weight-bold);
  letter-spacing:0.05em;
  line-height:1.6;
}

.jrc-map__card-text{
  color:var(--navy);
  font-size:1rem;
  line-height:1.75;
}

.jrc-map__card-catch{
  display:block;
}

.jrc-map__card-links{
  display:flex;
  flex-wrap:wrap;
  gap:2rem;
}

.jrc-map__card-link{
  align-items:center;
  border-bottom:1px solid var(--red);
  color:var(--navy);
  display:flex;
  gap:3rem;
  padding-block:0.5rem 0.4375rem;
  transition:color var(--duration-base) ease;
}

.jrc-map__card-link-text{
  font-size:0.875rem;
  line-height:1;
}

.jrc-map__card-link-arrow{
  align-items:center;
  aspect-ratio:1/1;
  color:var(--red);
  display:grid;
  flex-shrink:0;
  justify-items:center;
  place-items:center;
  transition:transform var(--duration-base) ease;
  width:1.75rem;
}

.jrc-map__card-link-arrow svg{
  aspect-ratio:1/1;
  display:block;
  width:0.765625rem;
}

.jrc-map__bar{
  display:none;
}

.jrc-map__bar-thumb{
  background-color:var(--red);
  border-radius:inherit;
  height:100%;
  left:0;
  position:absolute;
  top:0;
}
.jrc5-bg{
  margin-top:1.125rem;
  overflow-x:clip;
  position:relative;
}

.jrc5-bg__band{
  background-color:var(--red);
  background-image:url("../images/jrc-in-5-minutes/bg-texture.webp");
  background-repeat:repeat;
  bottom:18.59375rem;
  inset-inline:0;
  position:absolute;
  top:32.625rem;
  z-index:1;
}

.jrc5-bg__band::before{
  background-image:url("../images/jrc-in-5-minutes/bg-wave-top.webp");
  background-repeat:no-repeat;
  background-size:100% 100%;
  content:"";
  height:51.6875rem;
  inset-inline:0;
  position:absolute;
  top:-12.9375rem;
}

.jrc5-bg__band::after{
  background-image:url("../images/jrc-in-5-minutes/bg-wave-bottom.webp");
  background-repeat:no-repeat;
  background-size:100% 100%;
  bottom:-19.5rem;
  content:"";
  height:49.375rem;
  inset-inline:0;
  position:absolute;
}

.mv{
  margin-top:2.5rem;
  padding-bottom:6.25rem;
}

.mv__inner{
  margin-inline:auto;
  max-width:90rem;
  padding-inline:5rem;
  position:relative;
}

.mv__content{
  align-items:center;
  display:flex;
  flex-direction:column;
  position:relative;
  z-index:2;
}

.mv__balloon{
  transform:translateX(-4.7275rem);
  width:14.795rem;
}

.mv__balloon img{
  height:auto;
  width:100%;
}

.mv__title{
  line-height:1;
  text-align:center;
}

.mv__title-catch{
  color:var(--navy);
  display:block;
  font-size:5rem;
  font-weight:var(--font-weight-medium);
  letter-spacing:0.01em;
}

.mv__title-logo{
  color:var(--navy);
  display:block;
  font-family:var(--font-family-en);
  font-size:15rem;
  font-weight:var(--font-weight-medium);
  letter-spacing:0.045em;
  margin-left:0.8125rem;
  margin-top:0.671875rem;
}

.mv__title-accent{
  color:var(--red);
  margin-left:0.625rem;
}

.mv__lead{
  color:var(--white);
  font-size:1.25rem;
  line-height:1.6;
  margin-top:3.5rem;
  text-align:center;
}

.mv__scroll{
  align-items:center;
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  margin-top:3.5rem;
}

.mv__scroll-text{
  color:var(--white);
  font-family:var(--font-family-en);
  font-size:0.75rem;
  line-height:1;
}

.mv__scroll-line{
  --mv-scroll-line-height:2.9375rem;
  background-color:var(--white);
  height:var(--mv-scroll-line-height);
  position:relative;
  width:1px;
}

.mv__scroll-line::after{
  animation:mv-scroll-dot 2s ease-in-out infinite;
  aspect-ratio:1/1;
  background-color:var(--white);
  border-radius:calc(infinity * 1px);
  bottom:-0.21875rem;
  content:"";
  left:50%;
  position:absolute;
  transform:translateX(-50%);
  width:0.4375rem;
}

@keyframes mv-scroll-dot{
  0%{
    opacity:0;
    transform:translate(-50%, calc(var(--mv-scroll-line-height) * -1));
  }
  20%{
    opacity:1;
  }
  80%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:translate(-50%, 0);
  }
}
.mv__character{
  left:11.875%;
  position:absolute;
  top:12.125rem;
  width:19.028%;
}

.mv__character img{
  height:auto;
  width:100%;
}

.mv__illust{
  --mv-flip-duration:7s;
  --mv-flip-stagger:1s;
  perspective:56.25rem;
  position:absolute;
  z-index:2;
}

.mv__illust img{
  animation:mv-illust-flip var(--mv-flip-duration) linear infinite;
  animation-delay:calc(var(--mv-flip-order, 0) * var(--mv-flip-stagger));
  height:auto;
  width:100%;
  will-change:transform;
}

@keyframes mv-illust-flip{
  0%{
    transform:rotateY(0deg);
  }
  5%{
    transform:rotateY(180deg);
  }
  10%{
    transform:rotateY(360deg);
  }
  100%{
    transform:rotateY(360deg);
  }
}
.mv__illust--food{
  left:82.917%;
  top:8.25rem;
  width:12.917%;
}

.mv__illust--chemical{
  --mv-flip-order:1;
  left:73.819%;
  top:22.375rem;
  width:13.333%;
}

.numbers{
  padding-bottom:16.40625rem;
  position:relative;
  z-index:2;
}

.numbers__inner{
  margin-inline:auto;
  max-width:90rem;
  padding-inline:5rem;
  position:relative;
}

.numbers__title{
  color:var(--white);
  font-size:3.75rem;
  font-weight:var(--font-weight-medium);
  line-height:1.75;
}

.numbers__content{
  display:flex;
  flex-direction:column;
  gap:1.5rem;
  margin-top:2rem;
}

.numbers__row{
  display:grid;
  gap:1.5rem;
}

.numbers__row--triple{
  grid-template-columns:repeat(3, 1fr);
}

.numbers__row--double{
  grid-template-columns:repeat(2, 1fr);
}

.numbers__row--aside{
  grid-template-columns:410fr 845fr;
}

.numbers__row--pair{
  grid-template-columns:repeat(2, 1fr);
  width:65.9375%;
}

.numbers__stack{
  display:flex;
  flex-direction:column;
  gap:1.5rem;
  min-width:0;
}

.numbers__card{
  background-color:var(--white);
  border-radius:1.25rem;
  min-height:13.75rem;
  min-width:0;
  padding:2.25rem 1.5625rem;
}

.numbers__card--stack{
  flex:1;
  min-height:13.625rem;
  padding-inline:2rem;
}

.numbers__card--share{
  display:flex;
  flex-direction:column;
  min-height:28.75rem;
  padding-bottom:0.3125rem;
  padding-inline:2.1875rem;
}

.numbers__head{
  align-items:center;
  display:flex;
  gap:0.5rem;
  justify-content:space-between;
}

.numbers__label{
  align-items:center;
  display:flex;
  font-size:1.25rem;
  font-weight:var(--font-weight-bold);
  gap:0.5rem;
  letter-spacing:0.05em;
  line-height:1.6;
}

.numbers__label::before{
  aspect-ratio:1/1;
  background-color:var(--red);
  border-radius:calc(infinity * 1px);
  content:"";
  flex-shrink:0;
  width:0.875rem;
}

.numbers__label--sm{
  font-size:1.125rem;
}

.numbers__card--share .numbers__label{
  white-space:nowrap;
}

.numbers__note{
  font-size:0.75rem;
  font-weight:var(--font-weight-regular);
  letter-spacing:0.05em;
  line-height:1.6;
}

.numbers__note--end{
  margin-top:0.625rem;
  text-align:end;
}

.numbers__body{
  align-items:center;
  display:flex;
  gap:0.5rem;
  margin-top:1rem;
}

.numbers__body--gap-18{
  gap:1.125rem;
}

.numbers__body--gap-28{
  gap:1.75rem;
}

.numbers__body--center{
  justify-content:center;
}

.numbers__icon{
  aspect-ratio:1/1;
  flex-shrink:0;
  width:6.25rem;
}

.numbers__icon img{
  height:auto;
  width:100%;
}

.numbers__value{
  align-items:baseline;
  color:var(--red);
  display:flex;
  flex-wrap:nowrap;
  font-weight:var(--font-weight-bold);
  gap:0.25rem;
  line-height:1;
  white-space:nowrap;
}
html:not([lang=ja]) .numbers__value,
.translated-ltr .numbers__value,
.translated-rtl .numbers__value{
  flex-wrap:wrap;
  white-space:normal;
}

html:not([lang=ja]) .numbers__card--share .numbers__label,
.translated-ltr .numbers__card--share .numbers__label,
.translated-rtl .numbers__card--share .numbers__label{
  white-space:normal;
}

.numbers__value--wide{
  gap:0.75rem;
  margin-top:0.5rem;
}

.numbers__value--gap-0{
  gap:0;
}

.numbers__value--gap-8{
  gap:0.5rem;
}

.numbers__value--center{
  align-items:center;
}

.numbers__value--divider{
  border-top:1px solid var(--red);
  justify-content:center;
  margin-top:1.25rem;
  padding-top:1.25rem;
}

.numbers__num{
  --numbers-digit-w:0.591em;
  --numbers-comma-w:0.325em;
  font-feature-settings:"tnum";
  font-size:5.5rem;
  font-variant-numeric:tabular-nums;
  min-width:var(--numbers-digit-w);
  text-align:center;
}

.numbers__num--100{
  font-size:6.25rem;
}

.numbers__num--120{
  font-size:7.5rem;
}

.numbers__num--digits-2{
  min-width:calc(var(--numbers-digit-w) * 2);
}

.numbers__num--digits-3{
  min-width:calc(var(--numbers-digit-w) * 3);
}

.numbers__num--digits-4{
  min-width:calc(var(--numbers-digit-w) * 4);
}

.numbers__num--digits-6{
  min-width:calc(var(--numbers-digit-w) * 5 + var(--numbers-comma-w));
}

.numbers__unit{
  font-size:2.5rem;
  letter-spacing:0.05em;
  margin-right:-0.05em;
}

.numbers__unit--42{
  font-size:2.625rem;
}

.numbers__unit--60{
  font-size:3.75rem;
}

.numbers__unit--72{
  font-size:4.5rem;
}

.numbers__unit--100{
  font-size:6.25rem;
}

.numbers__unit--pc-mt-28{
  margin-top:1.75rem;
}

.numbers__rank{
  align-items:baseline;
  color:var(--red);
  display:flex;
  font-weight:var(--font-weight-bold);
  justify-content:center;
  line-height:1;
  margin-top:1.625rem;
}

.numbers__rank-label{
  font-size:5rem;
}

.numbers__rank-dot{
  font-size:3.75rem;
  letter-spacing:-0.04em;
}

.numbers__rank-num{
  font-size:9.375rem;
}

.numbers__character{
  bottom:-13.875rem;
  left:71.458%;
  position:absolute;
  width:24.868%;
}

.numbers__character img{
  height:auto;
  width:100%;
}

@media (max-width: 768px){
  .u-desktop{
    display:none;
  }

  .u-mobile{
    display:block;
  }

  .u-desktop-inline{
    display:none;
  }

  .u-mobile-inline{
    display:inline;
  }

  html{
    font-size:4.2666666667vw;
  }

  a[href^="tel:"]{
    pointer-events:auto;
  }

  .u-pc{
    display:none;
  }

  .u-sp{
    display:block;
  }

  .business{
    margin-top:5rem;
  }

  .business__inner{
    padding-inline:1.5rem;
  }

  .business__title{
    font-size:1.5rem;
    text-align:center;
  }

  .business__lead{
    font-size:0.875rem;
  }

  .business__columns{
    grid-template-columns:1fr;
    margin-top:3.75rem;
    row-gap:2.5rem;
  }

  .business__card{
    padding-inline:1.25rem;
  }

  .business__card--conveyor{
    padding-inline:1rem;
  }

  .business__badge{
    font-size:0.875rem;
  }

  .business__badge--sm{
    font-size:0.875rem;
  }

  .business__catch{
    font-size:1.25rem;
  }

  .business__row{
    align-items:stretch;
    flex-direction:column;
    gap:0.75rem;
  }

  .business__photo{
    width:100%;
  }

  .business__desc{
    font-size:0.875rem;
  }

  .business__desc--narrow{
    max-width:none;
  }

  .business__point{
    font-size:1rem;
  }

  .business__customer{
    gap:1rem;
    padding-inline:1rem;
  }

  .business__customer-head{
    width:100%;
  }

  .business__customer-text{
    font-size:0.875rem;
  }

  .business__thumbs{
    gap:0.5rem;
  }

  .business__icons{
    flex-wrap:wrap;
    gap:1rem;
    justify-content:center;
  }

  .business__icon{
    flex:0 0 3.75rem;
  }

  .business__chart{
    margin-top:0;
  }

  .business__chart-title{
    font-size:1.25rem;
  }

  .business__stack{
    gap:2.5rem;
    margin-top:1.25rem;
  }

  .business__btn-wrap{
    margin-top:2.5rem;
  }

  .history{
    margin-block:5rem;
  }

  .history__inner{
    padding-inline:1.5rem;
  }

  .history__title{
    font-size:1.75rem;
  }

  .history__band{
    margin-top:1.75rem;
  }

  .history__belt{
    gap:3.75rem;
    height:3rem;
    margin-top:15.75rem;
  }

  .history__roller{
    width:1.5rem;
  }

  .history__list{
    --history-gutter:1.5rem;
    gap:1.5rem;
  }

  .history__item{
    width:17rem;
  }

  .history__head{
    gap:1.25rem;
  }

  .history__year{
    font-size:1.75rem;
  }

  .history__body{
    margin-top:3.875rem;
  }

  .history__subtitle{
    font-size:1.25rem;
  }

  .history__subtitle--sm{
    font-size:1.125rem;
  }

  .history__text{
    font-size:0.875rem;
  }

  .history__character{
    margin-top:10.3125rem;
    width:4.5rem;
  }

  .jrc-map{
    margin-top:3.75rem;
    padding-top:0;
  }

  .jrc-map__inner{
    padding-inline:1.5rem;
  }

  .jrc-map__head{
    gap:0.75rem;
    max-width:none;
  }

  .jrc-map__title{
    font-size:1.5rem;
  }

  .jrc-map__lead{
    font-size:0.875rem;
  }

  .jrc-map__character{
    margin-inline:auto -0.5rem;
    margin-top:1.25rem;
    position:static;
    width:9.375rem;
  }

  .jrc-map__map{
    border-radius:0;
    margin-inline:calc(50% - 50cqw);
    margin-top:-3.375rem;
  }

  .jrc-map__scroll{
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
  }

  .jrc-map__svg{
    max-width:none;
    width:62.5rem;
  }

  .jrc-map__disc{
    stroke:rgba(0, 0, 0, 0);
    stroke-width:8;
    pointer-events:all;
  }

  .jrc-map__modal{
    left:1rem;
    max-height:calc(100% - 2rem);
    max-width:none;
    right:1rem;
    top:1rem;
    width:auto;
  }

  .jrc-map__close{
    right:0.125rem;
    top:0.125rem;
  }

  .jrc-map__card{
    padding:1.25rem 1rem;
  }

  .jrc-map__card-row{
    align-items:center;
    flex-direction:column;
    gap:0.75rem;
  }

  .jrc-map__card-icon{
    width:6.25rem;
  }

  .jrc-map__card-body{
    gap:0.75rem;
    width:100%;
  }

  .jrc-map__card-title{
    font-size:1.125rem;
  }

  .jrc-map__card-text{
    font-size:0.875rem;
  }

  .jrc-map__card-links{
    gap:1rem;
  }

  .jrc-map__card-link{
    gap:1.5rem;
  }

  .jrc-map__bar{
    background-color:var(--border-20);
    border-radius:calc(infinity * 1px);
    display:block;
    height:0.375rem;
    margin-top:0.75rem;
    position:relative;
  }

  .jrc5-bg{
    margin-top:0.625rem;
  }

  .jrc5-bg__band{
    bottom:4.84375rem;
    top:29.0625rem;
  }

  .jrc5-bg__band::before{
    background-image:url("../images/jrc-in-5-minutes/bg-wave-top_sp.webp");
    height:23.75rem;
    top:-2.5rem;
  }

  .jrc5-bg__band::after{
    bottom:-5.078125rem;
    height:12.85625rem;
  }

  .mv{
    margin-top:3.75rem;
    padding-bottom:3.75rem;
  }

  .mv__inner{
    padding-inline:1.5rem;
  }

  .mv__balloon{
    transform:translateX(-0.3125rem);
    width:12.1875rem;
  }

  .mv__title-catch{
    font-size:3rem;
    margin-top:0.25rem;
  }

  .mv__title-logo{
    font-size:9.125rem;
    margin-left:0;
    margin-top:0.25rem;
  }

  .mv__title-accent{
    margin-left:0;
  }

  .mv__lead{
    font-size:0.875rem;
    margin-top:14.0625rem;
  }

  .mv__scroll{
    margin-top:1.75rem;
  }

  .mv__character{
    left:1.333%;
    top:20.125rem;
    width:44.651%;
  }

  .mv__illust--food{
    left:74.133%;
    top:17.625rem;
    width:23.355%;
  }

  .mv__illust--chemical{
    left:57.333%;
    top:23.375rem;
    width:29.867%;
  }

  .numbers{
    padding-bottom:8.125rem;
  }

  .numbers__inner{
    padding-inline:1.5rem;
  }

  .numbers__title{
    font-size:2rem;
  }

  .numbers__content{
    gap:1rem;
    margin-top:1rem;
  }

  .numbers__row{
    gap:1rem;
    grid-template-columns:1fr;
  }

  .numbers__row--pair{
    width:100%;
  }

  .numbers__stack{
    gap:1rem;
  }

  .numbers__card{
    min-height:0;
    padding:1.5rem 1.375rem;
  }

  .numbers__card--stack{
    flex:initial;
    min-height:0;
    padding-inline:1.5rem;
  }

  .numbers__card--share{
    min-height:0;
    padding-inline:1.375rem;
  }

  .numbers__head{
    flex-wrap:wrap;
    gap:0.25rem;
  }

  .numbers__label{
    font-size:1rem;
    gap:0.3125rem;
  }

  .numbers__label::before{
    width:0.625rem;
  }

  .numbers__label--sm{
    font-size:1rem;
  }

  .numbers__card--share .numbers__label{
    white-space:normal;
  }

  .numbers__note{
    margin-left:auto;
    text-align:end;
  }

  .numbers__body{
    gap:0.25rem;
    justify-content:center;
  }

  .numbers__body--gap-18{
    gap:0.25rem;
  }

  .numbers__body--gap-28{
    gap:0.25rem;
  }

  .numbers__icon{
    width:4.5rem;
  }

  .numbers__value{
    flex-wrap:wrap;
    justify-content:center;
    white-space:normal;
  }

  .numbers__value--wide{
    margin-top:1rem;
  }

  .numbers__value--gap-8{
    gap:0.25rem;
  }

  .numbers__value--center{
    align-items:baseline;
  }

  .numbers__num{
    font-size:3.75rem;
  }

  .numbers__num--100{
    font-size:3.75rem;
  }

  .numbers__num--120{
    font-size:3.75rem;
  }

  .numbers__num--sp-48{
    font-size:3rem;
  }

  .numbers__unit{
    font-size:2rem;
  }

  .numbers__unit--42{
    font-size:1.75rem;
  }

  .numbers__unit--60{
    font-size:2.5rem;
  }

  .numbers__unit--72{
    font-size:2.25rem;
  }

  .numbers__unit--100{
    font-size:3.75rem;
  }

  .numbers__unit--sp-28{
    font-size:1.75rem;
  }

  .numbers__unit--pc-mt-28{
    margin-top:0;
  }

  .numbers__rank{
    margin-top:1rem;
  }

  .numbers__rank-label{
    font-size:3.375rem;
  }

  .numbers__rank-dot{
    font-size:2.5rem;
  }

  .numbers__rank-num{
    font-size:6.375rem;
  }

  .numbers__character{
    bottom:-10rem;
    left:45%;
    width:51%;
  }
}

@media screen and (max-width: 768px){
  .inner{
    padding-left:calc(24 / 375 * 100vw);
    padding-right:calc(24 / 375 * 100vw);
  }

  .recruit-inner{
    padding-left:20px;
    padding-right:20px;
  }

  .header{
    height:calc(60 / 375 * 100vw);
  }

  .header__inner{
    align-items:center;
    padding:0 calc(20 / 375 * 100vw);
  }

  .header__logo{
    max-width:calc(65 / 375 * 100vw);
  }

  .header__nav{
    display:none;
  }

  .header__nav-flex{
    gap:calc(4 / 375 * 100vw);
  }

  .header__nav-circle--pink,
  .header__nav-circle--blue,
  .header__nav-circle--green{
    display:block;
    height:calc(10 / 375 * 100vw);
    width:calc(10 / 375 * 100vw);
  }

  .header__nav-new-tab{
    height:calc(16 / 375 * 100vw);
    width:calc(16 / 375 * 100vw);
  }

  .header__hamburger{
    background-color:#34414E;
    border:none;
    cursor:pointer;
    display:block;
    height:calc(40 / 375 * 100vw);
    margin:0;
    outline:none;
    padding:0;
    position:relative;
    transition:0.3s;
    width:calc(40 / 375 * 100vw);
    z-index:999;
  }

  .header__drawer-gtranslate{
    display:block;
  }

  .header__nav-modal-title-jp::before{
    height:calc(18 / 375 * 100vw);
    right:calc(-36 / 375 * 100vw);
    width:calc(18 / 375 * 100vw);
  }

  .header__nav-modal-title-jp::after{
    height:calc(30 / 375 * 100vw);
    right:calc(-42 / 375 * 100vw);
    width:calc(30 / 375 * 100vw);
  }

  .global-nav__close{
    padding-block:1rem;
  }

  .global-nav__close-text{
    font-size:1rem;
  }

  .global-nav__close-line::before,
  .global-nav__close-line::after{
    right:36%;
  }

  .global-nav__nav{
    margin-bottom:2.5rem;
  }

  .global-nav__group{
    padding-block:2rem;
  }

  .global-nav__top-lists{
    gap:1.25rem;
  }

  .global-nav__under-lists{
    flex-direction:column;
  }

  .global-nav__under-list:not(:last-child){
    border-bottom:0.0625rem solid rgba(115, 137, 159, 0.2);
    padding-bottom:2.5rem;
  }

  .global-nav__head{
    height:calc(32 / 375 * 100vw);
  }

  .footer{
    padding:calc(60 / 375 * 100vw) 0 calc(30 / 375 * 100vw);
  }

  .footer__top{
    padding-bottom:calc(50 / 375 * 100vw);
  }

  .footer__logo{
    max-width:calc(216 / 375 * 100vw);
  }

  .footer__nav{
    align-items:baseline;
    flex-direction:column;
    gap:calc(30 / 375 * 100vw);
  }

  .footer__nav + .footer__nav{
    margin-top:0;
  }

  .footer__nav:nth-child(1){
    margin-top:calc(40 / 375 * 100vw);
  }

  .footer__nav:nth-child(3){
    margin-top:calc(30 / 375 * 100vw);
  }

  .footer__nav:nth-child(2){
    order:-1;
  }

  .footer__nav-list a{
    font-size:calc(16 / 375 * 100vw);
  }

  .footer__under{
    flex-direction:column;
    gap:calc(20 / 375 * 100vw);
    margin-top:calc(30 / 375 * 100vw);
  }

  .footer__policy{
    -moz-column-gap:calc(60 / 375 * 100vw);
         column-gap:calc(60 / 375 * 100vw);
    flex-wrap:wrap;
    row-gap:calc(20 / 375 * 100vw);
  }

  .footer__policy-list a{
    font-size:calc(14 / 375 * 100vw);
  }

  .footer__copy{
    font-size:calc(12 / 375 * 100vw);
    margin-top:calc(20 / 375 * 100vw);
  }

  .footer__sns{
    gap:calc(12 / 375 * 100vw);
    margin-inline:auto;
  }

  .footer__sns-link{
    max-width:calc(40 / 375 * 100vw);
  }
}

@media (any-hover: hover){
  .business__btn:hover .business__btn-icon{
    transform:scale(1.08);
  }

  .business__btn:hover .business__btn-arrow{
    animation:business-btn-arrow 0.48s ease-out;
  }

  .jrc-map__close:hover{
    color:var(--red);
  }

  .jrc-map__card-link:hover{
    color:var(--red);
  }

  .jrc-map__card-link:hover .jrc-map__card-link-arrow{
    transform:translateX(0.25rem);
  }
}

@media (hover: hover){
  .header__nav-modal-title-wrap:hover .header__nav-modal-title-jp::after,
  .header__nav-modal-title-wrap:hover .header__nav-modal-title-jp::before{
    transform:translateX(calc(10 / 1440 * 100vw));
  }

  .header__nav-modal-anchor:hover .header__nav-modal-img img{
    transform:scale(1.1);
  }

  .footer__nav-list a:hover{
    color:#E7352C;
  }

  .footer__policy-list a:hover{
    color:#E7352C;
  }

  .footer__sns-link:hover{
    opacity:0.7;
  }
}

@media (prefers-reduced-motion: reduce){
  .history__list,
  .history__belt--gear .history__roller{
    animation:none;
  }

  .jrc-map__art,
  .jrc-map__pin,
  .jrc-map__dimmer{
    transition-duration:0.01ms;
  }

  .jrc-map__ripple,
  .jrc-map__map.is-entering .jrc-map__pin{
    animation:none;
  }
}