.banner-page {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.banner-page:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(33, 42, 69, 0) 100%);
}
.banner-page img {
  width: 100%;
  height: 55rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .banner-page img {
    height: 35rem;
  }
}
.banner-page .banner-page-title {
  padding: 0.6rem 3rem;
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 2;
  background-color: #5A7494;
  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: #5A7494;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.brecum-page-ul .icon {
  width: 0.7rem;
  height: 0.7rem;
  border-top: 1px solid #3B2C33;
  border-right: 1px solid #3B2C33;
  transform: rotate(45deg);
}
.brecum-page-ul a {
  color: #3B2C33;
  transition: all 0.3s ease-in-out;
}
.brecum-page-ul a:hover {
  color: #5A7494;
}

.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 #5A7494;
  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: #5A7494;
  -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: #5A7494;
}
@media screen and (min-width: 768px) {
  .under-list-ul a:hover {
    color: #5A7494;
    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: 9rem auto;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 6.5rem;
}
.setting-title h3::first-letter {
  color: #5A7494;
}
@media screen and (max-width: 767px) {
  .setting-title h3 {
    background-size: 6rem auto;
    font-size: 2.4rem;
    padding-top: 4.5rem;
    margin-bottom: 2.5rem;
  }
}

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

.setting-title h4 {
  letter-spacing: 0.5rem;
  line-height: 1.45;
  font-weight: 500;
  font-size: 2.4rem;
  margin-bottom: 3rem;
  margin-top: 5rem;
  background-color: #cee4ff;
  padding: 1rem 1.5rem;
  border-bottom: max(0.3rem, 1px) dashed #344d6d;
  color: #344d6d;
  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: #5A7494;
  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: #5A7494;
}
@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: #5A7494;
  padding-top: 0;
}
.setting-title h5:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.5rem;
  content: "";
  background-image: linear-gradient(to right, #E95513 0%, #0DAC67 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: #5A7494;
}
@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 #a0b78e;
}

.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-color: #EBEFF2;
  border-radius: 1rem;
}

.m_kakomi02_box-stiker {
  font-size: 1.7rem;
  padding: 0.3em 0.5em 0.3em;
  margin-bottom: 1.9rem;
  background-color: #5A7494;
  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 #cec9c6;
}

.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: #3B2C33;
  left: 50%;
  transform: translateX(-50%);
  top: -4rem;
}

.tlt-style-line {
  font-size: 2.2rem;
  padding-bottom: 1.3rem;
  border-bottom: 2px solid #3B2C33;
  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: #5A7494;
  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: 30rem;
    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 #5A7494;
    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 2.25rem;
    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 #5A7494;
  }
  .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 #5A7494 !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: #5A7494;
  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: #5A7494;
  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);
  }
}

.qa_box-gr .qa_box_item .q_box-tlt {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.7;
  color: #5A7494;
  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 .q_box-tlt {
    font-size: 1.8rem;
  }
}
.qa_box-gr .qa_box_item .q_box-tlt:before {
  content: "Q.";
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.7;
  color: #5A7494;
  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;
}
.qa_box-gr .qa_box_item + .qa_box_item {
  border-top: max(1px, 0.1rem) solid #5A7494;
  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-post {
  display: grid;
  grid-template-columns: 1fr 25rem;
  -moz-column-gap: 5rem;
       column-gap: 5rem;
}
@media screen and (max-width: 767px) {
  .archive-post {
    display: block;
  }
}

.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: #5A7494;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}

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

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

.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: #5A7494 !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;
}

.menu-colum-global {
  background-color: #729072;
  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.8em;
}
.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% - 1em);
  left: 0;
  right: 0;
}
.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 #5A7494 !important;
  border-radius: 10rem;
  transition: all 0.3s ease-in-out;
  color: #fff;
  background-color: #5A7494;
}
.link-arline-page:hover {
  background-color: #fff;
  color: #5A7494;
}
@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%;
}
@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: #5A7494;
  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: #5A7494;
  border-bottom: max(1px, 0.1rem) solid #5A7494;
  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: #5A7494;
  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: #5A7494;
}
.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 #5A7494;
  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);
  }
}

.table-calender-style {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .table-calender-style {
    font-size: 1.4rem;
  }
}
.table-calender-style tr td:first-child {
  width: 35rem;
  text-align: left;
  background-color: #5A7494;
  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: 11rem;
    padding-left: 1rem;
  }
}
.table-calender-style tr td {
  width: calc((100% - 35rem) / 7);
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 999px) {
  .table-calender-style tr td {
    width: calc((100% - 30rem) / 7);
  }
}
@media screen and (max-width: 767px) {
  .table-calender-style tr td {
    width: calc((100% - 11rem) / 7);
  }
}
.table-calender-style tr:first-child td {
  background-color: #5A7494;
  color: #fff;
}
.table-calender-style tr:first-child td:last-child {
  border-right: max(1px, 0.1rem) solid #5A7494;
}
.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 #5A7494;
  border-bottom: max(1px, 0.1rem) solid #5A7494;
}
.table-calender-style tr:not(:first-child) td:not(:first-child):last-child {
  border-right: max(1px, 0.1rem) solid #5A7494;
}

#toc_container {
  border: 0 !important;
  position: relative;
  color: #344d6d;
  width: 66rem !important;
  margin-bottom: 0 !important;
  padding: 2rem 1.5rem !important;
  background-color: #CEE4FF !important;
}
@media screen and (max-width: 767px) {
  #toc_container {
    width: 100% !important;
  }
}
#toc_container .toc_title {
  text-align: left !important;
  background-color: #fff;
  color: #5A7494;
  padding: 0.5rem 1.5rem !important;
  margin-bottom: 1.5rem !important;
  width: 100% !important;
}
#toc_container .toc_list {
  font-size: 1.6rem;
  font-weight: 500;
  text-underline-offset: 0.5rem;
}

.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-img img {
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}

.list-paradai-item-content {
  background-color: #5A7494;
  padding-left: 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;
}
@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;
}

.scrool-link-parent {
  position: relative;
}
.scrool-link-parent .scrool-link-child {
  position: absolute;
  top: -12rem;
  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: -10rem;
  }
}

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

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

.ud_point-item-number-txt {
  font-size: 8rem;
  color: #5A7494;
  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 {
  background-color: #F5F1E8;
  padding: 3rem 4rem;
  padding-top: 1rem;
  border-bottom: max(0.4rem, 2px) solid #6A8853;
}
@media screen and (max-width: 767px) {
  .ud_point-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.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: #5A7494;
  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: #EBEFF2;
  width: calc(100% - 1.5rem);
  padding: 3rem 2.5rem;
  padding-top: 0.2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .ud_step-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width: calc(100% - 0.6rem);
  }
}
.ud_step-item:before {
  content: "";
  position: absolute;
  top: 2rem;
  left: 2rem;
  right: -1.5rem;
  bottom: -2rem;
  background-color: #5A7494;
  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: #5A7494;
  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: #5A7494;
  border: max(1px, 0.1rem) solid #5A7494;
  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: #5A7494;
}

.informetab {
  display: none;
}

#tab1 {
  display: block;
}

.logo-img img {
  width: 24.9em;
}
@media screen and (max-width: 767px) {
  .logo-img img {
    width: 20.9em;
  }
}

.header-right-address1 span {
  font-size: 1.8em;
}

