@charset "UTF-8";
.banner-page {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 999px) {
  .banner-page {
    margin-top: 8.6rem;
  }
}
@media screen and (max-width: 767px) {
  .banner-page {
    margin-top: 8.2rem;
  }
}
.banner-page:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  background: linear-gradient(180deg, rgb(0, 99, 181) 0%, rgba(33, 42, 69, 0) 100%);
}
@media screen and (max-width: 999px) {
  .banner-page:before {
    content: none;
  }
}
.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: #2660A5;
  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: #2660A5;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.brecum-page-ul .icon {
  width: 0.7rem;
  height: 0.7rem;
  border-top: 1px solid #454545;
  border-right: 1px solid #454545;
  transform: rotate(45deg);
}
.brecum-page-ul a {
  color: #454545;
  transition: all 0.3s ease-in-out;
}
.brecum-page-ul a:hover {
  color: #2660A5;
}

.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 #2660A5;
  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: #2660A5;
  -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: #2660A5;
}
@media screen and (min-width: 768px) {
  .under-list-ul a:hover {
    color: #2660A5;
    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: 5rem auto;
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 5rem;
}
.setting-title h3::first-letter {
  color: #2660A5;
}
@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: #cee4ff;
  padding: 1rem 1.5rem;
  border-bottom: max(0.3rem, 1px) dashed #2660A5;
  color: #2660A5;
  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: #2660A5;
  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: #2660A5;
}
@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: #2660A5;
  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: #2660A5;
}
@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 #B5944D;
}

.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: #2660A5;
  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 #4f4d4c;
}

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

.tlt-style-line {
  font-size: 2.2rem;
  padding-bottom: 1.3rem;
  border-bottom: 2px solid #454545;
  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: #2660A5;
  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 #2660A5;
    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 #2660A5;
  }
  .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 #2660A5 !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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  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 #2660A5;
  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: #2660A5;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
}

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

.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: #2660A5 !important;
  color: #fff !important;
}
@media screen and (max-width: 767px) {
  .parent-pre-list-next {
    -moz-column-gap: 0;
         column-gap: 0;
    justify-content: space-between;
  }
  .parent-pre-list-next .link-arline-page {
    width: 30%;
  }
}

.menu-global {
  font-size: 1em;
  display: none;
  padding-top: 3em;
}
.menu-global.menu-global-1column {
  width: 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: #74B96A;
  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 #2660A5 !important;
  border-radius: 10rem;
  transition: all 0.3s ease-in-out;
  color: #fff;
  background-color: #2660A5;
}
.link-arline-page:hover {
  background-color: #fff;
  color: #2660A5;
}
@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: #2660A5;
  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: #2660A5;
  border-bottom: max(1px, 0.1rem) solid #2660A5;
  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: #2660A5;
  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: #2660A5;
}
.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 #2660A5;
  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: #2660A5;
  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: #2660A5;
  color: #fff;
}
.table-calender-style tr:first-child td:last-child {
  border-right: max(1px, 0.1rem) solid #2660A5;
}
.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 #2660A5;
  border-bottom: max(1px, 0.1rem) solid #2660A5;
}
.table-calender-style tr:not(:first-child) td:not(:first-child):last-child {
  border-right: max(1px, 0.1rem) solid #2660A5;
}

#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: #2660A5;
  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;
}

.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;
  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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  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: #2660A5;
  border: max(1px, 0.1rem) solid #2660A5;
  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: #2660A5;
}

.informetab {
  display: none;
}

