@charset "UTF-8";
.header {
  position: fixed;
  z-index: 100;
  top: 3.3rem;
  left: 50%;
  font-size: 10px;
  max-width: 160rem;
  width: calc(100% - 3rem);
  transform: translateX(-50%);
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1500px) {
  .header {
    font-size: 0.67vw;
  }
}
@media screen and (max-width: 1200px) {
  .header {
    font-size: 0.75vw;
  }
}
@media screen and (max-width: 999px) {
  .header {
    font-size: 1rem;
    width: auto;
    transform: none;
    left: 0;
    right: 0;
    top: 0;
  }
}

.header-tell {
  text-align: right;
  padding-bottom: 2.5em;
  transition: all 0.3s ease-in-out;
}
.header-tell img {
  width: 24.8em;
}
@media screen and (max-width: 999px) {
  .header-tell {
    display: none;
  }
}

.img-logo {
  width: 24.8em;
}
@media screen and (max-width: 999px) {
  .img-logo {
    width: 30em;
  }
}
@media screen and (max-width: 767px) {
  .img-logo {
    width: 21em;
  }
}

.header-menu {
  background-color: #fff;
  padding-left: 1.5em;
  padding-right: 1.5em;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-radius: 100rem;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}
@media screen and (max-width: 999px) {
  .header-menu {
    border-radius: 0;
    padding: 0;
    height: 9rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .header-menu {
    height: 8rem;
  }
}

.menu-mid-item {
  display: inline-flex;
  font-weight: 700;
  line-height: 1;
  align-items: center;
  -moz-column-gap: 0.5em;
       column-gap: 0.5em;
  position: relative;
  z-index: 3;
}
.menu-mid-item.icon:after {
  content: "";
  display: inline-block;
  width: 1.3em;
  height: 1.3em;
  background-image: url(../img/common/image02.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .menu-mid-item.icon:after {
    content: none;
  }
}
.menu-mid-item span {
  font-size: 1.6em;
}
@media screen and (max-width: 999px) {
  .menu-mid-item span {
    font-size: 1.8em;
  }
}
@media screen and (min-width: 1000px) {
  .menu-mid-item {
    transition: all 0.3s ease-in-out;
  }
  .menu-mid-item:before {
    content: "";
    position: absolute;
    bottom: -0.8em;
    left: 0;
    right: 0;
    height: max(1px, 0.2em);
    background-color: #F2774A;
    transition: all 0.3s ease-in-out;
    opacity: 0;
  }
  .menu-mid-item:hover, .menu-mid-item.is-active {
    color: #F2774A;
  }
  .menu-mid-item:hover:before, .menu-mid-item.is-active:before {
    opacity: 1;
  }
  .menu-mid-item:hover ~ .dropdowmenu-child {
    display: block;
  }
  .menu-mid-item:hover.icon:after, .menu-mid-item.is-active.icon:after {
    background-image: url(../img/common/image12.png);
  }
}
@media screen and (max-width: 999px) {
  .menu-mid-item {
    display: block;
    text-align: center;
    padding: 1.5em;
    transition: all 0.3s ease-in-out;
  }
  .menu-mid-item:hover, .menu-mid-item.is-active {
    background-color: #009CCA;
    color: #fff;
  }
}

.menu-mid-ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 3em;
       column-gap: 3em;
}
@media screen and (max-width: 1200px) {
  .menu-mid-ul {
    -moz-column-gap: 1.7em;
         column-gap: 1.7em;
  }
}
@media screen and (max-width: 999px) {
  .menu-mid-ul {
    display: block;
  }
  .menu-mid-ul li {
    border-bottom: max(1px, 0.1rem) solid #009CCA;
  }
}

.header-menu-mid {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: -moz-max-content;
  width: max-content;
}
@media screen and (max-width: 1500px) {
  .header-menu-mid {
    left: 51%;
  }
}
@media screen and (max-width: 1200px) {
  .header-menu-mid {
    left: 52.2%;
  }
}
@media screen and (max-width: 999px) {
  .header-menu-mid {
    top: 100%;
    left: 0;
    right: 0;
    transform: none;
    width: 100%;
    background-color: #fff;
    border-top: max(1px, 0.1rem) solid #009CCA;
    overflow: auto;
    max-height: calc(100vh - 9rem);
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .header-menu-mid {
    max-height: calc(100vh - 8rem);
  }
}

.bth-header {
  font-weight: 500;
  color: #fff;
  background-color: #F2774A;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 21em;
  height: 5.2em;
  border-radius: 100rem;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1200px) {
  .bth-header {
    width: 19em;
    height: 5em;
  }
}
.bth-header:hover {
  background-color: #009CCA;
}
.bth-header span {
  font-size: 2.2em;
}
@media screen and (max-width: 1200px) {
  .bth-header span {
    font-size: 2em;
  }
}

.dropdowmenu {
  position: relative;
}

.dropdowmenu-child {
  position: absolute;
  top: 0;
  left: -4em;
  width: 21em;
  padding-top: 7em;
  display: none;
}
.dropdowmenu-child .dropdowmenu-child-roplink {
  background-color: #fff;
}
@media screen and (min-width: 1000px) {
  .dropdowmenu-child .dropdowmenu-child-roplink {
    display: flex;
    flex-direction: column;
    border-radius: 2em;
    align-items: flex-start;
    padding: 1em 0;
  }
}
@media screen and (min-width: 1000px) {
  .dropdowmenu-child:hover {
    display: block;
  }
}
@media screen and (max-width: 999px) {
  .dropdowmenu-child {
    position: static;
    width: 100%;
    padding-top: 0;
    padding: 2em 0;
  }
}

.link-drobmenu-item {
  display: block;
  padding: 0.8em 1.5em;
  border-bottom: max(1px, 0.1em) solid #009CCA !important;
  font-weight: 500;
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 1000px) {
  .link-drobmenu-item {
    border: 0 !important;
    display: inline-block;
    padding: 0.4em 2em;
  }
  .link-drobmenu-item:hover, .link-drobmenu-item.is-active {
    color: #F2774A;
  }
}
@media screen and (max-width: 999px) {
  .link-drobmenu-item {
    text-align: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    border: max(1px, 0.1em) solid #009CCA !important;
  }
  .link-drobmenu-item + .link-drobmenu-item {
    margin-top: 1em;
  }
  .link-drobmenu-item:hover, .link-drobmenu-item.is-active {
    background-color: #009CCA;
    color: #fff;
  }
}
.link-drobmenu-item span {
  font-size: 1.6em;
}

@media screen and (max-width: 999px) {
  .header-menu-right {
    display: none;
  }
}

@media screen and (min-width: 1000px) {
  .view-table {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .btn-hamberger {
    transform: scale(1.3);
    margin-right: 1rem;
  }
}

.btn-tell {
  width: 5.2rem;
  height: 5.2rem;
  background-image: url(../img/common/callw.png);
  background-size: 60% auto;
  background-position: center center;
  background-repeat: no-repeat;
  margin-left: auto;
  margin-right: 4rem;
  background-color: #009CCA;
  border-radius: 1rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .btn-tell {
    width: 3.5rem;
    height: 3.5rem;
    margin-right: 2rem;
    background-color: transparent;
    background-size: contain;
    background-image: url(../img/common/call.png);
  }
}

.icon-toggle {
  position: absolute;
  right: 1.5rem;
  width: 4rem;
  height: 4rem;
  background-color: #009CCA;
  top: 0;
  border: max(1px, 0.1rem) solid #fff;
  z-index: 3;
  top: 0.4rem;
}
.icon-toggle:before, .icon-toggle:after {
  content: "";
  width: 70%;
  height: max(1px, 0.2rem);
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  transition: all 0.3s ease-in-out;
}
.icon-toggle:after {
  transform: translateY(-50%) translateX(-50%) rotate(90deg);
}
.icon-toggle.is-active:after {
  opacity: 0;
}

.sec1-top {
  position: relative;
  font-size: 10px;
  background-image: url(../img/top/image06.jpg);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  height: 190.6em;
  background-color: #106CA8;
}
@media screen and (max-width: 1400px) {
  .sec1-top {
    font-size: 0.71vw;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top {
    font-size: 1rem;
    height: 110.6em;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top {
    height: auto;
    padding-top: 5rem;
    padding-bottom: 10rem;
    background-image: url(../img/top/image40.jpg);
    background-position: bottom center;
  }
}

.sec1-top-img1 {
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  width: 83.7em;
}
@media screen and (max-width: 999px) {
  .sec1-top-img1 {
    top: 7em;
    width: 66em;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-img1 {
    width: 96%;
    top: 4em;
    position: static;
    transform: none;
    margin-left: auto;
    margin-right: auto;
  }
}

.sec1-top-img2 {
  position: absolute;
  right: 13%;
  top: 43.5%;
  width: 18em;
}
@media screen and (max-width: 1500px) {
  .sec1-top-img2 {
    right: 4%;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-img2 {
    right: 7em;
    top: 59em;
    width: 14em;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-img2 {
    right: 2em;
    top: 36em;
    width: 9em;
    position: static;
    margin-left: auto;
    margin-right: 3em;
    margin-top: -3em;
  }
}

.sec1-top-img3 {
  position: absolute;
  bottom: 20%;
  left: 50%;
  transform: translateX(-50%);
  width: 166em;
}
@media screen and (max-width: 1750px) {
  .sec1-top-img3 {
    width: 94.86vw;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-img3 {
    width: calc(100% - 3em);
    bottom: 3em;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-img3 {
    bottom: 2em;
  }
}

.sec1-top-content {
  position: absolute;
  z-index: 2;
  color: #fff;
  max-width: 120rem;
  width: calc(100% - 3rem);
  left: 50%;
  transform: translateX(-50%);
  bottom: 25%;
}
@media screen and (max-width: 999px) {
  .sec1-top-content {
    bottom: 5em;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-content {
    position: static;
    transform: none;
    padding-top: 3rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width: 100%;
  }
}

.sec1-top-tlt {
  padding-bottom: 2.8rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-tlt {
    padding-bottom: 1.5rem;
  }
}
.sec1-top-tlt span {
  display: block;
}
.sec1-top-tlt .eng {
  font-weight: 500;
}
.sec1-top-tlt .eng strong {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt .eng strong {
    font-size: 1.6rem;
  }
}
.sec1-top-tlt .jpn {
  line-height: 1.3;
  margin-top: 3.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-tlt .jpn {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt .jpn {
    margin-top: 1rem;
  }
}
.sec1-top-tlt .jpn strong {
  font-size: 4.8rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-tlt .jpn strong {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt .jpn strong {
    font-size: 2.6rem;
  }
}

.sec1-top-fs24 span {
  font-size: 2.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 999px) {
  .sec1-top-fs24 span {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-fs24 span {
    font-size: 1.8rem;
  }
}

.sec1-top-fs16 span {
  font-size: 1.6rem;
  line-height: 1.8;
}

.sec1-top-content-right {
  width: 49rem;
  padding-top: 7rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-content-right {
    width: 54rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-content-right {
    width: 100%;
    padding-top: 3rem;
  }
}

.sec1-top-link {
  display: flex;
  width: 22rem;
  height: 4.6rem;
  border: max(1px, 0.2rem) solid #fff !important;
  border-radius: 3rem;
  font-weight: 500;
  align-items: center;
  padding-left: 1.7rem;
  background-image: url(../img/common/image03.png);
  background-size: 4.5rem auto;
  background-repeat: no-repeat;
  background-position: right 1.5rem center;
  transition: all 0.3s ease-in-out;
  margin-top: 8rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-link {
    margin-top: 3rem;
  }
}
.sec1-top-link:hover {
  background-color: #F2774A;
}
.sec1-top-link span {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .sec1-top-link span {
    font-size: 1.6rem;
  }
}

.sec1-top-content-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .sec1-top-content-flex {
    display: block;
  }
}

@media screen and (max-width: 999px) {
  .sec-scaping {
    padding-top: 9rem;
  }
}
@media screen and (max-width: 767px) {
  .sec-scaping {
    padding-top: 8rem;
  }
}

@keyframes fade-top {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fade-top {
  opacity: 0;
  animation: fade-top 1.2s ease-in-out forwards;
  animation-delay: 0.4s;
}

.sec2-top-item {
  box-shadow: 0 0 0.5rem rgba(19, 15, 107, 0.5);
  border-radius: 0.8rem;
}
.sec2-top-item img {
  border-radius: 0.5rem;
}

.sec2-top {
  margin-top: -13.85vw;
}
@media screen and (max-width: 1400px) {
  .sec2-top {
    margin-top: -17.85vw;
  }
}
@media screen and (max-width: 999px) {
  .sec2-top {
    margin-top: 0;
    padding-top: 5rem;
  }
}

.cont-1200 {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.sec3-top-icon {
  position: relative;
  padding-bottom: 10rem;
  width: calc(100% - 25rem);
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4.3rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-icon {
    margin-bottom: 2.3rem;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-icon {
    padding-bottom: 6rem;
  }
}
.sec3-top-icon .sec3-top-iconm {
  width: 43.6rem;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
}
@media screen and (max-width: 999px) {
  .sec3-top-icon .sec3-top-iconm {
    left: 50%;
    transform: translateX(-50%);
    width: 36.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-icon .sec3-top-iconm {
    width: 22.6rem;
    transform: none;
    left: auto;
    right: 0;
  }
}

.sec3-top-main {
  display: grid;
  grid-template-columns: 16rem 1fr;
}
.sec3-top-main .tlth3-style1 {
  margin-left: auto;
  margin-right: auto;
}
.sec3-top-main .tlth3-style1 .eng {
  color: #97CFE3;
}
.sec3-top-main .tlth3-style1 .jpn {
  color: #009CCA;
}
@media screen and (max-width: 999px) {
  .sec3-top-main {
    display: block;
  }
}

.tlth3-style1 span {
  display: block;
}
.tlth3-style1 .eng {
  font-size: 3rem;
  font-weight: 500;
}
@media screen and (max-width: 999px) {
  .tlth3-style1 .eng {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .tlth3-style1 .eng {
    font-size: 2.1rem;
  }
}
.tlth3-style1 .jpn {
  font-size: 2.6rem;
  font-weight: 700;
}
@media screen and (max-width: 999px) {
  .tlth3-style1 .jpn {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .tlth3-style1 .jpn {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 1000px) {
  .tlth3-style1.tltdots {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    -moz-column-gap: 6.4rem;
         column-gap: 6.4rem;
  }
}

.txt-fs16 {
  font-size: 1.6rem;
}

.txt-fs26 {
  font-size: 2.6rem;
}
@media screen and (max-width: 999px) {
  .txt-fs26 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs26 {
    font-size: 2rem;
  }
}

.fw500 {
  font-weight: 500;
}

.fw700 {
  font-weight: 700;
}

.lh19 {
  line-height: 1.9;
}

.sec3-top-ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 2.2rem;
       column-gap: 2.2rem;
  row-gap: 1.6rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-ul {
    -moz-column-gap: 1.6rem;
         column-gap: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-ul {
    display: block;
  }
  .sec3-top-ul li + li {
    margin-top: 2rem;
  }
}
.sec3-top-ul li {
  border: max(1px, 0.1rem) solid #CCEBF4;
  border-radius: 0.5rem;
  text-align: center;
  background-color: #FAFDFE;
  padding-top: 6.5rem;
  padding-bottom: 7rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-ul li {
    padding-top: 4.5rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-ul li {
    padding-top: 3.5rem;
    padding-bottom: 4rem;
  }
}

.sec3-top-ul-number {
  font-size: 1.4rem;
  font-weight: 500;
  color: #F2774A;
}

.sec3-top-ul-tlt {
  padding-top: 2rem;
  padding-bottom: 0.8rem;
}

.sec3-top-left {
  padding-top: 1rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-left {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}

.cont-1600 {
  max-width: 160rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.sec4-top {
  border-top: max(1px, 0.1rem) solid #D3D3D4;
  margin-top: 9.4rem;
  padding-top: 2.8rem;
}
@media screen and (max-width: 999px) {
  .sec4-top {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top {
    margin-top: 5rem;
  }
}

.sec4-top-main {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: max-content 1fr 18rem;
  -moz-column-gap: 5.6rem;
       column-gap: 5.6rem;
  align-items: center;
}
@media screen and (max-width: 999px) {
  .sec4-top-main {
    grid-template-columns: max-content 1fr 13rem;
    -moz-column-gap: 3.6rem;
         column-gap: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-main {
    display: block;
    position: relative;
  }
}

.tlth3-style2 span {
  display: block;
}
.tlth3-style2 .jpn {
  font-size: 3rem;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 999px) {
  .tlth3-style2 .jpn {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .tlth3-style2 .jpn {
    font-size: 2.2rem;
  }
}
.tlth3-style2 .eng {
  font-size: 1.8rem;
  font-weight: 500;
  color: #F2774A;
}
.tlth3-style2.tlth3-style2--flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
.tlth3-style2.blue .jpn {
  color: #009CCA;
}
.tlth3-style2.blue .eng {
  color: #97CFE3;
}

.txt-fs20 {
  font-size: 2rem;
}
@media screen and (max-width: 999px) {
  .txt-fs20 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs20 {
    font-size: 1.7rem;
  }
}

.link-icon-arrow {
  width: 6.6rem;
  height: 3.4rem;
  background-color: #E5F5FA;
  border-radius: 100rem;
  display: block;
  background-image: url(../img/common/image04.png);
  background-size: 60% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .link-icon-arrow {
    width: 5.4rem;
    height: 3rem;
  }
}
.link-icon-arrow.single:hover {
  background-color: #009CCA;
  background-image: url(../img/common/image03.png);
}

@media screen and (max-width: 767px) {
  .sec4-top-txt {
    margin-top: 2rem;
  }
}
.sec4-top-txt p {
  max-width: 66.4rem;
}

@media screen and (max-width: 767px) {
  .sec4-top-link {
    position: absolute;
    top: 1rem;
    right: 1rem;
  }
}

.sec5-top {
  max-width: 156rem;
  width: calc(100% - 1.5rem);
  grid-template-columns: 58.9% 1fr;
  -moz-column-gap: 2.5%;
       column-gap: 2.5%;
  display: grid;
  padding-top: 5.8rem;
}
@media screen and (max-width: 767px) {
  .sec5-top {
    display: block;
    padding-top: 4rem;
    width: 100%;
  }
}

.sec5-top-right-ul a {
  display: flex;
  align-items: center;
  -moz-column-gap: 5.4rem;
       column-gap: 5.4rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  padding-left: 1.5rem;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1400px) {
  .sec5-top-right-ul a {
    padding-top: 1.7rem;
    padding-bottom: 1.7rem;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-right-ul a {
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
  }
}
.sec5-top-right-ul a:hover {
  color: #009CCA;
}
.sec5-top-right-ul a:hover:before {
  background-color: #009CCA;
  background-image: url(../img/common/image03.png);
}
.sec5-top-right-ul a:before {
  content: "";
  width: 6.6rem;
  height: 3.4rem;
  background-color: #E5F5FA;
  border-radius: 100rem;
  display: block;
  background-image: url(../img/common/image04.png);
  background-size: 60% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .sec5-top-right-ul a:before {
    width: 5.4rem;
    height: 3rem;
  }
}
.sec5-top-right-ul li {
  border-bottom: max(1px, 0.2rem) solid #E9E9EA;
}
.sec5-top-right-ul li:first-child {
  border-top: max(1px, 0.2rem) solid #E9E9EA;
}

.txt-fs24 {
  font-size: 2.4rem;
}
@media screen and (max-width: 999px) {
  .txt-fs24 {
    font-size: 2.1rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs24 {
    font-size: 1.8rem;
  }
}

.sec5-top-right {
  padding-top: 4rem;
}
@media screen and (max-width: 1400px) {
  .sec5-top-right {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-right {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 3rem;
  }
}

.sec6-top {
  margin-top: -16.5rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1600px) {
  .sec6-top {
    margin-top: -8.31vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top {
    margin-top: 5rem;
  }
}
.sec6-top:before {
  content: "";
  display: block;
  width: 100%;
  height: 19.5rem;
  background-image: url(../img/top/image09.png);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1600px) {
  .sec6-top:before {
    height: 12.19vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top:before {
    content: none;
  }
}

.sec6-top1 {
  border-bottom: max(1px, 0.1rem) solid #D3D3D4;
  color: #fff;
  padding-bottom: 4.2rem;
}
.sec6-top1 .txt-fs26 {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}

.lh14 {
  line-height: 1.4;
}

.sec6-top2 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
  padding-top: 5rem;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 999px) {
  .sec6-top2 {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top2 {
    display: block;
  }
}
.sec6-top2 .sec6-top2-item:nth-child(2), .sec6-top2 .sec6-top2-item:nth-child(5) {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .sec6-top2 .sec6-top2-item:nth-child(2), .sec6-top2 .sec6-top2-item:nth-child(5) {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top2 .sec6-top2-item + .sec6-top2-item {
    margin-top: 2rem;
  }
}

.sec6-top-bg {
  margin-top: -6.8rem;
  padding-bottom: 9rem;
  position: relative;
}
@media screen and (max-width: 1400px) {
  .sec6-top-bg {
    margin-top: -2.8rem;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-bg {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-bg {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.sec6-top-bg:before {
  content: "";
  position: absolute;
  top: 6.8rem;
  left: 0;
  right: 0;
  bottom: 11rem;
  background: linear-gradient(180deg, rgb(0, 156, 202) 55%, rgba(0, 156, 202, 0.78) 74%, rgba(0, 156, 202, 0.51) 89%, rgba(0, 156, 202, 0) 100%);
  z-index: -1;
}
@media screen and (max-width: 1400px) {
  .sec6-top-bg:before {
    top: 2.8rem;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-bg:before {
    top: 0;
  }
}

.sec6-top2-item {
  position: relative;
}
.sec6-top2-item .txt-fs20 {
  position: absolute;
  top: 0;
  left: 4.4rem;
  top: 4rem;
}
@media screen and (max-width: 999px) {
  .sec6-top2-item .txt-fs20 {
    left: 3.4rem;
    top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top2-item .txt-fs20 {
    top: 4rem;
  }
}
.sec6-top2-item .txt-fs20.sec6-top2-item-lin1 {
  top: 5rem;
}
@media screen and (max-width: 999px) {
  .sec6-top2-item .txt-fs20.sec6-top2-item-lin1 {
    top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top2-item .txt-fs20.sec6-top2-item-lin1 {
    top: 5rem;
  }
}

.sec6-top2-item-bt {
  font-size: 1.5rem;
  position: relative;
  color: #fff;
}
.sec6-top2-item-bt p {
  position: absolute;
  bottom: 1.3rem;
  right: 0;
}

.sec6-top3 {
  background-color: #fff;
  border-radius: 0.5rem;
  margin-top: 15rem;
  position: relative;
  z-index: 4;
  box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
}
@media screen and (max-width: 999px) {
  .sec6-top3 {
    margin-top: 13rem;
  }
}

.sec6-top3m {
  position: relative;
  padding-top: 5rem;
}
.sec6-top3m:before {
  content: "";
  width: 39.5rem;
  height: 40.3rem;
  background-image: url(../img/top/image16.png);
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 100% auto;
  position: absolute;
  top: -35.5rem;
  right: 0;
}
@media screen and (max-width: 999px) {
  .sec6-top3m:before {
    width: 29.5rem;
    height: 30.3rem;
    top: -25.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top3m:before {
    width: 21rem;
    height: 23rem;
    top: -13.5rem;
    right: 0;
  }
}

.sec6-top3m-txt {
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .sec6-top3m-txt {
    margin-top: 2rem;
  }
}

.link-viewmore {
  display: flex;
  width: 22rem;
  height: 4.6rem;
  border: max(1px, 0.2rem) solid #242325 !important;
  border-radius: 3rem;
  font-weight: 500;
  align-items: center;
  padding-left: 1.7rem;
  background-image: url(../img/common/image05.png);
  background-size: 4.5rem auto;
  background-repeat: no-repeat;
  background-position: right 1.5rem center;
  transition: all 0.3s ease-in-out;
  font-size: 1.4rem;
  color: #009CCA;
}
.link-viewmore:hover {
  background-color: #009CCA;
  color: #fff;
  border-color: #fff !important;
  background-image: url(../img/common/image03.png);
}
@media screen and (max-width: 767px) {
  .link-viewmore {
    font-size: 1.6rem;
  }
}

.sec6-top3m--linkmap {
  position: absolute;
  top: 8rem;
  right: 0;
}
@media screen and (max-width: 767px) {
  .sec6-top3m--linkmap {
    position: static;
    margin-top: 2rem;
  }
}

.sec6-top4 {
  position: relative;
}
.sec6-top4:before {
  content: "";
  position: absolute;
  top: -11.6rem;
  left: 0;
  right: 0;
  height: 45rem;
  background-image: url(../img/top/image17.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top center;
}
@media screen and (max-width: 767px) {
  .sec6-top4:before {
    top: -2.6rem;
    height: 17rem;
  }
}

.works-item-slider {
  position: relative;
}
.works-item-slider .works-item-slider-linkder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.works-item-slider img {
  border-radius: 0.5rem;
}

.txt-fs14 {
  font-size: 1.4rem;
}
@media screen and (max-width: 999px) {
  .txt-fs14 {
    font-size: 1.5rem;
  }
}

.works-item-slider-cate {
  display: inline-block;
  color: #fff;
  background-color: #212129;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.8rem;
  padding-bottom: 0.5rem;
  border-radius: 100rem;
  margin-top: 1.7rem;
  margin-bottom: 0.9rem;
}
@media screen and (max-width: 999px) {
  .works-item-slider-cate {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.txt-fs18 {
  font-size: 1.8rem;
}
@media screen and (max-width: 999px) {
  .txt-fs18 {
    font-size: 1.6rem;
  }
}

.works-item-slider-link {
  display: inline-block;
  margin-left: 1.2rem;
}
@media screen and (max-width: 999px) {
  .works-item-slider-link {
    margin-left: 0.7rem;
  }
}

.works-slider .splide__pagination__page {
  width: 1.2rem;
  height: 1.2rem;
  background-color: #DCDCDC;
  border-radius: 0;
  margin: 0 1.2rem;
}
@media screen and (max-width: 767px) {
  .works-slider .splide__pagination__page {
    width: 0.8rem;
    height: 0.8rem;
    margin: 0 0.8rem;
  }
}
.works-slider .splide__pagination__page.is-active {
  background-color: #F2774A;
  transform: none;
}

.works-slider--top {
  margin-top: 6rem;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 999px) {
  .works-slider--top {
    margin-top: 4rem;
    padding-bottom: 3.5rem;
  }
}
.works-slider--top .splide__pagination {
  position: static;
  padding-top: 5.4rem;
}
@media screen and (max-width: 767px) {
  .works-slider--top .splide__pagination {
    padding-top: 2.4rem;
  }
}

@media screen and (min-width: 1000px) {
  .header.is-active .header-menu {
    box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
  }
  .header.is-active .header-tell {
    font-size: 0;
  }
}
.sec7-top {
  box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
  border: max(1px, 0.2rem) solid #009CCA;
  background-color: #EAF5F9;
  border-radius: 0.5rem;
  padding-top: 4.3rem;
  padding-bottom: 9rem;
  background-image: url(../img/common/image04.png);
  background-size: 4.5rem auto;
  background-repeat: no-repeat;
  background-position: right 21rem center;
  cursor: pointer;
  position: relative;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1200px) {
  .sec7-top {
    background-position: right 5rem center;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top {
    padding-top: 3rem;
    padding-bottom: 5rem;
    background-position: bottom 1.5rem center;
  }
}
@media screen and (min-width: 768px) {
  .sec7-top:hover {
    background-position: right 18rem center;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .sec7-top:hover {
    background-position: right 2rem center;
  }
}
.sec7-top .txt-fs16 {
  padding-top: 1.2rem;
}
.sec7-top .sec7-top-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
}

.sec8-top {
  padding-top: 6.5rem;
  padding-bottom: 5rem;
}

.sec9-top {
  border-top: max(2px, 1rem) solid #009CCA;
}

.sec10-top-main1 {
  display: grid;
  grid-template-columns: 58% 1fr;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .sec10-top-main1 {
    display: block;
  }
}

.sec10-top-right {
  padding-bottom: 3rem;
}
@media screen and (max-width: 1400px) {
  .sec10-top-right {
    padding-left: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top-right {
    padding-left: 0;
    padding-top: 3rem;
    padding-bottom: 0;
  }
}
.sec10-top-right .link-viewmore {
  margin-top: 5rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-right .link-viewmore {
    margin-top: 2rem;
  }
}

.sec10-top-left {
  transform: translateX(-2rem);
}
@media screen and (max-width: 1400px) {
  .sec10-top-left {
    transform: none;
  }
}

.sec10-top {
  margin-top: -9.74vw;
}
@media screen and (max-width: 767px) {
  .sec10-top {
    margin-top: 0;
    padding-top: 3rem;
  }
}

.sec10-top-main2 {
  max-width: 104.2rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .sec10-top-main2 {
    display: block;
    margin-top: 5rem;
  }
  .sec10-top-main2 li + li {
    margin-top: 3rem;
  }
}
.sec10-top-main2 li {
  background-color: #fff;
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
  padding: 0 3.2rem;
  padding-top: 2rem;
  padding-bottom: 7rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-main2 li {
    padding-bottom: 4rem;
  }
}
.sec10-top-main2 li .txt-fs14 {
  color: #009CCA;
}
.sec10-top-main2 li img {
  height: 6rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-main2 li img {
    height: auto;
    width: 100%;
  }
}

.sec10-top-grbg {
  background-color: #F2FAFC;
  background-image: url(../img/top/image31.png);
  background-size: 86.5% auto;
  background-repeat: no-repeat;
  background-position: top 58% center;
}
@media screen and (max-width: 1600px) {
  .sec10-top-grbg {
    background-size: 95% auto;
  }
}
@media screen and (max-width: 1200px) {
  .sec10-top-grbg {
    background-size: 98% auto;
  }
}
@media screen and (max-width: 999px) {
  .sec10-top-grbg {
    background-position: top 52% center;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top-grbg {
    background-position: top 72% center;
  }
}

.sec10-top-main2-txt {
  padding-top: 4rem;
  padding-left: 1.5rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-main2-txt {
    padding-left: 0;
    padding-top: 2rem;
  }
}
.sec10-top-main2-txt .txt-fs16 {
  margin-top: 2rem;
}

.sec10-top-slider {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding-top: 13rem;
  padding-bottom: 3.5rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-slider {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top-slider {
    padding-top: 6rem;
  }
}
.sec10-top-slider .sec10-top-slider-left {
  width: 24rem;
}
@media screen and (max-width: 1400px) {
  .sec10-top-slider .sec10-top-slider-left {
    width: 18rem;
  }
}
@media screen and (max-width: 999px) {
  .sec10-top-slider .sec10-top-slider-left {
    width: 100%;
  }
}
.sec10-top-slider .sec10-top-slider-left .tlth3-style1 .eng {
  color: #97CFE3;
}
.sec10-top-slider .sec10-top-slider-left .tlth3-style1 .jpn {
  color: #009CCA;
}
.sec10-top-slider .sec10-top-slider-right {
  width: calc(100% - 24rem);
}
@media screen and (max-width: 1400px) {
  .sec10-top-slider .sec10-top-slider-right {
    width: calc(100% - 18rem);
  }
}
@media screen and (max-width: 999px) {
  .sec10-top-slider .sec10-top-slider-right {
    width: 100%;
  }
}

.sec10-top-slider-name {
  background-color: #F2FAFC;
  width: 89%;
  margin-top: -10rem;
  position: relative;
  z-index: 2;
  margin-left: auto;
  border-top-left-radius: 0.5rem;
  padding-left: 5rem;
  padding-top: 4.5rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-slider-name {
    margin-top: -8rem;
    padding-left: 3rem;
    padding-top: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top-slider-name {
    margin-top: -6rem;
    padding-left: 2rem;
    padding-top: 2.5rem;
    width: 91%;
  }
}
.sec10-top-slider-name .txt-fs15 {
  color: #909094;
}

.txt-fs15 {
  font-size: 1.5rem;
}

.sec10-top-slider-namekt {
  padding-top: 0.9rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .sec10-top-slider-namekt {
    padding-bottom: 0.4rem;
  }
}

.sec10-top-slider-left {
  padding-top: 3.8rem;
}
@media screen and (max-width: 999px) {
  .sec10-top-slider-left {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}

.link-icon-arrow.pre {
  transform: rotate(180deg);
}

.gr-button-pre-next {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  -moz-column-gap: 3.5rem;
       column-gap: 3.5rem;
  padding-top: 4.5rem;
}
@media screen and (max-width: 999px) {
  .gr-button-pre-next {
    padding-top: 3.5rem;
  }
}
.gr-button-pre-next .link-icon-arrow {
  cursor: pointer;
}

.sec11-top {
  padding-top: 14rem;
}
@media screen and (max-width: 999px) {
  .sec11-top {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top {
    padding-top: 5rem;
  }
}

.sec11-top-ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 4.8rem;
       column-gap: 4.8rem;
  row-gap: 4rem;
  padding-top: 6rem;
}
@media screen and (max-width: 999px) {
  .sec11-top-ul {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    row-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top-ul {
    display: block;
    padding-top: 4rem;
  }
  .sec11-top-ul li + li {
    margin-top: 3rem;
  }
}
.sec11-top-ul li .sec11-top-link {
  display: block;
  position: relative;
  border-radius: 0.5rem;
  overflow: hidden;
}
.sec11-top-ul li .sec11-top-link img {
  transition: all 0.3s ease-in-out;
}
.sec11-top-ul li .sec11-top-link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
.sec11-top-ul li .sec11-top-link:hover img {
  transform: scale(1.1);
}
.sec11-top-ul li .sec11-top-link .sec11-top-link-txt {
  position: absolute;
  bottom: 1rem;
  display: block;
  left: 2rem;
  right: 2rem;
  color: #fff;
  background-image: url(../img/common/image03.png);
  background-size: 4.4rem auto;
  background-repeat: no-repeat;
  background-position: right center;
  z-index: 3;
}
@media screen and (max-width: 999px) {
  .sec11-top-ul li .sec11-top-link .sec11-top-link-txt {
    left: 1rem;
    right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top-ul li .sec11-top-link .sec11-top-link-txt {
    left: 2rem;
    right: 2rem;
  }
}

.sec12-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 21rem;
}
@media screen and (max-width: 999px) {
  .sec12-top {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top {
    display: block;
    padding-top: 5rem;
  }
}

.sec12-top-right {
  width: 88rem;
}
@media screen and (max-width: 999px) {
  .sec12-top-right {
    width: 71rem;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-right {
    width: 100%;
  }
}

.list-new-top-date {
  color: #80CDE4;
  margin-top: 1.3rem;
}

.list-new-top-link {
  display: block;
  background-image: url(../img/common/image06.png);
  background-size: 4.6rem auto;
  background-repeat: no-repeat;
  background-position: right center;
  padding-right: 6rem;
}

.list-new-top li {
  border-bottom: max(1px, 0.2rem) solid #E9E9EB;
  padding-left: 3rem;
  padding-right: 4.5rem;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 13rem;
       column-gap: 13rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .list-new-top li {
    -moz-column-gap: 4rem;
         column-gap: 4rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .list-new-top li {
    display: block;
    padding: 2rem 1.5rem;
  }
}
.list-new-top li:first-child {
  border-top: max(1px, 0.2rem) solid #E9E9EB;
}
.list-new-top li img {
  border-radius: 0.5rem;
}

.sec12-top-right {
  padding-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec12-top-right {
    padding-top: 3rem;
  }
}

.sec12-top-left a {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec12-top-left a {
    margin-top: 2.5rem;
  }
}

.footer1 {
  background-color: #F2FAFC;
  padding-top: 14rem;
  padding-bottom: 14rem;
  background-image: url(../img/common/image09.png);
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 999px) {
  .footer1 {
    margin-top: 8rem;
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .footer1 {
    margin-top: 5rem;
    padding: 5rem 0;
  }
}

.caping-foote-top {
  margin-top: 12rem;
}

.footer1-cont {
  max-width: 148.6rem;
  display: flex;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  justify-content: space-between;
}
.footer1-cont .tlth3-style2.contact {
  margin-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .footer1-cont .tlth3-style2.contact {
    text-align: center;
  }
}
@media screen and (max-width: 999px) {
  .footer1-cont {
    display: block;
  }
}

.tlth3-style2.contact {
  line-height: 1;
}
.tlth3-style2.contact .jp {
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  .tlth3-style2.contact .jp {
    font-size: 2rem;
  }
}
.tlth3-style2.contact .eng {
  font-size: 6.4rem;
  margin-top: 2rem;
}
@media screen and (max-width: 1400px) {
  .tlth3-style2.contact .eng {
    font-size: 5rem;
  }
}
@media screen and (max-width: 999px) {
  .tlth3-style2.contact .eng {
    font-size: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .tlth3-style2.contact .eng {
    font-size: 3rem;
    margin-top: 1rem;
  }
}

.footer1-right-item-tlt {
  position: relative;
  padding-top: 1rem;
}
.footer1-right-item-tlt:before, .footer1-right-item-tlt:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: max(1px, 0.1rem);
}
.footer1-right-item-tlt:before {
  width: 100%;
  background-color: #D3D3D4;
}
.footer1-right-item-tlt:after {
  width: 8rem;
  background-color: #F2774A;
}

.footer1-right-item-linkm {
  display: inline-block;
}

.footer1-right-item-linkmicon {
  display: inline-block;
  width: 6.6rem;
  height: 3.4rem;
  background-color: #E5F5FA;
  border-radius: 100rem;
  display: block;
  background-image: url(../img/common/image04.png);
  background-size: 60% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
  background-image: url(../img/common/image05.png);
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .footer1-right-item-linkmicon {
    width: 5.4rem;
    height: 3rem;
  }
}
.footer1-right-item-linkmicon:hover {
  background-color: #009CCA;
  background-image: url(../img/common/image03.png);
}

.footer1-right-item-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.footer1-right-item {
  width: 36rem;
}
@media screen and (max-width: 1400px) {
  .footer1-right-item {
    width: 34rem;
  }
}
@media screen and (max-width: 999px) {
  .footer1-right-item {
    width: 46%;
  }
}
@media screen and (max-width: 767px) {
  .footer1-right-item {
    width: 100%;
  }
}

.footer1-right {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 999px) {
  .footer1-right {
    -moz-column-gap: 0;
         column-gap: 0;
    justify-content: space-between;
    padding-top: 3rem;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .footer1-right {
    width: 100%;
    display: block;
  }
  .footer1-right .footer1-right-item + .footer1-right-item {
    margin-top: 3rem;
  }
}

.footer1-right-item-sub {
  margin-top: 1.5rem;
  margin-bottom: 12.8rem;
}
@media screen and (max-width: 767px) {
  .footer1-right-item-sub {
    margin-bottom: 4.8rem;
  }
}

.footer1-right-item-box {
  width: 100%;
  height: 26rem;
  border: max(1px, 0.1rem) solid #D1D1D2;
  border-radius: 0.5rem;
  background-color: #fff;
  background-image: url(../img/common/image07.png);
  background-size: 3.5rem auto;
  background-repeat: no-repeat;
  background-position: top 2.5rem left 3rem;
  padding-top: 10rem;
  padding-left: 4.3rem;
  margin-top: 2.7rem;
}
@media screen and (max-width: 767px) {
  .footer1-right-item-box {
    height: auto;
    padding-top: 8rem;
    padding-left: 3.3rem;
    padding-bottom: 4rem;
  }
}
.footer1-right-item-box img {
  width: 23rem;
}
.footer1-right-item-box .txt-fs14 {
  color: #909094;
  padding-top: 2rem;
}

@media screen and (max-width: 999px) {
  .footer1-left {
    text-align: center;
  }
}

.footer2 {
  background-color: #F2FAFC;
  padding-top: 14rem;
}
@media screen and (max-width: 999px) {
  .footer2 {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .footer2 {
    padding-top: 5rem;
  }
}

.logo-ft-mask {
  width: 25rem;
}

.lh15 {
  line-height: 1.5;
}

.footer2-left {
  padding-left: 1.5rem;
}
@media screen and (max-width: 1400px) {
  .footer2-left {
    padding-left: 0;
  }
}
@media screen and (max-width: 999px) {
  .footer2-left {
    text-align: center;
  }
}

.footer2-left-sub {
  padding-top: 3rem;
}

.footer2-right-menu-child {
  color: #909094;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 0.6rem;
  padding-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .footer2-right-menu-child {
    padding-top: 1.4rem;
  }
}
.footer2-right-menu-child a {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.footer2-right-menu-child span {
  font-size: 0.8rem;
  font-weight: 700;
  color: #FBD6C9;
}

.footer2-right-menu-parent {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 1.2rem;
  margin-left: 11rem;
}
@media screen and (max-width: 1400px) {
  .footer2-right-menu-parent {
    margin-left: 5rem;
  }
}
@media screen and (max-width: 999px) {
  .footer2-right-menu-parent {
    margin-left: 0;
  }
}

.footer2-right-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding-right: 6.6rem;
}
@media screen and (max-width: 1400px) {
  .footer2-right-menu {
    padding-right: 0;
  }
}
@media screen and (max-width: 999px) {
  .footer2-right-menu {
    justify-content: center;
    -moz-column-gap: 6rem;
         column-gap: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .footer2-right-menu {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 3rem;
    justify-content: space-between;
  }
  .footer2-right-menu li {
    width: 16.2rem;
  }
  .footer2-right-menu li:last-child {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.footer2-right-menu li:nth-child(2) {
  margin-left: 4.5rem;
  margin-right: 12rem;
}
@media screen and (max-width: 1400px) {
  .footer2-right-menu li:nth-child(2) {
    margin-right: 5rem;
  }
}
@media screen and (max-width: 999px) {
  .footer2-right-menu li:nth-child(2) {
    margin: 0;
  }
}

.footer2-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 999px) {
  .footer2-main {
    display: block;
  }
}

@media screen and (max-width: 999px) {
  .footer2-right {
    padding-top: 4rem;
  }
}

.footer3-right {
  width: 100%;
  color: #80CDE4;
  padding-left: 1.5rem;
  padding-top: 18rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1400px) {
  .footer3-right {
    padding-left: 0;
  }
}
@media screen and (max-width: 999px) {
  .footer3-right {
    text-align: center;
    padding-top: 8rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .footer3-right {
    padding-top: 5rem;
  }
}

.footer3 {
  text-align: center;
  color: #909094;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 12rem;
}
@media screen and (max-width: 1200px) {
  .footer3 {
    height: 7rem;
  }
}
@media screen and (max-width: 999px) {
  .footer3 {
    height: auto;
    padding: 4rem 0;
  }
}
@media screen and (max-width: 767px) {
  .footer3 {
    padding: 2rem 0;
  }
}

.scrolltop {
  width: 14rem;
  border: 0;
  outline: 0;
  background-color: transparent;
  position: fixed;
  bottom: 9.5rem;
  right: 1.5rem;
  cursor: pointer;
  z-index: 20;
}
@media screen and (max-width: 1500px) {
  .scrolltop {
    width: 10rem;
  }
}
@media screen and (max-width: 1200px) {
  .scrolltop {
    bottom: 5.5rem;
  }
}
@media screen and (max-width: 767px) {
  .scrolltop {
    width: 8rem;
  }
}

.sec1-banner {
  height: 41.67vw;
  background-image: url(../img/common/image10.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 20rem;
}
@media screen and (max-width: 1200px) {
  .sec1-banner {
    padding-top: 18rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-banner {
    padding-top: 4rem;
    height: 31.67vw;
    background-position: top center;
  }
}
@media screen and (max-width: 767px) {
  .sec1-banner {
    padding-top: 2rem;
    padding-bottom: 2rem;
    height: auto;
    min-height: 25rem;
  }
}

.sec1-banner-brecum {
  color: #fff;
  padding-left: 6rem;
  background-image: url(../img/common/image11.png);
  background-size: 1.8rem auto;
  background-repeat: no-repeat;
  background-position: left 2.5rem top 0.6rem;
}
.sec1-banner-brecum a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 999px) {
  .sec1-banner-brecum {
    padding-left: 4rem;
    background-position: left top 0.6rem;
  }
}

.sec1-banner-tlt .eng {
  display: inline-block;
  color: #009CCA;
  background-color: #fff;
  padding-left: 2.3rem;
  padding-right: 2.3rem;
  border-radius: 100rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-banner-tlt .eng {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.sec1-banner-tlt .jpn {
  font-size: 4.8rem;
  display: block;
  color: #fff;
  padding-top: 2.7rem;
}
@media screen and (max-width: 1400px) {
  .sec1-banner-tlt .jpn {
    font-size: 4rem;
    padding-top: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-banner-tlt .jpn {
    font-size: 3.4rem;
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-banner-tlt .jpn {
    font-size: 2.8rem;
  }
}
.sec1-banner-tlt.center {
  text-align: center;
  padding-top: 4.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-banner-tlt.center {
    padding-top: 3.5rem;
  }
}

.cont-1660 {
  max-width: 166rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.sec1-about-main {
  max-width: 101rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 3;
}

.txt-fs30 {
  font-size: 3rem;
}
@media screen and (max-width: 1400px) {
  .txt-fs30 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  .txt-fs30 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs30 {
    font-size: 2.2rem;
  }
}

.txt-fs32 {
  font-size: 3.2rem;
}
@media screen and (max-width: 1400px) {
  .txt-fs32 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  .txt-fs32 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs32 {
    font-size: 2.2rem;
  }
}

.txt-fs28 {
  font-size: 2.8rem;
}
@media screen and (max-width: 1400px) {
  .txt-fs28 {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .txt-fs28 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs28 {
    font-size: 2rem;
  }
}

.sec1-about-main-tlt {
  text-align: center;
  border-bottom: max(1px, 0.1rem) solid #D1D1D2;
  padding-bottom: 3.7rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec1-about-main-tlt {
    padding-bottom: 1.7rem;
    margin-bottom: 2rem;
  }
}

.sec1-about {
  padding-top: 13rem;
  margin-top: -13.54vw;
  background-image: url(../img/about/image01.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top center;
}
@media screen and (max-width: 1750px) {
  .sec1-about {
    margin-top: -10vw;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 1400px) {
  .sec1-about {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec1-about {
    padding-top: 5rem;
  }
}

.sec1-about-main-img {
  position: relative;
  padding-bottom: 7rem;
}
.sec1-about-main-img .sec1-about-main-img-text {
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -8rem;
}
@media screen and (max-width: 767px) {
  .sec1-about-main-img .sec1-about-main-img-text {
    bottom: 0;
  }
}

.sec2-about {
  text-align: center;
  padding-top: 9.5rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 999px) {
  .sec2-about {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-about {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.sec2-about .txt-fs28 {
  display: inline-block;
  background-color: #212129;
  color: #fff;
  padding-left: 3rem;
  padding-right: 3rem;
  border-radius: 100rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  margin-top: 0.7rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 999px) {
  .sec2-about .txt-fs28 {
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-about .txt-fs28 {
    margin-bottom: 3rem;
  }
}

.sec3-about-item-icon {
  text-align: center;
}
.sec3-about-item-icon .sec3-about-item-iconm {
  width: 9.6em;
}

.sec1-product {
  max-width: 180rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: -16.82vw;
}
@media screen and (max-width: 1800px) {
  .sec1-product {
    margin-top: -5vw;
  }
}
@media screen and (max-width: 767px) {
  .sec1-product {
    margin-top: 0;
  }
}

.sec2-product {
  display: grid;
  grid-template-columns: 43.75% 72rem;
  justify-content: space-between;
  padding-top: 10rem;
}
@media screen and (max-width: 1500px) {
  .sec2-product {
    grid-template-columns: 43.75% 1fr;
    -moz-column-gap: 4%;
         column-gap: 4%;
  }
}
@media screen and (max-width: 999px) {
  .sec2-product {
    -moz-column-gap: 2%;
         column-gap: 2%;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-product {
    display: flex;
    flex-direction: column;
    padding-top: 5rem;
  }
}

.sec2-product-right-tlt {
  font-size: 3.6rem;
}
@media screen and (max-width: 1500px) {
  .sec2-product-right-tlt {
    font-size: 2.4vw;
  }
}
@media screen and (max-width: 999px) {
  .sec2-product-right-tlt {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-product-right-tlt {
    font-size: 2.2rem;
    text-align: center;
  }
}

.sec2-product-ul {
  color: #009CCA;
  display: flex;
  flex-wrap: wrap;
  max-width: 50rem;
  justify-content: space-between;
  row-gap: 1rem;
  padding-top: 3.8rem;
  padding-bottom: 6rem;
}
@media screen and (max-width: 999px) {
  .sec2-product-ul {
    max-width: 38rem;
    padding-top: 2.8rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-product-ul {
    max-width: 100%;
  }
}
.sec2-product-ul li {
  width: 16rem;
  height: 8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: max(2px, 0.4rem) solid #E9E8EA;
}
.sec2-product-ul li:last-child {
  width: 33rem;
}
@media screen and (max-width: 999px) {
  .sec2-product-ul li {
    width: 12rem;
    height: 6rem;
  }
  .sec2-product-ul li:last-child {
    width: 25rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-product-ul li {
    width: 48%;
    height: 5.5rem;
  }
  .sec2-product-ul li:last-child {
    width: 100%;
  }
}

.sec2-product-right {
  padding-top: 2.3rem;
}
@media screen and (max-width: 999px) {
  .sec2-product-right {
    padding-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec2-product-left {
    margin-bottom: 2rem;
  }
}

.sec3-product {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
  margin-top: 15rem;
  padding-bottom: 13rem;
}
@media screen and (max-width: 999px) {
  .sec3-product {
    margin-top: 8rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-product {
    margin-top: 5rem;
    padding-bottom: 16rem;
  }
}

.sec3-product1200 {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}

.txt-fs36 {
  font-size: 3.6rem;
}
@media screen and (max-width: 1500px) {
  .txt-fs36 {
    font-size: 2.4vw;
  }
}
@media screen and (max-width: 999px) {
  .txt-fs36 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs36 {
    font-size: 2.2rem;
  }
}

.sec3-product-tlt {
  display: grid;
  grid-template-columns: max-content 59rem;
  justify-content: space-between;
  padding-top: 4rem;
}
@media screen and (max-width: 999px) {
  .sec3-product-tlt {
    grid-template-columns: max-content 53rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-product-tlt {
    display: block;
    padding-top: 2rem;
  }
}
.sec3-product-tlt .txt-fs16 {
  margin-top: 1rem;
}

.sec4-product-main {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}

.sec4-product-left {
  width: 76.7%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 999px) {
  .sec4-product-left {
    width: 79.7%;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product-left {
    width: 100%;
    row-gap: 4rem;
  }
}

.sec4-product-left-item {
  width: 36rem;
  background-color: #F4F4F4;
  height: 33rem;
  border-top: 1rem solid #F2774A;
  padding-top: 2rem;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 999px) {
  .sec4-product-left-item {
    height: 31rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product-left-item {
    width: 100%;
    height: auto;
    padding-bottom: 3rem;
  }
}
.sec4-product-left-item:before {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  right: 0;
  width: 3rem;
  height: 1.6rem;
  background-image: url(../img/product/image06.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top right;
}
.sec4-product-left-item .txt-fs26 {
  text-align: center;
}
.sec4-product-left-item .txt-fs16 {
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .sec4-product-left-item .txt-fs16 {
    max-width: calc(100% - 3rem);
  }
}
.sec4-product-left-item .sec4-product-left-icon {
  height: 10rem;
  text-align: center;
  padding-top: 1.8rem;
}
.sec4-product-left-item:nth-child(2) {
  margin-top: 8.8rem;
}
@media screen and (max-width: 999px) {
  .sec4-product-left-item:nth-child(2) {
    margin-top: 4.8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product-left-item:nth-child(2) {
    margin: 0;
  }
}
.sec4-product-left-item:nth-child(3) {
  margin-top: -6rem;
  margin-left: 16rem;
}
@media screen and (max-width: 999px) {
  .sec4-product-left-item:nth-child(3) {
    margin-top: 4rem;
    margin-left: 12rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product-left-item:nth-child(3) {
    margin: 0;
  }
}

.sec4-product-right {
  position: relative;
  padding-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .sec4-product-right {
    padding-bottom: 0;
  }
}
.sec4-product-right .sec4-product-right-icon {
  position: absolute;
  width: 55.4%;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 999px) {
  .sec4-product-right .sec4-product-right-icon {
    width: 47.4%;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product-right .sec4-product-right-icon {
    width: 100%;
    z-index: -1;
    top: -28rem;
    bottom: auto;
    opacity: 0.8;
  }
}

.sec4-product {
  background-image: url(../img/product/image08.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom 22.7rem center;
}
@media screen and (max-width: 1600px) {
  .sec4-product {
    background-position: bottom 8.82vw center;
  }
}
@media screen and (max-width: 999px) {
  .sec4-product {
    background-position: bottom center;
  }
}
@media screen and (max-width: 767px) {
  .sec4-product {
    padding-bottom: 10rem;
  }
}

.tlt-style3 {
  display: inline-block;
  background-color: #212129;
  color: #fff;
  padding-left: 3rem;
  padding-right: 3rem;
  border-radius: 100rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}

.sec5-product-tlt {
  text-align: center;
  padding-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .sec5-product-tlt {
    padding-bottom: 5rem;
  }
}

.sec5-product {
  padding-top: 18rem;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec5-product {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product {
    padding-bottom: 5rem;
    background: #7DC6E0;
    background: linear-gradient(0deg, rgb(125, 198, 224) 0%, rgba(125, 198, 224, 0.63) 50%, rgba(125, 198, 224, 0.37) 75%, rgb(255, 255, 255) 100%);
  }
}
.sec5-product:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../img/product/image11.jpg);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -1;
}
@media screen and (max-width: 1500px) {
  .sec5-product:before {
    bottom: auto;
    height: 200rem;
    background-size: cover;
  }
}
@media screen and (max-width: 999px) {
  .sec5-product:before {
    height: 170rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product:before {
    content: none;
  }
}

.sec5-product-card {
  display: grid;
  grid-template-columns: 48.3% 48.3%;
  justify-content: space-between;
  row-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .sec5-product-card {
    display: block;
  }
  .sec5-product-card .sec5-product-card-mode + .sec5-product-card-mode {
    margin-top: 3rem;
  }
}
.sec5-product-card .sec5-product-card-mode:nth-child(2n) .sec5-product-card-item {
  transform: translateY(4rem);
}
@media screen and (max-width: 767px) {
  .sec5-product-card .sec5-product-card-mode:nth-child(2n) .sec5-product-card-item {
    transform: none;
  }
}
.sec5-product-card .sec5-product-card-item {
  background-color: rgba(0, 156, 202, 0.5);
  padding: 0 3.6rem;
  padding-top: 5.5rem;
  padding-bottom: 4rem;
  color: #fff;
  border: max(1px, 0.1rem) solid #19A6CF;
  border-radius: 0.5rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-card .sec5-product-card-item {
    padding: 2rem;
  }
}
.sec5-product-card .sec5-product-card-item .txt-fs30 {
  padding-left: 2rem;
  padding-top: 2.5rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-card .sec5-product-card-item .txt-fs30 {
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-card .sec5-product-card-item .txt-fs30 {
    padding-left: 0;
  }
}
.sec5-product-card .sec5-product-card-item .sec5-product-card-box-content {
  background-color: #19A6CF;
  padding-left: 3.8rem;
  padding-right: 3.8rem;
  padding-top: 2.8rem;
  border-radius: 0.5rem;
  min-height: 20rem;
}
@media screen and (max-width: 767px) {
  .sec5-product-card .sec5-product-card-item .sec5-product-card-box-content {
    min-height: auto;
    padding: 2rem 1.5rem;
  }
}

.sec5-product-card-item-point {
  display: inline-flex;
  background-color: #19A6CF;
  color: #fff;
  border-radius: 100rem;
  padding: 0.6rem 1.5rem;
}

.sec5-product-bottom {
  background-color: #fff;
  box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
  border-radius: 0.5rem;
  padding-top: 12rem;
  margin-top: 14rem;
  padding-bottom: 13rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-bottom {
    padding-top: 8rem;
    margin-top: 12rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-bottom {
    padding-top: 5rem;
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec5-product-bottom-txt {
  text-align: center;
  margin-top: 1.5rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-bottom-txt {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-bottom-txt {
    margin-bottom: 2rem;
  }
}

.sec5-product-bottom-step li {
  display: grid;
  grid-template-columns: 53.8rem 1fr;
  align-items: flex-start;
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
  padding-right: 9.6rem;
  padding-top: 4.8rem;
  padding-bottom: 4.5rem;
  position: relative;
}
@media screen and (max-width: 1400px) {
  .sec5-product-bottom-step li {
    padding-right: 4.6rem;
  }
}
@media screen and (max-width: 999px) {
  .sec5-product-bottom-step li {
    grid-template-columns: 43.8rem 1fr;
    padding-right: 1.5rem;
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-bottom-step li {
    display: block;
    padding-right: 0;
    padding-bottom: 2rem;
  }
}
.sec5-product-bottom-step li:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 14rem;
  background-image: url(../img/product/image10.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  width: 3.1rem;
  height: 2rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-bottom-step li:before {
    left: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-bottom-step li:before {
    left: 2rem;
  }
}
.sec5-product-bottom-step li:last-child:before {
  content: none;
}

.sec5-product-bottom-left {
  display: grid;
  grid-template-columns: 11rem 1fr;
  padding-left: 11.7rem;
}
@media screen and (max-width: 999px) {
  .sec5-product-bottom-left {
    padding-left: 3.7rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-product-bottom-left {
    padding-left: 0;
    grid-template-columns: 8rem 1fr;
    padding-bottom: 1.5rem;
  }
}

.sec5-product-count {
  font-size: 1.8rem;
  color: #009CCA;
  line-height: 1;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0.3rem;
  padding-top: 1rem;
  width: -moz-max-content;
  width: max-content;
}
.sec5-product-count span {
  font-size: 4.6rem;
}
@media screen and (max-width: 767px) {
  .sec5-product-count span {
    font-size: 3.6rem;
  }
}

.sec5-product-bottom-link {
  display: inline-block;
  background-color: #E9E8EA;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  border-radius: 0.5rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  transition: all 0.3s ease-in-out;
  margin-top: 1.3rem;
}
.sec5-product-bottom-link:hover {
  background-color: #009CCA;
  color: #fff;
}

.sec1-banner-style2-right {
  width: 70rem;
  padding-top: 8.85vw;
  margin-left: auto;
}
@media screen and (max-width: 1400px) {
  .sec1-banner-style2-right {
    width: 63rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-banner-style2-right {
    width: 100%;
    text-align: center;
    padding-top: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-banner-style2-right {
    padding-top: 3.5rem;
  }
}
.sec1-banner-style2-right .txt-fs16 {
  color: #fff;
  margin-top: 2.3rem;
  padding-right: 4rem;
}
@media screen and (max-width: 1400px) {
  .sec1-banner-style2-right .txt-fs16 {
    padding-right: 0;
  }
}
@media screen and (max-width: 999px) {
  .sec1-banner-style2-right .txt-fs16 {
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.banner-subchild-txt-log {
  width: 70rem;
  margin-left: auto;
}
@media screen and (max-width: 1400px) {
  .banner-subchild-txt-log {
    width: 63rem;
  }
}
@media screen and (max-width: 999px) {
  .banner-subchild-txt-log {
    width: 100%;
  }
}
.banner-subchild-txt-log .txt-fs16 {
  padding-right: 3rem;
}
@media screen and (max-width: 1400px) {
  .banner-subchild-txt-log .txt-fs16 {
    padding-right: 0;
  }
}

.lh23 {
  line-height: 2.3;
}

.banner-subchild {
  position: relative;
}
.banner-subchild .banner-subchild-img {
  position: absolute;
  top: -25.16vw;
  left: 0;
  width: 42.5%;
}
@media screen and (max-width: 1600px) {
  .banner-subchild .banner-subchild-img {
    top: -42rem;
  }
}
@media screen and (max-width: 1400px) {
  .banner-subchild .banner-subchild-img {
    top: -36rem;
  }
}
@media screen and (max-width: 999px) {
  .banner-subchild .banner-subchild-img {
    position: static;
    width: 100%;
  }
}
.banner-subchild .banner-subchild-img img {
  border-radius: 0.5rem;
}

.banner-subchild-txt {
  padding-top: 7rem;
}
@media screen and (max-width: 999px) {
  .banner-subchild-txt {
    padding-top: 0;
  }
}

@media screen and (min-width: 1000px) {
  .sec1-banner--style2 {
    min-height: 75rem;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1400px) {
  .sec1-banner--style2 {
    min-height: 70rem;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1200px) {
  .sec1-banner--style2 {
    min-height: 66rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-banner--style2 {
    height: auto;
    padding-bottom: 5rem;
  }
}

@media screen and (max-width: 999px) {
  .banner-sub-img-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    padding-top: 8rem;
  }
  .banner-sub-img-content.support {
    display: block;
    max-width: 70rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .banner-sub-img-content {
    display: flex;
    padding-top: 5rem;
    flex-direction: column;
    row-gap: 3rem;
  }
}

@media screen and (max-width: 999px) {
  .banner-subchild-laptop {
    display: none;
  }
}

.sec2-lead {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  padding-top: 13rem;
}
@media screen and (max-width: 999px) {
  .sec2-lead {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-lead {
    display: block;
    padding-top: 5rem;
  }
  .sec2-lead .sec2-lead-img + .sec2-lead-img {
    margin-top: 2.5rem;
  }
}

.sec3-lead {
  display: grid;
  grid-template-columns: 20rem 1fr;
  padding-top: 5.5rem;
  padding-bottom: 10rem;
}
@media screen and (max-width: 999px) {
  .sec3-lead {
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-lead {
    padding: 5rem 0;
    display: block;
  }
}

.sec3-lead-right {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
  margin-top: 4.8rem;
  padding-left: 11.6rem;
  padding-top: 3rem;
}
@media screen and (max-width: 999px) {
  .sec3-lead-right {
    padding-left: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-lead-right {
    margin-top: 1rem;
    padding-left: 0;
  }
}
.sec3-lead-right .txt-fs16 {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .sec3-lead-right .txt-fs16 {
    margin-top: 1rem;
  }
}

.lh17 {
  line-height: 1.7;
}

.dots-blue {
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  -moz-column-gap: 1.7rem;
       column-gap: 1.7rem;
}
.dots-blue:before {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  background-color: #009CCA;
}
@media screen and (min-width: 768px) {
  .dots-blue.txt-fs20:before {
    width: 0.8rem;
    height: 0.8rem;
  }
}
@media screen and (max-width: 767px) {
  .dots-blue.txt-fs20 {
    align-items: flex-start;
  }
  .dots-blue.txt-fs20:before {
    margin-top: 1.5rem;
  }
}
.dots-blue.skin:before {
  opacity: 0;
}

.sec4-lead {
  background-color: #E5F5FA;
  padding-top: 7rem;
  padding-bottom: 14rem;
  background-image: url(../img/plastic/image04.png);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 90rem auto;
}
@media screen and (max-width: 999px) {
  .sec4-lead {
    padding-bottom: 8rem;
    background-size: 100% auto;
  }
}
@media screen and (max-width: 767px) {
  .sec4-lead {
    padding: 5rem 0;
  }
}

.list-point-lead {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  row-gap: 3rem;
}
@media screen and (max-width: 767px) {
  .list-point-lead {
    display: block;
  }
  .list-point-lead li + li {
    margin-top: 3rem;
  }
}
.list-point-lead li {
  background-color: #fff;
  border-radius: 0.5rem;
  border: max(1px, 0.1rem) solid rgba(0, 156, 202, 0.3);
  min-height: 29rem;
  padding: 0 3.5rem;
  padding-top: 3.3rem;
  padding-bottom: 2rem;
  display: grid;
  grid-template-columns: 10rem 1fr;
}
@media screen and (max-width: 767px) {
  .list-point-lead li {
    padding: 2.5rem 1.5rem;
    min-height: auto;
    display: block;
  }
  .list-point-lead li .list-point-lead-left {
    padding-bottom: 1.5rem;
    text-align: center;
  }
}
.list-point-lead li .txt-fs22 {
  padding-bottom: 1.5rem;
  color: #4D4D54;
}
@media screen and (max-width: 767px) {
  .list-point-lead li .txt-fs22 {
    text-align: center;
  }
}

.txt-fs22 {
  font-size: 2.2rem;
}
@media screen and (max-width: 999px) {
  .txt-fs22 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .txt-fs22 {
    font-size: 1.8rem;
  }
}

.sec4-lead-right {
  max-width: 100rem;
  margin-left: auto;
  padding-top: 0.7rem;
}
@media screen and (max-width: 999px) {
  .sec4-lead-right {
    padding-top: 3rem;
  }
}

@media screen and (max-width: 999px) {
  .view-laptop {
    display: none;
  }
}

.sec1-support {
  display: grid;
  grid-template-columns: 60.6% 28.1%;
  justify-content: space-between;
  padding-top: 25rem;
}
@media screen and (max-width: 1400px) {
  .sec1-support {
    grid-template-columns: 62.6% 31.1%;
    padding-top: 19rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-support {
    grid-template-columns: 55.6% 42.1%;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-support {
    display: block;
    padding-top: 5rem;
  }
}

.sec1-support-left {
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .sec1-support-left {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
.sec1-support-left .txt-fs36 {
  padding-bottom: 5.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-support-left .txt-fs36 {
    padding-bottom: 3rem;
  }
}

.sec2-support {
  padding-top: 11.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-support {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-support {
    padding-top: 5rem;
  }
}
.sec2-support .txt-fs32 {
  padding-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec2-support .txt-fs32 {
    padding-bottom: 2rem;
  }
}

.sec2-support-ul {
  max-width: 116rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 5.5rem;
       column-gap: 5.5rem;
  padding-top: 6rem;
}
@media screen and (max-width: 999px) {
  .sec2-support-ul {
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-support-ul {
    display: block;
    padding-top: 5rem;
  }
  .sec2-support-ul li + li {
    margin-top: 5rem;
  }
}
.sec2-support-ul li .sec2-support-img img {
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem rgba(19, 15, 107, 0.25);
}
.sec2-support-ul li .txt-fs24 {
  padding-left: 1rem;
  padding-top: 0.7rem;
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec2-support-ul li .txt-fs24 {
    padding-bottom: 1.5rem;
    padding-top: 2rem;
  }
}

.sec3-support {
  display: grid;
  grid-template-columns: 52.5% 1fr;
  -moz-column-gap: 3.1%;
       column-gap: 3.1%;
  padding-top: 20.8rem;
  padding-bottom: 14.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-support {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec3-support {
    padding: 5rem 0;
    display: flex;
    flex-direction: column-reverse;
  }
}
.sec3-support .txt-fs32 {
  padding-bottom: 6.4rem;
}
@media screen and (max-width: 1400px) {
  .sec3-support .txt-fs32 {
    padding-bottom: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec3-support .txt-fs32 {
    padding-bottom: 1.5rem;
  }
}
.sec3-support .sec3-support-right {
  padding-top: 2.1rem;
}
@media screen and (max-width: 999px) {
  .sec3-support .sec3-support-right {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec3-support .sec3-support-right {
    padding-bottom: 3rem;
  }
}

.sec1-others {
  border: max(1px, 0.1rem) solid #E9E8EA;
  border: max(1px, 0.1rem) solid #E9E8EA;
  border-radius: 0.5rem;
}

.tlt-style4 {
  color: #4D4D54;
  -moz-column-gap: 2.9rem;
       column-gap: 2.9rem;
  display: grid;
  grid-template-columns: max-content 1fr;
}
.tlt-style4:before {
  content: "";
  display: inline-block;
  width: 3rem;
  height: 1.6rem;
  background-color: #D3D3D4;
  margin-top: 1rem;
}

.sec1-others {
  display: grid;
  grid-template-columns: 53rem 46rem;
  justify-content: space-between;
  padding-right: 7rem;
  padding-top: 3rem;
  padding-bottom: 4rem;
  margin-top: 6rem;
}
@media screen and (max-width: 999px) {
  .sec1-others {
    grid-template-columns: 46rem 39rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-others {
    display: block;
    padding: 3rem 1.5rem;
    margin-top: 5rem;
  }
}
.sec1-others .sec1-others-left {
  padding-top: 1.3rem;
}
@media screen and (max-width: 767px) {
  .sec1-others .sec1-others-left {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
.sec1-others .sec1-others-left .txt-fs16 {
  max-width: 40rem;
  margin-left: auto;
  margin-top: 6.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-others .sec1-others-left .txt-fs16 {
    max-width: 100%;
    margin-top: 2rem;
  }
}

.sec2-others {
  padding-top: 8.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-others {
    padding-top: 5rem;
  }
}

.sec2-others-ul {
  max-width: 112rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 6rem;
  padding-top: 8.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-others-ul {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-others-ul {
    display: block;
    padding-left: 0;
    padding-right: 0;
    padding-top: 3rem;
  }
  .sec2-others-ul li + li {
    margin-top: 5rem;
  }
}
.sec2-others-ul li {
  border: max(1px, 0.1rem) solid #D3D3D4;
  border-radius: 0.5rem;
  height: 24rem;
  color: #4D4D54;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background-color: #fff;
  padding-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec2-others-ul li {
    height: 20rem;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-others-ul li {
    height: 12rem;
    padding-bottom: 3rem;
  }
}
.sec2-others-ul li .sec2-others-number {
  line-height: 1;
  width: 4.6rem;
  height: 4.6rem;
  color: #009CCA;
  border-radius: 100rem;
  font-size: 1.8rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #E5F5FA;
  position: absolute;
  top: -1.8rem;
  left: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec2-others-ul li .sec2-others-number {
    left: 1.5rem;
    top: 50%;
    transform: translateY(-50%) scale(0.9);
  }
}
.sec2-others-ul li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: 3rem;
  height: 6rem;
  background-image: url(../img/others/image05.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left center;
  transform: translateY(-50%);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec2-others-ul li:before {
    background-image: url(../img/others/image06.png);
    width: 6rem;
    height: 3rem;
    top: calc(100% + 1rem);
    left: 50%;
    transform: translateX(-50%) scale(0.8);
  }
}
.sec2-others-ul li:nth-child(6n):after {
  content: "";
  position: absolute;
  top: 50%;
  left: -2rem;
  width: 3rem;
  height: 6rem;
  background-image: url(../img/others/image05.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left center;
  transform: translateY(-50%);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec2-others-ul li:nth-child(6n):after {
    content: none;
  }
}
@media screen and (min-width: 768px) {
  .sec2-others-ul li:nth-child(5n):before {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .sec2-others-ul li:last-child:before {
    content: none;
  }
}

.sec3-others {
  padding-left: 8.5rem;
  padding-top: 7.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-others {
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec3-others {
    padding-top: 3rem;
  }
}

.sec4-others {
  text-align: right;
  padding-right: 2rem;
  margin-top: -1.4rem;
}
@media screen and (max-width: 767px) {
  .sec4-others {
    padding-right: 0;
    margin-top: 3rem;
  }
}
.sec4-others img {
  width: 39rem;
}
@media screen and (max-width: 767px) {
  .sec4-others img {
    width: 100%;
  }
}

@media screen and (min-width: 1000px) {
  .banner-shorts .sec1-banner {
    height: 50rem;
    background-position: top 0 center;
  }
}

.sec1-case {
  display: flex;
  flex-wrap: wrap;
  padding-top: 10rem;
  padding-bottom: 20rem;
}
@media screen and (max-width: 999px) {
  .sec1-case {
    padding-top: 8rem;
    padding-bottom: 0;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .sec1-case {
    padding-top: 5rem;
  }
}
.sec1-case .sec1-case-left {
  width: -moz-max-content;
  width: max-content;
}
@media screen and (min-width: 1000px) {
  .sec1-case .sec1-case-left {
    min-width: 20rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-case .sec1-case-left {
    width: 100%;
  }
}
.sec1-case .sec1-case-right {
  width: 100rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1400px) {
  .sec1-case .sec1-case-right {
    width: 93rem;
    margin-right: 0;
  }
}
@media screen and (max-width: 999px) {
  .sec1-case .sec1-case-right {
    width: 100%;
    padding-top: 3rem;
  }
}

.sec1-case-list-category {
  padding-left: 1.5rem;
}
@media screen and (min-width: 1000px) {
  .sec1-case-list-category {
    padding-top: 12rem;
    padding-bottom: 3rem;
    position: sticky;
    top: 3rem;
    left: 0;
  }
}
@media screen and (max-width: 999px) {
  .sec1-case-list-category {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: 4rem;
         column-gap: 4rem;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec1-case-list-category {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
.sec1-case-list-category li + li {
  margin-top: 2.4rem;
}
@media screen and (max-width: 999px) {
  .sec1-case-list-category li + li {
    margin-top: 0;
  }
}

.sec1-case-list-category-item {
  color: #909094;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.3rem;
       column-gap: 1.3rem;
  transition: all 0.3s ease-in-out;
}
.sec1-case-list-category-item:before {
  content: "";
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #909094;
  transition: all 0.3s ease-in-out;
}
.sec1-case-list-category-item:hover, .sec1-case-list-category-item.is-active {
  color: #212129;
}
.sec1-case-list-category-item:hover:before, .sec1-case-list-category-item.is-active:before {
  background-color: #F2774A;
}

.sec1-case-right-ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.8rem;
}
@media screen and (max-width: 767px) {
  .sec1-case-right-ul {
    display: block;
  }
  .sec1-case-right-ul li + li {
    margin-top: 3rem;
  }
}
.sec1-case-right-ul li {
  border: max(1px, 0.1rem) solid #E9E8EA;
  border-radius: 0.5rem;
  padding: 2rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .sec1-case-right-ul li {
    padding: 1.5rem;
    padding-bottom: 2.5rem;
  }
}

.sec1-case-right-img img {
  height: 18rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  border-radius: 0.5rem;
  width: 100%;
}
@media screen and (max-width: 999px) {
  .sec1-case-right-img img {
    height: 20rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-case-right-img img {
    height: 22rem;
  }
}

.sec1-case-right-category {
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  display: inline-block;
  background-color: #4D4D54;
  padding-left: 1.2rem;
  padding-right: 1.2rem;
  border-radius: 10rem;
}
@media screen and (max-width: 767px) {
  .sec1-case-right-category {
    font-size: 1.5rem;
  }
}

.sec1-case-right-date {
  display: inline-block;
  color: #80CDE4;
}

.sec1-case-right-date-cate {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 1.4rem;
       column-gap: 1.4rem;
  padding-top: 1.7rem;
  padding-bottom: 1.6rem;
}

.lh13 {
  line-height: 1.3;
}

.page-pagination {
  color: #D3D3D4;
}
.page-pagination .dflex-aic-jcc {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  justify-content: center;
}
.page-pagination .dflex-aic-jcc a {
  transition: all 0.3s ease-in-out;
}
.page-pagination .dflex-aic-jcc a:hover, .page-pagination .dflex-aic-jcc a.current {
  color: #212129;
}

.page-pagination--case .dflex-jcc-aic {
  padding-top: 9rem;
}
@media screen and (max-width: 999px) {
  .page-pagination--case .dflex-jcc-aic {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .page-pagination--case .dflex-jcc-aic {
    padding-top: 3rem;
  }
}

.link-parent-ss {
  position: relative;
}
.link-parent-ss .link-parent-ss-child {
  position: absolute;
  top: -12rem;
  left: 0;
}
@media screen and (max-width: 999px) {
  .link-parent-ss .link-parent-ss-child {
    top: -10rem;
  }
}
@media screen and (max-width: 767px) {
  .link-parent-ss .link-parent-ss-child {
    top: -9rem;
  }
}

.sec1-detail-case {
  border-top: max(1px, 0.2rem) solid #E9E8EA;
  margin-top: 10rem;
  padding-top: 4.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-detail-case {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-detail-case {
    margin-top: 5rem;
    padding-top: 3rem;
  }
}

.sec1-detail-case-max {
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .sec1-detail-case-max {
    padding-bottom: 5rem;
  }
}
.sec1-detail-case-max .sec1-case-right-date {
  display: block;
  margin-top: 0.6rem;
  margin-bottom: 1.2rem;
}
.sec1-detail-case-max .sec1-detail-case-slider {
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 4rem;
}
.sec1-detail-case-max .sec1-detail-case-slider .splide__track--nav > .splide__list > .splide__slide {
  border: 0 !important;
}
.sec1-detail-case-max .sec1-detail-case-slider img {
  border-radius: 0.5rem;
  width: 100%;
}
.sec1-detail-case-max .sec1-detail-case-slider #thumbnail-slider img {
  height: 15rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 767px) {
  .sec1-detail-case-max .sec1-detail-case-slider #thumbnail-slider img {
    height: 13rem;
  }
}

.sec1-detail-case-slider-kc {
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .sec1-detail-case-slider-kc {
    padding-top: 1.5rem;
  }
}

.sec2-detail-case {
  background-color: #F4F4F4;
  padding-top: 10.5rem;
  padding-bottom: 25rem;
}
@media screen and (max-width: 999px) {
  .sec2-detail-case {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec2-detail-case {
    padding: 5rem 0;
  }
}
.sec2-detail-case .sec2-detail-case-cont {
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.link-viewmore-detail {
  justify-content: center;
  background-image: url(../img/common/image13.png);
  background-position: left 1.5rem center;
  font-size: 1.6rem;
  color: #212129;
}
.link-viewmore-detail:hover {
  background-image: url(../img/common/image14.png);
}

.sec3-detail-case {
  padding-top: 8rem;
}
@media screen and (min-width: 1000px) {
  .sec3-detail-case {
    padding-bottom: 15rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-detail-case {
    padding-top: 5rem;
  }
}
.sec3-detail-case a {
  margin-left: auto;
  margin-right: auto;
}

.box-txt-common {
  background-color: #E9E9EA;
  color: #4D4D54;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 0.3rem;
  padding-bottom: 0.3rem;
}

.sec1-faciliti {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding-top: 10.5rem;
}
.sec1-faciliti .sec1-faciliti-right {
  width: calc(100% - 20rem);
  margin-left: auto;
  padding-top: 1.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-faciliti .sec1-faciliti-right {
    width: 100%;
    padding-top: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-faciliti {
    display: block;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faciliti {
    padding-top: 5rem;
  }
}

.sec1-faciliti-right-ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  row-gap: 4rem;
  padding-top: 2rem;
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-right-ul {
    display: block;
  }
  .sec1-faciliti-right-ul li + li {
    margin-top: 2.5rem;
  }
}
.sec1-faciliti-right-ul P {
  color: #4D4D54;
  padding-left: 1rem;
  margin-top: 1rem;
}
.sec1-faciliti-right-ul img {
  border-radius: 0.5rem;
}

.sec1-faciliti-tablem {
  width: 100%;
  color: #4D4D54;
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-tablem {
    width: 60rem;
    margin-bottom: 2rem;
  }
}
.sec1-faciliti-tablem tr:first-child td {
  border: max(1px, 0.1rem) solid #E9E8EA;
  border-left: 0;
  border-right: 0;
}
.sec1-faciliti-tablem tr td {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  padding-right: 1rem;
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-tablem tr td {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
  }
}
.sec1-faciliti-tablem tr td:first-child {
  padding-left: 3rem;
  width: 45rem;
}
@media screen and (max-width: 999px) {
  .sec1-faciliti-tablem tr td:first-child {
    padding-left: 1.5rem;
    width: 43rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-tablem tr td:first-child {
    width: 29rem;
    padding-left: 0.5rem;
  }
}
.sec1-faciliti-tablem tr td:nth-child(2) {
  width: 45rem;
}
@media screen and (max-width: 999px) {
  .sec1-faciliti-tablem tr td:nth-child(2) {
    width: 43rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-tablem tr td:nth-child(2) {
    width: 20rem;
  }
}
.sec1-faciliti-tablem tr td:last-child {
  padding-right: 4.4rem;
  width: auto;
  text-align: right;
}
@media screen and (max-width: 999px) {
  .sec1-faciliti-tablem tr td:last-child {
    padding-right: 2rem;
  }
}

.sec1-faciliti-table {
  margin-top: 5.5rem;
  padding-bottom: 1.5rem;
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
}
@media screen and (max-width: 767px) {
  .sec1-faciliti-table {
    overflow: auto;
    margin-top: 3rem;
    padding-bottom: 0;
    border-bottom: 0;
  }
}

.box-txt-common--mgt100 {
  margin-top: 10rem;
}
@media screen and (max-width: 999px) {
  .box-txt-common--mgt100 {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .box-txt-common--mgt100 {
    margin-top: 5rem;
  }
}

.sec2-faciliti {
  padding-top: 18.5rem;
}
@media screen and (min-width: 1000px) {
  .sec2-faciliti {
    padding-bottom: 13.5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec2-faciliti {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-faciliti {
    padding-top: 5rem;
  }
}

.sec2-faciliti-right {
  width: calc(100% - 20rem);
  margin-left: auto;
  padding-top: 0.7rem;
}
@media screen and (max-width: 999px) {
  .sec2-faciliti-right {
    width: 100%;
  }
}

.sec-company-flex {
  display: grid;
  grid-template-columns: 20rem 1fr;
  max-width: 140rem;
}
.sec-company-flex .sec-company-right-1000 {
  width: 100rem;
  margin-left: auto;
}
@media screen and (max-width: 1400px) {
  .sec-company-flex .sec-company-right-1000 {
    width: 76.92vw;
  }
}
@media screen and (max-width: 999px) {
  .sec-company-flex .sec-company-right-1000 {
    width: 100%;
  }
}
@media screen and (max-width: 999px) {
  .sec-company-flex {
    display: block;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec-company-flex {
    padding-top: 5rem;
  }
}
.sec-company-flex .sec-company-left {
  padding-top: 32rem;
  padding-left: 1.5rem;
}
@media screen and (max-width: 1600px) {
  .sec-company-flex .sec-company-left {
    padding-top: 20rem;
  }
}
@media screen and (max-width: 999px) {
  .sec-company-flex .sec-company-left {
    padding-top: 0;
    padding-left: 0;
  }
}

.message1 {
  display: grid;
  grid-template-columns: 42rem 1fr;
  -moz-column-gap: 7.6rem;
       column-gap: 7.6rem;
  padding-top: 5rem;
}
@media screen and (max-width: 1400px) {
  .message1 {
    -moz-column-gap: 3.6rem;
         column-gap: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .message1 {
    display: block;
    padding-top: 3rem;
  }
}
.message1 .message1-left img {
  border-radius: 0.5rem;
}
.message1 .message1-right {
  padding-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .message1 .message1-right {
    padding-top: 3rem;
  }
}
.message1 .message1-right .txt-fs28 {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .message1 .message1-right .txt-fs28 {
    margin-bottom: 2rem;
  }
}
.message1 .message1-rightcky-first {
  font-size: 1.5rem;
}
.message1 .message1-rightcky-last {
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .message1 .message1-rightcky-last {
    font-size: 2.2rem;
  }
}
.message1 .message1-rightcky {
  line-height: 1;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  -moz-column-gap: 2.4rem;
       column-gap: 2.4rem;
  margin-top: 4.5rem;
  padding-right: 3.5rem;
}
@media screen and (max-width: 999px) {
  .message1 .message1-rightcky {
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .message1 .message1-rightcky {
    margin-top: 1.5rem;
  }
}

.sec-company-right {
  padding-top: 10.8rem;
}
@media screen and (max-width: 999px) {
  .sec-company-right {
    padding-top: 5rem;
  }
}

.about--hidden {
  overflow: hidden;
}

.message2 {
  position: relative;
  margin-top: 17rem;
  padding-top: 13rem;
  padding-bottom: 18rem;
}
@media screen and (max-width: 999px) {
  .message2 {
    margin-top: 8rem;
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .message2 {
    margin-top: 5rem;
    padding: 5rem 0;
  }
}
.message2:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100vw;
  right: -100vw;
  bottom: 0;
  background-color: #F4F4F4;
  z-index: -1;
}
.message2 .txt-fs24 {
  max-width: 85.5rem;
  margin-left: auto;
  margin-right: 7.5rem;
  margin-top: 7.5rem;
}
@media screen and (max-width: 999px) {
  .message2 .txt-fs24 {
    max-width: 100%;
    margin-right: 0;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .message2 .txt-fs24 {
    margin-top: 2rem;
  }
}

.about-tlt-eng-jpn .eng {
  display: inline-block;
  padding-left: 1rem;
}

.message3-line {
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
  padding-bottom: 3.8rem;
}
@media screen and (max-width: 999px) {
  .message3-line {
    padding-bottom: 1.8rem;
  }
}

.message3 .txt-fs30 {
  margin-bottom: 0.5rem;
}

.message3-txt {
  margin-top: 4rem;
}
@media screen and (max-width: 999px) {
  .message3-txt {
    margin-top: 2rem;
  }
}

.message3 {
  padding-bottom: 23rem;
  padding-top: 10rem;
}
@media screen and (max-width: 999px) {
  .message3 {
    padding-top: 8rem;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .message3 {
    padding-top: 5rem;
  }
}

@media screen and (min-width: 1000px) {
  .sec-company-left-ul {
    transition: all 0.3s ease-in-out;
    top: 32rem;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1600px) {
  .sec-company-left-ul {
    top: 20rem;
  }
}
@media screen and (min-width: 1000px) {
  .sec-company-left-ul.is-fixed {
    position: fixed;
  }
}
@media screen and (max-width: 999px) {
  .sec-company-left-ul {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: 4rem;
         column-gap: 4rem;
  }
}
.sec-company-left-ul li + li {
  margin-top: 2.7rem;
}
@media screen and (max-width: 999px) {
  .sec-company-left-ul li + li {
    margin-top: 0;
  }
}

.footer-private {
  position: relative;
  z-index: 2;
}

.csr-sec1 {
  display: grid;
  padding-left: 2rem;
  padding-top: 7rem;
  grid-template-columns: 44rem 1fr;
  align-items: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 999px) {
  .csr-sec1 {
    padding-left: 0;
    padding-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .csr-sec1 {
    display: block;
  }
}
.csr-sec1 .txt-fs20 {
  padding-bottom: 1.8rem;
}
@media screen and (max-width: 767px) {
  .csr-sec1 .txt-fs20 {
    padding-bottom: 0.8rem;
  }
}

.csr-sec2 {
  margin-top: 6rem;
  margin-bottom: 4.6rem;
}
@media screen and (max-width: 999px) {
  .csr-sec2 {
    margin-top: 3rem;
    margin-bottom: 2.6rem;
  }
}

.csr-sec3 {
  padding-bottom: 6rem;
}
@media screen and (max-width: 999px) {
  .csr-sec3 {
    padding-bottom: 3rem;
  }
}
.csr-sec3 li + li {
  padding-top: 8rem;
}
@media screen and (max-width: 999px) {
  .csr-sec3 li + li {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .csr-sec3 li + li {
    padding-top: 6rem;
  }
}
.csr-sec3 li {
  display: grid;
  grid-template-columns: 1fr 36rem;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .csr-sec3 li {
    display: block;
  }
}
.csr-sec3 li .txt-fs22 {
  padding-bottom: 0.6rem;
}
.csr-sec3 li .csr-sec3-right {
  padding-top: 5.6rem;
}
@media screen and (max-width: 767px) {
  .csr-sec3 li .csr-sec3-right {
    padding-top: 1.6rem;
  }
}
.csr-sec3 li .csr-sec3-right img {
  height: 6rem;
}
@media screen and (max-width: 767px) {
  .csr-sec3 li .csr-sec3-right img {
    height: auto;
  }
}

.csr-sec4-link-pdf {
  font-size: 1.5rem;
  color: #fff;
  background-color: #009CCA;
  display: inline-block;
  border-radius: 0.5rem;
  padding-left: 1.8rem;
  padding-right: 1.8rem;
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  transition: all 0.3s ease-in-out;
}
.csr-sec4-link-pdf:hover {
  background-color: #F2774A;
}

.csr-sec5 {
  margin-top: 17.8rem;
}
@media screen and (max-width: 999px) {
  .csr-sec5 {
    margin-top: 4.8rem;
  }
}
@media screen and (max-width: 767px) {
  .csr-sec5 {
    margin-top: 5rem;
    letter-spacing: -0.05rem;
  }
}

.csr-sec6 {
  padding-left: 2rem;
  padding-top: 7rem;
  padding-bottom: 15.5rem;
}
@media screen and (max-width: 999px) {
  .csr-sec6 {
    padding-bottom: 0;
    padding-top: 3rem;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .csr-sec6 {
    padding-top: 1rem;
  }
}
.csr-sec6 li + li {
  margin-top: 1rem;
}

@media screen and (max-width: 767px) {
  .csr-sec1-right {
    padding-top: 2.5rem;
  }
}

.table-company-stylelist {
  width: 100%;
}
.table-company-stylelist tr td:first-child {
  font-weight: 700;
  width: 27rem;
}
@media screen and (max-width: 767px) {
  .table-company-stylelist tr td:first-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .table-company-stylelist tr td:last-child {
    border-top: 0;
  }
}
.table-company-stylelist tr td {
  width: calc(100% - 27rem);
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .table-company-stylelist tr td {
    width: 100% !important;
    float: left;
  }
}
.table-company-stylelist tr:first-child td {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
}
@media screen and (max-width: 767px) {
  .table-company-stylelist tr:first-child td:last-child {
    border-top: 0;
  }
}

.sec1-company {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec1-company {
    padding-top: 3rem;
  }
}

.company-gridtable {
  display: grid;
  grid-template-columns: 23rem 1fr;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .company-gridtable {
    display: block;
  }
}

.sec2-company-subtlt span {
  color: #909094;
  display: inline-block;
  margin-left: 2rem;
  transform: translateY(-0.3rem);
}

.sec2-company-ul {
  display: grid;
  grid-template-columns: 54rem 1fr;
  margin-top: 4rem;
}
@media screen and (max-width: 999px) {
  .sec2-company-ul {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-company-ul {
    margin-top: 1.5rem;
    display: block;
  }
}

.sec2-company {
  margin-top: 10.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-company {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-company {
    margin-top: 5rem;
  }
}

.sec3-company {
  margin-top: 11.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-company {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-company {
    margin-top: 5rem;
  }
}

.sec4-company {
  margin-top: 16rem;
}
@media screen and (max-width: 999px) {
  .sec4-company {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-company {
    margin-top: 5rem;
  }
}

.sec5-company {
  padding-top: 5rem;
}
@media screen and (min-width: 1000px) {
  .sec5-company {
    padding-bottom: 24rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-company {
    text-align: center;
  }
}
.sec5-company img {
  width: 32rem;
}

@media screen and (min-width: 1000px) {
  .sec1-history {
    padding-bottom: 19rem;
  }
}

.sec1-access-right-icon {
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1.7rem;
       column-gap: 1.7rem;
}
.sec1-access-right-icon:before {
  content: "";
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  margin-top: 0.8rem;
}
.sec1-access-right-icon.access--icon1:before {
  background-image: url(../img/access/image02.png);
}
.sec1-access-right-icon.access--icon2:before {
  background-image: url(../img/access/image03.png);
}

.sec1-access-right-txt {
  margin-top: 2rem;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 767px) {
  .sec1-access-right-txt {
    margin-top: 1rem;
    margin-bottom: 0.8rem;
  }
}

.sec1-access-main {
  display: grid;
  grid-template-columns: 40rem 1fr;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .sec1-access-main {
    display: block;
  }
}
.sec1-access-main .sec1-access-right {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .sec1-access-main .sec1-access-right {
    margin-top: 3rem;
  }
}

.sec1-access {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec1-access {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 1000px) {
  .sec1-access {
    padding-bottom: 24rem;
  }
}
.sec1-access li {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .sec1-access li {
    padding-top: 2rem;
  }
}
.sec1-access li + li {
  margin-top: 7rem;
}
@media screen and (max-width: 767px) {
  .sec1-access li + li {
    margin-top: 5rem;
  }
}

.sec1-access-main-googlemap {
  display: flex;
  border-top: max(1px, 0.1rem) solid #000;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .sec1-access-main-googlemap {
    margin-top: 3rem;
  }
}
.sec1-access-main-googlemap iframe {
  width: 100%;
  height: 60rem;
}
@media screen and (max-width: 999px) {
  .sec1-access-main-googlemap iframe {
    height: 40rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-access-main-googlemap iframe {
    height: 30rem;
  }
}

.sec1-recruit {
  position: relative;
}
.sec1-recruit .sec1-recruitm {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding-top: 20rem;
  z-index: 3;
}
@media screen and (max-width: 1200px) {
  .sec1-recruit .sec1-recruitm {
    padding-top: 18rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-recruit .sec1-recruitm {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-recruit .sec1-recruitm {
    padding-top: 2rem;
  }
}

.sec1-recruitm-tlt {
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 13%;
  width: calc(100% - 6rem);
}
@media screen and (max-width: 1400px) {
  .sec1-recruitm-tlt {
    padding-top: 10%;
  }
}
@media screen and (max-width: 999px) {
  .sec1-recruitm-tlt {
    width: calc(100% - 3rem);
    padding-top: 17%;
  }
}
@media screen and (max-width: 767px) {
  .sec1-recruitm-tlt {
    padding-top: 6%;
  }
}
.sec1-recruitm-tlt span {
  display: block;
  color: #fff;
}
.sec1-recruitm-tlt .eng {
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .sec1-recruitm-tlt .eng {
    font-size: 1.6rem;
  }
}
.sec1-recruitm-tlt .jpn {
  font-size: 4.8rem;
  font-weight: 700;
}
@media screen and (max-width: 999px) {
  .sec1-recruitm-tlt .jpn {
    font-size: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-recruitm-tlt .jpn {
    font-size: 2.8rem;
  }
}

.sec2-recruitm {
  display: grid;
  grid-template-columns: 51.9% 1fr;
  -moz-column-gap: 3.3%;
       column-gap: 3.3%;
}
@media screen and (max-width: 1400px) {
  .sec2-recruitm {
    -moz-column-gap: 2.3%;
         column-gap: 2.3%;
  }
}
@media screen and (max-width: 999px) {
  .sec2-recruitm {
    grid-template-columns: 45.9% 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec2-recruitm {
    display: flex;
    flex-direction: column-reverse;
  }
}

.sec2-recruit {
  color: #fff;
  padding-top: 5rem;
  padding-bottom: 16rem;
  position: relative;
}
.sec2-recruit:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -3;
  background-color: #009CCA;
}
@media screen and (max-width: 767px) {
  .sec2-recruit {
    padding-bottom: 0;
  }
}

.sec2-recruit-left {
  position: relative;
}
.sec2-recruit-left .sec2-recruit-leftm {
  position: absolute;
  left: 0;
  right: 0;
  top: -17.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-recruit-left .sec2-recruit-leftm {
    top: -10.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-recruit-left .sec2-recruit-leftm {
    position: static;
  }
}

.sec3-recruitm {
  max-width: 140rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 14.2% 1fr;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm {
    display: block;
  }
}
.sec3-recruitm .sec3-recruitm-left .tlth3-style1.tltdots {
  -moz-column-gap: 12.3rem;
       column-gap: 12.3rem;
}
.sec3-recruitm .sec3-recruitm-left .tlth3-style1.tltdots .eng {
  color: #97CFE3;
}
.sec3-recruitm .sec3-recruitm-left .tlth3-style1.tltdots .jpn {
  color: #009CCA;
}

.sec3-recruitm-ul li {
  background-color: #fff;
  border: max(1px, 0.1rem) solid #E9E8EA;
  border-radius: 0.5rem;
  position: relative;
  padding-left: 18rem;
  padding-top: 6.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-ul li {
    padding: 4rem 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-ul li {
    padding: 3rem 1.5rem;
  }
}
.sec3-recruitm-ul li + li {
  margin-top: 4rem;
}

.sec3-recruitm-item-number {
  font-size: 4.2rem;
  font-weight: 500;
  line-height: 1;
  color: #009CCA;
  position: absolute;
  top: 7rem;
  left: 4rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item-number {
    position: static;
    padding-bottom: 3rem;
  }
}

.sec3-recruitm-item-tlt img {
  height: 7.2rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item-tlt img {
    height: 9.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-item-tlt img {
    height: 6.8rem;
  }
}

.sec3-recruitm-item-iconm1 {
  width: 24rem;
  top: -6rem;
  right: 6rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item-iconm1 {
    top: -17rem;
    right: 2rem;
    width: 28rem;
  }
}

.sec3-recruitm-item-iconm2 {
  width: 25rem;
  top: -6rem;
  right: 4.3rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item-iconm2 {
    top: -18rem;
    right: 2.3rem;
    width: 32rem;
  }
}

.sec3-recruitm-item-iconm3 {
  width: 26.4rem;
  top: -10rem;
  right: 6.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item-iconm3 {
    top: -18rem;
    right: 1.5rem;
    width: 30.4rem;
  }
}

.sec3-recruitm-item-icon {
  position: relative;
}

.sec3-recruitm-item-iconm {
  position: absolute;
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-item-iconm {
    position: static;
    width: 100% !important;
    padding-top: 3rem;
  }
}

.sec3-recruitm-txt {
  max-width: 64rem;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-txt {
    margin-top: 2.5rem;
  }
}

.sec3-recruitm-box {
  background-color: #F4F8FD;
  border-radius: 0.5rem;
  max-width: 94rem;
  display: grid;
  grid-template-columns: 34rem 1fr;
  padding-left: 6rem;
  padding-top: 4rem;
  margin-top: 6rem;
  padding-bottom: 4rem;
  margin-bottom: 6rem;
}
@media screen and (max-width: 1500px) {
  .sec3-recruitm-box {
    width: calc(100% - 3rem);
  }
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-box {
    margin-bottom: 0;
    padding: 3rem 2rem;
    grid-template-columns: 38rem 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-box {
    display: block;
    width: 100%;
    margin-top: 4rem;
  }
}
.sec3-recruitm-box .dots-blue {
  -moz-column-gap: 1.3rem;
       column-gap: 1.3rem;
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-box .dots-blue {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    align-items: flex-start;
  }
}
.sec3-recruitm-box .dots-blue:before {
  width: 0.8rem;
  height: 0.8rem;
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-box .dots-blue:before {
    margin-top: 1rem;
  }
}

.sec3-recruitm-tlt-line {
  border-left: max(2px, 0.4rem) solid #000;
  line-height: 1.2;
  padding-left: 1rem;
}

.sec3-recruitm-box-grdots {
  padding-left: 0.8rem;
  margin-top: 2.2rem;
}
.sec3-recruitm-box-grdots p + p {
  margin-top: 0.6rem;
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-box-grdots {
    padding-left: 0;
  }
}

.sec3-recruit {
  position: relative;
}
.sec3-recruit:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 20rem;
  background-color: #009CCA;
  z-index: -3;
}
.sec3-recruit:after {
  content: "";
  position: absolute;
  top: -11rem;
  left: 0;
  right: 0;
  height: 179rem;
  background-image: url(../img/recruit/image05.png);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  .sec3-recruit:after {
    top: -15rem;
    height: 210rem;
  }
}

.sec3-recruitm-item2-img {
  max-width: 68.5rem;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item2-img {
    margin-bottom: 0;
    max-width: 83rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .sec3-recruitm-item2-img {
    margin-top: 2rem;
  }
}

.sec3-recruitm-item3-img {
  max-width: 44rem;
  margin-top: 4rem;
}
@media screen and (min-width: 1000px) {
  .sec3-recruitm-item3-img {
    transform: translateX(-1rem);
  }
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-item3-img {
    max-width: 66rem;
    margin-top: 6rem;
  }
}

.sec3-recruitm-txt3 {
  margin-bottom: 8.7rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-txt3 {
    margin-bottom: 0;
  }
}

.sec3-recruitm-left {
  padding-left: 5rem;
}
@media screen and (max-width: 999px) {
  .sec3-recruitm-left {
    padding-left: 0;
  }
}

@media screen and (max-width: 999px) {
  .sec3-recruitm-right {
    margin-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec3-recruitm-box-right {
    margin-top: 3rem;
  }
}

.sec4-recruit {
  max-width: 160rem;
  margin-left: auto;
  border-top: max(5px, 1rem) solid #009CCA;
}

.sec4-recruit-mente {
  max-width: 166rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 6rem;
  padding-bottom: 7.7rem;
}
@media screen and (max-width: 767px) {
  .sec4-recruit-mente {
    padding-top: 4rem;
    padding-bottom: 4.7rem;
  }
}

.sec4-recruitm {
  margin-top: 6rem;
}
@media screen and (min-width: 1000px) {
  .sec4-recruitm {
    background: linear-gradient(to bottom, transparent 19rem, #F2FAFC 19rem);
  }
}
@media screen and (max-width: 999px) {
  .sec4-recruitm {
    background-color: #F2FAFC;
  }
}

.sec5-recruit {
  display: grid;
  grid-template-columns: 24rem 1fr;
  position: relative;
  margin-top: -22rem;
}
@media screen and (max-width: 1400px) {
  .sec5-recruit {
    margin-top: -14rem;
  }
}
@media screen and (max-width: 999px) {
  .sec5-recruit {
    display: block;
    margin-top: 5rem;
  }
}
.sec5-recruit .sec5-recruit-right-img img {
  border-radius: 0.5rem;
}
@media screen and (max-width: 767px) {
  .sec5-recruit .sec5-recruit-right-img img {
    height: 25rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
}
.sec5-recruit .tltdots .jpn {
  color: #009CCA;
}
.sec5-recruit .tltdots .eng {
  color: #97CFE3;
}
.sec5-recruit .sec1-top-link {
  margin-top: 0;
  position: absolute;
  bottom: 4.2rem;
  right: 5.6rem;
  color: #fff;
}
@media screen and (max-width: 999px) {
  .sec5-recruit .sec1-top-link {
    bottom: 2.5rem;
    right: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-recruit .sec1-top-link {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
}

.sec5-recruit-right-img {
  position: relative;
  margin-top: 3.8rem;
}
@media screen and (max-width: 999px) {
  .sec5-recruit-right-img {
    margin-top: 1.8rem;
  }
}

.sec5-recruit-left {
  padding-left: 5rem;
  padding-top: 9rem;
}
@media screen and (max-width: 999px) {
  .sec5-recruit-left {
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-recruit-left {
    padding-bottom: 1rem;
  }
}

.sec6-recruit {
  padding-top: 15rem;
}
@media screen and (max-width: 999px) {
  .sec6-recruit {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-recruit {
    padding-top: 5rem;
  }
}

.sec6-recruit-table {
  padding-top: 5.5rem;
  max-width: 100rem;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .sec6-recruit-table {
    padding-top: 2.5rem;
  }
}

.sec6-recruit-tltright {
  color: #F2774A;
  margin-top: 5rem;
  padding-bottom: 0.8rem;
}
@media screen and (max-width: 767px) {
  .sec6-recruit-tltright {
    margin-top: 3rem;
  }
}

.sec6-recruit-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .sec6-recruit-box {
    display: block;
  }
  .sec6-recruit-box .sec6-recruit-box-item + .sec6-recruit-box-item {
    margin-top: 3rem;
  }
}
.sec6-recruit-box .table-company-stylelist tr:first-child td {
  border-top: 0 !important;
}
.sec6-recruit-box .table-company-stylelist tr:last-child td {
  border-bottom: 0 !important;
}
.sec6-recruit-box .table-company-stylelist tr td:first-child {
  width: 15.7rem;
  padding-left: 1.7rem;
}
.sec6-recruit-box .table-company-stylelist tr td {
  width: calc(100% - 15.7rem);
}
@media screen and (max-width: 767px) {
  .sec6-recruit-box .table-company-stylelist tr td {
    padding-left: 1.7rem;
  }
}

.sec6-recruit-box-item {
  border: max(1px, 0.1rem) solid #CCEBF4;
  border-radius: 0.5rem;
  overflow: hidden;
}

.sec6-recruit-box-item-tlt {
  background-color: #CCEBF4;
  color: #4D4D54;
  padding-left: 1.5rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  margin-bottom: 1.5rem;
}

.sec7-recruit {
  margin-top: 21.5rem;
}
@media screen and (max-width: 999px) {
  .sec7-recruit {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-recruit {
    margin-top: 5rem;
  }
}

.sec7-recruit-main {
  max-width: 110rem;
  margin-left: auto;
  margin-top: 3.3rem;
}
.sec7-recruit-main .txt-fs24 {
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
  padding-bottom: 1rem;
}
.sec7-recruit-main .dots-blue:before {
  width: 0.8rem;
  height: 0.8rem;
}

.sec7-recruit-item-ul {
  padding-left: 2rem;
  padding-top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .sec7-recruit-item-ul {
    padding-left: 0;
    padding-top: 1.5rem;
  }
}

.sec7-recruit-item + .sec7-recruit-item {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .sec7-recruit-item + .sec7-recruit-item {
    margin-top: 4rem;
  }
}

.sec8-recruit {
  background-color: #F2FAFC;
  border-radius: 0.5rem;
  padding-top: 8rem;
  margin-top: 16rem;
  padding-bottom: 15rem;
}
@media screen and (min-width: 1000px) {
  .sec8-recruit {
    margin-bottom: 14.7rem;
  }
}
@media screen and (min-width: 768px) {
  .sec8-recruit .sec5-product-bottom-step li {
    grid-template-columns: 41rem 1fr;
  }
}
@media screen and (min-width: 768px) and (max-width: 999px) {
  .sec8-recruit .sec5-product-bottom-step li {
    grid-template-columns: 28rem 1fr;
  }
}
@media screen and (min-width: 768px) {
  .sec8-recruit .sec5-product-bottom-left {
    grid-template-columns: 10rem 1fr;
    align-items: center;
    color: #009CCA;
  }
}
@media screen and (max-width: 999px) {
  .sec8-recruit {
    padding-top: 6rem;
    margin-top: 8rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec8-recruit {
    padding-top: 4rem;
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec1-staff-item1 {
  position: relative;
}
.sec1-staff-item1:before {
  content: "";
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 24rem;
  background-color: #F2FAFC;
  position: absolute;
}

.sec1-staff-item1m {
  max-width: 140rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 17.7rem 1fr;
  padding-top: 7.7rem;
}
@media screen and (max-width: 1400px) {
  .sec1-staff-item1m {
    grid-template-columns: 12.7rem 1fr;
  }
}
@media screen and (max-width: 999px) {
  .sec1-staff-item1m {
    display: block;
    padding-top: 5rem;
  }
}

.sec1-staff-item1m-left {
  padding-top: 3.3rem;
}
@media screen and (max-width: 999px) {
  .sec1-staff-item1m-left {
    padding-top: 0;
  }
}
.sec1-staff-item1m-left .tltdots .jpn {
  color: #009CCA;
}
.sec1-staff-item1m-left .tltdots .eng {
  color: #97CFE3;
}

.sec1-staff-item1m-right-icon {
  padding-top: 6.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-icon {
    padding-top: 0;
    text-align: center;
  }
}
.sec1-staff-item1m-right-icon img {
  width: 28rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-icon img {
    width: 20rem;
  }
}

.sec1-staff-item1m-right-name1 {
  font-size: 1.5rem;
  color: #909094;
  margin-top: 10rem;
}
@media screen and (max-width: 1400px) {
  .sec1-staff-item1m-right-name1 {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-name1 {
    margin-top: 2rem;
  }
}

.sec1-staff-item1m-right-name2 {
  margin-top: 1.3rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-name2 {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-img {
    margin-top: 3rem;
  }
}
.sec1-staff-item1m-right-img img {
  border-radius: 0.5rem;
}

.sec1-staff-item1m-right {
  display: grid;
  grid-template-columns: 1fr 68rem;
}
@media screen and (max-width: 1400px) {
  .sec1-staff-item1m-right {
    grid-template-columns: 1fr 60%;
  }
}
@media screen and (max-width: 999px) {
  .sec1-staff-item1m-right {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right {
    display: block;
    padding-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec1-staff-item1m-right-name {
    text-align: left;
  }
}

.sec1-staff-item1660 {
  max-width: 166rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item1660 {
    margin-top: 3rem;
  }
}

.sec1-staff-item1660img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.sec1-staff-itemqa {
  position: relative;
  z-index: 2;
  padding-top: 5rem;
}

.sec1-staff-itemq {
  color: #fff;
  background-color: #212129;
  border-radius: 100rem;
  max-width: 76rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  position: relative;
  padding-left: 2.2rem;
}
@media screen and (max-width: 999px) {
  .sec1-staff-itemq {
    max-width: 47rem;
  }
}
.sec1-staff-itemq .eng {
  font-size: 3rem;
  font-weight: 500;
  color: #F2774A;
  float: left;
}
@media screen and (max-width: 1400px) {
  .sec1-staff-itemq .eng {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-staff-itemq .eng {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-itemq .eng {
    font-size: 2.2rem;
  }
}

.sec1-staff-itema {
  background-color: #fff;
  border-radius: 0.5rem;
  height: 36rem;
  padding-left: 10rem;
  padding-right: 10rem;
  padding-top: 12rem;
  margin-top: 3rem;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec1-staff-itema {
    height: 30rem;
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-itema {
    height: auto;
    padding: 0 2rem;
    padding-top: 8rem;
    padding-bottom: 3rem;
    margin-top: 2rem;
  }
}
.sec1-staff-itema span {
  position: absolute;
  font-size: 3rem;
  font-weight: 500;
  color: #fff;
  background-color: #009CCA;
  width: 6rem;
  height: 6rem;
  line-height: 1;
  border-radius: 100rem;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 3rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1400px) {
  .sec1-staff-itema span {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-staff-itema span {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-itema span {
    font-size: 2.2rem;
    width: 5rem;
    height: 5rem;
    top: 1.5rem;
  }
}

.sec1-staff-itemqa-ul li + li {
  margin-top: 3rem;
}

.sec1-staff-item2 {
  display: grid;
  grid-template-columns: 36rem 1fr;
  -moz-column-gap: 21.5rem;
       column-gap: 21.5rem;
  margin-top: 7.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-staff-item2 {
    -moz-column-gap: 10.5rem;
         column-gap: 10.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-item2 {
    margin-top: 3rem;
    display: flex;
    flex-direction: column-reverse;
  }
}

.sec1-staff-item2-left .sec1-staff-item2-left-item + .sec1-staff-item2-left-item {
  margin-top: 1rem;
}
.sec1-staff-item2-left .sec1-staff-item2-left-item img {
  border-radius: 0.5rem;
}

.sec1-staff-item2-right-tlt {
  display: inline-block;
  background-color: #E5F5FA;
  color: #009CCA;
  padding-left: 3rem;
  padding-right: 3rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  border-radius: 100rem;
}

.sec1-staff-item2-right-ul {
  margin-left: 2rem;
  position: relative;
  margin-top: 3rem;
}
.sec1-staff-item2-right-ul:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: max(1px, 0.2rem);
  background-color: #212129;
  left: 0.6rem;
  z-index: -1;
}
.sec1-staff-item2-right-ul li {
  display: grid;
  grid-template-columns: 3.3rem 10.5rem 1fr;
  align-items: center;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item2-right-ul li {
    grid-template-columns: 3.3rem 8.5rem 1fr;
  }
}
.sec1-staff-item2-right-ul li .txt-fs18 {
  color: #4D4D54;
}
.sec1-staff-item2-right-ul li:before {
  content: "";
  display: inline-block;
  width: 1.3rem;
  height: 1.3rem;
  border-radius: 100rem;
  border: max(2px, 0.3rem) solid #212129;
  background-color: #fff;
}

.sec1-staff-item2-left {
  padding-top: 5.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-staff-item2-left {
    padding-top: 0;
  }
}

.sec1-staff-item + .sec1-staff-item {
  margin-top: 15.7rem;
}
@media screen and (max-width: 999px) {
  .sec1-staff-item + .sec1-staff-item {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-staff-item + .sec1-staff-item {
    margin-top: 5rem;
  }
}

@media screen and (min-width: 1000px) {
  .sec1-staff {
    padding-bottom: 18rem;
  }
}

.sec1-faq-tlt {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1;
  width: 6.8rem;
  height: 6.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100rem;
  background-color: #E9E9EA;
}
@media screen and (max-width: 999px) {
  .sec1-faq-tlt {
    font-size: 2.4rem;
    width: 6rem;
    height: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faq-tlt {
    font-size: 2rem;
    width: 4rem;
    height: 4rem;
  }
}

.sec1-faq-arrow {
  width: 6.8rem;
  height: 6.8rem;
  background-image: url(../img/faq/image01.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: center center;
  transform: rotate(180deg);
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .sec1-faq-arrow {
    width: 4rem;
    height: 4rem;
  }
}

.sec1-faq-txt-q {
  display: grid;
  grid-template-columns: max-content 1fr max-content;
  padding-left: 4rem;
  padding-right: 3rem;
  -moz-column-gap: 7.6rem;
       column-gap: 7.6rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 999px) {
  .sec1-faq-txt-q {
    -moz-column-gap: 4.6rem;
         column-gap: 4.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faq-txt-q {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
    padding: 2rem 1.5rem;
    padding-right: 0;
  }
}

.sec1-faq-txt-drop {
  grid-template-columns: max-content 1fr;
  background-color: #F4F4F4;
  padding-top: 2rem;
  height: 15rem;
}
.sec1-faq-txt-drop .sec1-faq-tlt {
  color: #fff;
  background-color: #009CCA;
}
@media screen and (max-width: 767px) {
  .sec1-faq-txt-drop {
    height: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec1-faq-ul {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
}
.sec1-faq-ul li {
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
}

.sec1-faq-tlt-toggle {
  padding-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .sec1-faq-tlt-toggle {
    padding-top: 0;
  }
}

.sec1-faq-txt-mode {
  cursor: pointer;
}
.sec1-faq-txt-mode:hover {
  opacity: 0.7 !important;
}

.sec1-faq {
  padding-top: 16rem;
}
@media screen and (max-width: 999px) {
  .sec1-faq {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-faq {
    padding-top: 5rem;
  }
}
@media screen and (min-width: 1000px) {
  .sec1-faq {
    padding-bottom: 15rem;
  }
}

.sec1-faq-txt-buy {
  display: none;
}

@media screen and (min-width: 1000px) {
  .view-tablate {
    display: none !important;
  }
}

.cont-1000 {
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.sec1-contact {
  padding-top: 9rem;
  padding-bottom: 25.4rem;
}
@media screen and (max-width: 999px) {
  .sec1-contact {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec1-contact {
    padding: 5rem 0;
  }
}

.sec1-contact-link {
  font-weight: 700 !important;
  color: #212129;
  margin-top: 2.5rem;
  margin-bottom: 6.3rem;
}
@media screen and (max-width: 767px) {
  .sec1-contact-link {
    margin-top: 1.5rem;
    margin-bottom: 2.3rem;
  }
}

.sec1-contact30 {
  padding-bottom: 2.2rem;
}
@media screen and (max-width: 767px) {
  .sec1-contact30 {
    padding-bottom: 1.2rem;
  }
}

.sec1-contact-breccum {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec1-contact-breccum {
    margin-top: 3rem;
  }
}
.sec1-contact-breccum li {
  color: #fff;
  background-color: #D3D3D5;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  height: 6rem;
  padding-left: 2rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec1-contact-breccum li {
    padding-left: 0;
    justify-content: center;
    line-height: 1;
    flex-direction: column;
    row-gap: 1rem;
  }
  .sec1-contact-breccum li .txt-fs16 {
    font-size: 1.5rem;
  }
}
.sec1-contact-breccum li.is-active {
  background-color: #212129;
  color: #fff;
}

.table-form {
  width: 100%;
  margin-top: 3rem;
}
.table-form tr td:first-child {
  font-weight: 700;
  width: 32rem;
  padding-right: 2.8rem;
}
@media screen and (max-width: 767px) {
  .table-form tr td:first-child {
    padding-right: 0;
    padding-bottom: 0;
  }
}
.table-form tr td {
  width: calc(100% - 32rem);
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: max(1px, 0.1rem) solid #D3D3D4;
  border-bottom: max(1px, 0.1rem) solid #D3D3D4;
}
@media screen and (max-width: 767px) {
  .table-form tr td {
    width: 100% !important;
    border: 0 !important;
    float: left;
  }
}
@media screen and (min-width: 1000px) {
  .table-form tr.tr-form-area td {
    vertical-align: top;
  }
}

.form-control {
  max-width: 58rem;
  width: 100%;
  height: 4rem;
  border: max(1px, 0.1rem) solid #D3D3D4;
  padding: 0 1.5rem;
  outline: 0;
  scroll-margin-top: 16rem;
}
@media screen and (max-width: 999px) {
  .form-control {
    scroll-margin-top: 12rem;
  }
}

.form-area {
  max-width: 58rem;
  width: 100%;
  height: 14rem;
  border: max(1px, 0.1rem) solid #D3D3D4;
  padding: 1.5rem;
  outline: 0;
  resize: none;
  scroll-margin-top: 16rem;
}
@media screen and (max-width: 999px) {
  .form-area {
    scroll-margin-top: 12rem;
  }
}

.table-form-right {
  font-size: 1.2rem;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.2rem;
  height: 1.8rem;
  float: right;
  transform: translateY(0.7rem);
}
@media screen and (max-width: 767px) {
  .table-form-right {
    font-size: 1.4rem;
    width: auto;
    height: auto;
    padding: 0.2rem 0.5rem;
    transform: none;
    float: none;
    display: inline-flex;
    margin-left: 1rem;
  }
}
.table-form-right.erro {
  border: max(1px, 0.1rem) solid #F2774A;
  color: #F2774A;
}
.table-form-right.blue {
  border: max(1px, 0.1rem) solid #009CCA;
  color: #009CCA;
}

.skin-form-field {
  position: relative;
  display: inline-flex;
  overflow: hidden;
  width: 14rem;
  height: 3rem;
  border: max(1px, 0.1rem) solid #D3D3D4;
  border-radius: 0.2rem;
  font-size: 1.5rem;
  justify-content: center;
  align-items: center;
  color: #909094;
  cursor: pointer;
}
.skin-form-field:hover {
  opacity: 0.7;
}
.skin-form-field input {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1000;
  opacity: 0;
}

.skin-form-field-name {
  color: #909094;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.gr-form-field {
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  margin-bottom: 1.5rem;
}

.form-checkbox {
  width: 2rem;
  height: 2rem;
}

.lbal-checkbox {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 1.3rem;
       column-gap: 1.3rem;
}

.btn-form-submit {
  display: flex;
  width: 22rem;
  height: 4.6rem;
  border: max(1px, 0.2rem) solid #242325 !important;
  border-radius: 3rem;
  font-weight: 700;
  align-items: center;
  padding-left: 1.7rem;
  background-image: url(../img/common/image05.png);
  background-size: 4.5rem auto;
  background-repeat: no-repeat;
  background-position: right 1.5rem center;
  transition: all 0.3s ease-in-out;
  font-size: 1.6rem;
  color: #242325;
  background-color: #fff;
  cursor: pointer;
}
.btn-form-submit:hover {
  background-color: #009CCA;
  color: #fff;
  border-color: #fff !important;
  background-image: url(../img/common/image03.png);
}
@media screen and (max-width: 767px) {
  .btn-form-submit {
    font-size: 1.6rem;
  }
}

.sec1-contact-link--fs16 {
  font-size: 1.6rem !important;
}

.gr-submit-form {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  row-gap: 2rem;
  padding-top: 9rem;
}
@media screen and (max-width: 767px) {
  .gr-submit-form {
    padding-top: 3rem;
  }
}

.sec2-contact-tlt {
  font-size: 1.8rem;
  font-weight: 500;
  color: #009CCA;
  background-color: #E5F5FA;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100rem;
  width: 14rem;
  height: 4rem;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
}

.sec2-contact-sdt {
  width: 46rem;
}
@media screen and (max-width: 999px) {
  .sec2-contact-sdt {
    width: 36rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-contact-sdt {
    width: 28rem;
  }
}

.sec2-contact {
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .sec2-contact {
    padding-bottom: 12rem;
  }
}
.sec2-contact .sec2-contact-tlt {
  margin-bottom: 3rem;
}
.sec2-contact .txt-fs16 {
  margin-top: 4.2rem;
}
@media screen and (max-width: 767px) {
  .sec2-contact .txt-fs16 {
    margin-top: 2.2rem;
  }
}

.table-form-xn .form-area, .table-form-xn .form-control {
  background-color: #E9E8EA;
}

.sec1-privacy {
  padding-top: 11rem;
  padding-bottom: 7rem;
}
@media screen and (max-width: 999px) {
  .sec1-privacy {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec1-privacy {
    padding: 5rem 0;
  }
}
.sec1-privacy .txt-fs30 {
  padding-bottom: 2.2rem;
}

.sec2-privacy {
  text-align: center;
  border-top: max(1px, 0.1rem) solid #E9E8EA;
  border-bottom: max(1px, 0.1rem) solid #E9E8EA;
  padding-top: 4.3rem;
  padding-bottom: 4.5rem;
}
@media screen and (min-width: 1000px) {
  .sec2-privacy {
    margin-bottom: 14rem;
  }
}

.sec2-privacy-link {
  border-bottom: max(1px, 0.1rem) solid #212129 !important;
  display: inline-block;
  line-height: 1.1;
}

.works-item-slider-height {
  width: 100%;
  height: 24rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}

@media screen and (min-width: 768px) {
  .list-new-top-img img {
    width: 16rem;
    height: 10rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
}

.detail-news-sec1 {
  border-top: max(1px, 0.1rem) solid #E9E8EA;
  margin-top: 10rem;
}
@media screen and (max-width: 999px) {
  .detail-news-sec1 {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .detail-news-sec1 {
    margin-top: 5rem;
  }
}

.detail-news-sec1-1000 {
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4.7rem;
}
.detail-news-sec1-1000 .sec1-case-right-date {
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .detail-news-sec1-1000 .sec1-case-right-date {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .detail-news-sec1-1000 .sec1-news-detail16 {
    line-height: 1.9;
  }
}

.detail-news-sec1-link {
  padding-top: 12.5rem;
}
@media screen and (min-width: 1000px) {
  .detail-news-sec1-link {
    padding-bottom: 23.4rem;
  }
}
@media screen and (max-width: 999px) {
  .detail-news-sec1-link {
    padding-top: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .detail-news-sec1-link {
    padding-top: 4rem;
  }
}
.detail-news-sec1-link a {
  margin-left: auto;
  margin-right: auto;
}

.animetion-slick-slider-item {
  font-size: 0.52vw;
  width: 43em;
  height: 36em;
  padding-top: 9.4em;
  position: relative;
}
@media screen and (max-width: 999px) {
  .animetion-slick-slider-item {
    height: 44em;
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-item {
    width: 100%;
    height: auto;
    font-size: 1rem;
    padding-top: 0;
  }
}
.animetion-slick-slider-item img {
  width: 9.6em !important;
  display: inline-block !important;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .animetion-slick-slider-item img {
    transform: scale(1.2);
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-item img {
    transform: scale(1);
    width: 4.8em !important;
    position: absolute;
    top: 1rem;
    right: 4em;
  }
  .animetion-slick-slider-item img.animetion-slick-slider--img-xanh {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .animetion-owl-slider .owl-item {
    text-align: center;
  }
  .animetion-owl-slider .owl-item .animetion-slick-slider--img-cam {
    display: none !important;
  }
  .animetion-owl-slider .owl-item + .owl-item.active {
    text-align: left;
  }
  .animetion-owl-slider .owl-item.active.center {
    text-align: center;
  }
  .animetion-owl-slider .owl-item.active.center img {
    transform: translateY(4.4em) scale(1.2);
  }
  .animetion-owl-slider .owl-item.active.center .animetion-slick-slider--img-cam {
    display: inline-block !important;
  }
  .animetion-owl-slider .owl-item.active.center .animetion-slick-slider--img-xanh {
    display: none !important;
  }
  .animetion-owl-slider .owl-item.active.center .animetion-slick-slider-content {
    opacity: 1;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item {
    text-align: right;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item .animetion-slick-slider--img-cam {
    display: inline-block !important;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item .animetion-slick-slider--img-xanh {
    display: none !important;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item + .owl-item {
    text-align: center;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item + .owl-item .animetion-slick-slider--img-cam {
    display: inline-block !important;
  }
  .animetion-owl-slider .owl-item.active.center + .owl-item + .owl-item .animetion-slick-slider--img-xanh {
    display: none !important;
  }
}
.animetion-slick-slider-content {
  position: absolute;
  top: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.8);
  left: -22em;
  right: -22em;
  border: max(2px, 0.2em) solid #F2774A;
  border-radius: 0.5em;
  padding: 3em;
  padding-top: 6em;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1400px) {
  .animetion-slick-slider-content {
    padding-top: 8em;
  }
}
.animetion-slick-slider-content:before {
  content: "お客様のお悩み";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  font-size: max(1.5em, 13px);
  font-weight: 700;
  color: #fff;
  background-color: #F2774A;
  text-align: left;
  padding-left: 1.8rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-content:before {
    font-size: 1.6rem;
    z-index: -1;
  }
}
@media screen and (max-width: 999px) {
  .animetion-slick-slider-content {
    left: -27em;
    right: -27em;
    padding-top: 10em;
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-content {
    left: 0;
    right: 0;
    position: relative;
    opacity: 1;
    text-align: left;
    padding: 2em 0.8em;
    height: auto;
    width: calc(100% - 3rem);
    margin-left: auto;
    margin-right: auto;
    padding-top: 5rem;
    background-color: transparent;
    z-index: -1;
  }
}

.animetion-slick-slider-content-tlt {
  color: #F2774A;
  background-color: #FEF1ED;
  text-align: center;
  border-radius: 100em;
  padding-top: 0.9em;
  padding-bottom: 0.9em;
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-content-tlt {
    text-align: left;
    padding-left: 2.2em;
    padding-right: 6em;
    line-height: 1.4;
    padding-top: 1.1em;
    padding-bottom: 1.1em;
  }
}
.animetion-slick-slider-content-tlt span {
  font-size: max(1.8em, 13px);
  font-weight: 700;
}
@media screen and (max-width: 999px) {
  .animetion-slick-slider-content-tlt span {
    font-size: max(3em, 13px);
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-content-tlt span {
    font-size: 1.8em;
  }
}

.animetion-slick-slider-txt {
  text-align: left;
  padding-top: 2.3em;
  padding-left: 2em;
  padding-right: 2em;
}
.animetion-slick-slider-txt span {
  font-size: max(1.8em, 13px);
  line-height: 2;
}
@media screen and (max-width: 999px) {
  .animetion-slick-slider-txt span {
    font-size: max(3em, 13px);
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-txt span {
    font-size: 1.6em;
  }
}
@media screen and (max-width: 767px) {
  .animetion-slick-slider-txt {
    padding-left: 1.5em;
    padding-right: 1.5em;
    padding-right: 1.5em;
  }
}

.sec3-about-slider {
  max-width: 104rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 8rem);
}
@media screen and (max-width: 767px) {
  .sec3-about-slider {
    width: 100%;
  }
}

.sec3-about-slider-item {
  background-color: #fff;
  border: max(4px, 0.8rem) solid #009CCA;
  border-radius: 0.5rem;
  height: 46rem;
}
@media screen and (max-width: 1400px) {
  .sec3-about-slider-item {
    height: 32.86vw;
  }
}
@media screen and (max-width: 999px) {
  .sec3-about-slider-item {
    height: 30rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-about-slider-item {
    height: auto;
    position: relative;
    margin-top: 2.5rem;
    width: calc(100% - 3rem);
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .sec3-about-slider-item {
    overflow: hidden;
  }
}

.sec3-about-slider-item-tlt {
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  background-color: #009CCA;
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
  padding-left: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec3-about-slider-item-tlt {
    padding-top: 0.3rem;
    padding-bottom: 1rem;
  }
}

.sec3-about-slider-suport {
  max-width: 67rem;
  padding-left: 8rem;
  padding-top: 2.3rem;
}
@media screen and (max-width: 999px) {
  .sec3-about-slider-suport {
    max-width: 52rem;
    padding-left: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-about-slider-suport {
    max-width: 100%;
    padding-left: 1.8rem;
    padding-right: 1.5rem;
    padding-top: 3.5rem;
  }
}

.sec3-about-slider-suport-tlt {
  font-size: 3.5rem;
  font-weight: 700;
  color: #009CCA;
  padding-bottom: 2.3rem;
}
@media screen and (max-width: 1400px) {
  .sec3-about-slider-suport-tlt {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 999px) {
  .sec3-about-slider-suport-tlt {
    font-size: 2.4rem;
    padding-bottom: 1.5rem;
    line-height: 1.4;
  }
}

.sec3-about-slider-suport-txt {
  font-size: 2.4rem;
  line-height: 1.6;
}
@media screen and (max-width: 1400px) {
  .sec3-about-slider-suport-txt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .sec3-about-slider-suport-txt {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-about-slider-suport-txt {
    font-size: 1.6rem;
  }
}

.sec3-about {
  position: relative;
  width: calc(100% - 12rem);
}
.sec3-about:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 6rem;
  bottom: 4rem;
  background-color: #E6E6E6;
  border: max(4px, 0.8rem) solid #0081B1;
  border-radius: 0.5rem;
  border-top-width: 4.8rem;
}
@media screen and (max-width: 999px) {
  .sec3-about:before {
    top: 3rem;
    bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-about:before {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .sec3-about {
    width: calc(100% - 4rem);
  }
}

.sec4-about {
  text-align: center;
  padding: 4rem 0;
}
@media screen and (max-width: 767px) {
  .sec4-about {
    padding-top: 2.5rem;
    padding-bottom: 1.5rem;
  }
}
.sec4-about img {
  width: 24.4rem;
}
@media screen and (max-width: 767px) {
  .sec4-about img {
    width: 11.3rem;
  }
}

.sec5-about {
  position: relative;
  padding-bottom: 2.3rem;
  width: calc(100% - 12rem);
}
.sec5-about .sec5-about-img {
  width: 36.8rem;
  position: absolute;
  top: -7rem;
  right: 0;
  z-index: -1;
}
@media screen and (max-width: 1400px) {
  .sec5-about .sec5-about-img {
    width: 32rem;
  }
}
@media screen and (max-width: 999px) {
  .sec5-about .sec5-about-img {
    width: 28rem;
    top: -3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-about .sec5-about-img {
    width: 25.4rem;
    right: 4.2rem;
    top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-about {
    width: 100%;
    padding-bottom: 17.7rem;
  }
}

.img-camo {
  position: absolute;
  top: -2.5rem;
  right: 1.2rem;
  width: 4.8rem;
}

.sec6-about {
  position: relative;
  padding-top: 12rem;
}
@media screen and (max-width: 999px) {
  .sec6-about {
    padding-top: 10rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about {
    padding-top: 3rem;
  }
}
.sec6-about:before {
  content: none;
  position: absolute;
  top: -20rem;
  left: 0;
  right: 0;
  z-index: -10;
  height: 66rem;
  background-image: url(../img/about/image05.jpg);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1500px) {
  .sec6-about:before {
    height: 44vw;
    top: -13.33vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about:before {
    height: 9rem;
    top: -4rem;
  }
}

.sec6-about-cont {
  max-width: 180rem;
  margin-left: auto;
  margin-right: auto;
  background-image: url(../img/about/image06.jpg);
  background-size: cover;
  background-position: bottom center;
  height: 77rem;
  position: relative;
}
@media screen and (max-width: 1500px) {
  .sec6-about-cont {
    height: 51.33vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about-cont {
    height: auto;
    background-image: url(../img/about/image10.jpg);
    padding-bottom: 10rem;
    background-position: right 26% bottom;
  }
}

.sec6-about-img-slider {
  max-width: 173rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}
@media screen and (max-width: 767px) {
  .sec6-about-img-slider {
    width: 100%;
  }
}

.sec6-about-1600 {
  max-width: 160rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 10rem);
}
@media screen and (max-width: 767px) {
  .sec6-about-1600 {
    width: calc(100% - 3rem);
  }
}

.sec6-about-box {
  background-color: rgba(0, 156, 202, 0.9);
  width: 80rem;
  height: 60rem;
  margin-top: 6.5rem;
  color: #fff;
  padding-top: 9.3rem;
}
@media screen and (max-width: 1500px) {
  .sec6-about-box {
    width: 53.33vw;
    height: 40vw;
    margin-top: 4.33vw;
    padding-top: 4.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-about-box {
    width: 50rem;
    height: 39rem;
    margin-top: 4rem;
    padding-top: 3rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about-box {
    width: 100%;
    height: auto;
    padding-bottom: 3rem;
  }
}
.sec6-about-box .txt-fs30 {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  border-bottom: max(1px, 0.1rem) solid #fff;
  padding-bottom: 3.3rem;
}
@media screen and (max-width: 999px) {
  .sec6-about-box .txt-fs30 {
    padding-bottom: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about-box .txt-fs30 {
    font-size: 2rem;
    padding-bottom: 1rem;
  }
}
.sec6-about-box .txt-fs16 {
  max-width: 57.5rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 7rem;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 1500px) {
  .sec6-about-box .txt-fs16 {
    padding-top: 4.67vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-about-box .txt-fs16 {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-about-box .txt-fs16 {
    padding-top: 1rem;
  }
}

.sec7-about {
  max-width: 166rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-bottom: 2.7rem;
}
@media screen and (max-width: 999px) {
  .sec7-about {
    padding-bottom: 5.7rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-about {
    padding-bottom: 0;
  }
}
@media screen and (min-width: 1000px) {
  .sec7-about {
    margin-bottom: 19rem;
  }
}

.sec7-about-img {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

.sec10-top-slider-item img {
  border-radius: 0.5rem;
}

.sec5-plastic {
  padding-top: 5.5rem;
}

.sec5-plastic-box {
  background-color: #F4F4F4;
  border-radius: 0.5rem;
  border: max(1px, 0.1rem) solid #E9E9EA;
  max-width: 100rem;
  margin-left: auto;
  padding-top: 5rem;
  padding-bottom: 8rem;
  margin-top: 4.7rem;
}
@media screen and (min-width: 1000px) {
  .sec5-plastic-box {
    margin-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-plastic-box {
    padding: 5rem 0;
  }
}

.sec5-plastic-box-content {
  color: #4D4D54;
  padding-left: 6rem;
  padding-right: 12rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec5-plastic-box-content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    margin-top: 1.5rem;
  }
}

.sec5-plastic-box-img {
  max-width: 67rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .sec5-plastic-box-img {
    margin-top: 1.5rem;
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
  }
}

.sec8-about {
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 8rem;
       column-gap: 8rem;
}
@media screen and (max-width: 999px) {
  .sec8-about {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec8-about {
    display: block;
    width: 100%;
  }
  .sec8-about .sec8-about-left {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 3rem;
  }
  .sec8-about .sec8-about-ul {
    display: grid;
    grid-template-columns: max-content max-content;
    justify-content: space-between;
    padding-right: 1.5rem;
    row-gap: 2rem;
  }
}

.sec8-about-icon {
  display: grid;
  grid-template-columns: 11.5rem 1fr;
  -moz-column-gap: 2.3rem;
       column-gap: 2.3rem;
  align-items: center;
  line-height: 1.3;
  border-left: max(3px, 1rem) solid #F2774A;
  padding-left: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  opacity: 0.5;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
.sec8-about-icon.is-active, .sec8-about-icon:hover {
  opacity: 1;
}
@media screen and (max-width: 999px) {
  .sec8-about-icon {
    grid-template-columns: 9.5rem 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec8-about-icon {
    display: block;
    border-left: 0.5rem solid #F2774A;
  }
  .sec8-about-icon .sec8-about-icon-left {
    display: none;
  }
}

.sec8-about-right-tlt1 {
  color: #F2774A;
  background-color: #FEF0ED;
  border-radius: 100rem;
  padding-left: 3.8rem;
  padding-right: 1.5rem;
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}

.sec8-about-right-txt1 {
  line-height: 2;
  padding-left: 3.8rem;
  margin-top: 2rem;
  margin-bottom: 3.4rem;
}
@media screen and (max-width: 999px) {
  .sec8-about-right-txt1 {
    padding-left: 1.8rem;
  }
}

.sec8-about-right-tlt2 {
  background-color: #009CCA;
  text-align: center;
  border-radius: 0.5rem;
  color: #fff;
  padding: 1.5rem 14.5rem;
}

.sec8-about-right-tlt2-icon {
  position: relative;
}
.sec8-about-right-tlt2-icon .sec8-about-right-tlt2-iconm {
  position: absolute;
  width: 11.5rem;
  top: -1rem;
  left: 2rem;
}

.sec8-about-right-tlt3 {
  font-size: 3.5rem;
  font-weight: 700;
  color: #009CCA;
  padding-left: 3.8rem;
  margin-top: 2rem;
  margin-bottom: 1.4rem;
}
@media screen and (max-width: 1400px) {
  .sec8-about-right-tlt3 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec8-about-right-tlt3 {
    font-size: 2.6rem;
    padding-left: 1.8rem;
  }
}

.sec8-about-right-txt2 {
  padding-left: 3.8rem;
}
@media screen and (max-width: 999px) {
  .sec8-about-right-txt2 {
    padding-left: 1.8rem;
  }
}

.sec8-about-right-ul li {
  display: none;
}
.sec8-about-right-ul li.is-active {
  display: block;
}

@media screen and (min-width: 768px) {
  .sec4-others {
    position: relative;
    padding-bottom: 12rem;
  }
  .sec4-others-img {
    position: absolute;
    bottom: 0;
    right: 2.7rem;
    width: -moz-max-content;
    width: max-content;
  }
}
.sec5-others {
  padding-top: 8.5rem;
  padding-bottom: 15rem;
  background: #E9E1D6;
  background: linear-gradient(180deg, rgb(233, 225, 214) 0%, rgb(255, 255, 255) 70%);
}
@media screen and (max-width: 999px) {
  .sec5-others {
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-others {
    padding: 5rem 0;
    background: linear-gradient(180deg, rgb(233, 225, 214) 0%, rgb(255, 255, 255) 100%);
  }
}

.sec2-others-icon {
  position: absolute;
  bottom: 4.3rem;
  left: 50%;
  width: -moz-max-content;
  width: max-content;
  transform: translateX(-50%);
}
@media screen and (max-width: 999px) {
  .sec2-others-icon {
    bottom: 3rem;
  }
  .sec2-others-icon img {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 767px) {
  .sec2-others-icon {
    bottom: 1.5rem;
  }
  .sec2-others-icon img {
    transform: none;
  }
}

.menu-mid-item--nocusor {
  cursor: default;
}

.sec-staff-link {
  position: relative;
}

.sec-staff-link-child {
  position: absolute;
  top: -15rem;
}
@media screen and (max-width: 999px) {
  .sec-staff-link-child {
    top: -9rem;
  }
}

.sec10-top-slider-item {
  position: relative;
}
.sec10-top-slider-item a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
}
.sec10-top-slider-item a:hover {
  background-color: rgba(255, 255, 255, 0.4);
}

.sec1-detail-case-slider-prevsnext .gr-button-pre-next {
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .sec4-lead-left {
    text-align: center;
  }
}/*# sourceMappingURL=style.css.map */