@charset "UTF-8";
.banner-page {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-top: 8rem;
}
@media screen and (max-width: 1400px) {
  .banner-page {
    margin-top: 5.71vw;
  }
}
@media screen and (max-width: 999px) {
  .banner-page {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .banner-page {
    margin-top: 5.5rem;
  }
}
.banner-page img {
  width: 100%;
  height: 28rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .banner-page img {
    height: 35rem;
  }
}
.banner-page .banner-page-title {
  padding: 0.6rem 3rem;
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 2;
  background-color: #21509F;
  letter-spacing: 0.4rem;
  line-height: 1.5;
  font-weight: 500;
  font-size: 3.2rem;
  text-align: center;
  color: #fff;
  max-width: 50rem;
  width: -moz-max-content;
  width: max-content;
}

.brecum-page-ul {
  font-size: max(1.6rem, 15px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.3rem;
       column-gap: 1.3rem;
  color: #21509F;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.brecum-page-ul .icon {
  width: 0.7rem;
  height: 0.7rem;
  border-top: 1px solid #212121;
  border-right: 1px solid #212121;
  transform: rotate(45deg);
}
.brecum-page-ul a {
  color: #212121;
  transition: all 0.3s ease-in-out;
}
.brecum-page-ul a:hover {
  color: #21509F;
}

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

.under-list-ul {
  font-size: 1.6rem;
  letter-spacing: 0.3rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  border: max(0.2rem, 1px) solid #21509F;
  border-radius: 1rem;
  padding: 1.8rem 4rem 3.8rem;
  background-color: #fff;
  line-height: 1.4;
}
.under-list-ul a {
  padding-left: 0.3rem;
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
  padding-right: 3.5rem;
  min-height: 5.6rem;
  display: flex;
  align-items: center;
  position: relative;
  border-bottom: 1px solid #cec9c6;
  transition: all 0.3s ease-in-out;
}
.under-list-ul a:before {
  content: "";
  position: absolute;
  width: max(1rem, 8px);
  height: max(1rem, 8px);
  background: #21509F;
  -webkit-mask: url("../img/common/icon_arrow.svg") center/100% no-repeat;
          mask: url("../img/common/icon_arrow.svg") center/100% no-repeat;
  top: 50%;
  right: 0.7rem;
  transform: translateY(-50%);
}
.under-list-ul a:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  transition: all 0.5s ease-in-out;
  background-color: #21509F;
}
@media screen and (min-width: 768px) {
  .under-list-ul a:hover {
    color: #21509F;
    padding-left: 0.7rem;
  }
  .under-list-ul a:hover:after {
    width: 100%;
  }
  .under-list-ul a:hover:before {
    animation: arrowMove 0.6s ease 0s 1 both;
  }
}

.setting-title h3 {
  letter-spacing: 0.2rem;
  line-height: 1.45;
  text-align: center;
  font-weight: 500;
  font-size: 3.2rem;
  margin-bottom: 4rem;
  position: relative;
  background-image: url(../img/common/icon1.png);
  background-size: 7.5rem auto;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 8rem;
}
.setting-title h3::first-letter {
  color: #21509F;
}
@media screen and (max-width: 767px) {
  .setting-title h3 {
    background-size: 5.2rem auto;
    font-size: 2.2rem;
    padding-top: 5.5rem;
    margin-bottom: 2.5rem;
  }
}

.setting-title h2 {
  letter-spacing: 0.5rem;
  line-height: 1.45;
  text-align: center;
  font-weight: 500;
  font-size: 4rem;
  margin-bottom: 5.6rem;
}
@media screen and (max-width: 767px) {
  .setting-title h2 {
    font-size: 3rem;
    margin-bottom: 3.3rem;
  }
}

.setting-title h4 {
  letter-spacing: 0.5rem;
  line-height: 1.45;
  font-weight: 500;
  font-size: 2.4rem;
  margin-bottom: 3rem;
  margin-top: 5rem;
  background-color: #21509F;
  padding: 1rem 1.5rem;
  border-bottom: max(0.3rem, 1px) dashed #fff;
  color: #fff;
  padding-top: 0;
}
.setting-title h4:before {
  content: "";
  display: inline-block;
  width: 4rem;
  height: 4rem;
  background-size: contain;
  background-image: url(../img/common/icon2.png);
  background-repeat: no-repeat;
  background-position: center center;
  margin-right: 1rem;
  transform: translateY(0.7rem);
}
@media screen and (max-width: 767px) {
  .setting-title h4 {
    font-size: 2rem;
    margin-bottom: 2.2rem;
    margin-top: 3.7rem;
    letter-spacing: 0.1rem;
  }
}

.setting-title h6 {
  letter-spacing: 0.5rem;
  line-height: 1.45;
  font-weight: 500;
  font-size: 2.2rem;
  margin-bottom: 2.2rem;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.setting-title h6:before {
  content: "";
  display: block;
  width: 2rem;
  height: max(0.4rem, 2px);
  background-color: #21509F;
  margin-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .setting-title h6 {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}

.pt {
  padding-top: 7.6rem;
}

.pb {
  padding-bottom: 10rem;
}

.default-txt {
  font-size: 1.7rem;
  line-height: 2;
}
.default-txt a {
  text-decoration: underline;
  color: #21509F;
}
@media screen and (min-width: 768px) {
  .default-txt a:hover {
    text-decoration: none;
  }
}

.endoscopy {
  display: grid;
  grid-template-columns: 58.5% 38.2%;
  justify-content: space-between;
  align-items: flex-start;
}
.endoscopy .endoscopy__image img {
  border-radius: 1.5rem;
  width: 100%;
}

.endoscopy.endoscopy-row-reque {
  grid-template-columns: 38.2% 58.5%;
  grid-template-areas: "right left";
}

.endoscopy.endoscopy-row-reque .endoscopy__text {
  grid-area: left;
}

.endoscopy.endoscopy-row-reque .endoscopy__image {
  grid-area: right;
}

.setting-title h5 {
  font-size: 2.2rem;
  padding: 1.5rem 1rem;
  margin-bottom: 2.2rem;
  margin-top: 4rem;
  position: relative;
  line-height: 1.45;
  letter-spacing: 0.3rem;
  color: #21509F;
  padding-top: 0;
  font-weight: 500;
}
.setting-title h5:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.5rem;
  content: "";
  background-image: linear-gradient(240deg, rgb(2, 64, 151) 0%, rgb(55, 145, 154) 100%);
}

.m_kakomi__checklist {
  font-size: 1.7rem;
  letter-spacing: 0.15rem;
  line-height: 2;
  display: grid;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 1.4rem;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 767px) {
  .m_kakomi__checklist {
    font-size: 1.6rem;
  }
}
.m_kakomi__checklist li {
  padding-left: 3.4rem;
  background-image: url(../img/common/icon_check.svg);
  background-repeat: no-repeat;
  background-size: 2rem auto;
  background-position: top 0.8rem left 0.1rem;
}
.m_kakomi__checklist li a {
  text-decoration: underline;
  color: #21509F;
}
@media screen and (min-width: 768px) {
  .m_kakomi__checklist li a:hover {
    text-decoration: none;
  }
}

.m_kakomi {
  border-radius: 1rem;
  padding: 3rem 3rem;
  background-color: rgba(255, 216, 189, 0.1607843137);
  border: 0.6rem solid #7ECECB;
}

.m_kakomi__alltext--pt {
  margin-top: 1.7rem;
}
.m_kakomi__alltext--pt li + li {
  margin-top: 1.7rem;
}

.m_kakomi__checklist--3col {
  grid-template-columns: 1fr 1fr 1fr;
}

.m_kakomi__checklist--1col {
  grid-template-columns: 1fr;
}

.setting-mgt0 {
  margin-top: 0 !important;
}

.m_kakomi02 {
  padding: 3rem 3rem 4rem;
  margin-top: 3rem;
  background-image: url(../img/common/image10.jpg);
  background-size: contain;
  background-repeat: repeat;
  border-radius: 1rem;
}
.m_kakomi02 h1, .m_kakomi02 h2, .m_kakomi02 h3, .m_kakomi02 h4, .m_kakomi02 h5, .m_kakomi02 h6 {
  margin-top: 0 !important;
}

.m_kakomi02_box-stiker {
  font-size: 1.7rem;
  padding: 0.3em 0.5em 0.3em;
  margin-bottom: 1.9rem;
  background-color: #21509F;
  color: #fff;
  display: inline-block;
  letter-spacing: 0.2rem;
  line-height: 1.45;
}

.default-txt-mini {
  font-size: max(1.4rem, 10px);
  line-height: 2;
}

.m_kakomi02-img {
  padding-top: 1.4rem;
}

.m_kakomi02-img img {
  border-radius: 2rem;
  width: 100%;
}

.m_kakomi02-txt-vs-img {
  display: grid;
  grid-template-columns: 1fr 36.36%;
  -moz-column-gap: 5.8%;
       column-gap: 5.8%;
}

.m_kakomi02_box_list li + li {
  margin-top: 2.9rem;
  padding-top: 3rem;
  border-top: 1px dashed #21509F;
}

.import-youtube iframe {
  width: 100%;
  height: 49.7rem;
}

.m_flow {
  padding-left: 2rem;
  margin-top: 6.5rem;
}
.m_flow h2, .m_flow h3, .m_flow h4, .m_flow h5, .m_flow h6 {
  margin-top: 0 !important;
}
.m_flow li {
  border-radius: 2rem;
  padding: 3.9rem 6rem 6rem;
  border: 2px solid #cec9c6;
  position: relative;
}
.m_flow li + li {
  margin-top: 6.5rem;
}
.m_flow li + li:before {
  content: "";
  position: absolute;
  width: 2rem;
  height: 1.5rem;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  background-color: #212121;
  left: 50%;
  transform: translateX(-50%);
  top: -4rem;
}

.tlt-style-line {
  font-size: 2.2rem;
  padding-bottom: 1.3rem;
  border-bottom: 2px solid #212121;
  margin-bottom: 3.2rem;
  line-height: 1.45;
  letter-spacing: 0.15rem;
}

.m_flow_step {
  width: 8rem;
  height: 8rem;
  top: -3.7rem;
  left: -2.2rem;
  padding-top: 1rem;
  font-size: 1.4rem;
  position: absolute;
  text-align: center;
  border-radius: 100rem;
  background-color: #21509F;
  color: #fff;
  letter-spacing: 0.2rem;
}
.m_flow_step span {
  font-size: 3rem;
  line-height: 1;
}

.m_flow-img {
  padding-top: 1.4rem;
}

.m_flow-img img {
  width: 100%;
  border-radius: 2rem;
}

.m_flow-txt-vs-img {
  display: grid;
  grid-template-columns: 1fr 39.7%;
  -moz-column-gap: 6.1%;
       column-gap: 6.1%;
}

@keyframes arrowMove {
  0% {
    opacity: 1;
    transform: translate(0%, -50%);
  }
  50% {
    opacity: 0;
    transform: translate(120%, -50%);
  }
  64% {
    opacity: 0;
    transform: translate(-120%, -50%);
  }
  100% {
    opacity: 1;
    transform: translate(0%, -50%);
  }
}
@media (max-width: 767px) {
  .banner-page img {
    height: 25rem;
    -o-object-position: left center;
       object-position: left center;
  }
  .banner-page .banner-page-title {
    padding: 0.6rem 1.5rem;
    font-size: 1.9rem;
    max-width: 32rem;
    top: 61%;
  }
  .brecum-page-ul {
    font-size: 1.4rem;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .under-list-ul {
    font-size: 1.3rem;
    letter-spacing: 0.2rem;
    display: block;
    border: 0.1rem solid #21509F;
    padding-left: 1.8rem;
    padding-top: 1.3rem;
    padding-bottom: 2.5rem;
    padding-right: 1.8rem;
  }
  .under-list-ul a {
    min-height: 4.4rem;
    padding-left: 0.5rem;
    padding-top: 0.7rem;
    padding-right: 3rem;
    padding-bottom: 0.7rem;
    border-bottom: 0.1rem solid #cec9c6;
  }
  .under-list-ul a:before {
    width: 0.8rem;
    height: 0.8rem;
    right: 0.6rem;
  }
  .under-list-ul a:after {
    bottom: -0.1rem;
    height: 0.1rem;
  }
  .pt {
    padding-top: 3.7rem;
  }
  .pb {
    padding-bottom: 4.5rem;
  }
  .default-txt {
    font-size: 1.6rem;
  }
  .endoscopy {
    display: flex;
    flex-direction: column-reverse;
  }
  .endoscopy .endoscopy__image {
    margin-bottom: 1.8rem;
  }
  .endoscopy .endoscopy__text {
    width: 100%;
  }
  .setting-title h5 {
    font-size: 2rem;
    margin-bottom: 2.2rem;
    margin-top: 3.7rem;
  }
  .m_kakomi {
    padding: 2.25rem 1.5rem;
  }
  .m_kakomi__checklist {
    display: block;
  }
  .m_kakomi__checklist li {
    padding-left: 2.7rem;
    background-image: url(../img/common/icon_check.svg);
    background-repeat: no-repeat;
    background-size: 1.8rem auto;
    background-position: top 0.5rem left 0.1rem;
  }
  .m_kakomi__checklist li + li {
    margin-top: 1.1rem;
  }
  .m_kakomi__alltext--pt {
    margin-top: 1.3rem;
  }
  .m_kakomi__alltext--pt li + li {
    margin-top: 1.3rem;
  }
  .m_kakomi02 {
    padding: 3rem 1.5rem;
    margin-top: 1.8rem;
  }
  .m_kakomi02_box-stiker {
    font-size: 1.6rem;
    padding-top: 0.29rem;
    padding-bottom: 0.43rem;
    padding-left: 1.45rem;
    padding-right: 1.45rem;
    margin-bottom: 1.5rem;
    letter-spacing: 0.15rem;
  }
  .m_kakomi02_box_list li + li {
    margin-top: 3rem;
    border-top: 0.1rem dashed #21509F;
  }
  .m_kakomi02-txt-vs-img {
    display: flex;
    flex-direction: column-reverse;
  }
  .m_kakomi02-img {
    padding-top: 0;
    margin-bottom: 1.3rem;
  }
  .default-txt-mini {
    font-size: 1rem;
  }
  .import-youtube iframe {
    height: 50rem;
  }
  .m_flow {
    padding-left: 0;
    margin-top: 4.5rem;
  }
  .m_flow li {
    padding: 2.25rem;
    padding-top: 3rem;
    border: 0.2rem solid #cec9c6;
  }
  .m_flow li + li {
    margin-top: 6.7rem;
  }
  .m_flow_step {
    width: 5.2rem;
    height: 5.2rem;
    top: -2.6rem;
    left: -1rem;
    padding-top: 0.7rem;
    font-size: 0.9rem;
  }
  .m_flow_step span {
    font-size: 2rem;
  }
  .tlt-style-line {
    font-size: 1.8rem;
    padding-bottom: 1.1rem;
    border-bottom: 0.2rem solid #423e3e;
    margin-bottom: 2.2rem;
  }
  .m_flow-txt-vs-img {
    display: flex;
    flex-direction: column-reverse;
  }
  .m_flow-img {
    padding-top: 0;
    padding-bottom: 1.5rem;
  }
}
.m_page_links-item {
  font-size: 1.4rem;
  line-height: 1.4;
  background-color: #fff;
  padding: 1.2rem 1.8rem;
  border: max(1px, 0.1rem) solid #21509F !important;
  display: inline-block;
  font-weight: 500;
  letter-spacing: 0.3rem;
  transition: all 0.3s ease-in-out;
}
.m_page_links-item:hover, .m_page_links-item.is-active {
  background-color: #21509F;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .m_page_links-item {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.8rem;
    height: 100%;
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 0.1rem;
  }
}

.m_page_links {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
  padding-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
  .m_page_links {
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .m_page_links {
    gap: 1rem;
    justify-content: flex-start;
  }
  .m_page_links li {
    width: calc((100% - 1rem) / 2);
  }
}

.under-list-style2-ul-item {
  display: flex;
  align-items: center;
  background-color: #21509F;
  padding: 0.9rem 4rem 1rem 2rem;
  border-radius: 0.5rem;
  color: #fff;
  line-height: 1.5;
  font-size: 1.6rem;
  position: relative;
  letter-spacing: 0.3rem;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .under-list-style2-ul-item {
    font-size: 1.4rem;
    letter-spacing: 0.1rem;
  }
}
.under-list-style2-ul-item:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: max(0.8rem, 5px);
  height: max(0.8rem, 5px);
  border-right: max(1px, 0.2rem) solid #fff;
  border-bottom: max(1px, 0.2rem) solid #fff;
  transform: translateY(-75%) rotate(45deg);
}

.under-list-style2-ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media screen and (max-width: 767px) {
  .under-list-style2-ul {
    display: block;
  }
  .under-list-style2-ul li + li {
    margin-top: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .under-list-style2.col1 .under-list-style2-ul {
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
    flex-direction: column;
  }
  .under-list-style2.col2 .under-list-style2-ul {
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
  }
  .under-list-style2.col2 .under-list-style2-ul li {
    width: calc((100% - 1rem) / 2);
  }
  .under-list-style2.col3 .under-list-style2-ul li {
    width: calc((100% - 2rem) / 3);
  }
  .under-list-style2.col4 .under-list-style2-ul li {
    width: calc((100% - 3rem) / 4);
  }
}

.q_box {
  position: relative;
  cursor: pointer;
}
.q_box .toggle-iconplus {
  position: absolute;
  top: 1.3rem;
  right: 1.5rem;
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .q_box .toggle-iconplus {
    top: 1rem;
  }
}
.q_box .toggle-iconplus:before, .q_box .toggle-iconplus:after {
  content: "";
  width: 3rem;
  height: max(2px, 0.4rem);
  background-color: #fff;
  position: absolute;
  top: 50%;
}
.q_box .toggle-iconplus:after {
  transform: rotate(90deg);
  transition: all 0.3s ease-in-out;
}
.q_box.is-active .toggle-iconplus:after {
  opacity: 0;
}

.qa_box-gr .qa_box_item .q_box-tlt {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.7;
  color: #fff;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  background-color: #21509F;
  padding-top: 0.7rem;
  padding-bottom: 0.3rem;
  padding-left: 1.5rem;
  padding-right: 6rem;
}
@media screen and (max-width: 767px) {
  .qa_box-gr .qa_box_item .q_box-tlt {
    font-size: 1.8rem;
    padding-right: 5rem;
  }
}
.qa_box-gr .qa_box_item .q_box-tlt:before {
  content: "Q.";
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.7;
  color: #fff;
  display: inline-block;
  transform: translateY(-0.3rem);
}
@media screen and (max-width: 767px) {
  .qa_box-gr .qa_box_item .q_box-tlt:before {
    font-size: 2.5rem;
  }
}
.qa_box-gr .qa_box_item .a_box-tlt {
  font-size: 1.7rem;
  line-height: 1.7;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .qa_box-gr .qa_box_item .a_box-tlt {
    font-size: 1.5rem;
  }
}
.qa_box-gr .qa_box_item .a_box-tlt:before {
  content: "A.";
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.7;
  display: inline-block;
  transform: translateY(-1rem);
}
@media screen and (max-width: 767px) {
  .qa_box-gr .qa_box_item .a_box-tlt:before {
    font-size: 2.5rem;
  }
}
.qa_box-gr .qa_box_item .a_box {
  padding-top: 1.5rem;
}
.qa_box-gr .qa_box_item + .qa_box_item {
  border-top: max(1px, 0.1rem) solid #21509F;
  padding-top: 2rem;
  margin-top: 2rem;
}

.archive-post-list {
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .archive-post-list {
    font-size: 1.5rem;
  }
}
.archive-post-list li {
  display: grid;
  grid-template-columns: 14rem 1fr;
  padding: 2rem 2rem;
  border-bottom: max(1px, 0.1rem) solid #333333;
}
@media screen and (max-width: 767px) {
  .archive-post-list li {
    display: block;
    padding: 1.5rem;
  }
}

.archive-main {
  padding: 5rem 0;
}
@media screen and (max-width: 767px) {
  .archive-main {
    padding-top: 3rem;
    padding-bottom: 0;
  }
}

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

.title-category {
  font-size: 2.2rem;
  color: #fff;
  background-color: #21509F;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}

.archive-post-category {
  font-size: 1.8rem;
  color: #21509F;
  font-weight: 500;
  border: max(1px, 0.1rem) solid #21509F;
}
.archive-post-category li {
  padding: 0 2rem;
}
.archive-post-category li a {
  display: block;
  padding: 1rem 1rem;
}

.wrap-pagi .wp-pagenavi {
  padding-top: 5rem;
  display: flex;
  flex-wrap: wrap;
}
.wrap-pagi .wp-pagenavi a, .wrap-pagi .wp-pagenavi span {
  padding: 1rem;
  font-size: 1.5rem;
  border-color: #21509F;
}
.wrap-pagi .wp-pagenavi a:hover, .wrap-pagi .wp-pagenavi span.current {
  background-color: #21509F;
  color: #fff;
  border-color: #21509F;
}

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

.single-post-tlt {
  font-size: 2.6rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .single-post-tlt {
    font-size: 2rem;
  }
}

.single-post-date {
  font-size: 1.6rem;
  font-weight: 500;
}

.single-content-post {
  font-size: 1.6rem;
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .single-content-post {
    font-size: 1.5rem;
  }
}

.parent-pre-list-next {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
.parent-pre-list-next span.link-arline-page {
  opacity: 0.5;
  background-color: #21509F !important;
  color: #fff !important;
}
@media screen and (max-width: 767px) {
  .parent-pre-list-next {
    -moz-column-gap: 0;
         column-gap: 0;
    justify-content: space-between;
  }
  .parent-pre-list-next .link-arline-page {
    width: 30%;
  }
}

.menu-global {
  font-size: 1em;
  display: none;
  padding-top: 3em;
}
.menu-global.menu-global-1column {
  width: 34em;
}
.menu-global.menu-global-3column .menu-colum-global {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 5em 10em;
  -moz-column-gap: 5em;
       column-gap: 5em;
}
@media screen and (max-width: 1500px) {
  .menu-global.menu-global-3column .menu-colum-global {
    padding: 5em 5em;
  }
}
@media screen and (max-width: 1400px) {
  .menu-global.menu-global-3column .menu-colum-global {
    padding: 3em 3em;
  }
}

.menu-colum-global {
  background-color: #21509F;
  color: #fff;
  transition: all 0.3s ease-in-out;
}
.menu-colum-global a {
  display: block;
  line-height: 1.5;
  padding: 1em 2em;
  background-image: url(../img/common/vettor16.svg);
  background-size: 0.7em auto;
  background-repeat: no-repeat;
  background-position: left 0.7em center;
}
.menu-colum-global a span {
  font-size: 1.7em;
}
.menu-colum-global a:hover {
  opacity: 0.7;
}
.menu-colum-global li {
  border-bottom: max(1px, 0.1em) solid #fff;
}

.dropmenu1column {
  position: relative;
}
.dropmenu1column .menu-global-1column {
  position: absolute;
  top: calc(100% - 1em);
  left: -1em;
}
.dropmenu1column:hover .menu-global-1column {
  display: block !important;
}

.dropmenu3column .menu-global-3column {
  position: absolute;
  top: calc(100% - 5em);
  left: 0;
  right: 0;
  padding-top: 4em;
}
.dropmenu3column:hover .menu-global-3column {
  display: block !important;
}

.footer-mgt-page {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .footer-mgt-page {
    margin-top: 5rem !important;
  }
}

.link-arline-page {
  width: 22rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-weight: 600;
  font-size: 1.8rem;
  border: max(1px, 0.1rem) solid #21509F !important;
  border-radius: 10rem;
  transition: all 0.3s ease-in-out;
  color: #fff;
  background-color: #21509F;
}
.link-arline-page:hover {
  background-color: #fff;
  color: #21509F;
}
@media screen and (max-width: 767px) {
  .link-arline-page {
    font-size: 1.6rem;
  }
}

.archive-post--column {
  display: block;
}

.archive-post-column {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 3rem;
}
.archive-post-column li {
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.14);
}
.archive-post-column li img {
  width: 100%;
  height: 20rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .archive-post-column li img {
    height: 17rem;
  }
}
@media screen and (max-width: 767px) {
  .archive-post-column li img {
    height: 12rem;
  }
}
@media screen and (max-width: 767px) {
  .archive-post-column {
    grid-template-columns: 1fr 1fr;
    row-gap: 2rem;
  }
}

.content-box-sub-column {
  padding: 2rem 1rem;
}
@media screen and (max-width: 767px) {
  .content-box-sub-column {
    padding: 1rem;
  }
}

.list-post-topics-txt-date {
  font-size: 1.5rem;
  color: #21509F;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .list-post-topics-txt-date {
    font-size: 1.4rem;
  }
}

.list-post-topics-txt-tlt {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 0.3rem;
}
@media screen and (max-width: 767px) {
  .list-post-topics-txt-tlt {
    font-size: 1.5rem;
  }
}

.list-post-topics-txt-dect {
  font-size: 1.4rem;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .list-post-topics-txt-dect {
    margin-top: 0.5rem;
  }
}
.list-post-topics-txt-dect a {
  display: inline-block;
  color: #21509F;
  border-bottom: max(1px, 0.1rem) solid #21509F;
  line-height: 1.2;
}

.h1-none-page {
  display: none;
}

.table-normal-style {
  width: 100%;
}
.table-normal-style tr td:first-child {
  width: 15rem;
  background-color: #21509F;
  color: #fff;
  font-weight: 500;
  padding-left: 1.5rem;
  border-bottom-color: #fff;
}
.table-normal-style tr:last-child td:first-child {
  border-bottom-color: #21509F;
}
.table-normal-style tr td:last-child {
  width: calc(100% - 15rem);
  padding-left: 1.5rem;
  padding-right: 1rem;
  background-color: #fff;
}
.table-normal-style tr td {
  border: max(1px, 0.1rem) solid #21509F;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .table-normal-style tr td {
    width: 100% !important;
    float: left;
    border: 0 !important;
  }
}
@media screen and (min-width: 768px) {
  .table-normal-style.table-normal-style2 tr td:first-child {
    width: 35rem;
  }
  .table-normal-style.table-normal-style2 tr td:last-child {
    width: calc(100% - 35rem);
  }
}
@media screen and (min-width: 768px) {
  .table-normal-style.table-style3 tr td:first-child {
    width: 43rem;
  }
  .table-normal-style.table-style3 tr td:last-child {
    width: calc(100% - 43rem);
  }
  .table-normal-style.table-style5 tr td:first-child {
    width: 50rem;
  }
  .table-normal-style.table-style5 tr td:last-child {
    width: calc(100% - 50rem);
  }
}
@media screen and (min-width: 768px) {
  .table-normal-style.table-style4 tr td:first-child {
    width: 25rem;
  }
  .table-normal-style.table-style4 tr td:last-child {
    width: calc(100% - 25rem);
  }
}
@media screen and (min-width: 768px) {
  .table-normal-style.table-style6 tr td:first-child {
    width: 22rem;
  }
  .table-normal-style.table-style6 tr td:last-child {
    width: calc(100% - 22rem);
  }
}

.table-calender-style {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 500;
  table-layout: fixed;
}
@media screen and (max-width: 767px) {
  .table-calender-style {
    font-size: 1.4rem;
  }
}
.table-calender-style tr td:first-child {
  width: 28rem;
  text-align: left;
  background-color: #21509F;
  color: #fff;
  padding-left: 2rem;
}
@media screen and (max-width: 999px) {
  .table-calender-style tr td:first-child {
    width: 30rem;
  }
}
@media screen and (max-width: 767px) {
  .table-calender-style tr td:first-child {
    width: 10rem;
    padding-left: 1rem;
  }
}
.table-calender-style tr td {
  width: calc((100% - 28rem) / 8);
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  vertical-align: middle;
}
@media screen and (max-width: 999px) {
  .table-calender-style tr td {
    width: calc((100% - 30rem) / 8);
  }
}
@media screen and (max-width: 767px) {
  .table-calender-style tr td {
    width: calc((100% - 10rem) / 8);
  }
}
.table-calender-style tr:first-child td {
  background-color: #21509F;
  color: #fff;
}
.table-calender-style tr:first-child td:last-child {
  border-right: max(1px, 0.1rem) solid #21509F;
}
.table-calender-style tr:first-child td + td {
  border-left: max(1px, 0.1rem) solid #fff;
}
.table-calender-style tr + tr td:first-child {
  border-top: max(1px, 0.1rem) solid #fff;
}
.table-calender-style tr:not(:first-child) td:not(:first-child) {
  border-left: max(1px, 0.1rem) solid #21509F;
  border-bottom: max(1px, 0.1rem) solid #21509F;
}
.table-calender-style tr:not(:first-child) td:not(:first-child):last-child {
  border-right: max(1px, 0.1rem) solid #21509F;
}

#toc_container {
  border: 0 !important;
  position: relative;
  color: #21509F;
  width: 66rem !important;
  margin-bottom: 0 !important;
  padding: 2rem 1.5rem !important;
  background-color: rgba(0, 165, 177, 0.25) !important;
}
@media screen and (max-width: 767px) {
  #toc_container {
    width: 100% !important;
  }
}
#toc_container .toc_title {
  text-align: left !important;
  background-color: #fff;
  color: #21509F;
  padding: 0.5rem 1.5rem !important;
  margin-bottom: 1.5rem !important;
  width: 100% !important;
  font-size: 1.8rem !important;
}
#toc_container .toc_list {
  font-size: 1.6rem;
  font-weight: 500;
  text-underline-offset: 0.5rem;
}
#toc_container a {
  display: inline-block;
  text-decoration: underline !important;
  position: relative;
  padding-left: 2rem;
}
#toc_container a:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
#toc_container a:hover {
  opacity: 0.7;
}
#toc_container li + li {
  margin-top: 1rem;
}

