@charset "UTF-8";
.banner-page {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-top: 13rem;
}
@media screen and (max-width: 999px) {
  .banner-page {
    margin-top: 10.6rem;
  }
}
@media screen and (max-width: 767px) {
  .banner-page {
    margin-top: 10rem;
  }
}
.banner-page img {
  width: 100%;
  height: 55rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top 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: #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
}

.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 #2CA9C2;
  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: #2CA9C2;
  -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: #2CA9C2;
}
@media screen and (min-width: 768px) {
  .under-list-ul a:hover {
    color: #2CA9C2;
    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.3rem;
  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: 6rem auto;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 5rem;
}
.setting-title h3::first-letter {
  color: #2CA9C2;
}
@media screen and (max-width: 767px) {
  .setting-title h3 {
    background-size: 4.2rem auto;
    font-size: 2.4rem;
    padding-top: 4rem;
    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: #2CA9C3;
  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: #2CA9C2;
  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: #2CA9C2;
}
@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: #2CA9C2;
  padding-top: 0;
}
.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: #2CA9C2;
}
@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: #fff;
  border: 0.6rem solid #2CA9C2;
}

.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: #2CA9C2;
  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 #2CA9C2;
}

.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: #2CA9C2;
  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 #2CA9C2;
    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;
  }
  .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 #2CA9C2;
  }
  .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 #2CA9C2 !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: #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  background-color: rgba(92, 194, 215, 0.2588235294);
  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: #2CA9C2;
  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;
  font-weight: 600;
  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;
  display: none;
}
.qa_box-gr .qa_box_item + .qa_box_item {
  border-top: max(1px, 0.1rem) solid #2CA9C2;
  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: #2CA9C2;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}

.archive-post-category {
  font-size: 1.8rem;
  color: #2CA9C2;
  font-weight: 500;
  border: max(1px, 0.1rem) solid #2CA9C2;
}
.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: #2CA9C2;
}
.wrap-pagi .wp-pagenavi a:hover, .wrap-pagi .wp-pagenavi span.current {
  background-color: #2CA9C2;
  color: #fff;
  border-color: #2CA9C2;
}

.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: #2CA9C2 !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: 2em;
}
.menu-global.menu-global-1column {
  width: 25em;
}
.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;
  }
}

.menu-colum-global {
  background-color: #2CA9C2;
  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% - 6em);
  left: 0;
  right: 0;
  padding-top: 6em;
}
.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;
  }
}

.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 #2CA9C2 !important;
  border-radius: 10rem;
  transition: all 0.3s ease-in-out;
  color: #fff;
  background-color: #2CA9C2;
}
.link-arline-page:hover {
  background-color: #fff;
  color: #2CA9C2;
}
@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;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  row-gap: 3rem;
}
.archive-post-column li {
  box-shadow: 0 0 2.5rem rgba(0, 0, 0, 0.5);
}
.archive-post-column li img {
  width: 100%;
  height: 27rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 767px) {
  .archive-post-column {
    display: block;
  }
  .archive-post-column li + li {
    margin-top: 3rem;
  }
}

.content-box-sub-column {
  padding: 2rem 1rem;
}

.list-post-topics-txt-date {
  font-size: 1.7rem;
  color: #2CA9C2;
  line-height: 1;
}

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

.list-post-topics-txt-dect {
  font-size: 1.8rem;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .list-post-topics-txt-dect {
    font-size: 1.6rem;
    margin-top: 1.5rem;
  }
}
.list-post-topics-txt-dect a {
  display: inline-block;
  color: #2CA9C2;
  border-bottom: max(1px, 0.1rem) solid #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
}
.table-normal-style tr td:last-child {
  width: calc(100% - 15rem);
  padding-left: 1.5rem;
  padding-right: 1rem;
}
.table-normal-style tr td {
  border: max(1px, 0.1rem) solid #2CA9C2;
  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-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: #2CA9C2;
  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: #2CA9C2;
  color: #fff;
}
.table-calender-style tr:first-child td:last-child {
  border-right: max(1px, 0.1rem) solid #2CA9C2;
}
.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 #2CA9C2;
  border-bottom: max(1px, 0.1rem) solid #2CA9C2;
}
.table-calender-style tr:not(:first-child) td:not(:first-child):last-child {
  border-right: max(1px, 0.1rem) solid #2CA9C2;
}

#toc_container {
  border: 0 !important;
  position: relative;
  color: #344d6d;
  width: 66rem !important;
  margin-bottom: 0 !important;
  padding: 2rem 1.5rem !important;
  background-color: rgba(92, 194, 215, 0.2588235294) !important;
}
@media screen and (max-width: 767px) {
  #toc_container {
    width: 100% !important;
  }
}
#toc_container .toc_title {
  text-align: left !important;
  background-color: #fff;
  color: #2CA9C2;
  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: #2CA9C2;
  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: 2rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .list-paradai-item-content {
    font-size: 1.8rem;
    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: -20rem;
  left: 0;
}
@media screen and (max-width: 999px) {
  .scrool-link-parent .scrool-link-child {
    top: -18rem;
  }
}
@media screen and (max-width: 767px) {
  .scrool-link-parent .scrool-link-child {
    top: -15rem;
  }
}

@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: #2CA9C2;
  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/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;
  background-color: #f0f8ff;
  box-shadow: 0 0 0.5rem rgba(71, 71, 71, 0.2901960784);
}
@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: #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
  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: #2CA9C2;
  border: max(1px, 0.1rem) solid #2CA9C2;
  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: #2CA9C2;
}

.informetab {
  display: none;
}

#tab1 {
  display: block;
}

.header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-left: 3.5rem;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1600px) {
  .header {
    padding-left: 1.5rem;
    align-items: flex-start;
  }
}
@media screen and (max-width: 999px) {
  .header {
    background-color: #fff;
    padding: 1.5rem;
    padding-bottom: 0.5rem;
    align-items: center;
  }
}
@media screen and (min-width: 1000px) {
  .header.front-page.is-active {
    background-color: #fff;
  }
  .header.front-page.is-active .header-right-ul-first {
    background-color: transparent;
    box-shadow: none;
  }
  .header.header-ispage {
    background-color: #fff;
  }
  .header.header-ispage .header-right-ul-first {
    background-color: transparent;
    box-shadow: none;
  }
}

.header-logo {
  padding-top: 1rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 999px) {
  .header-logo {
    padding-top: 0;
  }
}
.header-logo img {
  width: 19rem;
}
@media screen and (max-width: 1600px) {
  .header-logo img {
    width: 16rem;
  }
}
@media screen and (max-width: 999px) {
  .header-logo img {
    width: 13rem;
  }
}

.header-right-ul-first {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  background-color: #fff;
  padding-left: 7rem;
  padding-right: 7rem;
  height: 13rem;
  align-items: center;
  border-bottom-left-radius: 1rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1600px) {
  .header-right-ul-first {
    padding-left: 3rem;
    padding-right: 3rem;
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
    height: 12rem;
  }
}
.header-right-ul-first > li > a {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0.3rem;
  position: relative;
  z-index: 2;
}
.header-right-ul-first > li > a .jpn {
  font-size: 1.8rem;
}
.header-right-ul-first > li > a .eng {
  font-size: 1.4rem;
  color: #2CA9C2;
  transition: all 0.3s ease-in-out;
}
.header-right-ul-first > li > a:hover, .header-right-ul-first > li > a.is-active {
  color: #2CA9C2;
}
.header-right-ul-first > li > a:hover .eng, .header-right-ul-first > li > a.is-active .eng {
  font-weight: 700;
}

@media screen and (min-width: 1000px) {
  .btn-hamberger {
    display: none;
  }
}

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

.menu-toggle {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  padding-top: 14rem;
  z-index: 80;
  visibility: hidden;
  transition: all 0.3s linear;
}
@media screen and (min-width: 1000px) {
  .menu-toggle {
    display: none;
  }
}
.menu-toggle.is-active {
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 767px) {
  .menu-toggle {
    padding-top: 12rem;
  }
}

.menu-cont {
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 5rem;
       column-gap: 5rem;
  height: calc(100vh - 17rem);
}
@media screen and (max-width: 767px) {
  .menu-cont {
    height: calc(100vh - 15rem);
    display: block;
  }
  .menu-cont .menu-block + .menu-block {
    padding-top: 4rem;
  }
}

.menu-block-title {
  font-size: 2.4rem;
  color: #2CA9C2;
  font-family: "Quicksand", sans-serif;
  font-weight: 500;
  border-bottom: max(1px, 0.1rem) solid #2CA9C2;
}
@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;
}

.inside-menu {
  overflow: auto;
}

.slicker-slider1-item img {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .slicker-slider1-item img {
    max-height: 100vh;
    height: 54rem;
  }
}
@media screen and (max-width: 767px) {
  .slicker-slider1-item img {
    height: 25rem;
  }
}

.sec1-top {
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec1-top {
    margin-top: 10rem;
  }
}

