@charset "UTF-8";

/*
Theme Name: kindai
Template: habakiri
*/
html body {
  max-width: 1920px;
  margin: 0 auto;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
  /*font-family: "Roboto", sans-serif, "BIZ UDPGothic", sans-serif;*/
  font-family: "BIZ UDPGothic", sans-serif, "Roboto", sans-serif;
  font-weight: 700;
  overflow-x: hidden;
}

html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body p {
  line-height: 1;
  margin: 0;
  font-family: "BIZ UDPGothic", sans-serif, "Roboto", sans-serif;
  font-weight: 700;
}

html body a {
  line-height: 1;
  margin: 0;
  /*font-family: "Roboto", sans-serif, "BIZ UDPGothic", sans-serif;*/
  font-family: "BIZ UDPGothic", sans-serif, "Roboto", sans-serif;
  font-weight: 700;
}

html body a:hover {
  text-decoration: none;
}

html body i {
  font-style: normal;
}

html body .pc {
  display: none;
}

html body .sp {
  display: block;
}

html body .ib {
  display: inline-block;
}

html body .udR {
  font-family: "BIZ UDPGothic", sans-serif;
  font-weight: 400;
}

html body .udB {
  font-family: "BIZ UDPGothic", sans-serif;
  font-weight: 700;
}

html body .rbL {
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
}

html body .rbLi {
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  font-style: italic;
}

html body .rbR {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
}

html body .rbM {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
}

html body .rbB {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
}

html body .rbBl {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
}

html body .osw {
  font-family: "Oswald", sans-serif;
}

html body .ltH {
  font-family: "Lato", sans-serif;
  font-weight: 100;
  font-style: normal;
}

html body .ltR {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-style: normal;
}

html body .ryM {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
}

html body ul {
  padding-inline-start: 0;
  margin: 0;
}

html body ul li {
  list-style: none;
}

html body .shatlinePos {
  position: relative;
}

html body .shatlinePos .shatline {
  position: absolute;
  width: 180vw;
}

html body .shatlinePos .shatline.lineL {
  transform: rotateZ(54deg);
  transform-origin: left;
  top: 0;
  left: 0;
}

html body .shatlinePos .shatline.lineR {
  transform: rotateZ(126deg);
  transform-origin: left;
  top: 0;
  left: 100%;
}

html body .shatlinePos .shatline .lineIn {
  border: 1px solid #003ad5;
  width: 100%;
  /* 動かす時0 */
}

html body .shatlinePos .shatline.fadeUp .lineIn {
  animation: shatline 1s ease-in-out forwards;
  animation-delay: 0.5s;
}

html body .blueBanner {
  font-size: clamp(18px, 1.5vw, 29px);
  background: #003ad5;
  position: relative;
  text-align: center;
  padding: 0.8em 0 0.8em 1em;
  color: white;
  letter-spacing: 0.3em;
}

html body .blueBanner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 100%;
  background: #1e1e1e;
}

html body .blueBanner.invert {
  background: #1e1e1e;
}

html body .blueBanner.invert::before {
  background: #003ad5;
}

html body .topCopy {
  display: none;
  position: fixed;
  width: 100%;
  max-width: 1920px;
  aspect-ratio: 16/9;
  align-items: center;
  z-index: 10;
  pointer-events: none;
  transition: 0.3s;
}

html body .topCopy h1 {
  font-size: clamp(30px, 2.6vw, 50px);
  line-height: 1.5;
  margin-left: 3em;
  overflow: hidden;
  animation: fadeInCopy 1s ease-in-out;
}

html body .topCopy h1 span {
  display: block;
}

html body .topCopy.goaway {
  opacity: 0;
}

html body .mainHeading {
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body .mainHeading img {
  width: 100%;
}

html body .tripCon {
  background: #e7ebfa;
  max-width: 1320px;
  margin: 0 auto;
  padding: 3em 0;
  width: calc(95% - 30px);
  text-align: center;
}

html body .tripCon h3 {
  font-size: clamp(16px, 1.66vw, 32px);
  padding-bottom: 0.5em;
  border-bottom: 3px solid #003ad5;
  margin-bottom: 1em;
  display: inline-block;
}

html body .tripCon p {
  font-size: clamp(12px, 1.354vw, 26px);
  margin-bottom: 1em;
}

html body .tripCon .contacts {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
}

html body .tripCon .contacts a {
  font-size: clamp(25px, 2.6vw, 50px);
  color: #1e1e1e;
  display: inline-block;
}

html body .tripCon .contacts a:last-of-type {
  color: #003ad5;
  margin-left: 1em;
}

@media screen and (min-width: 769px) {
  html body .tripCon .contacts a:last-of-type {
    margin-left: 0;
  }
}

html body .tripCon .contacts a img {
  height: 1em;
  width: auto;
  margin-right: 0.1em;
}

html body .insConBlock {
  padding: 3em 0;
}

html body .insConBlock .insConIn {
  max-width: 1320px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  padding: 3em 0;
  background: #e5ebfb;
}

html body .insConBlock .insConIn h2 {
  font-size: clamp(16px, 1.66vw, 32px);
  padding-bottom: 0.5em;
  border-bottom: 3px solid #0035c2;
  margin-bottom: 0.7em;
  text-align: center;
  display: inline-block;
}

html body .insConBlock .insConIn h4 {
  font-size: clamp(12px, 1.35vw, 26px);
  line-height: 1.7;
  margin-bottom: 1em;
  font-weight: 700;
}

html body .insConBlock .insConIn .insConLink {
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-wrap: wrap;
}

html body .insConBlock .insConIn .insConLink a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45%;
  font-size: clamp(20px, 2.03vw, 39px);
  padding: 0.7em 1.5em;
  position: relative;
}

html body .insConBlock .insConIn .insConLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 0.5em;
  height: 1em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
}

html body .insConBlock .insConIn .insConLink a:hover {
  opacity: 0.7;
}

html body .insConBlock .insConIn .insConLink a.nv {
  background: #25367c;
}

html body .insConBlock .insConIn .insConLink a.bl {
  background: #0035c2;
}

html body .insConBlock .insConIn .insConLink a h3 {
  color: white;
  font-size: 1em;
  display: flex;
  align-items: center;
}

html body .insConBlock .insConIn .insConLink a h3 img {
  height: 1.1em;
  width: auto;
  margin-right: 0.5em;
}

html body .insConBlock .insConIn .insConLink a p {
  color: white;
  font-size: 0.43em;
  margin-top: 1em;
}

html body a.viewmore {
  font-size: clamp(12px, 0.78vw, 15px);
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 300px;
  width: 61%;
  aspect-ratio: 30/7;
  position: relative;
  color: white;
  background: white;
  transition: 0.3s;
  letter-spacing: 0.1em;
}

html body a.viewmore::before {
  position: absolute;
  content: "";
  background: #003ad5;
  width: 100%;
  height: 0.66em;
  left: 0;
  bottom: 0;
}

html body a.viewmore i {
  position: absolute;
  background: #1e1e1e;
  width: 100%;
  height: 100%;
  right: 0;
  transition: 0.3s;
  z-index: 1;
}

html body a.viewmore b {
  color: white;
  position: absolute;
  transition: 0.3s;
  z-index: 2;
}

html body a.viewmore img {
  position: absolute;
  height: 0.75em;
  width: auto;
  z-index: 3;
  filter: grayscale(1) brightness(100);
  right: 0.5em;
  transition: 0.1s;
}

html body a.viewmore:hover {
  color: #1e1e1e;
}

html body a.viewmore:hover i {
  width: 0%;
}

html body a.viewmore:hover b {
  opacity: 0;
}

html body a.viewmore:hover img {
  filter: unset;
  right: 0.5em;
}

html body header .headerIn {
  position: fixed;
  z-index: 3;
  top: 0;
  left: 50%;
  max-width: 1920px;
  width: 100%;
  transform: translateX(-50%);
  height: clamp(60px, 5.2vw, 100px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 15px;
  padding-right: clamp(20px, 2.08vw, 40px);
  box-shadow: 0 -5px 10px rgba(0, 0, 0, 0.4);
  background: rgba(255, 255, 255, 0.9);
}

html body header .headerIn.under {
  background: white;
  box-shadow: 0 -5px 10px rgba(0, 0, 0, 0.4);
}

html body header .headerIn>a img {
  max-height: clamp(60px, 5.2vw, 100px);
}



html body header .headerIn .mainGlobal {
  width: 60%;
  display: flex;
  justify-content: right;
}

@media screen and (max-width: 1600px) {
  html body header .headerIn .mainGlobal {
    width: 75%;
  }
}


@media screen and (max-width: 1366px) {
  html body header .headerIn .mainGlobal {
    width: 90%;
  }
}

@media screen and (max-width: 1035px) {
  html body header .headerIn .mainGlobal {
    width: 100%;
  }

  html body header .headerIn .mainGlobal .pcMenu
}

html body header .headerIn .mainGlobal .pcMenu {
  display: none;
  padding-right: 1vw;
}

html body header .headerIn .mainGlobal .pcMenu ul {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

html body header .headerIn .mainGlobal .pcMenu ul li {
  position: relative;
}

html body header .headerIn .mainGlobal .pcMenu ul li a {
  font-size: min(0.83vw, 16px);
  display: block;
  color: #1e1e1e;
  line-height: 2;
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainGlobal .pcMenu ul li a {
    font-size: min(1.83vw, 16px);
  }
}


html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu {
  display: flex;
  align-items: center;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu i {
  position: relative;
  border: 1px solid #bbbbbb;
  display: inline-block;
  margin-left: 0.5em;
  width: 1em;
  height: 1em;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu i::before,
html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu i::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 62%;
  height: 2px;
  background: #003ad5;
  transform-origin: center;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu i::before {
  transform: translate(-50%, -50%) rotateZ(-90deg);
  transition: 0.3s;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.inMenu i::after {
  transform: translate(-50%, -50%);
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con1 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #39383a;
  background: #39383a;
  transition: 0.3s;
  color: white;
  /*width: min(7.81vw, 150px);*/
  margin-left: 0.2em;
  text-align: center;
  font-size: min(0.73vw, 14px);
  padding: 0.5em 1em;
  white-space: nowrap;
}

@media screen and (min-width: 1025px) {
  html body header .headerIn .mainGlobal .pcMenu ul li a.con1 {
    font-size: min(1.73vw, 14px);
  }

}

html body header .headerIn .mainGlobal .pcMenu ul li a.con1 img {
  margin-right: 0.2em;
  height: 1.5em;
  width: auto;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con1:hover {
  background: white;
  color: #39383a;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con1:hover img {
  filter: invert(1);
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con2 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #003ad5;
  background: #003ad5;
  transition: 0.3s;
  color: white;
  /*width: min(7.81vw, 150px);*/
  width: auto;
  text-align: center;
  font-size: min(0.73vw, 14px);
  padding: 0.5em 1em;
  white-space: nowrap;
}

@media screen and (min-width: 1025px) {
  html body header .headerIn .mainGlobal .pcMenu ul li a.con2 {
    font-size: min(1.73vw, 14px);
  }
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con2 img {
  /*margin-right: 0.5em;
  height: 1.25em;*/
  height: 1.1em;
  margin-right: 0.2em;
  width: auto;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con2:hover {
  background: white;
  color: #003ad5;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.con2:hover img {
  filter: invert(1);
}

html body header .headerIn .mainGlobal .pcMenu ul li:hover a.inMenu i::before {
  transform: translate(-50%, -50%) rotateZ(0deg);
}

html body header .headerIn .mainGlobal .pcMenu ul li:hover ul {
  opacity: 1;
  pointer-events: all;
}

html body header .headerIn .mainGlobal .pcMenu ul li ul {
  position: absolute;
  bottom: 0;
  transform: translate(-50%, 100%);
  opacity: 0;
  pointer-events: none;
  display: block;
  width: 15em;
  left: 50%;
  background: white;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
  padding: 1em 2em;
  font-size: min(0.83vw, 16px);
}

@media screen and (min-width: 1025px) {
  html body header .headerIn .mainGlobal .pcMenu ul li ul {
    width: 20em;
  }
}

html body header .headerIn .mainGlobal .pcMenu ul li ul li a {
  font-size: min(0.67vw, 13px);
  color: #888889;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainGlobal .pcMenu ul li ul li a {
    font-size: min(1.67vw, 15px);
    color: #888889;
    transition: 0.3s;
  }
}


html body header .headerIn .mainGlobal .pcMenu ul li ul li a img {
  opacity: 0;
  transition: 0.3s;
}

html body header .headerIn .mainGlobal .pcMenu ul li ul li a:hover {
  color: #1e1e1e;
}

html body header .headerIn .mainGlobal .pcMenu ul li ul li a:hover img {
  opacity: 1;
  transform: translateX(30%);
}

html body header .headerIn .mainGlobal .pcMenu ul li a.head-ec {
  margin: 0 0.8vw;
  width: fit-content;
}

html body header .headerIn .mainGlobal .pcMenu ul li a.head-ec img {
  max-width: 150px;
  width: 100%;
  display: inline-block;
}

@media screen and (max-width: 1024px) {
  html body header .headerIn .mainGlobal .pcMenu ul li a.head-ec img {
    /*margin: 0 0.8vw;
    width: fit-content;*/
    max-width: 85px;
  }
}

html body header .headerIn .mainGlobal .btnPos {
  aspect-ratio: 3/2;
  width: clamp(55px, 3.125vw, 60px);
}

@media screen and (max-width: 768px) {
  .ec_link {
    display: block;
    aspect-ratio: 6 / 4;
    width: clamp(55px, 3.125vw, 60px);
    width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 12%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    margin-right: 0.8vw;
  }
}



html body header .headerIn .mainMenu {
  position: fixed;
  right: 0;
  top: max(60px, 5.2vw);
  height: calc(100dvh - max(60px, 5.2vw));
  width: 100%;
  opacity: 0;
  pointer-events: none;
  transform: translateX(100%);
  transition: 0.3s;
  background: url("./img/menu-ka-sp.png") no-repeat top center/contain #b2c4f2;
  background-blend-mode: multiply;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body header .headerIn .mainMenu .mainMenuIn {
  padding: 30px 0 80px;
  width: 78.4%;
  height: inherit;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

html body header .headerIn .mainMenu .mainMenuIn::-webkit-scrollbar {
  display: none;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock {
  margin-bottom: 2em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .direct {
  margin-bottom: 5em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .direct a {
  font-size: clamp(13px, 0.93vw, 18px);
  color: white;
  background: #1e1e1e;
  border: 1px solid white;
  display: inline-block;
  padding: 1em 2em;
  width: 45%;
  max-width: 225px;
  position: relative;
  transition: 0.3s;
  text-align: center;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .direct a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  filter: grayscale(1) brightness(100);
  height: 0.8em;
  aspect-ratio: 11/8;
  right: 0.75em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .direct a:first-of-type {
  margin-right: min(9%, 1em);
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .direct a:hover {
  background: #1e1e1e;
  filter: invert(1);
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock a {
  color: #1e1e1e;
  letter-spacing: 0.1em;
  font-size: clamp(13px, 0.83vw, 16px);
  display: inline-block;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock h2 {
  font-size: clamp(16px, 1.45vw, 28px);
  margin-bottom: 0.5em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock h2 a {
  font-size: 1em;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #003ad5;
  display: block;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock>a {
  display: block;
  line-height: 2;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock>a:last-of-type {
  padding: 0;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 {
  position: relative;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 i {
  position: absolute;
  right: 0;
  top: 0.5em;
  transform: translateY(-60%);
  width: 1.5em;
  height: 1.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 i span {
  display: block;
  position: relative;
  width: 70%;
  height: 2px;
  background: #003ad5;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 i span::before {
  content: "";
  width: 100%;
  height: 100%;
  transform-origin: center;
  transform: rotateZ(90deg);
  background: #003ad5;
  position: absolute;
  transition: 0.3s;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 i.open span::before {
  transform: none;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul li .mainMenuSub {
  display: none;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul li ul {
  display: block;
  margin-right: 5em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul li ul li a {
  font-size: clamp(13px, 0.833vw, 16px);
  line-height: 2.3;
  display: block;
  width: 14em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul li ul li a span {
  color: #003ad5;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock>ul>li>a {
  position: relative;
  display: block;
  border-bottom: 1px solid #3361dd;
  padding: 0.5em;
  margin-bottom: 0.5em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon {
  display: none;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con1 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #39383a;
  background: #39383a;
  transition: 0.3s;
  color: white;
  width: min(8.85vw, 170px);
  text-align: center;
  font-size: min(0.73vw, 14px);
  padding: 0.5em 1em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con1 img {
  margin-right: 0.5em;
  height: 1.5em;
  width: auto;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con1:hover {
  background: white;
  color: #39383a;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con1:hover img {
  filter: invert(1);
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con2 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #003ad5;
  background: #003ad5;
  transition: 0.3s;
  color: white;
  width: min(8.85vw, 170px);
  text-align: center;
  font-size: min(0.73vw, 14px);
  padding: 0.5em 1em;
  white-space: nowrap;
  margin-right: 1.5em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con2 img {
  margin-right: 0.5em;
  height: 1.25em;
  width: auto;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con2:hover {
  background: white;
  color: #003ad5;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con2:hover img {
  filter: invert(1);
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .snsBlock {
  margin: 0 auto;
  width: 56%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 3em;
  margin-bottom: 3em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock p a:first-of-type {
  margin-right: 1em;
}

html body header .headerIn .mainMenu .spCon {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  width: 100%;
}

html body header .headerIn .mainMenu .spCon a {
  display: block;
  width: 33.3333333333%;
  font-size: 14px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em 0;
}

html body header .headerIn .mainMenu .spCon a:first-of-type {
  background: #003ad5;
  border-top: 1px solid white;
}

html body header .headerIn .mainMenu .spCon a:nth-of-type(2) {
  background: #39383a;
  border: 1px solid white;
  border-bottom-width: 0;
}

html body header .headerIn .mainMenu .spCon a:last-of-type {
  background: #1e1e1e;
  border-top: 1px solid white;
}

html body header .headerIn .mainMenu .spCon a i {
  font-style: normal;
}

html body header .headerIn .mainMenu .spCon a i img {
  display: block;
  margin: 0.5em auto 0;
}

html body header .headerIn .menubtn {
  background: #1e1e1e;
  aspect-ratio: 3/2;
  width: clamp(55px, 3.125vw, 60px);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: clamp(20px, 2.08vw, 40px);
}

html body header .headerIn .menubtn span {
  position: relative;
  width: 52%;
  height: 1px;
  background: white;
  display: block;
}

html body header .headerIn .menubtn span::before,
html body header .headerIn .menubtn span::after {
  content: "";
  position: absolute;
  width: 100%;
  height: inherit;
  top: 0;
  left: 0;
  background: inherit;
  transform-origin: center;
}

html body header .headerIn .menubtn span::before {
  transform: translateY(-700%);
  transition: 0.3s;
}

html body header .headerIn .menubtn span::after {
  transform: translateY(700%);
  transition: 0.3s;
}

html body header .headerIn .menubtn:hover span::before {
  transform: translateY(-400%);
}

html body header .headerIn .menubtn:hover span::after {
  transform: translateY(400%);
}

html body header .headerIn.active .mainMenu {
  transform: translateX(0);
  opacity: 1;
  pointer-events: all;
}

html body header .headerIn.active .menubtn {
  background: white;
}

html body header .headerIn.active .menubtn span {
  background: rgba(0, 0, 0, 0);
}

html body header .headerIn.active .menubtn span::before,
html body header .headerIn.active .menubtn span::after {
  background: #1e1e1e;
}

html body header .headerIn.active .menubtn span::before {
  transform: rotateZ(-20deg);
}

html body header .headerIn.active .menubtn span::after {
  transform: rotateZ(20deg);
}

html body header .fixMenu a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5em;
  background: #25367c;
  font-size: clamp(16px, 0.9375vw, 18px);
  font-weight: 400;
  line-height: 1.25;
  padding: 0.5em;
  color: white;
}

html body header .fixMenu a img {
  height: 2.5em;
}

html body header .fixMenu a i {
  margin-left: 0.5em;
}

html body header .fixMenu a i b {
  font-size: 1.428em;
}

html body header#recHeader .recHeadIn {
  position: fixed;
  z-index: 3;
  top: 0;
  left: 50%;
  max-width: 1920px;
  width: 100%;
  transform: translateX(-50%);
  height: clamp(60px, 5.2vw, 100px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 15px;
  padding-right: clamp(20px, 2.08vw, 40px);
  transition: 0.3s;
  background: rgba(255, 255, 255, 0.8);
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn {
    padding-right: 0;
    overflow: hidden;
  }
}

html body header#recHeader .recHeadIn>a {
  display: block;
  max-height: clamp(60px, 5.2vw, 100px);
  width: 80%;
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn>a {
    width: 25%;
  }
}

html body header#recHeader .recHeadIn .recMenu {
  position: fixed;
  width: 100%;
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(194, 243, 236) 100%);
  max-width: 1920px;
  height: calc(100dvh - clamp(60px, 5.2vw, 100px));
  top: clamp(60px, 5.2vw, 100px);
  left: 50%;
  transform: translateX(50%);
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recMenu {
    position: static;
    height: clamp(60px, 5.2vw, 100px);
    display: flex;
    align-items: center;
    justify-content: right;
    transform: none;
    opacity: 1;
    pointer-events: all;
    width: 75%;
    background: transparent;
  }
}

html body header#recHeader .recHeadIn .recMenu .global {
  width: 80%;
  margin: 0 auto;
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recMenu .global {
    display: flex;
    align-items: center;
    justify-content: center;
    width: unset;
    margin-right: 2%;
  }
}

html body header#recHeader .recHeadIn .recMenu .global li {
  text-align: center;
}

html body header#recHeader .recHeadIn .recMenu .global li a {
  display: block;
  font-size: clamp(14px, 0.833vw, 16px);
  color: #1e1e1e;
  padding: 0.5em 2em;
  margin: 2em 0;
  border: 0px solid #1E1E1E;
  border-width: 0 1px;
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recMenu .global li a {
    border-left-width: 0px;
    margin: 0;
    padding: 0.5em 1.5em;
    text-shadow: 0 0 10px white, 0 0 20px white, 0 0 30px white, 0 0 40px white, 0 0 50px white, 0 0 10px white;
  }
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recMenu .global li:first-of-type a {
    border-left-width: 1px;
  }
}

html body header#recHeader .recHeadIn .recMenu>a {
  font-size: clamp(18px, 1.875vw, 36px);
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid #05d3b5;
  display: block;
  padding: 0.5em 1.5em;
  border-radius: 2em;
  text-align: center;
  color: #1e1e1e;
  max-width: 300px;
  width: 80%;
  margin: 0 auto;
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recMenu>a {
    text-align: left;
    margin: 0;
    width: 15%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
    padding-right: 1em;
  }
}

html body header#recHeader .recHeadIn .recBtn {
  background: #1e1e1e;
  aspect-ratio: 3/2;
  width: clamp(55px, 3.125vw, 60px);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: clamp(20px, 2.08vw, 40px);
}

@media screen and (min-width: 1025px) {
  html body header#recHeader .recHeadIn .recBtn {
    display: none;
  }
}

html body header#recHeader .recHeadIn .recBtn span {
  position: relative;
  width: 52%;
  height: 1px;
  background: white;
  display: block;
}

html body header#recHeader .recHeadIn .recBtn span::before,
html body header#recHeader .recHeadIn .recBtn span::after {
  content: "";
  position: absolute;
  width: 100%;
  height: inherit;
  top: 0;
  left: 0;
  background: inherit;
  transform-origin: center;
}

html body header#recHeader .recHeadIn .recBtn span::before {
  transform: translateY(-700%);
  transition: 0.3s;
}

html body header#recHeader .recHeadIn .recBtn span::after {
  transform: translateY(700%);
  transition: 0.3s;
}

html body header#recHeader .recHeadIn .recBtn:hover span::before {
  transform: translateY(-400%);
}

html body header#recHeader .recHeadIn .recBtn:hover span::after {
  transform: translateY(400%);
}

html body header#recHeader .recHeadIn.active {
  background: white;
}

html body header#recHeader .recHeadIn.active .recMenu {
  transform: translateX(-50%);
  pointer-events: all;
  opacity: 1;
}

html body header#recHeader .recHeadIn.active .recBtn {
  background: white;
}

html body header#recHeader .recHeadIn.active .recBtn span {
  background: rgba(0, 0, 0, 0);
}

html body header#recHeader .recHeadIn.active .recBtn span::before,
html body header#recHeader .recHeadIn.active .recBtn span::after {
  background: #1e1e1e;
}

html body header#recHeader .recHeadIn.active .recBtn span::before {
  transform: rotateZ(-20deg);
}

html body header#recHeader .recHeadIn.active .recBtn span::after {
  transform: rotateZ(20deg);
}

html body header#recHeader.under .recHeadIn {
  background: white;
}

html body .breadcrumbs {
  margin: 0 auto;
  width: 80%;
  max-width: 1420px;
  font-size: clamp(10px, 0.677vw, 13px);
  padding: 1em 0;
}

html body .faqBlock {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body .faqBlock .accordion_one {
  margin-bottom: 1em;
}

html body .faqBlock .accordion_one .accordion_header {
  background-color: #e5ebfb;
  border: 1px solid #003ad5;
  font-size: clamp(13px, 1.51vw, 29px);
  padding: 0.5em 5%;
  position: relative;
  z-index: 1;
  cursor: pointer;
  transition: 0.3s;
}

html body .faqBlock .accordion_one .accordion_header p {
  text-indent: -1.5em;
  padding-left: 1em;
  line-height: 1.4;
}

html body .faqBlock .accordion_one .accordion_header:hover {
  opacity: 0.8;
}

html body .faqBlock .accordion_one .accordion_header::before {
  content: "";
  background: url(./img/arrow-start.svg) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  aspect-ratio: 1/1;
  width: 1.2em;
}

html body .faqBlock .accordion_one .accordion_inner {
  display: none;
  border-left: 1px solid #003ad5;
  border-right: 1px solid #003ad5;
  border-bottom: 1px solid #003ad5;
  box-sizing: border-box;
  font-size: clamp(12px, 1.04vw, 20px);
}

html body .faqBlock .accordion_one .accordion_inner p {
  align-items: flex-start;
  justify-content: left;
  display: flex;
  line-height: 1.5;
  font-size: clamp(12px, 1.04vw, 20px);
}

html body .faqBlock .accordion_one .accordion_inner .box_one {
  padding: 1em 5%;
}

html body .faqBlock .accordion_one .accordion_inner .box_one span {
  color: white;
  font-size: 1.45em;
  background: #003ad5;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  padding: 0.25em;
  width: 1.5em;
  margin-right: 0.5em;
}

html body .faqBlock .accordion_one .accordion_inner.stay {
  display: block;
}

html body .pdfSelector {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1220px;
  margin: 0 auto 3em;
  width: 80%;
  flex-wrap: wrap;
}

html body .pdfSelector .selectIn {
  font-size: clamp(12px, 1.04vw, 20px);
  border: 1px solid #1e1e1e;
  padding: 1em 3em 1em 1em;
  border-radius: 1em;
  position: relative;
  width: 100%;
  margin-bottom: 2em;
}

html body .pdfSelector .selectIn::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  background: url(./img/icon-open.svg) no-repeat center center/contain;
  filter: invert(1);
  width: 1.5em;
  height: 1.5em;
  z-index: 1;
}

html body .pdfSelector .selectIn::after {
  content: "▼";
  position: absolute;
  font-size: 0.75em;
  color: #1e1e1e;
  bottom: -3em;
  left: 50%;
  transform: translate(-50%, -50%);
}

html body .pdfSelector .selectIn select {
  font-size: 1em;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
}

html body .pdfSelector a {
  font-size: clamp(12px, 1.04vw, 20px);
  color: white;
  background: #003ad5;
  display: block;
  padding: 1.25em 3em 1.25em 1em;
  border-radius: 1em;
  border: 1px solid #1e1e1e;
  position: relative;
  width: 100%;
}

html body .pdfSelector a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  background: url(./img/icon-open.svg) no-repeat center center/contain;
  width: 1.5em;
  height: 1.5em;
}

html body .insCon {
  border: 1px solid #1e1e1e;
  font-size: clamp(10px, 0.88vw, 17px);
  padding: 1em;
  max-width: 690px;
  width: 70%;
  margin: 0 auto;
  text-align: center;
  margin-top: 5em;
}

html body .insCon p {
  font-size: 1em;
  line-height: 1.5;
  font-weight: 400;
}

html body main {
  position: relative;
  z-index: 0;
  margin: 0;
}

html body main .mainSvg {
  display: none;
}

html body main section.top .mainVis {
  width: 100%;
  aspect-ratio: 9/16;
  position: relative;
  /* img {
      width    : 100%;
      animation: visIn 1s ease-in-out;
  } */
}

html body main section.top .mainVis .title h1 {
  font-size: clamp(30px, 2.6vw, 50px);
  width: 89%;
  margin: 0 auto;
  animation: fadeInCopy 1s ease-in-out;
  line-height: 1.5;
  padding-top: 2em;
}

html body main section.top .mainVis .title h1 span {
  display: block;
}

html body main section.top .mainVis .sns {
  position: relative;
  height: 100%;
  max-width: 1660px;
  width: 90%;
  margin: 0 auto;
  animation: visIn 0.5s ease-in-out forwards;
}

html body main section.top .mainVis .sns .snsIn {
  position: absolute;
  left: 0;
  bottom: 5%;
}

html body main section.top .mainVis .sns .snsIn a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 2em;
}

html body main section.top .about {
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  padding-bottom: clamp(50px, 7.29vw, 140px);
}

html body main section.top .about .aboutIn {
  width: 78.6%;
  margin: 0 auto;
  max-width: 1320px;
}

html body main section.top .about .aboutIn .aboutTitle {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
}

html body main section.top .about .aboutIn .aboutTitle .eachTextAnime {
  font-size: 1em;
  display: inline-block;
  opacity: 0;
}

html body main section.top .about .aboutIn .aboutTitle .eachTextAnime span {
  opacity: 0;
}

html body main section.top .about .aboutIn .aboutTitle .eachTextAnime.appeartext1 {
  opacity: 1;
}

html body main section.top .about .aboutIn .aboutTitle .eachTextAnime.appeartext1 span {
  animation: text_anime_on 0.25s ease-out forwards;
}

html body main section.top .about .aboutIn .aboutTitle i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
  opacity: 0;
}

html body main section.top .about .aboutIn .aboutTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

html body main section.top .about .aboutIn .aboutTitle p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  transform: translate(45%, 55%);
  opacity: 0;
}

html body main section.top .about .aboutIn .aboutTitle p.fadein {
  animation: fadeP 0.4s ease-in-out forwards;
}

html body main section.top .about .aboutIn .aboutMain {
  opacity: 0;
  text-align: center;
}

html body main section.top .about .aboutIn .aboutMain.fadein {
  animation: fadeInAbout 0.5s ease-out forwards;
}

html body main section.top .about .aboutIn .aboutMain .sp img,
html body main section.top .about .aboutIn .aboutMain .pc img {
  width: 25%;
  max-width: 172px;
}

html body main section.top .about .aboutIn .aboutMain p {
  font-size: clamp(12px, 0.9375vw, 18px);
  line-height: 2.33;
  letter-spacing: 0.05em;
  display: inline-block;
  text-align: left;
  margin-bottom: 4em;
}

html body main section.top .about .aboutIn .aboutMain a {
  margin: 3em auto 0;
}

html body main section.top .service {
  /* margin-bottom: clamp(50px, 13.8vw, 265px); */
}

html body main section.top .service .serviceTitle {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  text-align: center;
  margin-top: 1em;
}

html body main section.top .service .serviceTitle .eachTextAnime {
  font-size: 1em;
  display: inline-block;
  opacity: 0;
}

html body main section.top .service .serviceTitle .eachTextAnime span {
  opacity: 0;
}

html body main section.top .service .serviceTitle .eachTextAnime.appeartext2 {
  opacity: 1;
}

html body main section.top .service .serviceTitle .eachTextAnime.appeartext2 span {
  animation: text_anime_on 0.25s ease-out forwards;
}

html body main section.top .service .serviceTitle i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
  opacity: 0;
}

html body main section.top .service .serviceTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

html body main section.top .service .serviceTitle p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 28%;
  transform: translate(45%, 55%);
  opacity: 0;
}

html body main section.top .service .serviceTitle p.fadein {
  animation: fadeP2 0.4s ease-in-out forwards;
}

html body main section.top .service .sBlock {
  position: relative;
  transition: 0.3s ease-in-out;
  opacity: 0;
  transform: translateX(-100%);
}

html body main section.top .service .sBlock .heading {
  width: 78.6%;
  max-width: 610px;
  margin: 0 auto;
  padding: 2em 0px;
}

html body main section.top .service .sBlock .heading .headingIn {
  color: white;
  display: inline-block;
  position: relative;
  margin-bottom: 1em;
}

html body main section.top .service .sBlock .heading .headingIn h3 {
  font-size: clamp(30px, 3.125vw, 60px);
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 0.5em;
}

html body main section.top .service .sBlock .heading .headingIn h2 {
  font-size: clamp(35px, 3.645vw, 70px);
  width: -moz-fit-content;
  width: fit-content;
  font-style: italic;
  margin-bottom: 0.25em;
  white-space: nowrap;
}

html body main section.top .service .sBlock .heading .headingIn p {
  font-size: clamp(12px, 1.04vw, 20px);
  text-align: right;
  position: absolute;
  right: 0;
}

html body main section.top .service .sBlock .sImg {
  position: relative;
}

html body main section.top .service .sBlock .sImg::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #1e1e1e;
  opacity: 0.6;
  transition: 0.3s;
  z-index: 1;
}

html body main section.top .service .sBlock .sImg img {
  transition: 0.3s;
}

html body main section.top .service .sBlock a {
  position: absolute;
  font-size: clamp(15px, 1.35vw, 26px);
  color: #003ad5;
  border: 2px solid white;
  z-index: 1;
  width: 42%;
  max-width: 396px;
  left: 5%;
}

html body main section.top .service .sBlock a img {
  height: 0.5em;
}

html body main section.top .service .sBlock a::before {
  background: #1e1e1e;
  height: 0.4em;
}

html body main section.top .service .sBlock a:hover {
  border: 0px solid white;
}

html body main section.top .service .sBlock a:hover+.sImg::before {
  opacity: 0;
}

html body main section.top .service .sBlock a:hover+.sImg img {
  transform: scale(1.1);
}

html body main section.top .service .sBlock.student {
  background: #003ad5;
  margin-bottom: clamp(5px, 0.52vw, 10px);
}

html body main section.top .service .sBlock.student .sImg {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 34.6% 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 34.6% 100%);
}

html body main section.top .service .sBlock.student a {
  bottom: 3%;
}

html body main section.top .service .sBlock.staff {
  background: #39383a;
}

html body main section.top .service .sBlock.staff .sImg {
  -webkit-clip-path: polygon(34.5% 0%, 100% 0, 100% 100%, 0% 100%);
  clip-path: polygon(34.5% 0%, 100% 0, 100% 100%, 0% 100%);
}

html body main section.top .service .sBlock.staff a {
  top: 3%;
}

html body main section.top .service .sBlock.fadeIn {
  opacity: 1;
  transform: translateX(0);
}

html body main section.top .news .newsTitle {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  text-align: left;
}

html body main section.top .news .newsTitle .eachTextAnime {
  font-size: 1em;
  display: inline-block;
  opacity: 0;
}

html body main section.top .news .newsTitle .eachTextAnime span {
  opacity: 0;
}

html body main section.top .news .newsTitle .eachTextAnime.appeartext3 {
  opacity: 1;
}

html body main section.top .news .newsTitle .eachTextAnime.appeartext3 span {
  animation: text_anime_on 0.25s ease-out forwards;
}

html body main section.top .news .newsTitle i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
  opacity: 0;
}

html body main section.top .news .newsTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

html body main section.top .news .newsTitle p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  left: 0%;
  transform: translate(0%, 55%);
  opacity: 0;
}

