.home_page {
  background-color: #fff5f0;
}
.home_page #mainContent {
  background-color: #fff;
}
.home_page .key {
  --height: 53.125vw;
  --min-height: 550px;
  --max-height: 1020px;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  font-size: 10px;
  background: #fff5f0;
  z-index: 10;
}
@media only screen and (min-width: 2000px) {
  .home_page .key {
    --max-height: 100vh;
    font-size: 1vmin;
  }
  .home_page .key .inner {
    max-width: 80% !important;
  }
  .home_page .key .idx_scroll {
    right: calc(100% + 1.2em);
  }
}
.home_page .key .inner {
  position: relative;
  width: 88%;
  max-width: 1378px;
}
.home_page .key .mv_slider:not(.slick-slider) {
  display: flex;
  overflow: hidden;
  opacity: 0;
}
.home_page .key .s1::before {
  background-image: url(../images/idx_key_bg01.jpg);
}
.home_page .key .slick-initialized .s2::before {
  background-image: url(../images/idx_key_bg02.jpg);
}
.home_page .key .slick-initialized .s3::before {
  background-image: url(../images/idx_key_bg03.jpg);
}
.home_page .key .key_text {
  position: relative;
  overflow: hidden;
}
.home_page .key .key_text .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 20px;
}
.home_page .key .key_text .item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  z-index: -2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 20px;
}
.home_page .key .key_text .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  z-index: -1;
  border-radius: 20px;
}
@media only screen and (min-width: 1919px) {
  .home_page .key .catch {
    padding-top: 140px;
  }
}
.home_page .key h2,
.home_page .key .jp {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.home_page .key h2 {
  font-weight: 700;
  font-size: 3.6em;
  line-height: 1.6667;
  letter-spacing: 0.12em;
  margin-bottom: 0.6111em;
}
.home_page .key .jp {
  font-size: 1.8em;
  line-height: 2;
  letter-spacing: 0.15em;
}
.home_page .key .key_list {
  position: absolute;
  bottom: 16.3em;
  left: 0;
  right: 0;
}
.home_page .key .key_list .inner {
  max-width: 1420px;
}
.home_page .key .key_list ul {
  width: 55.6em;
  height: 18em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: auto;
}
.home_page .key .key_list ul li {
  width: 9em;
  height: 9em;
  background-color: #f19975;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  padding-top: 2.2em;
  position: relative;
}
.home_page .key .key_list ul li::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx_key_icon1.png) no-repeat center/contain;
  width: 2.2em;
  height: 2.2em;
  top: 1.55em;
  left: calc(50% - 1.1em);
}
.home_page .key .key_list ul li:nth-child(2)::before {
  background-image: url(../images/idx_key_icon2.png);
}
.home_page .key .key_list ul li:nth-child(3)::before {
  background-image: url(../images/idx_key_icon3.png);
}
.home_page .key .key_banner {
  position: absolute;
  bottom: 4.4em;
  left: 4.4em;
  width: 50em;
  z-index: 10;
}
@media only screen and (min-width: 1919px) {
  .home_page .key .key_banner {
    bottom: 11.4em;
  }
}
.home_page .key .key_banner.active {
  position: fixed;
  left: 20px;
  bottom: 20px;
  width: 43em;
}
@media only screen and (min-width: 2000px) {
  .home_page .key .key_banner.active {
    left: 40px;
  }
}
.home_page .key .key_banner.active .close {
  width: 3em;
  height: 3em;
  top: -1.5em;
  left: -1.5em;
}
.home_page .key .key_banner .close {
  position: absolute;
  z-index: 1;
  width: 4.8em;
  height: 4.8em;
  background: #f19975 url(../images/idx_banner_close.png) no-repeat center/contain;
  border-radius: 50%;
  top: -2em;
  left: -2em;
  cursor: pointer;
}
@media only screen and (min-width: 769px) {
  .home_page .key .key_banner .close:hover {
    transition: 0.3s;
    background-color: var(--main-color);
  }
}
.home_page .key .key_banner a:hover {
  opacity: 1;
}
@keyframes scrollLine {
  0% {
    transform: scaleY(0);
    transform-origin: top;
  }
  50% {
    transform: scaleY(1);
    transform-origin: top;
  }
  100% {
    transform: scaleY(0);
    transform-origin: bottom;
  }
}
.home_page .idx_scroll {
  position: absolute;
  right: calc(100% + 3.1em);
  z-index: 1;
  bottom: 10em;
}
.home_page .idx_scroll a {
  display: flex;
  text-decoration: none;
  writing-mode: vertical-rl;
  text-transform: uppercase;
  color: var(--main-color);
  font-size: 1.2em;
  font-family: var(--f-en);
  font-weight: 500;
  padding-bottom: 20.3333em;
  letter-spacing: 0.2em;
}
.home_page .idx_scroll a::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 1px;
  bottom: 0;
  height: 19.4167em;
  background-color: #cbc6c5;
  left: calc(50% - 1px);
}
.home_page .idx_scroll a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: 1;
  left: calc(50% - 1px);
  background-color: #e9545d;
  height: 19.4167em;
  bottom: 0;
  width: 1px;
  animation: scrollLine 2s ease-in-out infinite;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .home_page .idx_scroll {
    right: calc(100% + 2.5em);
    font-size: 9px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .home_page .idx_scroll {
    bottom: 5em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .home_page .idx_scroll {
    right: calc(100% + 2.2em);
    font-size: 8px;
  }
}
.home_page .topic_path {
  display: none;
}
.home_page .wrap_h3.t_center {
  display: table;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.home_page .wrap_h3.t_center h3 {
  text-align: center;
}
.home_page .wrap_h3.t_center h3::after {
  margin-left: auto;
  margin-right: auto;
}
.home_page .wrap_h3.t_center .h_en {
  justify-content: center;
}
.home_page .wrap_h3.white * {
  color: #fff;
}
.home_page .wrap_h3.white .h_en::before {
  background-color: #fff;
}
.home_page .wrap_h3.white h3::after {
  background-color: #fff;
}
.home_page .h_en {
  color: var(--main-color);
  font-weight: 500;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  font-size: 16px;
  font-family: var(--f-en);
  line-height: 1.5;
  margin-bottom: 14px;
}
.home_page .h_en::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--main-color);
  margin-right: 0.6875em;
  position: relative;
  left: 0.0625em;
  top: 0.125em;
}
.home_page .h_en.white {
  color: #fff;
}
.home_page .h_en.white::before {
  background-color: #fff;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .home_page .h_en {
    letter-spacing: 0;
  }
}
.home_page h3 {
  position: relative;
  margin-bottom: 35px;
  color: var(--clr1);
  font-size: 2em;
  font-weight: 500;
  letter-spacing: 0.12em;
}
.home_page h3::after {
  content: "";
  display: block;
  width: 3.3333em;
  height: 3px;
  background-color: #8fc43c;
  border-radius: 1.5px;
  margin-top: 0.9167em;
}
.home_page h3.white {
  color: #fff;
}
.home_page h3.white::after {
  background-color: #fff;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .home_page h3 {
    font-size: 30px;
    letter-spacing: 0;
  }
}