.google-map-iframe iframe {
  width: 100%;
  height: 40rem;
}
@media screen and (max-width: 767px) {
  .google-map-iframe iframe {
    height: 25rem;
  }
}

.list-paradai {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 2rem;
}
@media screen and (max-width: 999px) {
  .list-paradai {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .list-paradai {
    display: block;
  }
  .list-paradai .list-paradai-item + .list-paradai-item {
    margin-top: 3rem;
  }
}

.list-paradai-item {
  display: flex;
  flex-direction: column;
}
.list-paradai-item .list-paradai-item-img {
  flex-shrink: 0;
}
.list-paradai-item .list-paradai-item-content {
  flex: 1;
}
.list-paradai-item .default-txt {
  text-align: left;
}

.list-paradai-item-img img {
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  height: 25.7rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .list-paradai-item-img img {
    height: 23rem;
  }
}

.list-paradai-item-content {
  background-color: #21509F;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.7rem;
  padding-bottom: 3.5rem;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .list-paradai-item-content {
    font-size: 1.7rem;
    padding-bottom: 2rem;
  }
}
.list-paradai-item-content p.no-hiden {
  border-bottom: max(1px, 0.2rem) solid #fff;
  display: inline-block;
  margin-bottom: 1.5rem;
}

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

@media screen and (min-width: 768px) {
  .txt-centersp {
    text-align: center;
  }
}

.ud_point-item-number {
  position: relative;
}

.ud_point-item-number-txt {
  font-size: 8rem;
  color: #21509F;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  bottom: -3rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .ud_point-item-number-txt {
    font-size: 6rem;
    bottom: -2rem;
  }
}
.ud_point-item-number-txt:before {
  content: "POINT";
  font-size: 2rem;
  font-weight: 500;
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .ud_point-item-number-txt:before {
    font-size: 1.8rem;
  }
}

