@media only screen and (max-width: 768px) {
  .home_page .key {
    padding: 60px 10px 0;
    --min-height: unset;
    font-size: 7px;
    background-size: 30em, 25em;
  }
  .home_page .key .mv_slider img {
    width: 350px;
  }
  .home_page .key .key_text .item {
    margin: 0 10px;
  }
  .home_page .key .key_txt {
    margin-top: -6.5em;
  }
  .home_page .key .key_txt .title {
    text-align: center;
    font-size: 5em;
  }
  .home_page .key .key_img {
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: static;
    max-width: 100%;
    width: 55em;
  }
}
@media only screen and (max-width: 480px) {
  .home_page .key .key_img {
    font-size: min(1.8vw, 10px);
  }
  .home_page .key .key_txt .title {
    font-size: 35px;
  }
}
@media only screen and (max-width: 768px) {
  .home_page h2 {
    margin-bottom: 30px;
    letter-spacing: 0.15em;
    font-size: min(7.2vw, 27px);
    line-height: 1.6;
  }
  .home_page h2 .en {
    font-size: 12px;
    margin-bottom: -3px;
  }
  .home_page h2.med {
    font-size: 34px;
    letter-spacing: 0.15em;
  }
  .home_page h2.med .en {
    font-size: 15px;
  }
  .home_page h2.big::after {
    left: calc(100% + 7px);
    width: 27px;
    height: 10px;
    top: calc(50% + 1px);
  }
  .home_page h2.big::before {
    right: calc(100% + 7px);
    width: 27px;
    height: 10px;
    top: calc(50% + 1px);
  }
  .home_page h3 {
    font-size: 26px;
  }
  .home_page h3 .en {
    font-size: 12px;
  }
  .home_page .inner {
    max-width: 610px;
  }
}
@media only screen and (max-width: 345px) {
  .home_page h2, .home_page h3 {
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 768px) {
  .idx1 {
    padding: 40px 0;
  }
  .idx1 .inner {
    padding: 0 20px;
  }
  .idx1 h2 {
    margin: 0;
  }
  .idx1 .idx1_txt {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 21px;
  }
  .idx1 .btn-group {
    max-width: 162px;
    width: 100%;
    margin-top: -4px;
  }
  .idx1 .btn-group .btn a {
    min-height: 47.5px;
  }
  .idx1 .idx1_news {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }
  .idx1 .idx1_news ul li a {
    display: block;
    padding: 14.5px 20px;
  }
  .idx1 .idx1_news ul li a .date {
    width: 100%;
    display: block;
    margin-bottom: 8px;
    font-size: 10px;
  }
  .idx1 .idx1_news ul li a .title {
    max-width: 100%;
    display: block;
    width: 100%;
    letter-spacing: 0em;
  }
}
@media only screen and (max-width: 345px) {
  .idx1 .btn-group {
    max-width: 150px;
    position: relative;
    left: 5px;
  }
}
@media only screen and (max-width: 768px) {
  .idx2 .inner {
    padding-left: 20px;
    padding-right: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 380px;
  }
  .idx2 .inner::after {
    right: unset;
    bottom: 5.1em;
    left: min(-5vw, -1.15em);
    width: 137px;
    height: 139px;
  }
  .idx2 .inner::before {
    top: unset;
    bottom: 5em;
    width: min(72vw, 270px);
    height: 280px;
    right: min(-5vw, -2.7em);
  }
  .idx2 .idx2_img {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    max-width: 335px;
    font-size: 9.7px;
    margin-top: 29px;
    margin-left: -35px;
  }
  .idx2 .idx2_img::before {
    left: -1em;
    top: -3.1875em;
  }
  .idx2 .idx2_img .idx2_img_box::before {
    right: -12.5em;
    top: 2em;
  }
  .idx2 .idx2_img .idx2_img_box::after {
    left: 21.6em;
    bottom: -0.8em;
  }
  .idx2 h2 {
    margin-top: 30px;
    letter-spacing: 0.1em;
    margin-bottom: 12px;
  }
  .idx2 h2 .en {
    margin-bottom: 1px;
  }
  .idx2 .idx2_p {
    letter-spacing: 0.15em;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    font-size: 16px;
  }
  .idx2 .btn-group {
    margin-top: 8px;
    position: relative;
    z-index: 1;
  }
  .idx2 .btn-group::before {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: contain;
            mask-size: contain;
    z-index: -1;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='42px' height='41px'%3E%3Cpath fill-rule='evenodd' fill='rgb(0, 0, 0)' d='M36.183,35.183 C29.015,42.991 14.741,40.774 7.100,35.192 C-0.518,29.627 -2.006,13.140 6.134,6.417 C16.316,-1.992 30.332,0.565 36.022,5.663 C44.009,12.820 42.1000,27.758 36.183,35.183 Z'/%3E%3C/svg%3E");
            mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='42px' height='41px'%3E%3Cpath fill-rule='evenodd' fill='rgb(0, 0, 0)' d='M36.183,35.183 C29.015,42.991 14.741,40.774 7.100,35.192 C-0.518,29.627 -2.006,13.140 6.134,6.417 C16.316,-1.992 30.332,0.565 36.022,5.663 C44.009,12.820 42.1000,27.758 36.183,35.183 Z'/%3E%3C/svg%3E");
    background-color: #ff9fa5;
    width: 42px;
    height: 40px;
    bottom: -14.3em;
    left: min(10vw, 4.5em);
  }
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
  .idx2 .idx2_img {
    margin-left: auto;
    margin-right: auto;
  }
  .idx2 .inner::before {
    right: 5em;
  }
  .idx2 .btn-group::before {
    left: 11em;
  }
  .idx2 .inner::after {
    left: 5em;
  }
}
@media only screen and (max-width: 768px) {
  .idx3 {
    padding-bottom: 91px;
  }
  .idx3::before {
    background-image: url(../images/idx3_bg_sp.png);
    background-position: top;
    background-size: cover;
    background-color: #fff;
    opacity: 1;
    bottom: 0;
  }
  .idx3 h2 {
    margin-bottom: -1px;
  }
  .idx3 .inner {
    padding: 0 20px;
  }
  .idx3 .TabContainer .TabPager {
    padding: 0;
  }
  .idx3 .TabContainer .TabPager li {
    font-size: min(4.25vw, 14px);
    width: calc(25% - 3px);
    padding: 1.2143em 0;
    -webkit-transition: none;
    transition: none;
    letter-spacing: 0;
  }
  .idx3 .TabContainer .TabPager li p {
    line-height: 1.2222222222;
  }
  .idx3 .TabContainer .TabPager li.active {
    font-size: 18px;
    padding: 0.6111em 0 0.7778em;
    -webkit-transition: none;
    transition: none;
  }
  .idx3 .TabContainer .TabPager li.active br {
    display: block;
  }
  .idx3 .idx3_tab_content {
    padding: 18px 0 10px;
    margin-left: -5px;
    margin-right: -5px;
  }
  .idx3 .idx3_tab_content .item {
    width: calc(50% - 10px);
    margin: 0 5px;
    padding: 6px 0 3px;
    min-height: unset;
    margin-bottom: 10px;
  }
  .idx3 .idx3_tab_content .item figure {
    width: min(14vw, 51px);
  }
  .idx3 .idx3_tab_content .item p {
    font-size: min(4vw, 14px);
    margin-left: -5px;
  }
  .idx3 .idx3_tab_content .item::after {
    right: min(2vw, 8px);
  }
}
@media only screen and (max-width: 345px) {
  .idx3 .idx3_tab_content .item::after {
    right: 3px;
    width: 9px;
    height: 8px;
    top: calc(50% - 4px);
  }
}
@media only screen and (max-width: 768px) {
  .idx4 {
    padding-top: 97px;
  }
  .idx4::before {
    background-size: 345px;
    background-position: calc(100% + 3em) -1em;
  }
  .idx4 .inner {
    padding: 0 20px;
  }
  .idx4 .idx4_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .idx4 .idx4_img {
    margin: 0 auto;
    padding: 0;
    max-width: 355px;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    right: unset;
    left: unset;
  }
  .idx4 .idx4_img::after {
    top: 10px;
    left: -10px;
  }
  .idx4 .idx4_img.idx4_img01 {
    margin-top: -67px;
  }
  .idx4 .idx4_img.idx4_img01::before {
    top: 121%;
    left: 57%;
    width: 26px;
    height: 26px;
  }
  .idx4 .idx4_img.idx4_img01 .img01 {
    width: 120px;
    height: 120px;
    top: unset;
    bottom: -71px;
    right: 0px;
  }
	.idx4 .idx4_img.idx4_img01 .img01 img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
  .idx4 .idx4_img.idx4_img01 .img02 {
    width: 120px;
    height: 120px;
    left: 0;
    bottom: -31px;
  }
  .idx4 .idx4_img.idx4_img01 .idx4_img_box::before {
    bottom: 15.3em;
    left: 0;
    width: 50px;
    height: 47px;
  }
  .idx4 .idx4_img.idx4_img01 .idx4_img_box::after {
    width: 41px;
    height: 39px;
    bottom: 17.7em;
    right: 1.7em;
  }
  .idx4 h3 {
    margin: 61px 0 14px;
  }
  .idx4 .idx4_p {
    font-size: 16px;
    line-height: 2;
  }
  .idx4 .idx4_inner01 .btn-group {
    margin-top: 9px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 355px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .idx4 .idx4_inner01 .btn-group .btn {
    width: calc(33.3333333333% - 6.66px);
    margin: 0;
    min-width: unset;
  }
  .idx4 .idx4_inner01 .btn-group .btn a {
    padding: 4.5556em 0 1.2222em;
    font-size: min(5vw, 18px);
    letter-spacing: 0.03em;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
  .idx4 .idx4_inner01 .btn-group .btn a::after {
    right: unset;
    left: calc(50% - 5px);
    bottom: 9px;
    top: unset;
  }
  .idx4 .idx4_inner01 .btn-group .btn:nth-child(2) a {
    padding: 5.1667em 0 1.8333em;
  }
  .idx4 .idx4_group_btn .btn01 a {
    background-image: url(../images/idx4_btn01_sp.png);
    background-position: 0px -1px;
  }
  .idx4 .idx4_group_btn .btn02 a {
    background-image: url(../images/idx4_btn02_sp.png);
    background-position: 0px -1px;
  }
  .idx4 .idx4_group_btn .btn03 a {
    background-image: url(../images/idx4_btn03_sp.png);
    background-position: 0px -1px;
  }
  .idx4 .idx4_inner::before {
    width: 72.5px;
    left: -20px;
    height: calc(100% - 18em);
    background-size: cover;
    top: 19.6em;
    background-image: url(../images/idx4_shadow01_sp.png);
  }
  .idx4 .idx4_inner02 {
    margin: 67px 0 79px;
  }
  .idx4 .idx4_inner02::before {
    left: unset;
    right: -20px;
    background-image: url(../images/idx4_shadow02_sp.png);
    top: 24.4em;
    height: 27.75em;
  }
  .idx4 .idx4_inner02 h3 {
    margin-top: 58px;
  }
  .idx4 .idx4_inner02 .idx4_img {
    margin: 0 auto;
  }
  .idx4 .idx4_inner02 .idx4_img.idx4_img02::after {
    left: 10px;
  }
  .idx4 .idx4_inner02 .idx4_img.idx4_img02::before {
    width: 50px;
    height: 47px;
    bottom: -5.5em;
    right: 3em;
  }
  .idx4 .idx4_inner02 .idx4_img.idx4_img02 .img01 {
    width: 120px;
    height: 120px;
    right: unset;
    left: 0;
    bottom: -30px;
  }
  .idx4 .idx4_inner02 .idx4_img.idx4_img02 .img02 {
    width: 120px;
    height: 120px;
    top: -47px;
    right: 10px;
  }
  .idx4 .idx4_inner02 .idx4_img .idx4_img_box::before {
    width: 26px;
    height: 26px;
    top: 12px;
    left: 13px;
  }
  .idx4 .idx4_inner02 .idx4_img .idx4_img_box::after {
    width: 40px;
    height: 38px;
    right: 10px;
    bottom: 28px;
  }
  .idx4 .idx4_inner02 .btn-group {
    max-width: 100%;
    width: 100%;
    margin-top: 10px;
  }
  .idx4 .idx4_inner02 .btn-group .btn {
    margin: 0 auto;
  }
  .idx4 .idx4_inner03::before {
    background-image: url(../images/idx4_shadow03_sp.png);
    top: 24.4em;
    height: 27.75em;
  }
  .idx4 .idx4_inner03 h3 {
    margin-top: 58px;
  }
  .idx4 .idx4_inner03 .idx4_img {
    margin: 0 auto;
  }
  .idx4 .idx4_inner03 .idx4_img.idx4_img03::after {
    left: -10px;
  }
  .idx4 .idx4_inner03 .idx4_img.idx4_img03::before {
    width: 40px;
    height: 38px;
    top: -1.5em;
    left: 10em;
    z-index: -1;
  }
  .idx4 .idx4_inner03 .idx4_img.idx4_img03 .img01 {
    width: 120px;
    height: 120px;
    right: unset;
    left: 3px;
    top: -20px;
  }
  .idx4 .idx4_inner03 .idx4_img.idx4_img03 .img02 {
    width: 120px;
    height: 120px;
    bottom: -49px;
    left: unset;
    right: 1px;
  }
  .idx4 .idx4_inner03 .idx4_img .idx4_img_box::before {
    top: unset;
    bottom: -56px;
    left: 12.5em;
    width: 26px;
    height: 26px;
  }
  .idx4 .idx4_inner03 .idx4_img .idx4_img_box::after {
    width: 50px;
    height: 47px;
    left: 1.5em;
    bottom: 0.1em;
    top: unset;
  }
  .idx4 .idx4_inner03 .btn-group {
    max-width: 100%;
    width: 100%;
    margin-top: 10px;
  }
  .idx4 .idx4_inner03 .btn-group .btn {
    margin: 0 auto;
  }
  .idx4 .idx4_fet {
    border-radius: 30px 30px 0 0;
    margin-top: 81px;
    background-image: url(../images/idx4_fet_sp.png);
    padding: 46px 0;
  }
  .idx4 .idx4_fet .inner::before {
    left: -3em;
    bottom: unset;
    font-size: 7.7px;
    top: 111em;
  }
  .idx4 .idx4_fet .inner::after {
    right: -2.75em;
    bottom: 0;
    font-size: 9.9px;
  }
  .idx4 .idx4_fet h3 {
    margin-bottom: 16px;
    margin-top: 0;
  }
  .idx4 .idx4_fet .idx4_fet_p {
    width: 100%;
    font-size: 16px;
  }
  .idx4 .idx4_fet .fblock {
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .idx4 .idx4_fet .item {
    width: calc(50% - 10px);
    margin-bottom: -4px;
  }
  .idx4 .idx4_fet .item:nth-child(even) {
    margin-top: 35px;
  }
  .idx4 .idx4_fet .item .ttl02 {
    letter-spacing: 0;
  }
  .idx4 .idx4_fet .item .idx4_fet_txt p {
    font-size: 12px;
    top: -10px;
    right: -5px;
    height: 75px;
    width: 75px;
  }
  .idx4 .idx4_fet .item .btn-group .btn a {
    font-size: min(4.25vw, 16px);
  }
  .idx4 .idx4_fet_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 25px;
  }
  .idx4 .idx4_fet_box::after {
    background-image: url(../images/idx4_fet_icon.svg.svg);
    bottom: unset;
    right: unset;
    top: -40px;
    left: -6px;
    width: 98px;
    height: 87px;
  }
  .idx4 .idx4_fet_box h3 {
    display: block;
    text-align: center;
    margin: 13px auto 6px;
  }
  .idx4 .idx4_fet_box .ttl {
    font-size: 16px;
  }
  .idx4 .idx4_fet_box picture {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
	          width: 100%;
        max-width: 100%;
  }
  .idx4 .idx4_fet_box .btn-group .btn {
    max-width: 200px;
  }
}
@media only screen and (max-width: 450px) {
  .idx4 .idx4_inner03::before {
    height: 35em;
    width: 89px;
  }
}
@media only screen and (max-width: 480px) {
  .idx4 .idx4_inner02::before {
    height: 35em;
  }
}
@media only screen and (max-width: 768px) {
  .idx5 {
    padding: 168px 0 50px;
    margin-top: -144px;
    clip-path: polygon(0 0, 100% 5%, 100% 100%, 0% 100%);
  }
  .idx5 .inner {
    display: block;
    padding-left: 20px;
    padding-right: 20px;
  }
  .idx5 .inner::before {
    background: url(../images/idx5_icon01.svg) no-repeat center/contain;
    width: 77px;
    height: 81px;
    left: -13px;
    top: -48px;
  }
  .idx5 .inner::after {
    background: url(../images/idx5_icon02.svg) no-repeat center/contain;
    width: 130px;
    height: 131px;
    right: -43px;
    top: 54px;
  }
  .idx5 h2.big {
    text-align: center;
    margin: 0 auto;
  }
  .idx5 .idx5_img {
    margin: 28px -20px 0;
    width: calc(100% + 40px);
  }
  .idx5 .idx5_img::before {
    width: 31px;
    height: 30px;
    bottom: -50px;
    right: 126px;
    top: unset;
  }
  .idx5 .idx5_img::after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
    background: url(../images/idx5_icon03.svg) no-repeat center/contain;
    width: 254px;
    height: 263px;
    bottom: -105px;
    left: -151px;
  }
  .idx5 .idx5_img > div {
    width: calc(50% - 5px);
  }
  .idx5 .idx5_img .idx5_img02 {
    margin-top: 0;
  }
  .idx5 .idx5_img .ttl {
    top: unset;
    bottom: -2.4em;
    font-size: min(5.5vw, 20px);
    right: 1.55em;
    padding-top: 0.3em;
    padding-left: 0.15em;
  }
  .idx5 .idx5_img_box {
    position: relative;
  }
  .idx5 .idx5_p {
    font-size: 16px;
    margin: 72px 0 0;
    line-height: 2;
    letter-spacing: 0.17em;
    position: relative;
    z-index: 2;
  }
  .idx5 .idx5_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .idx5 .idx5_btn {
    max-width: 375px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 22px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
  }
  .idx5 .idx5_btn::before {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    width: 1px;
    top: 0;
    bottom: 0;
    background-color: #eee4c2;
    left: calc(50% - 1px);
  }
  .idx5 .idx5_btn::after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
    background: url(../images/idx5_icon05.svg) no-repeat center/contain;
    width: 97px;
    height: 101px;
    right: -56px;
    bottom: 64px;
  }
  .idx5 .idx5_btn .btn-group {
    width: calc(50% - 20px);
    margin: 0;
  }
  .idx5 .idx5_btn .btn-group .btn:last-child a {
    letter-spacing: 0;
    padding-right: 1em;
  }
  .idx5 .idx5_btn .btn-group .btn a {
    font-size: min(4.5vw, 16px);
  }
  .idx5 .idx5_btn .btn-group:first-child {
    position: relative;
    z-index: 1;
  }
  .idx5 .idx5_btn .btn-group:first-child::after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
    background: url(../images/idx5_icon06.svg) no-repeat center/contain;
    width: 130px;
    height: 131px;
    left: 48px;
    bottom: -102px;
  }
  .idx5 .btn-group {
    margin-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .idx6 {
    padding: 50px 0;
  }
  .idx6::before {
    height: 1024px;
  }
  .idx6 .inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .idx6 .idx6_info,
  .idx6 .idx6_txt {
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: 100%;
  }
  .idx6 .idx6_logo {
    max-width: 250px;
    margin: 0 auto 25px;
  }
  .idx6 .idx6_txt {
    margin-top: 26px;
  }
  .idx6 .btn-group {
    margin-top: 20px;
  }
  .idx6 .btn-group .btn {
    max-width: 200px;
  }
  .idx6 .idx6_map {
    margin-top: 50px;
  }
  .idx6 .idx6_map iframe {
    height: 300px;
  }
}
@media only screen and (max-width: 480px) {
  .idx6::before {
    background-image: url(../images/idx6_bg_sp.jpg);
    height: 1143px;
  }
}
@media only screen and (max-width: 345px) {
  .idx6::before {
    height: 1206px;
  }
}
@media only screen and (max-width: 768px) {
  .idx7 {
    padding-top: 334px;
  }
  .idx7 .inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .idx7 .idx7_bg {
    padding-bottom: 50px;
  }
  .idx7 .idx7_bg::before {
    top: -63px;
    -webkit-mask-position: bottom;
            mask-position: bottom;
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: repeat-x;
            mask-repeat: repeat-x;
  }
  .idx7 .idx7_img,
  .idx7 .idx7_txt {
    max-width: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .idx7 .idx7_img {
    margin-top: -135px;
    right: -100px;
  }
  .idx7 .idx7_img::after {
    left: -7.0588em;
    bottom: -2em;
    font-size: 8.5px;
  }
  .idx7 .idx7_txt h3 {
    font-size: min(7vw, 26px);
    margin: 14px 0 14px;
  }
  .idx7 .idx7_txt .ttl02 {
    font-size: 16px;
    letter-spacing: 0.1em;
    margin-bottom: 23px;
  }
  .idx7 .btn-group {
    margin-top: 10px;
  }
  .idx7 .btn-group .btn {
    max-width: 200px;
  }
}
@media only screen and (max-width: 640px) {
  .idx7 .idx7_img {
    right: -50px;
  }
}
@media only screen and (max-width: 480px) {
  .idx7 .idx7_img {
    right: -30px;
  }
  .idx7 .idx7_img::after {
    font-size: min(2.8vw, 8.5px);
  }
}