@media only screen and (max-width: 1600px) and (min-width: 769px) and (max-height: 769px) and (orientation: landscape) {
  .home_page .key {
    font-size: min(0.625em, 1.15vmin);
    --max-height: calc(100vh - 50px);
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) and (max-height: 650px) {
  .home_page .key {
    --max-height: 605px;
  }
  .home_page .key h2 {
    letter-spacing: 0;
  }
  .home_page .key .jp {
    font-size: 16px;
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .home_page .key {
    font-size: min(0.625em, 0.9vmin);
  }
  .home_page .key .jp {
    font-size: 2.5em;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .home_page .key .key_list {
    bottom: 3.3em;
  }
  .home_page .key .key_banner.active {
    font-size: 1.25em;
  }
  .home_page .key .inner {
    padding-left: 0;
    padding-right: 0;
  }
  .home_page .key .catch h2,
  .home_page .key .catch .jp {
    letter-spacing: 0;
  }
  .home_page .key .s3::before {
    background-position: top left;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .home_page .key {
    font-size: 0.75vw;
  }
}
section {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

.idx1 {
  background-color: #fff5f0;
  padding: 72px 0 80px;
}
.idx1 .TabContainer .TabPager {
  max-width: 601px;
  width: 60%;
  margin: 8px 0 0 auto;
  justify-content: space-between;
  align-self: flex-start;
}
.idx1 .TabContainer .TabPager > div {
  background: rgba(238, 230, 227, 0.77);
  width: calc(33.3333333333% - 1px);
  padding: 0;
  margin: 0;
  transition: 0.3s all;
}
.idx1 .TabContainer .TabPager > div p {
  border: 0 !important;
  text-align: center;
  font-size: 18px;
  padding: 0.6111em 0 0.7222em;
  color: #3a3a3a;
  transition: 0.3s all;
}
.idx1 .TabContainer .TabPager > div.active {
  background: #f19975;
}
.idx1 .TabContainer .TabPager > div.active p {
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .idx1 .TabContainer .TabPager > div:hover {
    background: var(--main-color);
  }
  .idx1 .TabContainer .TabPager > div:hover p {
    color: #fff;
  }
}
.idx1 .TabContainer .TabContent {
  margin-top: -95px;
}
.idx1 .TabContainer .TabContent > .content {
  background: transparent;
}
.idx1 .left {
  width: 20%;
  max-width: 240px;
  padding-bottom: 60px;
}
.idx1 .right {
  background: #fff;
  width: 77%;
  padding: 36px 20px 60px;
  max-width: 980px;
  border-radius: 30px 0 30px 30px;
}
.idx1 ul {
  max-width: 780px;
  margin: 0 auto;
  width: 100%;
}
.idx1 ul li a {
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #e3d7d7;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  font-size: 16px;
  align-items: center;
  position: relative;
}
.idx1 ul li a::before, .idx1 ul li a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 1.5em;
  height: 1.5em;
  right: 0;
  top: calc(50% - 0.75em);
}
.idx1 ul li a::before {
  background-color: #fafafa;
  border-radius: 50%;
}
.idx1 ul li a::after {
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: url(../images/idx1_arr.png);
  background-color: #a89990;
}
.idx1 ul li a:hover {
  opacity: 1;
}
.idx1 ul li a .date {
  font-family: var(--f-en);
  color: #6e6e6e;
  width: 6.9375em;
}
.idx1 ul li a .cat {
  width: 7.5em;
  border-radius: 18px;
  color: #fff;
  text-align: center;
  padding: 0.375em 0;
  background-color: #ffd35d;
}
.idx1 ul li a .title {
  color: #3a3a3a;
  font-size: 1.125em;
  width: calc(100% - 6.1667em - 6.6667em);
  padding: 0 1.1111em 0 1.7778em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media only screen and (min-width: 769px) {
  .idx1 ul li a:hover {
    background-color: #ffd35d;
    padding-left: 3px;
  }
  .idx1 ul li a:hover::before {
    background-color: #ffd35d;
  }
  .idx1 ul li a:hover::after {
    background-color: #fff;
  }
  .idx1 ul li a:hover .date,
  .idx1 ul li a:hover .cat,
  .idx1 ul li a:hover .title {
    color: #fff;
  }
}
.idx1 ul li.column a .cat {
  background-color: #8fc43c;
}
@media only screen and (min-width: 769px) {
  .idx1 ul li.column a:hover {
    background-color: #8fc43c;
  }
  .idx1 ul li.column a:hover::before {
    background-color: #8fc43c;
  }
  .idx1 ul li.column a:hover::after {
    background-color: #fff;
  }
  .idx1 ul li.column a:hover .date,
  .idx1 ul li.column a:hover .cat,
  .idx1 ul li.column a:hover .title {
    color: #fff;
  }
}
.idx1 .btn-group .btn:last-child {
  margin-top: 17px;
}
@media only screen and (min-width: 769px) {
  .idx1 .left {
    align-self: flex-end;
  }
  .idx1 .idx1_tab {
    min-height: 351px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx1 {
    padding: 80px 0 60px;
  }
  .idx1 .left {
    padding-bottom: 40px;
  }
  .idx1 .TabContainer .TabPager > div p {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx1 .TabContainer .TabContent {
    margin-top: -85px;
  }
  .idx1 ul li a {
    font-size: 14px;
    letter-spacing: 0;
  }
  .idx1 ul li a .title {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx1 .right {
    align-self: flex-start;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx1 {
    padding: 60px 0 40px;
  }
  .idx1 .TabContainer .TabContent {
    margin-top: -88px;
  }
  .idx1 ul li a .date {
    width: 6em;
  }
  .idx1 .right {
    align-self: flex-start;
    border-radius: 30px;
    width: 71%;
  }
}

.idx2 {
  background-image: url(../images/idx2_bg.jpg);
  padding: 120px 0;
}
.idx2 .btn-group {
  display: flex;
  justify-content: center;
  margin-top: 53px;
}
.idx2 .btn-group .btn {
  max-width: 270px;
}
.idx2 .idx2_logo {
  display: table;
  margin: 26px auto 17px;
}
.idx2 .idx2_logo a:hover {
  opacity: 1;
}
.idx2 .right,
.idx2 .left {
  width: 48%;
  max-width: 610px;
}
.idx2 .idx2_img img {
  border-radius: 30px;
}
.idx2 .shared_tbl {
  margin-top: 45px;
}
.idx2 .idx2_map {
  height: 300px;
  margin-top: 46px;
}
.idx2 .idx2_map iframe {
  display: block;
  border-radius: 30px 30px 0 0;
}
.idx2 .idx2_list {
  background-color: #fff;
  border-radius: 0 0 30px 30px;
  padding: 1.34em 0.5556em 1.3333em 1.9444em;
  justify-content: space-between;
}
.idx2 .idx2_list .item {
  width: 44%;
  display: flex;
  align-items: center;
}
.idx2 .idx2_list .item::before {
  content: "";
  display: block;
  background: #8fc43c url(../images/idx2_icon1.png) no-repeat center/contain;
  min-width: 2.6111em;
  min-height: 2.6111em;
  border-radius: 50%;
  margin-right: 1em;
}
.idx2 .idx2_list .item p {
  line-height: 1.625;
  color: #8fc43c;
  font-weight: 500;
  font-size: 0.8889em;
  letter-spacing: 0.05em;
}
.idx2 .idx2_list .item p span {
  display: block;
}
.idx2 .idx2_list .item:last-child {
  width: 52.8%;
}
.idx2 .idx2_list .item:last-child::before {
  background-image: url(../images/idx2_icon2.png);
}
@media only screen and (min-width: 1919px) {
  .idx2 .idx_tel {
    position: relative;
    left: 14px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx2 {
    padding: 80px 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx2 {
    padding: 60px 0;
  }
  .idx2 .idx2_list .item {
    width: 100%;
    max-width: 100%;
  }
  .idx2 .idx2_list .item:last-child {
    width: 100%;
    max-width: 100%;
    margin-top: 15px;
  }
  .idx2 .idx2_list .item p {
    font-size: 14px;
  }
}

.idx_ins {
  padding: 64px 0 856px;
  background-image: url(../images/idx_ins_bg.jpg);
}
@media only screen and (min-width: 2000px) {
  .idx_ins {
    padding-bottom: 44.5833333333vw;
  }
}
.idx_ins h3 {
  margin: 0;
  padding: 0;
  font-family: var(--f-en);
  color: #f19975;
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
}
.idx_ins h3::after {
  display: none;
}
.idx_ins h3::before {
  content: "";
  display: block;
  background: url(../images/idx_ins_icon.png) no-repeat center/contain;
  width: 2.2222em;
  height: 2.2222em;
  margin-right: 0.5833em;
  position: relative;
  top: 0.1944em;
}
.idx_ins .btn-group {
  align-self: flex-start;
  width: 297px;
  margin-top: 17px;
}
.idx_ins .btn-group .btn a {
  border: 1px solid #f19975;
  min-height: 60px;
}
.idx_ins picture {
  padding: 45px 0 0;
}
.idx_ins div img {
  border-radius: 10px !important;
}

.idx3 {
  position: relative;
  z-index: 1;
  margin-top: -776px;
  padding: 180px 0 750px;
}
@media only screen and (min-width: 2000px) {
  .idx3 {
    padding-top: 10vw;
    margin-top: -40.4166666667vw;
  }
}
.idx3 .inner_big {
  position: relative;
}
.idx3::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='1920px' height='1599px'%3E%3Cpath fill-rule='evenodd' fill='rgb(241, 153, 117)' d='M0.000,-0.001 L0.000,1598.999 L1919.1000,1598.999 L1919.1000,612.806 C1513.612,269.398 811.411,32.352 0.000,-0.001 Z'/%3E%3C/svg%3E");
  background: url(../images/idx3_bg.jpg) no-repeat top center/cover;
}
.idx3 .left {
  max-width: 750px;
  width: 59%;
}
.idx3 .txt {
  background-color: #fff;
  border-radius: 80px;
  margin-top: 55px;
  padding: 83px 71px 81px 79px;
}
.idx3 .txt p {
  color: #888888;
}
.idx3 .right {
  position: absolute;
  left: 43.7%;
  z-index: -1;
  width: 908px;
  top: -16.6%;
}
.idx3 .img img {
  border-radius: 50%;
}
.idx3 .idx3_name {
  position: absolute;
  top: 19.2%;
  right: 24.3%;
  display: flex;
  align-items: center;
  font-size: 10px;
}
.idx3 .idx3_name p {
  line-height: 1;
  margin: 0;
  color: #444846;
  writing-mode: vertical-rl;
}
.idx3 .idx3_name .jp {
  font-size: 3.4em;
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #444846;
}
.idx3 .idx3_name .jp .pos {
  font-size: 0.5882em;
  letter-spacing: 0.18em;
  margin-bottom: 0.6em;
}
@-moz-document url-prefix() {
  .idx3 .idx3_name .jp .pos {
    position: relative;
    left: -6px;
  }
}
.idx3 .idx3_name .en {
  color: #8fc43c;
  text-transform: uppercase;
  font-size: 1.6em;
  font-weight: 500;
  font-family: var(--f-en);
  border-right: 1px solid;
  align-self: center;
  padding: 3.6875em 0.875em 3.625em 0;
  letter-spacing: 0.21em;
  margin-right: 1.0625em;
  position: relative;
  top: -0.125em;
}
@media only screen and (min-width: 769px) {
  .idx3 .wrap_h3 {
    display: flex;
    align-items: flex-start;
  }
  .idx3 .wrap_h3 h3 {
    margin-left: -0.1667em;
  }
  .idx3 .wrap_h3 h3::after {
    margin-left: 0.1111em;
    margin-top: 0.8889em;
  }
  .idx3 .wrap_h3 .h_en {
    order: 1;
    margin-left: 1em;
    margin-top: 1em;
  }
}
@media only screen and (min-width: 769px) and (min-width: 1919px) {
  .idx3 .btn-group .btn a {
    padding-left: 1.8em;
  }
  .idx3 .btn-group .btn:last-child a {
    padding-left: 1.6em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1700px) {
  .idx3 .right {
    width: 50vw;
    top: calc(50% - 20vw);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx3 {
    padding-top: 80px;
    padding-bottom: 680px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1300px) {
  .idx3 .right {
    left: 46%;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx3 {
    padding: 80px 0 200px;
  }
  .idx3 .idx3_name {
    top: 10%;
    right: 20%;
    font-size: 8px;
  }
  .idx3 .txt {
    padding: 40px 20px;
    margin-top: 25px;
  }
  .idx3 .right {
    top: calc(50% - 17vw);
  }
}

.idx4 {
  position: relative;
  z-index: 2;
  margin-top: -502px;
  padding: 112px 0 120px;
}
.idx4::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='477px' height='453px'%3E%3Cpath fill-rule='evenodd' opacity='0.259' fill='rgb(255, 255, 255)' d='M475.569,174.227 C471.786,210.347 460.825,242.715 440.759,274.927 C446.683,273.492 452.941,271.364 459.618,268.527 C465.325,266.107 471.856,268.803 474.263,274.473 C476.669,280.210 473.988,286.779 468.350,289.197 C453.224,295.627 439.405,299.084 426.548,299.568 L426.479,299.568 C425.505,299.604 424.538,299.618 423.575,299.618 C412.772,313.693 400.167,327.911 385.571,342.570 C348.582,379.764 267.797,446.340 241.052,452.493 L241.052,452.839 C240.640,452.909 240.090,452.977 239.540,452.977 L239.471,452.977 C239.471,452.977 238.784,452.977 238.440,452.977 C237.477,453.045 236.584,452.977 235.827,452.907 L235.827,452.561 C209.151,446.409 128.366,379.833 91.377,342.638 C34.725,285.602 7.842,235.273 1.448,174.227 C-7.902,85.045 28.193,23.169 100.521,4.571 C169.687,-13.264 218.020,25.520 238.509,46.813 C258.928,25.451 307.262,-13.264 376.496,4.571 C448.755,23.169 484.851,85.045 475.569,174.227 ZM369.758,30.498 C294.886,11.278 251.090,72.393 249.303,75.020 C246.828,78.615 242.703,81.035 238.371,80.689 C234.040,80.689 229.983,78.546 227.508,74.950 C225.927,72.739 192.994,26.765 135.792,26.765 L135.860,26.695 C126.854,26.695 117.297,27.802 107.122,30.429 C27.505,50.962 23.312,127.562 27.918,171.463 C33.624,225.872 58.238,271.430 110.215,323.696 C160.268,374.025 223.039,418.272 238.440,425.739 C253.841,418.203 316.612,374.025 366.664,323.696 C376.910,313.407 386.077,303.380 394.261,293.492 C379.169,286.786 365.451,274.550 352.501,256.636 C350.232,253.525 348.032,250.345 345.832,246.957 C340.194,252.626 334.213,257.880 327.888,262.720 C299.905,283.944 270.616,291.894 245.246,285.118 C232.183,281.593 198.357,269.910 174.293,238.660 C155.317,264.378 132.835,276.616 105.815,275.647 C99.627,275.440 94.815,270.255 95.021,264.033 C95.227,257.812 100.315,253.041 106.572,253.179 C127.679,253.940 145.829,242.256 161.436,217.782 C156.624,207.688 152.774,196.213 150.505,183.146 C147.617,166.209 147.548,147.818 150.436,132.540 C153.392,116.916 163.361,106.338 177.181,104.264 C189.488,102.397 202.345,108.136 207.501,117.883 C217.126,136.135 208.739,164.963 205.920,173.399 C200.213,190.405 194.025,205.268 187.219,217.920 C207.088,249.031 239.265,260.230 251.022,263.411 C276.048,270.117 301.486,254.630 314.412,244.744 C321.494,239.352 328.231,233.130 334.350,226.493 C331.325,219.995 328.713,212.874 326.719,205.130 C320.531,181.003 321.150,152.796 328.163,133.162 C333.731,117.608 344.044,107.582 355.664,106.269 C364.670,105.232 373.127,109.795 378.765,118.713 C387.565,132.609 388.596,153.764 388.390,165.102 C388.046,184.390 377.665,208.034 361.164,229.465 C364.258,234.513 367.489,239.144 370.583,243.431 C382.744,260.261 394.893,270.560 408.646,274.816 C432.569,241.200 445.138,208.367 448.962,171.463 C453.568,127.562 449.374,50.962 369.758,30.498 ZM366.114,164.756 C366.320,150.168 363.983,137.172 359.995,130.811 C358.826,129.014 358.070,128.668 358.001,128.668 L358.001,128.599 C356.970,128.668 352.432,131.779 349.201,140.836 C343.701,156.253 343.357,179.827 348.376,199.600 C348.926,201.881 349.613,204.024 350.301,206.167 C359.926,191.512 365.908,176.578 366.114,164.756 ZM180.275,126.456 C176.150,127.216 173.537,130.673 172.368,136.619 C169.962,149.339 170.031,164.895 172.506,179.205 C173.262,183.423 174.156,187.363 175.256,191.166 C178.556,183.560 181.719,175.195 184.744,166.139 C189.969,150.445 191.275,134.890 187.769,128.323 C187.288,127.562 184.812,126.179 181.650,126.248 L181.719,126.317 C181.237,126.317 180.756,126.317 180.275,126.456 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 47.7em;
  height: 45.3em;
  top: 4.8em;
  left: 2.8em;
  font-size: min(1vw, 10px);
}
@media only screen and (min-width: 2000px) {
  .idx4::before {
    left: 33vw;
  }
}
.idx4::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  right: unset;
  width: 93.2291666667vw;
  z-index: -2;
  background: url(../images/idx4_bg.jpg) no-repeat top center/cover;
  border-radius: 0 80px 80px 0;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx4::after {
    width: calc(100vw - 60px);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .idx4::after {
    width: calc(100vw - 35px);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx4::after {
    width: calc(100vw - 25px);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1280px) {
  .idx4::after {
    width: calc(100vw - 20px);
  }
}
.idx4 .btn-group {
  align-self: center;
  margin-top: 22px;
  max-width: 290px;
  width: 30%;
}
.idx4 .idx4_list {
  margin-top: 45px;
}
.idx4 .idx4_list .item {
  background-color: #fff;
  position: relative;
  padding: 42px 0;
  width: calc(25% - 12px);
  z-index: 1;
  box-shadow: 0px 0px 40px 0px rgba(191, 84, 40, 0.2);
}
.idx4 .idx4_list .item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  z-index: -1;
}
.idx4 .idx4_list .item:first-child {
  border-radius: 40px 0 0 40px;
}
.idx4 .idx4_list .item:last-child {
  border-radius: 0 40px 40px 0;
}
.idx4 .idx4_list .item .img {
  display: table;
  margin: 0 auto 24px;
}
.idx4 .idx4_list .item .img img {
  border-radius: 50%;
}
.idx4 .idx4_list .item .ttl1 {
  letter-spacing: 0.05em;
  color: #444846;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  line-height: 1.5;
}
.idx4 .idx4_list .item .ttl1 .num {
  display: block;
  font-size: 30px;
  font-family: var(--f-en);
  letter-spacing: 0.05em;
  font-weight: 700;
  color: var(--clr2);
  text-align: center;
  line-height: 1;
  margin-bottom: 12px;
}
.idx4 .idx4_list .item .ttl2 {
  font-size: 16px;
  color: #888888;
  margin: 0 auto;
  max-width: calc(100% - 40px);
}
.idx4 .idx4_list .item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  border-left: 1.1em solid #fff;
  border-bottom: 1.2em solid transparent;
  border-top: 1.2em solid transparent;
  top: calc(50% - 1.2em);
  left: 100%;
  font-size: 10px;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx4 {
    padding: 80px 0;
  }
  .idx4 .idx4_list .item {
    padding: 25px 0;
  }
  .idx4 .idx4_list .item .ttl1 {
    font-size: 18px;
  }
  .idx4 .idx4_list .item .ttl1 .num {
    font-size: 24px;
  }
  .idx4 .idx4_list .item .ttl2 {
    max-width: calc(100% - 40px);
    letter-spacing: 0;
    font-size: 14px;
  }
  .idx4 .idx4_list .item .img {
    max-width: 140px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx4 {
    margin-top: -120px;
  }
  .idx4 .idx4_list .item:not(:last-child)::after {
    font-size: 8px;
  }
  .idx4 .idx4_list .item {
    width: calc(25% - 8px);
  }
  .idx4 .idx4_list .item .ttl1 {
    letter-spacing: 0;
  }
  .idx4 .idx4_list .item .ttl2 {
    max-width: calc(100% - 20px);
  }
  .idx4 .idx4_list .item .img {
    max-width: 120px;
  }
}

.idx5 {
  padding: 112px 0 122px;
}
.idx5 .idx5_list {
  margin-top: 45px;
}
.idx5 .idx5_list .item {
  display: grid;
  grid-template-columns: 54.1666666667% 45.1388888889%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
}
.idx5 .idx5_list .item picture {
  grid-row: 1/span 2;
}
.idx5 .idx5_list .item picture img {
  border-radius: 60px;
}
.idx5 .idx5_list .item picture {
  position: relative;
  z-index: 1;
}
.idx5 .idx5_list .item picture::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background-color: #e8ccc0;
  max-width: 754px;
  max-height: 608px;
  width: 84%;
  height: 103%;
  left: -10%;
  bottom: -12%;
  opacity: 0.2;
  border-radius: 0 0 60px 0;
}
.idx5 .idx5_list .item:last-child {
  grid-template-columns: 45.1388888889% 63.2%;
}
.idx5 .idx5_list .item:last-child picture {
  grid-column-start: 2;
  margin-left: auto;
}
.idx5 .idx5_list .item:last-child picture::before {
  left: unset;
  right: -10%;
  border-radius: 0 0 0 60px;
  width: 100%;
}
.idx5 .idx5_list .item .ttl {
  font-size: 36px;
  line-height: 1.5;
  letter-spacing: 0.12em;
  font-weight: 500;
  color: #444846;
  margin: auto 0 31px;
}
.idx5 .idx5_list .item .btn-group {
  margin-top: 42px;
  margin-bottom: 12px;
}
.idx5 .idx5_list .item1 {
  margin-bottom: 123px;
}
.idx5 .idx5_banner {
  margin-top: 37px;
  display: table;
}
.idx5 .idx5_banner a:hover {
  opacity: 1;
}
@media only screen and (min-width: 769px) {
  .idx5 .btn-group.col2 .btn {
    width: calc(50% - 5px);
    min-width: auto;
  }
}
@media only screen and (min-width: 1919px) {
  .idx5 .idx5_list .item1 {
    justify-content: flex-start;
  }
  .idx5 .idx5_list .item2 .ttl {
    padding-top: 109px;
  }
  .idx5 .idx5_list .item2 .btn-group.col2 {
    width: 660px;
    max-width: unset;
  }
  .idx5 .idx5_list .item2 .btn-group.col2 .btn {
    max-width: 100%;
  }
  .idx5 .idx5_list .item2 .ttl,
  .idx5 .idx5_list .item2 .txt {
    position: relative;
    left: 5px;
  }
  .idx5 .idx5_list .item picture {
    margin-left: -120px;
  }
  .idx5 .idx5_list .item picture::before {
    left: -13.3%;
    bottom: -20.6%;
  }
  .idx5 .idx5_list .item:last-child picture::before {
    right: -15.4%;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx5 .idx5_list .item {
    grid-template-columns: 50% 45%;
  }
  .idx5 .idx5_list .item:last-child {
    grid-template-columns: 45% 50%;
  }
  .idx5 .idx5_list .item .ttl {
    letter-spacing: 0;
  }
  .idx5 .idx5_list .item .txt p {
    letter-spacing: 0;
  }
  .idx5 .idx5_list .item:first-child .txt {
    padding-right: 60px;
  }
  .idx5 .btn-group .btn:last-child a span {
    display: block;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx5 {
    padding: 80px 0;
  }
  .idx5 .idx5_list .item {
    grid-template-columns: 55% 40%;
  }
  .idx5 .idx5_list .item picture {
    padding-left: 40px;
  }
  .idx5 .idx5_list .item:last-child {
    grid-template-columns: 40% 55%;
  }
  .idx5 .idx5_list .item:last-child picture {
    padding-left: 0px;
    padding-right: 40px;
  }
  .idx5 .idx5_list .item .ttl {
    letter-spacing: 0;
    font-size: 28px;
    margin-bottom: 15px;
  }
  .idx5 .idx5_list .item .txt p {
    letter-spacing: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx5 .idx5_list .item:first-child .txt {
    padding-right: 40px;
  }
}

.idx6 {
  position: relative;
  z-index: 1;
  padding: 112px 0 120px;
}
.idx6::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  mask-size: cover;
  mask-repeat: no-repeat;
  mask-position: top center;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='1920px' height='1288px'%3E%3Cpath fill-rule='evenodd' fill='rgb(241, 153, 117)' d='M0.000,1288.000 L1919.1000,1288.000 L1919.1000,287.1000 L0.000,287.1000 L0.000,1288.000 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(241, 153, 117)' d='M1920.002,151.925 C1666.407,57.420 1334.015,-0.009 969.790,-0.009 C596.214,-0.009 255.897,60.300 -0.014,159.178 L-0.014,446.993 L1920.002,446.993 L1920.002,151.925 Z'/%3E%3C/svg%3E");
  background: url(../images/idx6_bg.jpg) no-repeat top center/cover;
}
.idx6 .idx6_tab_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1120px;
  width: 90%;
  margin: 45px auto 0;
  position: relative;
  z-index: 5;
}
.idx6 .idx6_tab_list .item {
  cursor: pointer;
  padding: 0;
  width: calc(33.3333333333% - 1px);
  max-width: 372px;
  background: transparent;
  transition: 0.3s all;
  border-radius: 10px 10px 0 0;
}
.idx6 .idx6_tab_list .item p {
  border: 0 !important;
  padding: 20px 0 22px;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 0.125em;
  transition: 0.3s all;
}
.idx6 .idx6_tab_list .item p::before {
  content: "";
  display: block;
  width: 1.6667em;
  height: 1.6667em;
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: #fff;
  margin-right: 0.6667em;
  position: relative;
  top: 0.0417em;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx6 .idx6_tab_list .item:not(.active):hover {
    background: #fff !important;
  }
  .idx6 .idx6_tab_list .item:not(.active):hover p {
    color: var(--clr) !important;
  }
  .idx6 .idx6_tab_list .item:not(.active):hover p::before {
    background-color: var(--clr) !important;
  }
}
.idx6 .idx6_tab_list .item:first-child {
  --clr: #e9545d;
  background: var(--clr);
}
.idx6 .idx6_tab_list .item:first-child p::before {
  mask-image: url(../images/idx6_menu1.png);
}
.idx6 .idx6_tab_list .item:nth-child(2) {
  --clr: #8fc43c;
  background: var(--clr);
}
.idx6 .idx6_tab_list .item:nth-child(2) p::before {
  mask-image: url(../images/idx6_menu2.png);
}
.idx6 .idx6_tab_list .item:last-child {
  --clr: #ffd35d;
  background: var(--clr);
}
.idx6 .idx6_tab_list .item:last-child p::before {
  mask-image: url(../images/idx6_menu3.png);
}
.idx6 .idx6_tab_list .item.active {
  background: #fff;
}
.idx6 .idx6_tab_list .item.active p {
  color: var(--clr);
}
.idx6 .idx6_tab_list .item.active p::before {
  background-color: var(--clr);
}
.idx6 .idx6_tab_list_content {
  box-shadow: 0px 0px 146px 0px rgba(191, 84, 40, 0.2);
  background: #fff;
  border-radius: 20px;
  padding: 0;
}
.idx6 .idx6_tab_content {
  display: none;
}
.idx6 .idx6_tab_content.active {
  display: block;
}
.idx6 .TabContainer .TabPager {
  max-width: 556px;
  width: 100%;
  margin: 0 auto;
  justify-content: space-between;
  --clr: #8fc43c;
  --clr_hover: var(--main-color);
}
.idx6 .TabContainer .TabPager > div {
  margin: 0;
  width: calc(50% - 4px);
  max-width: 274px;
  background: #cacaca;
  padding: 0;
  border-radius: 5px;
}
.idx6 .TabContainer .TabPager > div p {
  border: 0 !important;
  line-height: 1.5;
  text-align: center;
  padding: 16px 0 17px;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.idx6 .TabContainer .TabPager > div.active {
  background-color: var(--clr);
}
@media only screen and (min-width: 769px) {
  .idx6 .TabContainer .TabPager > div:not(.active):hover {
    background: var(--clr_hover);
  }
}
.idx6 .TabContainer .TabContent .content {
  background: transparent;
}
.idx6 .idx6_tab {
  padding: 80px 20px;
}
.idx6 .idx6_tab.idx6_tab2 {
  padding-top: 54px;
  padding-bottom: 54px;
}
.idx6 .idx6_list {
  max-width: 1120px;
  margin: 0 auto;
  gap: 10px;
  justify-content: center;
}
.idx6 .idx6_list .item {
  width: calc(33.3333333333% - 5px);
  max-width: 366px;
  background-color: #f9f7f3;
  border-radius: 10px;
  position: relative;
  border: 1px solid #f4e7e2;
  padding: 38px 0 46px;
  z-index: 1;
  transition: 0.3s all;
  --clr: #e9545d;
}
.idx6 .idx6_list .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx6_arr.png);
  background-color: var(--clr);
  width: 1.6em;
  height: 1.1em;
  bottom: 1.8em;
  right: 2em;
  font-size: 10px;
}
.idx6 .idx6_list .item picture {
  display: table;
  margin: 0 auto 2px;
}
.idx6 .idx6_list .item .ttl {
  text-align: center;
  line-height: 1.5;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #444846;
}
.idx6 .idx6_list .item .ttl .en {
  display: block;
  text-align: center;
  color: #e9545d;
  letter-spacing: 0.1em;
  font-size: 12px;
  font-family: var(--f-en);
  text-transform: uppercase;
  margin-top: 6px;
}
.idx6 .idx6_list .item .ttl .jp {
  display: inline-block;
}
@media only screen and (min-width: 769px) {
  .idx6 .idx6_list .item:hover {
    background-color: #fff;
    border-color: var(--clr);
    box-shadow: 0px 10px 26.7px 3.3px rgba(88, 80, 65, 0.09);
  }
}
.idx6 .idx6_list.green .item {
  --clr: #8fc43c;
}
.idx6 .idx6_list.green .item::after {
  background-color: var(--clr);
}
.idx6 .idx6_list.green .item .en {
  color: var(--clr);
}
.idx6 .idx6_list.yellow .item {
  --clr: #f4c33d;
}
.idx6 .idx6_list.yellow .item::after {
  background-color: var(--clr);
}
.idx6 .idx6_list.yellow .item .en {
  color: var(--clr);
}
.idx6 .idx6_list2 {
  gap: 8px;
}
.idx6 .idx6_list2 .item {
  width: calc(25% - 4px);
  max-width: 274px;
}
.idx6 .idx6_tab_small {
  padding: 47px 0 0;
}
.idx6 .tab3 .TabContainer .TabPager {
  --clr: #f4c33d;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx6 {
    padding: 80px 0;
  }
  .idx6 .idx6_tab_list {
    margin-top: 25px;
  }
  .idx6 .idx6_tab_list .item p {
    font-size: 20px;
    letter-spacing: 0;
  }
  .idx6 .TabContainer .TabPager > div p {
    letter-spacing: 0;
    font-size: 16px;
    padding: 1em 0;
  }
  .idx6 .idx6_list .item {
    padding: 30px 0;
  }
  .idx6 .idx6_list .item picture {
    max-width: 60px;
  }
  .idx6 .idx6_list .item .ttl {
    font-size: 18px;
    letter-spacing: 0;
  }
  .idx6 .idx6_list .item .ttl .en {
    letter-spacing: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx6 {
    padding: 80px 0;
  }
  .idx6 .idx6_tab_list {
    margin-top: 25px;
  }
  .idx6 .idx6_tab_list .item p {
    font-size: 18px;
    letter-spacing: 0;
  }
  .idx6 .idx6_tab {
    padding: 40px 20px;
  }
  .idx6 .idx6_tab.idx6_tab2 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .idx6 .idx6_tab_small {
    padding-top: 40px;
  }
  .idx6 .idx6_list {
    gap: 4px;
  }
  .idx6 .idx6_list .item {
    padding: 25px 0;
    width: calc(33.3333333333% - 4px);
  }
  .idx6 .idx6_list .item::after {
    font-size: 9px;
    bottom: 8px;
    right: 8px;
  }
  .idx6 .idx6_list .item picture {
    max-width: 60px;
  }
  .idx6 .idx6_list .item .ttl {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx6 .idx6_list .item .ttl .en {
    letter-spacing: 0;
    font-size: 10px;
  }
  .idx6 .idx6_list.idx6_list2 {
    gap: 4px;
  }
  .idx6 .idx6_list.idx6_list2 .item {
    width: calc(25% - 4px);
  }
}

.idx7 {
  background-image: url(../images/idx7_bg.jpg);
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
}
.idx7 .inner_big {
  position: relative;
  z-index: 1;
  padding-top: 112px;
  padding-bottom: 109px;
}
.idx7 .txt {
  max-width: 670px;
  margin: 68px 0 46px;
  width: 60%;
}
.idx7 .btn-group.col2 {
  margin: 0;
  max-width: 530px;
  width: 50%;
}
@media only screen and (min-width: 769px) {
  .idx7 .btn-group.col2 .btn {
    margin-bottom: 11px;
    width: calc(50% - 5px);
    min-width: auto;
  }
}
.idx7 .idx7_en {
  color: #f1ece9;
  font-size: 120px;
  letter-spacing: 0.111em;
  font-family: var(--f-en);
  text-align: right;
  position: absolute;
  right: -0.67em;
  bottom: -0.4083em;
  text-transform: uppercase;
  z-index: -1;
  white-space: nowrap;
  line-height: 1.1666666667;
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .idx7 .idx7_en {
    right: -0.25em;
    letter-spacing: 0.08em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx7 h3 {
    margin-bottom: 0;
  }
  .idx7 .idx7_en {
    font-size: 108px;
    right: 0.5em;
  }
  .idx7 .txt {
    margin: 30px 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx7 {
    padding: 80px 0;
  }
  .idx7 .idx7_en {
    font-size: 10vw;
    right: 0.5em;
    bottom: 0;
  }
}

.idx8 {
  padding: 123px 0 120px;
  background-image: url(../images/idx8_bg.jpg);
}
.idx8 .idx8_en {
  line-height: 1;
  text-align: center;
  color: rgba(255, 228, 156, 0.588);
  text-transform: uppercase;
  font-size: min(10vw, 150px);
  letter-spacing: 0.115em;
}
.idx8 h3 {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: -2.1667em 0 0 0;
  color: #fff;
  line-height: 1.3888888889;
}
.idx8 h3::after {
  display: none;
}
.idx8 h3::before {
  content: "";
  display: block;
  background: url(../images/idx8_num.png) no-repeat center/contain;
  width: 4.3056em;
  height: 4.3056em;
}
.idx8 h3 .jp {
  margin-bottom: 0.5278em;
  margin-left: -0.3333em;
  position: relative;
}
.idx8 h3 .jp::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  top: calc(100% + 0.2778em);
  height: 0.0278em;
  width: 1.3889em;
  left: 0.1111em;
  background-color: #fff;
}
@media only screen and (min-width: 1919px) {
  .idx8 h3 {
    position: relative;
    left: -31px;
  }
}
.idx8 .idx8_list {
  margin-top: 95px;
  counter-reset: count;
  align-items: flex-start;
}
.idx8 .idx8_list .item {
  align-self: flex-start;
  width: calc(50% - 40px);
  padding: 60px 0 0;
  position: relative;
  z-index: 1;
}
.idx8 .idx8_list .item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  background: rgba(255, 255, 255, 0.902);
  border-radius: 20px;
  right: 53px;
}
.idx8 .idx8_list .item .img {
  max-width: 90%;
  margin-left: auto;
  position: relative;
}
.idx8 .idx8_list .item .img::after {
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  position: absolute;
  bottom: -0.2917em;
  right: 0.4583em;
  color: #ffd35d;
  font-size: 120px;
  letter-spacing: 0.02em;
  font-family: var(--f-en);
}
.idx8 .idx8_list .item .img img {
  border-radius: 20px;
  box-shadow: 0px 0px 146px 0px rgba(191, 84, 40, 0.2);
}
.idx8 .idx8_list .item .txt {
  padding: 52px 80px 69px;
}
.idx8 .idx8_list .item .ttl1 {
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.7857142857;
  color: #444846;
}
.idx8 .idx8_list .item .ttl2 {
  color: #888888;
}
@media only screen and (min-width: 1919px) {
  .idx8 .idx8_list .item .ttl2 {
    width: 95%;
  }
}
.idx8 .btn-group {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .idx8 .idx8_list .item2 {
    margin-top: 60px;
  }
  .idx8 .idx8_list .item3 {
    margin-top: 20px;
  }
  .idx8 .idx8_list .item4 {
    margin-top: 80px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx8 {
    padding: 80px 0;
  }
  .idx8 .idx8_list {
    margin-top: 65px;
  }
  .idx8 .idx8_list .item {
    width: calc(50% - 20px);
    padding: 40px 0 0;
  }
  .idx8 .idx8_list .item::before {
    right: 40px;
  }
  .idx8 .idx8_list .item .img {
    max-width: calc(100% - 40px);
    margin-left: 40px;
  }
  .idx8 .idx8_list .item .img::after {
    font-size: 100px;
  }
  .idx8 .idx8_list .item .img img {
    width: 100%;
  }
  .idx8 .idx8_list .item .txt {
    padding: 40px;
  }
  .idx8 .idx8_list .item .ttl1 {
    font-size: 24px;
    letter-spacing: 0;
  }
  .idx8 .idx8_list .item .ttl2 {
    letter-spacing: 0;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx8 {
    padding: 60px 0;
  }
  .idx8 .idx8_en {
    font-size: 13vw;
  }
  .idx8 .idx8_list {
    margin-top: 35px;
  }
  .idx8 .idx8_list .item {
    width: calc(50% - 10px);
    padding: 20px 0 0;
  }
  .idx8 .idx8_list .item::before {
    right: 20px;
  }
  .idx8 .idx8_list .item .img {
    max-width: calc(100% - 20px);
    margin-left: 20px;
  }
  .idx8 .idx8_list .item .img::after {
    font-size: 80px;
  }
  .idx8 .idx8_list .item .img img {
    width: 100%;
  }
  .idx8 .idx8_list .item .txt {
    padding: 20px;
  }
  .idx8 .idx8_list .item .ttl1 {
    font-size: 20px;
    letter-spacing: 0;
  }
  .idx8 .idx8_list .item .ttl2 {
    padding-right: 10px;
  }
}

.idx9 {
  padding: 112px 0 358px;
  background-image: url(../images/idx9_bg.jpg);
}
.idx9 .inner {
  max-width: 1040px;
}
.idx9 .idx9_list {
  margin-top: 46px;
}
.idx9 .idx9_list .box {
  background-color: #fff;
  border-radius: 50px;
}
.idx9 .idx9_list .box:not(:last-child) {
  margin-bottom: 30px;
}
.idx9 .idx9_list .box h4 {
  font-size: 22px;
  font-weight: 500;
  color: #444846;
  line-height: 1.5;
  letter-spacing: 0.05em;
  transition: 0.3s all;
}
.idx9 .idx9_list .box .accBtn {
  padding: 3.3em 10.8em 3.4em;
  position: relative;
  cursor: pointer;
  font-size: 10px;
  transition: 0.3s all;
  border-radius: 50px;
}
.idx9 .idx9_list .box .accBtn::before {
  position: absolute;
  content: "Q";
  left: 1.125em;
  color: #f19975;
  line-height: 1;
  font-size: 4em;
  top: 0.6em;
  font-weight: 500;
  transition: 0.3s all;
}
.idx9 .idx9_list .box .accBtn::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 7em;
  height: 7em;
  background: #fff5f0 url(../images/idx9_plus.png) no-repeat center/contain;
  right: 1.5em;
  top: 1.5em;
  border-radius: 50%;
}
.idx9 .idx9_list .box .accBtn.rotate::after {
  background-image: url(../images/idx9_minus.png);
}
@media only screen and (min-width: 769px) {
  .idx9 .idx9_list .box .accBtn:hover {
    background-color: #f19975;
  }
  .idx9 .idx9_list .box .accBtn:hover::before {
    color: #fff;
  }
  .idx9 .idx9_list .box .accBtn:hover h4 {
    color: #fff;
  }
}
.idx9 .idx9_list .box .content {
  padding: 0 150px 40px 110px;
  position: relative;
}
.idx9 .idx9_list .box .content::before {
  position: absolute;
  content: "A";
  left: 1.2em;
  color: #8fc43c;
  line-height: 1;
  font-size: 40px;
  top: 0.1em;
  font-weight: 500;
  letter-spacing: 0;
}
.idx9 .idx9_list .box .content p {
  color: #888888;
}
.idx9 .btn-group {
  margin-top: 80px;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx9 {
    padding-top: 80px;
  }
  .idx9 .idx9_list {
    margin-top: 35px;
  }
  .idx9 .idx9_list .box h4 {
    font-size: 20px;
    letter-spacing: 0;
  }
  .idx9 .idx9_list .box .accBtn {
    padding: 2.5em 8em 2.5em 8em;
  }
  .idx9 .idx9_list .box .accBtn::before {
    font-size: 3.5em;
    top: 0.5em;
    left: 1em;
  }
  .idx9 .idx9_list .box .accBtn::after {
    width: 60px;
    height: 60px;
    right: 10px;
    top: 10px;
  }
  .idx9 .idx9_list .box .content {
    padding: 0 20px 30px 80px;
  }
  .idx9 .idx9_list .box .content::before {
    font-size: 35px;
    top: 0;
    left: 1em;
  }
  .idx9 .btn-group {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx9 {
    padding-top: 60px;
  }
  .idx9 .idx9_list {
    margin-top: 25px;
  }
  .idx9 .idx9_list .box:not(:last-child) {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 2000px) {
  .idx9 {
    padding-bottom: 18.6458333333vw;
  }
}

.idx10 {
  position: relative;
  z-index: 1;
  margin-top: -300px;
  padding: 112px 0 136px;
}
@media only screen and (min-width: 2000px) {
  .idx10 {
    margin-top: -15.625vw;
  }
}
.idx10::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2193px' height='803px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M2.213,171.519 C2.213,171.519 403.356,-93.028 899.550,34.981 C1395.745,162.991 1775.820,326.071 2192.1000,172.521 C2192.1000,407.458 2192.1000,803.001 2192.1000,803.001 L0.000,803.001 L2.213,171.519 Z'/%3E%3C/svg%3E") no-repeat top right/cover;
  top: 0;
  left: 0;
  right: 0;
  height: 300px;
  z-index: -1;
}
@media only screen and (min-width: 1919px) and (max-width: 1921px) {
  .idx10::before {
    background-size: auto;
  }
}
@media only screen and (min-width: 2000px) {
  .idx10::before {
    height: 15.625vw;
  }
}
.idx10 .inner_big {
  display: grid;
  grid-template-columns: 37% 88.21875%;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0;
}
.idx10 h3 {
  margin-bottom: 0;
}
.idx10 picture {
  grid-row: 1/span 3;
  grid-column-start: 2;
  margin-left: 107px;
  margin-top: -50px;
}
.idx10 picture img {
  border-radius: 80px 0 0 80px;
}
.idx10 .txt {
  margin: 68px 0 0 0;
}
.idx10 .btn-group {
  margin-top: 82px;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx10::before {
    background-size: 110%;
  }
  .idx10 .inner_big {
    grid-template-columns: 37% 76%;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .idx10 .inner_big {
    grid-template-columns: 37% 69%;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx10 {
    padding-top: 80px;
  }
  .idx10::before {
    background-size: 115%;
  }
  .idx10 .inner_big {
    grid-template-columns: 37% 66%;
  }
  .idx10 .txt {
    margin: 40px 0 0 0;
  }
  .idx10 picture {
    margin-left: 60px;
  }
  .idx10 .btn-group {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1280px) {
  .idx10 .inner_big {
    grid-template-columns: 37% calc(63% + 20px);
  }
  .idx10 .txt {
    margin: 20px 0 0 0;
  }
  .idx10 picture {
    margin-left: 40px;
  }
  .idx10 .btn-group {
    margin-top: 20px;
  }
}