.header-right-address2 {
  color: #fff;
  display: inline-block;
  padding-left: 2.4em;
  padding-right: 2.4em;
  padding-top: 0.5em;
  padding-bottom: 0.7em;
  line-height: 1;
  background-color: #885068;
  margin-top: 0.4em;
}
.header-right-address2 span {
  font-size: 1.8em;
}

.header-right-address {
  border-left: max(1px, 0.1em) solid #333333;
  padding-left: 4em;
  padding-bottom: 2em;
  padding-top: 0.5em;
}

.header-right-link1 {
  width: 33em;
  height: 12em;
  background-color: #5A7494;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 0.5em;
  position: relative;
}
.header-right-link1 .header-right-link1a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}
.header-right-link1 .header-right-link1a:hover {
  background-color: rgba(255, 255, 255, 0.3);
}

.header-right-link1-txt span {
  font-size: 1.8em;
}

.header-right-link2-txt {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 2.8em;
       column-gap: 2.8em;
}
.header-right-link2-txt:before {
  content: "";
  display: inline-block;
  width: 3.6em;
  height: 3.6em;
  background-image: url(../img/common/icon1.svg);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.header-right-link2-txt span {
  font-size: 2.7em;
}

.header-right-link2 {
  color: #fff;
  background-color: #6A8853;
  width: 17em;
  height: 12em;
  letter-spacing: 0.2em;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  row-gap: 1.2em;
  position: relative;
}
.header-right-link2 .header-right-link2a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}
.header-right-link2 .header-right-link2a:hover {
  background-color: rgba(255, 255, 255, 0.3);
}

.header-right-link3-txt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.4em;
       column-gap: 1.4em;
}
.header-right-link3-txt:before {
  content: "";
  display: inline-block;
  width: 2em;
  height: 2em;
  background-size: contain;
  background-position: center center;
  background-image: url(../img/common/icon2.svg);
  background-repeat: no-repeat;
}
.header-right-link3-txt span {
  font-size: 2em;
}

.header-right-link4-txt span {
  font-size: 2.4em;
}

.header-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 6.3em;
       column-gap: 6.3em;
  z-index: 2;
  position: relative;
}
@media screen and (max-width: 999px) {
  .header-right {
    display: none;
  }
}

.header-right-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 999px) {
  .header {
    align-items: center;
  }
}

.header-logo {
  padding-left: 2em;
  padding-top: 1.2em;
  z-index: 2;
  position: relative;
}
@media screen and (max-width: 1600px) {
  .header-logo {
    padding-left: 0.5em;
    padding-top: 0.5em;
  }
}
@media screen and (max-width: 999px) {
  .header-logo {
    padding-top: 0;
  }
}

.header, .header-link {
  font-size: 10px;
}
@media screen and (max-width: 1400px) {
  .header, .header-link {
    font-size: 0.71vw;
  }
}
@media screen and (max-width: 999px) {
  .header, .header-link {
    font-size: 1rem;
  }
}

.header-link-pasic {
  position: relative;
  line-height: 1;
  margin-top: 3em;
}