.ud_point-item {
  padding: 3rem 4rem;
  padding-top: 1rem;
  background-image: url(../img/common/image072.png), url(../img/common/image082.png);
  background-size: 40rem auto, 60rem auto;
  background-position: bottom right, top left;
  background-repeat: no-repeat, no-repeat;
  background-color: rgba(206, 218, 238, 0.2784313725);
  box-shadow: 0 0 0.5rem rgba(33, 80, 159, 0.3);
}
@media screen and (max-width: 767px) {
  .ud_point-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    background-size: 27rem auto, 37rem auto;
  }
}

.ud_point {
  padding-top: 5rem;
}
.ud_point .ud_point-item + .ud_point-item {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .ud_point {
    padding-top: 4rem;
  }
  .ud_point .ud_point-item + .ud_point-item {
    margin-top: 7rem;
  }
}

.mgt3 {
  margin-top: 3rem;
}

.ud_step {
  padding-top: 3rem;
}
.ud_step .ud_step-item + .ud_step-item {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .ud_step .ud_step-item + .ud_step-item {
    margin-top: 7rem;
  }
}
.ud_step .ud_step-item + .ud_step-item:after {
  content: "";
  position: absolute;
  top: -6rem;
  width: 3rem;
  height: 3rem;
  background-color: #21509F;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .ud_step .ud_step-item + .ud_step-item:after {
    width: 2rem;
    height: 2rem;
    top: -5rem;
  }
}

.ud_step-item {
  background-color: #fff;
  box-shadow: 0 0 0.5rem rgba(71, 71, 71, 0.2901960784);
  width: calc(100% - 1.5rem);
  padding: 3rem 2.5rem;
  padding-top: 0.2rem;
  position: relative;
  background-image: url(../img/common/image07.png), url(../img/common/image08.png);
  background-size: 40rem auto, 60rem auto;
  background-position: bottom right, top left;
  background-repeat: no-repeat, no-repeat;
}
@media screen and (max-width: 767px) {
  .ud_step-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width: calc(100% - 0.6rem);
    background-size: 27rem auto, 37rem auto;
  }
}
.ud_step-item:before {
  content: "";
  position: absolute;
  top: 2rem;
  left: 2rem;
  right: -1.5rem;
  bottom: -2rem;
  background-color: #21509F;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .ud_step-item:before {
    right: -0.6rem;
    bottom: -1rem;
  }
}
.ud_step-item .ud_step-item-step {
  position: absolute;
  font-size: 3rem;
  font-weight: 500;
  width: 20rem;
  padding: 1rem 0;
  background-color: #21509F;
  color: #fff;
  letter-spacing: 0.5rem;
  line-height: 1;
  text-align: center;
  transform: translateY(-50%);
  left: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .ud_step-item .ud_step-item-step {
    font-size: 2.5rem;
    width: 15rem;
    letter-spacing: 0.3rem;
  }
}

.list-select-table {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 1rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .list-select-table {
    justify-content: space-between;
    -moz-column-gap: 0;
         column-gap: 0;
    margin-bottom: 3rem;
  }
}

.list-select-table-btn {
  width: 30rem;
  height: 6rem;
  background-color: #21509F;
  border: max(1px, 0.1rem) solid #21509F;
  font-size: 2rem;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .list-select-table-btn {
    font-size: 1.7rem;
    width: 48%;
    height: 5rem;
  }
}
.list-select-table-btn:hover, .list-select-table-btn.is-active {
  background-color: #fff;
  color: #21509F;
}

.informetab {
  display: none;
}

#tab1 {
  display: block;
}

.mgt5 {
  margin-top: 5rem;
}

.fade-top {
  opacity: 0;
  animation: fade-top 0.5s ease forwards;
  animation-delay: 0.6s;
}

@keyframes fade-top {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.setting-single-heading h1 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin: 3rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h1 {
    font-size: 2.6rem;
    margin: 2rem 0;
  }
}
.setting-single-heading h2 {
  font-size: 2.6rem;
  font-weight: 500;
  padding: 0.5rem 1.5rem;
  background-color: #21509F;
  color: #fff;
  margin: 2rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h2 {
    font-size: 2.2rem;
    margin: 1rem 0;
  }
}
.setting-single-heading h3, .setting-single-heading h4, .setting-single-heading h5, .setting-single-heading h6 {
  font-size: 2.3rem;
  font-weight: 500;
  color: #21509F;
  margin: 1rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h3, .setting-single-heading h4, .setting-single-heading h5, .setting-single-heading h6 {
    font-size: 2.2rem;
    margin: 0.7rem 0;
  }
}
.setting-single-heading h4 {
  font-size: 2.1rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h4 {
    font-size: 2rem;
  }
}
.setting-single-heading h5 {
  font-size: 1.9rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h5 {
    font-size: 1.8rem;
  }
}
.setting-single-heading h6 {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h6 {
    font-size: 1.7rem;
  }
}

.alower-secmer {
  border: max(1rem, 5px) solid #21509F;
  padding: 3rem 3rem;
  background-color: rgba(191, 232, 235, 0.5);
}
@media screen and (max-width: 767px) {
  .alower-secmer {
    padding: 2rem 1.5rem;
    border: max(0.5rem, 1px) solid #21509F;
  }
}

.alower-secmer-grid {
  display: grid;
  grid-template-columns: 63% 35%;
  justify-content: space-between;
  align-items: flex-start;
}
.alower-secmer-grid .alower-secmer-img img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 767px) {
  .alower-secmer-grid {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 2rem;
  }
}

.disadvantages {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .disadvantages {
    display: block;
  }
}
.disadvantages .disadvantages-item {
  border: max(0.2rem, 2px) solid #1FB1E8;
}
.disadvantages .disadvantages-item h1, .disadvantages .disadvantages-item h2, .disadvantages .disadvantages-item h3, .disadvantages .disadvantages-item h4, .disadvantages .disadvantages-item h5, .disadvantages .disadvantages-item h6 {
  margin-top: 0;
}
.disadvantages .disadvantages-item .disadvantages-acres {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .disadvantages .disadvantages-item + .disadvantages-item {
    margin-top: 3rem;
  }
}

.skin-metamax {
  font-size: 2.6rem;
  font-weight: 500;
  color: #21509F;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
}
.skin-metamax:before {
  content: "";
  display: block;
  width: 2rem;
  height: 2.5rem;
  background-color: #21509F;
  clip-path: polygon(75% 0%, 100% 50%, 75% 100%, 0% 100%, 25% 50%, 0% 0%);
  transform: translateY(1rem);
}
@media screen and (max-width: 767px) {
  .skin-metamax:before {
    height: 2rem;
    transform: translateY(0.7rem);
  }
}
@media screen and (max-width: 767px) {
  .skin-metamax {
    font-size: 2.1rem;
  }
}