#tab1 {
  display: block;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  font-size: 10px;
  padding-left: 4.7em;
  padding-right: 7em;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
  z-index: 100;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1700px) {
  .header {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}
@media screen and (max-width: 1400px) {
  .header {
    font-size: 0.71vw;
  }
}
@media screen and (max-width: 999px) {
  .header {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    background-color: #2660A5;
  }
}
@media screen and (min-width: 1000px) {
  .header.is-active {
    background-color: #2660A5;
  }
}

.img-logo {
  width: 48.6em;
}
@media screen and (max-width: 1700px) {
  .img-logo {
    width: 28vw;
  }
}
@media screen and (max-width: 999px) {
  .img-logo {
    width: 29rem;
  }
}
@media screen and (max-width: 767px) {
  .img-logo {
    width: 27rem;
  }
}

.header-right-link {
  display: inline-flex;
  flex-direction: column;
  padding-left: 3em;
  padding-right: 3em;
  line-height: 1;
  row-gap: 1.2em;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 1700px) {
  .header-right-link {
    padding-left: 1.76vw;
    padding-right: 1.76vw;
  }
}
.header-right-link span {
  display: block;
  text-align: center;
}
.header-right-link span.jpn {
  font-size: 1.8em;
  font-family: "Zen Old Mincho", serif;
}
.header-right-link span.eng {
  font-size: 1.2em;
  letter-spacing: 0.2em;
  color: #F5F6E9;
  position: relative;
}
.header-right-link span.eng:before {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #fff;
  transition: all 0.3s ease-in-out;
  opacity: 0;
  display: none;
}
.header-right-link:hover .eng:before, .header-right-link.is-active .eng:before {
  opacity: 1;
  display: block;
}

.header-right-ul {
  display: flex;
  flex-wrap: wrap;
}
.header-right-ul > li {
  border-left: max(1px, 0.1em) solid #fff;
}
.header-right-ul > li:last-child {
  border-right: max(1px, 0.1em) solid #fff;
}

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

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

.sec1-top-img {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top right;
     object-position: top right;
}
@media screen and (max-width: 999px) {
  .sec1-top-img {
    height: 50rem;
    max-height: 100vh;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-img {
    height: 35rem;
  }
}

.sec1-top {
  position: relative;
}
.sec1-top:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: #3c4c5a;
  opacity: 0.3;
}
@media screen and (max-width: 999px) {
  .sec1-top {
    margin-top: 8.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top {
    margin-top: 8.2rem;
  }
}

.sec1-top-title {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  color: #fff;
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-left: 7.4rem;
  text-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.5019607843);
  padding-top: 7%;
  padding-bottom: 4%;
}
@media screen and (max-width: 1500px) {
  .sec1-top-title {
    padding-left: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-title {
    padding-left: 1.5rem;
    padding-top: 0;
    justify-content: flex-end;
    padding-bottom: 12%;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-title {
    justify-content: flex-end;
    padding-top: 0;
    padding-bottom: 2rem;
  }
}
.sec1-top-title h1, .sec1-top-title h2, .sec1-top-title h3, .sec1-top-title h4, .sec1-top-title h5, .sec1-top-title h6 {
  font-size: 5.6rem;
  line-height: 1.4;
  font-family: "Zen Old Mincho", serif;
  position: relative;
  -webkit-text-decoration: underline solid #74B96A;
          text-decoration: underline solid #74B96A;
  text-decoration-thickness: 2.5rem;
  text-underline-offset: -1rem;
}
@media screen and (max-width: 1500px) {
  .sec1-top-title h1, .sec1-top-title h2, .sec1-top-title h3, .sec1-top-title h4, .sec1-top-title h5, .sec1-top-title h6 {
    font-size: 3.73vw;
    text-decoration-thickness: 1.67vw;
    text-underline-offset: -0.67vw;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-title h1, .sec1-top-title h2, .sec1-top-title h3, .sec1-top-title h4, .sec1-top-title h5, .sec1-top-title h6 {
    font-size: 3rem;
    text-decoration-thickness: 1.5rem;
    text-underline-offset: -0.7rem;
    line-height: 1.6;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-title h1, .sec1-top-title h2, .sec1-top-title h3, .sec1-top-title h4, .sec1-top-title h5, .sec1-top-title h6 {
    font-size: 2.7rem;
    text-underline-offset: -0.5rem;
  }
}
.sec1-top-title:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 87rem;
  background-color: #61AAD5;
  content: "";
  opacity: 0.4;
  clip-path: polygon(0 0, 100% 0, 70% 100%, 0% 100%);
}
@media screen and (max-width: 1500px) {
  .sec1-top-title:before {
    width: 58vw;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-title:before {
    width: 50rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-title:before {
    content: none;
  }
}

.sec1-top-txt {
  font-size: 3.5rem;
  line-height: 1.6;
  font-family: "Zen Old Mincho", serif;
  margin-top: 2rem;
  position: relative;
}
@media screen and (max-width: 1500px) {
  .sec1-top-txt {
    font-size: 2.33vw;
    margin-top: 1.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec1-top-txt {
    font-size: 2.4rem;
    margin-top: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec1-top-txt {
    font-size: 1.8rem;
  }
}

.sec2-top {
  position: relative;
}
.sec2-top .sec2-top-main {
  width: 80rem;
  position: absolute;
  z-index: 7;
  bottom: 0;
  left: 0;
  background-color: rgba(36, 94, 168, 0.5);
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  -moz-column-gap: 1.8rem;
       column-gap: 1.8rem;
  padding-left: 4rem;
  padding-right: 3rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 1500px) {
  .sec2-top .sec2-top-main {
    width: 53.33vw;
  }
}
@media screen and (max-width: 1200px) {
  .sec2-top .sec2-top-main {
    width: 60rem;
    padding-left: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top .sec2-top-main {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top .sec2-top-main {
    display: block;
    padding: 1rem 1.5rem;
    position: static;
    background-color: #2660A5;
  }
}

.sec2-top {
  color: #fff;
}
.sec2-top h1, .sec2-top h2, .sec2-top h3, .sec2-top h4, .sec2-top h5, .sec2-top h6 {
  font-size: 1.4rem;
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  line-height: 1;
  padding: 2rem 1rem;
  border: max(1px, 0.2rem) solid #fff;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 999px) {
  .sec2-top h1, .sec2-top h2, .sec2-top h3, .sec2-top h4, .sec2-top h5, .sec2-top h6 {
    padding: 1rem 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec2-top h1, .sec2-top h2, .sec2-top h3, .sec2-top h4, .sec2-top h5, .sec2-top h6 {
    display: inline-block;
    padding: 0.5rem 1rem;
  }
}
@media screen and (min-width: 768px) {
  .sec2-top h1, .sec2-top h2, .sec2-top h3, .sec2-top h4, .sec2-top h5, .sec2-top h6 {
    writing-mode: vertical-rl;
  }
}

.sec2-top-right-ul {
  font-size: 1.6rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .sec2-top-right-ul {
    font-size: 1.4rem;
    padding-top: 0.5rem;
  }
}
.sec2-top-right-ul li {
  display: grid;
  grid-template-columns: 13rem 1fr;
  padding: 0.6rem 0;
}
@media screen and (max-width: 999px) {
  .sec2-top-right-ul li {
    grid-template-columns: 10rem 1fr;
  }
}
.sec2-top-right-ul li a {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  padding-right: 4rem;
}
.sec2-top-right-ul li a:after {
  content: "→";
  position: absolute;
  font-size: 1em;
  top: 0;
  right: 1em;
}
.sec2-top-right-ul li + li {
  border-top: max(1px, 0.1rem) solid #fff;
}

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

.tlt-style1 {
  text-align: center;
  font-family: "Zen Old Mincho", serif;
  padding-bottom: 2rem;
}
.tlt-style1 .tlt-style1-eng {
  font-size: 5rem;
  line-height: 1;
  color: #2660A5;
  letter-spacing: 0.3rem;
}
.tlt-style1 .tlt-style1-eng::first-letter {
  color: #74B96A;
}
@media screen and (max-width: 999px) {
  .tlt-style1 .tlt-style1-eng {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .tlt-style1 .tlt-style1-eng {
    font-size: 3rem;
  }
}
.tlt-style1 h1, .tlt-style1 h2, .tlt-style1 h3, .tlt-style1 h4, .tlt-style1 h5, .tlt-style1 h6 {
  font-size: 3rem;
  line-height: 1.5;
  color: #072048;
  position: relative;
  display: grid;
  grid-template-columns: 1fr max-content 1fr;
  -moz-column-gap: 5rem;
       column-gap: 5rem;
  align-items: center;
  padding-top: 0.7rem;
}
@media screen and (max-width: 999px) {
  .tlt-style1 h1, .tlt-style1 h2, .tlt-style1 h3, .tlt-style1 h4, .tlt-style1 h5, .tlt-style1 h6 {
    font-size: 2.4rem;
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .tlt-style1 h1, .tlt-style1 h2, .tlt-style1 h3, .tlt-style1 h4, .tlt-style1 h5, .tlt-style1 h6 {
    font-size: 2.2rem;
  }
}
.tlt-style1 h1:before, .tlt-style1 h1:after, .tlt-style1 h2:before, .tlt-style1 h2:after, .tlt-style1 h3:before, .tlt-style1 h3:after, .tlt-style1 h4:before, .tlt-style1 h4:after, .tlt-style1 h5:before, .tlt-style1 h5:after, .tlt-style1 h6:before, .tlt-style1 h6:after {
  content: "";
  display: block;
  background-color: #A6ACBD;
  height: max(0.1rem, 1px);
}

.sec3-top-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 3.65vw;
       column-gap: 3.65vw;
}
@media screen and (max-width: 1400px) {
  .sec3-top-main {
    -moz-column-gap: 2.8vw;
         column-gap: 2.8vw;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-main {
    display: block;
  }
}

.sec3-top-box {
  background-color: #fff;
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.1);
  position: relative;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.sec3-top-box:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 5rem;
  height: 5rem;
  background-image: url(../img/top/image07.png);
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: contain;
}

.sec3-top-over {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .sec3-top-over {
    font-size: 1.5rem;
  }
}
.sec3-top-over .sec3-top-over-date {
  font-size: 1.7rem;
  color: #414C9C;
}
@media screen and (max-width: 767px) {
  .sec3-top-over .sec3-top-over-date {
    font-size: 1.6rem;
    padding-bottom: 0.3rem;
  }
}
.sec3-top-over li {
  display: grid;
  grid-template-columns: 14rem 1fr;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-over li {
    grid-template-columns: 10rem 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-over li {
    display: block;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
.sec3-top-over li + li {
  border-top: max(1px, 0.1rem) solid #B3B7D7;
}
.sec3-top-over a {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sec3-top-list-news {
  overflow: auto;
  height: 37.5rem;
  padding-right: 2rem;
  max-width: 57rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .sec3-top-list-news {
    height: 32.5rem;
  }
}

.sec3-top-box1 {
  padding-top: 4rem;
  padding-bottom: 5rem;
}

@media screen and (min-width: 768px) {
  .sec3-top-right {
    display: flex;
    flex-direction: column;
  }
  .sec3-top-right .sec3-top-box {
    height: 100%;
  }
}

.calender-design {
  max-width: 53rem;
  border: max(1px, 0.1rem) solid #ECF0E5;
  padding-top: 1.8rem;
  padding-bottom: 1.7rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.calender-design .calender-table {
  font-size: 1.4rem;
  width: calc(100% - 3rem);
  max-width: 47rem;
  margin-left: auto;
  margin-right: auto;
  table-layout: fixed;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table {
    font-size: 1.3rem;
  }
}
.calender-design .calender-table tr:first-child td {
  font-size: 1.8rem;
  border-bottom: max(1px, 0.1rem) solid #333333;
  padding-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table tr:first-child td {
    font-size: 1.6rem;
  }
}
.calender-design .calender-table tr:first-child td:first-child {
  text-align: center;
  padding-left: 2.2rem;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table tr:first-child td:first-child {
    padding-left: 1.2rem;
  }
}
.calender-design .calender-table tr td:first-child {
  font-size: 1.8rem;
  width: 15rem;
  text-align: right;
  padding-right: 2.2rem;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table tr td:first-child {
    font-size: 1.6rem;
    width: 11rem;
    padding-right: 1.2rem;
  }
}
.calender-design .calender-table .start {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table .start {
    font-size: 1.6rem;
  }
}
.calender-design .calender-table tr td {
  width: calc((100% - 15rem) / 8);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .calender-design .calender-table tr td {
    width: calc((100% - 11rem) / 8);
  }
}

.sec3-top-box2 {
  padding-top: 5rem;
}
@media screen and (max-width: 999px) {
  .sec3-top-box2 {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top-box2 {
    padding-bottom: 4rem;
  }
}

.calender-table-sub {
  font-size: 1.8rem;
  text-align: center;
  padding-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .calender-table-sub {
    font-size: 1.4rem;
  }
}

.calender-where-bus {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.4;
  border-top: max(1px, 0.1rem) solid #E2E2E2;
  margin-top: 1.3rem;
  padding-top: 2.3rem;
}
@media screen and (max-width: 1400px) {
  .calender-where-bus {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 999px) {
  .calender-where-bus {
    text-align: left;
    grid-template-columns: 1fr 1fr;
    row-gap: 1rem;
  }
  .calender-where-bus li {
    display: grid;
    grid-template-columns: max-content 1fr;
    align-items: center;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .calender-where-bus {
    display: block;
  }
  .calender-where-bus li + li {
    margin-top: 1.5rem;
  }
}
.calender-where-bus img {
  width: 4.8rem;
}
.calender-where-bus .calender-where-bus-txt {
  margin-top: 0.7rem;
}
@media screen and (max-width: 999px) {
  .calender-where-bus .calender-where-bus-txt br {
    display: none;
  }
}

.sec3-top {
  padding-top: 9rem;
  padding-bottom: 9rem;
  background-image: url(../img/top/image08.jpg);
  background-size: 100vw auto;
  background-repeat: repeat-y;
  background-position: top center;
}
@media screen and (max-width: 999px) {
  .sec3-top {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec3-top {
    padding: 5rem 0;
    background-size: 136rem auto;
  }
}

.scrollbar-track-x {
  display: none !important;
}

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

.sec4-top {
  background-image: url(../img/top/image09.jpg);
  background-size: cover;
  background-position: center center;
  color: #fff;
  padding-top: 8.5rem;
  padding-bottom: 11.7rem;
}
@media screen and (max-width: 999px) {
  .sec4-top {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top {
    padding: 5rem 0;
  }
}

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

.sec4-top-tlt-eng {
  font-size: 12rem;
  line-height: 1;
  font-family: "Zen Old Mincho", serif;
  text-align: center;
  letter-spacing: 0.7rem;
}
@media screen and (max-width: 1500px) {
  .sec4-top-tlt-eng {
    font-size: 8vw;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt-eng {
    font-size: 3rem;
  }
}
.sec4-top-tlt-eng::first-letter {
  color: #74B96A;
}

.sec4-top-tlt {
  text-align: center;
}
.sec4-top-tlt h1, .sec4-top-tlt h2, .sec4-top-tlt h3, .sec4-top-tlt h4, .sec4-top-tlt h5, .sec4-top-tlt h6 {
  font-size: 4rem;
  line-height: 1.5;
  font-family: "Zen Old Mincho", serif;
  padding-top: 2rem;
}
@media screen and (max-width: 1400px) {
  .sec4-top-tlt h1, .sec4-top-tlt h2, .sec4-top-tlt h3, .sec4-top-tlt h4, .sec4-top-tlt h5, .sec4-top-tlt h6 {
    font-size: 2.86vw;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt h1, .sec4-top-tlt h2, .sec4-top-tlt h3, .sec4-top-tlt h4, .sec4-top-tlt h5, .sec4-top-tlt h6 {
    font-size: 2rem;
  }
}
.sec4-top-tlt .sec4-top-tlt-number {
  color: #C3A35D;
  font-size: 6rem;
}
@media screen and (max-width: 1500px) {
  .sec4-top-tlt .sec4-top-tlt-number {
    font-size: 4vw;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt .sec4-top-tlt-number {
    font-size: 3rem;
  }
}

.sec4-top-tlt31 {
  font-size: 3.1rem;
  line-height: 1.7;
  text-align: center;
  font-family: "Zen Old Mincho", serif;
  letter-spacing: 0.3rem;
  margin-top: 6rem;
}
@media screen and (max-width: 1400px) {
  .sec4-top-tlt31 {
    font-size: 2.21vw;
    margin-top: 3.29vw;
  }
}
@media screen and (max-width: 999px) {
  .sec4-top-tlt31 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec4-top-tlt31 {
    font-size: 1.8rem;
  }
}

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

.sec4-top-txt {
  line-height: 1.8;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 5.5rem;
}
@media screen and (max-width: 767px) {
  .sec4-top-txt {
    text-align: left;
    letter-spacing: -0.03rem;
    margin-bottom: 2.5rem;
  }
}

.link-type01 {
  display: flex;
  align-items: center;
  height: 8rem;
  font-size: 1.7rem;
  padding-left: 2.3rem;
  background-image: url(../img/top/icon01.png);
  background-size: 3rem auto;
  background-repeat: no-repeat;
  background-position: right 1.6rem center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .link-type01 {
    padding-left: 1.5rem;
    background-position: right 1rem center;
  }
}
@media screen and (max-width: 767px) {
  .link-type01 {
    font-size: 1.6rem;
    height: 7rem;
    max-width: 30rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.link-type01.link-type01-white {
  border: max(1px, 0.1rem) solid #fff;
}
.link-type01:hover {
  background-color: #B5944D;
}

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

.sec5-top {
  background-image: url(../img/top/image10.png), url(../img/top/image11.jpg);
  background-size: 192rem auto, 192rem auto;
  background-repeat: no-repeat, repeat-y;
  background-position: top center, top center;
  padding-top: 9.5rem;
  padding-bottom: 12.5rem;
}
@media screen and (max-width: 999px) {
  .sec5-top {
    padding: 8rem 0;
    background-size: 118rem auto, 192rem auto;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top {
    padding: 5rem 0;
  }
}

.sec5-top-ul {
  max-width: 156.5rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  font-family: "Zen Old Mincho", serif;
  font-size: 2.4rem;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1.4%;
       column-gap: 1.4%;
  row-gap: 2.5rem;
  justify-content: center;
  color: #484848;
  margin-top: 6rem;
}
@media screen and (max-width: 1500px) {
  .sec5-top-ul {
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-ul {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-ul {
    font-size: 1.2rem;
    margin-top: 4rem;
    -moz-column-gap: 4%;
         column-gap: 4%;
  }
}
.sec5-top-ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20rem;
  width: 23.95%;
  background-image: url(../img/top/image12.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 0 1.4rem rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1500px) {
  .sec5-top-ul li {
    height: 13.33vw;
  }
}
@media screen and (max-width: 999px) {
  .sec5-top-ul li {
    width: 32.4%;
    height: 18rem;
  }
}
@media screen and (max-width: 767px) {
  .sec5-top-ul li {
    width: 48%;
    height: 10rem;
  }
}
.sec5-top-ul li:before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  border: max(1px, 0.1rem) solid #A9B1CE;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .sec5-top-ul li:before {
    top: 0.5rem;
    left: 0.5rem;
    right: 0.5rem;
    bottom: 0.5rem;
  }
}
.sec5-top-ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #B5944D;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec5-top-ul li .sec5-top-ul-link {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.sec5-top-ul li .sec5-top-ul-main {
  position: relative;
  z-index: 2;
}
.sec5-top-ul li:hover {
  color: #fff;
}
.sec5-top-ul li:hover:before {
  background-color: #A9B1CE;
}

.sec4-top-tlt-blue .sec4-top-tlt-eng {
  color: #2660A5;
}
.sec4-top-tlt-blue h1, .sec4-top-tlt-blue h2, .sec4-top-tlt-blue h3, .sec4-top-tlt-blue h4, .sec4-top-tlt-blue h5, .sec4-top-tlt-blue h6 {
  color: #072048;
}

.sec6-top {
  background-image: url(../img/top/image13.png), url(../img/top/image14.png), url(../img/top/image15.jpg);
  background-size: contain, contain, cover;
  background-position: top center, bottom center, center center;
  background-repeat: no-repeat, no-repeat, no-repeat;
  padding-top: 11rem;
  padding-bottom: 14rem;
  position: relative;
}
.sec6-top:before {
  content: "";
  position: absolute;
  top: 2rem;
  left: 2rem;
  right: 2rem;
  bottom: 2rem;
  border: max(1px, 0.1rem) solid #6D6D6B;
  opacity: 0.5;
}
@media screen and (max-width: 1700px) {
  .sec6-top:before {
    top: 1rem;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top:before {
    content: none;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

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

.sec6-top-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  padding-top: 7rem;
}
@media screen and (max-width: 999px) {
  .sec6-top-main {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-main {
    display: block;
  }
}
.sec6-top-main .sec6-top-item {
  color: #fff;
  padding-top: 9.7rem;
  padding-bottom: 24rem;
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1500px) {
  .sec6-top-main .sec6-top-item {
    padding-bottom: 16vw;
    padding-top: 6vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-main .sec6-top-item {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
.sec6-top-main .sec6-top-item:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
}
.sec6-top-main .sec6-top-item--first {
  background-image: url(../img/top/image16.jpg);
}
.sec6-top-main .sec6-top-item--last {
  background-image: url(../img/top/image17.jpg);
}
@media screen and (max-width: 767px) {
  .sec6-top-main .sec6-top-item--last {
    margin-top: 4rem;
  }
}
.sec6-top-main .sec6-top-item h1, .sec6-top-main .sec6-top-item h2, .sec6-top-main .sec6-top-item h3, .sec6-top-main .sec6-top-item h4, .sec6-top-main .sec6-top-item h5, .sec6-top-main .sec6-top-item h6 {
  font-size: 3.1rem;
  font-family: "Zen Old Mincho", serif;
  max-width: 38.6rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  border: max(1px, 0.1rem) solid #fff;
  padding: 0.3rem 0;
}
@media screen and (max-width: 1500px) {
  .sec6-top-main .sec6-top-item h1, .sec6-top-main .sec6-top-item h2, .sec6-top-main .sec6-top-item h3, .sec6-top-main .sec6-top-item h4, .sec6-top-main .sec6-top-item h5, .sec6-top-main .sec6-top-item h6 {
    font-size: 2.07vw;
    max-width: 25.73vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-main .sec6-top-item h1, .sec6-top-main .sec6-top-item h2, .sec6-top-main .sec6-top-item h3, .sec6-top-main .sec6-top-item h4, .sec6-top-main .sec6-top-item h5, .sec6-top-main .sec6-top-item h6 {
    font-size: 2.2rem;
    max-width: 25rem;
  }
}
.sec6-top-main .sec6-top-item-eng {
  font-size: 2.2rem;
  font-family: "Zen Old Mincho", serif;
  text-align: center;
  padding-bottom: 1.5rem;
}

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

.sec6-top-item-nd {
  max-width: 54rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4.5rem;
  width: calc(100% - 3rem);
}
@media screen and (min-width: 1000px) {
  .sec6-top-item-nd {
    letter-spacing: 0.2rem;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-item-nd {
    margin-top: 2.5rem;
  }
}

.sec6-top-item-link {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  justify-content: center;
  position: absolute;
  bottom: 10.5rem;
  left: 0;
  right: 0;
}
@media screen and (max-width: 1500px) {
  .sec6-top-item-link {
    bottom: 5vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-item-link {
    position: relative;
    bottom: auto;
    display: block;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 2.5rem;
  }
  .sec6-top-item-link .sec6-top-item-link-item + .sec6-top-item-link-item {
    margin-top: 2rem;
  }
}
.sec6-top-item-link .sec6-top-item-link-item {
  width: 32rem;
  padding: 0.5rem;
  border: max(1px, 0.1rem) solid #fff;
  position: relative;
}
@media screen and (max-width: 1500px) {
  .sec6-top-item-link .sec6-top-item-link-item {
    width: 21.33vw;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-item-link .sec6-top-item-link-item {
    width: 100%;
  }
}
.sec6-top-item-link .sec6-top-item-link-item .sec6-top-item-link-itema {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.sec6-top-item-link .sec6-top-item-link-item:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
  background-color: #B5944D;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  transition: all 0.3s ease-in-out;
}
.sec6-top-item-link .sec6-top-item-link-item .sec6-top-item-link-item-tlt {
  display: flex;
  font-size: 1.8rem;
  color: #454545;
  background-color: #fff;
  height: 7rem;
  justify-content: center;
  align-items: center;
  font-family: "Zen Old Mincho", serif;
  width: 100%;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 999px) {
  .sec6-top-item-link .sec6-top-item-link-item .sec6-top-item-link-item-tlt {
    height: 6rem;
  }
}
.sec6-top-item-link .sec6-top-item-link-item:hover .sec6-top-item-link-item-tlt {
  background-color: #B5944D;
  color: #fff;
}
.sec6-top-item-link .sec6-top-item-link-item:hover:before {
  background-color: #fff;
}

.sec6-top-item-gadien {
  position: relative;
}

.sec7-top .sec4-top-tlt h1, .sec7-top .sec4-top-tlt h2, .sec7-top .sec4-top-tlt h3, .sec7-top .sec4-top-tlt h4, .sec7-top .sec4-top-tlt h5, .sec7-top .sec4-top-tlt h6 {
  padding-top: 1rem;
}

.sec7-top-content {
  max-width: 170rem;
  margin-left: auto;
  width: calc(100% - 1.5rem);
  display: grid;
  grid-template-columns: 41.2% 1fr;
  -moz-column-gap: 4.1%;
       column-gap: 4.1%;
  padding-top: 3rem;
}
@media screen and (max-width: 1400px) {
  .sec7-top-content {
    grid-template-columns: 43.2% 1fr;
    -moz-column-gap: 2.1%;
         column-gap: 2.1%;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-content {
    grid-template-columns: 49.2% 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-content {
    display: block;
    padding-top: 2rem;
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec7-top-numberru-count {
  font-size: 8.8rem;
  line-height: 1;
  color: #2660A5;
  font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 1500px) {
  .sec7-top-numberru-count {
    font-size: 5.87vw;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-numberru-count {
    font-size: 4rem;
  }
}

.sec7-top-numberru-eng {
  font-size: 3rem;
  font-family: "Zen Old Mincho", serif;
  color: #42382C;
}
@media screen and (max-width: 1500px) {
  .sec7-top-numberru-eng {
    font-size: 2vw;
  }
}
@media screen and (max-width: 999px) {
  .sec7-top-numberru-eng {
    font-size: 2.2rem;
  }
}

.numberru-grid {
  display: grid;
  grid-template-columns: 11.5rem 1fr;
  align-items: center;
}
@media screen and (max-width: 1500px) {
  .numberru-grid {
    grid-template-columns: 9vw 1fr;
  }
}
@media screen and (max-width: 767px) {
  .numberru-grid {
    grid-template-columns: 7rem 1fr;
  }
}

.sec6-top-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2em;
  padding-top: 7em;
  font-size: 10px;
}
@media screen and (max-width: 1700px) {
  .sec6-top-link {
    font-size: 0.59vw;
  }
}
@media screen and (max-width: 1400px) {
  .sec6-top-link {
    font-size: 0.71vw;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-link {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-link {
    padding-top: 5em;
  }
}
.sec6-top-link li {
  background-color: #fff;
  background-size: 20.5em auto;
  background-repeat: no-repeat;
  background-position: top center;
  height: 22em;
  display: flex;
  align-items: flex-end;
  position: relative;
  width: calc((100% - 8em) / 5);
}
@media screen and (max-width: 1400px) {
  .sec6-top-link li {
    width: calc((100% - 6em) / 4);
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-link li {
    width: calc((100% - 4em) / 3);
    height: 19em;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-link li {
    width: calc((100% - 2em) / 2);
    background-size: 14.5em auto;
    height: 15em;
  }
}
.sec6-top-link li:before {
  content: "";
  width: 4em;
  height: 4em;
  background-color: #B5944D;
  position: absolute;
  bottom: 0;
  right: 0;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
@media screen and (max-width: 767px) {
  .sec6-top-link li:before {
    width: 2em;
    height: 2em;
  }
}
.sec6-top-link li:hover .sec6-top-link-hover {
  opacity: 1;
}
.sec6-top-link li .sec6-top-link-hover {
  position: absolute;
  background-color: #fff;
  top: 0;
  left: 0;
  right: 0;
  color: #fff;
  line-height: 1.5;
  height: 14.5em;
  background-color: #2660A5;
  padding: 1.2em 1.2em;
  text-align: center;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1400px) {
  .sec6-top-link li .sec6-top-link-hover {
    height: 14em;
  }
}
@media screen and (max-width: 999px) {
  .sec6-top-link li .sec6-top-link-hover {
    display: none;
  }
}
.sec6-top-link li .sec6-top-link-hover p.nohiden {
  font-size: 1.5em;
}
@media screen and (max-width: 1400px) {
  .sec6-top-link li .sec6-top-link-hover p.nohiden {
    font-size: 1.65em;
  }
}
.sec6-top-link li .sec6-top-linka {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
}
.sec6-top-link li .sec6-top-link-tlt {
  color: #072048;
  font-family: "Zen Old Mincho", serif;
  text-align: center;
  width: 100%;
  padding-bottom: 3.3em;
}
@media screen and (max-width: 999px) {
  .sec6-top-link li .sec6-top-link-tlt {
    padding-bottom: 2.4em;
  }
}
.sec6-top-link li .sec6-top-link-tlt span {
  font-size: 1.6em;
}
@media screen and (max-width: 999px) {
  .sec6-top-link li .sec6-top-link-tlt span {
    font-size: 1.8em;
  }
}
@media screen and (max-width: 767px) {
  .sec6-top-link li .sec6-top-link-tlt span {
    font-size: 1.6em;
  }
}
.sec6-top-link li .sec6-top-link-tlt.sec6-top-link-tlt2line {
  padding-bottom: 1.8em;
}
@media screen and (max-width: 999px) {
  .sec6-top-link li .sec6-top-link-tlt.sec6-top-link-tlt2line {
    padding-bottom: 1em;
  }
}

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

.sec7-top-numberru-tlt {
  color: #263859;
  font-family: "Zen Old Mincho", serif;
  line-height: 1.7;
  margin-top: 1.5rem;
  font-weight: 500;
}

.sec7-top-numberru-txt {
  line-height: 2;
  margin-top: 2.5rem;
}
@media screen and (min-width: 1000px) {
  .sec7-top-numberru-txt {
    letter-spacing: 0.1rem;
  }
}
.sec7-top-numberru-txt .sec7-top-numberru-o {
  color: #C3A35D;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .sec7-top-numberru-txt {
    margin-top: 0.5rem;
  }
}

.sec7-top-right-img-big {
  max-width: 68.3em;
  margin-left: auto;
}
@media screen and (max-width: 999px) {
  .sec7-top-right-img-big {
    max-width: 42.3em;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-right-img-big {
    max-width: 100%;
  }
}

.sec7-top-right-img-small {
  max-width: 41.5em;
  margin-top: -28.8em;
}
@media screen and (max-width: 999px) {
  .sec7-top-right-img-small {
    max-width: 25em;
    margin-top: -9em;
  }
}
@media screen and (max-width: 767px) {
  .sec7-top-right-img-small {
    max-width: 100%;
    margin-top: 2rem;
  }
}

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

.sec7-top-right {
  padding-top: 1.7rem;
}

.sec8-top-linka {
  display: flex;
  flex-wrap: wrap;
  height: 10.8rem;
  background-color: #fff;
  font-family: "Zen Old Mincho", serif;
  line-height: 1;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 1rem;
  position: relative;
  transition: all 0.3s ease-in-out;
  z-index: 2;
  width: 100%;
}
.sec8-top-linka:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #B5944D;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  transition: all 0.3s ease-in-out;
}
.sec8-top-linka .sec8-top-linka-jpn {
  font-size: 2.4rem;
  color: #414C9C;
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 1000px) {
  .sec8-top-linka .sec8-top-linka-jpn {
    letter-spacing: 0.1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec8-top-linka .sec8-top-linka-jpn {
    font-size: 2.1rem;
  }
}
.sec8-top-linka .sec8-top-linka-eng {
  font-size: 1.6rem;
  color: #8E7641;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .sec8-top-linka .sec8-top-linka-eng {
    font-size: 1.5rem;
  }
}
.sec8-top-linka:hover {
  background-color: #B5944D;
}
.sec8-top-linka:hover .sec8-top-linka-eng {
  color: #fff;
}
.sec8-top-linka:hover .sec8-top-linka-jpn {
  color: #fff;
}
.sec8-top-linka:hover:before {
  background-color: #fff;
}

.sec8-top {
  background-image: url(../img/top/image20.jpg);
  background-size: cover;
  background-position: center center;
  padding-top: 10rem;
  padding-bottom: 9rem;
  margin-top: 4rem;
}
@media screen and (max-width: 999px) {
  .sec8-top {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec8-top {
    padding: 5rem 0;
  }
}

.sec8-top-item {
  position: relative;
}
.sec8-top-item:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: max(1px, 0.1rem) solid #fff;
  transform: translate(1rem, 1rem);
}

.sec8-top-link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 8rem;
       column-gap: 8rem;
  max-width: 124rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 4rem);
}
@media screen and (max-width: 999px) {
  .sec8-top-link {
    -moz-column-gap: 4rem;
         column-gap: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec8-top-link {
    display: block;
  }
  .sec8-top-link .sec8-top-item + .sec8-top-item {
    margin-top: 2.5rem;
  }
}

.sec9-top-main {
  max-width: 173rem;
  display: grid;
  grid-template-columns: 50.6% 1fr;
  -moz-column-gap: 2.8%;
       column-gap: 2.8%;
  width: calc(100% - 1.5rem);
}
@media screen and (max-width: 1400px) {
  .sec9-top-main {
    grid-template-columns: 46.6% 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-main {
    display: block;
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.sec9-top-main .sec9-top-link {
  margin-top: 3.5rem;
}

.sec9-top-left-img-big {
  max-width: 72em;
}
@media screen and (max-width: 999px) {
  .sec9-top-left-img-big {
    max-width: 41em;
  }
}

.sec9-top-left-img-small {
  max-width: 35em;
  margin-left: auto;
  margin-top: -21em;
}
@media screen and (max-width: 999px) {
  .sec9-top-left-img-small {
    max-width: 23em;
    margin-top: -6em;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-left-img-small {
    max-width: 100%;
    margin-top: 2rem;
  }
}

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

.sec9-top {
  background-color: #F3F8F9;
  padding-top: 3.7rem;
  padding-bottom: 3.7rem;
}

.sec9-top-link {
  max-width: 75rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
@media screen and (max-width: 767px) {
  .sec9-top-link {
    display: block;
  }
  .sec9-top-link li + li {
    margin-top: 2rem;
  }
}

.sec9-top-linka {
  display: flex;
  height: 8rem;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: 500;
  font-family: "Zen Old Mincho", serif;
  background-size: 0.8rem auto;
  background-repeat: no-repeat;
  background-position: right 2.5rem center;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 1400px) {
  .sec9-top-linka {
    background-position: right 1.5rem center;
    padding-right: 3rem;
    height: 7rem;
  }
}
@media screen and (max-width: 999px) {
  .sec9-top-linka {
    font-size: 1.8rem;
    height: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec9-top-linka {
    padding-right: 0;
  }
}
.sec9-top-linka1 {
  color: #B19143;
  border: max(1px, 0.1rem) solid #B19143 !important;
  background-image: url(../img/top/image23.png);
}
.sec9-top-linka1:hover {
  background-color: #B19143 !important;
  color: #fff;
}
.sec9-top-linka2 {
  color: #2F459B;
  border: max(1px, 0.1rem) solid #2F459B !important;
  background-image: url(../img/top/image24.png);
}
.sec9-top-linka2:hover {
  background-color: #2F459B !important;
  color: #fff;
}

.setting-withimg {
  font-size: 10px;
}
@media screen and (max-width: 1700px) {
  .setting-withimg {
    font-size: 0.59vw;
  }
}
@media screen and (max-width: 999px) {
  .setting-withimg {
    font-size: 1rem;
  }
}

.sec10-top {
  background-color: #fff;
  display: grid;
  grid-template-columns: 25.3% 1fr 25.3%;
}
@media screen and (max-width: 999px) {
  .sec10-top {
    grid-template-columns: 23.6% 1fr 23.6%;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top {
    display: block;
    padding-top: 5rem;
  }
}

.sec10-top-mid {
  text-align: center;
  padding-top: 3.5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 1400px) {
  .sec10-top-mid {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec10-top-mid {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 3rem;
    padding-bottom: 0;
  }
}
.sec10-top-mid .sec9-top-link {
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
  width: calc(100% - 3rem);
}
@media screen and (max-width: 767px) {
  .sec10-top-mid .sec9-top-link {
    width: 100%;
  }
}

.sec10-top-left img, .sec10-top-right img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.sec10-top-left img {
  -o-object-position: right center;
     object-position: right center;
}

.sec10-top-right img {
  -o-object-position: left center;
     object-position: left center;
}

.sec10-top-bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.sec11-top {
  background-image: url(../img/top/image29.jpg);
  background-size: 192rem auto;
  background-repeat: repeat-y;
  background-position: top center;
  padding-top: 7.7rem;
  padding-bottom: 10rem;
}
@media screen and (max-width: 999px) {
  .sec11-top {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top {
    padding: 5rem 0;
    margin-top: 5rem;
  }
}

.sec11-top-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 6.4%;
       column-gap: 6.4%;
  align-items: flex-start;
}
@media screen and (max-width: 1300px) {
  .sec11-top-main {
    -moz-column-gap: 4.4%;
         column-gap: 4.4%;
  }
}
@media screen and (max-width: 999px) {
  .sec11-top-main {
    -moz-column-gap: 3%;
         column-gap: 3%;
  }
}
@media screen and (max-width: 767px) {
  .sec11-top-main {
    display: block;
  }
}
.sec11-top-main .sec11-top-item {
  background-color: #fff;
  padding-bottom: 6rem;
  position: relative;
}
.sec11-top-main .sec11-top-item:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 5rem;
  height: 5rem;
  background-color: #DED2BB;
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
}
@media screen and (max-width: 999px) {
  .sec11-top-main .sec11-top-item:before {
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (max-width: 999px) {
  .sec11-top-main .sec11-top-item {
    padding-bottom: 4rem;
  }
}
.sec11-top-main .sec11-top-item:last-child {
  margin-top: 5.5rem;
}

.sec11-top-item-nd {
  max-width: 59rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  padding-top: 5.8rem;
}
@media screen and (max-width: 999px) {
  .sec11-top-item-nd {
    padding-top: 2.8rem;
  }
}
.sec11-top-item-nd .sec9-top-link {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .sec11-top-item-nd .sec9-top-link {
    padding-top: 3rem;
  }
}

.sec11-top-img {
  display: flex;
}

.sec12-top-main {
  max-width: 156.6rem;
  width: calc(100% - 1.5rem);
  display: grid;
  grid-template-columns: 55.8% 1fr;
  -moz-column-gap: 5.1%;
       column-gap: 5.1%;
}
@media screen and (max-width: 1300px) {
  .sec12-top-main {
    -moz-column-gap: 3.1%;
         column-gap: 3.1%;
  }
}
@media screen and (max-width: 999px) {
  .sec12-top-main {
    grid-template-columns: 47.8% 1fr;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-main {
    display: flex;
    flex-direction: column;
    -moz-column-gap: 0;
         column-gap: 0;
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.sec12-top-right-greenting {
  font-size: 4rem;
  font-family: "Zen Old Mincho", serif;
  color: #2660A5;
  line-height: 1;
  position: absolute;
  right: 0;
  top: -2.4rem;
}
@media screen and (max-width: 1500px) {
  .sec12-top-right-greenting {
    font-size: 2.67vw;
    top: -1.6vw;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-right-greenting {
    font-size: 1.8rem;
    position: static;
  }
}

.sec12-top-right {
  padding-top: 17.6rem;
}
@media screen and (max-width: 1700px) {
  .sec12-top-right {
    padding-top: 10.35vw;
  }
}
@media screen and (max-width: 1500px) {
  .sec12-top-right {
    padding-top: 7.35vw;
  }
}
@media screen and (max-width: 1300px) {
  .sec12-top-right {
    padding-top: 5.35vw;
  }
}
@media screen and (max-width: 999px) {
  .sec12-top-right {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-right {
    padding-top: 0;
    padding-bottom: 0;
  }
  .sec12-top-right .sec4-top-tlt {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .sec12-top-right .sec4-top-tlt {
    width: -moz-max-content;
    width: max-content;
    position: relative;
  }
}

.sec12-top-right-txt {
  line-height: 1.8;
  color: #072048;
  margin-top: 5.7rem;
}
@media screen and (max-width: 999px) {
  .sec12-top-right-txt {
    margin-top: 2.7rem;
  }
}

.sec12-top-name {
  font-family: "Zen Old Mincho", serif;
  color: #8E7641;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 1;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-top: 5rem;
  padding-bottom: 8.5rem;
}
.sec12-top-name .sec12-top-name-first {
  font-size: 2.4rem;
}
.sec12-top-name .sec12-top-name-last {
  font-size: 1.8rem;
}
@media screen and (max-width: 1700px) {
  .sec12-top-name {
    padding-bottom: 4.71vw;
  }
}
@media screen and (max-width: 1500px) {
  .sec12-top-name {
    padding-bottom: 2.71vw;
  }
}
@media screen and (max-width: 999px) {
  .sec12-top-name {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-name {
    margin-top: 3rem;
    padding-bottom: 3rem;
  }
}

.sec12-top-link {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  color: #2660A5;
  font-family: "Zen Old Mincho", serif;
  border: max(1px, 0.1rem) solid #2660A5 !important;
  height: 7rem;
  transition: all 0.3s ease-in-out;
  position: relative;
}
@media screen and (max-width: 999px) {
  .sec12-top-link {
    height: 6rem;
  }
}
.sec12-top-link:before {
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  background-color: #2660A5;
  position: absolute;
  bottom: -0.1rem;
  right: -0.1rem;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
.sec12-top-link:hover {
  background-color: #2660A5;
  color: #fff;
}

.sec12-top-ul-link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2.8rem;
       column-gap: 2.8rem;
}
@media screen and (max-width: 767px) {
  .sec12-top-ul-link {
    display: block;
  }
  .sec12-top-ul-link li + li {
    margin-top: 2rem;
  }
}

.sec12-top {
  background-image: url(../img/top/image33.jpg);
  background-size: cover;
  background-position: right top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .sec12-top {
    padding: 5rem 0;
  }
}

@media screen and (max-width: 767px) {
  .sec12-top-left {
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 999px) and (min-width: 768px) {
  .sec12-top-left img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: right center;
       object-position: right center;
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec12-top-left img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: left;
       object-position: left;
    height: 47rem;
  }
}

.sec13-top-ul {
  max-width: 95rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 2.7rem;
       column-gap: 2.7rem;
  align-items: flex-start;
}
@media screen and (max-width: 999px) {
  .sec13-top-ul {
    max-width: 88rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top-ul {
    display: block;
  }
  .sec13-top-ul li + li {
    margin-top: 2.5rem;
  }
}
.sec13-top-ul li {
  height: 14.5rem;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-left: 4.2rem;
  padding-right: 2rem;
  align-items: center;
  position: relative;
  background-image: url(../img/top/image36.png);
  background-size: 4.7rem auto;
  background-repeat: no-repeat;
  background-position: right 2.2rem bottom 2rem;
  transition: all 0.3s ease-in-out;
}
.sec13-top-ul li .sec13-top-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
@media screen and (max-width: 999px) {
  .sec13-top-ul li {
    height: 12.5rem;
    padding-left: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top-ul li {
    background-position: right 2.2rem bottom 1.5rem;
  }
}
.sec13-top-ul li:hover {
  background-position: right 1rem bottom 2rem;
}
@media screen and (max-width: 767px) {
  .sec13-top-ul li:hover {
    background-position: right 1rem bottom 1.5rem;
  }
}
.sec13-top-ul li:before {
  content: "";
  position: absolute;
  bottom: -0.1rem;
  right: -0.1rem;
  width: 1.6rem;
  height: 1.6rem;
  background-color: #fff;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  opacity: 0.5;
}
.sec13-top-ul li .sec13-top-icon img {
  width: 9.4rem;
}
@media screen and (max-width: 999px) {
  .sec13-top-ul li .sec13-top-icon img {
    width: 8.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top-ul li .sec13-top-icon img {
    width: 6.4rem;
  }
}
.sec13-top-ul li .sec13-top-nd {
  text-align: right;
  padding-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .sec13-top-ul li .sec13-top-nd {
    letter-spacing: 0.1rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top-ul li .sec13-top-nd {
    padding-bottom: 0;
  }
  .sec13-top-ul li .sec13-top-nd .txt-fs16 {
    font-size: 1.4rem;
  }
}
.sec13-top-ul li .sec13-top-nd .sec13-top-bing {
  font-size: 3.3rem;
  line-height: 1;
  font-family: "Zen Old Mincho", serif;
  padding-top: 0.7rem;
}
@media screen and (max-width: 999px) {
  .sec13-top-ul li .sec13-top-nd .sec13-top-bing {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec13-top-ul li .sec13-top-nd .sec13-top-bing {
    font-size: 2.2rem;
  }
}
.sec13-top-ul li:first-child {
  background-color: #4473A9;
}
.sec13-top-ul li:last-child {
  background-color: #AE9549;
}

.sec13-top {
  background: #EEEFDF;
  background: linear-gradient(90deg, rgb(238, 239, 223) 0%, rgb(225, 239, 252) 100%);
  padding-top: 5rem;
  padding-bottom: 6rem;
}

.slicker-slider2-item {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media screen and (max-width: 767px) {
  .slicker-slider2-item {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.slicker-slider2-item img {
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .slicker-slider2-item img {
    border-radius: 1rem;
  }
}

.sec14-top {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.sec15-top-clamping {
  font-size: 3rem;
  font-weight: 500;
  color: #2660A5;
  display: inline-block;
  background-color: #fff;
  border: max(1px, 0.1rem) solid #2660A5;
  font-family: "Zen Old Mincho", serif;
  padding: 0.2rem 6rem;
}
@media screen and (max-width: 999px) {
  .sec15-top-clamping {
    font-size: 2.2rem;
    padding: 0.2rem 4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec15-top-clamping {
    font-size: 2rem;
  }
}

.sec15-top-txt {
  line-height: 2;
  color: #072048;
  max-width: 78.6rem;
}
@media screen and (min-width: 768px) {
  .sec15-top-txt {
    letter-spacing: 0.1rem;
  }
}
@media screen and (max-width: 999px) {
  .sec15-top-txt {
    max-width: 60.6rem;
  }
}

.sec7-top-numberru-line {
  max-width: 80rem;
  border-top: max(1px, 0.1rem) solid #B19143;
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 999px) {
  .sec7-top-numberru-line {
    margin-top: 1rem;
    margin-bottom: 2rem;
    max-width: 60.6rem;
  }
}

.sec15-top-link {
  max-width: 42rem;
  padding-top: 4rem;
}
.sec15-top-link a {
  background-color: #fff;
}
@media screen and (max-width: 999px) {
  .sec15-top-link {
    max-width: 34rem;
  }
}

.sec15-top {
  background-image: url(../img/top/image43.jpg);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  padding: 9.8rem 0;
  position: relative;
}
.sec15-top .sec15-top-eng {
  font-size: 8rem;
  line-height: 1;
  color: #fff;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  text-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 1700px) {
  .sec15-top .sec15-top-eng {
    font-size: 4.71vw;
  }
}
@media screen and (max-width: 767px) {
  .sec15-top .sec15-top-eng {
    font-size: 3.5rem;
    bottom: auto;
    top: 3rem;
    right: 0;
    left: 0;
    text-align: center;
    color: #B5944D;
  }
}
@media screen and (max-width: 999px) {
  .sec15-top {
    padding: 5.8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec15-top {
    background-position: left center;
    padding: 5rem 0;
    padding-top: 10rem;
  }
  .sec15-top .sec7-top-numberru-tlt {
    letter-spacing: -0.05rem;
  }
}

.sec16-top {
  background-color: #F5F7F7;
  padding-top: 8rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 999px) {
  .sec16-top {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec16-top {
    padding: 5rem 0;
  }
}
.sec16-top .sec16-top-list-blog {
  padding-top: 2rem;
  padding-bottom: 5.5rem;
}
@media screen and (max-width: 999px) {
  .sec16-top .sec16-top-list-blog {
    padding-bottom: 3rem;
  }
}

.sec16-top-list-blog {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  row-gap: 4rem;
}
@media screen and (max-width: 999px) {
  .sec16-top-list-blog {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec16-top-list-blog {
    grid-template-columns: 1fr;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}

.sec16-top-date {
  font-size: 1.3rem;
  color: #2660A5;
  padding-top: 1.7rem;
}

.sec16-top-tlt {
  font-size: 1.7rem;
  color: #2660A5;
  padding-top: 0.3rem;
  padding-bottom: 1rem;
}

.sec16-top-txt {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .sec16-top-link {
    max-width: 28rem;
    margin-left: auto;
    margin-right: auto;
  }
}

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

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

.sec18-top-fs52 {
  font-size: 5.2rem;
  text-align: center;
  line-height: 1;
  color: #52473C;
  font-family: "Zen Old Mincho", serif;
  margin-top: 5rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-fs52 {
    font-size: 3.47vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-fs52 {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-fs52 {
    font-size: 2.4rem;
  }
}

.sec18-top-table {
  width: 100%;
  color: #484848;
}
.sec18-top-table tr td:first-child {
  width: 15rem;
  padding-left: 1rem;
}
@media screen and (max-width: 999px) {
  .sec18-top-table tr td:first-child {
    width: 9rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-table tr td:first-child {
    width: 100%;
    background-color: #484848;
    color: #fff;
    padding-left: 1.5rem !important;
  }
}
.sec18-top-table tr td:last-child {
  width: calc(100% - 15rem);
}
@media screen and (max-width: 999px) {
  .sec18-top-table tr td:last-child {
    width: calc(100% - 9rem);
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-table tr td:last-child {
    width: 100%;
    padding-left: 1.5rem !important;
  }
}
.sec18-top-table tr td {
  border-bottom: max(1px, 0.1rem) solid #484848;
  border-top: max(1px, 0.1rem) solid #484848;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .sec18-top-table tr td {
    float: left;
    padding: 1rem 0 !important;
    border-top: 0;
    border-bottom: 0;
  }
}

.sec18-top-flex {
  display: grid;
  grid-template-columns: 1fr 53rem;
  -moz-column-gap: 9.4rem;
       column-gap: 9.4rem;
  padding-top: 8.3rem;
}
@media screen and (max-width: 1500px) {
  .sec18-top-flex {
    -moz-column-gap: 5.27vw;
         column-gap: 5.27vw;
  }
}
@media screen and (max-width: 1300px) {
  .sec18-top-flex {
    -moz-column-gap: 3.27vw;
         column-gap: 3.27vw;
  }
}
@media screen and (max-width: 999px) {
  .sec18-top-flex {
    grid-template-columns: 1fr 47rem;
    padding-top: 5.3rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-flex {
    display: block;
    padding-top: 3.3rem;
  }
}
.sec18-top-flex .calender-design {
  background-color: #FEFFF9;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .sec18-top-flex .sec9-top-linka {
    height: 6rem;
    font-size: 1.8rem;
  }
}
.sec18-top-flex .sec9-top-linka {
  background-color: #fff;
}

.sec18-top-right-txt {
  text-align: center;
  padding-top: 0.7rem;
  padding-bottom: 2rem;
}
@media screen and (min-width: 1000px) {
  .sec18-top-right-txt {
    letter-spacing: 0.2rem;
  }
}
@media screen and (max-width: 767px) {
  .sec18-top-right-txt {
    font-size: 1.3rem;
  }
}

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

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

.sec17-top {
  padding: 4rem 0;
}

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

.footer-tlt {
  font-size: 3.3rem;
  line-height: 1;
  color: #fff;
  font-family: "Zen Old Mincho", serif;
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .footer-tlt {
    font-size: 2.6rem;
  }
}

.footer-link a {
  color: #fff;
}

.footer-linka {
  font-size: 1.5rem;
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 1.4rem;
       column-gap: 1.4rem;
}
.footer-linka:before {
  content: "";
  display: inline-block;
  width: 0.8rem;
  height: max(1px, 0.1rem);
  background-color: #fff;
}

.footer-link-column li + li {
  margin-top: 0.7rem;
}
@media screen and (max-width: 767px) {
  .footer-link-column li + li {
    margin-top: 1.2rem;
  }
}

.footer-link-row {
  display: grid;
  grid-template-columns: 24.5rem 1fr;
  row-gap: 0.7rem;
}
@media screen and (max-width: 767px) {
  .footer-link-row {
    grid-template-columns: 1fr 1fr;
    row-gap: 1.2rem;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}

.footer-grlink {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 9rem;
       column-gap: 9rem;
}
@media screen and (max-width: 767px) {
  .footer-grlink {
    display: block;
  }
}

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

.footer-privacy {
  background-color: #2660A5;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .footer-privacy {
    padding-left: 1.5rem;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    padding-bottom: 7.1rem;
  }
}
.footer-privacy .footer-privacy-left {
  width: 21rem;
  padding-right: 3rem;
  border-right: max(1px, 0.1rem) solid #fff;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .footer-privacy .footer-privacy-left {
    width: 15rem;
    padding-right: 2rem;
  }
}
.footer-privacy .footer-privacy-right {
  font-size: 1.2rem;
  color: #fff;
}
.footer-privacy .footer-privacy-favicon {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.footer-privacy-ul {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  -moz-column-gap: 1.8rem;
       column-gap: 1.8rem;
  height: 100%;
  width: calc(100% - 3rem);
}
.footer-privacy-ul img {
  width: 3rem;
}
@media screen and (max-width: 767px) {
  .footer-privacy-ul img {
    width: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .footer-privacy-ul {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}

.fix-right-screen {
  position: fixed;
  z-index: 10;
  right: 0;
  bottom: 15rem;
}
@media screen and (min-width: 1000px) and (max-height: 800px) {
  .fix-right-screen {
    bottom: 10rem;
  }
}
@media screen and (min-width: 1000px) and (max-height: 700px) {
  .fix-right-screen {
    bottom: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .fix-right-screen {
    bottom: 17rem;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen {
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 6rem 6rem;
  }
  .fix-right-screen a + a {
    border-left: max(1px, 0.1rem) solid #fff;
  }
}
.fix-right-screen a {
  width: 7rem;
  display: flex;
}
@media screen and (max-width: 999px) {
  .fix-right-screen a {
    width: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen a {
    width: 100%;
    height: 5rem;
    background-color: #B5944D;
  }
}
.fix-right-screen .fix-right-screen-wsd {
  padding-top: 2rem;
  padding-bottom: 2rem;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .fix-right-screen .fix-right-screen-wsd:before {
    content: "";
    position: absolute;
    bottom: 0.1rem;
    right: 0.1rem;
    width: 1.5rem;
    height: 1.5rem;
    background-color: #fff;
    opacity: 0.5;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  }
}
.fix-right-screen .fix-right-screen-wsd img {
  width: 2.6rem;
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-wsd img {
    width: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-wsd {
    font-size: 1.2rem;
    color: #fff;
    flex-direction: column;
    row-gap: 0.2rem;
    padding: 0;
    justify-content: flex-end;
  }
}
@media screen and (min-width: 768px) {
  .fix-right-screen .fix-right-screen-sdt {
    background-color: #74B96A;
  }
}
@media screen and (min-width: 768px) {
  .fix-right-screen .fix-right-screen-web {
    background-color: #2662A7;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-web {
    margin: 0;
  }
  .fix-right-screen .fix-right-screen-web img {
    width: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-ins {
    justify-content: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-ins img {
    width: 2.5rem;
    height: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-fb {
    justify-content: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .fix-right-screen .fix-right-screen-fb img {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.fix-right-screen .fix-right-screen-toggle {
  background-image: url(../img/common/vettor17.svg);
  background-size: 1.2rem auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.scrolltop-pci {
  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: #2660A5;
  border: 0;
  outline: 0;
  z-index: 20;
  position: fixed;
  bottom: 6.4rem;
  right: 9rem;
  border-radius: 100rem;
  cursor: pointer;
  border: max(1px, 0.1rem) solid #fff;
}
@media screen and (max-width: 999px) {
  .scrolltop-pci {
    width: 5.5rem;
    height: 5.5rem;
    right: 1.5rem;
    bottom: 7rem;
  }
}

.menu-ipad {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #2660A5;
  z-index: 51;
  display: none;
}

.menu-fixed-mobile-fadein {
  background-color: #EBEFF2;
  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: 11rem;
  overflow: auto;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-extrend {
    margin-top: 11rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.menu-fixed-mobile-tlt {
  font-size: 3rem;
  font-weight: 500;
  text-align: center;
  padding: 1.5rem;
  background-color: #2660A5;
  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: #74B96A;
}
@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;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .menu-fixed-mobile-list {
    font-size: 1.8rem;
    padding-top: 2rem;
  }
}
.menu-fixed-mobile-list a {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  color: #2660A5;
  border-bottom: max(1px, 0.2rem) dashed #2660A5;
  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: #2660A5;
  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: #2660A5;
  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: #74B96A;
  border-color: #74B96A;
}
.menu-fixed-mobile-list.purler a:before {
  background-color: #74B96A;
}
.menu-fixed-mobile-list.purler a.is-active, .menu-fixed-mobile-list.purler a:hover {
  background-color: #74B96A;
}

.menu-ipad-address {
  font-size: 1.8rem;
  color: #2660A5;
}
@media screen and (max-width: 767px) {
  .menu-ipad-address {
    font-size: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

.menu-ipad-address-gr {
  padding-bottom: 3rem;
  font-size: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .menu-ipad-address-gr {
    display: block;
    padding-bottom: 1.5rem;
  }
}
.menu-ipad-address-gr .header-gr-tell {
  margin-left: 0;
  margin-right: 0;
}

.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;
  }
}
.scrool-link-parent {
  position: relative;
}
.scrool-link-parent .scrool-link-child {
  position: absolute;
  top: -18rem;
  left: 0;
}
@media screen and (max-width: 999px) {
  .scrool-link-parent .scrool-link-child {
    top: -15rem;
  }
}
@media screen and (max-width: 767px) {
  .scrool-link-parent .scrool-link-child {
    top: -12rem;
  }
}

.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;
}

.setting-title {
  font-size: 1.7rem;
}
@media screen and (max-width: 767px) {
  .setting-title {
    font-size: 1.6rem;
  }
}

.image-boss {
  position: relative;
}

.image-boss-txt {
  font-family: "Zen Old Mincho", serif;
  font-size: 4rem;
  font-weight: 700;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 2rem 8rem;
  color: #fff;
}
@media screen and (max-width: 999px) {
  .image-boss-txt {
    padding: 2rem 5rem;
  }
}
@media screen and (max-width: 767px) {
  .image-boss-txt {
    font-size: 2.6rem;
    padding: 0 1rem;
    color: #1a1919;
  }
}

.alower-secmer {
  border: max(1rem, 5px) solid #2660A5;
  padding: 3rem 3rem;
  background-color: #e8f1fb;
}
@media screen and (max-width: 767px) {
  .alower-secmer {
    padding: 2rem 1.5rem;
    border: max(0.5rem, 1px) solid #2660A5;
  }
}
.alower-secmer h1, .alower-secmer h2, .alower-secmer h3, .alower-secmer h4, .alower-secmer h5, .alower-secmer h6 {
  font-size: 3.2rem;
  color: #B5944D;
  font-family: "Zen Old Mincho", serif;
  margin-bottom: 1rem;
  line-height: 1.45;
}
@media screen and (max-width: 767px) {
  .alower-secmer h1, .alower-secmer h2, .alower-secmer h3, .alower-secmer h4, .alower-secmer h5, .alower-secmer h6 {
    font-size: 2.2rem;
  }
}

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

.sec16-top-img img {
  width: 100%;
  height: 20rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 999px) {
  .sec16-top-img img {
    height: 16rem;
  }
}
@media screen and (max-width: 767px) {
  .sec16-top-img img {
    height: 26rem;
  }
}

.sec3-top-box1 .sec16-top-link {
  margin-top: 3rem;
}

.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: #2660A5;
  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: #2660A5;
  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;
  }
}

.iamge-post0thumnail-single {
  padding-top: 3rem;
}

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

.header-address {
  font-size: 1.6rem;
  color: #fff;
  position: absolute;
  top: 1rem;
  right: 7rem;
}
@media screen and (max-width: 1700px) {
  .header-address {
    right: 2rem;
  }
}
@media screen and (max-width: 1400px) {
  .header-address {
    top: 0.71vw;
    font-size: 1.14vw;
  }
}
@media screen and (max-width: 999px) {
  .header-address {
    display: none;
  }
}

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

@media screen and (max-width: 767px) {
  .endoscopy__image--map {
    width: 100%;
  }
}

.ckyboss {
  font-size: 3.5rem;
  font-weight: 700;
  text-align: right;
  padding-top: 3rem;
}
.ckyboss span {
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .ckyboss span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .ckyboss {
    font-size: 2.6rem;
    padding-top: 1rem;
  }
}/*# sourceMappingURL=style.css.map */