html body main section.top .news .newsTitle p.fadein {
  animation: fadeP3 0.4s ease-in-out forwards;
}

html body main section.top .news .tab {
  max-width: 1330px;
  margin: 0 auto;
  padding-top: clamp(50px, 13.8vw, 265px);
  padding-bottom: clamp(35px, 12.5vw, 240px);
  background: white;
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab {
    background: transparent;
  }
}

html body main section.top .news .tab .tab-list {
  width: 78.6%;
  margin: 0 auto;
  max-width: 610px;
  /* padding-bottom: clamp(17px, 6.25vw, 120px);  */
  /* margin-bottom: clamp(17px, 6.25vw, 120px);  */
  /* background    : white; */
  /* box-shadow: 0 0 25px white,0 0 25px white,0 0 25px white;  */
}

html body main section.top .news .tab .tab-list .tab-list-items {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: clamp(30px, 12.5vw, 240px);
}

html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item {
  display: block;
  border: none;
  transition: 0.3s;
  font-size: clamp(14px, 1.04vw, 20px);
  text-align: left;
  width: 45%;
  padding: 1em;
  cursor: pointer;
  position: relative;
  max-width: 300px;
}

html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  filter: grayscale(1) brightness(3);
  height: 1.5em;
  aspect-ratio: 11/8;
  right: 8%;
  transition: 0.3s;
}

html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item:hover,
html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item.is-btn-active {
  background: #003ad5;
  color: white;
  transform: translateX(1em);
}

html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item:hover::before,
html body main section.top .news .tab .tab-list .tab-list-items .tab-list-item.is-btn-active::before {
  filter: brightness(100);
}

html body main section.top .news .tab .tab-list>a {
  display: none;
}