.clnumberzen {
  color: #21509F;
  font-weight: 500;
}

.doctor-single-name {
  font-size: 2.3rem;
  font-weight: 500;
  text-align: right;
  color: #21509F;
}
@media screen and (max-width: 999px) {
  .doctor-single-name {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .doctor-single-name {
    font-size: 1.8rem;
  }
}

.setting-single-heading h1 {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin: 3rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h1 {
    font-size: 2.6rem;
    margin: 2rem 0;
  }
}
.setting-single-heading h2 {
  font-size: 2.6rem;
  font-weight: 500;
  padding: 0.5rem 1.5rem;
  background-color: #21509F;
  color: #fff;
  margin: 2rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h2 {
    font-size: 2.2rem;
    margin: 1rem 0;
  }
}
.setting-single-heading h3, .setting-single-heading h4, .setting-single-heading h5, .setting-single-heading h6 {
  font-size: 2.3rem;
  font-weight: 500;
  color: #21509F;
  margin: 1rem 0;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h3, .setting-single-heading h4, .setting-single-heading h5, .setting-single-heading h6 {
    font-size: 2.2rem;
    margin: 0.7rem 0;
  }
}
.setting-single-heading h4 {
  font-size: 2.1rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h4 {
    font-size: 2rem;
  }
}
.setting-single-heading h5 {
  font-size: 1.9rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h5 {
    font-size: 1.8rem;
  }
}
.setting-single-heading h6 {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .setting-single-heading h6 {
    font-size: 1.7rem;
  }
}
.setting-single-heading .aligncenter {
  display: block;
  margin: 0 auto;
}
.setting-single-heading .alignright {
  display: block;
  margin-left: auto;
}

.ud_point .scrool-link-parent .scrool-link-child {
  top: -20rem;
}
@media screen and (max-width: 767px) {
  .ud_point .scrool-link-parent .scrool-link-child {
    top: -15rem;
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}

@media screen and (min-width: 1000px) {
  .header {
    transition: all 0.3s ease-in-out;
  }
  .header.is-active, .header.is-page, .header.is-changece {
    background-color: #21509F;
  }
}
.header {
  font-size: 10px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  border-bottom: max(1px, 0.1em) solid #fff;
}
@media screen and (max-width: 1500px) {
  .header {
    font-size: 0.67vw;
  }
}
@media screen and (max-width: 999px) {
  .header {
    font-size: 1rem;
    border-bottom: 0;
    background-color: #21509F;
  }
}
@media screen and (max-width: 767px) {
  .header {
    padding-right: 1.5rem;
  }
}

.header-logo-link {
  display: block;
  width: -moz-max-content;
  width: max-content;
  background-color: #fff;
  padding-left: 2.5em;
  padding-right: 2.5em;
  padding-top: 0.9em;
  padding-bottom: 0.9em;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1600px) {
  .header-logo-link {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .header-logo-link {
    padding-right: 1.5em;
  }
}
.header-logo-link img {
  width: 26.9em;
}
@media screen and (max-width: 767px) {
  .header-logo-link img {
    width: 16em;
  }
}

@media screen and (max-width: 767px) {
  .header-logo {
    width: 29em;
    background-color: #fff;
  }
}

.header-right-link {
  position: relative;
  z-index: 2;
  display: block;
  color: inherit;
  transition: all 0.3s ease-in-out;
}
.header-right-link span {
  font-size: 1.8em;
}
@media screen and (max-width: 1200px) {
  .header-right-link span {
    font-size: 1.9em;
  }
}
.header-right-link:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: max(1px, 0.1em);
  background-color: #fff;
  transition: all 0.3s ease-in-out;
  opacity: 0;
}
.header-right-link.is-active:before, .header-right-link:hover:before {
  opacity: 1;
}
.header-right-link.icon-drown:after {
  content: "";
  display: block;
  width: 1.2em;
  height: 1em;
  background-color: #27A7E1;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  left: 50%;
  top: calc(100% + 0.5em);
  transform: translateX(-50%);
}

.header-right-ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 5em;
       column-gap: 5em;
}
@media screen and (max-width: 1750px) {
  .header-right-ul {
    -moz-column-gap: 2.5em;
         column-gap: 2.5em;
  }
}
@media screen and (max-width: 1200px) {
  .header-right-ul {
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
}

.header-right-address {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 1em;
       column-gap: 1em;
  line-height: 1.5;
  border-right: max(1px, 0.1em) solid #fff;
  padding-right: 2em;
}
.header-right-address:before {
  content: "";
  display: block;
  width: 1.2em;
  height: 1.6em;
  background-image: url(../img/common/img01.png);
  background-size: contain;
  background-position: left center;
  background-repeat: no-repeat;
}
.header-right-address span {
  font-size: 1.6em;
  color: inherit;
}
@media screen and (max-width: 1200px) {
  .header-right-address span {
    font-size: 1.75em;
  }
}

.header-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 3.4em;
       column-gap: 3.4em;
  padding-right: 12.5em;
}
@media screen and (max-width: 1750px) {
  .header-right {
    -moz-column-gap: 2em;
         column-gap: 2em;
    padding-right: 9.5em;
  }
}
@media screen and (max-width: 999px) {
  .header-right {
    display: none;
  }
}

.header-vs-tell-link {
  width: 26em;
  display: block;
}
@media screen and (max-width: 1600px) {
  .header-vs-tell-link {
    width: 22em;
  }
}

.header-address-vs-tell {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 2em;
       column-gap: 2em;
}

.hamper-main-fixed {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 101;
  font-size: 10px;
}
@media screen and (max-width: 1500px) {
  .hamper-main-fixed {
    font-size: 0.67vw;
  }
}
@media screen and (max-width: 999px) {
  .hamper-main-fixed {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .hamper-main-fixed {
    top: auto;
    bottom: 0;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    z-index: 50;
  }
}

.btn-hamberger-conner {
  background-color: #21509F;
  height: 8.4em;
  width: 8.7em;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1200px) {
  .btn-hamberger-conner .btn-hamberger {
    transform: scale(0.8);
  }
}
@media screen and (max-width: 999px) {
  .btn-hamberger-conner .btn-hamberger {
    transform: scale(1);
  }
}
@media screen and (max-width: 999px) {
  .btn-hamberger-conner {
    height: 8.3em;
  }
}
@media screen and (max-width: 767px) {
  .btn-hamberger-conner {
    display: none;
  }
}

.hamper-main-link {
  display: block;
  width: 8.7em;
  height: 8.3em;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .hamper-main-link {
    background-size: 11em auto;
  }
}
@media screen and (max-width: 767px) {
  .hamper-main-link {
    margin-left: 0;
    width: 25%;
    height: 6em;
    background-size: 7.5rem auto;
  }
}

.menu-toggle {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.5) calc(100% - 65rem), #fff calc(100% - 65rem));
  padding-top: 12rem;
  z-index: 80;
  visibility: hidden;
  transition: all 0.3s linear;
}
.menu-toggle.is-active {
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 1300px) {
  .menu-toggle {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.5) calc(100% - 55rem), #fff calc(100% - 55rem));
  }
}
@media screen and (max-width: 999px) {
  .menu-toggle {
    background: #fff;
  }
}
@media screen and (max-width: 767px) {
  .menu-toggle {
    padding-top: 12rem;
  }
}

.menu-cont {
  width: calc(100% - 3rem);
  margin-left: auto;
  height: calc(100vh - 14rem);
  max-width: 62rem;
  padding-right: 12rem;
}
@media screen and (max-width: 1300px) {
  .menu-cont {
    max-width: 53rem;
    padding-right: 8rem;
  }
}
@media screen and (max-width: 999px) {
  .menu-cont {
    max-width: 100%;
    padding-right: 0;
    margin-right: auto;
    margin-left: 1.5rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
    width: calc(100% - 12rem);
  }
}
@media screen and (max-width: 767px) {
  .menu-cont {
    height: calc(100vh - 12rem);
    display: block;
    width: calc(100% - 3rem);
    margin-left: auto;
  }
  .menu-cont .menu-block + .menu-block {
    padding-top: 4rem;
  }
  .menu-cont .menu-block:last-child {
    padding-bottom: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .menu-cont .menu-block {
    padding-bottom: 3rem;
  }
}

.menu-block-title {
  font-size: 2.4rem;
  color: #fff;
  font-weight: 500;
  background-color: #21509F;
  padding: 0.5rem 1.5rem;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .menu-block-title {
    font-size: 2.2rem;
  }
}

.menu-block-list {
  font-size: 1.8rem;
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .menu-block-list {
    font-size: 1.6rem;
    padding-top: 2.5rem;
  }
}
.menu-block-list li + li {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .menu-block-list.menu-block-list-999 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 2rem;
  }
  .menu-block-list.menu-block-list-999 li {
    margin-top: 0 !important;
  }
}
.menu-block-list a:hover, .menu-block-list a.is-active {
  border-bottom: max(1px, 0.1rem) solid #212121;
}
.menu-block-list.menu-block-list-flex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  row-gap: 2rem;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
.menu-block-list.menu-block-list-flex li {
  margin-top: 0;
}

.inside-menu {
  overflow: auto;
}

