@font-face {
    font-family: LINESeedJP;
    src: url("../fonts/LINESeedJP_OTF_Rg.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: LINESeedJP;
    src: url("../fonts/LINESeedJP_OTF_Bd.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

:root {
  --green: rgb(90, 179, 90);
  --yellow: rgb(249, 192, 60) ;
}


body {
    font-family: LINESeedJP, "Hiragino Kaku Gothic ProN", "Helvetica Neue", sans-serif;
    margin: 0px;
    padding: 0px;
    position: relative;
}

header {
    position: relative;
    padding: 1em 2em;
    z-index: 2;
    max-width: 1920px;
    margin: 0px auto;
}

header div.nav {
    background: rgb(255, 255, 255);
    border-radius: 999px;
    box-shadow: 1px 1px 6px gray;
    display: flex;
    width: 94%;
    align-items: center;
    justify-content: space-between;
    padding: 0px 2vw;
    max-height: 100px;
}

header div.nav div.logo {
}

header div.nav div.logo a {
    display: flex;
    align-items: center;
}

header div.nav div.logo a img {
    width: 3.5vw;
    margin: 1vw;
    max-width: 70px;
}

header div.nav div.logo a h1 {
    font-size: var(--fs-8);
    flex-direction: column;
    gap: 4px;
    color: rgb(49, 49, 49);
    line-height: 1 !important;
    display: flex !important;
}

header div.nav div.logo a h1 span {
    font-size: var(--fs-4);
    margin: 0px 0px 0.3em;
    line-height: 1 !important;
}

header div.nav ul.main_menu {
    display: flex;
}

header div.nav ul.main_menu li {
}

header div.nav ul.main_menu li a {
    font-size: var(--fs-4);
    font-weight: 700;
    margin: 0px 0.5em;
}

header div.nav ul.main_menu li a.contact {
    background: rgb(106, 188, 111);
    color: rgb(255, 255, 255);
    padding: 0.5em 2em;
    border-radius: 999px;
}

header div.sub_menu {
}

div.fv {
    background: rgb(90, 179, 90);
    position: absolute;
    height: 5000px;
    width: 100%;
    top: 0px;
}

.hamburger {
    min-width: 58px;
    width: 5%;
    aspect-ratio: 1 / 1;
    top: 18px;
    right: 37px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    box-shadow: 1px 1px 6px gray;
    transition: transform 0.3s, box-shadow 0.3s;
    background-color: rgb(249, 192, 60) !important;
    border-radius: 50% !important;
    position: fixed !important;
    z-index: 9999 !important;
    display: flex !important;
    max-width: 100px;
}

.hamburger span {
    display: block;
    width: 30px;
    height: 3px;
    margin: 4px 0px;
    transition: 0.3s ease-in-out;
    border-radius: 2px;
    background-color: rgb(255, 255, 255) !important;
}

.hamburger.is-active {
    box-shadow: none;
}

.hamburger.is-active span:nth-child(1) {
    transform: translateY(11px) rotate(45deg);
}

.hamburger.is-active span:nth-child(2) {
    opacity: 0;
    transform: translateX(-10px);
}

.hamburger.is-active span:nth-child(3) {
    transform: translateY(-11px) rotate(-45deg);
}

.sp_nav {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    clip-path: circle(0% at calc(97.5% - 20px) calc(20px + 2.5vw));
    transition: clip-path 0.6s cubic-bezier(0.65, 0, 0.35, 1), visibility 0.6s;
    visibility: hidden;
    position: fixed !important;
    top: 0px !important;
    left: 0px !important;
    width: 100% !important;
    height: 100vh !important;
    background:  url(../images/top05_image01.webp), url(../images/top05_image02.webp);
    z-index: 9998 !important;
    display: flex !important;
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-position: left bottom,right;
    background-size: 24vw;
}

.sp_nav.is-active {
    clip-path: circle(150% at calc(97.5% - 20px) calc(20px + 2.5vw));
    visibility: visible;
    transition: clip-path 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}

.sp_nav ul {
    opacity: 1;
    transition: transform 0.4s;
    transform: scale(0.9);
}

.sp_nav.is-active ul {
    opacity: 1;
}

.sp_nav ul li {
    opacity: 0;
    transform: translateY(20px);
    transition: 0.5s 0.3s;
}

.sp_nav.is-active ul li {
    opacity: 1;
    margin: 1em 0;
    transform: translateY(0px);
}

header div.nav ul.main_menu li a {
    position: relative;
    transition: color 0.3s;
    color: rgb(49, 49, 49);
}

header div.nav ul.main_menu li a:hover {
    color: rgb(106, 188, 111);
}

header div.nav ul.main_menu li a.contact {
    transition: 0.3s;
}

header div.nav ul.main_menu li a.contact:hover {
    background: rgb(145, 145, 145);
    box-shadow: rgba(167, 167, 167, 0.4) 0px 4px 10px;
    transform: translateY(-2px);
    color: rgb(255, 255, 255);
}

.sp_nav ul.sp_menu li a {
    display: inline-block;
    transition: 0.3s;
    color: rgb(63 63 63);
    text-decoration: none;
    font-size: 1.5rem;
    font-weight: bold;
}

.sp_nav ul.sp_menu li a:hover {
    transform: translateX(10px);
    opacity: 0.8;
}

.hamburger:hover {
    transform: scale(1.05);
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 10px;
}

div.fv {
    background: rgb(90, 179, 90);
    position: relative;
    width: 100%;
    height: 104vh;
    overflow: hidden;
    z-index: 1;
    margin-top: -8vw;
}

.fv img.mainimage {
    width: 58vw;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    position: absolute;
    top: 3vw;
    right: -4vw;
    animation: 12s ease-in-out 0s infinite normal none running fv-uniuini;
}

@keyframes fv-uniuini {
    0%, 100% {
        border-radius: 50% 50% 40% 60% / 40% 40% 60% 60%;
    }

    50% {
        border-radius: 65% 35% / 60% 60% 40% 40%;
    }
}

div.fv p.en {
    font-size: clamp(10.5rem, 6rem + 1vw, 8rem);
    font-weight: bolder;
    z-index: 2;
    position: absolute;
    line-height: 1;
    color: yellow;
    top: 28vh;
    left: 3vw;
}

div.fv p span.en_s {
    display: block;
    color: rgb(255, 255, 255);
    font-size: var(--fs-12);
}

div.fv img.fv_bg01 {
    position: absolute;
    left: 0px;
    bottom: 0px;
}

div.fv img.fv_bg02 {
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: -1;
}

.top023_wrap {
    margin-top: -5vw;
    margin-left: 0px;
    margin-right: 0px;
    position: relative;
    z-index: 1;
    background: rgb(255, 255, 255);
    min-height: 200px;
    clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
}




div.top023_wrap {
}
div.top023_wrap img.left {position: absolute;left: 0;top: 2vw;z-index: 2;}
div.top023_wrap img.right {position: absolute;right: 0;top: 0;z-index: 2;width: 20vw;}
div.top023_wrap div.top02 {text-align: center;padding: 7em;}
div.top023_wrap div.top02 img.logo {width: 150px;display: block;margin: 0 auto;}
div.top_title {text-align: center;}
div.top_title p.en {font-size: var(--fs-10);font-weight: bolder;color: var(--green);}
div.top_title p.en span {color: var(--yellow);}
div.top_title p.jp {font-size: var(--fs-4);font-weight: 600;color: #3d3d3d;}
div.top023_wrap div.top02 h2 {margin: 1em 0 2em 0;font-size: var(--fs-5);color: #272727;line-height: 2;}
div.top023_wrap div.top02 h2 span {font-size: var(--fs-4);font-weight: 100;display: block;}
div.top023_wrap div.top02 a{
    background: var(--yellow);
    border-radius: 200px;
    font-size: var(--fs-5);
    font-weight: bold;
    padding: 1em 4em;
    display: inline-block;
    margin: 0 0 2em 0;
}
div.top023_wrap div.top02 a:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  text-decoration: none;
  transition: all 0.3s ease;
}
div.top023_wrap div.top03 {padding: 5em 0 10em 0;}
div.top023_wrap div.top03 h3 {text-align: center;font-size: var(--fs-7);margin: 0 0 2em 0;}
div.top023_wrap div.top03 div.top_title {text-align: center;}
div.top023_wrap div.top03 div.top_title p.en {
}
div.top023_wrap div.top03 div.top_title p.en span {
}
div.top023_wrap div.top03 div.top_title p.jp {
}
div.top023_wrap div.top03 ul {display: flex;justify-content: center;gap: 1em;margin: 3em;position: relative;}
div.top023_wrap div.top03 ul li {background: #ffff;border-radius: 13px;padding: 1em 3em;box-shadow: 1px 1px 10px #bbbbbb;}
div.top023_wrap div.top03 ul li span {text-align: center;display: block;font-size: var(--fs-7);font-weight: 700;}
div.top023_wrap div.top03 ul li img {display: block;margin: 0 auto;}
div.top023_wrap div.top03 ul li h4 {text-align: center;font-size: var(--fs-3);}
div.top023_wrap div.top03 a.link {background: #f31e6f;margin: 0 auto;color: #fff;border-radius: 200px;padding: 1em 3em;font-size: var(--fs-5);font-weight: 700;display: table;}


.top03 {
    margin-top: -5vw;
    margin-left: 0px;
    margin-right: 0px;
    position: relative;
    z-index: 1;
    background: rgb(233 236 243);
    min-height: 200px;
    clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
}
div.top023_wrap div.top03 a.link:hover {
  background: #f31e6f;
  transform: translateY(-3px);
  box-shadow: 0 5px 15px rgba(243, 30, 111, 0.3);
  color: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
}


div.top04 {
    padding-bottom: 3em;
    margin-top: -5vw;
    margin-left: 0px;
    margin-right: 0px;
    position: relative;
    z-index: 1;
    background: rgb(255, 255, 255);
    min-height: 200px;
    clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
}
div.top04 div.wrap {padding: 5em 0;width: 80%;margin: 0 auto;max-width: 1500px;display: flex;}
div.top04 div.wrap div.topics_title {width: 212px;}
div.top04 div.wrap div.topics_title p.en {font-size: var(--fs-9);font-weight: bolder;}
div.top04 div.wrap div.topics_title p.jp {font-size: var(--fs-3);}
div.top04 div.wrap div.topics {width: -webkit-fill-available;}
div.top04 div.wrap div.topics a {margin: 0 0 1em 0;display: block;}
div.top04 div.wrap div.topics a dl {font-weight: 600;display: flex;align-items: flex-start;}
div.top04 div.wrap div.topics a dl dt {display: flex;}
div.top04 div.wrap div.topics a dl dt p.date {
}
div.top04 div.wrap div.topics a dl dt span.cate {background: var(--yellow);color: #fff;text-align: center;white-space: nowrap;padding: 0 0.5em;font-weight: 100;font-size: var(--fs-2);margin: 0 1em;width: 87px;}
div.top04 div.wrap div.topics a dl dd {
  transition: 0.5s;
}
div.top04 div.wrap div.topics a dl dt span.cate.column {background: var(--green);}

div.top04 div.wrap div.topics a:hover dl dd {
  color: var(--green);
  text-decoration: underline;
  transition: 0.5s;
}

div.top04 div.wrap div.topics a {
  transition: all 0.3s ease;
}


div.top05 {
        padding: 5em 0 10em 0;
        margin-top: -5vw;
        margin-left: 0px;
        margin-right: 0px;
        position: relative;
        z-index: 1;
        min-height: 200px;
        clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
        background: url(../images/top05_image01.webp), url(../images/top05_image02.webp) #e9ecf3;
        background-position: left center, right center;
        background-repeat: no-repeat, no-repeat;
        background-size: 30% auto, 30% auto;
}
div.top05 div.wrap {}
div.top05 div.wrap div.top_title {margin-bottom: 3em;}
div.top05 div.wrap div.top_title p.en {
}
div.top05 div.wrap div.top_title p.en span {
}
div.top05 div.wrap div.top_title p.jp {
}
div.top05 div.ul {display: flex;width: 80%;margin: 0 auto;max-width: 1500px;gap: 1em;justify-content: center;}
div.top05 div.ul ul {
}
div.top05 div.ul ul li {background: #fff;border-radius: 10px;box-shadow: 1px 1px 4px 0px gray;margin: 0 0 1em 0;padding: 1em 2em;position: relative;}
div.top05 div.ul ul li span.no {background: rgb(255 228 95);position: absolute;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 50%;font-weight: bolder;color: #000;top: -1em;left: -0.5em;}
div.top05 div.ul ul li h4 {font-size: var(--fs-5);display: flex;align-items: center;}
div.top05 div.ul ul li h4 span.days {color: #fff;background: #4267b2;font-weight: 100;border-radius: 5px;font-size: var(--fs-2);padding: 0 0.5em;margin: 0 0 0 1em;}
div.top05 div.ul ul li p {
}



div.top06 {
        padding: 5em 0 0 0;
        margin-top: -5vw;
        margin-left: 0px;
        margin-right: 0px;
        position: relative;
        z-index: 1;
        min-height: 200px;
        clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
        background:  #ffffff;
        background-position: left center, right center;
        background-repeat: no-repeat, no-repeat;
        background-size: 30% auto, 30% auto;
}
div.top06 div.top_title {
}
div.top06 div.top_title p.en {
}
div.top06 div.top_title p.en span {
}
div.top06 div.top_title p.jp {
}
div.top06 div.faq {width: 80%;margin: 2em auto 5em auto;max-width: 800px;}
div.top06 div.faq dl {
}
div.top06 div.faq dl dt {background: #6abc6f;border-radius: 19px;color: #fff;text-align: center;font-size: var(--fs-5);padding: 1em 0;font-weight: bolder;}
div.top06 div.faq dl dd {text-align: center;font-size: var(--fs-4);margin: 1em 0 2em 0;}
div.top06 div.faq a {background: #de3e3e;color: #fff;text-align: center;border-radius: 200px;padding: 0.5em 3em;font-size: var(--fs-4);margin: 0 auto;display: table;}
div.top06 div.faq a:hover {
  background: #bb3232;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  transform: translateY(-2px);
}

div.top07 {margin: 0 0 5em 0;}
div.top07 dl {display: flex;justify-content: center;gap: 2em;align-items: stretch;}
div.top07 dl dt {
}
div.top07 dl dt div.top_title {text-align: left;}
div.top07 dl dt div.top_title p.en {margin: 0;}
div.top07 dl dt div.top_title p.en span {
}
div.top07 dl dt div.top_title p.jp {line-height: 0;margin: 0 0 2em 0;}
div.top07 dl dt p {margin: 1em 0;font-size: var(--fs-5);font-weight: 300;}
div.top07 dl dt a {background: #d96017;padding: 0.7em 3em;color: #fff;border-radius: 300px;margin: 1em 0 0 0;display: inline-block;}
div.top07 dl dt img {width: 650px;height: 450px;object-fit: cover;border-radius: 30px;}
div.top07 dl dt a:hover {
  background: #bd510f;
  color: #fff;
  text-decoration: none;
  opacity: 0.85;
  transform: scale(1.03);
}
div.top07 dl dd{width: 30vw;}
div.top07 dl dd iframe{
    width: 100%;
    height: 100%;
    border-radius: 20px;
    border: #b5b5b5 5px solid !important;
}

footer {border-top: 1px solid gray;margin: 1em auto 1em auto;width: 96%;padding: 2em 0;display: flex;justify-content: space-between;}
footer div.info {}
footer div.info p {font-size: var(--fs-4);}
footer div.info p a {background: unset;color: unset;border-radius: unset;padding: unset;margin: unset;display: unset;}
footer div.info a {background: var(--green);color: #fff;border-radius: 200px;padding: 0.5em 2em;margin: 0.5em 0;display: -webkit-inline-box;}
footer div.info a i.fa-solid.fa-paper-plane {
}
footer div.info span {display: block;font-size: var(--fs-2);}
footer div.logo {
}
footer div.logo img {width: 8vw;max-width: 150px;}
footer div.info p a:hover {
  opacity: 0.7;
  text-decoration: underline;
  background: unset;
}

footer div.info a:hover {
  background: var(--green);
  filter: brightness(110%);
  opacity: 0.9;
  text-decoration: none;
}


nav#js-sp-nav.sp_nav {
}
nav#js-sp-nav.sp_nav div.wrap {display: flex;gap: 4em;}
nav#js-sp-nav.sp_nav div.wrap img {width: 11vw;max-width: 188px;}
nav#js-sp-nav.sp_nav div.wrap ul.sp_menu {
}
nav#js-sp-nav.sp_nav div.wrap ul.sp_menu li {
}
nav#js-sp-nav.sp_nav div.wrap ul.sp_menu li a {
}
nav#js-sp-nav.sp_nav div.wrap ul.sp_menu li a.contact {background: var(--green);color: #fff;font-weight: 400 !important;border-radius: 200px;padding: 0.2em 1.5em;font-size: var(--fs-5);}




div.fv.fv_second {position: relative;height: 26vw;}
div.fv.fv_second p.en {position: absolute;left: 50%;transform: translateX(-50%);white-space: nowrap;z-index: 3;margin: 0;font-size: var(--fs-12);top: 12vw;}
div.fv.fv_second h2 {position: absolute;left: 50%;transform: translateX(-50%);white-space: nowrap;z-index: 3;margin: 0;font-size: var(--fs-5);top: 16vw;color: #fff;}
div.fv.fv_second img.fv_bg01 {bottom: -6vw;}
div.fv.fv_second img.fv_bg02 {right: -17vw;width: 50vw;top: -19vw;}


.second{
    padding: 0 0 1em 0;
    margin-top: -5vw;
    margin-left: 0px;
    margin-right: 0px;
    position: relative;
    z-index: 1;
    background: rgb(255, 255, 255);
    min-height: 200px;
    clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
}


div.w80{
    width: 80%;
    margin: 0 auto;
    max-width: 1500px;
}

div.company01 {padding: 5em 0;max-width: 1200px;}
div.top_title.second_title {text-align: left;}
div.top_title.second_title p.en {line-height: 1;}
div.company01 div.top_title.second_title p.en span {
}
div.company01 div.top_title.second_title p.jp {line-height: 0.5;}
div.company01 dl {margin: 3em 0 0 0;display: flex;justify-content: space-between;align-items: stretch;gap: 3em;}
div.company01 dl dt {
}
div.company01 dl dt table {
}
div.company01 dl dt table tbody {
}
div.company01 dl dt table tbody tr {
}
div.company01 dl dt table tbody tr th,div.company01 dl dt table tbody tr td {text-align: left;padding: 0.5em;white-space: nowrap;vertical-align: text-top;}
div.company01 dl dt table tbody tr td a{
    color: purple;
    text-decoration: underline;
}
dl dt table tbody tr td {white-space: unset;}
div.company01 dl dt table tbody tr td .sp{display:none}
div.company01 dl dd {width: 60%;}
div.company01 dl dd iframe {width: 100%;height: 100%;}


div.company02.w80 {max-width: 1200px;}
div.company02.w80 div.top_title.second_title {
}
div.company02.w80 div.top_title.second_title p.en {
}
div.company02.w80 div.top_title.second_title p.en span {
}
div.company02.w80 div.top_title.second_title h3.jp {
}
div.company02.w80 ul {display: flex;justify-content: space-between;gap: 1em;margin: 1em 0;}
div.company02.w80 ul li {
    width: calc(100% / 4);
}
div.company02.w80 ul li img {width: 100%;height: 20vw;object-fit: cover;border-radius: 10px;max-height: 365px;}
div.company02.w80 ul li h4 {font-size: var(--fs-5);color: var(--green);margin: 0.2em 0 0 0;}
div.company02.w80 ul li p {font-size: var(--fs-4);}
div.company02.w80 p.caution {background: #e5e5e5;padding: 1em 2em;margin: 1em 0;}
div.company03.w80 {max-width: 1200px;margin: 5em auto;}
div.company03.w80 div.top_title.second_title {
}
div.company03.w80 div.top_title.second_title p.en {
}
div.company03.w80 div.top_title.second_title p.en span {
}
div.company03.w80 div.top_title.second_title h3.jp {
}
div.company03.w80 ul.mnc {
}
div.company03.w80 ul.mnc li {font-size: var(--fs-6);margin: 1em 0;font-weight: 600;}



div.topics.w80 {display: flex;justify-content: space-between;padding: 5em 0;}
div.topics.w80 div.main {width: 75%;}
div.topics.w80 div.main ul {display: flex;flex-wrap: wrap;gap: 2%;}
div.topics.w80 div.main ul li {width: calc((100% - 4% ) / 3);}
div.topics.w80 div.main ul li a {
}
div.topics.w80 div.main ul li a img {width: 100%;border-radius: 10px;object-fit: cover;box-shadow: 2px 2px 8px #a7a7a7;margin: 0 0 0.5em 0;aspect-ratio: 16/9;}
div.topics.w80 div.main ul li a span.date {font-size: var(--fs-2);color: var(--green);}
div.topics.w80 div.main ul li a h3 {margin: 0 0 2em 0;font-size: var(--fs-4);}
div.topics.w80 div.main ul li a:hover img {
    transform: translateY(-4px);
    box-shadow: 4px 4px 12px #888888;
    opacity: 0.9;
}

div.topics.w80 div.main ul li a:hover h3 {
    color: #007bff;
    text-decoration: underline;
}

div.topics.w80 div.main ul li a img {
    transition: transform 0.3s, box-shadow 0.3s, opacity 0.3s;
}

div.topics.w80 div.main ul li a h3 {
    transition: color 0.3s;
}


div.topics.w80 div.sub {width: 22%;}
div.topics.w80 div.sub div.cate {
}
div.topics.w80 div.sub div.cate a {background: var(--yellow);color: #fff;border-radius: 10px;width: 100%;display: block;text-align: center;padding: 1em 0;font-size: var(--fs-5);margin: 0 0 0.5em 0;font-weight: 700;}
div.topics.w80 div.sub div.cate a.column {background: var(--green);}
div.topics.w80 div.sub div.cate a {
    transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
}

div.topics.w80 div.sub div.cate a:hover {
    filter: brightness(0.9);
    transform: translateY(2px);
    box-shadow: none;
}

div.topics.w80 div.sub div.cate a.column:hover {
    background: var(--green);
    filter: brightness(0.9);
}
div.topics.w80 div.sub div.serch {margin: 2em 0;}
div.topics.w80 div.sub div.serch form.search-container {
}
div.topics.w80 div.sub div.serch form.search-container input{
    width: 100%;
    background: #e5e5e5;
    padding: 1em;
}
div.topics.w80 div.sub div.serch form.search-container button.search-button {background: #595959;color: #fff;border-radius: 5px;padding: 0.2em 3em;font-size: var(--fs-4);margin: 0.5em auto;display: block;}
div.topics.w80 div.sub div.sub_title {margin: 2em 0 0 0;}
div.topics.w80 div.sub div.sub_title h3 {font-size: var(--fs-5);border-bottom: 2px solid;color: var(--green);}
div.topics.w80 div.sub div.latest.sub_title ul {
}
div.topics.w80 div.sub div.latest.sub_title ul li {
}
div.topics.w80 div.sub div.latest.sub_title ul li a {
    margin: 0.5em 0 0 0;
    display: block;
}
div.topics.w80 div.sub div.latest.sub_title ul li a span.date {font-size: var(--fs-2);color: var(--green);}

div.topics.w80 div.sub div.latest.sub_title ul li a {
    transition: transform 0.3s, opacity 0.3s;
}

div.topics.w80 div.sub div.latest.sub_title ul li a:hover {
    transform: translateX(5px);
    opacity: 0.8;
}

div.topics.w80 div.sub div.latest.sub_title ul li a:hover span.date {
    text-decoration: none;
}

div.topics.w80 div.sub div.latest.sub_title ul li a:hover p {
    color: var(--green);
    text-decoration: underline;
}

div.topics.w80 div.sub div.latest.sub_title ul li a p {
    transition: color 0.3s;
}
div.topics.w80 div.sub div.latest.sub_title ul li a p {
}
div.topics.w80 div.sub div.latest.sub_title ul li a p span{background: #5ab35a;color: #fff;padding: 0 0.5em;font-size: 0.8em;}
div.topics.w80 div.sub div.latest.sub_title ul li a p span.column{
    background: var(--yellow);
}
div.topics.w80 div.sub div.tag.sub_title {
}
div.topics.w80 div.sub div.tag.sub_title h3 {
}
div.topics.w80 div.sub div.tag.sub_title ul {margin: 1em 0 1em 0;display: flex;flex-wrap: wrap;}
div.topics.w80 div.sub div.tag.sub_title ul li {background: #d7d7d7;padding: 0.2em 1em;border-radius: 50px;margin: 0 0.2em 0.2em 0.2em;font-size: var(--fs-2);}
div.topics.w80 div.sub div.tag.sub_title ul li a {}

div.topics.w80 div.sub div.tag.sub_title ul li {
    transition: background-color 0.3s, transform 0.2s;
}

div.topics.w80 div.sub div.tag.sub_title ul li:hover {
    background: var(--green);
    transform: scale(1.05);
}

div.topics.w80 div.sub div.tag.sub_title ul li a {
    display: block;
    transition: color 0.3s;
}

div.topics.w80 div.sub div.tag.sub_title ul li:hover a {
    color: #fff;
}


div.pager {
    margin: 4em 0;
    text-align: center;
}

div.pager ul.pager_list {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    gap: 8px !important;
}
div.pager ul.pager_list li{width: auto !important;}
div.pager ul.pager_list li a,
div.pager ul.pager_list li span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    border-radius: 10px;
    background: #f0f0f0;
    color: #333;
    text-decoration: none;
    font-weight: 700;
    font-size: var(--fs-3);
    transition: background-color 0.3s, color 0.3s, transform 0.2s;
}

div.pager ul.pager_list li.current span {
    background: var(--green);
    color: #fff;
}

div.pager ul.pager_list li a:hover {
    background: #d7d7d7;
    transform: translateY(-2px);
}

div.pager ul.pager_list li.prev a,
div.pager ul.pager_list li.next a {
    background: #e0e0e0;
}

div.pager ul.pager_list li.prev a:hover,
div.pager ul.pager_list li.next a:hover {
    background: var(--yellow);
    color: #fff;
}



.topics.w80 {
    width: 80%;
    margin: 0 auto;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #333;
}

.article {
    background: #fff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 2px 15px rgba(0,0,0,0.05);
}

.article h3 {
    font-size: 1.8rem;
    line-height: 1.4;
    margin-bottom: 10px;
    color: #1a1a1a;
}

.article .date {
    display: block;
    font-size: 0.9rem;
    color: #888;
    margin-bottom: 30px;
}

/* Ã¦Å“Â¬Ã¦â€“â€¡Ã£â€šÂ¨Ã£Æ’ÂªÃ£â€šÂ¢Ã¥â€ â€¦Ã£ÂÂ®Ã¨Â£â€¦Ã©Â£Â¾ */
.area {
    line-height: 1.8;
    margin-bottom: 40px;
}

.area p {
    margin-bottom: 1.5rem;
}

.area h4 {
    font-size: 1.4rem;
    padding-left: 12px;
    border-left: 5px solid #5ab35a;
    margin: 40px 0 20px;
    color: var(--reen);
}

.area h5 {
    font-size: 1.2rem;
    border-bottom: 2px solid #f9c03c;
    padding-bottom: 8px;
    margin: 30px 0 15px;
}

.area h6 {
    font-size: 1rem;
    font-weight: bold;
    margin: 25px 0 10px;
    color: #555;
}

/* Ã£Æ’ÂªÃ£â€šÂ¹Ã£Æ’Ë†Ã£ÂÂ®Ã¨Â£â€¦Ã©Â£Â¾ */
.area ul, .area ol {
    background: #f9f9f9;
    padding: 20px 20px 20px 40px;
    border-radius: 6px;
    margin-bottom: 1.5rem;
}

.area li {
    margin-bottom: 8px;
}

/* Ã¤Â¸â€¹Ã©Æ’Â¨Ã£ÂÂ®Ã£â€šÂ¿Ã£â€šÂ°Ã£Æ’ÂªÃ£â€šÂ¹Ã£Æ’Ë† */
div.topics.w80 div.main ul.tag-list {
    display: flex !important;
    flex-wrap: wrap !important;
    list-style: none;
    padding: 0;
    gap: 10px !important;
    border-top: 1px solid #eee;
    padding-top: 20px;
}

.tag-list li a {
    display: inline-block;
    background: #f0f0f0;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    text-decoration: none;
    color: #666;
    transition: background 0.3s;
}

.tag-list li a:hover {
    background: #007bff;
    color: #fff;
}


div.article {
}
div.article h3 {
}
div.article span.date {
}
div.article div.area {
}
div.article div.area p {
}
div.article div.area h4 {
}
div.article div.area h5 {
}
div.article div.area ul {display: block !important;flex-wrap: unset !important;gap: 0 !important;}
div.article div.area ul li {
}
div.article div.area h6 {
}
div.article div.area ol {
}
div.article div.area ol li {
}
div.article ul.tag-list {
}
div.article ul.tag-list li {width: unset !important;}
div.article ul.tag-list li a {
}


.faq dl {
    /* border-bottom: 1px solid #e0e0e0; */
}

.faq-check {
    display: none;
}

.faq label {
    display: block;
    cursor: pointer;
}

.faq dt {
    position: relative;
    padding: 25px 50px 25px 0;
}

.faq dt h4 {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.4;
    font-weight: bold;
}

.second .faq dt::before,.second  .faq dt::after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    width: 16px;
    height: 2px;
    background-color: #ffffff;
    transition: transform 0.3s ease-in-out;
}

.second .faq dt::before {
    transform: translateY(-50%) rotate(90deg);
}

.second .faq dt::after {
    transform: translateY(-50%);
}

.faq-check:checked + label dt::before {
    transform: translateY(-50%) rotate(0deg);
    opacity: 0;
}

.faq-check:checked + label dt::after {
    transform: translateY(-50%) rotate(180deg);
}

.second .faq dd {
    margin: 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;
}

.faq-check:checked + label + dd {
    max-height: 500px;
    opacity: 1;
    padding-bottom: 30px;
}

.dd-inner {
    line-height: 1.8;
    font-size: 1rem;
    color: #555;
}

.faq dl {
    /* border-bottom: 1px solid #e0e0e0; */
}

.faq-check {
    display: none;
}

.faq label {
    display: block;
    cursor: pointer;
}

.faq dt {
    position: relative;
    padding: 25px 50px 25px 0;
}

.faq dt h4 {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.4;
    font-weight: bold;
}

.second .faq dt::before,
.second .faq dt::after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    width: 16px;
    height: 2px;
    background-color: #ffffff;
    transition: transform 0.3s ease-in-out;
}

.second .faq dt::before {
    transform: translateY(-50%) rotate(90deg);
}

.second .faq dt::after {
    transform: translateY(-50%);
}

.second .faq-check:checked + label dt::before {
    transform: translateY(-50%) rotate(0deg);
    opacity: 0;
}

.second .faq-check:checked + label dt::after {
    transform: translateY(-50%) rotate(180deg);
}

.second .faq dd {
    margin: 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;
}

.second .faq-check:checked + label + dd {
    max-height: 500px;
    opacity: 1;
    padding-bottom: 30px;
}

.dd-inner {
    line-height: 1.8;
    font-size: 1rem;
    color: #555;
}

div.second {
}
div.second p.notfound {padding: 5em 0;width: 80%;margin: 0 auto;max-width: 800px;font-size: var(--fs-4);}
div.second p.notfound b {font-size: var(--fs-8);display: block;}
div.second p.notfound a {color: var(--green);text-decoration: underline;}


table.form {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 20px;
}

table.form tbody {
    display: table-row-group;
}

table.form tbody tr {
    border-bottom: 1px solid #ddd;
}

table.form tbody tr th {
    background-color: #f9f9f9;
    width: 30%;
    padding: 15px;
    text-align: left;
    font-weight: bold;
    border: 1px solid #ddd;
}

table.form tbody tr th span.nin {
    background: #999;
    color: #fff;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 3px;
    margin-left: 8px;
    vertical-align: middle;
    font-weight: normal;
}

table.form tbody tr td {
    padding: 15px;
    border: 1px solid #ddd;
}

table.form tbody tr th span.his {
    background: #ff4d4d;
    color: #fff;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 3px;
    margin-left: 8px;
    vertical-align: middle;
    font-weight: normal;
}

/* Ã£Æ’â€¢Ã£â€šÂ©Ã£Æ’Â¼Ã£Æ’Â Ã¥â€¦Â¥Ã¥Å â€ºÃ¦Â¬â€žÃ£ÂÂ®Ã¨ÂªÂ¿Ã¦â€¢Â´ */
table.form input[type="text"],
table.form input[type="email"],
table.form input[type="tel"],
table.form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

/* CF7Ã§â€°Â¹Ã¦Å“â€°Ã£ÂÂ®Ã£â€šÂ¨Ã£Æ’Â©Ã£Æ’Â¼Ã£Æ’Â¡Ã£Æ’Æ’Ã£â€šÂ»Ã£Æ’Â¼Ã£â€šÂ¸Ã§Â­â€°Ã£ÂÂ®Ã¨ÂªÂ¿Ã¦â€¢Â´ */
.wpcf7-form-control-wrap {
    display: block;
}






div.second {
}
div.second div.about01 {padding: 5vw 0;}
div.second div.about01 img {
    display: block;
    margin: 0 auto;
}
div.second div.about01 h3 {text-align: center;color: #67330c;font-size: var(--fs-8);margin: 1em 0 0 0;}
div.second div.about01 p {text-align: center;font-size: var(--fs-5);margin: 0.5em 0 0 0;}
div.second div.about02 {
    padding: 5vw 0;
    margin-top: -1vw;
    margin-left: 0px;
    margin-right: 0px;
    position: relative;
    z-index: 1;
    background: rgb(250 243 225);
    min-height: 200px;
    clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);
}
div.second div.about02 div.top_title.second_title.fade-up {
}
div.second div.about02 div.top_title.second_title.fade-up p.en {text-align: left;}
div.second div.about02 div.top_title.second_title.fade-up p.en span {
}
div.second div.about02 div.top_title.second_title.fade-up h3.jp {
}
div.second div.about02 div.w80{
    max-width: 1200px;
}
div.second div.about02 ul {display: flex;gap: 1%;margin: 1em 0;}
div.second div.about02 ul li {background: #ffffff;border-radius: 10px;box-shadow: 1px 1px 7px #3333;text-align: center;width: calc( 100% / 4);padding: 3em 2%;}
div.second div.about02 ul li i {color: var(--green);font-size: var(--fs-15);}
div.second div.about02 ul li h4 {font-size: var(--fs-4);margin: 1em 0 0 0;color: #3d3d3d;}
div.second div.about02 ul li i.fa-solid.fa-film {
}
div.second div.about02 ul li i.fa-solid.fa-pencil {
}
div.second div.about02 ul li i.fa-solid.fa-comments {
}
div.second div.about02 p {text-align: right;}
div.second div.about03 {padding: 5vw 0 0 0;margin-top: -1vw;margin-left: 0px;margin-right: 0px;position: relative;z-index: 1;background: rgb(255 255 255);min-height: 200px;clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);}
div.second div.about03 dl {display: flex;width: 80%;margin: 0 auto;max-width: 1000px;}
div.second div.about03 dl dt {width: 18%;padding: 0 2% 0 0;}
div.second div.about03 dl dt img {}
div.second div.about03 dl dd {width: 80%;}
div.second div.about03 dl dd h3 {font-size: var(--fs-7);margin: 0 0 0.5em 0;color: var(--green);}
div.second div.about03 dl dd p {font-size: var(--fs-4);}
div.second {
}
div.second div.for-c01 {text-align: center;padding: 5em 0;}
div.second div.for-c01 h3 {text-decoration-line: underline;text-decoration-style: wavy;text-decoration-color: #ff0;text-underline-offset: 0.3em; /* Ã¦â€“â€¡Ã¥Â­â€”Ã£ÂÂ¨Ã§Â·Å¡Ã£ÂÂ®Ã¨Â·ÂÃ©â€ºÂ¢Ã£â€šâ€™Ã¨ÂªÂ¿Ã¦â€¢Â´ */font-size: var(--fs-8);color: var(--green);margin: 0 0 1em 0;}
div.second div.for-c01 p {font-size: var(--fs-5);}
div.second div.for-c02 {padding: 5vw 0;margin-top: -1vw;margin-left: 0px;margin-right: 0px;position: relative;z-index: 1;background: rgb(250 243 225);min-height: 200px;clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);}
div.second div.for-c02 div.w80 {
}
div.second div.for-c02 div.w80 i.fa-solid.fa-circle-check {text-align: center;margin: 0 auto;display: block;color: #9ace75;font-size: var(--fs-15);}
div.second div.for-c02 div.w80 h3 {text-align: center;font-size: var(--fs-8);color: #3b250c;margin: 1em 0;}
div.second div.for-c02 div.w80 ul {display: flex;gap: 2%;width: 90%;margin: 0 auto;}
div.second div.for-c02 div.w80 ul li {padding: 2em;width: calc(100% / 3);background: #fff;border-radius: 10px;}
div.second div.for-c02 div.w80 ul li dl {
}
div.second div.for-c02 div.w80 ul li dl dt {
}
div.second div.for-c02 div.w80 ul li dl dt img {border-radius: 10px;width: 100%;aspect-ratio: 16/10;object-fit: cover;}
div.second div.for-c02 div.w80 ul li dl dd {padding: 1em 0 0 0;}
div.second div.for-c02 div.w80 ul li dl dd h4 {display: inline;background: linear-gradient(transparent 60%, rgba(255, 255, 0, 0.4) 60%);padding: 0 2px;color: var(--green);font-size: var(--fs-6);}
div.second div.for-c02 div.w80 ul li dl dd ul {display: block;width: 100%;margin: unset;}
div.second div.for-c02 div.w80 ul li dl dd ul li {padding: 0;width: auto;border-radius: unset;background: unset;}
div.second div.for-c03 {padding: 5vw 0;margin-top: -1vw;margin-left: 0px;margin-right: 0px;position: relative;z-index: 1;background: rgb(255 255 255);min-height: 200px;clip-path: polygon(0% 20px, 1% 0%, 2% 20px, 3% 0%, 4% 20px, 5% 0%, 6% 20px, 7% 0%, 8% 20px, 9% 0%, 10% 20px, 11% 0%, 12% 20px, 13% 0%, 14% 20px, 15% 0%, 16% 20px, 17% 0%, 18% 20px, 19% 0%, 20% 20px, 21% 0%, 22% 20px, 23% 0%, 24% 20px, 25% 0%, 26% 20px, 27% 0%, 28% 20px, 29% 0%, 30% 20px, 31% 0%, 32% 20px, 33% 0%, 34% 20px, 35% 0%, 36% 20px, 37% 0%, 38% 20px, 39% 0%, 40% 20px, 41% 0%, 42% 20px, 43% 0%, 44% 20px, 45% 0%, 46% 20px, 47% 0%, 48% 20px, 49% 0%, 50% 20px, 51% 0%, 52% 20px, 53% 0%, 54% 20px, 55% 0%, 56% 20px, 57% 0%, 58% 20px, 59% 0%, 60% 20px, 61% 0%, 62% 20px, 63% 0%, 64% 20px, 65% 0%, 66% 20px, 67% 0%, 68% 20px, 69% 0%, 70% 20px, 71% 0%, 72% 20px, 73% 0%, 74% 20px, 75% 0%, 76% 20px, 77% 0%, 78% 20px, 79% 0%, 80% 20px, 81% 0%, 82% 20px, 83% 0%, 84% 20px, 85% 0%, 86% 20px, 87% 0%, 88% 20px, 89% 0%, 90% 20px, 91% 0%, 92% 20px, 93% 0%, 94% 20px, 95% 0%, 96% 20px, 97% 0%, 98% 20px, 99% 0%, 100% 20px, 100% 100%, 0% 100%);}
div.second div.for-c03 div.w80 {
}
div.second div.for-c03 div.w80 dl {display: flex;align-items: stretch;}
div.second div.for-c03 div.w80 dl dt {width: 47%;margin: 0 3% 0 0;}
div.second div.for-c03 div.w80 dl dt img {object-fit: cover;height: 100%;}
div.second div.for-c03 div.w80 dl dd {width: 50%;}
div.second div.for-c03 div.w80 dl dd img{display:none;}
div.second div.for-c03 div.w80 dl dd div.top_title.second_title.fade-up {
}
div.second div.for-c03 div.w80 dl dd div.top_title.second_title.fade-up p.en {
}
div.second div.for-c03 div.w80 dl dd div.top_title.second_title.fade-up p.en span {
    font-size: unset;
    margin: unset;
    display: unset;
    color: var(--yellow);
}
div.second div.for-c03 div.w80 dl dd div.top_title.second_title.fade-up h3.jp {
}
div.second div.for-c03 div.w80 dl dd span {font-size: var(--fs-5);margin: 1em 0;display: block;color: #5f5f5f;font-weight: 700;}
div.second div.for-c03 div.w80 dl dd ul {
}
div.second div.for-c03 div.w80 dl dd ul li {margin: 0 0 1em 0;}
div.second div.for-c03 div.w80 dl dd ul li h4 {display: flex;align-items: center;font-size: var(--fs-6);color: var(--green);}
div.second div.for-c03 div.w80 dl dd ul li h4 span.no {font-size: var(--fs-9);margin: 0 0.5em 0 0;color: var(--yellow);}
div.second div.for-c03 div.w80 dl dd ul li h4 p {font-size: var(--fs-6);}
div.second div.for-c03 div.w80 dl dd ul li p {font-size: var(--fs-4);}
div.second div.for-c04 {border-radius: 10px;background: #fff;box-shadow: 1px 2px 14px 2px #00000021;width: 80%;margin: 1em auto 5em auto;max-width: 1000px;padding: 2em 3em;}
div.second div.for-c04 h3 {border-radius: 150px;background: #e4e4e4;text-align: center;padding: 0.5em 0;font-size: var(--fs-6);margin: 0 0 1em 0;}
div.second div.for-c04 dl {display: flex;}
div.second div.for-c04 dl dt {display: flex;align-items: center;border: 1px solid;padding: 2em;margin: 0 1em 0 0;}
div.second div.for-c04 dl dt table {
}
div.second div.for-c04 dl dt table tbody {
}
div.second div.for-c04 dl dt table tbody tr {
}
div.second div.for-c04 dl dt table tbody tr th {white-space: nowrap;text-align: left;}
div.second div.for-c04 dl dt table tbody tr td {white-space: nowrap;}
div.second div.for-c04 dl dt table tbody tr th,div.second div.for-c04 dl dt table tbody tr td{
    padding: 0.2em;
    font-size: var(--fs-5);
}
div.second div.for-c04 dl dd {
}
div.second div.for-c04 dl dd p {color: #3d3d3d;line-height: 2;font-size: var(--fs-2);}
div.second div.for-c02 div.w80 ul li dl dd ul {
    list-style: none;
    padding-left: 0;
    margin: 0.5em 0 0 0;
}

div.second div.for-c02 div.w80 ul li dl dd ul li {
    position: relative;
    padding-left: 1.5em;
    font-size: var(--fs-4);
    border-bottom: 2px dotted #b9b9b9;
    padding: 1em 0 1em 1.5em;
}

div.second div.for-c02 div.w80 ul li dl dd ul li::before {
    font-family: "Font Awesome 7 Free";
    content: "\f058";
    font-weight: 500;
    position: absolute;
    left: 0;
    top: 1em;
    color: rgb(255 96 0);
}

div.w80.contact {padding: 5em 0;max-width: 1000px;}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form textarea {
    width: 100%;
    padding: 0.8em;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

.form td {
    vertical-align: middle;
}


.form input.zip {
    width: 150px !important;
    display: inline-block !important;
    vertical-align: middle;
    margin: 0 0 5px 5px; 
	
}


.form td .wpcf7-form-control-wrap {
    display: inline-block !important;
    vertical-align: middle;
}

.form input.zip {
    width: 150px !important;
    display: inline-block !important;
    margin: 0 0 0 5px !important;
}

#addr {
    display: block !important;
    width: 100% !important;
    margin-top: 10px;
}

.submit-box {
    text-align: center;
    margin-top: 50px;
}

.submit-box input[type="submit"] {
    background-color: var(--green);
    color: #fff;
    font-size: 1.25rem;
    font-weight: bold;
    padding: 1em 5em;
    border: none;
    border-radius: 999px;
    cursor: pointer;
    transition: all 0.3s ease;
    appearance: none;
    -webkit-appearance: none;
}

.submit-box input[type="submit"]:hover {
    background-color: var(--yellow);
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

div.wpcf7 .ajax-loader {
    display: block;
    margin: 10px auto;
}

div.wpcf7-response-output {
    margin: 2em 0 0;
    padding: 1em;
    border-radius: 10px;
    text-align: center;
}


.back-to-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 50px;
  height: 50px;
  background-color: #333;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  transition: opacity 0.3s, transform 0.3s;
  text-decoration: none;
}

.back-to-top:hover {
  background-color: #555;
  transform: translateY(-5px);
}

.arrow {
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(-45deg);
  margin-top: 5px;
}
html {
  scroll-behavior: smooth !important;
}
section.policy {
    margin-top: 50px;
    width: 80%;
    margin: 0 auto;
    max-width: 1000px;
}
section.policy h3.h3 {
    font-size: 24px;
    margin-bottom: 20px;
    text-align: center;
    color: var(--green);
    margin-top: 0;
}
section.policy div.privacy01 {
    height: 300px;
    overflow-y: auto;
    border: 1px solid #ccc;
    padding: 20px;
    background-color: #f9f9f9;
    margin-bottom: 4em;
}
section.policy div.privacy01 p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 15px;
}
section.policy div.privacy01 div.privacy02 {
    margin-top: 20px;
}
section.policy div.privacy01 div.privacy02 h4 {
    font-size: 18px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
    margin-bottom: 10px;
}
section.policy div.privacy01 div.privacy02 p {
    font-size: 14px;
    margin-bottom: 10px;
}
section.policy div.privacy01 div.privacy02 ul {
    margin-bottom: 15px;
    padding-left: 20px;
}
section.policy div.privacy01 div.privacy02 ul li {
    font-size: 14px;
    list-style-type: disc;
    margin-bottom: 5px;
}
section.policy div.privacy01 div.privacy02 h5 {
    font-size: 16px;
    margin-bottom: 8px;
    border-left: 5px solid;
    padding: 0 0 0 0.5em;
    margin: 1em 0;
}
section.policy div.privacy01 div.privacy02 a {
    color: #007bff;
    text-decoration: none;
    display: block;
}
section.policy div.privacy01 div.privacy02 a i.fa-solid.fa-link {
    margin-left: 5px;
    font-size: 0.9em;
}

.wpcf7-spinner{
    display:none;
}