html body main section.top .news .tab .tab-contents-wrap {
  margin-bottom: clamp(35px, 12.5vw, 240px);
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents {
  display: none;
  position: relative;
  /* &::before {
      content    : "TOPICS";
      color      : #003ad5;
      font-size  : clamp(21px, 2.08vw, 40px);
      font-family: "Montserrat", sans-serif;
      font-weight: 500;
      left       : 50%;
      position   : absolute;
      top        : 0;
      transform  : translate(-40%, -70%);
      line-height: 1;
  } */
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn {
  background: rgba(235, 235, 235, 0.95);
  border-top: 1px solid #9c9b9c;
  transition: 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.5em 1.5em;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn:first-of-type {
  border: none;
  /* background : rgba(229, 235, 251, 0.95);

  .img {
      margin-top: -5em;
  } */
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .img {
  aspect-ratio: 1.323/1;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .img img {
  height: inherit;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain {
  padding: 0 3em;
  width: 75%;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain .tags {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.5em;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain .tags a {
  font-size: clamp(13px, 1.04vw, 20px);
  color: #003ad5;
  background: white;
  border: 1px solid #003ad5;
  display: inline-block;
  padding: 0.5em 1em;
  transition: 0.3s;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain .tags p {
  font-size: clamp(12px, 0.937vw, 18px);
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain>a {
  position: relative;
  display: block;
  margin-bottom: 3.5em;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain>a p {
  font-size: clamp(12px, 0.833vw, 16px);
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: black;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain>a i {
  position: absolute;
  background: white;
  padding: 0.4em 0.5em 0.5em;
  right: 0;
  top: 150%;
  transition: 0.3s;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn:hover {
  background: white;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn:hover .postMain .tags a {
  background: #003ad5;
  color: white;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn:hover .postMain>a i {
  background: #003ad5;
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn:hover .postMain>a i img {
  filter: grayscale(1) brightness(100);
}

html body main section.top .news .tab .tab-contents-wrap .tab-contents.is-contents-active {
  display: block;
}

html body main section.top .news .tab>a {
  width: 48%;
  margin: 0 auto;
}

html body main section.top .recruit {
  padding-top: clamp(35px, 4.42vw, 85px);
  padding-bottom: clamp(65px, 9.63vw, 185px);
  position: relative;
}

html body main section.top .recruit .recruitIn {
  width: 89%;
  margin: 0 auto;
  max-width: 1320px;
}

html body main section.top .recruit .rMain {
  text-align: center;
}

html body main section.top .recruit .rMain .recruitTitle {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1em;
  text-align: right;
  margin-right: 1.5em;
  margin-top: 0.5em;
  /* h1 {
      font-size    : unquote("clamp(45px, 4.16vw, 80px)");
      position     : relative;
      margin-bottom: 1em;
      color        : white;
  }

  i {
      font-size       : unquote("clamp(45px, 4.16vw, 80px)");
      display         : inline-block;
      width           : 1em;
      height          : 0.0625em;
      background      : #003ad5;
      position        : absolute;
      top             : 70%;
      transform       : translateY(-50%) rotateZ(-54deg);
      transform-origin: center;
      transition      : 0.3s;
  }

  p {
      display  : inline-block;
      position : absolute;
      font-size: unquote("clamp(16px, 1.354vw, 26px)");
      bottom   : -25%;
      right    : 15%;
      left     : 0;
      transform: translate(20%, 100%);
      color    : #1e1e1e;

      @include mq(pc) {
          bottom   : 0%;
          right    : unset;
          left     : unset;
          transform: translate(50%, 55%);
      }
  } */
}

html body main section.top .recruit .rMain .recruitTitle .eachTextAnime {
  font-size: 1em;
  display: inline-block;
  opacity: 0;
  color: white;
}

html body main section.top .recruit .rMain .recruitTitle .eachTextAnime span {
  opacity: 0;
}

html body main section.top .recruit .rMain .recruitTitle .eachTextAnime.appeartext4 {
  opacity: 1;
}

html body main section.top .recruit .rMain .recruitTitle .eachTextAnime.appeartext4 span {
  animation: text_anime_on 0.25s ease-out forwards;
}

html body main section.top .recruit .rMain .recruitTitle i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
  opacity: 0;
}

html body main section.top .recruit .rMain .recruitTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

html body main section.top .recruit .rMain .recruitTitle p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  transform: translate(45%, 55%);
  opacity: 0;
}

html body main section.top .recruit .rMain .recruitTitle p.fadein {
  animation: fadeP4 0.4s ease-in-out forwards;
}

html body main section.top .recruit .rMain>p {
  font-size: clamp(12px, 0.937vw, 18px);
  line-height: 2.33;
  display: inline-block;
  text-align: left;
  margin-bottom: 5em;
}

html body main section.top .recruit .rMain a {
  width: 50%;
  margin: 0 auto;
}

html body main section.top .recruit .bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #a0a8b9;
  z-index: -1;
  top: 0;
  left: 0;
}

.x-box {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  /*max-width: 500px;*/
  max-width: 100%;
  overflow: scroll;
  border-radius: 1.2em;
  border: solid 1px #b3b3b3;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.x-box::-webkit-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.x-box iframe {
  width: 100%;
}

.iBox {
  margin-bottom: 1.5em;
  text-align: left;

}




/*.x-box::-webkit-scrollbar-track {
  border-radius: 0 1em 0 0;
  background-color: #b3b3b3;
}*/
@media screen and (max-width: 768px) {
  .x-box iframe {
    width: 100%;
    /*height: 300px !important;*/
  }

  .x-box {
    /*height: 100% !important;*/
  }

  .insta-box {
    margin-bottom: 4em;
  }

  .iBox {
    text-align: center;
  }
}

.a-titleBox .snsTitle {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  text-align: center;
  margin-top: 1em;
}

@media screen and (min-width: 769px) {
  .a-titleBox .snsTitle {
    margin-top: 1.5em;
  }
}

.a-titleBox .snsTitle i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
  opacity: 0;
}

.a-titleBox .snsTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

@media screen and (min-width: 769px) {
  .a-titleBox .snsTitle i {
    top: 90%;
  }
}

.a-titleBox .snsTitle i.rotate {
  animation: rotateI 0.5s ease-out forwards;
}

.a-titleBox .snsTitle p.fadein {
  animation: fadeP2 0.4s ease-in-out forwards;
}



.a-titleBox .snsTitle p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 35%;
  transform: translate(45%, 55%);
  opacity: 0;
}

@media screen and (min-width: 769px) {
  .a-titleBox .snsTitle p {
    bottom: 0%;
    right: unset;
  }
}

.a-titleBox .snsTitle .eachTextAnime {
  font-size: 1em;
  display: inline-block;
  opacity: 0;
}

.a-titleBox .snsTitle .eachTextAnime span {
  opacity: 0;
}

.a-titleBox .snsTitle .eachTextAnime.appeartext5 {
  opacity: 1;
}



.a-titleBox .snsTitle .eachTextAnime.appeartext5 span {
  animation: text_anime_on 0.25s ease-out forwards;
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .bg {
    background: #172a4f;
    opacity: 0.4;
    mix-blend-mode: multiply;
  }
}

html body main section.top .recruit .bg i {
  display: block;
  width: 100%;
  height: inherit;
  position: relative;
}

html body main section.top .recruit .bg i::before {
  content: "";
  background: rgb(255, 255, 255);
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(0, 0, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 50%;
  max-width: 390px;
  max-height: 537px;
  opacity: 0.4;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 100%);
  clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 100%);
  mix-blend-mode: multiply;
}

html body main section.top .recruit .bg i::after {
  content: "";
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(0, 0, 0) 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  width: 50%;
  height: 50%;
  max-width: 390px;
  max-height: 537px;
  opacity: 0.4;
  -webkit-clip-path: polygon(0 100%, 100% 0, 100% 100%, 0% 100%);
  clip-path: polygon(0 100%, 100% 0, 100% 100%, 0% 100%);
  mix-blend-mode: multiply;
}

html body main section.door {
  text-align: center;
  padding-top: clamp(30px, 5.2vw, 100px);
  padding-bottom: clamp(30px, 5.2vw, 100px);
}

html body main section.door.service {
  background: #4d75e2;
}

html body main section.door.student {
  background: #d9e6ed;
}

html body main section.door.student h1 {
  color: #1e1e1e;
}

html body main section.door.student h1 i {
  background: #003ad5;
}

html body main section.door.staff {
  background: #757475;
}

html body main section.door.staff h1 {
  color: white;
}

html body main section.door.staff h1 i {
  background: #1e1e1e;
}

html body main section.door.staff .servMain .container .servBox a {
  background: #39383a;
}

html body main section.door.news_archive h1 {
  color: #1e1e1e;
}

html body main section.door h1 {
  font-size: clamp(32px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  display: inline-block;
  color: white;
  margin-bottom: 1em;
}

html body main section.door h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #b2c4f2;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.door h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 0;
  left: 0;
  transform: translate(0%, 100%);
  white-space: nowrap;
}

html body main section.door .servMain {
  max-width: 1420px;
  width: 95%;
  margin: 0 auto;
}

html body main section.door .servMain .container {
  max-width: unset;
}

html body main section.door .servMain .container .servBox {
  background: white;
  border-radius: 1.5em;
  padding: 2.5em;
  margin-bottom: 2.5em;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.4);
}

html body main section.door .servMain .container .servBox .tags {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1em;
}

html body main section.door .servMain .container .servBox .tags a {
  border-radius: 0;
  display: inline-block;
  padding: 0.5em 1em;
  margin-right: 1em;
}

html body main section.door .servMain .container .servBox .tags a::before {
  display: none;
}

html body main section.door .servMain .container .servBox .tags p {
  margin-bottom: 0;
}

html body main section.door .servMain .container .servBox p {
  font-size: clamp(14px, 0.937vw, 18px);
  margin-bottom: 0.7em;
}

html body main section.door .servMain .container .servBox img {
  aspect-ratio: 1.565/1;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 1em;
}

html body main section.door .servMain .container .servBox h4 {
  font-size: clamp(16px, 1.145vw, 21px);
  margin: 0.7em 0;
  line-height: 1.5;
}

html body main section.door .servMain .container .servBox a {
  font-size: clamp(12px, 0.72vw, 14px);
  background: #003ad5;
  color: white;
  display: block;
  border-radius: 1em;
  text-align: center;
  padding: 1.5em 0;
  position: relative;
  letter-spacing: 0.1em;
}

html body main section.door .servMain .container .servBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.company {
  padding-top: clamp(50px, 9.21vw, 177px);
}

html body main section.company .heading {
  background: #d9e6ed;
  width: 100%;
  max-width: 1672px;
  text-align: center;
  padding-top: clamp(20px, 2.34vw, 45px);
  padding-bottom: clamp(40px, 4.16vw, 80px);
}

@media screen and (min-width: 769px) {
  html body main section.company .heading {
    width: 93%;
  }
}

html body main section.company .heading h1 {
  font-size: clamp(50px, 9.21vw, 177px);
  font-style: italic;
  color: #ecf2f6;
  text-align: right;
  margin-right: 0.2em;
  margin-bottom: 0.4em;
}

html body main section.company .heading h4 {
  text-align: left;
  line-height: 2;
  font-size: clamp(15px, 1.56vw, 30px);
  max-width: 1185px;
  width: 90%;
  margin: 0 auto;
}

html body main section.company .compMain {
  max-width: 1420px;
  width: 86%;
  margin: 0 auto;
}

html body main section.company .compMain>h1 {
  font-size: clamp(32px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  color: #1e1e1e;
  margin-bottom: 1em;
  text-align: right;
  margin-right: 1em;
  margin-top: 1em;
}

html body main section.company .compMain>h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.company .compMain>h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.company .compMain .compBlock {
  margin-bottom: clamp(50px, 9.11vw, 175px);
}

html body main section.company .compMain .compBlock h3 {
  font-size: clamp(25px, 2.6vw, 50px);
  position: relative;
  margin-bottom: 1.5em;
  color: #1e1e1e;
  margin-bottom: 1em;
  text-align: left;
  margin-right: 1em;
  margin-top: 1em;
}

html body main section.company .compMain .compBlock h3 i {
  font-size: clamp(25px, 2.6vw, 50px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.company .compMain .compBlock h3 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(12px, 0.88vw, 17px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.company .compMain .compBlock.msg h3 p {
  position: relative;
  bottom: 0%;
  right: unset;
  left: unset;
  transform: translate(50%, 55%);
}

html body main section.company .compMain .compBlock h2 {
  font-size: clamp(23px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  color: #1e1e1e;
  text-align: center;
  margin-right: 1em;
}

html body main section.company .compMain .compBlock h2 i {
  font-size: clamp(23px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.company .compMain .compBlock h2 p {
  display: block;
  position: relative;
  font-size: clamp(14px, 1.35vw, 26px);
  bottom: -1em;
  right: unset;
  left: 0;
  transform: unset;
  white-space: nowrap;
}

html body main section.company .compMain .compBlock.msg>p {
  font-size: clamp(14px, 1.09vw, 21px);
  line-height: 1.8;
  margin-top: 2em;
  margin-bottom: 3em;
}

html body main section.company .compMain .compBlock.msg h5 {
  display: flex;
  align-items: center;
  justify-content: right;
  font-size: clamp(16px, 1.145vw, 22px);
  font-family: YuMincho, "Yu Mincho", serif;
}

html body main section.company .compMain .compBlock.msg h5 img {
  margin-left: 2em;
  height: 2em;
  width: auto;
}

html body main section.company .compMain .compBlock.ovw table {
  width: 100%;
}

html body main section.company .compMain .compBlock.ovw table tr {
  border-top: 1px solid #1e1e1e;
}

html body main section.company .compMain .compBlock.ovw table tr:last-of-type {
  border-bottom: 1px solid #1e1e1e;
}

html body main section.company .compMain .compBlock.ovw table tr th,
html body main section.company .compMain .compBlock.ovw table tr td {
  font-size: clamp(14px, 1.145vw, 22px);
  padding: 1em;
  vertical-align: top;
  text-align: left;
  display: block;
}

html body main section.company .compMain .compBlock.ovw table tr th {
  /*  border-bottom: 1px solid #1e1e1e; */
  padding: 0.5em 0;
  padding-left: 1em;
}

html body main section.company .compMain .compBlock.ovw table tr td {
  font-weight: 400;
  padding-top: 0;
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.ovw table tr td {
    padding-top: 1em;
  }
}

html body main section.company .compMain .compBlock.ovw table tr td a {
  display: block;
  color: #1e1e1e;
  line-height: 1.75;
  font-weight: 400;
}

html body main section.company .compMain .compBlock.ovw table tr td a img {
  margin-left: 0.5em;
  height: 1em;
}

html body main section.company .compMain .compBlock.bom .bomBox {
  border: 1px solid #1e1e1e;
  padding: 2em;
  text-align: left;
  margin-bottom: 2em;
}

html body main section.company .compMain .compBlock.bom .bomBox h5 {
  font-size: clamp(15px, 1.04vw, 20px);
  padding-bottom: 0.5em;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 0.5em;
}

html body main section.company .compMain .compBlock.bom .bomBox h6 {
  font-size: clamp(15px, 1.04vw, 20px);
  margin-bottom: 0.5em;
}

html body main section.company .compMain .compBlock.bom .bomBox h6 span {
  font-size: 0.5em;
  display: inline-block;
}

html body main section.company .compMain .compBlock.bom .bomBox p {
  font-size: clamp(12px, 0.78vw, 15px);
  margin-bottom: 0.5em;
}

html body main section.company .compMain .compBlock.bom .bomBox.bom-column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

html body main section.company .compMain .compBlock .map iframe {
  width: 100%;
  aspect-ratio: 17/10;
}

html body main section.company .compMain .compBlock .col-md-12 .map iframe {
  aspect-ratio: 17/10;
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock .col-md-12 .map iframe {
    aspect-ratio: 71/20;
  }
}

@media screen and (min-width: 769px) {
  html body .pc {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  html body .sp {
    display: none;
  }
}

@keyframes shatline {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

@media (min-width: 769px) {
  html body .blueBanner {
    padding: 0.8em 0;
  }
}

@media screen and (min-width: 769px) {
  html body .topCopy {
    display: flex;
  }
}

@keyframes fadeInCopy {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }

  100% {
    transform: translateX(0%);
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn {
    /*padding-left: min(6.25vw, 120px);*/
    padding-left: min(6.25vw, 1vw);
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainGlobal .pcMenu {
    display: flex;
    align-items: center;
    width: 92%;
    /*width: 85%;*/
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu {
    height: 100dvh;
    width: 75%;
    max-width: 1425px;
    top: 0;
    background: url(./img/menu-ka.png) no-repeat center center/cover #b2c4f2;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn {
    width: unset;
    height: unset;
    max-height: 100dvh;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock h2 a {
    border: none;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock>a {
    display: inline-block;
    padding-right: 5em;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock.accd h2 i {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock ul li .mainMenuSub {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock>ul>li>a {
    border: none;
    padding: 0;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock p {
    margin-top: 5em;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .mainMenuIn .menuBlock p a:first-of-type {
    margin-right: 3em;
  }
}

@media screen and (min-width: 769px) {
  html body header .headerIn .mainMenu .spCon {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  html body header .fixMenu {
    position: fixed;
    max-width: 1920px;
    width: 100%;
    top: 30%;
    left: 50%;
    transform: translateX(-50%);
    pointer-events: none;
    overflow-x: hidden;
    z-index: 15;
  }
}

@media screen and (min-width: 769px) {
  html body header .fixMenu a {
    margin-left: 100%;
    writing-mode: vertical-lr;
    border-top-right-radius: 0em;
    border-bottom-right-radius: 0em;
    pointer-events: all;
    transform: translateX(-100%);
    padding: 2em 1em;
  }
}

@media screen and (min-width: 769px) {
  html body header .fixMenu a img {
    margin-bottom: 0.5em;
  }
}

@media screen and (min-width: 1025px) {
  html body .pdfSelector .selectIn {
    margin-right: 3.3%;
    width: 30%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  html body .pdfSelector .selectIn::after {
    transform: translate(-50%, -50%) rotateZ(-90deg);
    bottom: unset;
    top: 50%;
    left: unset;
    right: -3.5em;
  }
}

@media screen and (min-width: 1025px) {
  html body .pdfSelector a {
    width: 30%;
  }
}

@media screen and (min-width: 769px) {
  html body main .mainSvg {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: -1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .mainVis {
    aspect-ratio: 16/9;
  }
}

@keyframes visIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about {
    padding-top: min(11.97vw, 230px);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about .aboutIn .aboutTitle {
    margin-bottom: 1em;
  }
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about .aboutIn .aboutTitle i {
    top: 90%;
  }
}

@keyframes rotateI {
  0% {
    opacity: 0;
    transform: translateY(-50%) rotateZ(-45deg);
  }

  100% {
    opacity: 1;
    transform: translateY(-50%) rotateZ(666deg);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about .aboutIn .aboutTitle p {
    bottom: 0%;
    right: unset;
  }
}

@keyframes fadeP {
  0% {
    opacity: 0;
    transform: translate(0%, 55%);
  }

  100% {
    opacity: 1;
    transform: translate(45%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about .aboutIn .aboutMain {
    display: flex;
    align-items: flex-end;
    justify-content: space-evenly;
  }
}

@keyframes fadeInAbout {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {

  html body main section.top .about .aboutIn .aboutMain .sp img,
  html body main section.top .about .aboutIn .aboutMain .pc img {
    width: 100%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .about .aboutIn .aboutMain a {
    margin-top: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .serviceTitle {
    margin-top: 1.5em;
  }
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .serviceTitle i {
    top: 90%;
  }
}

@keyframes rotateI {
  0% {
    opacity: 0;
    transform: translateY(-50%) rotateZ(-45deg);
  }

  100% {
    opacity: 1;
    transform: translateY(-50%) rotateZ(666deg);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .serviceTitle p {
    bottom: 0%;
    right: unset;
  }
}

@keyframes fadeP2 {
  0% {
    opacity: 0;
    transform: translate(0%, 55%);
  }

  100% {
    opacity: 1;
    transform: translate(30%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock {
    display: flex;
    padding: 0 min(6.66vw, 128px);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock .heading {
    width: 36%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock .heading .headingIn {
    padding: 2em 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock .sImg {
    width: 64%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock a {
    width: 20.6vw;
    left: 50%;
    transform: translateX(-50%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock.student a {
    bottom: 7%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock.staff {
    align-items: flex-end;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .service .sBlock.staff a {
    top: 7%;
  }
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .newsTitle i {
    top: 90%;
  }
}

@keyframes rotateI {
  0% {
    opacity: 0;
    transform: translateY(-50%) rotateZ(-45deg);
  }

  100% {
    opacity: 1;
    transform: translateY(-50%) rotateZ(666deg);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .newsTitle p {
    bottom: 0%;
    right: unset;
  }
}

@keyframes fadeP3 {
  0% {
    opacity: 0;
    transform: translate(-100%, 55%);
  }

  100% {
    opacity: 1;
    transform: translate(0%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab {
    width: 85%;
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab .tab-list {
    width: 46%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab .tab-list .tab-list-items {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab .tab-list>a {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab .tab-contents-wrap {
    width: 54%;
    max-width: 710px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .news .tab>a.sp {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .recruitIn {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rImg {
    width: 50%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rMain {
    width: 50%;
    text-align: left;
    padding-left: 5em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rMain .recruitTitle {
    text-align: left;
  }
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rMain .recruitTitle i {
    top: 90%;
  }
}

@keyframes rotateI {
  0% {
    opacity: 0;
    transform: translateY(-50%) rotateZ(-45deg);
  }

  100% {
    opacity: 1;
    transform: translateY(-50%) rotateZ(666deg);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rMain .recruitTitle p {
    bottom: 0%;
    right: unset;
  }
}

@keyframes fadeP4 {
  0% {
    opacity: 0;
    transform: translate(0%, 55%);
  }

  100% {
    opacity: 1;
    transform: translate(70%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.top .recruit .rMain a {
    margin: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.door h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media (max-width: 380px) {
  html body main section.company .heading h1 {
    font-size: 42px;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain>h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock h3 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock h2 {
    margin-bottom: 1.5em;
  }
}

/*html body main section.company .compMain .compBlock h2 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(14px, 1.35vw, 26px);
  bottom: -40%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
} */
@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock h2 p {
    display: inline-block;
    position: absolute;
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {

  html body main section.company .compMain .compBlock.ovw table tr th,
  html body main section.company .compMain .compBlock.ovw table tr td {
    display: table-cell;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.ovw table tr th {
    width: 25%;
    padding: 1em 0;
    padding-left: 4em;
    border-bottom: none;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.ovw table tr td {
    width: 75%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.bom .bomBox {
    text-align: center;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.bom .container {
    max-width: unset;
  }

  html body main section.company .compMain .compBlock.bom .col-md-12 .bomBox {
    display: flex;
    align-items: center;
    padding-left: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.bom .col-md-12 .bomBox h5 {
    padding-left: 5em;
    padding-right: 2em;
    margin-right: 3em;
    width: 40%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.bom .col-md-12 .bomBox h6 {
    margin-right: 3em;
  }
}

.bomBox-txt {
  width: 60%;
}

.bomBox-txt p {
  line-height: 1.4;
}

.bomBox-img {
  width: 30%;
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.bom .bomBox.bom-column {
    display: block;
  }

  .bomBox-txt {
    width: unset;
  }

  .bomBox-txt p {
    line-height: 1;
  }

  .bomBox-img {
    width: unset;
  }
}

html body main section.company .compMain .compBlock.orc {
  background: #e5ebfb;
  padding: 2em;
}

html body main section.company .compMain .compBlock.orc img {
  width: 100%;
}

html body main section.company .compMain .compBlock.his a {
  position: relative;
  display: block;
}

html body main section.company .compMain .compBlock.his a::before {
  content: "";
  position: absolute;
  background: #003ad5;
  opacity: 0.7;
  mix-blend-mode: multiply;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

html body main section.company .compMain .compBlock.his a b {
  font-size: clamp(15px, 1.56vw, 30px);
  color: white;
  background: #1e1e1e;
  display: inline-block;
  padding: 1em;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transform-origin: right;
  transition: 0.3s;
}

html body main section.company .compMain .compBlock.his a:hover b {
  transform: translateY(-50%) scale(1.1);
}

html body main section.company .compMain .compBlock.acc .col-12 h5 {
  text-align: center;
  font-size: clamp(13px, 1.25vw, 24px);
  margin-bottom: 0.5em;
}

html body main section.company .compMain .compBlock.acc .col-12>p {
  text-align: center;
  font-size: clamp(12px, 0.88vw, 17px);
  margin-top: 1em;
  margin-bottom: 2em;
}

html body main section.company .compMain .compBlock.acc .col-12:first-of-type img {
  aspect-ratio: 1.7/1;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

html body main section.history {
  background: rgb(232, 240, 244);
  background: linear-gradient(180deg, rgb(232, 240, 244) 0%, rgb(255, 255, 255) 100%);
  text-align: center;
  padding-top: clamp(30px, 5.2vw, 100px);
  padding-bottom: clamp(30px, 5.2vw, 100px);
}

html body main section.history .hisIn {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.history .hisIn h1 {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  display: inline-block;
  color: #1e1e1e;
  margin-bottom: 1em;
}

html body main section.history .hisIn h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #0035c2;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.history .hisIn h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.history .hisIn>p {
  font-size: clamp(14px, 1.51vw, 29px);
  text-align: left;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 2em;
  line-height: 1.5;
}

html body main section.history .hisIn>h4 {
  font-size: clamp(17px, 1.875vw, 36px);
  text-align: center;
  line-height: 1.5;
  margin-top: 0.5em;
  margin-bottom: 1em;
}

html body main section.news_single {
  padding-top: clamp(60px, 5.98vw, 115px);
}

html body main section.news_single h1 {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.news_single h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.news_single h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.news_single .newsBlock {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  border-top: clamp(3px, 0.26vw, 5px) solid #1e1e1e;
  padding-top: clamp(20px, 2.34vw, 45px);
}

html body main section.news_single .tagBlock {
  text-align: center;
  margin-bottom: clamp(30px, 3.125vw, 60px);
}

html body main section.news_single .tagBlock .tags {
  margin-bottom: 1em;
}

html body main section.news_single .tagBlock .tags a {
  display: inline-block;
  margin-right: 1em;
  font-size: clamp(10px, 0.677vw, 13px);
  color: white;
  background: #003ad5;
  padding: 0.5em 1em;
}

html body main section.news_single .tagBlock h6 {
  font-size: clamp(17px, 1.3vw, 25px);
}

html body main section.news_single h2 {
  font-size: clamp(20px, 2.239vw, 43px);
  text-align: left;
  margin-bottom: 1em;
  line-height: 1.4;
}

html body main section.news_single .mainField {
  font-size: clamp(14px, 1.04vw, 20px);
  line-height: 2;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.news_single .mainField p {
  margin-bottom: 1em;
  line-height: 2;
  font-weight: 400;
}

html body main section.news_single .mainField img {
  width: 100%;
}

html body main section.news_single .newsBlock .mainField p img {
  width: auto;
  display: inherit;
  margin-left: 0;
}

html body main section.news_single .newsBlock .mainField p img:first-child {
  margin-right: 1.5em;
}

html body main section.news_single .mainField p img {
  width: 80%;
  display: block;
  margin: 0 auto;
}

html body main section.news_single .pager {
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.news_single .pager a {
  display: inline-block;
  margin: 0 1em;
  font-size: clamp(13px, 0.833vw, 16px);
  color: #1e1e1e;
  border: 1px solid #1e1e1e;
  padding: 1em 0.75em;
}

html body main section.support h1 {
  font-size: clamp(25px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.support h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.support h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.support .supHead .supHeadIn {
  width: 88%;
  position: relative;
  max-width: 1577px;
  text-align: right;
}

html body main section.support .supHead .supHeadIn::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background: #1e1e1e;
}

html body main section.support .supHead .supHeadIn::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 5px;
  width: 5px;
  background: #1e1e1e;
  transform: translate(50%, 50%);
  border-radius: 50%;
}

html body main section.support .supHead .supHeadIn h2 {
  max-width: 1242px;
  text-align: center;
  font-size: clamp(20px, 1.92vw, 37px);
  line-height: 1.5;
  width: 88%;
  display: inline-block;
  padding-bottom: 0.5em;
}

html body main section.support .supHead p {
  max-width: 1242px;
  text-align: left;
  width: calc(95% - 30px);
  font-size: clamp(15px, 1.25vw, 24px);
  margin: 1em auto;
  line-height: 2;
}

html body main section.support .supMain {
  background: #d9e6ed;
  padding-top: clamp(25px, 2.86vw, 55px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
}

html body main section.support .supMain .supMainOuter {
  max-width: 1420px;
  width: 85%;
  width: calc(95% - 30px);
  margin: 0 auto;
}

html body main section.support .supMain .supMainOuter .container {
  max-width: unset;
  background: white;
  padding: 0 2em;
  padding-top: clamp(25px, 2.6vw, 50px);
  padding-bottom: 0em;
  margin-bottom: clamp(25px, 2.6vw, 50px);
}

html body main section.support .supMain .supMainOuter .container .supMainIn {
  text-align: center;
  margin-bottom: 3em;
}

html body main section.support .supMain .supMainOuter .container .supMainIn h4 {
  font-size: clamp(16px, 1.3vw, 25px);
  padding: 0.5em;
  background: #ccd8f7;
  text-align: center;
  margin-bottom: 1em;
}

html body main section.support .supMain .supMainOuter .container .supMainIn p {
  font-size: clamp(14px, 1.04vw, 20px);
  line-height: 1.5;
  margin: 0 auto 1em;
  display: inline-block;
  text-align: left;
  width: 100%;
}

html body main section.support .supMain .supMainOuter .container .supMainIn p span {
  font-size: 0.75em;
}

html body main section.support .supMain .supMainOuter .container .supMainIn img {
  display: block;
  margin-bottom: 2em;
}

html body main section.support .supMain .supMainOuter .container .supMainIn a {
  display: block;
  color: white;
  background: #39383a;
  border-radius: 0.5em;
  font-size: clamp(11px, 0.78vw, 15px);
  padding: 1em;
  position: relative;
}

html body main section.support .supMain .supMainOuter .container .supMainIn a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.orc {
    padding: 5em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.company .compMain .compBlock.acc {
    margin-bottom: 0;
  }

  html body main section.company .compMain .compBlock.acc .col-12:first-of-type img {
    aspect-ratio: unset;
    -o-object-fit: unset;
    object-fit: unset;
  }

  html body main section.company .compMain .compBlock.acc .col-12:first-of-type p {
    margin-bottom: 4em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.history .hisIn h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.news_single h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.news_single .tagBlock {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

@media screen and (min-width: 769px) {
  html body main section.news_single .tagBlock .tags {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.support h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.support .supHead p {
    width: 78%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.support .supMain .supMainOuter {
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.support .supMain .supMainOuter .container {
    padding: 0 3em;
    padding-top: clamp(25px, 2.6vw, 50px);
    padding-bottom: clamp(25px, 2.6vw, 50px);
  }

  html body main section.support .supMain .supMainOuter .container .supMainIn {
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: normal;
    justify-content: space-between;
  }

  html body main section.support .supMain .supMainOuter .container .supMainIn.min-sup-5 {
    height: calc(18.3vw - 30px);
    max-height: 280px;
  }

  html body main section.support .supMain .supMainOuter .container .supMainIn.min-sup-average {
    min-height: calc(280px + 8vw);
  }
}

@media screen and (min-width: 980px) {
  html body main section.support .supMain .supMainOuter .container .supMainIn {
    margin: 0 2em;
  }

  html body main section.support .supMain .supMainOuter .container .supMainIn.min-sup-average {
    min-height: calc(280px + 13vw);
    margin-bottom: 3em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.support .supMain .supMainOuter .container .supMainIn p {
    width: 86%;
  }
}

.d-flex-sup-5 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.d-flex-sup-5 img {
  max-width: 160px;
  width: 20vw;
  margin: 1em;
}

.d-flex-sup-6 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.d-flex-sup-6 img {
  max-width: unset;
  width: 30vw;
  margin: 0 0 0 3em;
}

@media screen and (min-width: 769px) {
  .d-flex-sup-5 img {
    width: 10vw;
  }

  .d-flex-sup-6 img {
    max-width: unset;
    width: 10vw;
    margin: 0 0 0 1em;
  }
}

@media screen and (min-width: 980px) {
  .d-flex-sup-5 img {
    margin: 3em;
  }

  .d-flex-sup-6 img {
    width: 15vw;
    margin: 0 0 0 3em;
  }
}

html body main section.support .supMain.supBottom {
  background: #fff;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.support .supMain.supBottom h4 {
  font-size: clamp(15px, 1.3vw, 25px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.support .supMain.supBottom p {
  font-size: clamp(14px, 1.15vw, 24px);
  line-height: 1.5;
  margin-top: 0.5em;
  margin-bottom: 1em;
  display: inline-block;
  text-align: left;
}

.d-flex-pamphlet {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
}

.pamphlet-left {
  max-width: unset;
  width: 100%;
}

.pamphlet-right {
  max-width: unset;
  width: 100%;
}

.pamphlet-right img {
  max-width: unset;
  width: 100%;
}

.pamphlet-map {
  margin-bottom: 1em;
}

.pamphlet-map img {
  max-width: 750px;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .d-flex-pamphlet {
    flex-direction: row;
  }

  .pamphlet-left {
    width: 52.8%;
  }

  .pamphlet-right {
    max-width: 600px;
    width: 42.3%;
  }

  .pamphlet-right img {
    max-width: 500px;
    display: block;
    width: 83.3%;
  }

  .pamphlet-map {
    margin-bottom: 0;
  }
}

html body main section.gown {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.gown>p {
  font-size: clamp(12px, 1.56vw, 24px);
  line-height: 1.5;
  margin-top: 3em;
  margin-bottom: 1.5em;
}

html body main section.gown>img {
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.gown>h5 {
  font-size: clamp(15px, 1.56vw, 30px);
  line-height: 1.5;
  margin-bottom: 1em;
  margin-top: 3em;
}

html body main section.gown .hakamaLink {
  /* margin-top      : unquote("clamp(50px, 5.2vw, 100px)"); */
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.gown .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.gown .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0.5em;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.gown .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.pamphlet {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.pamphlet>h2 {
  text-align: center;
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1.5em;
}

html body main section.pamphlet .container {
  max-width: unset;
  padding: 0;
}

html body main section.pamphlet .container h3 {
  margin-bottom: 3em;
}

html body main section.pamphlet .container p {
  font-size: clamp(15px, 1.25vw, 24px);
  text-align: left;
  margin: 1em 0 3em;
  line-height: 2;
  font-weight: 400;
}

html body main section.pamphlet .container h6 {
  font-size: clamp(15px, 1.25vw, 24px);
  text-align: left;
  margin: 0 0 1em;
  line-height: 2;
  font-weight: 400;
}

html body main section.food {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.food>h2 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1.5em;
}

html body main section.food>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  margin: 1em 0;
  line-height: 1.5;
  font-weight: 400;
}

html body main section.food>img {
  display: block;
  max-width: 1071px;
  width: 100%;
  margin: 0 auto 8em;
}

html body main section.insurance>h2 {
  text-align: center;
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1.5em;
}

html body main section.insurance>p {
  font-size: clamp(15px, 1.25vw, 24px);
  text-align: center;
  max-width: 950px;
  width: 85%;
  margin: 0 auto;
  margin-bottom: 3em;
  line-height: 2;
}

html body main section.insurance .insMain {
  background: #e5ebfb;
  padding-top: clamp(25px, 2.6vw, 50px);
  padding-bottom: clamp(25px, 2.6vw, 50px);
  margin-bottom: clamp(25px, 2.6vw, 50px);
}

html body main section.insurance .insMain h1 {
  font-size: clamp(20px, 2.91vw, 56px);
  position: relative;
  margin-bottom: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance .insMain h1 i {
  font-size: clamp(20px, 2.91vw, 56px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.insurance .insMain h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.insurance .insMain .container {
  background: white;
  padding: 2em;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance .insMain .container .insBox {
  margin-bottom: 2.5em;
}

html body main section.insurance .insMain .container .insBox .blueBanner {
  font-size: clamp(14px, 1.3vw, 25px);
  letter-spacing: unset;
}

html body main section.insurance .insMain .container .insBox .bb-txt span {
  display: block;
  font-size: 0.8em;
  margin-top: 0.5em;
}


html body main section.insurance .insMain .container .insBox .bb-txt {
  font-size: clamp(13px, 1.3vw, 23px);
  padding: 0.5em;
  text-align: center;
  background: #d9e6ed;
  border: solid 1px #003ad5;
  color: #003ad5;
  border-radius: 0.5em;
  margin: 1em auto;
  width: 86%;
}

html body main section.insurance .insMain .container .insBox p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  width: 86%;
  margin: 1em auto;
}

html body main section.insurance .insMain .container .insBox a {
  display: block;
  color: white;
  background: #39383a;
  border-radius: 0.5em;
  font-size: clamp(11px, 0.78vw, 15px);
  padding: 1.5em;
  position: relative;
  text-align: center;
  letter-spacing: 0.1em;
}

html body main section.insurance .insMain .container .insBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.insurance .pac {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance .pac .container {
  max-width: unset;
}

html body main section.insurance .pac h4 {
  font-size: clamp(15px, 1.3vw, 25px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance .pac img {
  margin-bottom: 2em;
  width: 100%;
}

html body main .rightTxtBox {
  max-width: 1320px;
  width: 85%;
  margin: 0 auto;
  margin-top: 2em;
}

html body main .rightTxtBox p {
  font-size: 1.2em;
  line-height: 1.5;
}

html body main section.insurance-staff .insStfImg img {
  width: 100%;
}

html body main section.insurance-staff .insAbt {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.38vw, 65px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.insurance-staff .insAbt h1 {
  max-width: 1067px;
  margin: 0 auto;
  width: 85%;
  margin-bottom: clamp(30px, 3.38vw, 65px);
}

html body main section.insurance-staff .insAbt .container {
  max-width: 1320px;
  width: 85%;
  padding: 0;
}

html body main section.insurance-staff .insAbt .container .row {
  align-items: flex-end;
  text-align: center;
}

html body main section.insurance-staff .insAbt .container .row .col-12 {
  margin-bottom: 4em;
}

html body main section.insurance-staff .insAbt .container .row h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  padding-bottom: 0.5em;
}

html body main section.insurance-staff .insAbt .container .row p {
  font-size: clamp(16px, 1.51vw, 29px);
  line-height: 1.5;
  margin-bottom: 1em;
  text-align: left;
}

html body main section.insurance-staff .insAbt .container .row h4 {
  font-size: clamp(17px, 1.71vw, 33px);
  margin-bottom: 1em;
}

html body main section.insurance-staff .rsvLink {
  background: #0035c2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
  padding: 3em;
  margin-bottom: clamp(30px, 7.81vw, 120px);
}

html body main section.insurance-staff .rsvLink h2 {
  color: white;
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 0.5em;
  text-align: center;
  width: 80%;
}

/*@media screen and (min-width: 769px) {
  html body main section.insurance-staff .insAbt .rsvLink h2 {
    margin-bottom: 0;
    width: 45%;
  }
}*/

html body main section.insurance-staff .rsvLink a {
  background: white;
  color: #1e1e1e;
  display: block;
  border-radius: 0.5em;
  font-size: clamp(15px, 1.92vw, 30px);
  padding: 1em 0.5em;
  position: relative;
  width: 80%;
}

/*@media screen and (min-width: 769px) {
  html body main section.insurance-staff .insAbt .rsvLink a {
    width: 45%;
    padding: 2em 0.5em;
  }
}*/

html body main section.insurance-staff .rsvLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  filter: grayscale(1);
  height: 1em;
  aspect-ratio: 11/8;
  right: 15%;
  transition: 0.3s;
  top: 50%;
  transform: translateY(-50%);
}

html body main section.insurance-staff .block {
  margin-bottom: clamp(70px, 7.81vw, 150px);
}

html body main section.insurance-staff .block>h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1.5em;
  text-align: center;
}

html body main section.insurance-staff .block .flowBox {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  padding: 1.5em 0;
  border: 1px solid #1E1E1E;
  border-bottom-width: 0px;
}

html body main section.insurance-staff .block .flowBox:last-of-type {
  border-bottom-width: 1px;
}

html body main section.insurance-staff .block .flowBox h4 {
  color: #0035c2;
  font-size: clamp(16px, 1.51vw, 29px);
  max-width: 1210px;
  width: 90%;
  margin: 0 auto 0.5em;
}

html body main section.insurance-staff .block .flowBox h4 span {
  font-size: 0.89em;
}

html body main section.insurance-staff .block .flowBox h4 b {
  font-family: "Oswald", sans-serif;
  font-size: 1.37em;
  font-weight: 400;
}

html body main section.insurance-staff .block .flowBox p {
  max-width: 1210px;
  width: 90%;
  margin: 0 auto 1em;
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 1.7;
  font-weight: 400;
}

html body main section.insurance-staff .insNewsBlock {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.insurance-staff .insNewsBlock a {
  display: block;
  margin: 0 1em;
  border: 1px solid #1e1e1e;
}

html body main section.insurance-staff .insNewsBlock a p {
  font-size: clamp(12px, 0.93vw, 18px);
  text-align: center;
  color: #1e1e1e;
  margin: 0.5em 0;
}

html body main section.insurance-school .insSchImg img {
  width: 100%;
}

html body main section.insurance-school .insAbt {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.38vw, 65px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.insurance-school .insAbt h1 {
  max-width: 1050px;
  margin: 0 auto;
  width: 85%;
  /* margin-bottom: clamp(40px, 4.68vw, 90px); */
}

html body main section.insurance-school .insAbt>h6 {
  font-size: clamp(14px, 2.08vw, 40px);
  text-align: center;
  margin: 0.5em 0;
  color: #0035c2;
  line-height: 1.5;
}

html body main section.insurance-school .insAbt .container {
  max-width: 1320px;
  width: 85%;
  padding: 0;
}

html body main section.insurance-school .insAbt .container .inses {
  background: white;
  border-radius: 1.5em;
  padding: 1.5em;
  margin-bottom: 3em;
  /* h5 {
      display        : flex;
      align-items    : center;
      justify-content: center;
      text-align     : center;
      height         : 3em;
      background     : #39383a;
      font-size      : clamp(15px, 1.145vw, 22px);
      line-height    : 1.5;
      color          : white;
      margin-bottom  : 0.5em;
  } */
}

html body main section.insurance-school .insAbt .container .inses p {
  font-size: clamp(14px, 1.04vw, 22px);
  line-height: 1.5;
  text-align: center;
  margin: 1em 0 0.5em;
}

html body main section.insurance-school .insAbt .container .inses a {
  display: block;
  color: white;
  background: #39383a;
  font-size: clamp(11px, 0.78vw, 15px);
  padding: 1em 0;
  position: relative;
  text-align: center;
  border-radius: 0.5em;
}

html body main section.insurance-school .insAbt .container .inses a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.insurance-school .block {
  margin-bottom: clamp(30px, 7.81vw, 150px);
}

html body main section.insurance-school .block.webStep {
  margin-bottom: clamp(30px, 7.81vw, 50px);
}

html body main section.insurance-school .block h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-school .block .container {
  padding: 0;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance-school .block .voiceBox {
  border: 1px solid #1e1e1e;
  position: relative;
  padding: 3em;
  margin-bottom: 2em;
  /* h5 {
      font-size    : clamp(13px, 1.04vw, 20px);
      text-align   : center;
      margin-bottom: 1em;

      span {
          font-size: 0.75em;
      }
  } */
}

html body main section.insurance-school .block .voiceBox::before,
html body main section.insurance-school .block .voiceBox::after {
  content: "";
  position: absolute;
}

html body main section.insurance-school .block .voiceBox::before {
  top: 0;
  left: 0;
  border: 1.5em solid transparent;
  border-left-color: #003ad5;
  border-top-color: #003ad5;
}

html body main section.insurance-school .block .voiceBox::after {
  bottom: 0;
  right: 0;
  border: 1.5em solid transparent;
  border-right-color: #003ad5;
  border-bottom-color: #003ad5;
}

html body main section.insurance-school .block .voiceBox h4 {
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 1.5;
  padding-bottom: 0.5em;
}

html body main section.insurance-school .block .voiceBox p {
  font-size: clamp(11px, 0.93vw, 20px);
  text-align: center;
  background: #e5ebfb;
  margin-bottom: 0.5em;
  border-radius: 3em;
  display: inline-block;
  padding: 0.25em 2em;
}

html body main section.insurance-school .block .comper {
  text-align: center;
}

html body main section.insurance-school .block .comper p {
  font-size: clamp(12px, 1.145vw, 22px);
  display: inline-block;
  text-align: left;
  line-height: 2;
  font-weight: 400;
}

html body main section.insurance-school .pamphBlock {
  background: url(./img/insSch-9.jpg) no-repeat center center/cover;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  padding: 3em 0;
  margin-bottom: clamp(30px, 4.16vw, 80px);
}

html body main section.insurance-school .pamphBlock .pamphIn {
  width: 85%;
}

html body main section.insurance-school .pamphBlock .pamphIn h4 {
  font-size: clamp(17px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-school .pamphBlock .pamphIn p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-school .pamphBlock .pamphIn p span {
  color: #003ad5;
}

html body main section.insurance-school .pamphBlock .pamphIn p i {
  font-weight: 400;
  display: block;
  margin-bottom: 2em;
}

html body main section.insurance-school .pamphBlock .pamphIn .pdfSelector {
  width: 100%;
  margin: 0;
}

html body main section.insurance-school .pamphBlock .pamphIn .pdfSelector .selectIn {
  background: white;
  border-radius: 1em;
}

html body main section.insurance-school,
html body main section.insurance-student2024,
html body main section.insurance-student2023 {
  /*position: relative;
  z-index: 1;*/
}

html body main section.insurance-school .webFlow,
html body main section.insurance-student2024 .webFormBox,
html body main section.insurance-student2023 .webForm02 {
  background: #003ad5;
  padding: 3em 0;
  color: #212529;
  position: relative;
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  margin-bottom: clamp(30px, 4.16vw, 80px);
}

html body main section.insurance-student2023 .webForm02 {
  background: #003ad5;
  padding-right: 3vw;
  padding-left: 3vw;
  color: #fff;
}

html body main section.insurance-school .webFlow::before,
html body main section.insurance-school .webFormBox::after,
html body main section.insurance-student2023 .webForm02::after {
  content: "";
  position: absolute;
  border: 6em solid transparent;
}

/*html body main section.insurance-school .webFlow::before {
  top: 0;
  left: 0;
  border-left-color: #0035c2;
  border-top-color: #0035c2;
}

html body main section.insurance-school .webFlow::after {
  bottom: 0;
  right: 0;
  border-right-color: #0035c2;
  border-bottom-color: #0035c2;
}*/

html body main section.insurance-school .webFlow h4,
html body main section.insurance-student2024 .webFormBox h4,
html body main section.insurance-student2023 .webForm02 h4 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
}

html body main section.insurance-student2024 .webFormBox h4,
html body main section.insurance-school .webFlow h4 {
  color: #fff;
}

html body main section.insurance-student2024 .webFormBox p,
html body main section.insurance-school .webFlow p {
  color: #fff;
}

html body main section.insurance-school .webFlow p,
html body main section.insurance-student2024 .webFormBox p,
html body main section.insurance-student2023 .webForm02 p {
  margin: 0 auto;
  width: 90%;
  font-size: clamp(12px, 1.145vw, 22px);
  line-height: 1.5;
  margin-bottom: 2em;
  text-align: left;
}

@media screen and (min-width: 769px) {

  html body main section.insurance-school .webFlow p,
  html body main section.insurance-student2024 .webFormBox p,
  html body main section.insurance-student2023 .webForm02 p {
    text-align: center;
    width: 100%;
  }
}

html body main section.insurance-student2024 .webFormBox p.sub {
  font-size: clamp(12px, 1.145vw, 18px);
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  text-align: left;
  margin-top: 2em;
}


html body main section.insurance-school .webFlow a,
html body main section.insurance-student2024 .webFormBox a,
html body main section.insurance-student2023 .webForm02 a {
  background: white;
  color: #1e1e1e;
  border: 1px solid #1e1e1e;
  position: relative;
  display: block;
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
  width: 70%;
  font-size: clamp(12px, 1.458vw, 28px);
  padding: 1em 0;
  border-radius: 0.5em;
  z-index: 1;
}

html body main section.insurance-school .webFlow a::before,
html body main section.insurance-student2024 .webFormBox a::before

/*html body main section.insurance-student2023 .webForm02::before*/
  {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center / contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1);
}

html body main section.insurance-school .impTxt {
  max-width: 1320px;
  width: 85%;
  margin: 4em auto 0;
  background: #39383a;
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-wrap: wrap;
  padding: 5em;
}

html body main section.insurance-school .impTxt h2 {
  font-size: clamp(18px, 1.92vw, 37px);
  color: white;
  margin-bottom: 1em;
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-school .impTxt h2 {
    margin-bottom: 0;
    width: 45%;
  }
}

html body main section.insurance-school .impTxt a {
  display: block;
  background: white;
  color: #39383a;
  text-align: center;
  font-size: clamp(11px, 0.78vw, 15px);
  padding: 1em;
  border-radius: 0.5em;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-school .impTxt a {
    width: 45%;
  }
}

html body main section.insurance-school .impTxt a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1);
}

html body main section.insurance-school .comp {
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-school .comp p {
  font-size: clamp(15px, 1.145vw, 22px);
  display: inline-block;
  text-align: left;
  line-height: 2;
  margin-bottom: 5em;
  font-weight: 400;
}

html body main section.insurance-school .comp .compLink {
  display: flex;
  justify-content: space-between;
}

html body main section.insurance-school .comp .compLink a {
  display: block;
  font-size: clamp(15px, 1.56vw, 30px);
  color: white;
  background: #1e1e1e;
  text-align: center;
  padding: 1em 2em;
  width: 49%;
  position: relative;
  transition: 0.3s;
}

html body main section.insurance-school .comp .compLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 0.5em;
  height: 1em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  filter: brightness(100);
}

html body main section.insurance-school .comp .compLink a:hover {
  opacity: 0.8;
}

html body main section.insurance-student2024 .insSchImg {
  margin-bottom: clamp(30px, 3.64vw, 70px);
}

html body main section.insurance-student2024 .insSchImg img {
  width: 100%;
}

html body main section.insurance-student2024 .insAbt {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  /* h1 {
      font-size : clamp(20px, 2.86vw, 55px);
      margin    : 0 auto 1em;
      text-align: center;
      width     : 50%;
      max-width : 330px;
  } */
}

html body main section.insurance-student2024 .insAbt>h4 {
  font-size: clamp(15px, 1.51vw, 29px);
  line-height: 1.5;
  font-weight: 400;
  max-width: 1320px;
  margin: 0 auto 2em;
}

html body main section.insurance-student2024 .insAbt .webFlow {
  /* background   : #003ad5; */
  padding: 3em 1em;
  position: relative;
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  margin-bottom: clamp(30px, 7.81vw, 150px);
  /* &::before,
  &::after {
      content : "";
      position: absolute;
      border  : 6em solid transparent;
  }

  &::before {
      top              : 0;
      left             : 0;
      border-left-color: #0035c2;
      border-top-color : #0035c2;
  }

  &::after {
      bottom             : 0;
      right              : 0;
      border-right-color : #0035c2;
      border-bottom-color: #0035c2;
  } */
}

html body main section.insurance-student2024 .insAbt .webFlow h4 {
  font-size: clamp(17px, 1.92vw, 37px);
  margin-bottom: 1em;
  position: relative;
  line-height: 1.5;
}

html body main section.insurance-student2024 .insAbt .webFlow h4 span {
  color: #0035c2;
}

html body main section.insurance-student2024 .insAbt .webFlow a {
  position: relative;
  background: #0035c2;
  color: white;
  /* border       : 1px solid #1e1e1e; */
  position: relative;
  display: block;
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
  width: 70%;
  font-size: clamp(11px, 1.458vw, 28px);
  padding: 1em 0;
  border-radius: 0.5em;
  z-index: 1;
  /* &::before {
      content   : "";
      position  : absolute;
      top       : 50%;
      right     : 5%;
      transform : translateY(-50%);
      background: url(./img/icon-open.svg) no-repeat center (center / contain);
      filter    : invert(1);
      width     : 1.5em;
      height    : 1.5em;
  } */
}

html body main section.insurance-student2024 .insAbt .webFlow a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.insurance-student2024 .insAbt .route {
  margin: 0 auto;
  max-width: 1320px;
  height: auto;
  width: 100%;
  margin-bottom: clamp(30px, 7.81vw, 150px);
}

html body main section.insurance-student2024 .insAbt .route h1 {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0035c2;
  font-size: clamp(17px, 2.86vw, 55px);
  margin-bottom: 0.5em;
}

html body main section.insurance-student2024 .insAbt .route h1 img {
  margin-right: 0.5em;
}

html body main section.insurance-student2024 .insAbt .route .routeIn {
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  flex-wrap: wrap;
}

html body main section.insurance-student2024 .insAbt .route .routeIn img {
  width: 80%;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2024 .insAbt .route .routeIn img {
    width: 20%;
  }
}

html body main section.insurance-student2024 .insAbt .route .routeIn p {
  font-size: clamp(13px, 1.45vw, 28px);
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2024 .insAbt .route .routeIn p {
    width: 75%;
  }
}

html body main section.insurance-student2024 .points {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.38vw, 65px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.insurance-student2024 .points h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2024 .points .container {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance-student2024 .points .container .pointBox {
  background: white;
  border-radius: 2em;
  padding: 2em;
  margin-bottom: 3em;
}

html body main section.insurance-student2024 .points .container .pointBox p {
  text-align: center;
  font-size: clamp(14px, 1.145vw, 22px);
  line-height: 1.5;
  margin: 0.5em 0 1em;
}

html body main section.insurance-student2024 .points .container .pointBox a {
  color: white;
  background: #39383a;
  display: block;
  text-align: center;
  padding: 1em 0;
  font-size: clamp(10px, 0.78vw, 15px);
  border-radius: 0.5em;
  position: relative;
}

html body main section.insurance-student2024 .points .container .pointBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.insurance-student2024 .pamphBlock {
  background: url(./img/insStu24-8.jpg) no-repeat center center/cover;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  padding: 3em 0;
  margin-bottom: clamp(30px, 7.81vw, 150px);
}

html body main section.insurance-student2024 .pamphBlock .pamphIn {
  width: 85%;
}

html body main section.insurance-student2024 .pamphBlock .pamphIn h4 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2024 .pamphBlock .pamphIn p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2024 .pamphBlock .pamphIn p span {
  color: #003ad5;
}

html body main section.insurance-student2024 .pamphBlock .pamphIn p i {
  font-weight: 400;
  display: block;
}

html body main section.insurance-student2024 .pamphBlock .pamphIn .pdfSelector {
  width: 100%;
  margin: 0;
}

/*
html body main section.insurance-student2024 .pamphBlock .pamphIn .pdfSelector .selectIn {
  background: white;
}*/

html body main section.insurance-student2024 .impTxt {
  max-width: 1320px;
  width: 85%;
  margin: 4em auto 0;
  background: #39383a;
  /*display: flex;
  align-items: center;
  justify-content: space-around;
  flex-wrap: wrap;*/
  padding: 5em;
}

html body main section.insurance-student2024 .impTxt h2 {
  font-size: clamp(18px, 1.92vw, 37px);
  color: white;
  margin-bottom: 1em;
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2024 .impTxt h2 {
    width: 100%;
  }
}

html body main section.insurance-student2024 .impTxt a {
  display: block;
  background: white;
  color: #39383a;
  text-align: center;
  font-size: clamp(13px, 0.78vw, 23px);
  padding: 1.5em;
  border-radius: 0.5em;
  position: relative;
  width: 100%;
  margin-bottom: 1em;
}

html body main section.insurance-student2024 .impTxt .chi-fx {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  align-items: center;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2024 .impTxt a {
    width: 45%;
  }
}

html body main section.insurance-student2024 .impTxt a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 5%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1);
}

html body main section.insurance-student2024 .block {
  /*margin-bottom: clamp(30px, 7.81vw, 150px);*/
  margin-bottom: clamp(30px, 7.81vw, 60px);
}

html body main section.insurance-student2024 .block.webStep {
  margin-bottom: clamp(30px, 7.81vw, 50px);
}

html body main section.insurance-student2024 .block h3 {
  font-size: clamp(17px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2024 .block .container {
  padding: 0;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance-student2024 .block .voiceBox {
  border: 1px solid #1e1e1e;
  position: relative;
  padding: 3em;
  margin-bottom: 2em;
  /* h5 {
      font-size    : clamp(13px, 1.04vw, 20px);
      text-align   : center;
      margin-bottom: 1em;

      span {
          font-size: 0.75em;
      }
  } */
}

html body main section.insurance-student2024 .block .voiceBox::before,
html body main section.insurance-student2024 .block .voiceBox::after {
  content: "";
  position: absolute;
}

html body main section.insurance-student2024 .block .voiceBox::before {
  top: 0;
  left: 0;
  border: 1.5em solid transparent;
  border-left-color: #003ad5;
  border-top-color: #003ad5;
}

html body main section.insurance-student2024 .block .voiceBox::after {
  bottom: 0;
  right: 0;
  border: 1.5em solid transparent;
  border-right-color: #003ad5;
  border-bottom-color: #003ad5;
}

html body main section.insurance-student2024 .block .voiceBox h4 {
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 1.5;
  padding-bottom: 0.5em;
}

html body main section.insurance-student2024 .block .voiceBox p {
  font-size: clamp(12px, 0.93vw, 20px);
  text-align: center;
  background: #e5ebfb;
  margin-bottom: 0.5em;
  border-radius: 3em;
  display: inline-block;
  padding: 0.25em 2em;
}

html body main section.insurance-student2024 .block2024 {
  background: #e5ebfb;
  position: relative;
  padding: 5em 0;
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-student2024 .block2024 h4 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2024 .block2024 h5 {
  font-size: clamp(13px, 1.145vw, 22px);
  line-height: 1.5;
  margin-bottom: 2em;
}

html body main section.insurance-student2024 .block2024 .container {
  max-width: 1320px;
  width: 90%;
  margin: 0 auto;
}

html body main section.insurance-student2024 .block2024 .container .col-12 {
  margin-bottom: 3em;
}

html body main section.insurance-student2024 .block2024 .container .col-12 .box2024 {
  background: white;
  padding: 2em 3em;
  border-radius: 1.5em;
  height: 100%;
}

html body main section.insurance-student2024 .block2024 .container .col-12 p {
  font-weight: 400;
  font-size: clamp(12px, 1.04vw, 20px);
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.insurance-student2024 .block2024 .container .col-12 a {
  background: #0035c2;
  color: white;
  line-height: 1.7;
  display: block;
  font-size: clamp(13px, 1.145vw, 22px);
  position: relative;
  border-radius: 0.5em;
  padding: 0.5em;
}

html body main section.insurance-student2024 .block2024 .container .col-12 a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  background: url(./img/icon-open.svg) no-repeat center center/contain;
  width: 1.5em;
  height: 1.5em;
}

html body main section.insurance-student2024 .block2024 .container .col-md-6 p {
  text-align: left;
}

html body main section.insurance-student2024 .block2024 h6 {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  margin: 0 auto 2em;
  width: 90%;
}

html body main section.insurance-student2024 .block2024 p {
  font-size: clamp(13px, 0.88vw, 17px);
  line-height: 1.55;
  font-weight: 400;
  max-width: 1320px;
  margin: 0 auto;
  width: 90%;
  text-align: left;
}

html body main section.insurance-student2024 .comp {
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-student2024 .comp p {
  font-size: clamp(12px, 1.145vw, 22px);
  display: inline-block;
  text-align: left;
  line-height: 2;
  margin-bottom: 5em;
  font-weight: 400;
}

html body main section.insurance-student2024 .comp .compLink {
  display: flex;
  justify-content: space-between;
}

html body main section.insurance-student2024 .comp .compLink a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(14px, 1.56vw, 30px);
  color: white;
  background: #1e1e1e;
  text-align: center;
  padding: 1em 2em;
  width: 49%;
  position: relative;
  transition: 0.3s;
}

html body main section.insurance-student2024 .comp .compLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 0.5em;
  height: 1em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  filter: brightness(100);
}

html body main section.insurance-student2024 .comp .compLink a:hover {
  opacity: 0.8;
}

html body main section.insurance-student2023 .insStuImg {
  margin-bottom: clamp(30px, 3.64vw, 70px);
}

html body main section.insurance-student2023 .insStuImg img {
  width: 100%;
}

html body main section.insurance-student2023 .insAbt {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  /* > {
      h1 {
          font-size : clamp(20px, 2.86vw, 55px);
          margin    : 0 auto 1em;
          text-align: center;
          width     : 50%;
          max-width : 330px;
      }

      h3 {
          font-size    : clamp(18px, 1.92vw, 37px);
          margin-bottom: 1em;
          text-align   : center;
      }

      h4 {
          font-size  : clamp(15px, 1.51vw, 29px);
          line-height: 1.5;
          font-weight: 400;
          max-width  : 1320px;
          margin     : 0 auto 2em;
      }

      .container {
          max-width    : unset;
          padding      : 0;
          margin-bottom: clamp(25px, 3.125vw, 60px);
      }
  } */
}

html body main section.insurance-student2023 .insAbt .route {
  margin: 0 auto;
  max-width: 1320px;
  height: auto;
  width: 100%;
  margin-bottom: clamp(30px, 7.81vw, 150px);
}

html body main section.insurance-student2023 .insAbt .route h1 {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0035c2;
  font-size: clamp(17px, 2.86vw, 55px);
  margin-bottom: 0.5em;
}

html body main section.insurance-student2023 .insAbt .route h1 img {
  margin-right: 0.5em;
}

html body main section.insurance-student2023 .insAbt .route .routeIn {
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  flex-wrap: wrap;
}

html body main section.insurance-student2023 .insAbt .route .routeIn img {
  width: 80%;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2023 .insAbt .route .routeIn img {
    width: 20%;
  }
}

html body main section.insurance-student2023 .insAbt .route .routeIn p {
  font-size: clamp(13px, 1.45vw, 28px);
  line-height: 1.7;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2023 .insAbt .route .routeIn p {
    width: 75%;
  }
}

html body main section.insurance-student2023 .points {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.38vw, 65px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.insurance-student2023 .points h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2023 .points .container {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance-student2023 .points .container .pointBox {
  background: white;
  border-radius: 2em;
  padding: 2em;
  margin-bottom: 3em;
}

html body main section.insurance-student2023 .points .container .pointBox p {
  text-align: center;
  font-size: clamp(14px, 1.145vw, 22px);
  line-height: 1.5;
  margin: 0.5em 0 1em;
}

html body main section.insurance-student2023 .points .container .pointBox a {
  color: white;
  background: #39383a;
  display: block;
  text-align: center;
  padding: 1em 0;
  font-size: clamp(10px, 0.78vw, 15px);
  border-radius: 0.5em;
  position: relative;
}

html body main section.insurance-student2023 .points .container .pointBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.insurance-student2023 .pamphBlock {
  /*  background: url(./img/insStu23-9.jpg) no-repeat center center/cover;*/
  background: url(./img/insStu23-9.jpg) no-repeat top center/cover;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  padding: 3em 0;
  margin-bottom: clamp(30px, 7.81vw, 150px);
}

html body main section.insurance-student2023 .pamphBlock .pamphIn {
  width: 85%;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn h4 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn p span {
  color: #003ad5;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn p i {
  font-weight: 400;
  display: block;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn .pdfSelector {
  width: 100%;
  margin: 0;
}

html body main section.insurance-student2023 .pamphBlock .pamphIn .pdfSelector .selectIn {
  background: white;
  border-radius: 1em;
}

html body main section.insurance-student2023 .impTxt {
  max-width: 1320px;
  width: 85%;
  margin: 4em auto 0;
  background: #39383a;
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-wrap: wrap;
  padding: 5em;
}

html body main section.insurance-student2023 .impTxt h2 {
  font-size: clamp(18px, 1.92vw, 37px);
  color: white;
  margin-bottom: 1em;
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2023 .impTxt h2 {
    margin-bottom: 0;
    width: 45%;
  }
}

html body main section.insurance-student2023 .impTxt a {
  display: block;
  background: white;
  color: #39383a;
  text-align: center;
  font-size: clamp(11px, 0.78vw, 15px);
  padding: 1em;
  border-radius: 0.5em;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2023 .impTxt a {
    width: 45%;
  }
}

html body main section.insurance-student2023 .impTxt a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1);
}

html body main section.insurance-student2023 .block {
  margin-bottom: clamp(70px, 7.81vw, 150px);
}

html body main section.insurance-student2023 .block h3 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2023 .block .container {
  padding: 0;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.insurance-student2023 .block .voiceBox {
  border: 1px solid #1e1e1e;
  position: relative;
  padding: 3em;
  margin-bottom: 2em;
  /* h5 {
      font-size    : clamp(13px, 1.04vw, 20px);
      text-align   : center;
      margin-bottom: 1em;

      span {
          font-size: 0.75em;
      }
  } */
}

html body main section.insurance-student2023 .block .voiceBox::before,
html body main section.insurance-student2023 .block .voiceBox::after {
  content: "";
  position: absolute;
}

html body main section.insurance-student2023 .block .voiceBox::before {
  top: 0;
  left: 0;
  border: 1.5em solid transparent;
  border-left-color: #003ad5;
  border-top-color: #003ad5;
}

html body main section.insurance-student2023 .block .voiceBox::after {
  bottom: 0;
  right: 0;
  border: 1.5em solid transparent;
  border-right-color: #003ad5;
  border-bottom-color: #003ad5;
}

html body main section.insurance-student2023 .block .voiceBox h4 {
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 1.5;
  padding-bottom: 0.5em;
}

html body main section.insurance-student2023 .block .voiceBox p {
  font-size: clamp(12px, 0.93vw, 20px);
  text-align: center;
  background: #e5ebfb;
  margin-bottom: 0.5em;
  border-radius: 3em;
  display: inline-block;
  padding: 0.25em 2em;
}

html body main section.insurance-student2023 .block2024 {
  background: #e5ebfb;
  position: relative;
  padding: 5em 0;
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-student2023 .block2024 h4 {
  font-size: clamp(18px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-student2023 .block2024 h5 {
  font-size: clamp(13px, 1.145vw, 22px);
  line-height: 1.5;
  margin-bottom: 2em;
}

html body main section.insurance-student2023 .block2024 .container {
  max-width: 1320px;
  width: 90%;
  margin: 0 auto;
}

html body main section.insurance-student2023 .block2024 .container .col-12 {
  margin-bottom: 3em;
}

html body main section.insurance-student2023 .block2024 .container .col-12 .box2024 {
  background: white;
  padding: 2em 3em;
  border-radius: 1.5em;
  height: 100%;
}

html body main section.insurance-student2023 .block2024 .container .col-12 p {
  font-weight: 400;
  font-size: clamp(12px, 1.04vw, 20px);
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.insurance-student2023 .block2024 .container .col-12 a {
  background: #0035c2;
  color: white;
  line-height: 1.7;
  display: block;
  font-size: clamp(13px, 1.145vw, 22px);
  position: relative;
  border-radius: 0.5em;
  padding: 0.5em;
}

html body main section.insurance-student2023 .block2024 .container .col-12 a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  background: url(./img/icon-open.svg) no-repeat center center/contain;
  width: 1.5em;
  height: 1.5em;
}

html body main section.insurance-student2023 .block2024 .container .col-md-6 p {
  text-align: left;
}

html body main section.insurance-student2023 .block2024 h6 {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  margin: 0 auto 2em;
  width: 90%;
}

html body main section.insurance-student2023 .block2024 p {
  font-size: clamp(13px, 0.88vw, 17px);
  line-height: 1.55;
  font-weight: 400;
  max-width: 1320px;
  margin: 0 auto;
  width: 90%;
  text-align: left;
}

html body main section.insurance-student2023 .comp {
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-student2023 .comp p {
  font-size: clamp(12px, 1.145vw, 22px);
  display: inline-block;
  text-align: left;
  line-height: 2;
  margin-bottom: 5em;
  font-weight: 400;
}

html body main section.insurance-student2023 .comp .compLink {
  display: flex;
  justify-content: space-between;
}

html body main section.insurance-student2023 .comp .compLink a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(14px, 1.56vw, 30px);
  color: white;
  background: #1e1e1e;
  text-align: center;
  padding: 1em 2em;
  width: 49%;
  position: relative;
  transition: 0.3s;
}

html body main section.insurance-student2023 .comp .compLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 0.5em;
  height: 1em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  filter: brightness(100);
}

html body main section.insurance-student2023 .comp .compLink a:hover {
  opacity: 0.8;
}

html body main section.insurance-trip .insStuImg img {
  width: 100%;
}

html body main section.insurance-trip h3 {
  font-size: clamp(17px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.insurance-trip>h3 {
  margin-top: 1em;
}

html body main section.insurance-trip h4 {
  font-size: clamp(13px, 1.51vw, 29px);
  line-height: 1.5;
  font-weight: 1.5;
  max-width: 1320px;
  width: 85%;
  margin: 0 auto 1.5em;
  font-weight: normal;
}

html body main section.insurance-trip .insForm {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.38vw, 65px);
  padding-bottom: clamp(30px, 3.38vw, 65px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.insurance-trip .insForm .insFormIn {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.insurance-trip .insForm .insFormIn h4 {
  text-align: center;
}

html body main section.insurance-trip .insForm .insFormIn>a {
  color: white;
  background: #39383a;
  font-size: clamp(13px, 1.04vw, 20px);
  text-align: center;
  padding: 0.5em;
  border-radius: 0.5em;
  max-width: 660px;
  margin: 0 auto;
  position: relative;
  display: block;
}

html body main section.insurance-trip .insForm .insFormIn>a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  filter: grayscale(1) brightness(100);
  height: 1em;
  aspect-ratio: 11/8;
  right: 15%;
  transition: 0.3s;
  top: 50%;
  transform: translateY(-50%);
}

html body main section.insurance-trip .insForm .insFormIn .insLink {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1320px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.insurance-trip .insForm .insFormIn .insLink a {
  color: white;
  display: block;
  font-size: clamp(15px, 1.56vw, 30px);
  background: #1e1e1e;
  width: 49%;
  padding: 1em 0;
  position: relative;
  text-align: center;
}

html body main section.insurance-trip .insForm .insFormIn .insLink a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 0.5em;
  height: 1em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
}

html body main section.insurance-trip .insForm .insFormIn p {
  font-size: clamp(14px, 1.145vw, 22px);
  text-align: center;
  line-height: 1.5;
  margin-bottom: 1em;
  font-weight: 400;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock {
  background: white;
  padding-bottom: clamp(35px, 3.645vw, 70px);
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table {
  border-collapse: collapse;
  border: 1px solid #787878;
  width: 100%;
  margin-bottom: clamp(30px, 3.125vw, 60px);
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr.noborder {
  border-color: white;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr.noborder td {
  border-color: white;
  border-bottom-color: #787878;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr.noborder td p {
  line-height: 1.8;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td {
  border: 1px solid #787878;
  font-size: clamp(14px, 1.25vw, 24px);
  /*padding: 1em;*/
  padding: 0.8em;
  display: block;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th span {
  font-size: 0.625em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th b {
  font-size: 0.75em;
  color: white;
  background: #666666;
  border-radius: 0.5em;
  padding: 0.2em 0.5em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td {
  font-weight: 400;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td p {
  font-size: clamp(13px, 0.93vw, 18px);
  text-align: left;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .stdLink {
  margin-bottom: 1em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a {
  color: white;
  background: #1d6bba;
  padding: 0.75em;
  display: inline-block;
  text-align: center;
  max-width: 265px;
  width: 45%;
  font-size: clamp(10px, 0.93vw, 18px);
  border-radius: 0.5em;
  margin-left: 1em;
  cursor: pointer;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a .ppup {
  margin-top: clamp(60px, 5.2vw, 100px);
  opacity: 0;
  pointer-events: none;
  height: calc(100dvh - clamp(60px, 5.2vw, 100px));
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  transition: 0.3s;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a .ppup.active {
  opacity: 1;
  pointer-events: all;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a .ppup::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #39383a;
  mix-blend-mode: multiply;
  opacity: 0.9;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a .ppup .ppupIn {
  position: relative;
  max-width: 1110px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  overflow: scroll;
  max-height: 90dvh;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a .ppup .ppupIn img {
  width: 100%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a.bk {
  background: #39383a;
  position: relative;
  border-radius: 0;
  padding: 1em 0;
  font-size: clamp(13px, 1.197vw, 23px);
  max-width: 460px;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a.bk::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 1em;
  height: 1.5em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .mid,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .sht,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .full,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .usht,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .date {
  font-size: clamp(13px, 0.93vw, 18px);
  padding: 0.5em;
  border-radius: 0.5em;
  border: 1px solid #888889;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .mid {
  /*max-width: 822px;
  width: 100%;*/
  max-width: 398px;
  width: 45%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .sht {
  max-width: 398px;
  width: 45%;
  font-style: normal;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .full {
  width: 100%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .usht {
  max-width: 110px;
  width: 20%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .date {
  line-height: 1.4;
  max-width: 270px;
  width: 40%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.roma i {
  font-size: clamp(15px, 1.56vw, 30px);
  vertical-align: middle;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio {
  display: inline-block;
}


html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label {
  display: flex;
  align-items: center;
  font-size: clamp(15px, 1.56vw, 30px);
  padding-left: 1em;
  position: relative;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label .wpcf7-list-item-label {
  vertical-align: middle;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label .wpcf7-list-item-label::before,
html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label .wpcf7-list-item-label::before {
  width: 1em;
  height: 1em;
  border: 1px solid #1e1e1e;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio label .wpcf7-list-item-label::after {
  width: 0.4em;
  height: 0.4em;
  background: #4b4b4b;
  opacity: 0;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio input[type=radio] {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0, 0, 0, 0);
  -webkit-clip-path: inset(-50%);
  clip-path: inset(-50%);
  margin: -1px;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .radio input[type=radio]:checked+.wpcf7-list-item-label::after {
  opacity: 1;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td #purpose label {
  /*font-size: clamp(13px, 0.93vw, 18px);*/
  font-size: clamp(15px, 1.56vw, 30px);
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm {
  max-width: 1220px;
  margin: 0 auto;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm h5 {
  display: flex;
  align-items: center;
  justify-content: left;
  flex-wrap: wrap;
  font-size: clamp(14px, 1.09vw, 21px);
  margin-bottom: 1em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm h5 span {
  color: white;
  background: red;
  padding: 0.5em;
  border-radius: 0.5em;
  margin-right: 0.5em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm h5 b {
  display: block;
  color: red;
  font-size: 0.85em;
  width: 100%;
  margin-top: 1em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea {
  border: 1px solid #8e8e8e;
  overflow: scroll;
  height: 48em;
  margin-bottom: 4em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea .areaIn {
  font-size: clamp(14px, 0.83vw, 16px);
  padding: 3em 6em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea .areaIn p {
  line-height: 2;
  text-align: left;
  font-size: 1em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea .areaIn p b {
  font-size: 1.5em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea .areaIn h4 {
  font-size: 1.25em;
  text-align: left;
  font-weight: 700;
  width: unset;
  margin-top: 3em;
}

html body main section.insurance-trip .insForm .insFormIn .scrollForm .scrollArea .areaIn .check {
  font-size: 1.5em;
}

html body main section.insurance-trip .insForm .insFormIn .submit {
  border: none;
  background: #003ad5;
  color: white;
  font-size: clamp(16px, 1.875vw, 36px);
  padding: 0.75em;
  text-align: center;
  display: block;
  border-radius: 0.5em;
  max-width: 1220px;
  width: 100%;
  margin: 0 auto;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr {
  border: 2px solid #787878;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr th,
html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr td {
  border: none;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr th {
  border-bottom: 1px solid #787878;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .printBlock {
  text-align: center;
  font-size: clamp(13px, 1.35vw, 26px);
  margin-bottom: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .printBlock>span:not(.wpcf7-form-control-wrap) {
  color: white;
  background: red;
  padding: 0.5em;
  font-size: 0.8em;
  border-radius: 0.5em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.jender span.wpcf7-list-item:not(:first-child) {
  margin-left: 4em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.way span.wpcf7-list-item:not(:first-child) {
  margin-left: 2.5em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.plan span.wpcf7-list-item:not(:first-child) {
  margin-left: 2.5em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.dm span.wpcf7-list-item:not(:first-child) {
  margin-left: 4em;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock p {
  width: 90%;
  margin: 0 auto 1em;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .btns {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1220px;
  margin: 0 auto;
  width: 90%;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .btns input {
  display: block;
  width: 45%;
  margin: 0;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .btns input:first-of-type {
  background: #626262;
}

html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock .btns span {
  display: none;
}

html body main section.insurance-trip.submit .insForm .insFormIn>a {
  padding: 1em 0;
}

html body main section.trip {
  text-align: center;
}

html body main section.trip h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.trip>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  max-width: calc(95% - 30px);
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-bottom: 3em;
  display: inline-block;
  text-align: left;
}

html body main section.trip .tripMain {
  background: #e5ebfb;
  padding-top: clamp(25px, 2.6vw, 50px);
  padding-bottom: clamp(25px, 2.6vw, 50px);
  margin-bottom: clamp(50px, 4.16vw, 80px);
}

html body main section.trip .tripMain .tripMainIn {
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
}

html body main section.trip .tripMain .tripMainIn h3 {
  letter-spacing: 0;
}

html body main section.trip .tripMain .tripMainIn .container {
  max-width: unset;
  background: white;
  margin-bottom: 3em;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox {
  padding: 2em 0;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox p {
  font-size: clamp(14px, 1.04vw, 20px);
  font-weight: 400;
  text-align: left;
  line-height: 1.7;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox p span {
  font-size: 1.1em;
  font-weight: 700;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox h4 {
  color: #003ad5;
  font-size: clamp(14px, 1.25vw, 24px);
  margin: 2em 0;
  text-align: left;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox a {
  color: white;
  background: #1e1e1e;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
  font-size: clamp(12px, 1.04vw, 20px);
  border-radius: 0.5em;
}

html body main section.trip .tripMain .tripMainIn .container .tripBox a img {
  filter: brightness(100);
  height: 1em;
  width: auto;
}

html body main section.trip>h3 {
  font-size: clamp(15px, 1.71vw, 33px);
  margin-bottom: 0.75em;
}

html body main section.trip table {
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
  margin-bottom: clamp(50px, 4.16vw, 80px);
}

html body main section.trip table tr {
  border: 1px solid #1e1e1e;
  /* &:last-of-type {
      border-bottom: 1px solid #1e1e1e;
  } */
}

html body main section.trip table tr th {
  font-size: clamp(16px, 2.08vw, 40px);
  color: #003ad5;
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  padding: 0 0 0 2em;
}

html body main section.trip table tr th span {
  font-size: 0.65em;
  font-family: "BIZ UDPGothic", sans-serif;
  font-weight: 700;
}

html body main section.trip table tr td {
  font-size: clamp(14px, 1.25vw, 24px);
  text-align: left;
  padding: 1em 2em;
  font-weight: 400;
}

html body main section.medic {
  text-align: center;
}

html body main section.medic h1 {
  font-size: clamp(20px, 2.91vw, 56px);
  position: relative;
  margin-bottom: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.medic h1 i {
  font-size: clamp(20px, 2.91vw, 56px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.medic h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.medic>h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.medic>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  max-width: 1260px;
  width: calc(95% - 30px);
  margin: 0 auto;
  margin-bottom: 3em;
  display: inline-block;
  text-align: left;
}

html body main section.medic .medicMain {
  background: #e5ebfb;
  padding-top: clamp(25px, 2.6vw, 50px);
  padding-bottom: clamp(25px, 2.6vw, 50px);
  /*  margin-bottom: clamp(25px, 2.6vw, 50px);*/
}

html body main section.medic .medicMain .medicMainIn {
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
}

html body main section.medic .medicMain .medicMainIn .blueBanner {
  letter-spacing: 0;
}

html body main section.medic .medicMain .medicMainIn .container {
  max-width: unset;
  margin-bottom: clamp(25px, 2.6vw, 50px);
  padding: 0;
}

html body main section.medic .medicMain .medicMainIn .container.fis {
  background: white;
  padding: 2em;
}

@media screen and (min-width: 769px) {
  html body main section.medic .medicMain .medicMainIn .container.fis {
    padding: 3em;
  }
}

html body main section.medic .medicMain .medicMainIn .container.fis .medicBox {
  padding: 0;
  margin-bottom: 0;
  min-height: unset;
}

html body main section.medic .medicMain .medicMainIn .container .col-12 {
  margin-bottom: clamp(25px, 2.6vw, 50px);
}

@media screen and (min-width: 769px) {
  html body main section.medic .medicMain .medicMainIn .container .col-12 {
    margin-bottom: 10px;
  }
}

html body main section.medic .medicMain .medicMainIn .container .medicBox {
  background: white;
  padding: 2em;
  display: flex;
  flex-direction: column;
  align-items: normal;
  justify-content: space-between;
  min-height: unset;
}

html body main section.medic .medicMain .medicMainIn .container .medicBox p {
  font-size: clamp(14px, 1.1vw, 20px);
  line-height: 1.7;
  margin-bottom: 1em;
  text-align: left;
  font-weight: 400;
}

html body main section.medic .medicMain .medicMainIn .container .medicBox p span {
  font-size: 0.6em;
}

html body main section.medic .medicMain .medicMainIn .container .medicBox.height-arrange {
  min-height: unset;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: space-between;
}

@media screen and (min-width: 769px) {
  html body main section.medic .medicMain .medicMainIn .container .medicBox.height-arrange {
    justify-content: left;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance .insMain h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance .insMain .container {
    padding: 4em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance .insMain .container .insBox {
    margin-bottom: 0em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-school .pamphBlock {
    padding: 10em 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2024 .pamphBlock {
    padding: 10em 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-student2023 .pamphBlock {
    padding: 10em 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-trip .insForm .insFormIn .formBlock table {
    border: 2px solid #787878;
  }
}

@media screen and (min-width: 769px) {

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td {
    display: table-cell;
    border: 2px solid #787878;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th {
    width: 25%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td {
    width: 75%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr th {
    width: 30%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.insurance-trip.confirm .insForm .insFormIn .formBlock table tr td {
    width: 70%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.trip .tripMain .tripMainIn {
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.trip .tripMain .tripMainIn .container {
    margin-bottom: 5em;
  }
}

@media (min-width: 769px) {
  html body main section.trip .tripMain .tripMainIn .container .tripBox {
    padding: 3em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic>p {
    width: 66%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic .medicMain .medicMainIn {
    max-width: 1420px;
    margin: 0 auto;
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic .medicMain .medicMainIn .container .medicBox {
    background: white;
    padding: 3em;
    display: flex;
    flex-direction: column;
    align-items: normal;
    justify-content: space-between;
    min-height: 330px;
  }
}

@media screen and (min-width: 980px) {
  html body main section.medic .medicMain .medicMainIn .container.fis .medicBox {
    min-height: 21.1vw;
  }

  html body main section.medic .medicMain .medicMainIn .container .medicBox {
    min-height: 400px;
  }
}

@media screen and (min-width: 1230px) {
  html body main section.medic .medicMain .medicMainIn .container.fis .medicBox {
    min-height: 22vw;
  }

  html body main section.medic .medicMain .medicMainIn .container .medicBox {
    min-height: 31.25vw;
  }
}

@media screen and (min-width: 1920px) {
  html body main section.medic .medicMain .medicMainIn .container.fis .medicBox {
    min-height: 367px;
  }

  html body main section.medic .medicMain .medicMainIn .container .medicBox {
    min-height: 520px;
  }
}

ul.udR.medicService-list {
  width: 100%;
  margin: 0 auto 3em;
}

ul.medicService-list li {
  font-size: clamp(14px, 1.1vw, 20px);
  line-height: 1.7;
  text-align: left;
  padding-left: 3em;
  text-indent: -2em;
  border-bottom: 1px solid #1e1e1e;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}

@media (min-width: 769px) {
  ul.udR.medicService-list {
    width: 90%;
  }
}

@media screen and (min-width: 769px) {
  ul.udR.medicService-list {
    margin-bottom: 2em;
  }
}

html body main section.sale {
  text-align: center;
}

html body main section.sale h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.sale>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  max-width: 1180px;
  width: calc(95% - 30px);
  margin: 0 auto;
  margin-bottom: 3em;
  display: inline-block;
  text-align: left;
}

html body main section.sale .saleMain {
  max-width: 1420px;
  width: 95%;
  margin: 0 auto;
}

html body main section.sale .saleMain .container {
  max-width: unset;
}

html body main section.sale .saleMain .container .row {
  margin-bottom: clamp(30px, 4.68vw, 90px);
}

html body main section.sale .saleMain .container p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  text-align: justify;
  padding: 1em 0;
}

html body main section.sale .saleMain .container a {
  display: block;
  margin-bottom: 1em;
}

html body main section.medic-shop {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.medic-shop h3 {
  letter-spacing: 0;
  margin-bottom: 1em;
}

html body main section.medic-shop p {
  /*font-size: clamp(15px, 1.25vw, 24px);*/
  font-size: clamp(13px, 1.25vw, 24px);
  margin-bottom: 2em;
  line-height: 2;
}

html body main section.medic-shop .container {
  padding: 0;
  max-width: unset;
  margin-bottom: 5em;
}

html body main section.medic-shop .container img {
  margin-bottom: 3em;
}

html body main section.medic-shop>img {
  max-width: 490px;
  width: 100%;
  margin: 0 auto 5em;
  display: block;
}

html body main section.medic-shop .nurseFx {
  margin-bottom: 5em;
}

html body main section.medic-shop .nurseFx img {
  width: 50%;
  margin: 0 auto;
  display: block;
}

html body main section.medic-shop .loginBlock {
  background: #e6ecfb;
  text-align: center;
  margin-bottom: 3em;
}

html body main section.medic-shop .loginBlock h4 {
  font-size: clamp(18px, 1.66vw, 32px);
  padding: 1em;
  line-height: 1.8;
}

html body main section.medic-shop .loginBlock h4 span {
  color: red;
}

html body main section.medic-shop>a {
  display: block;
  margin-bottom: 5em;
}

html body main section.clinical .abCli {
  background: #cedaf9;
  padding-top: clamp(20px, 3.125vw, 60px);
  padding-bottom: clamp(20px, 3.125vw, 60px);
  margin-bottom: clamp(40px, 4.42vw, 85px);
}

html body main section.clinical .abCli .container {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  background: white;
  padding: 0;
}

html body main section.clinical .abCli .container .col-12:first-of-type {
  padding: 5em;
}

html body main section.clinical .abCli .container h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  padding-bottom: 0.5em;
  text-align: center;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 0.5em;
}

html body main section.clinical .abCli .container p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  text-align: justify;
}

html body main section.clinical .abCli .container img {
  width: 100%;
}

html body main section.clinical .crc {
  text-align: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.clinical .crc h2 {
  font-size: clamp(18px, 1.45vw, 28px);
  padding-bottom: 0.5em;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 1em;
}

html body main section.clinical .crc p {
  font-size: clamp(14px, 1.04vw, 20px);
  line-height: 1.7;
  text-align: left;
  margin-bottom: 3em;
}

html body main section.clinical .crc img {
  max-width: 840px;
  margin: 0 auto;
  width: 100%;
}

html body main section.store {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.store>h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.store>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 2em;
}

html body main section.store .storeMain {
  max-width: unset;
  border: 1px solid #003ad5;
  border-radius: 1.5em;
  padding: 3em 0;
  margin-bottom: 3em;
}

html body main section.store .storeMain .row {
  padding: 0 2em;
}

html body main section.store .storeMain .row:first-of-type {
  align-items: center;
  padding: 0;
  margin-bottom: 3em;
}

html body main section.store .storeMain .row:first-of-type h3 {
  text-align: left;
  letter-spacing: 0;
  padding: 1em 0;
  padding-left: 3em;
  margin-bottom: 1em;
}

html body main section.store .storeMain .row:first-of-type img {
  max-width: 287px;
  width: 60%;
  margin: 0 auto;
  display: block;
}

html body main section.store .storeMain .row p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.75;
  margin-bottom: 2em;
}

html body main section.store .storeMain .row h5 {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 2;
  text-align: center;
  padding: 0.5em;
  background: #e5ebfb;
  margin-bottom: 3em;
}

html body main section.vending>h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  text-align: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.vending>p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
  margin-bottom: 3em;
}

html body main section.vending .lineUp {
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
  margin-bottom: 5em;
}

html body main section.vending .flow {
  background: #ccd8f7;
  padding: clamp(30px, 3.125vw, 60px) 0;
  margin-bottom: clamp(40px, 4.427vw, 85px);
}

html body main section.vending .flow>h2 {
  font-size: clamp(20px, 1.92vw, 37px);
  margin-bottom: 0.5em;
  text-align: center;
}

html body main section.vending .flow .flowBox {
  max-width: 1420px;
  margin: 0 auto 3em;
  width: calc(95% - 30px);
  background: white;
}

html body main section.vending .flow .flowBox h3 {
  letter-spacing: 0;
  margin-bottom: 1em;
}

html body main section.vending .flow .flowBox .flowBoxIn {
  max-width: 1290px;
  width: 90%;
  margin: 0 auto;
  padding-bottom: 5em;
  position: relative;
}

html body main section.vending .flow .flowBox .flowBoxIn::before {
  content: "";
  position: absolute;
  background: url(./img/icon-grape.svg) no-repeat center center/contain;
  left: 50%;
  bottom: 5%;
  width: 2.29vw;
  aspect-ratio: 1.189/1;
  transform: translateX(-50%);
  min-width: 20px;
}

html body main section.vending .flow .flowBox .flowBoxIn p {
  font-size: clamp(15px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 1em;
}

html body main section.vending .flow .flowBox .flowBoxIn img {
  width: 100%;
}

html body main section.vending .flow .flowBox:last-of-type .flowBoxIn::before {
  display: none;
}

html body main section.consignment .medicMain .medicMainIn .container .medicBox a {
  display: block;
  color: white;
  background: #39383a;
  border-radius: 0.5em;
  font-size: clamp(13px, 1.04vw, 20px);
  padding: 1em;
  position: relative;
  font-weight: 500;
}

html body main section.consignment .medicMain .medicMainIn .container .medicBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.lending>h3 {
  font-size: clamp(20px, 1.92vw, 37px);
  text-align: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.lending .lendingIn {
  background: #ccd8f7;
  padding: clamp(30px, 3.125vw, 60px) 0;
  margin-bottom: clamp(40px, 4.427vw, 85px);
}

html body main section.lending .lendingIn .lendingMain {
  background: white;
  padding: clamp(30px, 3.125vw, 60px) 0;
  max-width: 1420px;
  margin: 0 auto;
  width: calc(95% - 30px);
}

html body main section.lending .lendingIn .lendingMain .container {
  max-width: 1320px;
  width: 90%;
  margin: 0 auto;
  padding: 0;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 .blueBanner {
  text-align: left;
  margin-bottom: 1em;
  letter-spacing: 0;
  padding-left: 1.5em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 p {
  font-size: clamp(14px, 1.04vw, 20px);
  line-height: 1.7;
  margin-bottom: 2em;
  padding: 0 3%;
  font-weight: 400;
}

html body main section.lending .lendingIn .lendingMain img {
  margin-bottom: 3em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 h5 {
  font-size: clamp(15px, 1.25vw, 24px);
  padding: 0 3%;
  line-height: 2;
  font-weight: 700;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 a {
  display: flex;
  align-items: center;
  font-size: clamp(14px, 1.04vw, 20px);
  line-height: 1.7;
  background: #cccccc;
  padding: 0.75em;
  border-radius: 0.5em;
  justify-content: space-between;
  color: #1e1e1e;
  margin-bottom: 1em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 a:last-of-type {
  margin-bottom: 3em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 a span {
  background: white;
  font-size: 0.75em;
  padding: 0.25em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 a.blackLink {
  font-size: clamp(15px, 1.25vw, 24px);
  color: white;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  background: #1e1e1e;
  text-align: center;
  margin-bottom: 2em;
}

html body main section.lending .lendingIn .lendingMain .container .col-12 a.blackLink img {
  height: 1em;
  width: auto;
  filter: brightness(100);
  margin-left: 0.5em;
  margin-bottom: 0;
}

html body main section.compensation .compeHead {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.compensation .compeHead p {
  font-size: clamp(13px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 2;
  margin-bottom: 3em;
}

html body main section.compensation .compeHead p span {
  font-weight: 700;
}

html body main section.compensation .compeHead .compes {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 4em;
}

html body main section.compensation .compeHead .compes img {
  width: 100%;
}

html body main section.compensation .compeHead .compeComps {
  display: block;
  align-items: center;
  justify-content: left;
  max-width: 1215px;
  margin: 0 auto;
}

html body main section.compensation .compeHead .compeComps h4 {
  font-size: clamp(13px, 0.98vw, 19px);
}

html body main section.compensation .compeHead .compeComps .compsIn {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

html body main section.compensation .compeHead .compeComps .compsIn img {
  max-width: 300px;
  margin: 0 2em 2em;
  width: 30%;
}

html body main section.compensation .compeInsurance {
  background: #e5ebfb;
  padding-top: clamp(50px, 5.2vw, 100px);
  padding-bottom: clamp(50px, 5.2vw, 100px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.compensation .compeInsurance h1 {
  font-size: clamp(25px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  margin-bottom: 1.5em;
  text-align: center;
}

html body main section.compensation .compeInsurance h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.compensation .compeInsurance h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.compensation .compeInsurance>h2 {
  font-size: clamp(15px, 1.875vw, 36px);
  text-align: center;
  line-height: 1.72;
  padding: 0 1.5em 0.5em;
  margin-bottom: 1.5em;
  position: relative;
}

html body main section.compensation .compeInsurance>h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 85%;
  height: 1px;
  background: #1e1e1e;
}

html body main section.compensation .compeInsurance>h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 15%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #1e1e1e;
  transform: translate(50%, 40%);
}

html body main section.compensation .compeInsurance .compeInsIn {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsHead {
  margin-bottom: clamp(25px, 2.6vw, 50px);
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsHead p {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  padding: 1em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain {
  background: white;
  padding-bottom: clamp(25px, 2.6vw, 50px);
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container {
  max-width: unset;
  padding: 0;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .col-12 {
  border-bottom: 1px solid #1e1e1e;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .col-12:nth-last-of-type(-n+2) {
  border: none;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container h3 {
  font-size: clamp(20px, 1.875vw, 36px);
  padding-top: 1em;
  padding-bottom: 0.5em;
  text-align: center;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container h6 {
  font-size: clamp(13px, 1.145vw, 22px);
  margin-bottom: 1em;
  text-align: center;
  font-weight: 400;
  line-height: 1.5;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox {
  width: 80%;
  margin: 0 auto;
  padding: 4em 0;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox h5 {
  font-size: clamp(13px, 1.145vw, 22px);
  margin-bottom: 1em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox p {
  font-size: clamp(12px, 1.04vw, 20px);
  font-weight: 400;
  line-height: 1.75;
  margin-bottom: 2em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox p span {
  font-weight: 700;
  font-size: 1.1em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox .pageLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox .pageLink a {
  background: #003ad5;
  color: white;
  font-size: clamp(12px, 1.04vw, 20px);
  display: inline-block;
  width: 46%;
  padding: 1em 3em 1em 1em;
  border-radius: 1em;
  position: relative;
  line-height: 1.15;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain.container .compeBox .pageLink a::before {
  content: "";
  position: absolute;
  background: url(./img/icon-open.svg) no-repeat center center/contain;
  width: 1.5em;
  height: 1.5em;
  top: 50%;
  right: 10%;
  transform: translateY(-50%);
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock {
  text-align: center;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock h3 {
  font-size: clamp(20px, 1.875vw, 36px);
  padding-top: 1em;
  line-height: 1.5;
  margin-bottom: 1em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock h3 span {
  font-size: 1.2em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock>p {
  font-size: clamp(12px, 1.04vw, 20px);
  line-height: 1.5;
  margin-bottom: 2em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock>p span {
  color: #003ad5;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock>p i {
  font-style: normal;
  font-weight: 400;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel p {
  font-size: clamp(12px, 1.04vw, 20px);
  padding-right: 1em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel a {
  display: block;
  font-size: clamp(16px, 2.5vw, 48px);
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  color: #1e1e1e;
  text-align: left;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel a b {
  font-size: 0.75em;
}

html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel a span {
  font-weight: 400;
  font-size: clamp(12px, 1.04vw, 20px);
}

html body main section.compensation .compeInsurance .compeInsIn>h2 {
  font-size: clamp(20px, 1.875vw, 36px);
  padding: 1em 0;
  text-align: center;
}

html body main section.compensation .others {
  text-align: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.compensation .others h2 {
  font-size: clamp(15px, 1.875vw, 36px);
  margin-bottom: 1.5em;
}

html body main section.compensation .others h5 {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 2em;
}

html body main section.compensation .others .pdfDown {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 1220px;
  width: 85%;
  margin: 0 auto 5em;
}

html body main section.compensation .others .pdfDown .pdfDwnIn {
  border: 1px solid #1e1e1e;
  padding: 2em;
  width: 100%;
  margin-bottom: 2em;
}

html body main section.compensation .others .pdfDown .pdfDwnIn p {
  font-size: clamp(13px, 1.25vw, 24px);
  margin-bottom: 1em;
}

html body main section.compensation .others .pdfDown .pdfDwnIn p span {
  font-size: 0.75em;
}

html body main section.compensation .others .pdfDown .pdfDwnIn a {
  display: block;
  background: #003ad5;
  color: white;
  font-size: clamp(12px, 1.04vw, 20px);
  padding: 0.5em 0;
  border-radius: 0.5em;
}

html body main section.compensation .others h6 {
  font-size: clamp(12px, 1.145vw, 22px);
  display: inline-block;
  text-align: left;
  margin-bottom: 2em;
  line-height: 2;
}

html body main section.compensation .others p {
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 2;
  max-width: 1220px;
  margin: 0 auto 5em;
  text-align: left;
}

html body main section.compensation .compeCon {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  background: #d1d4dc;
  padding: clamp(25px, 2.6vw, 50px);
}

html body main section.compensation .compeCon h4 {
  font-size: clamp(14px, 1.45vw, 28px);
  margin-bottom: 1em;
}

html body main section.compensation .compeCon .compeConIn {
  max-width: 880px;
  margin: 0 auto;
  width: 90%;
}

html body main section.compensation .compeCon .compeConIn .compeConTel {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

html body main section.compensation .compeCon .compeConIn .compeConTel h3 {
  display: block;
  font-size: clamp(30px, 3.125vw, 60px);
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  color: #1e1e1e;
  text-align: left;
  margin: 0 0.5em 0.5em;
}

html body main section.compensation .compeCon .compeConIn .compeConTel h3 span {
  font-size: 0.8em;
}

html body main section.compensation p.out {
  max-width: 1420px;
  margin: 1em auto;
  width: 85%;
  text-align: right;
}

html body main section.pc-rent {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.pc-rent>img {
  margin-bottom: 3em;
}

html body main section.pc-rent>a {
  display: block;
  margin-bottom: 2em;
  text-align: center;
}

html body main section.pc-rent .att {
  font-size: clamp(10px, 0.83vw, 16px);
  margin-bottom: 5em;
  text-align: center;
}

html body main section.pc-rent .pointBlock {
  margin-bottom: 7em;
}

html body main section.pc-rent .pointBlock .pointIn {
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 3em;
}

html body main section.pc-rent .pointBlock .pointIn h2 {
  font-size: clamp(13px, 1.145vw, 22px);
  text-align: center;
  background: #003ad5;
  color: white;
  padding: 0.5em 1.5em;
  margin-bottom: 0.5em;
}

html body main section.pc-rent .pointBlock .pointIn h2 span {
  font-size: 2.85em;
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  margin-top: 0.1em;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain {
  font-size: clamp(14px, 1.45vw, 28px);
  padding-left: 1em;
  padding-bottom: 0.25em;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain h3 {
  font-size: 1em;
  line-height: 1.7;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain h3 span {
  color: red;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain p {
  font-size: clamp(11px, 0.937vw, 18px);
  display: inline-block;
  margin-right: 1em;
  line-height: 1.7;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain p i {
  font-size: 0.77em;
  font-style: normal;
}

html body main section.pc-rent .pointBlock .pointIn .pointInMain p span {
  color: white;
  background: #003ad5;
  font-size: 0.88em;
  padding: 0.2em 0.5em;
  margin-right: 0.5em;
  border-radius: 0.2em;
}

html body main section.pc-rent .specBlock {
  border: 1px solid #1e1e1e;
  margin-bottom: 3em;
}

html body main section.pc-rent .specBlock:last-of-type {
  margin-bottom: 10em;
}

html body main section.pc-rent .specBlock .spechead {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: left;
}

html body main section.pc-rent .specBlock .spechead::before {
  content: "";
  font-size: clamp(15px, 1.3vw, 25px);
  background: #1e1e1e;
  width: 100%;
  height: 1px;
  left: 0;
  top: 50%;
  z-index: -1;
  position: absolute;
}

html body main section.pc-rent .specBlock .spechead h4 {
  font-size: clamp(15px, 1.3vw, 25px);
  color: white;
  background: #003ad5;
  padding: 0.75em 3em;
  display: inline-block;
}

html body main section.pc-rent .specBlock .spechead h5 {
  display: inline-block;
  padding: 0 1em;
  background: white;
}

html body main section.pc-rent .specBlock .specmain {
  width: 85%;
  margin: 0 auto;
}

html body main section.pc-rent .specBlock .specmain p {
  font-size: clamp(13px, 1.04vw, 20px);
  line-height: 1.5;
  padding: 1em 0;
}

html body main section.pc-rent .specBlock .specmain h6 {
  font-size: clamp(14px, 1.25vw, 24px);
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.pc-rent .specBlock .specmain h6 span {
  background: #d9e6ed;
  padding: 0.2em 0.5em;
  margin-right: 0.5em;
  font-size: 0.66em;
  border-radius: 0.2em;
}

html body main section.pc-rent .specBlock .specmain a {
  font-size: clamp(13px, 1.145vw, 22px);
  color: white;
  background: #1e1e1e;
  width: 100%;
  display: block;
  text-align: center;
  padding: 0.5em 0;
  border-radius: 0.25em;
  margin-bottom: 2em;
}

html body main section.pc-rent .specBlock .specmain a img {
  filter: brightness(100);
  height: 1em;
  width: auto;
  margin-left: 0.5em;
}

html body main section.pc-rent .repair {
  width: 85%;
  margin: 0 auto;
  max-width: 1420px;
}

html body main section.pc-rent .repair h2 {
  text-align: center;
  font-size: clamp(20px, 2.08vw, 40px);
  margin-bottom: 0.5em;
}

html body main section.pc-rent .repair h2 img {
  height: 1.5em;
  width: auto;
  margin-right: 0.5em;
}

html body main section.pc-rent .repair .container {
  padding: 0;
  max-width: unset;
}

html body main section.pc-rent .repair .container .repairBox {
  margin-bottom: 2em;
}

html body main section.pc-rent .repair .container .repairBox p {
  font-weight: 400;
  margin-top: 1em;
  line-height: 1.5;
  font-size: clamp(14px, 1.04vw, 18px);
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 1em;
}

html body main section.pc-rent .repair .container .repairBox p span {
  font-weight: 700;
}

html body main section.textbook {
  text-align: center;
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.textbook .container {
  padding: 0;
  max-width: unset;
  margin-bottom: clamp(30px, 7.29vw, 140px);
}

html body main section.textbook .container.how {
  /* img {
      margin-bottom: 5em;
  } */
  font-size: clamp(13px, 0.85vw, 17px);
  text-align: left;
}

html body main section.textbook .container.how .col-12:first-of-type img {
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.textbook .container.how h5 {
  padding: 0.5em;
  margin-bottom: 1em;
  border: 1px solid;
  font-size: clamp(13px, 0.88vw, 17px);
}

html body main section.textbook .container.how h5 i {
  color: #003ab5;
}

html body main section.textbook .container.how p {
  line-height: 1.75;
  margin-bottom: 5em;
  font-size: clamp(13px, 0.88vw, 17px);
}

html body main section.textbook>h5 {
  font-size: clamp(13px, 1.35vw, 26px);
  line-height: 1.7;
  margin-bottom: 4em;
}

html body main section.textbook h2 {
  font-size: clamp(20px, 2.08vw, 40px);
  margin-bottom: 1em;
}

html body main section.textbook .siteBlock {
  display: flex;
  border: 1px solid #1e1e1e;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 3em;
}

html body main section.textbook .siteBlock img {
  width: 50%;
}

html body main section.textbook .siteBlock .siteBlockIn {
  width: 50%;
  padding: 2em;
}

html body main section.textbook .siteBlock .siteBlockIn p {
  font-size: clamp(13px, 1.35vw, 26px);
  line-height: 1.7;
  margin-bottom: 1.5em;
}

html body main section.textbook .siteBlock .siteBlockIn a {
  font-size: clamp(12px, 1.145vw, 22px);
  padding: 0.75em 0;
  color: white;
  background: #1e1e1e;
  border-radius: 0.25em;
  display: block;
}

html body main section.textbook .siteBlock .siteBlockIn a img {
  height: 1em;
  width: auto;
  margin-left: 0.5em;
  filter: brightness(100);
}

html body main section.textbook .tripCon .contacts {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}

html body main section.textbook .tripCon .contacts>div {
  padding: 0 1%;
  margin-bottom: 2em;
}

@media screen and (min-width: 769px) {
  html body main section.textbook .tripCon .contacts>div {
    width: 48%;
    margin: 0;
  }
}

html body main section.textbook .tripCon .contacts>div h4 {
  font-size: clamp(15px, 1.56vw, 30px);
  margin-bottom: 0.5em;
}

html body main section.textbook .tripCon .contacts>div h4>i {
  color: #0035c2;
}

html body main section.textbook .tripCon .contacts>div a {
  color: #1e1e1e;
}

html body main section.apart {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.apart>p {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section.apart>h2 {
  font-size: clamp(20px, 2.08vw, 40px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.apart .container {
  max-width: unset;
  padding: 0;
  margin-bottom: clamp(40px, 4.16vw, 80px);
}

html body main section.apart .apartBlock {
  border: 1px solid #1e1e1e;
  padding: 2em;
  margin-bottom: 3em;
}

html body main section.apart .apartBlock img {
  margin-bottom: 2em;
}

html body main section.apart .apartBlock a {
  color: white;
  background: #003ad5;
  font-size: clamp(11px, 1.25vw, 24px);
  display: block;
  padding: 0.5em 0;
  border-radius: 0.25em;
  text-align: center;
}

html body main section.apart .apartBlock a img {
  margin: 0;
  filter: brightness(100);
  height: 1em;
  width: auto;
}

html body main section.kimono {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.kimono .kimoDisc {
  margin-bottom: clamp(40px, 4.68vw, 90px);
}

@media screen and (min-width: 769px) {
  html body main section.kimono .kimoDisc {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

html body main section.kimono .kimoDisc>div {
  font-size: clamp(14px, 1.25vw, 24px);
  margin-bottom: 1.5em;
}

@media screen and (min-width: 769px) {
  html body main section.kimono .kimoDisc>div {
    width: 45%;
    margin: 0;
  }
}

html body main section.kimono .kimoDisc p {
  line-height: 2;
  text-indent: -1em;
  padding-left: 1em;
}

html body main section.kimono .kimoDisc p i {
  color: #ea5f7f;
  font-size: 0.75em;
}

html body main section.kimono .kimoDisc img {
  max-width: 710px;
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body main section.kimono .kimoDisc img {
    width: 50%;
  }
}

html body main section.kimono .kimoRcm {
  margin-bottom: clamp(30px, 4.16vw, 80px);
}

html body main section.kimono .kimoRcm img {
  width: 100%;
}

html body main section.kimono>p {
  font-size: clamp(15px, 1.56vw, 30px);
  line-height: 2;
  margin-bottom: 1em;
  font-weight: 400;
  text-align: center;
}

html body main section.kimono .hakamaLink {
  /* margin-top   : clamp(50px, 5.2vw, 100px); */
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.kimono .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.kimono .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.kimono .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.kimono .tripCon .contacts {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}

html body main section.kimono .tripCon .contacts>div {
  padding: 0 1%;
  margin-bottom: 2em;
}

@media screen and (min-width: 769px) {
  html body main section.kimono .tripCon .contacts>div {
    width: 48%;
    margin: 0;
  }
}

html body main section.kimono .tripCon .contacts>div h4 {
  font-size: clamp(15px, 1.56vw, 27px);
  margin-bottom: 0.5em;
}

html body main section.kimono .tripCon .contacts>div h4>i {
  color: #0035c2;
}

html body main section.kimono .tripCon .contacts>div a {
  color: #1e1e1e;
}

html body main section.wifi {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.wifi>p:first-of-type {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section.wifi>h2 {
  font-size: clamp(20px, 2.08vw, 40px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section.wifi>h3 {
  font-size: clamp(15px, 1.71vw, 33px);
  padding-bottom: 0.75em;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 0.5em;
  text-align: center;
  margin-top: 1.5em;
}

html body main section.wifi>p:not(:first-of-type) {
  font-size: clamp(13px, 1.25vw, 24px);
  border-bottom: 1px solid #1e1e1e;
  padding-bottom: 1em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.wifi>p:not(:first-of-type) span {
  max-width: 800px;
  width: 80%;
  text-align: left;
  display: block;
  margin: 0 auto;
  line-height: 1.5;
}

html body main section.wifi>p:not(:first-of-type) span b {
  color: #003ad5;
}

html body main section.wifi .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.wifi .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.wifi .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.wifi .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.goods h1 {
  font-size: clamp(25px, 4.16vw, 80px);
  margin-bottom: 0.5em;
  text-align: center;
}

html body main section.goods h1 span {
  font-size: 0.3em;
  margin-top: 1em;
  display: block;
}

html body main section.goods .goodsMain {
  background: #cedaf9;
  padding-top: clamp(20px, 3.125vw, 60px);
  padding-bottom: clamp(20px, 3.125vw, 60px);
  margin-bottom: clamp(40px, 4.42vw, 85px);
}

html body main section.goods .goodsMain .goodsMainIn {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG {
  position: fixed;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
  background: rgba(57, 56, 58, 0.95);
  width: 100%;
  height: 100dvh;
  top: 0;
  left: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG.active {
  opacity: 1;
  pointer-events: all;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide {
  background: white;
  max-width: 580px;
  width: 85%;
  padding: 2em 2em 5em;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slideIn h4 {
  font-size: clamp(12px, 1.04vw, 20px);
  color: white;
  background: #39383a;
  padding: 0.75em;
  text-align: center;
  margin-bottom: 1em;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slideIn img {
  margin-bottom: 1em;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slideIn p {
  font-size: clamp(12px, 1.04vw, 20px);
  line-height: 1.5;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slick-prev {
  top: unset;
  bottom: 2%;
  left: 40%;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slick-prev::before {
  content: "◀︎";
  color: #39383a;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slick-next {
  top: unset;
  bottom: 2%;
  right: 40%;
}

html body main section.goods .goodsMain .goodsMainIn .goodsSlideBG .goodsSlide .slick-next::before {
  content: "▶︎";
  color: #39383a;
}

html body main section.goods .goodsMain .goodsMainIn .container {
  background: white;
  max-width: unset;
  margin-bottom: clamp(25px, 2.34vw, 45px);
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox {
  padding: 3em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx {
  display: flex;
  align-items: center;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx img {
  max-width: 410px;
  width: 40%;
  height: auto;
  margin-left: 2em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx p {
  padding-right: 4em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox p {
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 2em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox p span {
  font-size: 0.75em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox h5 {
  font-size: clamp(13px, 1.4vw, 27px);
  border-bottom: 1px solid #1e1e1e;
  padding-bottom: 0.5em;
  margin-bottom: 0.75em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox h6 {
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 2em;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox h6 span {
  color: #003ad5;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox h6 b {
  text-decoration: underline;
  cursor: pointer;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox a {
  color: white;
  background: #1e1e1e;
  padding: 1em 0;
  max-width: 626px;
  border-radius: 0.5em;
  font-size: clamp(12px, 1.04vw, 20px);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

html body main section.goods .goodsMain .goodsMainIn .container .goodsBox a img {
  height: 1em;
  width: auto;
  filter: brightness(100);
  margin-left: 0.5em;
}

html body main section._goods {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section._goods>p:first-of-type {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section._goods>img {
  display: block;
  max-width: 650px;
  margin: 0 auto;
  width: 70%;
}

html body main section._goods .container {
  max-width: unset;
  padding: 0;
  margin-bottom: 6em;
}

html body main section._goods .container .goodsBox {
  margin-bottom: 3em;
}

html body main section._goods .container .goodsBox .godMain {
  background: #222e3e;
  color: white;
  text-align: center;
  padding: 3em;
}

html body main section._goods .container .goodsBox .godMain.or {
  background: #ff9904;
  color: #1e1e1e;
}

html body main section._goods .container .goodsBox .godMain h4 {
  font-size: clamp(16px, 1.875vw, 36px);
  padding-bottom: 0.5em;
}

html body main section._goods .container .goodsBox .godMain p {
  font-size: clamp(13px, 1.25vw, 24px);
  margin-bottom: 2em;
}

html body main section._goods .container .goodsBox .godMain a {
  background: white;
  display: block;
  color: #1e1e1e;
  font-size: clamp(10px, 0.78vw, 15px);
  padding: 1em 0;
  border-radius: 0.5em;
}

html body main section._goods h2 {
  font-size: clamp(20px, 2.08vw, 40px);
  margin-bottom: 1em;
  text-align: center;
}

html body main section._goods>h3 {
  font-size: clamp(15px, 1.71vw, 33px);
  padding-bottom: 0.75em;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 0.5em;
  text-align: center;
  margin-top: 2em;
}

html body main section._goods>p:not(:first-of-type) {
  font-size: clamp(13px, 1.25vw, 24px);
  border-bottom: 1px solid #1e1e1e;
  padding-bottom: 1em;
  margin-bottom: 1em;
  text-align: center;
}

html body main section._goods>p:not(:first-of-type) span {
  max-width: 800px;
  width: 80%;
  text-align: left;
  display: block;
  margin: 0 auto;
  line-height: 1.5;
}

html body main section._goods>p:not(:first-of-type) span b {
  color: #003ad5;
}

html body main section._goods .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section._goods .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section._goods .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section._goods .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.licence {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.licence>p:first-of-type {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section.licence>img {
  display: block;
  margin: 0 auto 3em;
}

html body main section.licence>h3 {
  font-size: clamp(15px, 1.71vw, 33px);
  padding-bottom: 0.75em;
  margin-bottom: 0.5em;
  text-align: center;
  margin-top: 2em;
}

html body main section.licence>p:not(:first-of-type) {
  font-size: clamp(13px, 1.25vw, 24px);
  border: 1px solid #1e1e1e;
  padding: 1em;
  text-align: center;
  font-weight: 500;
}

html body main section.licence>p:not(:first-of-type) span {
  max-width: 800px;
  width: 80%;
  text-align: left;
  display: block;
  margin: 0 auto;
  line-height: 1.5;
  font-weight: 700;
}

html body main section.licence>p:not(:first-of-type) span b {
  color: #003ad5;
}

html body main section.licence>p:last-of-type {
  border-top: none;
  margin-bottom: 1em;
}

html body main section.licence .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.licence .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.licence .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.licence .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.driving-school {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
}

html body main section.driving-school>p:first-of-type {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section.driving-school>img:first-of-type {
  max-width: 646px;
  display: block;
  width: 70%;
  margin: 0 auto;
}

html body main section.driving-school>h3 {
  font-size: clamp(15px, 1.71vw, 33px);
  padding-bottom: 0.75em;
  margin-bottom: 0.5em;
  text-align: center;
  margin-top: 2em;
}

html body main section.driving-school>p:not(:first-of-type) {
  font-size: clamp(13px, 1.25vw, 24px);
  border: 1px solid #1e1e1e;
  padding: 1em 0;
  margin-bottom: 1em;
  text-align: center;
}

html body main section.driving-school>p:not(:first-of-type) span {
  max-width: 800px;
  width: 80%;
  text-align: left;
  display: block;
  margin: 0 auto;
  line-height: 1.5;
  text-align: center;
}

html body main section.driving-school>p:not(:first-of-type) span b {
  color: #003ad5;
}

html body main section.driving-school .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.driving-school .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.driving-school .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.driving-school .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.ec {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.ec h3 {
  font-size: clamp(21px, 1.92vw, 37px);
  margin-top: 2em;
  margin-bottom: 1em;
}

html body main section.ec p {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 1.7;
  margin-bottom: 4em;
}

html body main section.ec .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #003ad5;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.ec .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.ec .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.ec .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.ec .hakamaLink a.soon {
  pointer-events: none;
}

html body main section.ec .hakamaLink a.soon::before {
  content: "ただいま準備中";
  position: absolute;
  font-size: 1em;
  background: #bbbdbe;
  width: 100%;
  height: 100%;
  border-radius: 1em;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.edanz {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.edanz h3 {
  font-size: clamp(21px, 1.92vw, 37px);
  margin-top: 2em;
  margin-bottom: 1em;
}

html body main section.edanz p {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 1.7;
  margin-bottom: 4em;
}

html body main section.edanz>img:last-of-type {
  max-width: 320px;
  width: 50%;
  display: block;
  margin: 0 auto 5em;
}

html body main section.edanz .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #757475;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.edanz .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.edanz .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.edanz .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.edanz.stu .hakamaLink {
  background: #003ad5;
}

html body main section.ulatus {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.ulatus h3 {
  font-size: clamp(21px, 1.92vw, 37px);
  margin-top: 2em;
  margin-bottom: 1em;
}

html body main section.ulatus>img:first-of-type {
  max-width: 280px;
  width: 50%;
  margin: 0 auto 3em;
  display: block;
}

html body main section.ulatus>p:first-of-type {
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 2;
  margin-bottom: 3em;
  font-weight: 400;
}

html body main section.ulatus h5 {
  font-size: clamp(18px, 1.51vw, 29px);
}

html body main section.ulatus h5 span {
  background: yellow;
  padding: 0.25em 0.5em;
  display: inline-block;
  font-size: 1.275em;
}

html body main section.ulatus .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #757475;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.ulatus .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.ulatus .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.ulatus .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.ulatus.stu .hakamaLink {
  background: #003ad5;
}

html body main section.medical-book {
  text-align: center;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body main section.medical-book h3 {
  font-size: clamp(21px, 1.92vw, 37px);
  margin-top: 2em;
  margin-bottom: 1.5em;
}

html body main section.medical-book h5 {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 2em;
}

html body main section.medical-book h5 span {
  font-size: 0.875em;
}

html body main section.medical-book>p {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 3em;
}

html body main section.medical-book>p span {
  font-weight: 700;
}

html body main section.medical-book>a {
  display: block;
  width: 88%;
  max-width: 1000px;
  background: #757475;
  color: white;
  margin: 0 auto 3em;
  font-size: clamp(12px, 1.145vw, 21px);
  padding: 1em;
  border: 1px solid #757475;
  position: relative;
}

html body main section.medical-book>a.st {
  background: #0035c2;
  border: 1px solid #0035c2;
}

html body main section.medical-book>a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 1em;
  height: 2em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  filter: brightness(100);
}

html body main section.medical-book>a>div h3 {
  font-size: 1.85em;
  position: relative;
  text-align: center;
  width: 90%;
  margin: 0 auto 0.5em;
}

@media screen and (min-width: 769px) {
  html body main section.medical-book>a>div h3 {
    width: 70%;
  }
}

html body main section.medical-book>a>div h3 img {
  position: absolute;
  left: 0;
  height: 1.25em;
  width: auto;
  top: 50%;
  transform: translateY(-50%);
}

html body main section.medical-book>a p img {
  height: 2em;
  width: auto;
  margin-left: 1em;
}

html body main section.medical-book h6 {
  font-size: clamp(12px, 1.145vw, 21px);
  line-height: 1.7;
  margin-bottom: 3em;
}

html body main section.medical-book h6 b {
  /* font-family: "Oswald", sans-serif;
  font-weight: 400; */
}

html body main section.medical-book h6 b i {
  font-style: normal;
  font-size: 1.5em;
}

html body main section.ec-staff {
  max-width: 1420px;
  margin: 0 auto;
  width: 85%;
  text-align: center;
}

html body main section.ec-staff h3 {
  font-size: clamp(21px, 1.92vw, 37px);
  margin-top: 2em;
  margin-bottom: 1em;
}

html body main section.ec-staff p {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 400;
  line-height: 1.7;
  margin-bottom: 4em;
}

html body main section.ec-staff .hakamaLink {
  margin-top: clamp(50px, 5.2vw, 100px);
  background: #757475;
  padding: 3em 0;
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body main section.ec-staff .hakamaLink h4 {
  color: white;
  font-size: clamp(15px, 1.56vw, 30px);
  text-align: center;
  margin-bottom: 1em;
}

html body main section.ec-staff .hakamaLink a {
  font-size: clamp(15px, 1.56vw, 30px);
  background: white;
  color: #1e1e1e;
  padding: 1.5em 0;
  display: block;
  max-width: 1217px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  border-radius: 1em;
}

html body main section.ec-staff .hakamaLink a img {
  position: absolute;
  height: 1.25em;
  width: auto;
  top: 50%;
  right: 20%;
  transform: translateY(-50%);
}

html body main section.ec-staff .hakamaLink a.soon {
  pointer-events: none;
}

html body main section.ec-staff .hakamaLink a.soon::before {
  content: "ただいま準備中";
  position: absolute;
  font-size: 1em;
  background: #bbbdbe;
  width: 100%;
  height: 100%;
  border-radius: 1em;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.contact {
  max-width: 1220px;
  width: 85%;
  margin: 0 auto;
  text-align: center;
}

html body main section.contact h1 {
  font-size: clamp(45px, 4.16vw, 80px);
  position: relative;
  margin-bottom: 1.5em;
  display: inline-block;
  color: #1e1e1e;
  margin-bottom: 1em;
  margin-top: 1em;
}

html body main section.contact h1 i {
  font-size: clamp(45px, 4.16vw, 80px);
  display: inline-block;
  width: 1em;
  height: 0.0625em;
  background: #003ad5;
  position: absolute;
  top: 70%;
  transform: translateY(-50%) rotateZ(-54deg);
  transform-origin: center;
  transition: 0.3s;
}

html body main section.contact h1 p {
  display: inline-block;
  position: absolute;
  font-size: clamp(16px, 1.354vw, 26px);
  bottom: -25%;
  right: 15%;
  left: 0;
  transform: translate(20%, 100%);
  white-space: nowrap;
}

html body main section.contact .blueHead {
  margin-bottom: 2em;
}

html body main section.contact .blueHead .blueHeadIn {
  background: #003ad5;
  color: white;
  padding: 2em;
}

html body main section.contact .blueHead .blueHeadIn h5 {
  font-size: clamp(13px, 1.145vw, 22px);
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.contact .blueHead .blueHeadIn h2 {
  font-size: clamp(25px, 3.125vw, 60px);
  font-weight: 400;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
}

html body main section.contact .blueHead .blueHeadIn h2 img {
  height: 0.8em;
  margin-right: 0.5em;
}

html body main section.contact .blueHead>img {
  margin-top: 2em;
}

html body main section.contact .telBlock {
  margin-bottom: clamp(70px, 7.812vw, 150px);
}

html body main section.contact .telBlock .telIn {
  border-bottom: 1px solid #1e1e1e;
  text-align: left;
  margin-bottom: 1em;
}

html body main section.contact .telBlock .telIn h6 {
  font-size: clamp(13px, 1.145vw, 22px);
  margin-bottom: 1em;
  line-height: 1.5;
}

html body main section.contact .telBlock .telIn a {
  font-size: clamp(25px, 2.6vw, 50px);
  font-weight: 400;
  display: flex;
  align-items: center;
  color: #1e1e1e;
  margin-bottom: 0.5em;
  letter-spacing: 0.05em;
}

html body main section.contact .telBlock .telIn a span {
  font-size: 0.6em;
  margin-right: 0.5em;
}

html body main section.contact .telBlock .telIn a img {
  font-size: 0.6em;
  margin-right: 0.5em;
  height: 1em;
}

html body main section.contact .telBlock .telIn p {
  font-size: clamp(11px, 0.9375vw, 18px);
  margin-bottom: 1em;
  line-height: 1.5;
  font-weight: 400;
}

html body main section.contact .formBlock {
  text-align: left;
}

html body main section.contact .formBlock p {
  font-size: clamp(15px, 1.09vw, 21px);
  margin-bottom: 1em;
}

html body main section.contact .formBlock p>i {
  color: white;
  background: red;
  padding: 0.3em;
  border-radius: 0.5em;
  margin-right: 1em;
}

html body main section.contact .formBlock .formIn {
  display: flex;
  align-items: center;
  justify-content: left;
  flex-wrap: wrap;
  margin-bottom: 2em;
  font-size: clamp(13px, 1.09vw, 21px);
}

html body main section.contact .formBlock .formIn>span {
  width: 100%;
  font-weight: 400;
}

html body main section.contact .formBlock .formIn input,
html body main section.contact .formBlock .formIn textarea,
html body main section.contact .formBlock .formIn select {
  font-size: 1em;
  border: 1px solid #8e8e8e;
  border-radius: 0;
  padding: 1em;
  width: 100%;
}

html body main section.contact .formBlock .formIn a {
  color: white;
  background: #626262;
  display: inline-block;
  padding: 0.5em 2em;
  border-radius: 0.5em;
}

html body main section.contact .formBlock .formIn.short>span {
  width: 42%;
  max-width: 400px;
}

html body main section.contact .formBlock .formIn.short>a {
  margin-left: 1em;
}

html body main section.contact .formBlock .formIn.shorts select {
  display: block;
  font-size: 1em;
  border: 1px solid #8e8e8e;
  border-radius: 0;
  padding: 1em;
}

@media screen and (min-width: 769px) {
  html body main section.contact .formBlock .formIn.shorts select {
    width: 42%;
    max-width: 400px;
  }
}

html body main section.contact .formBlock .formIn.accept {
  margin-top: 3em;
}

html body main section.contact .formBlock .formIn.accept>span {
  width: unset;
  font-size: 1.25em;
}

html body main section.contact .formBlock .formIn.accept>span input {
  width: unset;
  border: 1px solid #8e8e8e;
  border-radius: 0;
}

html body main section.contact .formBlock .formIn b {
  font-size: 0.75em;
  font-weight: 400;
}

html body main section.contact .formBlock .policy {
  border: 1px solid #8e8e8e;
  overflow-y: scroll;
  height: 560px;
  margin-bottom: 10em;
}

html body main section.contact .formBlock .policy .policyIn {
  width: 90%;
  margin: 0 auto;
  max-width: 1010px;
  padding: 5em 0;
}

html body main section.contact .formBlock .policy .policyIn p {
  font-size: clamp(13px, 0.83vw, 16px);
  margin-bottom: 1em;
  line-height: 2;
}

html body main section.contact .formBlock .policy .policyIn h2 {
  font-size: clamp(15px, 1.145vw, 22px);
  padding-bottom: 0.5em;
  border-bottom: 1px solid;
  margin-bottom: 0.5em;
}

html body main section.contact .formBlock .subBtn input {
  width: 100%;
  background: #003ad5;
  color: white;
  border-radius: 0.5em;
  border: 0;
  font-size: clamp(15px, 1.875vw, 36px);
  padding: 0.5em 0;
}

html body main section.sitemap {
  background: #e5ebfb;
}

html body main section.sitemap .mapIn {
  padding-top: clamp(30px, 3.645vw, 70px);
  padding-bottom: clamp(30px, 3.645vw, 70px);
  max-width: 1000px;
  width: 85%;
  margin: 0 auto;
}

html body main section.sitemap .mapIn h1 {
  text-align: center;
  font-size: clamp(25px, 2.34vw, 45px);
  margin-bottom: 1em;
}

html body main section.sitemap .mapIn>ul {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

html body main section.sitemap .mapIn>ul>li {
  font-size: clamp(14px, 1.04vw, 20px);
}

html body main section.sitemap .mapIn>ul>li a {
  color: #1e1e1e;
  line-height: 1.7;
  margin-bottom: 1em;
  text-align: left;
  display: inline-block;
}

html body main section.sitemap .mapIn>ul>li a span {
  color: #003ad5;
}

html body main section.sitemap .mapIn>ul>li>a {
  font-size: 1.25em;
}

html body main section.sitemap .mapIn>ul>li ul {
  padding-left: 4em;
  margin-bottom: 2em;
}

html body main section.sitemap .mapIn>ul>li ul li a {
  font-size: 1em;
}

html body main section.privacy {
  background: #e5ebfb;
  padding-top: clamp(30px, 3.645vw, 70px);
  padding-bottom: clamp(30px, 3.645vw, 70px);
}

html body main section.privacy .priIn {
  padding-top: clamp(30px, 3.645vw, 70px);
  padding-bottom: clamp(30px, 3.645vw, 70px);
  background: white;
  max-width: 1420px;
  width: calc(95% - 30px);
  margin: 0 auto;
}

html body main section.privacy .priIn h1 {
  text-align: center;
  font-size: clamp(25px, 2.34vw, 45px);
  margin-bottom: 1em;
}

html body main section.privacy .priIn .priMain {
  max-width: 1200px;
  margin: 0 auto;
  width: 95%;
}

html body main section.privacy .priIn .priMain p {
  font-size: clamp(13px, 0.93vw, 18px);
  margin-bottom: 2em;
  line-height: 1.7;
}

html body main section.privacy .priIn .priMain h2 {
  font-size: clamp(16px, 1.145vw, 22px);
  line-height: 1.7;
  padding-bottom: 0.5em;
  border-bottom: 1px solid;
  margin-bottom: 0.5em;
}

html body .scrollKindai {
  display: flex;
  align-items: center;
  height: 1em;
  line-height: 1;
  overflow: hidden;
  width: 100%;
  white-space: nowrap;
  z-index: 1;
  font-size: clamp(53px, 9.21vw, 177px);
  margin-top: -0.5em;
}

html body .scrollKindai ul {
  animation: flowing 30s linear infinite;
  font-size: 1em;
  transform: translateX(100%);
  margin: 0;
  padding: 0;
}

html body .scrollKindai ul li {
  display: inline-block;
  padding-right: 0.5em;
  font-weight: 300;
  font-style: italic;
}

html body .footCon {
  padding-top: clamp(60px, 11.45vw, 230px);
  padding-bottom: clamp(40px, 9.37vw, 180px);
  box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: -1;
}

html body .footCon .footConIn {
  width: 90%;
  max-width: 1320px;
  margin: 0 auto;
  background: rgba(229, 235, 251, 0.95);
  text-align: center;
  padding-top: clamp(25px, 3.64vw, 70px);
  padding-bottom: 2em;
}

html body .footCon .footConIn h2 {
  display: inline-block;
  font-size: clamp(25px, 3.125vw, 60px);
  font-style: italic;
  padding-bottom: 0.1em;
  margin-bottom: 0.2em;
  border-bottom: solid #003ad5;
  border-width: clamp(2.5px, 0.2vw, 3.85px);
}

html body .footCon .footConIn>p {
  font-size: clamp(13px, 1.145vw, 22px);
  margin-bottom: 1em;
}

html body .footCon .footConIn a:not(.rbL) {
  display: block;
  width: 88%;
  max-width: 1000px;
  background: #003ad5;
  color: #fff;
  margin: 0 auto 1em;
  font-size: clamp(12px, 1.145vw, 21px);
  padding: 1em;
  padding-top: 1.5em;
  border: 1px solid #003ad5;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  html body .footCon .footConIn a:not(.rbL) {
    padding-top: 1em;
  }
}

html body .footCon .footConIn a:not(.rbL)::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-wh.svg) no-repeat center center/contain;
  width: 1em;
  height: 2em;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  /*  filter: brightness(0); */
}

html body .footCon .footConIn a.mail:hover:not(.rbL)::before {
  background: url(./img/arrow-mail.svg) no-repeat center center/contain;
}

html body .footCon .footConIn a.tel:hover:not(.rbL)::before {
  background: url(./img/arrow-tel.svg) no-repeat center center/contain;
}

html body .footCon .footConIn a:not(.rbL)::after {
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: 0.3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}

html body .footCon .footConIn a:not(.rbL):hover {
  color: #005ca1;
}

html body .footCon .footConIn a:not(.rbL):hover::after {
  transform: scale(1, 1);
}

html body .footCon .footConIn a:not(.rbL)>div h3 {
  font-size: 1.65em;
  position: relative;
  text-align: center;
  width: 70%;
  margin: 0 auto 0.75em;
}

html body .footCon .footConIn a:not(.rbL)>div h3 img {
  position: absolute;
  left: 0;
  height: 1.25em;
  width: auto;
  top: 50%;
  transform: translateY(-50%);
  filter: brightness(0);
}

html body .footCon .footConIn a:not(.rbL)>div h3 svg {
  position: absolute;
  left: 0;
  height: 1.25em;
  width: auto;
  top: 50%;
  transform: translateY(-50%);
}

html body .footCon .footConIn a:not(.rbL)>div h3 svg .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

html body .footCon .footConIn a.mail:hover:not(.rbL)>div h3 svg .st0 {
  stroke: #003ab5;
}

html body .footCon .footConIn a.tel:hover:not(.rbL)>div h3 svg .st0 {
  stroke: #39383a;
}

html body .footCon .footConIn a.tel:not(.rbL)>div h3 svg .st1 {
  fill: #fff;
}

html body .footCon .footConIn a.tel:hover:not(.rbL)>div h3 svg .st1 {
  fill: #39383a;
}

html body .footCon .footConIn a:not(.rbL) p {
  letter-spacing: 0.1em;
}

html body .footCon .footConIn a:not(.rbL):hover {
  color: #003ad5;
}

html body .footCon .footConIn a:not(.rbL).tel {
  border-color: #39383a;
  background: #39383a;
}

html body .footCon .footConIn a:not(.rbL).tel>div h3 img,
html body .footCon .footConIn a:not(.rbL).tel>div h3 svg {
  height: 1.5em;
  transform-origin: center;
  transform: translate(50%, -50%);
}

html body .footCon .footConIn a:not(.rbL).tel:hover {
  color: #39383a;
}

html body .footCon .footConIn .more {
  text-align: right;
}

html body .footCon .footConIn .more a {
  display: inline-block;
  max-width: 300px;
  width: 53.7%;
  background: white;
  color: #1e1e1e;
  font-size: clamp(12px, 0.78vw, 15px);
  letter-spacing: 0.1em;
  position: relative;
  padding: 1em 0;
  text-align: center;
}

html body .footCon .footConIn .more a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  filter: grayscale(1) brightness(100) invert(1);
  height: 1.5em;
  aspect-ratio: 11/8;
  right: 15%;
  transition: 0.3s;
}

html body .footCon .footConIn .more a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 0.5em;
  background: #003ad5;
  transition: 0.3s;
}

html body .footCon .footConIn .more a:hover::before {
  right: 8%;
}

html body .footCon .footConIn .more a:hover::after {
  width: 100%;
}

html body footer {
  position: relative;
  z-index: 1;
}

html body footer .footMain {
  position: relative;
  z-index: 1;
  padding-top: clamp(25px, 2.86vw, 55px);
  max-width: 1370px;
  width: 79%;
  margin: 0 auto;
}

html body footer .footMain .footLogo {
  text-align: center;
}

html body footer .footMain .footLogo img {
  width: clamp(255px, 19.8vw, 380px);
  display: block;
  margin: 0 auto;
}

html body footer .footMain .footLogo p {
  font-size: clamp(12px, 0.937vw, 18px);
  display: inline-block;
  margin-bottom: 1em;
  line-height: 1.75;
}

html body footer .footMain .footLogo.sp {
  margin-bottom: 2em;
}

html body footer .footMain .footline {
  background: #d7d7d8;
  text-align: center;
  font-size: 13px;
  border-radius: 3em;
  padding: 0.5em 0;
  margin-bottom: 2em;
}

html body footer .footMain .footline a {
  color: #1e1e1e;
  letter-spacing: 0.04em;
}

html body footer .footMain .footline a img {
  margin: 0 0.5em;
  filter: grayscale(1);
  min-height: 0.75em;
}

html body footer .footMain .foot1 .footLinks .footLinks1 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn {
  width: 100%;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn .footLinksFlex {
  width: unset;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn .footLinksFlex .footLinkIn {
  width: 100%;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn {
  /* border    : 1px solid #003ad5; */
  width: 100%;
  margin-bottom: 1em;
  position: relative;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn a {
  display: block;
  font-size: clamp(14px, 0.83vw, 16px);
  color: #1e1e1e;
  font-weight: 700;
  margin-bottom: 1.25em;
  border-bottom: 1px solid #bbbbbb;
  padding-bottom: 0.5em;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn a:hover {
  opacity: 0.7;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn i {
  position: absolute;
  right: 0;
  top: 0.5em;
  transform: translateY(-60%);
  width: 2em;
  height: 2em;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 1px solid #bbbbbb;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn i span {
  display: block;
  position: relative;
  width: 70%;
  height: 2px;
  background: #003ad5;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn i span::before {
  content: "";
  width: 100%;
  height: 100%;
  transform-origin: center;
  transform: rotateZ(90deg);
  background: #003ad5;
  position: absolute;
  transition: 0.3s;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn i.open span::before {
  transform: none;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn .footMenuSub {
  display: none;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn .footMenuSub ul li a {
  border: none;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn .footMenuSub ul li a span {
  color: #003ad5;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  min-width: 140px;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a {
  background: #1e1e1e;
  width: 45%;
  text-align: center;
  color: white;
  padding: 1em 0;
  font-size: clamp(15px, 0.937vw, 18px);
  font-weight: 700;
  margin-bottom: 0.5em;
  border: none;
  position: relative;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a:nth-of-type(2) {
  background: #39383a;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a:nth-last-of-type(-n+2) {
  background: #1e1e1e;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center/contain;
  height: 0.35em;
  width: 1.25em;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
  transition: 0.3s;
}

html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a:hover::before {
  right: 5%;
}

html body footer .footMain .foot1 .footLinks .footLinks1.rec .footLinksIn {
  width: 100%;
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1.rec .footLinksIn .footLinkIn#sp-footLink02 {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1.rec .footLinksIn .footLinkIn#sp-footLink02>a {
    margin-right: 2em;
  }
}

html body footer .footMain .foot1 .footLinks .footLinks2 {
  text-align: center;
  display: flex;
  justify-content: space-between;
}

html body footer .footMain .foot1 .footLinks .footLinks2 a {
  color: #39383a;
  font-size: clamp(12px, 0.729vw, 14px);
  font-weight: 400;
  margin-bottom: 3em;
  display: inline-block;
}

html body footer .footMain .foot1 .footLinks .footLinks2 a:last-of-type {
  margin-left: 2em;
}

html body footer .footMain .foot1 .footLinks .footLinks2.rec {
  position: static;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: left;
  padding-left: 10%;
}

html body footer .footMain .foot1 .footLinks .footLinks2.rec a {
  background: #1e1e1e;
  color: white;
  font-size: clamp(13px, 0.833vw, 16px);
  padding: 1em 3em;
}

html body footer .footMain .foot1 .footLinks .footLinks2.rec a:last-of-type {
  background: #0035c2;
  margin-left: 2em;
}

html body footer .footMain .foot1 .footLinks .footLinks2.rec a img {
  filter: invert(255);
  margin-left: 1em;
  height: 1em;
}

html body footer .footMain .foot2 .outlink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2em;
}

html body footer .footMain .foot2 .outlink.groupLink {
  display: block;
}

html body footer .footMain .foot2 .outlink.groupLink h4 {
  margin-bottom: 1em;
}

html body footer .footMain .foot2 .outlink.groupLink a {
  width: 49.5%;
  display: inline-block;
  text-align: center;
}

html body footer .footMain .foot2 .outlink.groupLink a img {
  display: inline-block;
  width: 85%;
}

html body footer .footMain .foot2 .outlink.officialLink.pc {
  display: none;
}

html body footer .footMain .foot2 .outlink h4 {
  font-size: clamp(12px, 0.67vw, 13px);
  padding: 1em 0;
  border-top: 1px solid #1e1e1e;
  border-bottom: 1px solid #1e1e1e;
  text-align: center;
}

html body footer .footMain .foot2 .outlink .footsns {
  display: flex;
  width: 55%;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
}

html body footer .footMain .foot2 .outlink .footsns a {
  display: inline-block;
}

html body footer .footMain .foot2 .outlink .footsns a img {
  width: 40px;
  aspect-ratio: 1/1;
}

html body footer .footMain .foot2 .outlink.lineQr {
  display: none;
}

html body footer .footMain .foot2 .outlink.lineQr h4 {
  font-size: clamp(14px, 0.83vw, 16px);
}

html body footer .footMain .foot2 .outlink.lineQr img {
  margin-left: 1em;
}

html body footer .footMain .backTop {
  text-align: center;
  margin-bottom: 2em;
}

html body footer .footMain .backTop a .st0 {
  fill: #1E1E1E;
}

html body footer .footMain .backTop a:hover .st0 {
  fill: #003ad5;
}

html body footer .footMain .backTop a .st1 {
  fill: #FFFFFF;
}

html body footer .copy {
  background: #39383a;
}

html body footer .copy p {
  color: white;
  font-size: 10px;
  text-align: center;
  padding: 0.5em;
}

html body .backToTop {
  position: fixed;
  max-width: 1920px;
  width: 100%;
  transform: translateX(-50%);
  bottom: 10%;
  left: 50%;
  pointer-events: none;
  z-index: 2;
  transition: 0.3s;
}

html body .backToTop a {
  pointer-events: all;
  position: absolute;
  right: 5%;
  display: inline-block;
  width: clamp(40px, 3.125vw, 60px);
}

html body .backToTop a .st0 {
  fill: #1E1E1E;
}

html body .backToTop a:hover .st0 {
  fill: #003ad5;
}

html body .backToTop a .st1 {
  fill: #FFFFFF;
}

html body .backToTop.goaway {
  opacity: 0;
}

html body .backToTop.goaway a {
  pointer-events: none;
}

html body section.recruit {
  margin-top: clamp(60px, 5.2vw, 100px) !important;
  overflow-x: hidden;
}

html body section.recruit a {
  transition: 0.3s;
}

html body section.recruit a:hover {
  opacity: 0.7;
}

html body section.recruit .mainVis {
  position: relative;
}

html body section.recruit .mainVis>img {
  width: 100%;
}

/*@media screen and (min-width: 769px) {
  html body section.recruit .mainVis>img {
    height: 100dvh;
    -o-object-fit: cover;
    object-fit: cover;
  }
}*/

html body section.recruit .mainVis i {
  position: absolute;
  display: block;
  height: 11.87vw;
  min-height: 100px;
  width: auto;
  right: 1%;
  bottom: 10%;
}

html body section.recruit .mainVis i img {
  height: 100%;
  width: auto;
}

html body section.recruit .mainVis b {
  position: absolute;
  display: block;
  width: 85%;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}

html body section.recruit .mainVis b>img {
  width: 100%;
}

html body section.recruit .recAbout {
  background: url("./img/rec-abtBG.jpg") no-repeat center right/cover;
  padding: clamp(50px, 7.29vw, 140px) 0;
}

html body section.recruit .recAbout .aboutIn {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body section.recruit .recAbout .aboutIn h2 {
  font-size: clamp(23px, 2.39vw, 46px);
  line-height: 1.73;
  margin-bottom: 1em;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recAbout .aboutIn h2 {
    width: 80%;
  }
}

html body section.recruit .recAbout .aboutIn p {
  font-size: clamp(13px, 1.145vw, 22px);
  line-height: 2.27;
  font-weight: 400;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recAbout .aboutIn p {
    width: 80%;
  }
}

html body section.recruit .recTopEnt {
  background: #05d3b5;
  padding-top: clamp(40px, 5.2vw, 100px);
  padding-bottom: clamp(30px, 4.16vw, 80px);
}

html body section.recruit .recTopEnt .recEntIn {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
}

html body section.recruit .recTopEnt .recEntIn h1 {
  font-size: clamp(50px, 6.25vw, 120px);
  color: white;
  margin-bottom: 0.5em;
  text-align: center;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recTopEnt .recEntIn h1 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

html body section.recruit .recTopEnt .recEntIn h1 span {
  font-size: 0.24em;
  margin-top: 1em;
  display: block;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recTopEnt .recEntIn h1 span {
    margin-top: 0;
    margin-left: 1em;
  }
}

@media screen and (min-width: 769px) {
  html body section.recruit .recTopEnt .recEntIn .entFx {
    display: flex;
    justify-content: space-between;
  }
}

html body section.recruit .recTopEnt .recEntIn .entFx a {
  background: white;
  height: clamp(120px, 12.5vw, 240px);
  font-size: clamp(20px, 2.18vw, 42px);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  margin-bottom: 0.5em;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recTopEnt .recEntIn .entFx a {
    width: 48%;
    margin-bottom: 0;
  }
}

html body section.recruit .recTopEnt .recEntIn .entFx a b {
  color: #1e1e1e;
}

html body section.recruit .recTopEnt .recEntIn .entFx a>img {
  position: absolute;
  height: 1.6em;
  width: auto;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

html body section.recruit .recTopEnt .recEntIn .entFx a.soon {
  position: relative;
  pointer-events: none;
}

html body section.recruit .recTopEnt .recEntIn .entFx a.soon::before {
  position: absolute;
  content: "Coming Soon";
  width: 100%;
  height: 100%;
  background: rgba(102, 102, 102, 0.65);
  color: white;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(25px, 2.6vw, 50px);
  z-index: 1;
}

html body section.recruit .recInt {
  background: rgb(255, 255, 255);
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(130, 233, 218) 100%);
  padding: clamp(60px, 6.25vw, 120px) 0;
}

html body section.recruit .recInt h1 {
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  color: #969696;
  font-size: clamp(50px, 6.25vw, 120px);
  margin-bottom: 0.5em;
}

html body section.recruit .recInt h1 span {
  color: #05d3b5;
}

html body section.recruit .recInt h1 b {
  display: block;
  font-size: 0.21em;
  margin-top: 1em;
  color: #39383a;
}

html body section.recruit .recInt .intBlock {
  max-width: 1612px;
  background: white;
  display: flex;
  position: relative;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recInt .intBlock {
    width: 85%;
  }
}

html body section.recruit .recInt .intBlock::before {
  content: "";
  position: absolute;
  background: url("./img/rec-intSub-1.svg") no-repeat center center/contain;
  transform: translate(-50%, -50%);
  width: clamp(200px, 20vw, 480px);
  height: clamp(200px, 20vw, 480px);
}

html body section.recruit .recInt .intBlock .intMain {
  width: 70%;
  padding-top: clamp(15px, 1.82vw, 35px);
  padding-bottom: clamp(20px, 2.6vw, 50px);
}

html body section.recruit .recInt .intBlock .intMain .intNum {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  margin-bottom: 1em;
  font-size: clamp(16px, 1.458vw, 28px);
}

html body section.recruit .recInt .intBlock .intMain .intNum img {
  height: 3.5em;
  width: auto;
  margin-left: 2em;
  margin-right: 1em;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recInt .intBlock .intMain .intNum img {
    height: 5.5em;
    margin-left: 3em;
    margin-right: 2em;
  }
}

html body section.recruit .recInt .intBlock .intMain .intNum h4 {
  font-size: 1em;
  margin-bottom: 1em;
  font-weight: 400;
}

html body section.recruit .recInt .intBlock .intMain .intNum h4 span {
  font-size: 1.357em;
}

html body section.recruit .recInt .intBlock .intMain .intNum a {
  font-size: 0.64em;
  display: block;
  max-width: 300px;
  border: 1px solid #05d3b5;
  border-radius: 5em;
  color: #1e1e1e;
  padding: 1em 4em;
  position: relative;
  text-align: center;
  width: 80%;
  margin: 0 auto 1em;
  margin-top: 1em;
}

html body section.recruit .recInt .intBlock .intMain .intNum a::before,
html body section.recruit .recInt .intBlock .intMain .intNum a::after {
  content: "";
  position: absolute;
  background: white;
  height: 3px;
  width: 1.5em;
}

html body section.recruit .recInt .intBlock .intMain .intNum a::before {
  top: -1px;
  right: 15%;
}

html body section.recruit .recInt .intBlock .intMain .intNum a::after {
  bottom: -1px;
  left: 15%;
}

html body section.recruit .recInt .intBlock .intMain p {
  font-size: clamp(12px, 1.56vw, 30px);
  line-height: 1.5;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-weight: 400;
}

html body section.recruit .recInt .intBlock .intIll {
  width: 30%;
  position: relative;
}

html body section.recruit .recInt .intBlock .intIll img {
  position: absolute;
  height: 100%;
  transform: scale(1.1);
}

html body section.recruit .recInt .intBlock.green,
html body section.recruit .recInt .intBlock.blue {
  margin: 0 auto clamp(40px, 5.2vw, 100px);
  border-top-right-radius: 30em;
  border-bottom-right-radius: 30em;
  border-left: clamp(10px, 6.25vw, 120px) solid #b5f2e9;
}

@media screen and (min-width: 769px) {

  html body section.recruit .recInt .intBlock.green,
  html body section.recruit .recInt .intBlock.blue {
    margin-left: 0;
  }
}

html body section.recruit .recInt .intBlock.green::before,
html body section.recruit .recInt .intBlock.blue::before {
  filter: brightness(255);
  transform: translate(-50%, -50%) scaleX(-1);
  left: 100%;
  top: 50%;
}

html body section.recruit .recInt .intBlock.green .intIll,
html body section.recruit .recInt .intBlock.blue .intIll {
  border-left: clamp(4px, 4.16vw, 8px) solid #05d3b5;
  background: white;
  border-top-right-radius: 30em;
  border-bottom-right-radius: 30em;
}

html body section.recruit .recInt .intBlock.green::before {
  width: clamp(300px, 25vw, 604px);
  height: clamp(300px, 25vw, 604px);
}

html body section.recruit .recInt .intBlock.blue {
  border-left-color: #d2e5ff;
}

html body section.recruit .recInt .intBlock.blue .intIll {
  border-left: clamp(4px, 4.16vw, 8px) solid #69a6ff;
}

html body section.recruit .recInt .intBlock.pink,
html body section.recruit .recInt .intBlock.purple {
  margin: 0 auto clamp(40px, 5.2vw, 100px);
  border-top-left-radius: 30em;
  border-bottom-left-radius: 30em;
  border-right: clamp(10px, 6.25vw, 120px) solid #ffe1e4;
}

@media screen and (min-width: 769px) {

  html body section.recruit .recInt .intBlock.pink,
  html body section.recruit .recInt .intBlock.purple {
    margin-right: 0;
  }
}

html body section.recruit .recInt .intBlock.pink::before,
html body section.recruit .recInt .intBlock.purple::before {
  left: 0%;
  top: 50%;
}

html body section.recruit .recInt .intBlock.pink .intIll,
html body section.recruit .recInt .intBlock.purple .intIll {
  border-right: clamp(4px, 4.16vw, 8px) solid #ff9ca6;
  background: white;
  border-top-left-radius: 30em;
  border-bottom-left-radius: 30em;
}

html body section.recruit .recInt .intBlock.purple {
  border-right-color: #e4ddf9;
}

html body section.recruit .recInt .intBlock.purple .intIll {
  border-right: clamp(4px, 4.16vw, 8px) solid #a68dea;
}

html body section.recruit .recWel {
  overflow-x: hidden;
}

html body section.recruit .recWel .welIn {
  padding-top: clamp(60px, 6.25vw, 120px);
  padding-bottom: clamp(40px, 4.9vw, 90px);
  max-width: 1415px;
  margin: 0 auto;
  width: 85%;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recWel .welIn {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

@media screen and (min-width: 769px) {
  html body section.recruit .recWel .welIn .welHead {
    width: 45%;
  }
}

html body section.recruit .recWel .welIn .welHead h1 {
  font-size: clamp(50px, 6.25vw, 120px);
  color: #969696;
  text-align: right;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}

html body section.recruit .recWel .welIn .welHead h1::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 5px;
  height: 5px;
  background: #1e1e1e;
  border-radius: 50%;
  transform: translateY(40%);
}

html body section.recruit .recWel .welIn .welHead h1::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 600%;
  height: 1px;
  background: #1e1e1e;
}

html body section.recruit .recWel .welIn .welHead h1 span {
  color: #05d3b5;
}

html body section.recruit .recWel .welIn .welHead h1 b {
  font-size: 0.21em;
  display: block;
  color: #1e1e1e;
  margin-top: 1em;
}

html body section.recruit .recWel .welIn .welHead p {
  font-size: clamp(12px, 1.145vw, 22px);
  line-height: 2;
  margin-bottom: 2em;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recWel .welIn .welHead p {
    margin-bottom: 0;
  }
}

html body section.recruit .recWel .welIn .welBlock {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recWel .welIn .welBlock {
    width: 50%;
  }
}

html body section.recruit .recWel .welIn .welBlock .welBox {
  width: 47%;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recWel .welIn .welBlock .welBox {
    width: 30%;
  }
}

html body section.recruit .recWel .welIn .welBlock .welBox img {
  margin-bottom: 1em;
}

html body section.recruit .recWel .welIn .welBlock .welBox p {
  font-size: clamp(12px, 0.78vw, 15px);
  line-height: 1.46;
  margin-bottom: 3em;
  font-weight: 400;
}

html body section.recruit .recData {
  background: #f4f4f4;
  padding: clamp(20px, 4.68vw, 90px);
}

html body section.recruit .recData h1 {
  font-size: clamp(50px, 6.25vw, 120px);
  color: #969696;
  text-align: left;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 0.5em;
  position: relative;
  padding-bottom: 0.75em;
}

html body section.recruit .recData h1::before {
  content: "";
  position: absolute;
  width: 600%;
  height: 1px;
  right: 50%;
  bottom: 0;
  background: #1e1e1e;
}

html body section.recruit .recData h1::after {
  content: "";
  position: absolute;
  height: 5px;
  width: 5px;
  background: #1e1e1e;
  right: 50%;
  bottom: 0;
  transform: translateY(40%);
  border-radius: 50%;
}

html body section.recruit .recData h1 span {
  color: #05d3b5;
}

html body section.recruit .recData h1 i {
  font-size: 0.66em;
}

html body section.recruit .recData h1 b {
  font-size: 0.21em;
  display: block;
  color: #1e1e1e;
  margin-top: 1em;
}

html body section.recruit .recData h1 em {
  position: absolute;
  font-size: 0.18em;
  font-style: normal;
  line-height: 2;
  bottom: 0;
  right: 0;
  color: #212529;
}

html body section.recruit .recData .datas {
  max-width: 1415px;
  width: 85%;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

html body section.recruit .recData .datas img {
  display: block;
  margin-bottom: 5em;
  width: 47%;
}

@media screen and (min-width: 769px) {
  html body section.recruit .recData .datas img {
    width: 23%;
  }
}

html body .entryBlock {
  background: url("./img/rec-entryBG.jpg") no-repeat center center/cover;
  position: relative;
  padding: clamp(40px, 4.166vw, 80px) 0;
  margin-bottom: 60px;
  box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.1);
}

html body .entryBlock a {
  transition: 0.3s;
}

html body .entryBlock a:hover {
  opacity: 0.7;
}

html body .entryBlock::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #05d3b5;
  mix-blend-mode: multiply;
}

html body .entryBlock .entryIn {
  max-width: 1415px;
  width: 80%;
  margin: 0 auto;
  position: relative;
}

@media screen and (min-width: 769px) {
  html body .entryBlock .entryIn {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

html body .entryBlock .entryIn .entHead {
  text-align: center;
  color: white;
}

@media screen and (min-width: 769px) {
  html body .entryBlock .entryIn .entHead {
    width: 50%;
  }
}

html body .entryBlock .entryIn .entHead h1 {
  font-size: clamp(45px, 6.25vw, 120px);
  margin-bottom: 0.5em;
}

html body .entryBlock .entryIn .entHead p {
  font-size: clamp(16px, 1.51vw, 29px);
  margin-bottom: 2em;
  font-weight: 400;
}

@media screen and (min-width: 769px) {
  html body .entryBlock .entryIn .entHead p {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  html body .entryBlock .entryIn .entMain {
    width: 50%;
  }
}

html body .entryBlock .entryIn .entMain a {
  margin-left: auto;
  width: 95%;
  text-align: left;
  background: white;
  font-size: clamp(15px, 1.82vw, 35px);
  color: #1e1e1e;
  height: clamp(80px, 8.3vw, 160px);
  margin-bottom: 0.5em;
  display: flex;
  align-items: center;
  justify-content: left;
  padding-left: 2em;
}

html body .entryBlock .entryIn .entMain a>b {
  width: 40%;
  text-align: center;
}

html body .entryBlock .entryIn .entMain a>img {
  height: 1em;
  width: auto;
  margin-left: 1em;
}

html body .entryBlock .entryIn .entMain a.soon {
  position: relative;
  pointer-events: none;
}

html body .entryBlock .entryIn .entMain a.soon::before {
  content: "Coming Soon";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(102, 102, 102, 0.65);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(25px, 2.6vw, 50px);
}

html body .entryBlock.recTop {
  padding: clamp(43px, 8.3vw, 160px) 0 clamp(43px, 7.3vw, 140px);
}

html body .entryBlock.recTop .entryIn {
  display: block;
}

@media screen and (min-width: 769px) {
  html body .entryBlock.recTop .entryIn .entHead {
    text-align: left;
    margin-left: 50%;
  }
}

html body .entryBlock.recTop .entryIn .entHead h1 {
  margin-bottom: 0.25em;
}

@media screen and (min-width: 769px) {
  html body .entryBlock.recTop .entryIn .entHead p {
    margin-bottom: 2em;
  }
}

@media screen and (min-width: 769px) {
  html body .entryBlock.recTop .entryIn .entMain {
    margin-left: 50%;
  }
}

html body .entryBlock.recTop .entryIn .entMain a {
  width: 100%;
}

html body .interview {
  background: linear-gradient(90deg, rgb(230, 250, 247) 0%, rgb(194, 243, 236) 100%);
  padding-top: clamp(100px, 10.4vw, 200px);
  overflow-x: hidden;
}

html body .interview a {
  transition: 0.3s;
}

html body .interview a:hover {
  opacity: 0.7;
}

html body .interview>h1 {
  max-width: 1261px;
  margin: 0 auto;
  width: 85%;
  font-size: clamp(60px, 7.5vw, 144px);
  color: #969696;
  margin-bottom: 0.5em;
}

html body .interview>h1 span {
  color: #05d3b5;
}

html body .interview>h1 b {
  display: block;
  font-size: max(15px, 0.152em);
  color: #1e1e1e;
  margin-top: 1em;
}

html body .interview .headBox {
  max-width: 1344px;
  width: 95%;
  background: white;
  border-top-right-radius: 100em;
  border-bottom-right-radius: 100em;
  display: flex;
  align-items: center;
  justify-content: right;
  position: relative;
  margin-bottom: clamp(40px, 4.94vw, 95px);
  z-index: 1;
}

html body .interview .headBox::before {
  content: "";
  position: absolute;
  background: url(./img/rec-intSub-1.svg) no-repeat center center/contain;
  right: 3%;
  top: 3%;
  transform-origin: center;
  transform: rotateZ(220deg) translate(-30%, 90%);
  width: clamp(100px, 31.25vw, 600px);
  height: clamp(100px, 31.25vw, 600px);
  z-index: -1;
}

html body .interview .headBox .headDisc {
  width: 45%;
  padding: clamp(30px, 1.04vw, 20px) 0;
}

html body .interview .headBox .headDisc h4 {
  font-size: clamp(16px, 1.458vw, 28px);
  margin-bottom: 1em;
}

html body .interview .headBox .headDisc h4 span {
  font-size: 0.857em;
  display: block;
  margin-bottom: 0.75em;
}

html body .interview .headBox .headDisc h4 b {
  font-size: 1.357em;
  font-weight: 700;
}

html body .interview .headBox .headDisc h5 {
  font-size: clamp(13px, 2.08vw, 40px);
  line-height: 1.5;
}

html body .interview .headBox .headImg {
  padding: clamp(10px, 1.04vw, 20px) 0;
  background: white;
  border-top-right-radius: 100em;
  border-bottom-right-radius: 100em;
  width: 35%;
}

html body .interview .headBox .headImg img {
  max-width: 413px;
  width: 100%;
}

html body .interview .qaBlock {
  max-width: 1261px;
  width: 85%;
  margin: 0 auto;
}

html body .interview .qaBlock .qaBox {
  font-size: clamp(14px, 1.25vw, 24px);
  margin-bottom: clamp(50px, 5.2vw, 100px);
}

html body .interview .qaBlock .qaBox h2 {
  display: flex;
  align-items: center;
  margin-bottom: 1.5em;
  font-size: 1em;
}

html body .interview .qaBlock .qaBox h2 img {
  width: max(45px, 7%);
}

html body .interview .qaBlock .qaBox h2 span {
  border-bottom: 1px solid #1e1e1e;
  position: relative;
  display: block;
  font-size: 1.41em;
  padding-bottom: 0.75em;
  padding-left: 1em;
  margin-left: 1em;
  width: 100%;
  line-height: 1.7;
}

html body .interview .qaBlock .qaBox h2 span::before {
  content: "";
  position: absolute;
  background: #1e1e1e;
  width: 0.23em;
  height: 0.23em;
  border-radius: 1em;
  bottom: 0;
  left: 0;
  transform: translate(-50%, 55%);
}

html body .interview .qaBlock .qaBox p {
  display: flex;
  align-items: flex-start;
  font-size: 1em;
}

html body .interview .qaBlock .qaBox p img {
  width: max(45px, 7%);
}

html body .interview .qaBlock .qaBox p span {
  display: block;
  width: 100%;
  font-size: 1em;
  margin-left: 3em;
  line-height: 2;
  font-weight: 400;
}

html body .interview .otherBlock {
  background: #f4f4f4;
  padding: clamp(50px, 5.2vw, 100px);
}

html body .interview .otherBlock h3 {
  font-size: clamp(17px, 1.77vw, 34px);
  text-align: center;
  margin-bottom: 2em;
}

html body .interview .otherBlock .otherBoxes {
  display: flex;
  justify-content: space-between;
  max-width: 1420px;
  width: 85%;
  margin: 0 auto;
  flex-wrap: wrap;
}

html body .interview .otherBlock .otherBoxes .otherBox {
  display: block;
  background: white;
  padding: clamp(17px, 1.77vw, 35px);
  width: 100%;
  border-right: 10px solid #05d3b5;
  display: flex;
  align-items: center;
  justify-content: right;
  margin-bottom: 1em;
  cursor: pointer;
}

@media screen and (min-width: 769px) {
  html body .interview .otherBlock .otherBoxes .otherBox {
    width: 46%;
    margin-bottom: 0;
  }
}

html body .interview .otherBlock .otherBoxes .otherBox>div {
  width: 60%;
  color: #1e1e1e;
}

html body .interview .otherBlock .otherBoxes .otherBox>div h5 {
  font-size: clamp(13px, 1.35vw, 26px);
  margin-bottom: 1em;
}

html body .interview .otherBlock .otherBoxes .otherBox>div h5 span {
  font-size: 0.84em;
  display: block;
  margin-bottom: 0.7em;
}

html body .interview .otherBlock .otherBoxes .otherBox>div h5 b {
  font-size: 1.38em;
  font-weight: normal;
}

html body .interview .otherBlock .otherBoxes .otherBox>div h6 {
  font-size: clamp(13px, 1.35vw, 26px);
  line-height: 1.57;
}

html body .interview .otherBlock .otherBoxes .otherBox img {
  width: 30%;
  aspect-ratio: 0.46/1;
  -o-object-fit: cover;
  object-fit: cover;
}

@media screen and (min-width: 769px) {
  html body main section.sale>p {
    max-width: 1180px;
    width: 80%;
  }

  html body main section.sale .saleMain {
    width: 85%;
  }
}

@media (min-width: 769px) {
  html body main section.sale .saleMain .container p.p-l {
    padding-left: 2em;
  }

  html body main section.sale .saleMain .container p.p-r {
    padding-right: 2em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic-shop .nurseFx {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic-shop .nurseFx .nurseIn {
    width: 70%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medic-shop .nurseFx img {
    width: 28%;
    margin: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.clinical .abCli .container {
    width: 75%;
  }

  html body main section.clinical .abCli .container .col-12:first-of-type {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 5em 0 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.clinical .abCli .container p {
    padding-left: 2em;
  }
}

@media screen and (min-width: 769px) {
  html body main section.clinical .crc {
    width: 65%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.store .storeMain {
    padding: 5em 15px;
  }
}

@media screen and (min-width: 769px) {
  html body main section.store .storeMain .row:first-of-type h3 {
    margin-bottom: 0;
  }
}

@media (min-width: 769px) {
  html body main section.vending>p {
    width: 85%;
  }
}

@media (min-width: 769px) {
  html body main section.vending .lineUp {
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.vending .flow .flowBox {
    margin-bottom: 4em;
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.vending .flow .flowBox .flowBoxIn {
    padding-bottom: 3em;
    display: flex;
    align-items: flex-start;
  }
}

@media screen and (min-width: 769px) {
  html body main section.vending .flow .flowBox .flowBoxIn::before {
    bottom: 10%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.vending .flow .flowBox .flowBoxIn p {
    padding-right: 2em;
    width: 70%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.vending .flow .flowBox .flowBoxIn img {
    width: 30%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.lending .lendingIn .lendingMain {
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeHead .compes img {
    width: 48%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeHead .compeComps {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeHead .compeComps .compsIn img {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeInsurance h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeInsurance .compeInsIn .compeInsHead {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeInsurance .compeInsIn .compeInsHead p {
    width: 50%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeInsurance .compeInsIn .compeInsHead img {
    width: 50%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeInsurance .compeInsIn .compeInsMain .selectBlock .compeTel a {
    line-height: 0.5;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .others .pdfDown {
    justify-content: space-between;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .others .pdfDown .pdfDwnIn {
    width: 49%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .others p {
    width: 80%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.compensation .compeCon .compeConIn p {
    text-align: right;
  }
}

@media screen and (min-width: 769px) {
  html body main section.pc-rent .pointBlock .pointIn {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body main section.pc-rent .pointBlock .pointIn h2 {
    padding: 1em 1em;
    margin-bottom: 0;
    width: 20%;
    max-width: 240px;
  }
}

@media screen and (min-width: 769px) {
  html body main section.pc-rent .pointBlock .pointIn h2 span {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  html body main section.pc-rent .pointBlock .pointIn .pointInMain {
    width: 80%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.pc-rent .specBlock .specmain a {
    width: 48%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medical-book>a {
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 2em 5%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medical-book>a>div {
    width: 45%;
  }
}

@media screen and (min-width: 769px) {
  html body main section.medical-book>a>div h3 {
    text-align: left;
    width: unset;
    padding-left: 2.5em;
    margin: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.contact h1 p {
    bottom: 0%;
    right: unset;
    left: unset;
    transform: translate(50%, 55%);
  }
}

@media screen and (min-width: 769px) {
  html body main section.contact .telBlock .telIn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 2em 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.contact .telBlock .telIn h6 {
    width: 30%;
    margin: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.contact .telBlock .telIn a {
    width: 35%;
    margin: 0;
  }
}

@media screen and (min-width: 769px) {
  html body main section.contact .telBlock .telIn p {
    width: 20%;
    margin: 0;
  }
}

html body main section.contact .telBlock .hokenFormBlock .telIn {
  border-bottom: none;
}

html body main section.contact .telBlock .hokenFormBlock .form-linkBox {
  padding-bottom: 2em;
  border-bottom: solid 1px #1e1e1e;
}

html body main section.contact .telBlock .hokenFormBlock .form-linkBox a {
  background: #25367c;
  color: #fff;
  position: relative;
  display: block;
  margin: 0 auto;
  text-align: center;
  width: 70%;
  font-size: clamp(12px, 1.458vw, 28px);
  padding: 1em 0;
  border-radius: 0.5em;
  z-index: 1;
}



html body main section.contact .telBlock .hokenFormBlock .form-linkBox a::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center / contain;
  top: 50%;
  right: 7%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1) brightness(100);
}

html body main section.contact .telBlock .hokenFormBlock .form-linkBox a img {
  height: 0.8em;
  margin-right: 0.5em;
}



@media (min-width: 769px) {
  html body main section.privacy .priIn {
    width: 85%;
  }
}

@keyframes flowing {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

@media screen and (min-width: 769px) {
  html body .footCon .footConIn {
    padding-bottom: 10em;
  }
}

@media screen and (min-width: 769px) {
  html body .footCon .footConIn a:not(.rbL) {
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 2em 5%;
  }
}

/*html body .footCon .footConIn a:not(.rbL)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #003ad5;
  -webkit-backdrop-filter: invert(1);
          backdrop-filter: invert(1);
  mix-blend-mode: lighten;
  transition: 0.3s;
}*/
@media screen and (min-width: 769px) {
  html body .footCon .footConIn a:not(.rbL)>div {
    width: 45%;
  }
}

@media screen and (min-width: 769px) {
  html body .footCon .footConIn a:not(.rbL)>div h3 {
    text-align: left;
    width: unset;
    padding-left: 2.5em;
    margin: 0;
  }
}

@media (max-width: 380px) {
  html body .footCon .footConIn a:not(.rbL)>div h3 {
    width: 85%;
  }
}

@media screen and (min-width: 769px) {
  html body .footCon .footConIn .more a {
    padding: 2em 0;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .footLogo p {
    text-align: left;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .footline {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 {
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks {
    width: 65%;
    position: relative;
    margin-bottom: 3em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 {
    justify-content: left;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn {
    width: 70%;
    display: flex;
    padding-left: 10%;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn .footLinksFlex:first-of-type {
    padding-right: 2em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn .footLinksFlex .footMenuSub {
    display: flex;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinksIn .footLinksFlex .footMenuSub ul:first-of-type {
    padding-right: 2em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn {
    width: 45%;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn a:first-of-type {
    border: none;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn i {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn .footMenuSub {
    display: block;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con {
    width: 20%;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .foot1 .footLinks .footLinks1 .footLinkIn.con a {
    width: 100%;
    padding: 0.5em 0;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks2 {
    text-align: left;
    justify-content: right;
    flex-direction: column;
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks2 a {
    margin-bottom: 1em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLinks .footLinks2 a:last-of-type {
    margin-left: 0;
    margin-bottom: 1em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot1 .footLogoSp {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.groupLink {
    display: flex;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.groupLink h4 {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.groupLink a {
    width: unset;
    max-width: 200px;
    margin-left: 1em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.officialLink.sp {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.officialLink.pc {
    display: flex;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink h4 {
    margin-right: 1em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink .footsns a {
    margin: 0 1em;
  }
}

@media screen and (min-width: 1025px) {
  html body footer .footMain .foot2 .outlink.lineQr {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  html body footer .footMain .backTop {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(100%, -150%);
  }
}

/*# sourceMappingURL=style.css.map */



/*　　以下追加CSS　-------------------------------*/
html body main section.insurance .insMain .container {
  margin-bottom: 3vh;
}

html body .faqBlock .accordion_one .accordion_header::before {
  background: url(./img/ac-stay.svg) no-repeat center center / contain;
}

html body .faqBlock .accordion_one .accordion_header.open::before {
  background: url(./img/ac-open.svg) no-repeat center center / contain;
}

.voiceBox .slick-list {
  padding: 0 !important;
}

.voiceBox .slick-list .voice-item img {
  width: 90%;
  max-width: 490px;
  display: block;
  margin: 0 auto;
}

.voiceBox .slick-dots li button:before {
  font-size: 10px;
}

@media screen and (min-width: 769px) {
  .voiceBox .slick-dots li button:before {
    font-size: 15px;
  }
}


.voiceBox .slick-dots li.slick-active button:before {
  color: #003ad5;
  opacity: 1;
}

.voiceBox .slick-dots li button:focus:before,
.voiceBox .slick-dots li button:hover:before {
  color: #003ad5 !important;
  opacity: 0.75 !important;
}

.b-arrow::before {
  content: "";
  position: absolute;
  background: url(./img/arrow-blue.svg) no-repeat center center / contain;
  top: 50%;
  right: 10%;
  height: 0.75em;
  width: 1.5em;
  transform: translateY(-50%);
  filter: grayscale(1);
}

p.leadTxt {
  font-size: clamp(13px, 1.25vw, 24px);
  max-width: 1100px;
  width: 85%;
  margin: 0 auto;
  margin-bottom: 3em;
  line-height: 2;
  text-align: left;
}

@media screen and (min-width: 769px) {
  p.leadTxt {
    text-align: center;
    margin-bottom: 0;
  }
}

span.t-pdf {
  display: inline-block;
  background: #fff;
  padding: 0.2em;
  color: #000;
  margin-left: 1vw;
  font-size: 80%;
  font-weight: 400;
}

html body main section.insurance-school .webFlow img,
html body main section.insurance-student2024 .webFormBox img {
  margin: 0 auto;
  margin-bottom: 1.5em;
  width: 90%;
}


html body main section.insurance-student2023 .webForm02 .webLinkBox p:nth-of-type(1) {
  font-weight: 400;
  text-align: left;
}

html body main section.insurance-student2023 .webForm02 .webLinkBox {
  background: #fff;
  padding: 2vh 2vw;
  border-radius: 1em;
  margin-bottom: 3vh;
}

html body main section.insurance-student2023 .webForm02 .webLinkBox a {
  background: #003ad5;
  border: none;
  color: #fff;
  margin-bottom: 1em;
  font-size: clamp(11px, 1.458vw, 20px);
  width: 100%;

}

html body main section.insurance-student2023 .webForm02 .webLinkBox a.b-arrow::before {
  filter: grayscale(1) brightness(100) !important;
  right: 5%;
  width: 1em;
}

html body main section.insurance-student2023 .webForm02 .webLinkBox a:nth-of-type(2) {
  margin-bottom: 0;
}

html body main section.insurance-student2023 .webForm02 a.under-l {
  background: transparent;
  border: none;
  padding: 0;
  text-align: left;
  max-width: 100%;
  width: fit-content;
  margin: 0 auto;
  color: #fff;
  border-bottom: solid 1px #fff;
  border-radius: 0;
  margin-bottom: 1em;
}

html body main section.insurance-student2023 .webForm02 .webLinkBox-btcon p:nth-of-type(2) {
  text-align: left;
  font-weight: 400;
  font-size: clamp(13px, 1.458vw, 17px);
}

@media screen and (max-width: 768px) {
  html body main section.insurance-student2023 .webForm02 {
    padding-right: 1vw;
    padding-left: 1vw;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox {
    margin-bottom: 1.5vh;
  }
}

#PamphletUl {
  width: 30%;
  color: #fff;
}

html body .pdfSelector a {
  width: initial;
  line-height: 1.4;
}

html body .pdfSelector .selectIn {
  padding: 0;
  border: none;
  border-radius: initial;
}

html body .pdfSelector .selectIn select {
  padding: 1em 3em 1em 1em;
  border: 1px solid #1e1e1e;
  border-radius: 1em;
  position: relative;
  width: 100%;
  background: 0, 0, 0, 0;
  background: #fff;
}

html body .pdfSelector a span {
  font-size: 80%;
}

html body .pdfSelector a#Box0 {
  opacity: 0.7;
  color: #fff;
}

@media screen and (max-width: 1024px) {
  #PamphletUl {
    width: 100%;
  }
}

.popUp {
  position: fixed;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
  background: rgba(57, 56, 58, 0.95);
  width: 100%;
  height: 100dvh;
  top: 0;
  left: 0;
  /*z-index: 100;*/
  display: flex;
  align-items: center;
  justify-content: center;
}

.popUp.active {
  opacity: 1;
  pointer-events: all;
  z-index: 100;
}

.popUp .popSlider {
  background: #fff;
  max-width: 1200px;
  width: 85%;
  padding: 4em 4em 7em;
  position: relative;
  z-index: 100;
}

.popSlider .slideIn img {
  margin: 0 auto;
}

.popUp .popSlider .slick-next {
  top: unset;
  bottom: 2%;
  right: 90%;
}

.popUp .popSlider .slick-prev {
  top: unset;
  bottom: 2%;
  left: 4.5%;
}

.popUp .popSlider .slick-prev::before {
  content: "◀︎";
  color: #39383a;
}

.popUp .popSlider .slick-next::before {
  content: "▶︎";
  color: #39383a;
}

.popUp .popSlider .pointBox.pop-point h4 {
  background: #39383a;
  font-size: clamp(14px, 1.145vw, 22px);
  padding: 1em 0.5em;
  line-height: 1.5;
  margin-bottom: 1.5em;
  color: #fff;
  text-align: center;
}

.popUp .popSlider .pointBox.pop-point p {
  font-size: clamp(13px, 1.145vw, 18px);
  font-weight: 400;
  line-height: 1.5;
}

.popUp .popSlider.slick-slider {
  -ms-touch-action: auto;
  touch-action: auto;
}

body.popup-open {
  /* ポップアップが開かれている間はスクロール禁止 */
  overflow: hidden;
}


@media screen and (max-width: 768px) {
  .popUp .popSlider .pointBox.pop-point h4 {
    margin-top: 1.5em;
  }

  .popUp .popSlider .slick-prev {
    left: 10%;
  }

  .popUp .popSlider .slick-next {
    right: 70%;
  }
}

.linkTable {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 1.5em;
}

.linkTable table {
  background: #fff;
  border: solid 1px #000;
  color: #1e1e1e;
  font-size: clamp(10px, 1.145vw, 20px);
  width: 100%;
}

.linkTable table tr {
  border-bottom: solid 1px #1e1e1e;
}

.linkTable table th {
  padding: 0.5em;
  border: solid 1px #1e1e1e;

}


.linkTable table td input[type=radio] {
  accent-color: #4b4b4b;
  inline-size: 2rem;
  block-size: 2rem;
}

.linkTable table th.b-cap1 {
  background: rgba(0, 58, 213, 0.3);
}

.linkTable table th.b-cap2 {
  background: #e5ebfb;
  border-right: solid 1px #1e1e1e;
}

.linkTable table th.line {
  background-image: linear-gradient(to right top, rgba(0, 58, 213, 0.3) calc(50% - 0.5px), #1e1e1e 50%, #1e1e1e calc(50% + 0.5px), rgba(0, 58, 213, 0.3) calc(50% + 1px));
  position: relative;
}

.linkTable table th.line::before {
  content: '学部';
  position: absolute;
  left: 2%;
  font-size: 90%;
  bottom: 2%;
}

.linkTable table th.line::after {
  content: '補償期間';
  position: absolute;
  right: 2%;
  top: 2%;
  font-size: 90%;
}

html body main section.insurance-student2023 .linkTable table th.line::after {
  content: '入学年度';
  position: absolute;
  right: 2%;
  top: 2%;
  font-size: 90%;
}

.linkTable table td.line-box {
  background-image: linear-gradient(to left top, #fff calc(50% - 0.5px), #1e1e1e 50%, #1e1e1e calc(50% + 0.5px), #fff calc(50% + 1px));
}

.linkTable table td {
  font-weight: 400;
  border-right: solid 1px #1e1e1e;
}

section.insurance-student2024 .linkTable table th.b-cap2,
section.insurance-student2024 .linkTable table th.line {
  width: 50%;
}

html body main section.privacy .priIn .priMain .m-box p {
  font-size: clamp(16px, 1.145vw, 22px);
  line-height: 1.7;
  margin-bottom: 0;
  font-weight: 400;
}

.priMain .m-box {
  font-size: clamp(16px, 1.145vw, 22px);
  line-height: 1.7;
  margin-bottom: 1.5em;
  font-weight: 400;
}

.priMain .m-box ul.list-item {
  padding-left: 0.5em;
}

.priMain .m-box ul.list-item li {
  text-indent: -1em;
  padding-left: 1em;
}

::placeholder {
  color: #ccc;
}

/*　ページャーcss　　---------*/
.page-list .wp-pagenavi span.pages {
  display: none;
}

.page-list .wp-pagenavi a,
.page-list .wp-pagenavi span {
  display: inline-block;
  margin: 0 0.5em;
  font-size: clamp(13px, 0.833vw, 16px);
  color: #1e1e1e;
  border: 1px solid #1e1e1e;
  padding: 1em;
  line-height: 1;
}

.sm-txt {
  font-size: 70%;
  display: block;
  margin-bottom: 0.5em;
}

html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#symbolInput {
  max-width: 200px;
  width: 45%;
  font-style: normal;
  font-size: clamp(13px, 0.93vw, 18px);
  padding: 0.5em;
  border-radius: 0.5em;
  border: 1px solid #888889;
}


/*.page-list .wp-pagenavi .current {}*/
@media screen and (max-width: 768px) {

  /* NEWS表示 */
  html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain .tags {
    display: block;
  }

  html body main section.top .news .tab .tab-contents-wrap .tab-contents .postIn .postMain .tags a {
    margin-bottom: 0.5em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a.bk {
    margin-bottom: 1em;
    width: 90%;
  }

  html body main section.insurance-trip .insForm .insFormIn .insLink {
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 2em;
  }

  html body main section.insurance-trip .insForm .insFormIn .insLink a {
    width: 100%;
    margin-bottom: 1em;
  }

  /*コーポレート 事業紹介-下層ページ スマホ（追加）　-----------------------------------------*/
  html body .tripCon h3 {
    border-bottom: 2px solid #003ad5;
  }

  html body .tripCon .contacts a:last-of-type {
    margin-left: 0;
    margin-top: 0.5em;
  }

  html body .tripCon {
    width: 100%;
  }

  html body .tripCon.w-sp {
    width: 85%;
  }

  html body .tripCon h3 {
    border-bottom: 2px solid #003ad5;
  }

  html body main section.textbook .container.how p {
    margin-bottom: 2em;
  }

  html body main section.sale h2 {
    width: 90%;
  }

  html body main section.sale h2 {
    width: 90%;
    line-height: 1.3;
    margin-right: auto;
    margin-left: auto;
  }

  html body main section.textbook .tripCon {
    width: 100%;
    padding-bottom: 1em;
  }

  html body main section.textbook .tripCon p {
    margin-bottom: 0;
  }

  html body main section.medic-shop .tripCon .contacts a:last-of-type {
    margin-left: 0;
    margin-top: 0.5em;
    font-size: max(2.6vw, 18px);
  }

  html body main section.medic-shop .tripCon p {
    margin-bottom: 0.5em;
  }

  html body main section.medic>h2 {
    width: 90%;
    line-height: 1.4;
    margin-right: auto;
    margin-left: auto;
  }

  html body section.vending .tripCon .contacts a:last-of-type {
    font-size: 20px;
  }

  html body main section.textbook>h5 {
    text-align: left;
  }

  html body main section.textbook .siteBlock img {
    max-width: 150px;
  }

  html body main section.textbook .siteBlock {
    align-items: inherit;
  }

  html body main section.textbook .container.how p {
    margin-bottom: 1em;
  }

  html body main section.textbook .container.how p br.sp-none {
    display: none;
  }

  html body main section.textbook .container.how {
    margin-bottom: 10px;
  }

  html body main section.medic-shop .container img {
    max-width: 250px;
    width: 80%;
    margin-right: auto;
    margin-left: auto;
    display: block;
  }

  html body main section.medic-shop .nurseFx img {
    width: 80%;
    max-width: 250px;
  }

  html body main section.medic-shop .container {
    margin-bottom: 1em;
  }





  html body main section.insurance-staff .insAbt .container .row .b-arrow {
    display: block;
    max-width: 60px;
    width: 100%;
    margin: 0 auto;
  }

  html body main section.insurance-staff .insAbt .rsvLink a {
    width: 100%;
    font-size: 10px;
  }

  html body .faqBlock .accordion_one .accordion_header {
    padding: 0.5em 10% 0.5em 5%;
  }

  html body .faqBlock .accordion_one .accordion_header::before {
    right: 3%;
  }

  html body .faqBlock .accordion_one .accordion_inner .box_one span {
    font-size: 1.2em;
  }

  html body .insConBlock .insConIn h2 {
    padding-bottom: 0.2em;
    border-bottom: 2px solid #0035c2;
  }

  html body .insConBlock .insConIn h4 {
    font-weight: 700;
  }

  html body .insConBlock .insConIn .insConLink a {
    width: 90%;
    margin-bottom: 0.3em;
  }

  html body .insConBlock .insConIn {
    padding: 3em 0 0.5em 0;
  }

  html body .insConBlock .insConIn .insConLink a::before {
    right: 15%;
  }

  html body main section.insurance-staff .block .flowBox h4 b {
    font-weight: 400;
  }

  .insNewsBlock .slick-dots li.slick-active button:before {
    color: #003ad5;
    opacity: 1;
  }

  .insNewsBlock .slick-dots li button:before {
    font-size: 10px;
  }

  html body main section.insurance-school .insAbt h1 {
    width: 90%;
    text-align: center;
  }

  html body main section.insurance-school .insAbt>h6 {
    margin-bottom: 1em;
  }

  html body main section.insurance-school .insAbt .container .inses p br:nth-of-type(2) {
    display: none;
  }

  .popUp .popSlider {
    padding: 2em 2em 8em;
  }

  html body main section.insurance-school .webFlow a,
  html body main section.insurance-student2024 .webFormBox a,
  html body main section.insurance-student2023 .webForm02 a {
    width: 90%;
  }

  .linkTable table td {
    padding: 0.5em 0;
  }

  .linkTable table td input[type=radio] {
    inline-size: 1.5rem;
    block-size: 1.5rem;
  }

  html body main section.insurance-school .pamphBlock {
    width: 100%;
  }

  html body main section.insurance-school .pamphBlock .pamphIn h4 {
    text-align: center;
  }

  html body main section.insurance-school .pamphBlock .pamphIn p>br {
    display: none;
  }

  html body main section.insurance-school .pamphBlock .pamphIn p {
    text-align: left;
  }

  html body main section.insurance-school .pamphBlock {
    background: url(./img/sp-insSch-9.jpg) no-repeat center center / cover;
  }

  html body main section.insurance-school .impTxt {
    padding: 1.5em;
  }

  html body main section.insurance-school .block .voiceBox {
    padding: 1.8em;
  }

  html body main section.insurance-school .block .voiceBox::before {
    border: 1em solid transparent;
    border-left-color: #003ad5;
    border-top-color: #003ad5;
  }

  html body main section.insurance-school .block .voiceBox::after {
    border: 1em solid transparent;
    transparent;
    border-right-color: #003ad5;
    border-bottom-color: #003ad5;
  }

  html body main section.insurance-school .comp .compLink {
    flex-wrap: wrap;
  }

  html body main section.insurance-school .comp .compLink a {
    width: 100%;
    margin-bottom: 0.8em;
  }

  html body main section.insurance-school .comp {
    margin: 0 auto 1em;
  }

  html body main section.insurance-student2023 .insAbt .route h1 {
    display: block;
    margin-bottom: 1em;
  }

  html body main section.insurance-student2023 .insAbt .route h1 img {
    margin-right: auto;
    margin-bottom: 0.5em;
    max-width: 130px;
    width: 100%;
    display: block;
    margin-left: auto;
  }

  html body main section.insurance-student2023 .insAbt .route .routeIn img {
    margin-bottom: 2em;
  }

  html body main section.insurance-student2023 .insAbt .route .routeIn p {
    text-align: justify;
  }

  html body main section.insurance-school .webFlow,
  html body main section.insurance-student2024 .webFormBox,
  html body main section.insurance-student2023 .webForm02 {
    width: 100%;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox a {
    width: 100%;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox a {
    margin-bottom: 0;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox a:nth-of-type(2) {
    margin-top: 1em;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox a br {
    display: none;
  }

  html body main section.insurance-school .webFlow p,
  html body main section.insurance-student2024 .webFormBox p,
  html body main section.insurance-student2023 .webForm02 p {
    width: 100%;
    text-align: center;
  }

  html body main section.insurance-student2023 .pamphBlock {
    /* background: url(./img/insStu23-9.jpg) no-repeat center center / cover; */
    background: url(./img/sp-insStu23-9.jpg) no-repeat top center / cover;
    width: 100%;
  }

  html body main section.insurance-student2023 .pamphBlock .pamphIn p {
    text-align: left;
  }

  html body main section.insurance-student2023 .pamphBlock .pamphIn p br {
    display: none;
  }

  html body main section.insurance-student2023 .impTxt {
    padding: 1.8em;
  }

  html body main section.insurance-student2023 .block .voiceBox {
    padding: 1.8em;
  }

  html body main section.insurance-student2023 .block .voiceBox::before {
    border: 1em solid transparent;
    border-left-color: #003ad5;
    border-top-color: #003ad5;
  }

  html body main section.insurance-student2023 .block .voiceBox::after {
    border: 1em solid transparent;
    border-right-color: #003ad5;
    border-bottom-color: #003ad5;
  }

  html body main section.insurance-student2023 .comp .compLink {
    flex-wrap: wrap;
  }

  html body main section.insurance-student2023 .comp p {
    margin-bottom: 2em;
  }

  html body main section.insurance-student2023 .comp .compLink a {
    width: 100%;
    margin-bottom: 0.5em;
  }

  html body main section.insurance-student2023 .comp {
    margin: 0 auto 1em;
  }

  html body main section.insurance-student2023 .insAbt .route h1 span {
    width: 100%;
    display: block;
    text-align: center;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox {
    padding: 2vh 3vw;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox p:nth-of-type(1) {
    margin-bottom: 1em;
  }

  html body main section.insurance-student2023 .webForm02 .webLinkBox-btcon p {
    text-align: left;
    margin-bottom: 1em;
  }

  html body main section.insurance-student2024 .insAbt .webFlow {
    padding: 0 1em;
  }

  html body main section.insurance-student2024 .insAbt .webFlow a {
    width: 100%;
  }

  html body main section.insurance-student2024 .insAbt .route h1 img {
    margin-right: auto;
    margin-left: auto;
    display: block;
    width: 100%;
    max-width: 130px;
    margin-bottom: 0.5em;
  }

  html body main section.insurance-student2024 .insAbt .route h1 span {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 2em;
  }

  html body main section.insurance-student2024 .insAbt .route h1 {
    display: block;
  }

  html body main section.insurance-student2024 .insAbt .route .routeIn img {
    margin-bottom: 2em;
  }

  section.insurance-student2024 .linkTable table th br {
    display: none;
  }

  html body main section.insurance-student2024 .pamphBlock {
    background: url(./img/insStu24-8.jpg) no-repeat right center / cover;
    margin: 0 auto;
    width: 100%;
  }

  html body main section.insurance-student2024 .impTxt {
    padding: 1.8em;
    margin-top: 30px;
  }

  html body main section.insurance-student2024 .block .voiceBox {
    padding: 1.8em;
  }

  html body main section.insurance-student2024 .block .voiceBox::before {
    border: 1em solid transparent;
    border-left-color: #003ad5;
    border-top-color: #003ad5;
  }

  html body main section.insurance-student2024 .block .voiceBox::after {
    border: 1em solid transparent;
    border-right-color: #003ad5;
    border-bottom-color: #003ad5;
  }

  html body main section.insurance-student2024 .comp p {
    margin-bottom: 2em;
  }

  html body main section.insurance-student2024 .comp .compLink {
    flex-wrap: wrap;
  }

  html body main section.insurance-student2024 .comp .compLink a {
    width: 100%;
    margin-bottom: 1em;
  }

  html body main section.insurance-student2024 .comp {
    margin: 0 auto 1em;
  }

  html body main section.insurance-trip h4 {
    text-align: left;
    width: 90%;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .mid {
    width: 100%;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.roma em {
    display: block;
    margin-bottom: 0.45em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td .sht {
    width: 100%;
    margin-bottom: 0.5em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td a {
    margin-left: 0;
  }

  ihtml body main section.insurance-trip .insForm .insFormIn .formBlock table tr td nput#birth,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#phone,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#roma-1,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#roma-2,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#zipcode,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td input#birth {
    width: 49%;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.way span.wpcf7-list-item:not(:first-child) {
    margin-left: 1.5em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.way span.wpcf7-list-item:nth-of-type(4) {
    margin-left: 1em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.jender span.wpcf7-list-item:not(:first-child) {
    margin-left: 2em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.plan span.wpcf7-list-item:not(:first-child) {
    margin-left: 1.5em;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td.dm span.wpcf7-list-item:not(:first-child) {
    margin-left: 2em;
  }



  html body main section.insurance-trip .insForm .insFormIn .formBlock {
    background: transparent;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table {
    background: #fff;
  }

  html body main section.insurance-student2024 .pamphBlock .pamphIn p {
    text-align: left;
  }

  html body main section.insurance-student2024 .points .container .pointBox p br:nth-of-type(2) {
    display: none;
  }

  html body section.insurance-trip .insConBlock .insConIn h4 {
    text-align: center;
  }

  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr th br,
  html body main section.insurance-trip .insForm .insFormIn .formBlock table tr td br {
    display: none;
  }

  html body main section.insurance-trip .insForm h4:nth-of-type(1) {
    text-align: left;
  }

  html body main section.pc-rent .tripCon h3 {
    line-height: 1.3;
    width: 80%;
  }

  html body .insConBlock .insConIn .insConLink a:nth-of-type(2) h3 img {
    height: 0.8em;
    width: auto;
    margin-right: 0.5em;
  }

  html body .tripCon .contacts a:nth-of-type(2) {
    font-size: clamp(22px, 2.6vw, 50px);
  }

  html body .tripCon .contacts a img {
    max-width: 22px;
  }

  html body main section.gown .hakamaLink a {
    padding: 1em 0.5em;
  }

  html body main section.gown .hakamaLink a img {
    right: 8%;
  }

  html body main section.gown .hakamaLink h4 {
    line-height: 1.4;
  }

  html body main section.gown .tripCon h3 {
    width: 70%;
  }

  html body main section.insurance-staff .rsvLink {
    width: 92%;
    margin-right: auto;
    margin-left: auto;
    padding: 1.5em;
  }

  html body main section.contact .telBlock .hokenFormBlock .form-linkBox a {
    width: 90%;
  }

  html body main section.contact .telBlock .hokenFormBlock .form-linkBox {
    margin-bottom: 1.5em;
  }

  html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx {
    flex-wrap: wrap;
  }

  html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx p {
    padding-right: 0;
  }

  html body main section.goods .goodsMain .goodsMainIn .container .goodsBox .boxFx img {
    margin: 0 auto;
    margin-bottom: 3em;
  }

  html body .post-436 .tripCon .contacts a {
    width: 100%;
  }

  /*　リクルートスマホ　（追加）---------------------------------*/
  html body section.recruit .recAbout {
    background: url(./img/sp-rec-abtBG.jpg) no-repeat top right / contain;
    background-color: #b4f2e9;
  }

  html body section.recruit .recTopEnt .recEntIn .entFx a:nth-of-type(1) b {
    width: 90%;
    max-width: 185px;
  }

  html body section.recruit .recTopEnt .recEntIn h1 span {
    font-size: 0.3em;
    font-weight: 700;
  }

  html body section.recruit .recInt h1 {
    text-align: center;
    margin-bottom: 1em;
  }

  html body section.recruit .recInt h1 b {
    font-size: 0.3em;
    line-height: 1.4;
    font-weight: 700;
  }

  html body section.recruit .recWel .welIn .welHead h1 {
    width: 100%;
    text-align: center;
  }

  html body section.recruit .recWel .welIn .welHead h1 b {
    font-size: 0.3em;
    font-weight: 700;
  }

  html body section.recruit .recWel .welIn .welHead p {
    text-align: center;
  }

  html body section.recruit .recData h1 {
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  html body section.recruit .recData h1::after {
    right: 0;
    bottom: 40%;
  }

  html body section.recruit .recData h1::before {
    right: 0;
    bottom: 40%;
  }

  html body section.recruit .recData h1 b {
    font-size: 0.3em;
    font-weight: 700;
  }

  html body section.recruit .recData h1 em {
    position: static;
    display: block;
    margin-top: 4vh;
    color: #212529;
    font-size: 0.23em;
  }

  html body .entryBlock {
    margin-bottom: 20px;
  }

  html body .entryBlock {
    background: url(./img/sp-rec-entryBG.jpg) no-repeat center center / cover;
  }

  html body section.recruit .recData .datas img.slide-arrow {
    width: 100%;
  }

  .datas .slick-prev::before,
  .datas .slick-next::before {
    content: '';
  }

  .datas .slick-prev,
  .datas .slick-next {
    width: 30px;
    height: 30px;
  }

  .datas .slick-prev {
    left: -12%;
  }

  .datas .slick-next {
    right: -12%;
  }

  html body footer .footMain .foot1 .footLinks .footLinks2.rec {
    flex-wrap: wrap;
    padding-left: 0;
  }

  html body footer .footMain .foot1 .footLinks .footLinks2.rec a {
    display: block;
    width: 100%;
    margin-bottom: 1em;
  }

  html body footer .footMain .foot1 .footLinks .footLinks2.rec a:last-of-type {
    margin-left: 0;
  }

  html body section.recruit .recInt .intBlock .intIll img {
    transform: scale(1.5, 1.5);
  }

  html body section.recruit .recInt .intBlock .intMain a {
    font-size: 1em;
    display: block;
    max-width: 180px;
    border: 1px solid #05d3b5;
    border-radius: 5em;
    color: #1e1e1e;
    padding: 1.5em 4em;
    position: relative;
    text-align: center;
    width: 70%;
    margin: 1em auto 1em 0;
    margin-top: 1em;
  }

  html body section.recruit .recInt .intBlock.green .intMain a,
  html body section.recruit .recInt .intBlock.blue .intMain a {
    margin: 1em auto 0 5.5vw;
  }

  html body section.recruit .recInt .intBlock .intMain a::before,
  html body section.recruit .recInt .intBlock .intMain a::after {
    content: "";
    position: absolute;
    background: white;
    height: 3px;
    width: 1.5em;
  }

  html body section.recruit .recInt .intBlock .intMain a::before {
    top: -1px;
    right: 15%;
  }



  html body section.recruit .recInt .intBlock .intMain a::after {
    bottom: -1px;
    left: 15%;
  }

  html body section.recruit .recInt .intBlock .intMain .intNum h4 {
    margin-bottom: 0;
  }

  html body section.recruit .recInt .intBlock.green .intIll,
  html body section.recruit .recInt .intBlock.blue .intIll {
    border-left: none;
  }

  html body section.recruit .recInt .intBlock.pink .intIll,
  html body section.recruit .recInt .intBlock.purple .intIll {
    border-right: none;
  }

  html body section.recruit .recInt .intBlock.blue .intIll {
    border-left: none;
  }

  html body section.recruit .recInt .intBlock.purple .intIll {
    border-right: none;
  }

  html body section.recruit .recInt .intBlock .intMain .intNum img {
    margin-left: 1em;
  }

  html body .interview .headBox .headDisc {
    width: 60%;
    margin-left: 3em;
  }

  html body .interview .headBox {
    display: block;
    position: relative;
  }

  html body .interview .headBox .headImg {
    position: absolute;
    background: transparent !important;
    padding: 0;
    right: 0;
    bottom: 4%;
  }

  html body .interview .headBox .headImg img {
    transform: scale(1.3, 1.3);
  }

  html body .interview .headBox::before {
    right: -1%;
  }

  html body .interview .qaBlock .qaBox h2 {
    position: relative;
    padding-bottom: 1em;
  }

  html body .interview .qaBlock .qaBox h2 img {
    width: max(35px, 7%);
  }

  html body .interview .qaBlock .qaBox h2 span {
    font-size: 1.15em;
    margin-left: 0;
    border-bottom: none;
    padding-bottom: 0;
  }

  html body .interview .qaBlock .qaBox h2 span::before {
    content: none;
  }

  html body .interview .qaBlock .qaBox h2::before {
    content: "";
    position: absolute;
    background: #1e1e1e;
    width: 0.4em;
    height: 0.4em;
    border-radius: 1em;
    bottom: 0;
    left: 0;
    transform: translate(-50%, 55%);
  }

  html body .interview .qaBlock .qaBox h2::after {
    position: absolute;
    background: #1e1e1e;
    content: '';
    bottom: -1px;
    width: 100%;
    height: 1px;
    right: 0;
  }

  html body .interview .qaBlock .qaBox p img {
    width: max(35px, 7%);
  }

  html body .interview .qaBlock .qaBox p span {
    margin-left: 0.5em;
  }

  html body .interview .otherBlock {
    padding-right: 15px;
    padding-left: 15px;
  }

  html body .interview .otherBlock .otherBoxes {
    width: 95%;
  }

  html body .interview .otherBlock .otherBoxes .otherBox {
    border-right: 5px solid #05d3b5;
  }

  html body .interview .otherBlock .otherBoxes .otherBox>div {
    width: 70%;
  }

  html body .interview .otherBlock .otherBoxes .otherBox img {
    width: 25%;
  }

  html body .interview .otherBlock .otherBoxes .otherBox {
    width: 100%;
    margin-bottom: 2em;
  }

  html body .interview>h1 b {
    text-align: center;
    line-height: 1.4;
  }

  html body header#recHeader .recHeadIn .recMenu .global li a {
    border-right: none;
    border-left: none;
  }

  html body footer .footMain .foot2 .outlink.groupLink a {
    width: 32.5%;
  }
}

/*ECへのリンク*/
html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con3 {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff;
  background: #fff;
  transition: 0.3s;
  width: min(18.8vw, 360px);
  text-align: center;
  font-size: min(0.73vw, 14px);
  padding: 0.5em 1em;
}

html body header .headerIn .mainMenu .mainMenuIn .menuBlock .menuCon .con3:hover {
  opacity: .7;
}

.footer-link-ec {
  background: #e5ebfc;
  padding: 1.5em 2em;
  border-radius: 5em;
  width: 80%;
  margin: auto;
}

@media(max-width:1024px) {
  .footer-link-ec {
    margin-bottom: 2em;
  }
}

@media(max-width:768px) {
  a.top-link-ec {
    background: #fff;
    margin-top: 2em;
    padding: 1.1em !important;
    font-size: clamp(16px, 0.9375vw, 18px);
    border-radius: 0.5em;
    text-align: center;
  }

  .footer-link-ec {
    width: 100%;
    font-size: 12px;
    margin-bottom: 1em;
  }
}

.grecaptcha-badge {
  bottom: 12% !important;
  z-index: 9; }