.sec1-top-video {
  display: flex;
  position: relative;
}
.sec1-top-video:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../img/top/img01.png), url(../img/top/img02.png);
  background-size: 100% auto, 94rem auto;
  background-repeat: no-repeat, no-repeat;
  background-position: bottom -1px left, bottom -1px left;
  z-index: 2;
}
@media screen and (max-width: 999px) {
  .sec1-top-video:before {
    background-size: 105rem auto, 71rem auto;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-video:before {
    background-size: 57rem auto, 42rem auto;
  }
}
.sec1-top-video:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(42, 69, 94, 0.4);
}
.sec1-top-video video {
  width: 100%;
  height: calc(100vh + 7.81vw);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .sec1-top-video video {
    max-height: calc(100vh + 2rem);
    height: 55rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-video video {
    height: 41rem;
    max-height: 100vh;
  }
}

.first-view {
  display: grid;
  grid-template-columns: 1fr 8.7rem;
}
@media screen and (max-width: 1500px) {
  .first-view {
    grid-template-columns: 1fr 5.8vw;
  }
}
@media screen and (max-width: 999px) {
  .first-view {
    display: block;
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .first-view {
    margin-top: 5.5rem;
  }
}

.first-view-left {
  position: relative;
}
.first-view-left .first-view-tlt {
  position: absolute;
  left: 9rem;
  width: -moz-max-content;
  width: max-content;
  z-index: 3;
  bottom: 20.83vw;
}
@media screen and (max-width: 1600px) {
  .first-view-left .first-view-tlt {
    left: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .first-view-left .first-view-tlt {
    bottom: 12rem;
    left: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .first-view-left .first-view-tlt {
    bottom: 7rem;
  }
}

.first-view-tlt h1, .first-view-tlt h2, .first-view-tlt h3, .first-view-tlt h4, .first-view-tlt h5, .first-view-tlt h6 {
  font-size: 4.6rem;
  font-weight: 500;
  line-height: 1.2;
  color: #fff;
}
@media screen and (max-width: 1500px) {
  .first-view-tlt h1, .first-view-tlt h2, .first-view-tlt h3, .first-view-tlt h4, .first-view-tlt h5, .first-view-tlt h6 {
    font-size: 3.07vw;
  }
}
@media screen and (max-width: 999px) {
  .first-view-tlt h1, .first-view-tlt h2, .first-view-tlt h3, .first-view-tlt h4, .first-view-tlt h5, .first-view-tlt h6 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .first-view-tlt h1, .first-view-tlt h2, .first-view-tlt h3, .first-view-tlt h4, .first-view-tlt h5, .first-view-tlt h6 {
    font-size: 2rem;
  }
}
.first-view-tlt h1 span, .first-view-tlt h2 span, .first-view-tlt h3 span, .first-view-tlt h4 span, .first-view-tlt h5 span, .first-view-tlt h6 span {
  font-size: 1.3043em;
  color: #27A7E1;
  display: inline-block;
  text-shadow: 0 2px 0 #fff;
}
@media screen and (max-width: 767px) {
  .first-view-tlt h1 span, .first-view-tlt h2 span, .first-view-tlt h3 span, .first-view-tlt h4 span, .first-view-tlt h5 span, .first-view-tlt h6 span {
    font-size: 2.5rem;
    text-shadow: 0 0.2rem 0 #fff;
  }
}

.first-view-sub-txt {
  font-size: 2.6rem;
  color: #fff;
  line-height: 1.5;
  margin-top: 1rem;
}
@media screen and (max-width: 1500px) {
  .first-view-sub-txt {
    font-size: 1.73vw;
  }
}
@media screen and (max-width: 999px) {
  .first-view-sub-txt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .first-view-sub-txt {
    font-size: 1.8rem;
  }
}
.first-view-sub-txt span {
  font-size: 1.538em;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .first-view-sub-txt span {
    font-size: 2.3rem;
  }
}

.first-view-right-clink {
  position: relative;
  width: 3rem;
  height: 28.1rem;
  background-image: url(../img/top/img03.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}
.first-view-right-clink a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.first-view-right {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  padding-bottom: 13.02vw;
}
@media screen and (max-width: 999px) {
  .first-view-right {
    display: none;
  }
}

.fixed-cril-poper {
  position: fixed;
  z-index: 5;
  bottom: 5rem;
  right: 13rem;
}
@media screen and (max-width: 1400px) {
  .fixed-cril-poper {
    right: 9rem;
  }
}
@media screen and (max-width: 999px) {
  .fixed-cril-poper {
    right: 5rem;
    bottom: 9rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed-cril-poper {
    right: 1.5rem;
    bottom: 7rem;
  }
}
.fixed-cril-poper .fixed-cril-poper-close {
  position: absolute;
  top: 0;
  right: 2.6rem;
  z-index: 2;
  width: 3.2rem;
  height: 3.2rem;
  background-image: url(../img/top/img05.png);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  cursor: pointer;
}
@media screen and (max-width: 1400px) {
  .fixed-cril-poper .fixed-cril-poper-close {
    right: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed-cril-poper .fixed-cril-poper-close {
    width: 2.7rem;
    height: 2.7rem;
    right: 0.6rem;
  }
}
.fixed-cril-poper .fixed-cril-poper-item {
  position: relative;
  width: 20.6rem;
  height: 20.6rem;
  background-image: url(../img/top/img04.png);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1400px) {
  .fixed-cril-poper .fixed-cril-poper-item {
    width: 17rem;
    height: 17rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed-cril-poper .fixed-cril-poper-item {
    width: 11rem;
    height: 11rem;
  }
}
.fixed-cril-poper .fixed-cril-poper-item a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.sec2-top-cont {
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4.2%;
       column-gap: 4.2%;
}
@media screen and (max-width: 1300px) {
  .sec2-top-cont {
    -moz-column-gap: 2.5%;
         column-gap: 2.5%;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-cont {
    display: block;
  }
}

.sec2-top-item {
  background-color: #f9f9f9;
  border-radius: 2rem;
  padding-top: 3rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-item {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .sec2-top-item + .sec2-top-item {
    margin-top: 2.5rem;
  }
}

.setting-tlt-lv1 {
  position: relative;
}
.setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6, .setting-tlt-lv1 .setting-tlt-shadow {
  font-size: 6rem;
  font-weight: 500;
  line-height: 1;
  color: #27A7E1;
}
@media screen and (min-width: 1000px) {
  .setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6, .setting-tlt-lv1 .setting-tlt-shadow {
    letter-spacing: 0.3rem;
  }
}
@media screen and (max-width: 1500px) {
  .setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6, .setting-tlt-lv1 .setting-tlt-shadow {
    font-size: 4vw;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6, .setting-tlt-lv1 .setting-tlt-shadow {
    font-size: 2.6rem;
  }
}
.setting-tlt-lv1 .setting-tlt-shadow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%) scale(1.6);
  top: 5rem;
  color: #E6F3F8;
  width: -moz-max-content;
  width: max-content;
  letter-spacing: 0;
}
.setting-tlt-lv1 .sub_jpn {
  font-size: 2.6rem;
  font-weight: 500;
  color: #21509F;
  padding-top: 1rem;
}
@media screen and (max-width: 999px) {
  .setting-tlt-lv1 .sub_jpn {
    font-size: 2rem;
    padding-top: 0.5rem;
  }
}
.setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6, .setting-tlt-lv1 .sub_jpn {
  position: relative;
  z-index: 2;
}
.setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6 {
  background-image: url(../img/top/img06.png);
  background-size: 5.3rem auto;
  background-repeat: no-repeat;
  background-position: top center;
  padding-top: 6rem;
}
.setting-tlt-lv1.center {
  text-align: center;
}
.setting-tlt-lv1.white h1, .setting-tlt-lv1.white h2, .setting-tlt-lv1.white h3, .setting-tlt-lv1.white h4, .setting-tlt-lv1.white h5, .setting-tlt-lv1.white h6 {
  color: #fff;
}
.setting-tlt-lv1.white .setting-tlt-shadow {
  opacity: 0.3;
}
.setting-tlt-lv1.white .sub_jpn {
  color: #fff;
}

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

.ul-import-news-top {
  padding-right: 2rem;
}
@media screen and (max-width: 767px) {
  .ul-import-news-top {
    padding-right: 1rem;
  }
}
.ul-import-news-top .ul-import-news-top-date {
  display: flex;
  width: 12rem;
  height: 3rem;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: 500;
  color: #27A7E1;
  background-color: #EBF9FF;
  border-radius: 1.5rem;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .ul-import-news-top .ul-import-news-top-date {
    width: 10rem;
    font-size: 1.5rem;
  }
}
.ul-import-news-top li {
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  align-items: center;
  padding: 2rem 0;
  border-bottom: max(1px, 0.1rem) solid #A0A0A0;
}
@media screen and (max-width: 999px) {
  .ul-import-news-top li {
    padding: 1rem 0;
  }
}
@media screen and (max-width: 767px) {
  .ul-import-news-top li {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}
.ul-import-news-top .ul-import-news-top-tlt {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 2.5rem;
  background-image: url(../img/top/img07.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: right center;
}
@media screen and (max-width: 767px) {
  .ul-import-news-top .ul-import-news-top-tlt {
    font-size: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec2-top-left-list-new {
  overflow: auto;
  height: 35rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-left-list-new {
    height: 31rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-left-list-new {
    height: 21rem;
    margin-bottom: 2rem;
  }
}

.sec2-top-left-list-new::-webkit-scrollbar {
  width: 1rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-left-list-new::-webkit-scrollbar {
    width: 0.5rem;
  }
}

.sec2-top-left-list-new::-webkit-scrollbar-track {
  background: #E6F3F8;
  border-radius: 1rem;
}

.sec2-top-left-list-new::-webkit-scrollbar-thumb {
  background: #27A7E1;
  border-radius: 1rem;
}

.btn-link-lv1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  color: #fff;
  background-color: #27A7E1;
  border-radius: 3rem;
  height: 4.5rem;
  position: relative;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .btn-link-lv1 {
    font-size: 1.6rem;
  }
}
.btn-link-lv1:before {
  content: "";
  width: 5.4rem;
  height: 0.9rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -2.5rem;
  background-image: url(../img/top/img08.png);
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: right center;
}
@media screen and (max-width: 999px) {
  .btn-link-lv1:before {
    width: 3.4rem;
    right: -1.5rem;
  }
}
.btn-link-lv1.w223 {
  width: 22.3rem;
}
@media screen and (max-width: 999px) {
  .btn-link-lv1.w223 {
    width: 19.3rem;
  }
}
@media screen and (max-width: 767px) {
  .btn-link-lv1.w223 {
    width: 18.3rem;
  }
}
.btn-link-lv1.center {
  margin-left: auto;
  margin-right: auto;
}
.btn-link-lv1:hover {
  background-color: #21509F;
}

.sec2-top {
  padding-top: 1.5rem;
}

.sec2-top-right-calender {
  max-width: 53.2rem;
  margin-left: auto;
  margin-right: auto;
}

.sec-calender-top {
  width: 100%;
  border-radius: 0.5rem;
  overflow: hidden;
  table-layout: fixed;
}
.sec-calender-top tr:first-child td {
  background-color: #27A7E1;
  color: #fff;
  padding: 1rem 0;
}
.sec-calender-top tr td:first-child {
  width: 14rem;
  text-align: left;
  padding-left: 2rem !important;
}
@media screen and (max-width: 767px) {
  .sec-calender-top tr td:first-child {
    width: 10rem;
    padding-left: 1rem !important;
  }
}
.sec-calender-top tr td:last-child {
  width: calc((100% - 14rem) / 7);
}
@media screen and (max-width: 767px) {
  .sec-calender-top tr td:last-child {
    width: calc((100% - 10rem) / 7);
  }
}
.sec-calender-top tr td {
  background-color: #EBF9FF;
  text-align: center;
  padding: 1.5rem 0;
}
.sec-calender-top .calender-pentol {
  color: #27A7E1;
}

.sec2-top-right .sec2-top-right-calender {
  margin-top: 2.2rem;
}

.sec-calender-top-sub {
  margin-top: 1.5rem;
}

.sec-calender-top-sub-icon {
  display: grid;
  grid-template-columns: 35% 30% 1fr;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
}
@media screen and (max-width: 1300px) {
  .sec-calender-top-sub-icon {
    grid-template-columns: 32% 32% 1fr;
  }
}
@media screen and (max-width: 999px) {
  .sec-calender-top-sub-icon {
    grid-template-columns: 1.1fr 0.8fr 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec-calender-top-sub-icon {
    grid-template-columns: 1fr 1fr;
    row-gap: 1rem;
  }
}
.sec-calender-top-sub-icon li {
  display: grid;
  grid-template-columns: 7.2rem 1fr;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 1400px) {
  .sec-calender-top-sub-icon li {
    grid-template-columns: 5.14vw 1fr;
    -moz-column-gap: 0.71vw;
         column-gap: 0.71vw;
  }
}
@media screen and (max-width: 767px) {
  .sec-calender-top-sub-icon li {
    grid-template-columns: 5rem 1fr;
  }
}

.sec2-top-right-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-right-link {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-right-link {
    row-gap: 1.5rem;
  }
}

.sec3-top {
  max-width: 186rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-top: 9.6rem;
  padding-bottom: 4rem;
  background-image: url(../img/top/img12.png);
  background-size: 78.6rem auto;
  background-repeat: no-repeat;
  background-position: top right;
}
@media screen and (max-width: 999px) {
  .sec3-top {
    padding-top: 5.6rem;
    background-size: 58.6rem auto;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top {
    margin-top: 5rem;
    background-size: 38.6rem auto;
    padding-top: 3.6rem;
  }
}
.sec3-top:before {
  content: "";
  position: absolute;
  top: -28rem;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  border-radius: 13rem;
  background: #EBF9FF;
  background: linear-gradient(180deg, rgb(235, 249, 255) 0%, rgba(235, 249, 255, 0) 100%);
}
@media screen and (max-width: 999px) {
  .sec3-top:before {
    top: -15rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top:before {
    top: 0;
    border-radius: 0;
    background: #EBF9FF;
    background: linear-gradient(180deg, rgb(235, 249, 255) 0%, rgba(235, 249, 255, 0) 30%);
  }
}

.sec2-top-txt {
  font-size: 2.6rem;
  font-weight: 500;
  color: #21509F;
  text-align: center;
  line-height: 1.2;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  background-color: #EBF9FF;
  border-radius: 10rem;
  padding-top: 1.8rem;
  padding-bottom: 1.8rem;
  border: max(2px, 0.2rem) solid #27A7E1;
  position: relative;
  margin-top: 6rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-txt {
    font-size: 2.2rem;
    max-width: 77rem;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-txt {
    font-size: 1.6rem;
    padding: 1.5rem 1rem;
    border-radius: 2rem;
    width: calc(100% - 3rem);
    margin-top: 2rem;
  }
}
.sec2-top-txt:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  width: 2rem;
  height: 2rem;
  background: #EBF9FF;
  border-right: max(2px, 0.2rem) solid #27A7E1;
  border-bottom: max(2px, 0.2rem) solid #27A7E1;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}

.sec2-top-parent {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-parent {
    display: block;
    margin-top: 4rem;
  }
  .sec2-top-parent li .sec2-top-parent-link {
    background-color: #EBF9FF;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 2rem;
  }
  .sec2-top-parent li + li {
    margin-top: 2rem;
  }
}
.sec2-top-parent li:first-child .sec2-top-parent-img img {
  width: 8.2rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent li:first-child .sec2-top-parent-img img {
    width: 6.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent li:first-child .sec2-top-parent-img img {
    width: 4rem;
  }
}
.sec2-top-parent li:first-child .sec2-top-parent-line {
  border-top-left-radius: 10rem;
  border-bottom-left-radius: 10rem;
}
.sec2-top-parent li:nth-child(2) .sec2-top-parent-img img {
  width: 24.3rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent li:nth-child(2) .sec2-top-parent-img img {
    width: 15.3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent li:nth-child(2) .sec2-top-parent-img img {
    width: 10.3rem;
  }
}
.sec2-top-parent li:nth-child(3) .sec2-top-parent-img img {
  width: 17rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent li:nth-child(3) .sec2-top-parent-img img {
    width: 14rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent li:nth-child(3) .sec2-top-parent-img img {
    width: 8rem;
  }
}
.sec2-top-parent li:nth-child(4) .sec2-top-parent-img img {
  width: 18.4rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent li:nth-child(4) .sec2-top-parent-img img {
    width: 14rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent li:nth-child(4) .sec2-top-parent-img img {
    width: 7rem;
  }
}
.sec2-top-parent li:last-child .sec2-top-parent-img img {
  width: 18.5rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent li:last-child .sec2-top-parent-img img {
    width: 14rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent li:last-child .sec2-top-parent-img img {
    width: 7rem;
  }
}
.sec2-top-parent li:last-child .sec2-top-parent-line {
  border-top-right-radius: 10rem;
  border-bottom-right-radius: 10rem;
}
.sec2-top-parent li:nth-child(odd) .sec2-top-parent-link {
  background-color: #EBF9FF;
}
.sec2-top-parent .sec2-top-parent-img {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: column;
  height: 21.2rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent .sec2-top-parent-img {
    height: 17.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent .sec2-top-parent-img {
    height: auto;
  }
}
.sec2-top-parent .sec2-top-parent-tlt {
  text-align: center;
  padding-top: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent .sec2-top-parent-tlt {
    padding-top: 1rem;
  }
}
.sec2-top-parent .sec2-top-parent-line {
  height: max(0.5rem, 3px);
  background-color: #DBDBDB;
  margin-top: 3rem;
  position: relative;
}
.sec2-top-parent .sec2-top-parent-line:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 1.7rem;
  height: 1.7rem;
  background-color: #27A7E1;
  border-radius: 100rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-parent .sec2-top-parent-line {
    display: none;
  }
}
.sec2-top-parent .sec2-top-parent-link {
  padding-top: 2.6rem;
  padding-bottom: 1.7rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
.sec2-top-parent .sec2-top-parent-link .nhiden + .nhiden {
  margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-parent .sec2-top-parent-link .nhiden + .nhiden {
    margin-top: 0;
  }
}
.sec2-top-parent .sec2-top-parent-link .btn-link-lv2 {
  width: 100%;
  max-width: 22.3rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-parent .sec2-top-parent-link .btn-link-lv2 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-parent .sec2-top-parent-link .btn-link-lv2 {
    padding-left: 1.5rem;
    padding-right: 3.5rem;
  }
}

.btn-link-lv2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  color: #fff;
  background-color: #27A7E1;
  border-radius: 3rem;
  height: 4rem;
  transition: all 0.3s ease-in-out;
  background-image: url(../img/top/img18.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: right 1rem center;
}
.btn-link-lv2.w223 {
  width: 22.3rem;
}
.btn-link-lv2.center {
  margin-left: auto;
  margin-right: auto;
}
.btn-link-lv2:hover {
  background-color: #21509F;
}

.sec4-top {
  max-width: 186rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  background-image: url(../img/top/img19.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom right;
  border-radius: 13rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  padding-top: 9rem;
  padding-bottom: 11.7rem;
}
@media screen and (max-width: 999px) {
  .sec4-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
    width: 100%;
    border: 0;
    border-radius: 0;
  }
}

.sec4-top-ul {
  display: flex;
  flex-wrap: wrap;
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3em);
  justify-content: space-between;
  font-size: 10px;
  row-gap: 2em;
  padding-top: 7em;
}
@media screen and (max-width: 1500px) {
  .sec4-top-ul {
    font-size: 0.67vw;
  }
}
@media screen and (max-width: 999px) {
  .sec4-top-ul {
    font-size: 1rem;
    padding-top: 3em;
  }
}
.sec4-top-ul li {
  width: 19%;
  background-color: #fff;
  border-radius: 2em;
  border: max(1px, 0.1em) solid #27A7E1;
  padding-top: 1.5em;
  padding-bottom: 4.5em;
  background-image: url(../img/top/img21.png);
  background-size: 3em auto;
  background-repeat: no-repeat;
  background-position: bottom 1em center;
  transition: all 0.3s ease-in-out;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec4-top-ul li {
    width: 32%;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-ul li {
    width: 48%;
  }
}
.sec4-top-ul li:hover {
  background-color: #f2fbff;
}
.sec4-top-ul li .sec4-top-ul-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.sec4-top-ul .sec4-top-ul-img {
  text-align: center;
}
.sec4-top-ul .sec4-top-ul-img img {
  width: 9.4em;
}
@media screen and (max-width: 767px) {
  .sec4-top-ul .sec4-top-ul-img img {
    width: 7.4em;
  }
}
.sec4-top-ul .sec4-top-ul-tlt {
  color: #21509F;
  font-weight: 500;
  text-align: center;
  margin-top: 1.8em;
  line-height: 1.3;
}
.sec4-top-ul .sec4-top-ul-tlt span {
  font-size: 2.2em;
}
@media screen and (max-width: 767px) {
  .sec4-top-ul .sec4-top-ul-tlt span {
    font-size: 1.7em;
  }
}
.sec4-top-ul .sec4-top-ul-sub {
  text-align: center;
}
.sec4-top-ul .sec4-top-ul-sub span {
  font-size: 1.6em;
}
@media screen and (max-width: 767px) {
  .sec4-top-ul .sec4-top-ul-sub span {
    font-size: 1.4em;
  }
}

.sec5-top {
  padding-top: 23rem;
  position: relative;
}
.sec5-top:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 9.11vw;
  background: linear-gradient(to right, #EBF9FF 0, #EBF9FF 183rem, transparent 183rem);
  z-index: -1;
}
@media screen and (max-width: 1700px) {
  .sec5-top:before {
    background-color: #EBF9FF;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top:before {
    bottom: 15.11vw;
  }
}
.sec5-top {
  background-image: url(../img/top/img36.jpg);
  background-size: 183rem auto;
  background-repeat: no-repeat;
  background-position: top left;
  margin-top: 5rem;
}
@media screen and (max-width: 1700px) {
  .sec5-top {
    background-size: 100% auto;
    padding-top: 13.53vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top {
    background-size: 113% auto;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top {
    margin-top: 2rem;
    background-size: 50rem auto;
  }
}

.sec5-top-plap {
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: flex;
  flex-wrap: wrap;
}
.sec5-top-plap-first {
  margin-top: 14rem;
}
@media screen and (max-width: 1700px) {
  .sec5-top-plap-first {
    margin-top: 8.24vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-first {
    margin-top: 4.24vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-first {
    margin-top: 7rem;
  }
}
.sec5-top-plap-last {
  margin-top: 11rem;
  flex-direction: row-reverse;
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-last {
    margin-top: 7rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-last {
    margin-top: 11rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap {
    display: block;
  }
}

.sec5-top-plap-left {
  background-color: #fff;
  border-radius: 3rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  width: 52%;
  padding-top: 3rem;
  padding-bottom: 4rem;
  position: relative;
}
.sec5-top-plap-left .sec-top-number-fill, .sec5-top-plap-left .sec-top-number-sub {
  text-align: center;
}
.sec5-top-plap-left .sec-top-number-sub {
  margin-top: 0.7rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 1500px) {
  .sec5-top-plap-left .sec-top-number-sub {
    margin-bottom: 1vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-left .sec-top-number-sub {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-left {
    width: 100%;
    padding-top: 6rem;
  }
}

.sec5-top-plap-left1-icon {
  box-shadow: -1rem 1rem 0 rgba(39, 167, 225, 0.3);
}
.sec5-top-plap-left1-icon:before {
  content: "";
  width: 22.8rem;
  height: 23.5rem;
  position: absolute;
  bottom: -10rem;
  left: -6.25vw;
  background-image: url(../img/top/img41.png);
  background-size: contain;
  background-position: bottom left;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1700px) {
  .sec5-top-plap-left1-icon:before {
    width: 13.41vw;
    height: 13.82vw;
    bottom: -7.65vw;
    left: -3.25vw;
  }
}
@media screen and (max-width: 1600px) {
  .sec5-top-plap-left1-icon:before {
    left: 0;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-left1-icon:before {
    width: 16.41vw;
    height: 15.82vw;
    bottom: -10.65vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-left1-icon:before {
    width: 15.8rem;
    height: 13.5rem;
    bottom: auto;
    top: -7.5rem;
    left: 1.9rem;
  }
}

.sec5-top-plap-left2-icon {
  box-shadow: 1rem 1rem 0 rgba(39, 167, 225, 0.3);
}
.sec5-top-plap-left2-icon:before {
  content: "";
  width: 22.6rem;
  height: 23rem;
  position: absolute;
  top: 4rem;
  right: -5.21vw;
  background-image: url(../img/top/img46.png);
  background-size: contain;
  background-position: bottom left;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1700px) {
  .sec5-top-plap-left2-icon:before {
    width: 13.29vw;
    height: 13.53vw;
    top: -5.29vw;
    right: -3.21vw;
  }
}
@media screen and (max-width: 1600px) {
  .sec5-top-plap-left2-icon:before {
    right: 0;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-left2-icon:before {
    width: 16.29vw;
    height: 15.53vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-left2-icon:before {
    width: 15.6rem;
    height: 15rem;
    top: -8rem;
  }
}

.sec5-top-plap-right {
  width: 48%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-right {
    width: 100%;
    margin-top: 2.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 1rem;
  }
}
.sec5-top-plap-right .sec5-top-plap-right-absolution {
  position: absolute;
  top: -5rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-right .sec5-top-plap-right-absolution {
    top: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-right .sec5-top-plap-right-absolution {
    position: static;
  }
}
.sec5-top-plap-right .sec5-top-plap-right-absolution1 {
  right: 0;
  left: -5rem;
}
.sec5-top-plap-right .sec5-top-plap-right-absolution1 .sec5-top-plap-right-absolution-small .sec5-top-plap-right-absolution-small-item:last-child {
  margin-top: 3rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-right .sec5-top-plap-right-absolution1 {
    left: -3rem;
  }
}
.sec5-top-plap-right .sec5-top-plap-right-absolution2 {
  left: 0;
  right: -5rem;
}
.sec5-top-plap-right .sec5-top-plap-right-absolution2 .sec5-top-plap-right-absolution-small .sec5-top-plap-right-absolution-small-item:first-child {
  margin-top: 3rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-right .sec5-top-plap-right-absolution2 {
    right: -3rem;
  }
}

.sec-top-number-fill img {
  height: 8.5rem;
}
@media screen and (max-width: 1500px) {
  .sec-top-number-fill img {
    height: 5.67vw;
  }
}
@media screen and (max-width: 999px) {
  .sec-top-number-fill img {
    height: 6.67vw;
  }
}
@media screen and (max-width: 767px) {
  .sec-top-number-fill img {
    height: 7rem;
  }
}

.sec-top-number-sub {
  font-size: 2.6rem;
  font-weight: 500;
  color: #21509F;
  line-height: 1.5;
}
@media screen and (max-width: 1500px) {
  .sec-top-number-sub {
    font-size: 1.73vw;
  }
}
@media screen and (max-width: 999px) {
  .sec-top-number-sub {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec-top-number-sub {
    font-size: 1.8rem;
  }
}

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

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

.sec5-top-plap-left-link {
  margin-top: 4rem;
}
@media screen and (max-width: 1500px) {
  .sec5-top-plap-left-link {
    margin-top: 2vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-left-link {
    margin-top: 2rem;
  }
}

.sec5-top-plap-right-absolution-img {
  border-radius: 2rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  overflow: hidden;
}

.sec5-top-plap-right-absolution-small {
  max-width: 58.3rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  margin-top: -6rem;
}
@media screen and (max-width: 1600px) {
  .sec5-top-plap-right-absolution-small {
    max-width: 36.44vw;
    -moz-column-gap: 1.88vw;
         column-gap: 1.88vw;
    margin-top: -3.75vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-plap-right-absolution-small {
    max-width: 39.44vw;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-plap-right-absolution-small {
    max-width: calc(100% - 3rem);
    margin-top: -5rem;
  }
}
.sec5-top-plap-right-absolution-small .sec5-top-plap-right-absolution-small-item {
  border-radius: 1.5rem;
  overflow: hidden;
  border: max(1px, 0.1rem) solid #27A7E1;
}

.sec5-top-future2 {
  max-width: 141rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 6.5rem;
}
@media screen and (max-width: 767px) {
  .sec5-top-future2 {
    padding-top: 3.5rem;
  }
}

.sec5-top-future2-ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  -moz-column-gap: 2.1%;
       column-gap: 2.1%;
  align-items: flex-start;
}
.sec5-top-future2-ul li {
  overflow: hidden;
  border-radius: 2rem;
  border: max(1px, 0.1rem) solid #27A7E1;
}
.sec5-top-future2-ul li img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sec5-top-future2-ul li:first-child, .sec5-top-future2-ul li:last-child {
    margin-top: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-future2-ul {
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    row-gap: 1.5rem;
    margin-top: 2.5rem;
  }
}

.sec5-top-future2-main {
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 6rem);
  background-image: url(../img/top/img51.png);
  background-size: cover;
  border-radius: 6rem;
  background-repeat: no-repeat;
  background-position: bottom center;
  padding-top: 2.5rem;
  margin-top: -17.5rem;
  position: relative;
  z-index: 2;
}
.sec5-top-future2-main .sec-top-number-fill {
  text-align: center;
}
.sec5-top-future2-main .sec-top-number-sub {
  text-align: center;
  color: #fff;
  margin-top: 1rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-future2-main {
    margin-top: -11.5rem;
    border-radius: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-future2-main {
    margin-top: 0;
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec5-top-future2-txt {
  color: #fff;
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-future2-txt {
    max-width: 53rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-future2-txt {
    margin-top: 1.5rem;
  }
}

.sec5-top-future2-link {
  padding-top: 2rem;
}
.sec5-top-future2-link a {
  border: max(1px, 0.1rem) solid #fff;
  transform: translateY(50%);
}
@media screen and (max-width: 767px) {
  .sec5-top-future2-link {
    padding-top: 0;
  }
}

.future45 {
  max-width: 130rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 8rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 8rem;
       column-gap: 8rem;
  margin-top: 9rem;
}
@media screen and (max-width: 1400px) {
  .future45 {
    -moz-column-gap: 6rem;
         column-gap: 6rem;
  }
}
@media screen and (max-width: 999px) {
  .future45 {
    width: calc(100% - 3rem);
    -moz-column-gap: 4rem;
         column-gap: 4rem;
    margin-top: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .future45 {
    display: block;
  }
}

.future45-content {
  background-color: #27A7E1;
  border-radius: 3rem;
  color: #fff;
  padding-top: 3.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 18.7rem;
  height: 100%;
  position: relative;
  box-shadow: -1rem 1rem 0 rgba(39, 167, 225, 0.3);
  transform: translateX(6rem);
}
@media screen and (max-width: 1500px) {
  .future45-content {
    transform: translateX(2vw);
  }
}
@media screen and (max-width: 999px) {
  .future45-content {
    transform: translateX(1rem);
    padding-bottom: 14.7rem;
  }
}
@media screen and (max-width: 767px) {
  .future45-content {
    transform: none;
    padding-top: 0;
    overflow: hidden;
    padding-bottom: 3rem;
  }
  .future45-content .sec-top-number-fill-img {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    padding-bottom: 2rem;
  }
}
.future45-content .sec-top-number-fill {
  text-align: center;
}
.future45-content .sec-top-number-sub {
  text-align: center;
  color: #fff;
  margin-top: 3.5rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 999px) {
  .future45-content .sec-top-number-sub {
    margin-bottom: 1rem;
    margin-top: 1.5rem;
  }
}
.future45-content .future45-txt {
  letter-spacing: -0.08rem;
}

.future45-link {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 14rem;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 4.5rem;
       column-gap: 4.5rem;
  row-gap: 0;
  justify-content: center;
  align-items: flex-start;
}
.future45-link a {
  border: max(1px, 0.1rem) solid #fff;
}
@media screen and (max-width: 1500px) {
  .future45-link {
    -moz-column-gap: 3.5rem;
         column-gap: 3.5rem;
  }
}
@media screen and (max-width: 999px) {
  .future45-link {
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
    height: 12rem;
  }
}
@media screen and (max-width: 767px) {
  .future45-link {
    position: static;
    height: auto;
    padding-top: 3rem;
    row-gap: 1rem;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  .future45-link a {
    width: 14.3rem !important;
    font-size: 1.4rem;
    height: 4rem !important;
  }
}

.future45-item {
  position: relative;
  padding-top: 31.6rem;
}
@media screen and (max-width: 1400px) {
  .future45-item {
    padding-top: 22.57vw;
  }
}
@media screen and (max-width: 767px) {
  .future45-item {
    padding-top: 0;
  }
}
.future45-item .future45-item-img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  border-radius: 2rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  overflow: hidden;
}
.future45-item .future45-item-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .future45-item .future45-item-img {
    display: none;
  }
}
.future45-item:before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  z-index: 2;
}
.future45-item:first-child:before {
  background-image: url(../img/top/img57.png);
  width: 18.6rem;
  height: 21.4rem;
  top: 36rem;
  left: -8rem;
}
@media screen and (max-width: 1600px) {
  .future45-item:first-child:before {
    top: 23rem;
    left: -3rem;
  }
}
@media screen and (max-width: 1500px) {
  .future45-item:first-child:before {
    left: -1.5rem;
  }
}
@media screen and (max-width: 999px) {
  .future45-item:first-child:before {
    width: 13.6rem;
    height: 15.4rem;
    top: 18rem;
    left: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .future45-item:first-child:before {
    width: 10.6rem;
    height: 12.4rem;
    top: 14rem;
    left: 0.8rem;
  }
}
@media screen and (max-width: 767px) {
  .future45-item:last-child {
    margin-top: 4rem;
  }
}
.future45-item:last-child:before {
  background-image: url(../img/top/img58.png);
  width: 19.6rem;
  height: 24.4rem;
  top: 24rem;
  right: -15rem;
}
@media screen and (max-width: 1700px) {
  .future45-item:last-child:before {
    top: 21rem;
    right: -11rem;
  }
}
@media screen and (max-width: 1600px) {
  .future45-item:last-child:before {
    right: -7rem;
  }
}
@media screen and (max-width: 1500px) {
  .future45-item:last-child:before {
    right: -1.5rem;
  }
}
@media screen and (max-width: 999px) {
  .future45-item:last-child:before {
    width: 16.6rem;
    height: 18.4rem;
    top: 13rem;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .future45-item:last-child:before {
    width: 10.6rem;
    height: 13.4rem;
    top: 13rem;
    right: 0.4rem;
  }
}

.sec5-top-slider {
  width: 100%;
  height: 21.77vw;
  background-image: url(../img/top/img59.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime1 40s linear infinite;
  margin-top: 5.5rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-slider {
    height: 26rem;
    animation: anime1 35s linear infinite;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-slider {
    height: 18rem;
    margin-top: 3.5rem;
  }
}

@media screen and (min-width: 1000px) {
  @keyframes anime1 {
    0% {
      background-position: 113.54vw 0;
    }
    100% {
      background-position: -113.54vw 0;
    }
  }
}
@media screen and (max-width: 999px) and (min-width: 768px) {
  @keyframes anime1 {
    0% {
      background-position: 135.5rem 0;
    }
    100% {
      background-position: -135.5rem 0;
    }
  }
}
@media screen and (max-width: 767px) {
  @keyframes anime1 {
    0% {
      background-position: 93.8rem 0;
    }
    100% {
      background-position: -93.8rem 0;
    }
  }
}
.sec6-top {
  max-width: 186rem;
  margin-left: auto;
  margin-right: auto;
  background-image: url(../img/top/img62.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  border-bottom-left-radius: 6.77vw;
  border-bottom-right-radius: 6.77vw;
  padding-top: 12.5vw;
  padding-bottom: 13.54vw;
  margin-top: 8rem;
}
@media screen and (max-width: 1500px) {
  .sec6-top {
    padding-top: 8.5vw;
    padding-bottom: 9.54vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
    margin-top: 4rem;
    border-radius: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top {
    padding-top: 0rem;
    padding-bottom: 3rem;
    background-image: url(../img/top/img66.jpg), url(../img/top/img67.png);
    background-position: right top, right bottom;
    background-size: 59rem auto, 91rem auto;
    background-repeat: no-repeat, no-repeat;
  }
}

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

.sec6-top-main {
  max-width: 151.7rem;
  margin-left: auto;
}

.sec6-top-grid {
  display: grid;
  grid-template-columns: 1fr 57.6%;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
}
@media screen and (max-width: 1500px) {
  .sec6-top-grid {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-grid {
    grid-template-columns: 1fr 50.6%;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-grid {
    display: block;
  }
}

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

.sec6-top-right-img1 {
  max-width: 75rem;
  margin-left: auto;
  border-radius: 2rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  overflow: hidden;
  width: calc(100% - 3rem);
}
@media screen and (max-width: 767px) {
  .sec6-top-right-img1 {
    width: calc(100% - 2rem);
  }
}
.sec6-top-right-img1 img {
  width: 100%;
}

.sec6-top-right-img2 {
  max-width: 37rem;
  border-radius: 2rem;
  border: max(1px, 0.1rem) solid #27A7E1;
  overflow: hidden;
  margin-top: -13rem;
  box-shadow: 1rem -1rem 0 rgba(39, 167, 225, 0.3);
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec6-top-right-img2 {
    max-width: 28rem;
    margin-top: -9rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-right-img2 {
    max-width: 21rem;
    margin-top: -6rem;
  }
}
.sec6-top-right-img2 img {
  width: 100%;
}

.sec6-top-right {
  margin-top: 6rem;
}
@media screen and (max-width: 999px) {
  .sec6-top-right {
    margin-top: 2rem;
  }
}

.sec6-top-link {
  display: grid;
  grid-template-columns: max-content 27rem max-content;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  margin-top: 1.5rem;
}
@media screen and (max-width: 999px) {
  .sec6-top-link {
    margin-top: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-link {
    display: block;
  }
  .sec6-top-link li + li {
    margin-top: 1.5rem;
  }
  .sec6-top-link a {
    width: 23rem !important;
  }
}

.sec7-top {
  max-width: 144rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 5.8rem;
       column-gap: 5.8rem;
  padding-top: 7rem;
  padding-bottom: 2.6rem;
}
@media screen and (max-width: 1400px) {
  .sec7-top {
    -moz-column-gap: 2.8rem;
         column-gap: 2.8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top {
    display: block;
    padding-top: 5rem;
  }
}
.sec7-top .sec7-top-item {
  border-radius: 6rem;
  padding-top: 3rem;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec7-top .sec7-top-item {
    border-radius: 3rem;
  }
}
.sec7-top .sec7-top-item:first-child {
  background-color: #F9F9F9;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.sec7-top .sec7-top-item:last-child {
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec7-top .sec7-top-item:last-child {
    margin-top: 3rem;
  }
}
.sec7-top .sec7-top-item:last-child:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 59.1rem;
  background-image: url(../img/top/img64.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  border-radius: 6rem;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .sec7-top .sec7-top-item:last-child:before {
    height: 49.1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top .sec7-top-item:last-child:before {
    height: 29.1rem;
    background-position: bottom center;
    border-radius: 3rem;
  }
}

.sec7-top-column-ul {
  padding-right: 4rem;
}
@media screen and (max-width: 999px) {
  .sec7-top-column-ul {
    padding-right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-column-ul {
    padding-right: 1rem;
  }
}
.sec7-top-column-ul img {
  width: 100%;
  height: 7.6rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.6rem;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 767px) {
  .sec7-top-column-ul img {
    height: 6.6rem;
  }
}
.sec7-top-column-ul .sec7-top-column-date {
  font-size: 1.5rem;
  font-weight: 500;
  color: #27A7E1;
  background-color: #EBF9FF;
  width: 10.2rem;
  height: 2.9rem;
  border-radius: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.5rem;
}
.sec7-top-column-ul li {
  display: grid;
  grid-template-columns: 10.6rem 1fr;
  align-items: center;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  border-bottom: max(1px, 0.1rem) solid #A0A0A0;
  padding: 1rem 0;
}
@media screen and (max-width: 767px) {
  .sec7-top-column-ul li {
    grid-template-columns: 8.6rem 1fr;
    -moz-column-gap: 0.7rem;
         column-gap: 0.7rem;
  }
}
.sec7-top-column-ul .sec7-top-column-content {
  min-width: 0;
}
.sec7-top-column-ul .sec7-top-column-tlt {
  min-width: 0;
}
@media screen and (max-width: 767px) {
  .sec7-top-column-ul .sec7-top-column-tlt {
    font-size: 1.4rem;
  }
}
.sec7-top-column-ul .sec7-top-column-tlt a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 2.5rem;
  background-image: url(../img/top/img07.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: right center;
  display: block;
  width: 100%;
}

.sec7-top-column {
  height: 47rem;
  overflow: auto;
}
@media screen and (max-width: 999px) {
  .sec7-top-column {
    height: 39rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-column {
    margin-top: 2rem;
    height: 27rem;
  }
}

.sec7-top-column::-webkit-scrollbar {
  width: 1rem;
}
@media screen and (max-width: 767px) {
  .sec7-top-column::-webkit-scrollbar {
    width: 0.5rem;
  }
}

.sec7-top-column::-webkit-scrollbar-track {
  background: #E6F3F8;
  border-radius: 1rem;
}

.sec7-top-column::-webkit-scrollbar-thumb {
  background: #27A7E1;
  border-radius: 1rem;
}

.sec7-top-column-link {
  padding-top: 2rem;
}

.sec7-top-item-recruit {
  position: absolute;
  bottom: 0;
  left: 3rem;
  right: 3rem;
  height: 24rem;
  background-image: url(../img/top/img65.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 6rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 999px) {
  .sec7-top-item-recruit {
    height: 21rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-item-recruit {
    position: static;
    margin-top: 7rem;
    border-bottom-left-radius: 3rem;
    border-bottom-right-radius: 3rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    height: 18rem;
  }
}
.sec7-top-item-recruit .sec7-top-item-recruit-txt {
  font-size: 2.6rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 999px) {
  .sec7-top-item-recruit .sec7-top-item-recruit-txt {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-item-recruit .sec7-top-item-recruit-txt {
    font-size: 2rem;
  }
}
.sec7-top-item-recruit .sec7-top-item-recruit-link {
  padding-top: 3.7rem;
}
.sec7-top-item-recruit .sec7-top-item-recruit-link a {
  border: max(1px, 0.1rem) solid #fff !important;
}
@media screen and (max-width: 999px) {
  .sec7-top-item-recruit .sec7-top-item-recruit-link {
    padding-top: 1.7rem;
  }
}

footer {
  background-image: url(../img/common/img-footer.jpg);
  background-size: cover;
  background-position: top right;
  background-repeat: no-repeat;
  padding-top: 20rem;
}
@media screen and (max-width: 1400px) {
  footer {
    padding-top: 15rem;
  }
}
@media screen and (max-width: 999px) {
  footer {
    background-image: url(../img/common/img-footer2.jpg);
    padding-top: 6rem;
  }
}
@media screen and (max-width: 767px) {
  footer {
    padding-top: 4rem;
  }
}

.footer {
  max-width: 158rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}
.footer .footer-main {
  max-width: 143rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 42.6% 1fr;
  -moz-column-gap: 3.13vw;
       column-gap: 3.13vw;
  padding-bottom: 3rem;
}
@media screen and (max-width: 1300px) {
  .footer .footer-main {
    grid-template-columns: 44.6% 1fr;
    -moz-column-gap: 2vw;
         column-gap: 2vw;
  }
}
@media screen and (max-width: 999px) {
  .footer .footer-main {
    grid-template-columns: 44.6% 1fr;
  }
}
@media screen and (max-width: 767px) {
  .footer .footer-main {
    display: block;
  }
}
.footer .footer-main .sec-calender-top-sub-icon {
  margin-left: 0;
  color: #fff;
}

.footer-logo {
  text-align: center;
}
.footer-logo img {
  width: 35.5rem;
}
@media screen and (max-width: 999px) {
  .footer-logo img {
    width: 31.5rem;
  }
}

.ft-calender {
  max-width: 53.2rem;
  margin-top: 3rem;
}
@media screen and (max-width: 999px) {
  .ft-calender {
    margin-top: 1rem;
  }
}
.ft-calender .sec-calender-top-sub {
  color: #fff;
}

.footer-googlemap {
  padding-top: 3.5rem;
}
.footer-googlemap iframe {
  width: 100%;
  height: 30.3rem;
  border-radius: 2rem;
}

.footer-main-right-address {
  color: #fff;
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .footer-main-right-address {
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}
.footer-main-right-address:before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.6rem;
  background-image: url(../img/common/img06.png);
  background-size: contain;
  background-position: left center;
  background-repeat: no-repeat;
}

.footer-main-right-tell {
  width: 38.8rem;
  height: 9rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(../img/common/img08.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 2rem;
}
@media screen and (max-width: 1400px) {
  .footer-main-right-tell {
    width: 33.8rem;
    height: 8rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .footer-main-right-tell {
    width: 26.8rem;
    height: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-main-right-tell {
    margin-top: 1.5rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.footer-main-right-tell img {
  width: 32.5rem;
}

.footer-main-right-first {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 4.5rem;
       column-gap: 4.5rem;
}
@media screen and (max-width: 1400px) {
  .footer-main-right-first {
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .footer-main-right-first {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}

.footer-main-right-item-tlt {
  font-size: 2.5rem;
  font-weight: 500;
  color: #fff;
  background-color: #27A7E1;
  line-height: 1;
  padding-left: 1.7rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .footer-main-right-item-tlt {
    font-size: 2rem;
    padding: 1.5rem;
  }
}

.footer-main-right-last {
  display: grid;
  grid-template-columns: 26.6rem 1fr;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
}
@media screen and (max-width: 1400px) {
  .footer-main-right-last {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
@media screen and (max-width: 1300px) {
  .footer-main-right-last {
    grid-template-columns: 23.6rem 1fr;
  }
}
@media screen and (max-width: 999px) {
  .footer-main-right-last {
    display: block;
  }
}

.footer-main-right-item {
  background: linear-gradient(180deg, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 100%);
  border-radius: 2rem;
  padding: 2rem;
  height: 50rem;
}
@media screen and (max-width: 1400px) and (min-width: 1000px) {
  .footer-main-right-item:first-child {
    border-top-right-radius: 0;
    padding-right: 0.5rem;
    padding-left: 1rem;
  }
  .footer-main-right-item:last-child {
    border-top-left-radius: 0;
    padding-left: 0.5rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 999px) {
  .footer-main-right-item {
    height: auto;
    padding-bottom: 5rem;
  }
  .footer-main-right-item:last-child {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-main-right-item {
    padding: 1.5rem 0.8rem;
    background: linear-gradient(180deg, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%);
  }
}

.footer-main-right-item-ul {
  font-size: 1.8rem;
  padding-left: 0.6rem;
  margin-top: 1rem;
}
@media screen and (max-width: 1400px) {
  .footer-main-right-item-ul {
    font-size: 1.7rem;
    padding-left: 0;
  }
}
@media screen and (max-width: 999px) {
  .footer-main-right-item-ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-main-right-item-ul {
    font-size: 1.5rem;
  }
}
.footer-main-right-item-ul a {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 1400px) {
  .footer-main-right-item-ul a {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
  }
}
.footer-main-right-item-ul a:before {
  content: "●";
  display: block;
  color: #27A7E1;
  font-size: 0.5em;
}

.footer-main-right-last {
  margin-top: 3rem;
}

@media screen and (min-width: 1000px) {
  .footer-main-right-item-ul1and li + li {
    margin-top: 0.7rem;
  }
  .footer-main-right-item-ul2and {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 0.7rem;
  }
}
.footer-googlemap-link {
  padding-top: 2rem;
}
.footer-googlemap-link a {
  border: max(1px, 0.1rem) solid #fff !important;
}

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

@media screen and (max-width: 767px) {
  .footer-main-right-item-ul1and {
    grid-template-columns: 1fr max-content;
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
  }
}

.medical-grid {
  background-color: #21509F;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  padding: 1.5rem 0;
}
@media screen and (max-width: 767px) {
  .medical-grid {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    padding-bottom: 8rem;
  }
  .medical-grid .txt-fs18 {
    font-size: 1.5rem;
  }
}
.medical-grid img {
  width: 19rem;
}
@media screen and (max-width: 767px) {
  .medical-grid img {
    width: 16rem;
  }
}

.scrolltop {
  width: 8rem;
  height: 8rem;
  background-color: #5072AC;
  position: fixed;
  bottom: 0;
  right: 0;
  border: 0;
  cursor: pointer;
  background-image: url(../img/common/img09.png);
  background-size: 3.6rem auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.hamper-main--toggle {
  background-size: 40% auto;
  background-color: #21509F;
}

@media screen and (max-width: 767px) {
  .hamper-main-link1 {
    background-color: #27A7E1;
  }
  .hamper-main-link2 {
    background-color: #21509F;
  }
  .hamper-main-link3 {
    background-color: #5072AC;
  }
}
.fade-top {
  opacity: 0;
  animation: fade-top 0.5s ease forwards;
  animation-delay: 0.6s;
}

@keyframes fade-top {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.sec2-top-neos {
  position: relative;
}
.sec2-top-neos .sec2-top-neos-primary {
  position: absolute;
  top: -8.5rem;
}

.img-avarta-txt {
  font-size: 3rem;
  text-align: right;
  font-weight: 500;
  color: #27A7E1;
}
@media screen and (max-width: 767px) {
  .img-avarta-txt {
    font-size: 2.4rem;
  }
}

.table-cost-style {
  width: 100%;
}
.table-cost-style tr:first-child td {
  background-color: #21509F;
  color: #fff;
}
.table-cost-style tr:first-child td:first-child {
  border-right: max(1px, 0.1rem) solid #fff;
}
.table-cost-style tr td {
  padding: 1.5rem;
  border: max(1px, 0.1rem) solid #21509F;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .table-cost-style tr td {
    padding: 1.2rem 1rem;
  }
}
.table-cost-style tr td:first-child {
  width: 60%;
}
@media screen and (max-width: 767px) {
  .table-cost-style tr td:first-child {
    width: 65%;
  }
}
.table-cost-style tr td:last-child {
  width: 40%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .table-cost-style tr td:last-child {
    width: 35%;
  }
}

.sec6-top-left .setting-tlt-lv1 .setting-tlt-shadow {
  color: rgba(39, 167, 225, 0.2);
}

.table-form-mail {
  width: 100%;
}
.table-form-mail tr td:first-child {
  width: 30rem;
  background-color: #21509F;
  color: #fff;
  border-bottom: max(1px, 0.1rem) solid #fff;
}
.table-form-mail tr td {
  width: calc(100% - 30rem);
  border: max(1px, 0.1rem) solid #21509F;
  padding: 1.5rem;
  vertical-align: top;
}
.table-form-mail tr td .erro {
  display: inline-block;
  background-color: #fff;
  color: #21509F;
  line-height: 1;
  font-size: 1.4rem;
  padding: 0.5rem 1rem;
  font-weight: 500;
  margin-left: 1.5rem;
}
@media screen and (max-width: 767px) {
  .table-form-mail tr td {
    width: 100% !important;
    float: left;
    border: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .table-form-mail tr td:last-child {
    padding-left: 0;
    padding-right: 0;
  }
}

.form-radio .wpcf7-list-item.first {
  margin-left: 0;
}

.form-control {
  width: 100%;
  height: 4rem;
  outline: 0;
  padding: 0 1rem;
}

.form-date {
  width: 7rem;
  height: 4rem;
  outline: 0;
  padding: 0 1rem;
}

.form-area {
  width: 100%;
  resize: none;
  outline: 0;
  padding: 1rem;
  height: 20rem;
}

.gr-form-date-item {
  position: relative;
  padding-right: 4rem;
}
@media screen and (max-width: 999px) {
  .gr-form-date-item {
    padding-right: 1rem;
  }
}
.gr-form-date-item .gr-form-date-item-last {
  position: absolute;
  top: 0;
  left: 10rem;
}
@media screen and (max-width: 999px) {
  .gr-form-date-item .gr-form-date-item-last {
    left: 8rem;
  }
}

.gr-form-date {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}

.form-privacy {
  text-align: center;
  padding-top: 2rem;
}

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

.gr-submit-form {
  text-align: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  position: relative;
}
.gr-submit-form .wpcf7-spinner {
  margin: 0 !important;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.form-submit {
  background-color: #21509F;
  color: #fff;
  width: 20rem;
  height: 5rem;
  border: 0;
  outline: 0;
  font-size: 1.8rem;
}

.slider-memberdoctor-item {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.slider-memberdoctor-item img {
  border-radius: 1rem;
}

.slider-memberdoctor {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .endoscopy--doctor {
    align-items: normal;
  }
  .endoscopy--doctor h3, .endoscopy--doctor h4, .endoscopy--doctor h5, .endoscopy--doctor h6 {
    margin-top: 0;
  }
  .endoscopy--doctor .endoscopy__image img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
  }
}

.clinic-map iframe {
  width: 100%;
  height: 35rem;
}

.btn-link-apay {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  height: 5.5rem;
  padding-left: 3rem;
  padding-right: 5rem;
  background-color: #27A7E1;
  color: #fff;
  justify-content: center;
  align-items: center;
  font-size: 1.7rem;
  font-weight: 500;
  background-image: url(../img/common/vettor16.svg);
  background-size: 1rem auto;
  background-repeat: no-repeat;
  background-position: right 1.5rem center;
  transition: all 0.3s ease-in-out;
}
.btn-link-apay:hover {
  background-color: #21509F;
}
@media screen and (max-width: 767px) {
  .btn-link-apay {
    font-size: 1.6rem;
    padding-left: 1.5rem;
    padding-right: 3rem;
    height: 5rem;
    background-size: 0.7rem auto;
    background-position: right 1rem center;
  }
}

.list-btn-link-apay {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .list-btn-link-apay {
    gap: 1.5rem;
  }
}

.table-normal-style-line {
  width: 100%;
}
.table-normal-style-line tr td {
  width: 50%;
  border-bottom: max(1px, 0.1rem) solid #423e3e;
  padding: 1.5rem 0;
}
.table-normal-style-line tr:first-child td {
  font-weight: 700;
}/*# sourceMappingURL=style.css.map */