.header-link-pasic-ul {
  display: flex;
  flex-wrap: wrap;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
}
.header-link-pasic-ul > li > a {
  display: flex;
  flex-direction: column;
  padding-left: 2.2em;
  padding-right: 2.2em;
  align-items: center;
  row-gap: 0.8em;
  padding-bottom: 1.7em;
  position: relative;
}
@media screen and (max-width: 1600px) {
  .header-link-pasic-ul > li > a {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}
.header-link-pasic-ul > li > a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: max(1px, 0.2em);
  background-color: #729072;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
.header-link-pasic-ul > li > a:hover .japan, .header-link-pasic-ul > li > a.is-active .japan {
  color: #729072;
  font-weight: 500;
}
.header-link-pasic-ul > li > a:hover:before, .header-link-pasic-ul > li > a.is-active:before {
  opacity: 1;
}
.header-link-pasic-ul > li > a .japan {
  font-size: 1.8em;
  transition: all 0.3s ease-in-out;
}
.header-link-pasic-ul > li > a .eng {
  font-size: 1.6em;
}

header {
  z-index: 100;
  transition: all 0.3s ease;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
@media screen and (max-width: 999px) {
  header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
  }
  header.is-active2 {
    background-color: #fff;
  }
}

header.is-active {
  background-color: #fff;
}
header.is-active .header-right-address {
  display: none;
}
header.is-active .header-right-link1, header.is-active .header-right-link2 {
  height: 10em;
}
@media screen and (max-width: 1600px) {
  header.is-active .header-right-link1, header.is-active .header-right-link2 {
    height: 8em;
  }
}
header.is-active .header-right-link1 {
  width: 28em;
}
@media screen and (max-width: 1600px) {
  header.is-active .header-right-link1 {
    width: 23em;
  }
}
@media screen and (max-width: 1600px) {
  header.is-active .header-right-link2 {
    width: 14em;
    row-gap: 0.7em;
  }
  header.is-active .header-right-link4-txt span {
    font-size: 2em;
  }
  header.is-active .header-right-link2-txt {
    -moz-column-gap: 1.7em;
         column-gap: 1.7em;
  }
  header.is-active .header-right-link2-txt span {
    font-size: 2.2em;
  }
}

.header-link.is-active {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.header-link.is-active .header-link-pasic {
  padding-left: 15%;
  padding-right: 25%;
}
@media screen and (max-width: 1600px) {
  .header-link.is-active .header-link-pasic {
    margin-top: 1.5rem;
    padding-left: 16%;
  }
}
.header-link.is-active .header-link-pasic-ul {
  margin-right: auto;
}

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

.header-hamberger {
  display: none;
  width: 11rem;
  height: 11rem;
  background-color: #5A7494;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding-top: 2rem;
}
@media screen and (max-width: 767px) {
  .header-hamberger {
    width: 8rem;
    height: 8rem;
    padding-top: 1rem;
  }
}
.header-hamberger .header-hamberger-open {
  width: 6rem;
  height: 5rem;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open {
    width: 5rem;
    height: 4.6rem;
  }
}
.header-hamberger .header-hamberger-open:before {
  content: "";
  position: absolute;
  top: 0.6rem;
  left: 0;
  right: 0;
  bottom: 0.6rem;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open:before {
    top: 1rem;
    bottom: 1rem;
    border-top: 0.2rem solid #fff;
    border-bottom: 0.2rem solid #fff;
  }
}
.header-hamberger .header-hamberger-open:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open:after {
    height: 0.2rem;
    top: 0.5rem;
    right: 0.9rem;
  }
}
.header-hamberger .header-hamberger-open .header-hamberger-close {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open .header-hamberger-close {
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    width: 4.8rem;
    height: 4.8rem;
    transform: translate(-50%, -50%);
  }
}
.header-hamberger .header-hamberger-open .header-hamberger-close:before {
  content: "";
  background-color: #fff;
  width: 100%;
  height: 2px;
  position: absolute;
  top: 0.5rem;
  left: 1rem;
  transform-origin: top left;
  transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open .header-hamberger-close:before {
    height: 0.2rem;
    top: 0.6rem;
    left: 0.8rem;
  }
}
.header-hamberger .header-hamberger-open .header-hamberger-close:after {
  content: "";
  background-color: #fff;
  width: 100%;
  height: 2px;
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  transform-origin: top right;
  transform: rotate(-45deg);
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-open .header-hamberger-close:after {
    height: 0.2rem;
    top: 0.6rem;
    right: 0.8rem;
  }
}
.header-hamberger.is-active .header-hamberger-close {
  opacity: 1;
}
.header-hamberger.is-active .header-hamberger-open:before {
  opacity: 0;
}
.header-hamberger.is-active .header-hamberger-open:after {
  opacity: 0;
}
@media screen and (max-width: 999px) {
  .header-hamberger {
    display: flex;
  }
}
.header-hamberger .header-hamberger-sub-txt {
  font-size: 2rem;
  color: #fff;
  line-height: 1;
  padding-top: 1rem;
}
@media screen and (max-width: 767px) {
  .header-hamberger .header-hamberger-sub-txt {
    font-size: 1.6rem;
    padding-top: 0;
  }
}

.menu-fixed-mobile {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  background-color: #C9E8E8;
  display: none;
}

.menu-fixed-mobile-fadein {
  background-color: #fff;
  padding: 3rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-fadein {
    padding: 3rem 1.5rem;
    margin-bottom: 3rem;
  }
}

.menu-fixed-mobile-extrend {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding-right: 3rem;
  padding-left: 3rem;
  margin-top: 13rem;
  overflow: auto;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-extrend {
    margin-top: 10rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.menu-fixed-mobile-tlt {
  font-size: 2.6rem;
  font-weight: 500;
  text-align: center;
  padding: 1.5rem;
  background-color: #5A7494;
  line-height: 1;
  text-transform: uppercase;
  color: #fff;
  letter-spacing: 0.3rem;
  font-family: "Zen Old Mincho", serif;
}
.menu-fixed-mobile-tlt.lt2 {
  margin-top: 4rem;
}
.menu-fixed-mobile-tlt.purler {
  background-color: #FF9999;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-tlt {
    font-size: 2.2rem;
    padding: 1.3rem;
  }
}

.menu-fixed-mobile-list {
  font-size: 2rem;
  font-weight: 500;
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-list {
    font-size: 1.8rem;
  }
}
.menu-fixed-mobile-list a {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  color: #5A7494;
  border-bottom: max(1px, 0.2rem) dashed #5A7494;
  padding: 1rem 0;
  position: relative;
  transition: all 0.3s ease-in-out;
}
.menu-fixed-mobile-list a:before {
  content: "";
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #5A7494;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  transition: all 0.3s ease-in-out;
}
.menu-fixed-mobile-list a.is-active, .menu-fixed-mobile-list a:hover {
  color: #fff !important;
  background-color: #5A7494;
  background-clip: content-box;
}
.menu-fixed-mobile-list a.is-active:before, .menu-fixed-mobile-list a:hover:before {
  background-color: #fff !important;
  margin-left: 1rem;
}
.menu-fixed-mobile-list.purler a {
  color: #FF9999;
  border-color: #FF9999;
}
.menu-fixed-mobile-list.purler a:before {
  background-color: #FF9999;
}
.menu-fixed-mobile-list.purler a.is-active, .menu-fixed-mobile-list.purler a:hover {
  background-color: #FF9999;
}

.sec1-top-img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec1-top-img {
    height: 30rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: left center;
       object-position: left center;
  }
}

.sec1-top {
  position: relative;
}

.sec1-top-tlt {
  position: absolute;
  top: 29%;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
}
@media screen and (max-width: 1200px) {
  .sec1-top-tlt {
    top: 20%;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-tlt {
    top: 27%;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt {
    top: 33%;
  }
}

.sec1-top-tlt h1, .sec1-top-tlt h2, .sec1-top-tlt h3, .sec1-top-tlt h4, .sec1-top-tlt h5, .sec1-top-tlt h6 {
  font-size: 6.6rem;
  font-weight: 500;
  color: #5A7494;
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  display: flex;
  flex-direction: column-reverse;
  letter-spacing: 1rem;
  align-items: flex-start;
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 20rem);
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
}
@media screen and (max-width: 999px) {
  .sec1-top-tlt h1, .sec1-top-tlt h2, .sec1-top-tlt h3, .sec1-top-tlt h4, .sec1-top-tlt h5, .sec1-top-tlt h6 {
    text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
    font-size: 5rem;
    width: calc(100% - 14rem);
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt h1, .sec1-top-tlt h2, .sec1-top-tlt h3, .sec1-top-tlt h4, .sec1-top-tlt h5, .sec1-top-tlt h6 {
    width: calc(100% - 6rem);
    font-size: 2.6rem;
    letter-spacing: 0.3rem;
  }
}
.sec1-top-tlt h1 .sec1-top-tlt-green, .sec1-top-tlt h2 .sec1-top-tlt-green, .sec1-top-tlt h3 .sec1-top-tlt-green, .sec1-top-tlt h4 .sec1-top-tlt-green, .sec1-top-tlt h5 .sec1-top-tlt-green, .sec1-top-tlt h6 .sec1-top-tlt-green {
  color: #6A8853;
}
.sec1-top-tlt h1 .sec1-top-tlt-mid, .sec1-top-tlt h2 .sec1-top-tlt-mid, .sec1-top-tlt h3 .sec1-top-tlt-mid, .sec1-top-tlt h4 .sec1-top-tlt-mid, .sec1-top-tlt h5 .sec1-top-tlt-mid, .sec1-top-tlt h6 .sec1-top-tlt-mid {
  display: block;
  padding-left: 2.4rem;
  padding-right: 2.4rem;
  border-right: max(1px, 0.1rem) solid #3D3C49;
  margin-right: 2.4rem;
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt h1 .sec1-top-tlt-mid, .sec1-top-tlt h2 .sec1-top-tlt-mid, .sec1-top-tlt h3 .sec1-top-tlt-mid, .sec1-top-tlt h4 .sec1-top-tlt-mid, .sec1-top-tlt h5 .sec1-top-tlt-mid, .sec1-top-tlt h6 .sec1-top-tlt-mid {
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    margin-right: 1.4rem;
  }
}
.sec1-top-tlt h1 .sec1-top-tlt-first, .sec1-top-tlt h2 .sec1-top-tlt-first, .sec1-top-tlt h3 .sec1-top-tlt-first, .sec1-top-tlt h4 .sec1-top-tlt-first, .sec1-top-tlt h5 .sec1-top-tlt-first, .sec1-top-tlt h6 .sec1-top-tlt-first {
  border-right: max(1px, 0.1rem) solid #3D3C49;
  padding-right: 2.4rem;
}
@media screen and (max-width: 767px) {
  .sec1-top-tlt h1 .sec1-top-tlt-first, .sec1-top-tlt h2 .sec1-top-tlt-first, .sec1-top-tlt h3 .sec1-top-tlt-first, .sec1-top-tlt h4 .sec1-top-tlt-first, .sec1-top-tlt h5 .sec1-top-tlt-first, .sec1-top-tlt h6 .sec1-top-tlt-first {
    padding-right: 1.4rem;
  }
}

.sec2-top {
  background-color: #F5F7F8;
  padding-top: 9.3rem;
  padding-bottom: 9.3rem;
}
@media screen and (max-width: 767px) {
  .sec2-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .sec2-top .sec3-top-item + .sec3-top-item {
    margin-top: 4rem;
  }
}

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

.sec3-top-item {
  background-color: #fff;
  box-shadow: 0.3rem 0.3rem 1.6rem rgba(0, 0, 0, 0.3);
  padding-top: 4.3rem;
  padding-bottom: 5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec3-top-item {
    padding: 3rem 1.5rem;
  }
}
.sec3-top-item h1, .sec3-top-item h2, .sec3-top-item h3, .sec3-top-item h4, .sec3-top-item h5, .sec3-top-item h6 {
  font-size: 4rem;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.4rem;
  color: #506A87;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 767px) {
  .sec3-top-item h1, .sec3-top-item h2, .sec3-top-item h3, .sec3-top-item h4, .sec3-top-item h5, .sec3-top-item h6 {
    font-size: 3rem;
  }
}
.sec3-top-item .sec3-top-list-new {
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3.6rem;
}
@media screen and (min-width: 1000px) {
  .sec3-top-item .sec3-top-list-new {
    max-height: 38rem;
    overflow: auto;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1200px) {
  .sec3-top-item .sec3-top-list-new {
    max-height: 35rem;
  }
}

.sec3-top-list-new .sec3-top-list-new-date {
  font-size: 1.6rem;
  color: #222222;
  display: inline-block;
  background-color: #EBEFF2;
  width: 14rem;
  text-align: center;
  line-height: 1.7;
}
.sec3-top-list-new .sec3-top-list-new-link {
  font-size: 1.8rem;
  line-height: 1.8;
  color: #0E1C29;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .sec3-top-list-new .sec3-top-list-new-link {
    font-size: 1.6rem;
  }
}
.sec3-top-list-new li {
  border-bottom: max(1px, 0.1rem) dashed #DFDDDF;
  padding-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-list-new li {
    padding-bottom: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-list-new li {
    padding-bottom: 1rem;
  }
}
.sec3-top-list-new li + li {
  padding-top: 2.5rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-list-new li + li {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-list-new li + li {
    padding-top: 1rem;
  }
}

.setting-calender-marval {
  font-size: 10px;
  max-width: 53em;
  margin-left: auto;
  margin-right: auto;
  background-color: #EBEFF2;
  width: 100%;
  padding-left: 3em;
  padding-right: 3em;
  padding-top: 2.5em;
  padding-bottom: 2.8em;
  margin-top: 2.3rem;
}
@media screen and (max-width: 999px) {
  .setting-calender-marval {
    max-width: 100%;
    padding-left: 2em;
    padding-right: 2em;
  }
}

.setting-calender-marval-table {
  width: 100%;
  line-height: 1;
}
.setting-calender-marval-table tr:first-child {
  color: #222222;
}
.setting-calender-marval-table tr:first-child p {
  font-size: 1.8em;
}
.setting-calender-marval-table tr:first-child td {
  border-bottom: max(1px, 0.1rem) solid #222222;
  padding-bottom: 2em;
  padding-top: 0;
}
.setting-calender-marval-table tr td:first-child {
  width: 14em;
}
.setting-calender-marval-table tr td:first-child p {
  font-size: 1.8em;
}
.setting-calender-marval-table tr td {
  width: calc((100% - 14em) / 8);
  text-align: center;
  padding-top: 1.7em;
  vertical-align: middle;
}
.setting-calender-marval-table .td-crilcer {
  font-size: 1.4em;
  color: #5A7494;
}
.setting-calender-marval-table .td-crilcer-line {
  font-size: 1.4em;
  color: #222222;
}
.setting-calender-marval-table .td-crilcer-sao img {
  width: 1.6em;
}

.sec3-top-item-txt1 {
  font-size: 1.8rem;
  line-height: 1.7;
  color: #222222;
  text-align: center;
  margin-top: 1.2rem;
  margin-bottom: 1.7rem;
}
@media screen and (max-width: 767px) {
  .sec3-top-item-txt1 {
    font-size: 1.6rem;
  }
}

.sec3-top-item-txt2 {
  font-size: 1.8rem;
  line-height: 1.7;
  color: #222222;
  text-align: center;
  margin-top: 1rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .sec3-top-item-txt2 {
    font-size: 1.6rem;
  }
}

.sec3-top-item-gr-tell {
  max-width: 59rem;
  margin-left: auto;
  margin-right: auto;
  font-size: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 1.2em;
       column-gap: 1.2em;
}
@media screen and (max-width: 999px) {
  .sec3-top-item-gr-tell {
    display: block;
  }
}
.sec3-top-item-gr-tell .sec3-top-item-gr-tell-item {
  color: #fff;
  text-align: center;
}
.sec3-top-item-gr-tell .sec3-top-item-gr-tell-item:first-child {
  background-color: #6A8853;
  padding-top: 1.7em;
  padding-bottom: 1.3em;
}
.sec3-top-item-gr-tell .sec3-top-item-gr-tell-item:last-child {
  background-color: #885068;
  padding-top: 1.3em;
  background-image: url(../img/common/vector5.svg);
  background-size: 1.2em auto;
  background-position: bottom 0.5em right 0.5em;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec3-top-item-gr-tell .sec3-top-item-gr-tell-item:last-child {
    padding-bottom: 1.3em;
    margin-top: 2em;
  }
}
.sec3-top-item-gr-tell .sec3-top-item-gr-tell-item:last-child .sec3-top-item-gr-pro-item {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.sec3-top-item-gr-tell .sec3-top-item-gr-tell-item:last-child:hover {
  opacity: 0.7;
}

.sec3-top-item-gr-tell-item-tlt {
  border-bottom: max(1px, 0.2em) solid #fff;
  letter-spacing: 0.2em;
  max-width: 26em;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 0.6em;
}
.sec3-top-item-gr-tell-item-tlt span {
  font-size: 1.8em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec3-top-item-gr-tell-item-tlt span {
    font-size: 1.8em;
  }
}

.sec3-top-item-gr-tell-item-tlt2 {
  color: #885068;
  background-color: #fff;
  max-width: 22em;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.2em;
  padding-top: 0.7em;
  padding-bottom: 0.7em;
}
.sec3-top-item-gr-tell-item-tlt2 span {
  font-size: 1.8em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec3-top-item-gr-tell-item-tlt2 span {
    font-size: 1.8em;
  }
}

.sec3-top-item-gr-tell-item-tlt3 {
  letter-spacing: 0.2em;
  padding-top: 1.5em;
}
.sec3-top-item-gr-tell-item-tlt3 span {
  font-size: 2.2em;
  line-height: 1;
}

.sec3-top-item-gr-tell-href {
  padding-top: 1.2em;
}
.sec3-top-item-gr-tell-href a {
  line-height: 1;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.3em;
       column-gap: 1.3em;
  letter-spacing: 0.2em;
}
.sec3-top-item-gr-tell-href a:before {
  content: "";
  display: block;
  width: 2.8em;
  height: 2.8em;
  background-image: url(../img/common/vector4.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
}
.sec3-top-item-gr-tell-href a span {
  font-size: 2.8em;
}

@media screen and (max-width: 1300px) {
  .setting-calender-marval, .sec3-top-item-gr-tell {
    font-size: 0.77vw;
  }
}
@media screen and (max-width: 999px) {
  .setting-calender-marval, .sec3-top-item-gr-tell {
    font-size: 1.04vw;
  }
}
@media screen and (max-width: 767px) {
  .setting-calender-marval, .sec3-top-item-gr-tell {
    font-size: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .setting-calender-marval {
    font-size: 2.13vw;
  }
}

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

.sec-top-tlt-label {
  text-align: center;
  color: #896E52;
}
.sec-top-tlt-label h1, .sec-top-tlt-label h2, .sec-top-tlt-label h3, .sec-top-tlt-label h4, .sec-top-tlt-label h5, .sec-top-tlt-label h6 {
  font-size: 8.8rem;
  line-height: 1;
  letter-spacing: 0.4rem;
  text-transform: uppercase;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 767px) {
  .sec-top-tlt-label h1, .sec-top-tlt-label h2, .sec-top-tlt-label h3, .sec-top-tlt-label h4, .sec-top-tlt-label h5, .sec-top-tlt-label h6 {
    font-size: 2.8rem;
  }
}
.sec-top-tlt-label .sec-top-tlt-label-sub {
  font-size: 1.8rem;
  background-image: url(../img/common/image02.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  width: 60.2rem;
  height: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  margin-top: 3.1rem;
}
@media screen and (max-width: 767px) {
  .sec-top-tlt-label .sec-top-tlt-label-sub {
    background-image: url(../img/top/image08.png);
    width: calc(100% - 8rem);
    margin-top: 2rem;
    position: relative;
    background-size: contain;
    height: 5rem;
    font-size: 1.8rem;
  }
  .sec-top-tlt-label .sec-top-tlt-label-sub:before {
    content: "";
    position: absolute;
    width: 4.5rem;
    height: 0.1rem;
    background-color: #B8B8B8;
    top: 50%;
    left: -2.7rem;
    opacity: 0.8;
  }
  .sec-top-tlt-label .sec-top-tlt-label-sub:after {
    content: "";
    position: absolute;
    width: 4.5rem;
    height: 0.1rem;
    background-color: #B8B8B8;
    top: 50%;
    right: -2.7rem;
    opacity: 0.8;
  }
}

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-slider .scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
  }
  .sec4-top-slider .scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0;
  }
  .sec4-top-slider .scroll-infinity__list--left {
    animation: infinity-scroll-left 30s infinite linear 0.5s both;
  }
  .sec4-top-slider .scroll-infinity__item {
    width: 50vw;
  }
  .sec4-top-slider .scroll-infinity__item > img {
    width: 100%;
  }
}
.sec4-top-slider {
  padding-top: 7rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-slider {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .sec4-top-slider .scroll-infinity__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    max-width: 180rem;
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - 3rem);
  }
}

.sec4-top-box-content {
  max-width: 100rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  box-shadow: 0 0 2rem -0.4rem rgba(0, 0, 0, 0.3);
  margin-top: -7.7rem;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 8.5rem;
}
@media screen and (max-width: 1600px) {
  .sec4-top-box-content {
    margin-top: -4.01vw;
  }
}
@media screen and (max-width: 999px) {
  .sec4-top-box-content {
    margin-top: 4rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec4-top-box-content-tlt {
  font-size: 2.9rem;
  color: #896E52;
  text-align: center;
  letter-spacing: 0.3rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-box-content-tlt {
    font-size: 2.4rem;
  }
}

.sec4-top-box-content-txt {
  font-size: 1.8rem;
  text-align: center;
  max-width: 47.6rem;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.2rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-box-content-txt {
    font-size: 1.6rem;
    margin-top: 1.5rem;
    letter-spacing: 0.1rem;
  }
}

.amouse-link-driver {
  width: 36rem;
  height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  line-height: 1.5;
  padding-left: 5rem;
  padding-right: 5rem;
  color: #fff;
  background-color: #5A7494;
  letter-spacing: 0.3rem;
  background-image: url(../img/common/image03.svg);
  background-size: max(3.5rem, 25px) auto;
  background-position: right 2rem center;
  background-repeat: no-repeat;
  transition: all 0.3s ease-in-out;
}
.amouse-link-driver.driverred {
  background-color: #885068;
}
.amouse-link-driver:hover {
  background-position: right 1rem center;
}
@media screen and (max-width: 767px) {
  .amouse-link-driver {
    width: 100%;
    letter-spacing: 0.2rem;
  }
}

.sec4-top-box-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 2.8rem;
       column-gap: 2.8rem;
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-box-link {
    display: block;
    padding-top: 3rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .sec4-top-box-link .no-hiden + .no-hiden {
    margin-top: 2rem;
  }
}

.sec5-top {
  background-image: url(../img/top/image09.jpg);
  background-size: cover;
  background-position: top center;
  padding-top: 10rem;
  padding-bottom: 21.8rem;
}
@media screen and (max-width: 999px) {
  .sec5-top {
    padding-top: 5rem;
    padding-bottom: 27.8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top {
    padding-top: 7rem;
    padding-bottom: 12.8rem;
  }
}

.sec5-top-box {
  background-color: #fff;
  border: max(1px, 0.1rem) solid #5A7494;
  margin-top: 9rem;
}

.sec5-top-button {
  position: relative;
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .sec5-top-button {
    padding-top: 2.8rem;
  }
}
.sec5-top-button .sec5-top-button2colum {
  position: absolute;
  bottom: 0;
  width: 86rem;
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
}
@media screen and (max-width: 767px) {
  .sec5-top-button .sec5-top-button2colum {
    width: calc(100% - 4rem);
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}

.sec5-top-button2colum-item {
  font-size: 2.5rem;
  color: #5A7494;
  width: 100%;
  height: 9rem;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.3rem;
  flex-direction: column;
  row-gap: 0.4rem;
  background-color: #fff;
  border: max(1px, 0.1rem) solid #5A7494;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
.sec5-top-button2colum-item:after {
  content: "";
  display: inline-block;
  width: 1.3rem;
  height: 0.6rem;
  background-color: #5A7494;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.sec5-top-button2colum-item.is-active, .sec5-top-button2colum-item:hover {
  background-color: #5A7494;
  color: #fff;
}
.sec5-top-button2colum-item.is-active:after, .sec5-top-button2colum-item:hover:after {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .sec5-top-button2colum-item {
    font-size: 1.8rem;
    height: 6rem;
    row-gap: 0;
  }
}

.sec5-top-gr-link {
  max-width: 112rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 6rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .sec5-top-gr-link {
    padding-top: 3rem;
  }
}

.sec5-top-gr-link-icon {
  text-align: center;
}
.sec5-top-gr-link-icon img {
  width: 11.3rem;
}

.sec5-top-gr-link-ul2 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}
.sec5-top-gr-link-ul2 li {
  background-color: #EBEFF2;
  position: relative;
  width: calc((100% - 5.4rem) / 4);
  padding: 3rem 1.5rem;
  box-shadow: 0.3rem 0.3rem 1.6rem rgba(90, 116, 148, 0.3);
  background-image: url(../img/common/image05.svg);
  background-size: 1.8rem auto;
  background-repeat: no-repeat;
  background-position: bottom right;
}
@media screen and (max-width: 999px) {
  .sec5-top-gr-link-ul2 li {
    width: calc((100% - 3.6rem) / 3);
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-gr-link-ul2 li {
    width: 100%;
  }
}
.sec5-top-gr-link-ul2 li .sec5-top-gr-link-ul2-tlt {
  font-size: 1.8rem;
  line-height: 1.5;
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: flex-start;
  -moz-column-gap: 0.7rem;
       column-gap: 0.7rem;
}
.sec5-top-gr-link-ul2 li .sec5-top-gr-link-ul2-tlt:before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url(../img/top/image25.png);
  background-size: contain;
  background-position: center center;
  margin-top: 0.5rem;
}
.sec5-top-gr-link-ul2 li .sec5-top-gr-link-href {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}
.sec5-top-gr-link-ul2 li .sec5-top-gr-link-href:hover {
  background-color: rgba(255, 255, 255, 0.3);
}

.sec5-top-gr-link-ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}
.sec5-top-gr-link-ul li {
  background-color: #EBEFF2;
  padding-top: 2rem;
  padding-bottom: 1.8rem;
  position: relative;
  background-image: url(../img/common/image05.svg);
  background-size: 1.8rem auto;
  background-repeat: no-repeat;
  background-position: bottom right;
  width: calc((100% - 5.4rem) / 4);
}
@media screen and (max-width: 999px) {
  .sec5-top-gr-link-ul li {
    width: calc((100% - 3.6rem) / 3);
    padding-bottom: 0;
    background-image: none;
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-gr-link-ul li {
    width: 100%;
    display: block;
  }
}
.sec5-top-gr-link-ul li .sec5-top-gr-link-tlt {
  font-size: 1.9rem;
  letter-spacing: 0.2rem;
  text-align: center;
  line-height: 1.5;
}
.sec5-top-gr-link-ul li .sec5-top-gr-link-href {
  display: block;
  min-height: 100%;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.7;
  text-align: center;
  letter-spacing: 0.05rem;
}
.sec5-top-gr-link-ul li .sec5-top-gr-link-href span {
  display: block;
  padding: 1rem 0.5rem;
}
@media screen and (max-width: 999px) {
  .sec5-top-gr-link-ul li .sec5-top-gr-link-href span {
    padding: 1.5rem;
  }
}
@media screen and (min-width: 1000px) {
  .sec5-top-gr-link-ul li:hover .sec5-top-gr-link-link {
    opacity: 1;
    visibility: visible;
  }
  .sec5-top-gr-link-ul li .sec5-top-gr-link-href {
    line-height: 1.5;
  }
}

.sec5-top-gr-link-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
  scrollbar-width: none;
  background-color: rgba(90, 116, 148, 0.8);
  background-image: url(../img/common/image04.svg);
  background-size: 1.8rem auto;
  background-repeat: no-repeat;
  background-position: bottom right;
}
.sec5-top-gr-link-link::-webkit-scrollbar {
  display: none;
}
@media screen and (min-width: 1000px) {
  .sec5-top-gr-link-link {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-gr-link-link {
    position: static;
    height: 100%;
    margin-top: 1rem;
    background-image: none;
    background-color: #5A7494;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-gr-link-link {
    height: auto;
  }
}

@media screen and (min-width: 1000px) {
  .sec5-top-gr-link-link--flex .sec5-top-gr-link-href {
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
}
.sec6-top {
  background-image: url(../img/top/image24.png);
  background-size: cover;
  background-position: top left;
  margin-top: -14rem;
  padding-top: 14.5rem;
  padding-bottom: 9.5rem;
}
@media screen and (min-width: 768px) {
  .sec6-top .sec-top-tlt-label .sec-top-tlt-label-sub {
    background-image: url(../img/common/vettor19.svg);
  }
}
@media screen and (max-width: 767px) {
  .sec6-top .sec-top-tlt-label .sec-top-tlt-label-sub {
    background-image: url(../img/top/image30.png);
  }
  .sec6-top .sec-top-tlt-label .sec-top-tlt-label-sub:before, .sec6-top .sec-top-tlt-label .sec-top-tlt-label-sub:after {
    background-color: #fff;
  }
}
.sec6-top .sec-top-tlt-label {
  color: #fff;
}
@media screen and (max-width: 999px) {
  .sec6-top {
    margin-top: -20rem;
    padding-top: 7.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top {
    margin-top: -9rem;
    background-position: top left 10%;
    padding-top: 5rem;
    padding-bottom: 5.5rem;
  }
}

.sec5-top-gr-link-tab2 {
  display: none;
}

.sec6-top-content {
  max-width: 128rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4.2%;
       column-gap: 4.2%;
  row-gap: 5.5rem;
  padding-top: 5rem;
}
@media screen and (max-width: 999px) {
  .sec6-top-content {
    -moz-column-gap: 2.4%;
         column-gap: 2.4%;
    row-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-content {
    display: block;
    padding-top: 4rem;
  }
  .sec6-top-content .sec6-top-content-item + .sec6-top-content-item {
    margin-top: 3rem;
  }
}

.sec6-top-content-item {
  width: 100%;
  padding: 1.7rem;
  border: max(1px, 0.1rem) solid #fff;
  border-radius: 4rem;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item {
    padding: 1rem;
    border-radius: 2rem;
    display: block;
  }
}
.sec6-top-content-item .sec6-top-content-item-img img {
  border-top-left-radius: 2rem;
  border-top-right-radius: 2rem;
}
.sec6-top-content-item .sec6-top-content-item-content {
  background-color: #91AA7B;
  padding-left: 5.5rem;
  padding-right: 5.5rem;
  border-bottom-left-radius: 2rem;
  border-bottom-right-radius: 2rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding-bottom: 4.4rem;
}
@media screen and (max-width: 1200px) {
  .sec6-top-content-item .sec6-top-content-item-content {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item .sec6-top-content-item-content {
    display: block;
    height: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 2rem;
  }
}
.sec6-top-content-item .sec6-top-content-item-number {
  position: relative;
  padding-bottom: 6rem;
}
@media screen and (max-width: 999px) {
  .sec6-top-content-item .sec6-top-content-item-number {
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item .sec6-top-content-item-number {
    padding-bottom: 2rem;
  }
}
.sec6-top-content-item .sec6-top-content-item-numbernu {
  line-height: 1;
  font-size: 12rem;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 999px) {
  .sec6-top-content-item .sec6-top-content-item-numbernu {
    font-size: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item .sec6-top-content-item-numbernu {
    font-size: 6rem;
  }
}
.sec6-top-content-item .sec6-top-content-item-tlt {
  font-size: 2.4rem;
  color: #fff;
  line-height: 1.7;
  margin-top: 0.7rem;
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item .sec6-top-content-item-tlt {
    font-size: 1.9rem;
  }
}
.sec6-top-content-item .sec6-top-content-item-txt {
  font-size: 1.8rem;
  color: #fff;
  line-height: 2;
  margin-top: 0.7rem;
}
@media screen and (max-width: 767px) {
  .sec6-top-content-item .sec6-top-content-item-txt {
    font-size: 1.6rem;
  }
}
.sec6-top-content-item .sec6-top-content-item-link {
  margin-top: auto;
  padding-top: 2rem;
}
.sec6-top-content-item .sec6-top-content-item-link a {
  font-size: 1.8rem;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  align-items: center;
  -moz-column-gap: 1.4rem;
       column-gap: 1.4rem;
}
.sec6-top-content-item .sec6-top-content-item-link a:hover .sec6-top-content-item-link-icon {
  background-color: #619827;
}
.sec6-top-content-item .sec6-top-content-item-link a:hover .sec6-top-content-item-link-icon:before {
  animation: slide_right 0.5s cubic-bezier(0.5, 1, 0.89, 1);
  background-image: url(../img/common/vettor18.svg);
}
.sec6-top-content-item .sec6-top-content-item-link .sec6-top-content-item-link-txt {
  text-decoration: underline;
  text-underline-offset: 1rem;
}
.sec6-top-content-item .sec6-top-content-item-link .sec6-top-content-item-link-icon {
  display: block;
  width: 3rem;
  height: 3rem;
  border-radius: 1000rem;
  background-color: #fff;
  transform: translateY(0.7rem);
  position: relative;
  transition: all 0.3s ease-in-out;
}
.sec6-top-content-item .sec6-top-content-item-link .sec6-top-content-item-link-icon:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url(../img/common/vettor17.svg);
  background-size: 0.8rem auto;
  background-position: center center;
  background-repeat: no-repeat;
}

@keyframes slide_right {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  50% {
    transform: translateX(1.5rem);
    opacity: 0;
  }
  51% {
    transform: translateX(-1.5rem);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-top {
  to {
    opacity: 1;
    transform: none;
  }
}
.fade-top {
  opacity: 0;
  transform: translate(0, 35px);
  animation: fade-top 0.5s ease forwards;
  animation-delay: 0.6s;
}

.sec7-top {
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 10rem;
}
@media screen and (max-width: 767px) {
  .sec7-top {
    padding-top: 5rem;
  }
  .sec7-top .sec-top-tlt-label {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
}

.sec7-top-main {
  max-width: 124rem;
  display: grid;
  grid-template-columns: 1fr 36.3%;
  -moz-column-gap: 3.4%;
       column-gap: 3.4%;
  align-items: flex-start;
  padding-top: 6rem;
}
@media screen and (max-width: 767px) {
  .sec7-top-main {
    display: block;
    padding-top: 3.5rem;
  }
}

.sec7-top-main-left-txt {
  font-size: 1.8rem;
  color: #3D3C49;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-left-txt {
    font-size: 1.6rem;
  }
}
.sec7-top-main-left-txt .sec7-top-main-left-txtpp {
  font-weight: 700;
  font-size: 2.2rem;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-left-txt .sec7-top-main-left-txtpp {
    font-size: 1.9rem;
  }
}

.sec7-top-main-ky-img img {
  width: 20rem;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-ky-img img {
    width: 23rem;
    transform: translateX(4rem);
  }
}

.sec7-top-main-ky-txt {
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.3rem;
  color: #6A8853;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-ky-txt {
    font-size: 1.8rem;
  }
}

.sec7-top-main-ky {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-ky {
    justify-content: flex-end;
    overflow: hidden;
  }
}

.link-arrow-map {
  display: flex;
  width: 100%;
  font-size: 1.8rem;
  color: #fff;
  justify-content: center;
  align-items: center;
  height: 6rem;
  background-color: #885068;
  background-image: url(../img/common/vettor20.svg);
  background-size: 3.5rem auto;
  background-repeat: no-repeat;
  background-position: right 2rem center;
  transition: all 0.3s ease-in-out;
}
.link-arrow-map.blue-cl {
  background-color: #5A7494;
}
.link-arrow-map:hover {
  background-position: right 1rem center;
}

.sec7-top-main-link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  padding-top: 5rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-link {
    display: block;
    padding-top: 3rem;
  }
  .sec7-top-main-link .sec7-top-main-link-item + .sec7-top-main-link-item {
    margin-top: 1.5rem;
  }
}

.sec7-top-main-right-img-small {
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-right-img-small {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding-top: 1rem;
  }
}
.sec7-top-main-right-img-small .sec7-top-main-right-img-small-item {
  position: absolute;
  bottom: 0;
  width: 19.2rem;
}
@media screen and (max-width: 767px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item {
    position: static;
    width: 17rem;
  }
}
.sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:first-child {
  padding-bottom: 7rem;
  left: -10.8rem;
}
@media screen and (max-width: 1200px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:first-child {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:first-child {
    padding-bottom: 0;
    bottom: -8rem;
  }
}
.sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:last-child {
  bottom: -3.5rem;
  right: -7rem;
}
@media screen and (max-width: 1400px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:last-child {
    right: -2rem;
  }
}
@media screen and (max-width: 1300px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:last-child {
    right: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-main-right-img-small .sec7-top-main-right-img-small-item:last-child {
    bottom: -4rem;
  }
}

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

.sec8-top {
  padding-top: 12rem;
}
@media screen and (max-width: 767px) {
  .sec8-top {
    padding-top: 5rem;
  }
}
.sec8-top .scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.sec8-top .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
}
.sec8-top .scroll-infinity__list--left {
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
}
.sec8-top .scroll-infinity__item {
  width: 25vw;
}
@media screen and (max-width: 767px) {
  .sec8-top .scroll-infinity__item {
    width: 50vw;
  }
}
.sec8-top .scroll-infinity__item > img {
  width: 100%;
}

.sec9-top {
  max-width: 128rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 7%;
       column-gap: 7%;
  padding-top: 13rem;
  padding-bottom: 11.5rem;
  width: calc(100% - 3rem);
}
@media screen and (max-width: 999px) {
  .sec9-top {
    -moz-column-gap: 4%;
         column-gap: 4%;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top {
    display: block;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.changle-stlt1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 3.4rem;
       column-gap: 3.4rem;
}
.changle-stlt1 h1, .changle-stlt1 h2, .changle-stlt1 h3, .changle-stlt1 h4, .changle-stlt1 h5, .changle-stlt1 h6 {
  color: #896E52;
  line-height: 1;
  font-size: 2.4rem;
  letter-spacing: 0.3rem;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 767px) {
  .changle-stlt1 h1, .changle-stlt1 h2, .changle-stlt1 h3, .changle-stlt1 h4, .changle-stlt1 h5, .changle-stlt1 h6 {
    font-size: 2.2rem;
    letter-spacing: 0.1rem;
  }
}
.changle-stlt1 .changle-stlt1-sub {
  font-size: 1.8rem;
  color: #333333;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .changle-stlt1 {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}

.link-href-more {
  display: flex;
  width: 11rem;
  height: 4rem;
  background-color: #896E52;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1;
  justify-content: center;
  align-items: center;
  padding-bottom: 0.5rem;
  position: relative;
  border: max(1px, 0.1rem) solid #896E52 !important;
  transition: all 0.3s ease-in-out;
}
.link-href-more:before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border: max(1px, 0.1rem) solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 1rem;
  border-left: 0;
  border-bottom: 0;
}
.link-href-more:hover {
  background-color: #fff;
  color: #896E52;
}
.link-href-more:hover:before {
  border-color: #896E52;
}

.sec9-top-item-f-tlt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border-bottom: max(1px, 0.1rem) solid #896E52;
  padding-bottom: 3rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .sec9-top-item-f-tlt {
    padding-bottom: 1.5rem;
    margin-bottom: 3rem;
  }
}

.list-top-columns-date {
  font-size: 1.8rem;
  line-height: 1;
}

.list-top-columns-prp {
  font-size: 1.8rem;
  line-height: 1.9;
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .list-top-columns-prp {
    font-size: 1.6rem;
  }
}

.list-top-columns li + li {
  margin-top: 2rem;
}
.list-top-columns li {
  background-color: #EBF0F3;
  display: grid;
  grid-template-columns: 12rem 1fr;
  align-items: flex-start;
  padding: 2rem;
}
@media screen and (max-width: 999px) {
  .list-top-columns li {
    padding: 2rem 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .list-top-columns li {
    display: block;
    padding-bottom: 3rem;
  }
}

.sec9-top-item-last {
  background-color: #885068;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4rem 2rem;
}
.sec9-top-item-last:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #8D6376;
  width: 65%;
  height: 64%;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}
@media screen and (max-width: 767px) {
  .sec9-top-item-last:before {
    width: 50%;
    height: 50%;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-item-last {
    margin-top: 4rem;
  }
}

.sec9-top-item-last-main {
  position: relative;
  z-index: 2;
  color: #fff;
  width: 40rem;
}
@media screen and (max-width: 999px) {
  .sec9-top-item-last-main {
    width: 100%;
  }
}

.changle-stlt2 {
  text-align: center;
  border-bottom: max(1px, 0.2rem) solid #fff;
  padding-bottom: 1.3rem;
}
.changle-stlt2 h1, .changle-stlt2 h2, .changle-stlt2 h3, .changle-stlt2 h4, .changle-stlt2 h5, .changle-stlt2 h6 {
  font-size: 4.9rem;
  font-weight: 500;
  line-height: 1;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 767px) {
  .changle-stlt2 h1, .changle-stlt2 h2, .changle-stlt2 h3, .changle-stlt2 h4, .changle-stlt2 h5, .changle-stlt2 h6 {
    font-size: 3.6rem;
  }
}
.changle-stlt2 .changle-stlt2-sub {
  font-size: 2.2rem;
  line-height: 1;
  margin-top: 1.4rem;
}
@media screen and (max-width: 767px) {
  .changle-stlt2 .changle-stlt2-sub {
    font-size: 2rem;
  }
}

.sec9-top-item-last-txt {
  font-size: 1.8rem;
  line-height: 1.9;
  margin-top: 3.4rem;
  margin-bottom: 3.4rem;
  padding-left: 2rem;
  padding-right: 2rem;
}
.sec9-top-item-last-txt .sec9-top-item-last-txt-fw {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .sec9-top-item-last-txt {
    font-size: 1.6rem;
    padding-left: 0;
    padding-right: 0;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
}

.sec9-top-item-last-href .link-arrow-map {
  color: #222222;
  background-color: #fff;
  background-image: url(../img/common/vettor21.svg);
  border: max(1px, 0.1rem) solid #222222 !important;
}

.footer {
  position: relative;
  color: #fff;
  padding-top: 12rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .footer {
    padding-top: 5rem;
    padding-bottom: 9rem;
  }
}
.footer:before, .footer:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.footer:before {
  z-index: -2;
  background-color: #5A7494;
}
.footer:after {
  background-image: url(../img/common/img-footer.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
  opacity: 0.07;
}

.list-menu-global {
  row-gap: 1rem;
}
.list-menu-global.normal li + li {
  margin-top: 1rem;
}
.list-menu-global.column2 {
  display: grid;
  -moz-column-gap: 10rem;
       column-gap: 10rem;
  grid-template-columns: max-content max-content;
}
@media screen and (max-width: 999px) {
  .list-menu-global.column2 {
    -moz-column-gap: 6rem;
         column-gap: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .list-menu-global.column2 {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .list-menu-global li + li {
    margin-top: 1rem !important;
  }
}

.footer-tlt {
  font-size: 4.5rem;
  line-height: 1;
  text-transform: uppercase;
  margin-bottom: 3.2rem;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 767px) {
  .footer-tlt {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
}

.footer-tltmgt {
  margin-top: 4.6rem;
}
@media screen and (max-width: 767px) {
  .footer-tltmgt {
    margin-top: 2.8rem;
  }
}

.footer-cont {
  display: grid;
  grid-template-columns: 1fr 53rem;
}
@media screen and (max-width: 999px) {
  .footer-cont {
    grid-template-columns: 1fr 45rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-cont {
    display: flex;
    flex-direction: column-reverse;
  }
}

.logo-ft-img {
  width: 27.7rem;
}

.footer2-logo {
  text-align: center;
}

.footer2-tell {
  text-align: center;
  margin-top: 1rem;
  margin-bottom: 2.4rem;
}
.footer2-tell a {
  display: inline-flex;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.3rem;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1.3rem;
       column-gap: 1.3rem;
}
.footer2-tell a:before {
  content: "";
  display: inline-block;
  width: 2.3rem;
  height: 2.3rem;
  background-image: url(../img/common/vettor22.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transform: translateY(0.3rem);
}

.footer2-googlemap {
  border-radius: 1rem;
  overflow: hidden;
  display: flex;
}
.footer2-googlemap iframe {
  width: 100%;
  height: 37.8rem;
}
@media screen and (max-width: 767px) {
  .footer2-googlemap iframe {
    height: 28rem;
  }
}

.footer2-address {
  font-size: 1.8rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer2-address {
    font-size: 1.6rem;
  }
}

.footer2-address1 {
  margin-top: 0.5rem;
}

.footer2--celender {
  background-color: #fff;
}
.footer2--celender tr td:first-child p {
  color: #222222;
}

.footer2-address2 {
  margin-top: 1rem;
}

.footer2-copyright {
  font-size: 1.4rem;
  margin-top: 7.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
.footer2-copyright img {
  width: 20rem;
}
.footer2-copyright br {
  display: none;
}
@media screen and (max-width: 999px) {
  .footer2-copyright br {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .footer2-copyright {
    margin-top: 3rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: block;
    text-align: center;
  }
  .footer2-copyright img {
    width: 25rem;
  }
  .footer2-copyright a {
    display: inline-block;
    margin-bottom: 2rem;
  }
}

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

.toggle-btn {
  width: 6rem;
  height: 6rem;
  position: fixed;
  z-index: 10;
  background-color: #5A7494;
  bottom: 3rem;
  right: 3rem;
  border: max(1px, 0.1rem) solid #fff;
  cursor: pointer;
  background-image: url(../img/common/arrow.png);
  background-size: 50% auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.gr-tel-map-footer {
  position: fixed;
  bottom: 0;
  z-index: 20;
  left: 0;
  right: 0;
  display: grid;
  grid-template-columns: 41% 41% 18%;
}
.gr-tel-map-footer .gr-tel-map-footer-item {
  height: 6.8rem;
  background-color: #5A7494;
  position: relative;
}
.gr-tel-map-footer .gr-tel-map-footer-item .gr-tel-map-footer-item-tell {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../img/common/vettor23.svg);
  background-size: auto 40%;
  background-position: top 0.6rem center;
  background-repeat: no-repeat;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.gr-tel-map-footer .gr-tel-map-footer-item-map {
  background-color: #6A8853;
  border-left: 0.1rem solid #fff;
  border-right: 0.1rem solid #fff;
}
.gr-tel-map-footer .gr-tel-map-footer-item-map .gr-tel-map-footer-item-tell {
  background-image: url(../img/common/icon2.svg) !important;
}
.gr-tel-map-footer .gr-tel-map-footer-item-scrolltop {
  background-color: #885068;
  background-image: url(../img/common/arrow.png);
  background-size: 50% auto;
  background-position: center center;
  background-repeat: no-repeat;
}

.text-reser {
  text-align: right;
}

.text-upber {
  font-size: 2rem;
  font-weight: 500;
  font-family: "Zen Old Mincho", serif;
}

.sec2-top-link-more {
  padding-top: 2rem;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}
.sec2-top-link-more .link-href-more {
  margin-left: auto;
}

.green-lcdoc {
  font-size: 1.9rem;
  font-weight: 700;
  color: #5A7494;
}
@media screen and (max-width: 767px) {
  .green-lcdoc {
    font-size: 1.7rem;
  }
}

@media screen and (min-width: 768px) {
  .sec3-top-list-new-text-flow {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .sec3-top-list-new-text-flow a {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }
}

.sec1-top-video {
  display: flex;
}
@media screen and (max-width: 767px) {
  .sec1-top-video video {
    height: 30rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
}
.footer2-googlemap div{
    height: 37.8rem !important;
}
@media screen and (max-width: 767px) {
  .footer2-googlemap div{
      height: 28rem !important;
  }
}
.google-map-iframe div {
  height: 40rem !important;
}
@media screen and (max-width: 767px) {
  .google-map-iframe div {
    height: 25rem !important;
  }
}