.sec1-top-content {
  position: absolute;
  z-index: 2;
  bottom: 20rem;
  left: 0;
  padding-left: 4rem;
}
@media screen and (max-width: 1400px) {
  .sec1-top-content {
    padding-left: 1.5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-content {
    bottom: 18rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-content {
    padding-right: 1.5rem;
    bottom: 1rem;
  }
}
.sec1-top-content h1, .sec1-top-content h2, .sec1-top-content h3, .sec1-top-content h4, .sec1-top-content h5, .sec1-top-content h6 {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  text-shadow: 0 0.4rem 0.5rem rgba(0, 0, 0, 0.8);
}
@media screen and (max-width: 999px) {
  .sec1-top-content h1, .sec1-top-content h2, .sec1-top-content h3, .sec1-top-content h4, .sec1-top-content h5, .sec1-top-content h6 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-content h1, .sec1-top-content h2, .sec1-top-content h3, .sec1-top-content h4, .sec1-top-content h5, .sec1-top-content h6 {
    font-size: 2rem;
  }
}

.sec1-top-txt {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.7;
  color: #fff;
  text-shadow: 0 0.4rem 0.5rem rgba(0, 0, 0, 0.8);
  padding-top: 2.5rem;
}
@media screen and (max-width: 999px) {
  .sec1-top-txt {
    font-size: 2rem;
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-txt {
    font-size: 1.5rem;
    padding-top: 0.5rem;
  }
}

.sec2-top {
  position: relative;
}

.sec2-top-main {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 84rem;
  background-color: rgba(243, 250, 251, 0.7);
  border-top-right-radius: 1.5rem;
  display: grid;
  grid-template-columns: 10rem 1fr;
  padding-left: 3rem;
  padding-right: 3rem;
  padding-top: 1.5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .sec2-top-main {
    width: 63rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    grid-template-columns: 8rem 1fr;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-main {
    width: 100%;
    position: static;
    display: block;
    background-color: #fff;
    padding-bottom: 5rem;
  }
}

.sec2-top-left {
  padding-top: 1.5rem;
}
.sec2-top-left h1, .sec2-top-left h2, .sec2-top-left h3, .sec2-top-left h4, .sec2-top-left h5, .sec2-top-left h6 {
  font-size: 1.4rem;
  font-weight: 500;
  color: #5B5959;
  line-height: 1;
  border: max(1px, 0.1rem) solid #5B5959;
  padding: 0.8rem 0.6rem;
  letter-spacing: 0.4rem;
  margin-left: 3rem;
  margin-bottom: 0.8rem;
}
@media screen and (min-width: 768px) {
  .sec2-top-left h1, .sec2-top-left h2, .sec2-top-left h3, .sec2-top-left h4, .sec2-top-left h5, .sec2-top-left h6 {
    writing-mode: vertical-rl;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-left h1, .sec2-top-left h2, .sec2-top-left h3, .sec2-top-left h4, .sec2-top-left h5, .sec2-top-left h6 {
    margin-left: 0;
    text-align: center;
    font-size: 1.8rem;
    padding: 1rem 0;
  }
}

.sec2-top-ul li {
  display: grid;
  grid-template-columns: 12rem 1fr;
  align-items: center;
}
@media screen and (max-width: 999px) {
  .sec2-top-ul li {
    grid-template-columns: 10rem 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-ul li {
    display: block;
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
  }
}
.sec2-top-ul li .sec2-top-date {
  font-size: 1.2rem;
  letter-spacing: 0.2rem;
}
.sec2-top-ul li a {
  font-size: 1.6rem;
  display: block;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: relative;
  padding-right: 3rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sec2-top-ul li a:before {
  content: "→";
  position: absolute;
  right: 0;
  top: 1rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-ul li a:before {
    top: 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top-ul li a {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 1.5rem;
  }
}
.sec2-top-ul li + li {
  border-top: max(1px, 0.1rem) solid #212121;
}

.sec2-top-link {
  display: inline-block;
  border-bottom: max(1px, 0.1rem) solid #212121 !important;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .sec2-top-link {
    margin-top: 2rem;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
}

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

.sec3-top-cont {
  max-width: 150rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 5.6%;
       column-gap: 5.6%;
}
@media screen and (max-width: 999px) {
  .sec3-top-cont {
    -moz-column-gap: 3.6%;
         column-gap: 3.6%;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-cont {
    display: block;
  }
  .sec3-top-cont .sec3-top-item + .sec3-top-item {
    margin-top: 3rem;
  }
}
.sec3-top-cont .setting-tlt-lv1 {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .sec3-top-cont .setting-tlt-lv1 {
    margin-bottom: 2rem;
  }
}

.setting-tlt-lv1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  border-bottom: max(1px, 0.2rem) solid #5B5959;
  padding-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .setting-tlt-lv1 {
    padding-bottom: 1rem;
  }
}
.setting-tlt-lv1 h1, .setting-tlt-lv1 h2, .setting-tlt-lv1 h3, .setting-tlt-lv1 h4, .setting-tlt-lv1 h5, .setting-tlt-lv1 h6 {
  font-size: 4rem;
  color: #5B5959;
  line-height: 1;
}
@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 {
    font-size: 2.67vw;
  }
}
@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 {
    font-size: 2.2rem;
  }
}
.setting-tlt-lv1 .eng {
  font-size: 1.8rem;
  font-weight: 500;
  color: #2CA9C2;
  padding-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv1 .eng {
    font-size: 1.6rem;
  }
}

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

.sec3-top-address {
  text-align: center;
  max-width: 59.5rem;
  margin-left: auto;
  margin-right: auto;
  border: max(1px, 0.1rem) solid #2CA9C2;
  border-radius: 4rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #fff;
  margin-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-address {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin-bottom: 2rem;
  }
}

.sec3-top {
  background-color: #F3FAFB;
  padding-top: 9rem;
  padding-bottom: 8rem;
  background-image: url(../img/top/img05.png);
  background-size: auto 1.56vw;
  background-repeat: no-repeat;
  background-position: bottom center;
}
@media screen and (max-width: 999px) {
  .sec3-top {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background-size: auto 2rem;
  }
}

.sec3-top-item-link {
  max-width: 59.5rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  border-radius: 1.8rem;
  overflow: hidden;
}
.sec3-top-item-link img {
  width: 100%;
}
.sec3-top-item-link .sec3-top-item-linkab {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: grid;
  grid-template-columns: 55% 1fr;
}
.sec3-top-item-link .sec3-top-item-linkab .sec3-top-item-linkhref {
  display: block;
  width: 100%;
  height: 100%;
}
.sec3-top-item-link .sec3-top-item-linkab .sec3-top-item-linkhref:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.sec3-top-item-calender {
  max-width: 53rem;
  margin-left: auto;
  margin-right: auto;
}

.calender-mode {
  width: 100%;
  background-color: #fff;
  border: max(1px, 0.1rem) solid #2CA9C2;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 1.5rem;
  table-layout: fixed;
  overflow: hidden;
}
.calender-mode .cril-tb {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .calender-mode .cril-tb {
    font-size: 1.2rem;
  }
}
.calender-mode .cril-tb-blue {
  color: #2CA9C2;
}
.calender-mode tr td:first-child {
  width: 17rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .calender-mode tr td:first-child {
    width: 12rem;
  }
}
.calender-mode tr td {
  width: calc((100% - 17rem) / 8);
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .calender-mode tr td {
    width: calc((100% - 12rem) / 8);
  }
}
.calender-mode tr:first-child td {
  background-color: #2CA9C2;
  color: #fff;
}
.calender-mode tr:last-child td {
  border-top: max(1px, 0.1rem) solid #2CA9C2;
}

.sec3-top-item-calender-sub {
  text-align: center;
  margin-top: 0.8rem;
}

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

.setting-tlt-lv2.center {
  text-align: center;
}
.setting-tlt-lv2.fvicon:after {
  content: "";
  display: block;
  width: 12rem;
  margin-left: auto;
  margin-right: auto;
  border-bottom: max(4px, 0.8rem) dotted #2CA9C2;
  padding-top: 2.7rem;
}
@media screen and (max-width: 999px) {
  .setting-tlt-lv2.fvicon:after {
    padding-top: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv2.fvicon:after {
    border-bottom: max(4px, 0.6rem) dotted #2CA9C2;
    width: 8rem;
  }
}
.setting-tlt-lv2 h1, .setting-tlt-lv2 h2, .setting-tlt-lv2 h3, .setting-tlt-lv2 h4, .setting-tlt-lv2 h5, .setting-tlt-lv2 h6 {
  color: #5B5959;
  line-height: 1;
  font-family: "Quicksand", sans-serif;
  font-size: 7.3rem;
  font-weight: 500;
}
@media screen and (max-width: 999px) {
  .setting-tlt-lv2 h1, .setting-tlt-lv2 h2, .setting-tlt-lv2 h3, .setting-tlt-lv2 h4, .setting-tlt-lv2 h5, .setting-tlt-lv2 h6 {
    font-size: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv2 h1, .setting-tlt-lv2 h2, .setting-tlt-lv2 h3, .setting-tlt-lv2 h4, .setting-tlt-lv2 h5, .setting-tlt-lv2 h6 {
    font-size: 3.4rem;
  }
}
.setting-tlt-lv2 h1::first-letter, .setting-tlt-lv2 h2::first-letter, .setting-tlt-lv2 h3::first-letter, .setting-tlt-lv2 h4::first-letter, .setting-tlt-lv2 h5::first-letter, .setting-tlt-lv2 h6::first-letter {
  color: #5CC2D7;
}
.setting-tlt-lv2 .jpn {
  font-size: 2.3rem;
  color: #5B5959;
  margin-top: 0.8rem;
}
@media screen and (max-width: 999px) {
  .setting-tlt-lv2 .jpn {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv2 .jpn {
    font-size: 1.8rem;
  }
}

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

.lh2 {
  line-height: 2;
}

.sec4-top-tlt {
  display: grid;
  grid-template-columns: 62% 36rem;
  justify-content: space-between;
}
@media screen and (max-width: 999px) {
  .sec4-top-tlt {
    grid-template-columns: 55% 37rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt {
    display: block;
  }
}

.sec4-top-tlt-left1 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 3.7rem;
}
.sec4-top-tlt-left1 .setting-tlt-lv2 {
  padding-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt-left1 .setting-tlt-lv2 {
    padding-top: 0;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt-left1 {
    display: block;
  }
}

.sec4-top-tlt-left1-img {
  width: 24rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt-left1-img {
    width: 100%;
    margin-top: 2rem;
  }
}

.img-shdow img {
  border-radius: 1rem;
  box-shadow: -1rem 1rem #ADE0EB;
}

.link-arowtop {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 5.2rem;
  width: 100%;
  color: #fff;
  font-size: 1.8rem;
  border-radius: 100rem;
  background-color: #00A5D5;
  position: relative;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .link-arowtop {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .link-arowtop {
    max-width: 30rem;
    width: 100%;
  }
}
.link-arowtop:after {
  content: "→";
  font-size: 1.8rem;
  color: #fff;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
}
.link-arowtop:hover {
  background-color: #A6CF68;
}

.sec4-top-link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 62.4rem;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-top: 4rem;
}
@media screen and (max-width: 999px) {
  .sec4-top-link {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-link {
    display: block;
  }
  .sec4-top-link p.nhiden + p.nhiden {
    margin-top: 2rem;
  }
  .sec4-top-link a {
    margin-left: auto;
    margin-right: auto;
  }
}

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

.sec4-top {
  padding-top: 7.5rem;
  padding-bottom: 11.4rem;
  background-image: url(../img/top/img11.png);
  background-size: 54.5rem auto;
  background-repeat: no-repeat;
  background-position: bottom right 4rem;
}
@media screen and (max-width: 999px) {
  .sec4-top {
    background-size: 40.5rem auto;
    background-position: bottom right 1.5rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top {
    padding: 5rem 0;
    background-size: 100% auto;
    background-position: bottom center;
  }
}

.sec4-top-bottom {
  max-width: 110rem;
  display: grid;
  grid-template-columns: 49.8% 40rem;
  justify-content: space-between;
  margin-top: -1.3rem;
}
@media screen and (max-width: 999px) {
  .sec4-top-bottom {
    margin-top: 0;
    grid-template-columns: 53.8% 40rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-bottom {
    display: block;
  }
}
.sec4-top-bottom .sec4-top-bottom-right {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .sec4-top-bottom .sec4-top-bottom-right {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    margin-top: 3rem;
  }
}
.sec4-top-bottom .sec4-top-bottom-right .img-radius:first-child {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-bottom .sec4-top-bottom-right .img-radius:first-child {
    margin-top: 0;
  }
}
.sec4-top-bottom .sec4-top-bottom-right img {
  width: 18rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-bottom .sec4-top-bottom-right img {
    width: 100%;
  }
}

.img-radius img {
  border-radius: 1rem;
}

.sec4-top-bottom-left {
  margin-top: 5.5rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-bottom-left {
    margin-top: 3rem;
  }
}

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

.sec5-top-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 1.4%;
       column-gap: 1.4%;
  row-gap: 2rem;
  font-size: 1.8rem;
  color: #fff;
  text-align: center;
  line-height: 1.5;
  padding-top: 3rem;
}
@media screen and (max-width: 1400px) {
  .sec5-top-list {
    font-size: 1.29vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-list {
    font-size: 1.6rem;
    row-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-list {
    font-size: 1.4rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
.sec5-top-list li {
  width: 15.5%;
  height: 20rem;
  position: relative;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  border-radius: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 10.5rem;
}
@media screen and (max-width: 1400px) {
  .sec5-top-list li {
    height: 14.29vw;
    padding-left: 0.71vw;
    padding-right: 0.71vw;
    padding-top: 7.14vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-list li {
    width: 23.95%;
    height: 20rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 11rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-list li {
    width: calc((100% - 1.5rem) / 2);
    height: 16rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 8rem;
  }
}
.sec5-top-list li:before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  background-image: url(../img/top/img13.png);
  background-size: cover;
  background-position: bottom right;
  position: absolute;
  bottom: 0.8rem;
  right: 0.8rem;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1400px) and (min-width: 1000px) {
  .sec5-top-list li:before {
    width: 1.14vw;
    height: 1.14vw;
    bottom: 0.57vw;
    right: 0.57vw;
  }
}
.sec5-top-list li .sec5-top-list-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.sec5-top-list li:hover {
  opacity: 0.7 !important;
}

.sec5-top {
  background-image: url(../img/top/img29.jpg);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 12rem;
  padding-bottom: 21.2rem;
  margin-top: 2rem;
}
@media screen and (max-width: 999px) {
  .sec5-top {
    padding-top: 6rem;
    padding-bottom: 10.2rem;
    background-position: top left;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top {
    background-position: center center;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec6-top-favicon {
  position: relative;
  max-width: 112rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}
.sec6-top-favicon .sec6-top-favicon-img {
  width: 16rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .sec6-top-favicon .sec6-top-favicon-img {
    width: 8rem;
  }
}

.txt-fs35 {
  font-size: 3.5rem;
}
@media screen and (max-width: 1500px) {
  .txt-fs35 {
    font-size: 2.33vw;
  }
}
@media screen and (max-width: 999px) {
  .txt-fs35 {
    font-size: 2.4rem;
  }
}

.sec6-top-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec6-top-list {
    display: block;
  }
}
.sec6-top-list .sec6-top-item {
  position: relative;
}
.sec6-top-list .sec6-top-item:first-child {
  background-color: #4DAFC2;
}
.sec6-top-list .sec6-top-item:nth-child(2) {
  background-color: #5CB9BC;
}
.sec6-top-list .sec6-top-item:last-child {
  background-color: #00A5D5;
}
.sec6-top-list .sec6-top-item {
  color: #fff;
  padding-bottom: 11rem;
  padding-left: 3rem;
  padding-right: 3rem;
  padding-top: 4.5rem;
}
@media screen and (max-width: 1500px) {
  .sec6-top-list .sec6-top-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 7.5vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-list .sec6-top-item {
    padding-top: 2.5rem;
    padding-bottom: 10rem;
  }
}
.sec6-top-list .sec6-top-item h1, .sec6-top-list .sec6-top-item h2, .sec6-top-list .sec6-top-item h3, .sec6-top-list .sec6-top-item h4, .sec6-top-list .sec6-top-item h5, .sec6-top-list .sec6-top-item h6 {
  line-height: 1;
  text-align: center;
  font-weight: 700;
}
.sec6-top-list .sec6-top-item .sec6-top-item-eng {
  font-family: "Quicksand", sans-serif;
  font-size: 2rem;
  text-align: center;
  text-transform: uppercase;
  font-weight: 500;
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 1500px) {
  .sec6-top-list .sec6-top-item .sec6-top-item-eng {
    font-size: 1.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-list .sec6-top-item .sec6-top-item-eng {
    font-size: 1.6rem;
    padding-bottom: 0.5rem;
  }
}
@media screen and (min-width: 1000px) {
  .sec6-top-list .sec6-top-item .sec6-top-item-eng {
    letter-spacing: 0.2rem;
  }
}
.sec6-top-list .sec6-top-item .txt-fs18 {
  max-width: 53rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1000px) {
  .sec6-top-list .sec6-top-item .txt-fs18 {
    letter-spacing: 0.2rem;
  }
}

.sec6-top-item-fvicon {
  text-align: center;
  position: relative;
  margin-top: -10.4rem;
  padding-bottom: 2rem;
}
.sec6-top-item-fvicon img {
  width: 15rem;
}
@media screen and (max-width: 1500px) {
  .sec6-top-item-fvicon img {
    width: 10vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-item-fvicon img {
    width: 10rem;
  }
}
@media screen and (max-width: 1500px) {
  .sec6-top-item-fvicon {
    margin-top: -5vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-item-fvicon {
    margin-top: -5rem;
  }
}

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

.sec7-top {
  max-width: 187rem;
  width: calc(100% - 1.5rem);
  margin-left: auto;
  padding-left: 4.5rem;
  padding-right: 2rem;
  position: relative;
  padding-top: 7.5rem;
  padding-bottom: 8rem;
  margin-top: 5.5rem;
}
@media screen and (max-width: 1400px) {
  .sec7-top {
    padding-left: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top {
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
    margin-top: 3rem;
  }
}
.sec7-top:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #D7EEEF;
  border-top-left-radius: 15rem;
  z-index: -2;
}
@media screen and (max-width: 999px) {
  .sec7-top:before {
    border-radius: 0;
  }
}

.sec7-top-ul {
  max-width: 171rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 1.4%;
       column-gap: 1.4%;
  row-gap: 3rem;
  font-size: 2.4rem;
  text-align: center;
  line-height: 1.5;
}
@media screen and (max-width: 1700px) {
  .sec7-top-ul {
    font-size: 1.41vw;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-ul {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-ul {
    font-size: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
    row-gap: 1.5rem;
  }
}
.sec7-top-ul li {
  width: 15.5%;
  height: 21rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  border-radius: 4rem;
  padding-top: 1.5rem;
  position: relative;
}
@media screen and (max-width: 1700px) {
  .sec7-top-ul li {
    height: 12.35vw;
    border-radius: 2.35vw;
    padding-top: 0.88vw;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-ul li {
    width: 23.95%;
    height: 16rem;
    border-radius: 2rem;
    padding-top: 1.5rem;
    background-position: top -1rem center;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-ul li {
    width: calc((100% - 1.5rem) / 2);
    height: 12rem;
    background-position: top center;
    padding-top: 1rem;
  }
}
.sec7-top-ul li:before {
  content: "";
  width: 3rem;
  height: 2.6rem;
  background-image: url(../img/top/img38.png);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
}
@media screen and (max-width: 1700px) {
  .sec7-top-ul li:before {
    width: 1.76vw;
    height: 1.53vw;
    bottom: 1.18vw;
    right: 1.18vw;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-ul li:before {
    width: 2rem;
    height: 1.5rem;
    right: 2rem;
    bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-ul li:before {
    right: 1.5rem;
    bottom: 1.5rem;
  }
}
.sec7-top-ul li:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 4rem;
  background-image: url(../img/top/img39.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: translate(1rem, 1rem);
  z-index: -1;
  transition: opacity 0.3s ease 0.5s, transform 0.3s ease;
  opacity: 0;
}
@media screen and (max-width: 1700px) {
  .sec7-top-ul li:after {
    border-radius: 2.35vw;
    transform: translate(0.59vw, 0.59vw);
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-ul li:after {
    border-radius: 2rem;
    transform: translate(0.5rem, 0.5rem);
  }
}
.sec7-top-ul li.show:after {
  opacity: 1;
}
.sec7-top-ul li .sec7-top-link {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.sec7-top-ul li:hover:after {
  transform: translate(0, 0);
}

.sec8-top {
  margin-top: 5.7rem;
}
@media screen and (max-width: 767px) {
  .sec8-top {
    margin-top: 3rem;
  }
  .sec8-top img {
    height: 15rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
}

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

.sec9-top-main {
  max-width: 161rem;
  display: grid;
  grid-template-columns: 41.3% 1fr;
  -moz-column-gap: 3.7%;
       column-gap: 3.7%;
}
@media screen and (max-width: 999px) {
  .sec9-top-main {
    -moz-column-gap: 1.7%;
         column-gap: 1.7%;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-main {
    display: flex;
    flex-direction: column-reverse;
  }
}

.sec9-top-left-img {
  position: relative;
}
.sec9-top-left-img:before {
  content: "";
  width: 18.4rem;
  height: 4.3rem;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  top: 29%;
  left: 45%;
  background-image: url(../img/top/img60.svg);
  border-radius: 1rem;
}
@media screen and (max-width: 1600px) {
  .sec9-top-left-img:before {
    width: 11.5vw;
    height: 2.69vw;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-left-img:before {
    width: 12rem;
    height: 3rem;
  }
}
.sec9-top-left-img img {
  width: 100%;
}

.sec9-top-right1 {
  display: grid;
  grid-template-columns: 58.7% 1fr;
  align-items: flex-start;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 1400px) {
  .sec9-top-right1 {
    grid-template-columns: 1fr max-content;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-right1 {
    display: flex;
    flex-direction: column-reverse;
  }
}
.sec9-top-right1 .sec9-top-right1-left {
  display: grid;
  grid-template-columns: 53.8% 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .sec9-top-right1 .sec9-top-right1-left {
    grid-template-columns: 1fr 1fr;
  }
}

.sec9-top-right1-right {
  display: grid;
  grid-template-columns: 13.7rem max-content;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  justify-content: flex-end;
}
@media screen and (max-width: 1500px) {
  .sec9-top-right1-right {
    grid-template-columns: 8.13vw max-content;
  }
}
@media screen and (max-width: 999px) {
  .sec9-top-right1-right {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-right1-right {
    display: block;
    text-align: center;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .sec9-top-right1-right .setting-tlt-lv2 {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  .sec9-top-right1-right .setting-tlt-lv2 h1, .sec9-top-right1-right .setting-tlt-lv2 h2, .sec9-top-right1-right .setting-tlt-lv2 h3, .sec9-top-right1-right .setting-tlt-lv2 h4, .sec9-top-right1-right .setting-tlt-lv2 h5, .sec9-top-right1-right .setting-tlt-lv2 h6 {
    writing-mode: vertical-rl;
    letter-spacing: 0.6rem;
  }
  .sec9-top-right1-right .setting-tlt-lv2 .jpn {
    writing-mode: vertical-rl;
    letter-spacing: 0.3rem;
  }
}

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

.sec9-top-right1-left {
  padding-top: 4.3rem;
}
@media screen and (max-width: 999px) {
  .sec9-top-right1-left {
    padding-top: 2rem;
  }
}

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

.setting-tlt-lv3 {
  display: grid;
  grid-template-columns: 12.4rem 1fr;
  align-items: flex-start;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 1400px) {
  .setting-tlt-lv3 {
    grid-template-columns: 8.86vw 1fr;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv3 {
    display: block;
  }
}
.setting-tlt-lv3 h1, .setting-tlt-lv3 h2, .setting-tlt-lv3 h3, .setting-tlt-lv3 h4, .setting-tlt-lv3 h5, .setting-tlt-lv3 h6 {
  font-size: 4rem;
  font-weight: 700;
  color: #4C4948;
  line-height: 1.5;
}
@media screen and (max-width: 1400px) {
  .setting-tlt-lv3 h1, .setting-tlt-lv3 h2, .setting-tlt-lv3 h3, .setting-tlt-lv3 h4, .setting-tlt-lv3 h5, .setting-tlt-lv3 h6 {
    font-size: 2.86vw;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv3 h1, .setting-tlt-lv3 h2, .setting-tlt-lv3 h3, .setting-tlt-lv3 h4, .setting-tlt-lv3 h5, .setting-tlt-lv3 h6 {
    font-size: 2.1rem;
    padding-top: 1.5rem;
  }
}
.setting-tlt-lv3 .setting-tlt-lv3-img {
  padding-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv3 .setting-tlt-lv3-img {
    text-align: center;
  }
  .setting-tlt-lv3 .setting-tlt-lv3-img img {
    width: 10rem;
  }
}

@media screen and (max-width: 1400px) {
  .sec9-top-right2 {
    margin-top: -6rem;
  }
}
@media screen and (max-width: 999px) {
  .sec9-top-right2 {
    margin-top: -2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-right2 {
    margin-top: 3rem;
  }
}
.sec9-top-right2 .txt-fs18 {
  line-height: 2;
  color: #4C4948;
  max-width: 57.5rem;
}

.setting-tlt-lv3-mgb {
  padding-bottom: 4rem;
}
@media screen and (max-width: 1400px) {
  .setting-tlt-lv3-mgb {
    padding-bottom: 2vw;
  }
}

@media screen and (min-width: 1000px) {
  .lt02 {
    letter-spacing: 0.2rem;
  }
}

.sec9-top-number {
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.sec9-top-number .sec9-top-number-big {
  display: inline-block;
  font-size: 7rem;
  font-weight: 500;
  background: #60B574;
  background: linear-gradient(90deg, rgb(96, 181, 116) 0%, rgb(9, 167, 171) 50%, rgb(9, 167, 171) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.sec9-top-number .sec9-top-number-mid {
  font-size: 3rem;
  font-weight: 500;
  color: #4C4948;
}
.sec9-top-number .sec9-top-number-last {
  font-size: 4rem;
  font-weight: 700;
  color: #4C4948;
}

@media screen and (max-width: 767px) {
  .sec9-top-right1-leftimg img {
    width: 100%;
    height: 16.5rem;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.sec10-top {
  position: relative;
  overflow: hidden;
  font-size: 0.52vw;
  padding-top: 35em;
  margin-top: -26em;
}
@media screen and (max-width: 999px) {
  .sec10-top {
    font-size: 0.78vw;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top {
    font-size: 1rem;
    padding-top: 15rem;
    margin-top: 0;
  }
}
.sec10-top .sec10-top-icon {
  position: absolute;
  z-index: -1;
  top: 0;
  right: -35em;
  font-size: 0.52vw;
}
@media screen and (max-width: 999px) {
  .sec10-top .sec10-top-icon {
    font-size: 0.78vw;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top .sec10-top-icon {
    font-size: 1.33vw;
    right: -21em;
  }
}
.sec10-top .sec10-top-icon img {
  width: 85.3em;
  animation: spin 8s linear infinite;
}
.sec10-top .sec10-top-icon:before {
  content: "";
  width: 17em;
  height: 18em;
  background-image: url(../img/top/img67.png);
  background-size: contain;
  background-position: left top;
  background-repeat: no-repeat;
  position: absolute;
  top: 18%;
  left: 34%;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .sec10-top .sec10-top-icon:before {
    top: 16%;
    left: 40%;
  }
}

.sec10-top-slider {
  max-width: 178rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .sec10-top-slider {
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
  }
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}
.sec11-top {
  max-width: 150rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  position: relative;
  padding-bottom: 3rem;
}
@media screen and (max-width: 999px) {
  .sec11-top {
    padding-bottom: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top {
    padding-bottom: 0;
    padding-top: 2rem;
  }
}

.sec11-top-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .sec11-top-list {
    position: static;
    justify-content: center;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
.sec11-top-list li {
  background-color: #fff;
  width: 16rem;
  height: 16rem;
  border-radius: 100rem;
  text-align: center;
  font-weight: 700;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec11-top-list li .txt-fs16 {
  display: inline-block;
  background: linear-gradient(90deg, rgb(188, 166, 122) 0%, rgb(168, 151, 160) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
  .sec11-top-list li .txt-fs16 {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec11-top-list li {
    width: 12rem;
    height: 12rem;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top-list li {
    width: 10rem;
    height: 10rem;
  }
}

.sec12-top {
  position: relative;
  padding-top: 1.5rem;
  padding-bottom: 17rem;
  background-image: url(../img/top/img69.png);
  background-size: 117.2rem auto;
  background-repeat: no-repeat;
  background-position: bottom 3rem center;
}
.sec12-top:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: -14rem;
  background-color: #F3FAFB;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .sec12-top:before {
    top: -32rem;
  }
}
@media screen and (max-width: 999px) {
  .sec12-top {
    padding-bottom: 13rem;
    background-size: 89.2rem auto;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top {
    background-size: 35.2rem auto;
    padding-bottom: 7rem;
  }
}

.sec12-top-cont {
  max-width: 150rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  align-items: center;
}
@media screen and (max-width: 1400px) {
  .sec12-top-cont {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-cont {
    display: block;
  }
}

.sec12-top-right {
  color: #4C4948;
  line-height: 2;
}
.sec12-top-right .txt-fs18 {
  max-width: 69rem;
}
@media screen and (max-width: 767px) {
  .sec12-top-right .txt-fs18 {
    margin-top: 1.5rem;
  }
}

.sec13-top {
  max-width: 161rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 49.8% 1fr;
  -moz-column-gap: 3.1%;
       column-gap: 3.1%;
  padding-top: 9.3rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 999px) {
  .sec13-top {
    -moz-column-gap: 2.1%;
         column-gap: 2.1%;
    padding-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top {
    display: block;
    padding-top: 5rem;
  }
}

.sec13-top-right {
  padding-top: 5.5rem;
}
@media screen and (max-width: 1400px) {
  .sec13-top-right {
    padding-top: 1.5rem;
  }
}
.sec13-top-right .txt-fs18 {
  color: #4C4948;
  line-height: 2;
  max-width: 68rem;
}

.sec13-top-left-icon {
  text-align: center;
  margin-top: -14rem;
}
@media screen and (max-width: 999px) {
  .sec13-top-left-icon {
    margin-top: -10rem;
  }
}
.sec13-top-left-icon img {
  width: 42rem;
}
@media screen and (max-width: 999px) {
  .sec13-top-left-icon img {
    width: 28rem;
  }
}

.sec14-top {
  max-width: 178rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 3.5rem;
}
@media screen and (max-width: 999px) {
  .sec14-top {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec14-top {
    padding-top: 3.5rem;
  }
}

.sec14-top-main {
  max-width: 164rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 48.7%;
  -moz-column-gap: 3.1%;
       column-gap: 3.1%;
  align-items: center;
}
@media screen and (max-width: 999px) {
  .sec14-top-main {
    -moz-column-gap: 2.1%;
         column-gap: 2.1%;
  }
}
@media screen and (max-width: 767px) {
  .sec14-top-main {
    display: flex;
    flex-direction: column-reverse;
  }
}

.sec14-top-right-img {
  position: relative;
}
.sec14-top-right-img:before {
  content: "";
  width: 24.8rem;
  height: 24.8rem;
  background-image: url(../img/top/img74.png);
  background-size: contain;
  background-position: top left;
  background-repeat: no-repeat;
  position: absolute;
  top: 2rem;
  left: 2rem;
}
@media screen and (max-width: 1600px) {
  .sec14-top-right-img:before {
    width: 15.5vw;
    height: 15.5vw;
    top: 1.25vw;
    left: 1.25vw;
  }
}

.sec14-top-left .txt-fs18 {
  max-width: 70rem;
}

.sec15-top {
  position: relative;
  max-width: 174rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .sec15-top {
    padding-bottom: 11rem;
  }
}
.sec15-top .sec15-top-img {
  position: absolute;
  width: 56.7rem;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 1600px) {
  .sec15-top .sec15-top-img {
    width: 35.44vw;
  }
}
@media screen and (max-width: 767px) {
  .sec15-top .sec15-top-img {
    width: 100%;
  }
}

.sec16-top {
  max-width: 178rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 4rem;
}

.sec16-top-cont {
  max-width: 164rem;
  display: grid;
  grid-template-columns: 1fr 67.6%;
}
@media screen and (max-width: 999px) {
  .sec16-top-cont {
    display: block;
  }
}

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

@media screen and (min-width: 768px) {
  .sec16-top-ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1400px) {
  .sec16-top-ul {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec16-top-ul li {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.sec16-top-ul .txt-fs20 {
  font-weight: 500;
  text-align: right;
  padding-right: 1rem;
  padding-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .sec16-top-ul .txt-fs20 {
    text-align: center;
  }
}

.sec16-top-left {
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec16-top-left {
    padding-bottom: 8rem;
  }
}
.sec16-top-left .sec16-top-left-img {
  position: absolute;
  width: 150%;
  top: 6rem;
  left: 0;
}
@media screen and (max-width: 1700px) {
  .sec16-top-left .sec16-top-left-img {
    top: 3.53vw;
  }
}
@media screen and (max-width: 1400px) {
  .sec16-top-left .sec16-top-left-img {
    top: 1vw;
  }
}
@media screen and (max-width: 999px) {
  .sec16-top-left .sec16-top-left-img {
    width: 54rem;
    top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec16-top-left .sec16-top-left-img {
    width: 100%;
    z-index: 2;
  }
}

.sec17-top {
  max-width: 178rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  border: max(2px, 0.4rem) solid #EDE7DF;
  margin-top: 15rem;
  padding-top: 8rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 1500px) {
  .sec17-top {
    margin-top: 10vw;
    padding-top: 5.33vw;
    padding-bottom: 5.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec17-top {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec17-top {
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}

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

.sec17-top-main {
  max-width: 154rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 61%;
  -moz-column-gap: 2.7%;
       column-gap: 2.7%;
}
@media screen and (max-width: 767px) {
  .sec17-top-main {
    display: block;
  }
}

.sec17-top-left .setting-tlt-lv3 {
  margin-bottom: 1rem;
}

.cl-4c {
  color: #4C4948;
}

@media screen and (min-width: 768px) {
  .sec17-top-ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 999px) {
  .sec17-top-ul {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec17-top-ul li {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.sec17-top-right {
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec17-top-right {
    margin-top: 8rem;
  }
}

.sec17-top-right-icon {
  position: absolute;
  bottom: 69%;
  right: 1.5rem;
  width: 21.5rem;
}
@media screen and (max-width: 1500px) {
  .sec17-top-right-icon {
    width: 14.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec17-top-right-icon {
    width: 10rem;
    bottom: 85%;
  }
}
@media screen and (max-width: 767px) {
  .sec17-top-right-icon {
    z-index: 2;
    width: 12rem;
  }
}

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

.sec18-top-main {
  max-width: 99rem;
  margin-left: auto;
}
@media screen and (max-width: 1500px) {
  .sec18-top-main {
    max-width: 66vw;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-main {
    max-width: 100%;
    margin-top: -5rem;
  }
}

.sec18-top {
  background-image: url(../img/top/img89.png), url(../img/top/img86.png);
  background-position: top center, top left;
  background-repeat: no-repeat, no-repeat;
  background-size: 100vw auto, 100vw auto;
  padding-top: 11.46vw;
  margin-top: 9.7rem;
  padding-bottom: 7.5rem;
}
@media screen and (min-width: 768px) {
  .sec18-top .setting-tlt-lv2.center {
    width: -moz-max-content;
    width: max-content;
    margin-left: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top {
    padding-top: 13rem;
    margin-top: 5.7rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top {
    padding-top: 0;
    background-image: none;
  }
}

.sec18-top-box {
  background-color: rgba(255, 255, 255, 0.9);
  padding-left: 6rem;
  padding-right: 6rem;
  border-radius: 1rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
  margin-top: 4.5rem;
  background-image: url(../img/top/img92.png);
  background-size: 28.4rem auto;
  background-repeat: no-repeat;
  background-position: right 7rem bottom 16rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-box {
    padding-left: 3.33vw;
    padding-right: 3.33vw;
    padding-top: 3.33vw;
    padding-bottom: 3.33vw;
    margin-top: 3.33vw;
    background-size: 18.93vw auto;
    background-repeat: no-repeat;
    background-position: right 4.67vw bottom 10.67vw;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-box {
    padding-left: 0;
    padding-right: 0;
    background-size: 83% auto;
    background-repeat: no-repeat;
    background-position: bottom 12rem center;
  }
  .sec18-top-box .link-arowtop-sv2 {
    margin-left: auto;
    margin-right: auto;
  }
}
.sec18-top-box .sec18-top-lead {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-box .sec18-top-lead {
    font-size: 2vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-box .sec18-top-lead {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-box .sec18-top-lead {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
}
.sec18-top-box .sec18-top-txt {
  font-size: 2.3rem;
  line-height: 2;
}
@media screen and (max-width: 1500px) {
  .sec18-top-box .sec18-top-txt {
    font-size: 1.53vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-box .sec18-top-txt {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-box .sec18-top-txt {
    font-size: 1.6rem;
  }
}

.link-arowtop-sv2 {
  font-size: 1.8rem;
  color: #fff;
  background-color: #0CA8D6;
  display: flex;
  width: 33rem;
  height: 8rem;
  justify-content: center;
  align-items: center;
  border-radius: 100rem;
  background-image: url(../img/top/img87.png);
  background-size: 3.8rem auto;
  background-repeat: no-repeat;
  background-position: right 3.8rem center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .link-arowtop-sv2 {
    width: 28rem;
    height: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .link-arowtop-sv2 {
    width: 25rem;
    height: 5rem;
    background-size: 2.8rem auto;
    background-position: right 1.5rem center;
  }
}
.link-arowtop-sv2:hover {
  background-color: #A6CF68;
}

.sec18-top-btn {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-right: 3.5rem;
  padding-top: 7rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-btn {
    padding-top: 4.67vw;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-btn {
    flex-direction: column-reverse;
    padding-right: 0;
  }
}
.sec18-top-btn .sec18-top-img {
  width: 31.6rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-btn .sec18-top-img {
    width: 20.07vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-btn .sec18-top-img {
    width: 20rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-btn .sec18-top-img {
    width: 20rem;
    margin-left: auto;
    padding-bottom: 2rem;
  }
}

.sec18-top-social {
  background-color: #fff;
  border-radius: 4rem;
  box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.3);
  padding-top: 8rem;
  margin-top: 11.2vw;
  padding-bottom: 10rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-social {
    padding-top: 5.33vw;
    padding-bottom: 5.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-social {
    margin-top: 7.2vw;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-social {
    margin-top: 5rem;
    box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.3);
    padding-top: 4rem;
    padding-bottom: 4rem;
    border-radius: 2rem;
  }
}

.sec18-top-social-main {
  max-width: 142rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 6.6%;
       column-gap: 6.6%;
}
@media screen and (max-width: 1400px) {
  .sec18-top-social-main {
    -moz-column-gap: 4%;
         column-gap: 4%;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-social-main {
    display: block;
  }
}

.setting-tlt-lv4 h1, .setting-tlt-lv4 h2, .setting-tlt-lv4 h3, .setting-tlt-lv4 h4, .setting-tlt-lv4 h5, .setting-tlt-lv4 h6 {
  font-size: 7.3rem;
  line-height: 1;
  color: #5B5959;
  font-family: "Quicksand", sans-serif;
  font-weight: 500;
  letter-spacing: 0.3rem;
}
.setting-tlt-lv4 h1::first-letter, .setting-tlt-lv4 h2::first-letter, .setting-tlt-lv4 h3::first-letter, .setting-tlt-lv4 h4::first-letter, .setting-tlt-lv4 h5::first-letter, .setting-tlt-lv4 h6::first-letter {
  color: #2CA9C2;
}
@media screen and (max-width: 1500px) {
  .setting-tlt-lv4 h1, .setting-tlt-lv4 h2, .setting-tlt-lv4 h3, .setting-tlt-lv4 h4, .setting-tlt-lv4 h5, .setting-tlt-lv4 h6 {
    font-size: 4.67vw;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv4 h1, .setting-tlt-lv4 h2, .setting-tlt-lv4 h3, .setting-tlt-lv4 h4, .setting-tlt-lv4 h5, .setting-tlt-lv4 h6 {
    font-size: 3rem;
  }
}

.sec18-top-social-lead {
  color: #5B5959;
  line-height: 1;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  align-items: flex-start;
}
.sec18-top-social-lead .sec18-top-social-eng {
  font-size: 2.3rem;
  padding-top: 1.3rem;
}
@media screen and (max-width: 767px) {
  .sec18-top-social-lead .sec18-top-social-eng {
    font-size: 2rem;
  }
}
.sec18-top-social-lead .sec18-top-social-link {
  font-size: 1.8rem;
  font-weight: 500;
  text-align: right;
  border-bottom: max(1px, 0.1rem) solid #2CA9C2;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .sec18-top-social-lead .sec18-top-social-link {
    font-size: 1.6rem;
  }
}

.sec18-top-list-column {
  padding-top: 3.5rem;
}
.sec18-top-list-column li {
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  align-items: center;
  color: #222222;
  background-color: #F6F6F6;
  border-radius: 0.8rem;
  padding-left: 3rem;
  padding-bottom: 3rem;
  padding-top: 3rem;
  padding-right: 2rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-list-column li {
    padding: 2vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-list-column li {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-list-column li {
    display: block;
    padding: 3rem 2rem;
  }
}
.sec18-top-list-column li .sec18-top-list-column-img img {
  border-radius: 0.8rem;
  width: 12rem;
  height: 12rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 767px) {
  .sec18-top-list-column li .sec18-top-list-column-img img {
    width: 100%;
    height: 20rem;
  }
}
.sec18-top-list-column li .sec18-top-list-column-date {
  font-size: 1.5rem;
}
.sec18-top-list-column li .sec18-top-list-column-tlt {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 0.3rem;
  margin-bottom: 0.3rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-list-column li .sec18-top-list-column-tlt {
    font-size: 1.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-list-column li .sec18-top-list-column-tlt {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-list-column li .sec18-top-list-column-tlt {
    font-size: 1.8rem;
  }
}
.sec18-top-list-column li .sec18-top-list-column-prp {
  font-size: 1.8rem;
}
@media screen and (max-width: 999px) {
  .sec18-top-list-column li .sec18-top-list-column-prp {
    font-size: 1.6rem;
  }
}
.sec18-top-list-column li .sec18-top-list-column-prp a {
  border-bottom: max(1px, 0.1rem) solid #222222 !important;
}
.sec18-top-list-column li + li {
  margin-top: 2rem;
}

.install-instagram {
  padding-top: 2rem;
}

@media screen and (max-width: 767px) {
  .sec18-top-list-column-content {
    padding-top: 2rem;
  }
}

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

.sec18-top-main-top {
  margin-left: -1.5rem;
  margin-right: -1.5rem;
}

.sec19-top {
  display: grid;
  grid-template-columns: 1fr 28.1% 1fr;
}
@media screen and (max-width: 767px) {
  .sec19-top {
    display: block;
  }
}

.sec19-top-mid {
  background-image: url(../img/top/img97.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  color: #fff;
  text-align: center;
  padding: 2rem 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec19-top-mid {
    padding: 4rem 1.5rem;
  }
}
.sec19-top-mid .txt-fs16 {
  line-height: 1.8;
  margin-top: 4rem;
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 1700px) {
  .sec19-top-mid .txt-fs16 {
    margin-top: 2.06vw;
    margin-bottom: 2.06vw;
  }
}
@media screen and (max-width: 1400px) {
  .sec19-top-mid .txt-fs16 {
    margin-top: 1.06vw;
    margin-bottom: 1.06vw;
  }
}
@media screen and (max-width: 767px) {
  .sec19-top-mid .txt-fs16 {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}

.setting-tlt-lv5 {
  text-align: center;
}
.setting-tlt-lv5 h1, .setting-tlt-lv5 h2, .setting-tlt-lv5 h3, .setting-tlt-lv5 h4, .setting-tlt-lv5 h5, .setting-tlt-lv5 h6 {
  font-size: 7.3rem;
  text-transform: uppercase;
  line-height: 1;
  font-weight: 500;
  font-family: "Quicksand", sans-serif;
}
@media screen and (max-width: 1700px) {
  .setting-tlt-lv5 h1, .setting-tlt-lv5 h2, .setting-tlt-lv5 h3, .setting-tlt-lv5 h4, .setting-tlt-lv5 h5, .setting-tlt-lv5 h6 {
    font-size: 4.29vw;
  }
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv5 h1, .setting-tlt-lv5 h2, .setting-tlt-lv5 h3, .setting-tlt-lv5 h4, .setting-tlt-lv5 h5, .setting-tlt-lv5 h6 {
    font-size: 4rem;
  }
}
.setting-tlt-lv5 .setting-tlt-lv5-jpn {
  font-size: 1.9rem;
  font-weight: 500;
  padding-top: 1rem;
}
@media screen and (max-width: 767px) {
  .setting-tlt-lv5 .setting-tlt-lv5-jpn {
    font-size: 1.7rem;
  }
}

.sec19-top-rclink {
  display: flex;
  flex-wrap: wrap;
  max-width: 29rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  height: 6rem;
  color: #4DBBAA;
  font-size: 1.6rem;
  background-image: url(../img/top/img98.png);
  background-size: contain;
  background-position: top left;
  background-repeat: no-repeat;
  background-color: #fff;
  align-items: center;
  font-weight: 500;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec19-top-rclink {
    max-width: 21rem;
    height: 5rem;
    font-size: 1.5rem;
  }
}
.sec19-top-rclink:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 3rem;
  background-color: #fff;
  background-image: url(../img/top/img99.png);
  background-size: 0.7rem auto;
  background-repeat: no-repeat;
  background-position: center center;
  border-left: max(1px, 0.1rem) solid #639CD1;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .sec19-top-rclink:after {
    width: 2rem;
  }
}

.sec20-top {
  background-image: url(../img/top/img100.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  padding-top: 8.5rem;
  padding-bottom: 10rem;
}
@media screen and (max-width: 999px) {
  .sec20-top {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec20-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec20-top-cont {
  max-width: 124rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  background-color: #fff;
  padding-top: 2rem;
  padding-bottom: 5rem;
  margin-top: 6rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec20-top-cont {
    margin-top: 4rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
.sec20-top-cont:before, .sec20-top-cont:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: max(1px, 0.1rem) solid #fff;
}
.sec20-top-cont:before {
  transform: translate(-1rem, 1rem);
}
.sec20-top-cont:after {
  transform: translate(1rem, -1rem);
}

.sec20-top-content {
  max-width: 114rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 49.1% 46.5%;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec20-top-content {
    display: block;
  }
}

.sec20-top-left .txt-fs18 {
  font-weight: 500;
}

.sec20-top-tell {
  font-size: 3.2rem;
  letter-spacing: 0.3rem;
}
@media screen and (max-width: 767px) {
  .sec20-top-tell {
    font-size: 2.8rem;
  }
}
.sec20-top-tell span {
  font-size: 2rem;
}

.sec20-top-left {
  text-align: center;
}

.sec20-top-line {
  border-top: max(2px, 0.2rem) solid #212121;
  border-bottom: max(2px, 0.2rem) solid #212121;
  padding-top: 1rem;
  padding-bottom: 1.5rem;
  margin-top: 2rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec20-top-line {
    margin-top: 1rem;
  }
}

.sec20-top-gr-link {
  max-width: 33.6rem;
  margin-left: auto;
  margin-right: auto;
}
.sec20-top-gr-link .nhiden + .nhiden {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .sec20-top-gr-link {
    max-width: 30rem;
  }
}

.sec20-top-right-img {
  text-align: center;
}
.sec20-top-right-img img {
  width: 22.6rem;
}

.sec20-top-right-table-txt {
  text-align: center;
  margin-top: 1.5rem;
}

.sec20-top-right-table {
  margin-top: 2rem;
}

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

.sec21-top {
  display: flex;
}
.sec21-top iframe {
  width: 100%;
  height: 48rem;
}
@media screen and (max-width: 767px) {
  .sec21-top iframe {
    height: 30rem;
  }
}

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

.footer-main {
  max-width: 132rem;
  margin-left: auto;
  display: grid;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 11rem;
       column-gap: 11rem;
}
@media screen and (max-width: 1500px) {
  .footer-main {
    -moz-column-gap: 7.33vw;
         column-gap: 7.33vw;
  }
}
@media screen and (max-width: 1300px) {
  .footer-main {
    -moz-column-gap: 5vw;
         column-gap: 5vw;
  }
}
@media screen and (max-width: 999px) {
  .footer-main {
    -moz-column-gap: 3vw;
         column-gap: 3vw;
  }
}
@media screen and (max-width: 767px) {
  .footer-main {
    display: block;
  }
}

.footer-left-logo {
  display: inline-block;
  width: 28.6rem;
}
@media screen and (max-width: 767px) {
  .footer-left-logo {
    width: 22.6rem;
  }
}

.footer-left {
  text-align: center;
}

.footer-left-address {
  padding-top: 4rem;
}
@media screen and (max-width: 999px) {
  .footer-left-address {
    padding-top: 2rem;
  }
}

.footer-left-tell {
  color: #fff;
  background-color: #00A5D5;
  display: flex;
  width: 32rem;
  height: 8rem;
  font-size: 3.6rem;
  justify-content: flex-end;
  align-items: center;
  border-radius: 4rem;
  padding-right: 4rem;
  background-image: url(../img/common/img01.png);
  background-size: 2.8rem auto;
  background-position: left 2rem center;
  background-repeat: no-repeat;
  font-family: "Quicksand", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 999px) {
  .footer-left-tell {
    width: 26rem;
    height: 7rem;
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-left-tell {
    width: 22rem;
    height: 5rem;
    font-size: 2.2rem;
    padding-right: 3rem;
    background-size: 2.2rem auto;
  }
}

.footer-left-instagram {
  display: inline-block;
  width: 8rem;
}
@media screen and (max-width: 999px) {
  .footer-left-instagram {
    width: 7rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-left-instagram {
    width: 5rem;
  }
}

.soccial-left {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  padding-top: 3rem;
}
@media screen and (max-width: 999px) {
  .soccial-left {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .soccial-left {
    justify-content: center;
    padding-top: 1.5rem;
  }
}

.footer-left-logo-top {
  max-width: 32rem;
}
@media screen and (max-width: 999px) {
  .footer-left-logo-top {
    max-width: 26rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-left-logo-top {
    max-width: 100%;
  }
}

.footer-right-tlt {
  font-size: 3.6rem;
  font-weight: 500;
  color: #5B5959;
  line-height: 1;
  font-family: "Quicksand", sans-serif;
  border-bottom: max(2px, 0.2rem) solid #5B5959;
  padding-bottom: 1.3rem;
  margin-bottom: 2rem;
}
.footer-right-tlt::first-letter {
  color: #2CA9C2;
}
@media screen and (max-width: 999px) {
  .footer-right-tlt {
    font-size: 3rem;
  }
}

.footer-right-ul a {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 1.4rem;
       column-gap: 1.4rem;
}
.footer-right-ul a:before {
  content: "";
  display: inline-block;
  width: 0.7rem;
  height: 0.7rem;
  background-color: #282828;
}
.footer-right-ul li + li {
  margin-top: 1rem;
}

.footer-right-ul-flex li {
  margin: 0 !important;
}
.footer-right-ul-flex {
  display: grid;
  grid-template-columns: max-content max-content;
  justify-content: space-between;
  row-gap: 1rem;
}

.footer-right {
  display: grid;
  -moz-column-gap: 5.8rem;
       column-gap: 5.8rem;
  grid-template-columns: 35% 2fr;
}
@media screen and (max-width: 767px) {
  .footer-right {
    display: block;
    margin-top: 3rem;
  }
  .footer-right .footer-right-item + .footer-right-item {
    margin-top: 3rem;
  }
}

footer {
  padding-top: 12rem;
  padding-bottom: 10rem;
  background-image: url(../img/common/img03.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 999px) {
  footer {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  footer {
    padding: 5rem 0;
    padding-bottom: 8rem;
  }
}

.coppy-cry {
  font-size: 1.2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background-color: #2CA9C2;
  color: #fff;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.coppy-cry a {
  display: inline-block;
  padding-right: 2.7rem;
  border-right: max(1px, 0.1rem) solid #fff;
}
.coppy-cry img {
  width: 15rem;
}
@media screen and (max-width: 767px) {
  .coppy-cry {
    margin-bottom: 5rem;
  }
}

.scrolltop {
  background-image: url(../img/common/vettor17.svg);
  background-size: 1.2rem auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-repeat: no-repeat;
  width: 6rem;
  height: 6rem;
  background-color: #2CA9C2;
  border: 0;
  outline: 0;
  z-index: 20;
  position: fixed;
  bottom: 6.4rem;
  right: 3rem;
  border-radius: 100rem;
  cursor: pointer;
  border: max(1px, 0.1rem) solid #fff;
}
@media screen and (max-width: 999px) {
  .scrolltop {
    width: 5.5rem;
    height: 5.5rem;
    right: 1.5rem;
    bottom: 7rem;
  }
}

.icon-fixed {
  position: fixed;
  top: 40rem;
  right: 0;
  z-index: 20;
}
@media screen and (min-width: 768px) and (max-height: 600px) {
  .icon-fixed {
    top: 30rem;
  }
}
@media screen and (max-width: 767px) {
  .icon-fixed {
    top: auto;
    bottom: 0;
    display: flex;
    flex-wrap: wrap;
    left: 0;
    border-top: max(1px, 0.1rem) solid #fff;
  }
}
.icon-fixed a {
  display: block;
  width: 8rem;
  height: 8rem;
}
@media screen and (max-width: 999px) {
  .icon-fixed a {
    width: 33.3333333333%;
    height: 5rem;
  }
}
.icon-fixed .icon-tel {
  background-color: #2CA9C3;
  border-top-left-radius: 1rem;
  background-image: url(../img/common/img04.png);
  background-size: 2.8rem auto;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 999px) {
  .icon-fixed .icon-tel {
    background-size: 2rem auto;
  }
}
@media screen and (max-width: 767px) {
  .icon-fixed .icon-tel {
    border-radius: 0;
  }
}
.icon-fixed .icon-address {
  background-color: #4FB5B7;
  border-bottom-left-radius: 1rem;
  background-image: url(../img/common/img05.png);
  background-size: 2.5rem auto;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 999px) {
  .icon-fixed .icon-address {
    background-size: 2rem auto;
  }
}
@media screen and (max-width: 767px) {
  .icon-fixed .icon-address {
    border-radius: 0;
  }
}
.icon-fixed .icon-scrolltop {
  background-color: #00A5D5;
  background-image: url(../img/common/vettor17.svg);
  background-size: 1rem auto;
  background-position: center center;
  background-repeat: no-repeat;
  border-bottom-left-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .icon-fixed .icon-scrolltop {
    border-radius: 0;
  }
}

.footer-recruit-close {
  position: absolute;
  top: -1.5rem;
  left: -1.5rem;
  width: 3rem;
  height: 3rem;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 100rem;
  box-shadow: 0 0 0.6rem 0px rgba(0, 0, 0, 0.2196078431);
  cursor: pointer;
  background-image: url(../img/common/close.png);
  background-size: 50% auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.footer-recruit {
  position: fixed;
  bottom: 3rem;
  right: 11rem;
  width: 33.5rem;
}
@media screen and (max-width: 999px) {
  .footer-recruit {
    right: 9rem;
    width: 23.5rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-recruit {
    right: 1.5rem;
    width: 16.5rem;
    bottom: 12rem;
  }
}
.footer-recruit img {
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .footer-recruit img {
    border-radius: 0.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: -12rem;
  }
}
@media screen and (max-width: 767px) {
  .scrool-link-parent .scrool-link-child {
    top: -11rem;
  }
}

.clinic-googlemap iframe {
  width: 100%;
  height: 45rem;
}
@media screen and (max-width: 999px) {
  .clinic-googlemap iframe {
    height: 30rem;
  }
}

.sec-alowerbos {
  font-size: 2.4rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .sec-alowerbos {
    font-size: 2rem;
  }
}

.link-page-child .link-arowtop-page {
  max-width: -moz-max-content;
  max-width: max-content;
  margin-left: auto;
  margin-right: auto;
  padding: 1.5rem 4rem;
  background-color: #2CA9C2;
  color: #fff;
  font-size: 1.6rem;
  display: block;
  transition: all 0.3s ease-in-out;
  position: relative;
}
.link-page-child .link-arowtop-page:before {
  content: "→";
  font-size: 1.8rem;
  color: #fff;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .link-page-child .link-arowtop-page {
    padding-left: 2rem;
    padding-right: 4rem;
  }
}
.link-page-child .link-arowtop-page:hover {
  background-color: #212121;
}

.mgt5 {
  margin-top: 5rem;
}

.fade-top {
  opacity: 0;
  transform: translate(0, 35px);
  animation: fade-top 0.5s ease forwards;
  animation-delay: 0.6s;
}

@keyframes fade-top {
  to {
    opacity: 1;
    transform: none;
  }
}
.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: #2CA9C2;
  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: #2CA9C2;
  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;
}

.header-right-address {
  position: relative;
}
.header-right-address .header-right-address-txt {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
  top: 0.5rem;
  right: 7rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 1600px) {
  .header-right-address .header-right-address-txt {
    right: 3rem;
  }
}

.sec3-top-item-linkaccess {
  max-width: 30rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .sec3-top-item-linkaccess-left {
    margin-left: 0;
  }
}

.sec3-top-item-linkaccess-pre {
  position: relative;
  z-index: 3;
}

.sec4-top-link-centermor {
  margin-left: auto;
  margin-right: auto;
}

.table-contact-form {
  width: 100%;
}
.table-contact-form tr td:first-child {
  width: 40rem;
  background-color: #2CA9C2;
  color: #fff;
  font-weight: 500;
  border-bottom: max(1px, 0.1rem) solid #fff;
}
@media screen and (max-width: 999px) {
  .table-contact-form tr td:first-child {
    width: 35rem;
  }
}
.table-contact-form tr td:last-child {
  width: calc(100% - 45rem);
}
@media screen and (max-width: 999px) {
  .table-contact-form tr td:last-child {
    width: calc(100% - 35rem);
  }
}
@media screen and (max-width: 767px) {
  .table-contact-form tr td:last-child {
    padding-left: 0;
    padding-right: 0;
  }
}
.table-contact-form tr td {
  border: max(1px, 0.1rem) solid #2CA9C2;
  vertical-align: middle;
  padding: 1.5rem 2rem;
}
@media screen and (max-width: 767px) {
  .table-contact-form tr td {
    float: left;
    width: 100% !important;
    border: 0 !important;
  }
}

.form-control {
  width: 100%;
  height: 5rem;
  background-color: #EEEEEE;
  padding: 0 1.5rem;
  border: 0;
  outline: 0;
}

.table-contact-form-requie {
  display: inline-block;
  padding: 0.1rem 2rem;
  border-radius: 100rem;
  background-color: #fff;
  color: #2CA9C2;
}

.tlt-form-td {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.form-odd-persion {
  display: grid;
  grid-template-columns: max-content max-content max-content;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .form-odd-persion {
    display: block;
  }
  .form-odd-persion .form-odd-persion-item + .form-odd-persion-item {
    margin-top: 0.5rem;
  }
}

.form-odd-persion-item {
  display: grid;
  grid-template-columns: 16.5rem max-content;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  align-items: center;
}
@media screen and (max-width: 999px) {
  .form-odd-persion-item {
    grid-template-columns: 13rem max-content;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .form-odd-persion-item {
    grid-template-columns: 30rem max-content;
    justify-content: space-between;
    -moz-column-gap: 0;
         column-gap: 0;
  }
}

.form-maxixto {
  width: 21.6rem;
  display: grid;
  grid-template-columns: 16.5rem max-content;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  align-items: center;
}
@media screen and (max-width: 999px) {
  .form-maxixto {
    grid-template-columns: 13rem max-content;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .form-maxixto {
    grid-template-columns: 30rem max-content;
    justify-content: space-between;
    -moz-column-gap: 0;
         column-gap: 0;
    width: 100%;
  }
}

.form-area {
  width: 100%;
  resize: none;
  height: 25rem;
  background-color: #EEEEEE;
  padding: 1.5rem;
  border: 0;
  outline: 0;
}
@media screen and (max-width: 767px) {
  .form-area {
    height: 20rem;
  }
}

.td-altop td {
  vertical-align: top !important;
}

.input-privacy {
  text-align: center;
  margin-top: 2rem;
}

.form-checkbox input {
  width: 3rem;
  height: 3rem;
  margin-right: 1.5rem;
}

.input-typesubmit {
  text-align: center;
  margin-top: 3rem;
}
.input-typesubmit .wpcf7-spinner {
  display: none;
}

.form-submit {
  width: 30rem;
  height: 6rem;
  background-color: #2CA9C2;
  border-radius: 1rem;
  color: #fff;
  border: 0;
  outline: 0;
  font-size: 2rem;
  font-weight: 500;
  cursor: pointer;
}
.form-submit:hover {
  opacity: 0.7;
}

.sec6-top-item-link {
  position: absolute;
  width: 30rem;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 999px) {
  .sec6-top-item-link {
    width: 25rem;
  }
}
.sec6-top-item-link a {
  background-color: #595757;
}

.linkgo-permater {
  text-align: center;
  padding-top: 2rem;
}
.linkgo-permater .linkgo-permater-logo2, .linkgo-permater .linkgo-permater-logo3 {
  width: 40rem;
}
@media screen and (max-width: 999px) {
  .linkgo-permater .linkgo-permater-logo2, .linkgo-permater .linkgo-permater-logo3 {
    width: 31rem;
  }
}
@media screen and (max-width: 767px) {
  .linkgo-permater .linkgo-permater-logo2, .linkgo-permater .linkgo-permater-logo3 {
    width: 27rem;
  }
}

.logo-soccial-2page {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 5rem;
       column-gap: 5rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .logo-soccial-2page {
    grid-template-columns: 1fr;
    row-gap: 3rem;
  }
}/*# sourceMappingURL=style.css.map */