@charset "utf-8";

.pc-only {
    display: block
  }
  
  .sp-only {
    display: none
  }
  
  @media screen and (max-width:768px) {
    .pc-only {
      display: none
    }
    .sp-only {
        display: block;
      }
  }

  body {
    margin: 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif,"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    letter-spacing: 0.05rem;
}

p{
    color: #2f2f2f;
    letter-spacing: 0.1rem;
    line-height: 1.5;
}

img {
    width: 100%;
}

a {
    display: inline-block;
    width: 100%;
}

.header {
    display: flex;
    background: rgb(134 202 188 / 80%);
    padding: 1%;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    position: fixed;
    z-index: 2;
}

div.header-logo {
    width: 15%;
}

ul.menu_list {
    font-family:'Century Gothic';
    padding: 0;
    display: flex;
    list-style: none;
    font-size: 1vw;
    text-align: center;
    align-items: center;
    font-weight: bold;
    width: 100%;
    justify-content: end;
}

a.menu_list_button {
    font-size: 0.8vw;
    color: #fff;
}

p.small {
    font-size: 0.9vw;
    color: #fff;
    padding-top: 3%;
}

li.menu_list {
    padding: 0 2%;
}

.menu1 {
    display: flex;
    width: 100%;
    transform: none;
    z-index: 1;
    align-items: center;

}


.menu {
    display: none;
}

ul.list-btn {
    display: flex
;
    list-style: none;
    padding: 0;
    justify-content: space-between;
    width: 50%;
    gap: 3%;
    margin-left: 1%;
}

li.btn {
    width: 100%;
}

a.a-btn {
    text-decoration: none;
    display: block;
    color: #1fb99a;
    font-weight: bold;
    font-size: 1.1vw;
    background: #fff;
    padding: 7% 0;
    border-radius: 100px;
    border: solid 2px #1fb99a;
    text-align: center;
}

a.b-btn {
    text-decoration: none;
    display: block;
    color: #fff;
    font-weight: bold;
    font-size: 1.1vw;
    background-image: linear-gradient(90deg, rgba(0, 155, 110, 1), rgba(31, 185, 154, 1));
    padding: 7% 0;
    border-radius: 100px;
    text-align: center;
}

.fv {
    background-image: url(../img/fv.jpg);
    background-size: cover;
    height: 45vw;
}

.fv2 {
    background-image: url(../img/fv2.png);
    background-size: cover;
    height: 25vw;
}

h1 {
    font-size: 3.8vw;
    font-weight: bold;
    padding: 12% 0% 0 10%;
    letter-spacing: 0.3rem;
    color: #1fb99a;
}

p.sub-title {
    font-size: 1.3vw;
    padding: 2% 0 0 10%;
    font-weight: bold;
    color: #333333;
    line-height: 1.5;
}

.strong-box {
    display: flex;
    padding: 2% 0 0 8%;
}

img.circle {
    width: 17%;
}

.wrap{
    padding: 0 15%;
}

div#onayami {
    padding: 5% 15%;
    background-image: url(../img/onayami-back.png);
    background-size: cover;
}

p.small-txt {
    position: relative;
    text-align: center;
    font-family: "cabin","futura";
    font-weight: bold;
    color: #828282;
    letter-spacing: 0.1rem;
    padding-bottom: 5%;
}


p.small-txt::after {
    content: '';
    position: absolute;
    left: 50%;
    display: inline-block;
    width: 3%;
    height: 3px;
    transform: translateX(-50%);
    background-color: #1fb99a;
    border-radius: 2px;
    bottom: 30px;
}

h2 {
    font-size: 2vw;
    font-weight: bold;
    text-align: center;
    color: #333333;
    letter-spacing: 0.1rem;
    padding-bottom: 5%;
}

.onayami-box {
    display: flex;
    justify-content: space-between;
    gap: 5%;
}

p.onayami-txt {
    font-weight: bold;
    text-align: center;
    padding: 0% 0 5%;
}

.item {
    width: 30%;
}

img.arrow {
    display: block;
    width: 4%;
    margin: 5% auto;
    opacity: 60%;
}

p.kaiketsu-txt01 {
    font-size: 2vw;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: #1fb99a;
    margin: 0 auto 1%;
    width: fit-content;
    padding: 0.3% 0.7%;
}

p.kaiketsu-txt02{
    font-size: 2.5vw;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: #1fb99a;
    margin: 0 auto;
    width: fit-content;
    padding: 0.3% 0.7%;
}

p.kaiketsu-txt03 {
    font-size: 1.5vw;
    font-weight: bold;
    padding: 5% 0 0;
    text-align: center;
    line-height: 2;
}

div#merit {
    padding: 5% 18%;
    background: #f3f8f7;
}

.merit-box {
    display: flex;
    justify-content: space-between;
    margin: 5% 0 0;
    padding: 4% 5%;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
}

img.merit-img {
    width: 70%;
}

p.number {
    font-size: 2.5vw;
    font-family: "cabin","futura";
    color: #1fb99a;
    position: relative;
    font-style: italic;
    letter-spacing: 0.3rem;
}

p.number::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 7%;
    height: 3px;
    background-color: #1fb99a;
    left: 3%;
    bottom: -5%;
}

h3 {
    font-size: 1.8vw;
    padding: 5% 0;
    color: #1fb99a;
    font-weight: bold;
    letter-spacing: 0.1rem;
}

p.merit-txt {
    line-height: 2;
    font-size: 1.2vw;
}

.merit-item01 {
    width: 55%;
    text-align: center;
}

.merit-item02 {
    width: 45%;
}

div#features {
    padding: 5% 0;
}

p.sub-txt {
    font-weight: bold;
    text-align: center;
    font-size: 1.3vw;
    padding-bottom: 5%;
}

img.number {
    position: absolute;
    width: 13%;
}

.features-box {
    display: flex;
    justify-content: space-between;
    margin: 5% 0;
}

.features-item {
    position: relative;
    background: #f3f8f7;
    border-radius: 20px;
    padding: 3% 5%;
    text-align: center;
    margin: 0% 2%;
    width: 100%;
}

img.number {
    position: absolute;
    width: 13%;
    top: -13%;
    left: 43%;
}

h3.features::after {
    content: '';
    position: absolute;
    left: 50%;
    display: inline-block;
    width: 50%;
    height: 1px;
    transform: translateX(-50%);
    background-color: #1fb99a;
    border-radius: 2px;
    top: 37%;
}

div.features-txt {
    padding-top: 4%;
    font-size: 1vw;
}

p.column01 {
    padding-bottom: 2%;
}

p.column02 {
    padding-bottom: 0%;
}

.comparison-box {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15%;
    padding: 10% 23% 5%;
    background-image: url(../img/comparison-back.png);
    background-size:cover;
    z-index: -1;
}

.comparison-item {
    position: relative;
    width: 50%;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
    padding: 14% 3% 5%;
    border-radius: 15px;
    height: 28vw;
    background: #fff;
}

img.arrow02 {
    width: 10%;
    margin: 0 auto;
    display: block;
}

img.comparison {
    position: absolute;
    width: 15%;
}

p.comparison-txt {
    font-size: 1.8vw;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
}

img.comparison {
    position: absolute;
    width: 50%;
    top: -17%;
    left: 25%;
}

p.after-txt {
    padding: 13% 0%;
    text-align: center;
    font-weight: bold;
    font-size: 1.3vw;
}

p.before-txt {
    text-align: center;
    padding: 8% 0%;
}

.arrow02 {
    position: absolute;
    top: 53%;
    width: 2%;
    left: 49%;
}

div#cta {
    background: #f3f8f7;
    padding: 3% 25% 5%;
}

.btn-box {
    display: flex;
    justify-content: space-between;
    gap: 5%;
}

.cta-btn01 {
    background: #fff;
    padding: 6% 0;
    border-radius: 100px;
    font-size: 1.5vw;
    font-weight: bold;
    color: #1fb99a;
    width: 100%;
    text-align: center;
    border: solid 2px #1fb99a;
}

.cta-btn02 {
    background-image: linear-gradient(90deg, rgba(0, 155, 110, 1), rgba(31, 185, 154, 1));
    padding: 6% 0;
    border-radius: 100px;
    font-size: 1.5vw;
    font-weight: bold;
    color: #fff;
    width: 100%;
    text-align: center;
}

h3.cta {
    text-align: center;
}


.btn-item {
    width: 100%;
}

p.top-txt {
    position: relative;
    font-weight: bold;
    text-align: center;
    font-size: 1.3vw;
    padding-bottom: 3%;
}

p.top-txt::after {
    content: "";
    display: block;
    position: absolute;
    top: -20px;
    left: 45%;
    width: 32px;
    height: 12px;
    background: url(../img/icon-top.png) top center no-repeat;
    background-size: 32px 12px;
}

div#about {
    padding: 5% 15%;
}

.about-box {
    background: #f2f8fb;
    border-radius: 20px;
    padding: 5% 5% 2%;
}

p.about-ttl {
    color: #1a9c82;
    font-size: 1.8vw;
    text-align: center;
    font-weight: bold;
}

.about-txt-box {
    background: #fff;
    padding: 5% 6%;
    text-align: center;
    font-size: 1.1vw;
    margin: 3% 0;
    border-radius: 15px;
}

p.about-txt {
    line-height: 1.8;
}

p.about-name {
    font-weight: bold;
    padding-top: 2%;
}

div#achievements {
    padding: 5% 20%;
}

.achievements-box {
    display: flex;
    justify-content: space-between;
}

.achievements-card {
    margin: 3%;
    height: 38vw;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
    border-radius: 15px;
    width: 100%;
}

.achievements-item02 {
    padding: 5%;
}

p.achievements-ttl {
    background: #1fb99a;
    color: #fff;
    font-weight: bold;
    font-size: 1.3vw;
    padding: 2% 0%;
    width: 60%;
    margin: 0 0 3%;
    text-align: center;
}

p.achievements-sub-ttl {
    font-weight: bold;
    font-size: 1.2vw;
}

.achievements-item {
    border: solid 2px #1a9c82;
    padding: 1.5% 0;
    width: 25%;
    text-align: center;
    border-radius: 100px;
    color: #1a9c82;
    font-weight: bold;
    margin: 3% 0 2%;
    font-size: 0.9vw;
}

p.achievements-txt {
    font-size: 1vw;
}

div#flow {
    padding: 5% 15%;
}

img.flow-img {
    width: 80%;
    display: block;
    margin: 0 auto;
}

.footer-box {
    display: flex;
}

div#footer {
    padding: 5% 15% 2%;
    background: #bfd8d3;
}

img.footer-logo {
    width: 25%;
}

ul.footer-link {
    display: flex;
    padding: 5% 0;
}

.footer-list{
    padding-right: 3%;
}

.footer-item02 {
    width: 100%;
}

p.copy-light {
    text-align: center;
    font-size: 0.8vw;
    padding-top: 10%;
}

h1.contact-ttl {
    text-align: center;
    padding-left: 0;
    font-size: 3vw;
}

table.contact-table {
    max-width: 800px;
    margin: 0 auto;
}

table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}


.form-box {
    padding: 3% 0;
}

div.form table th {
    width: 35%;
    max-width: 210px;
    font-weight: bold;
    position: relative;
    vertical-align: top;
    padding-left: 40px;
    padding-top: 15px;
}

div.form span.optional {
    white-space: nowrap;
    padding: 5px;
    line-height: 1;
    font-size: 13px;
    color: #ba0000;
    background-color: rgba(186, 0, 0, .12);
    margin: 0 5px 0 0;
}

table td {
    text-align: left;
}

.contact input {
    margin-bottom: 8px;
}

input {
    width: 100%;
    padding: 13px 12px;
    margin: 5px 0 3px;
}

input[type=radio]+label {
    padding: 0 0px 0 30px;
    margin: 3px 20px 10px 0px;
    display: block;
    background-image: url(../img/input_check_off.svg);
    background-size: 20px 20px;
    cursor: pointer;
    position: relative;
    background-position: left 50%;
    background-repeat: no-repeat;
}

input[type=radio]:checked+label:before {
    content: "";
    width: 12px;
    height: 20px;
    border-left: 3px solid #1fb99a;
    border-top: 3px solid #1fb99a;
    position: absolute;
    transform: rotate(-135deg);
    top: -5px;
    left: 5px;
    z-index: 9;
}

input, select, textarea, search {
    font-family: "Noto Sans JP", sans-serif;
    background-color: #f3f5f5;
    border-radius: 4px;
    border: none;
    font-size: 16px;
    border-radius: 4px;
}

input[type=radio], input[type=checkbox] {
    display: none;
}

div.form .agree_box {
    max-width: 800px;
    margin: 20px auto;
}

ul.eqn5_list.check_list {
    padding: 3% 0;
}

.submit {
    display: block;
    cursor: pointer;
    width: 100%;
    max-width: 266px;
    margin: 0 auto;
    text-align: center;
    padding: 20px;
    font-weight: bold;
    border-radius: 100px;
    color: #fff;
    background-image: linear-gradient(90deg, rgba(0, 155, 110, 1), rgba(31, 185, 154, 1));
    border: none;
    font-size: 18px;
}

.f_complete p {
    text-align: center;
    font-weight: bold;
    padding: 3% 0;
}

a.g-c-btn, a.g-c-btn--return, .btn_return a {
    display: block;
    max-width: 340px;
    width: 100%;
    border: 3px solid #1fb99a;
    background: #fff;
    color: #1fb99a;
    letter-spacing: .04em;
    padding: 20px;
    border-radius: 40px;
    font-weight: bold;
    text-align: center;
    margin: 0 auto 5%;
}

.fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.5s;
  &.fadein-left{
      transform: translate(-30px,0);
  }
  &.fadein-right{
      transform: translate(30px,0);
  }
  &.fadein-up{
      transform: translate(0,-30px);
  }
  &.fadein-bottom{
      transform: translate(0,30px);
  }
  &.scrollin{
    opacity: 1 !important;
    transform: translate(0, 0) !important;
  }
}

h1.ttl{
    font-size: 2.5vw;
}

.txt {
    padding: 1% 0;
    line-height: 2;
    font-size: 1vw;
}

ul.txt-box {
    padding: 0 0 5%;
}

h2.anisocilal-ttl {
    font-size: 2vw;
    font-weight: bold;
    text-align: left;
    color: #333333;
    letter-spacing: 0.2rem;
    padding: 5% 0 3%;
}

h3.anisocilal-ttl {
    font-size: 1.5vw;
    padding: 3% 0 1%;
    color: #1fb99a;
    font-weight: bold;
    letter-spacing: 0.1rem;
}

table {
    padding: 5% 0;
}

th {
    padding: 3%;
    background: #f3f8f7;
    border-top: 1px solid #ddd;
}

td {
    padding: 3%;
    border-top: 1px solid #ddd;
}

a.fotter-list1 {
    width: 30%;
}

a.fotter-list2 {
    width: 50%;
}

@media screen and (max-width:768px) {
.fv-sp {
    background-image: url(../img/fv-sp.png);
    background-size: cover;
    height: 120vw;
}

img.fv-h1 {
    width: 85%;
}

img.sub-ttl {
    width: 95%;
    padding: 5%;
}

.fv-sp2 {
    background-image: url(../img/fv2.png);
    background-size: cover;
    height: 60vw;
}

h1.ttl {
    font-size: 5.5vw;
}

div.header-logo {
    width: 30%;
}

.header {
    padding: 2%;
}

.burger {
    width: 15%;
    background-image: url(../img/burger.png);
    background-size: 40px;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    position: relative;
    z-index: 1;
    overflow: scroll;
    height: 3vh;
}


.burger.is-active {
    background-image: url(../img/910_x_h.png);
}

ul.menu_list {
    line-height: 2.5;
    display: block;
    padding: 20% 0 0;
    list-style: none;
    margin: 0;
}

a.menu_list_button {
    font-size: 2vw;
    color: #828282;
}

p.small {
    font-size: 4vw;
    color: #2f2f2f;
    position: relative;
}

li.menu_list {
    margin: 5% 0;
    font-size: 4vw;
    border-bottom: solid 1px #ddd;
    padding: 0 0 5%;
}

li.menu_list:last-child {
    border-bottom:none;
}

.menu1 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    background-color: #fff;
    display: none;
    width: 100%;
    transform:none;
}

.menu1.is-active {
    display: block;
    background: #fff;
    overflow: auto;
    position: fixed;
    top: 0%;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.161);
    height: 100%;
    margin: 0px 0px 0px 36px;
    overflow-x: hidden;
    overflow-y: auto;
    width: 80%;
    left: 11%;
    background: rgba(255, 255, 255, 0.9);
}


h1 {
    font-size: 7vw;
    padding: 28% 0% 0 3%;
    letter-spacing: 0.2rem;
}

p.sub-title {
    font-size: 4vw;
    padding: 28% 0 0 6%;
    font-weight: bold;
    color: #333333;
    line-height: 1.5;
}

.strong-box {
    display: flex;
    padding: 20% 0 0;
    justify-content: center;
}

div#onayami {
    padding: 10% 5%;
}

p.small::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 5%;
    height: 1px;
    transform: translateX(-50%);
    background-color: #1fb99a;
    bottom: 31px;
    left: 50%;
}

p.small-txt {
    position: relative;
    text-align: center;
    font-family: "cabin", "futura";
    color: #828282;
    letter-spacing: 0.1rem;
    padding-bottom: 5%;
    font-size: 3vw;
    font-weight: normal;
}


p.small-txt::after {
    width: 5%;
    height: 2px;
    bottom: 5px;
}

h2 {
    font-size: 6vw;
    padding: 5% 0;
}

img.circle {
    width: 30%;
}

.onayami-box {
    display: block;
}

.item {
    width: 100%;
}

img.onayami {
    width: 80%;
    display: block;
    margin: 0 auto;
}

img.arrow {
    display: block;
    width: 10%;
    margin: 10% auto;
    opacity: 60%;
}

p.kaiketsu-txt01 {
    font-size: 6vw;
    padding: 0.3% 2%;
}

p.kaiketsu-txt02 {
    font-size: 6vw;
    padding: 0.3% 2%;
}

p.kaiketsu-txt03 {
    font-size: 3.5vw;
    line-height: 1.8;
}

div#merit {
    padding: 10% 5%;
    background: #f3f8f7;
}

.merit-box {
    display: block;
    margin: 5% 0;
    padding: 10% 5%;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
}

.merit-item01 {
    width: 100%;
}

p.number {
    font-size: 8vw;
    text-align: center;
}

p.number::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 7%;
    height: 2px;
    background-color: #1fb99a;
    left: 45%;
    bottom: -5%;
}

.merit-item02 {
    width: 100%;
    padding-top: 5%;
}

h3 {
    font-size: 5vw;
    padding: 5% 0;
    color: #1fb99a;
    font-weight: bold;
    letter-spacing: 0.1rem;
    text-align: center;
}

p.merit-txt {
    line-height: 1.8;
    font-size: 4vw;
    text-align: center;
}

div#features {
    padding: 10% 0;
}

p.sub-txt {
    font-weight: bold;
    text-align: center;
    font-size: 4vw;
    padding-bottom: 0;
}

.wrap {
    padding: 0 5%;
}

.features-box {
    display: block;
}

.features-item {
    position: relative;
    background: #f3f8f7;
    border-radius: 15px;
    padding: 5%;
    text-align: center;
    margin: 15% 0%;
    width: 100%;
}

img.number {
    position: absolute;
    width: 15%;
    top: -12%;
    left: 43%;
}

h3 {
    font-size: 5vw;
    padding: 7% 0 2%;
}

h3.features::after {
    top: 38%;
}

div.features-txt {
    font-size: 3.5vw;
}

.comparison-box {
    position: relative;
    display: block;
    padding: 10% 5% 0%;
    background-image: url(../img/comparison-back.png);
    background-size: cover;
    z-index: -1;
}

.comparison-item {
    position: relative;
    width: 100%;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
    padding: 14% 3% 5%;
    border-radius: 15px;
    height: 90vw;
    background: #fff;
    margin-bottom: 25%;
}

div#cta {
    background: #f3f8f7;
    padding: 5%;
}

.btn-box {
    display: block;
}

p.top-txt {
    font-size: 4vw;
    padding-bottom: 2%;
}

.cta-btn01 {
    padding: 5% 0px;
    font-size: 5vw;
}

.cta-btn02 {
    padding: 5% 0px;
    font-size: 5vw;
}

.btn-item {
    width: 100%;
    padding: 5% 0;
}

div#about {
    padding: 10% 5%;
}

p.about-ttl {
    font-size: 4vw;
}

.about-txt-box {
    background: #fff;
    padding: 5% 5%;
    text-align: center;
    font-size: 3vw;
    margin: 5% 0;
    border-radius: 10px;
}

p.about-txt {
    line-height: 1.5;
}

.about-box {
    border-radius: 15px;
    padding: 8% 5% 5%;
}

div#achievements {
    padding: 10% 5%;
}

.achievements-box {
    display: block;
}

.achievements-card {
    height: 145vw;
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 20%);
    border-radius: 15px;
    width: 100%;
    margin: 10% 0;
}

p.achievements-ttl {
    font-size: 5vw;
    width: 60%;
    margin: 0 0 3%;
}

p.achievements-sub-ttl {
    font-weight: bold;
    font-size: 4vw;
}

.achievements-item {
    border: solid 2px #1a9c82;
    padding: 2% 0;
    width: 30%;
    text-align: center;
    border-radius: 100px;
    color: #1a9c82;
    font-weight: bold;
    margin: 3% 0 2%;
    font-size: 4vw;
}

p.achievements-txt {
    font-size: 3.5vw;
}

div#flow {
    padding: 10% 5%;
}

img.flow-img {
    width: 100%;
    display: block;
    margin: 5% auto;
}

div#footer {
    padding: 10% 5% 5%;
    background: #bfd8d3;
}

.footer-box {
    display: block;
}

img.footer-logo {
    width: 50%;
    display: block;
    margin: 0 auto 5%;
}

ul.footer-link {
    display: block;
    padding: 5% 0;
    text-align: center;
}

.footer-list {
    padding: 2%;
}

p.copy-light {
    text-align: center;
    font-size: 3vw;
    padding-top: 10%;
}

p.comparison-txt {
    font-size: 6vw;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
    padding-top: 23%;
}

p.before-txt {
    text-align: center;
    padding: 5% 0%;
    font-size: 3.5vw;
}

p.after-txt {
    padding: 5% 0%;
    text-align: center;
    font-weight: bold;
    font-size: 4vw;
}

ul.list-btn {
    display: block;
    width: 85%;
    margin: 0 auto;
}

a.a-btn {
    text-decoration: none;
    display: block;
    color: #1fb99a;
    font-weight: bold;
    font-size: 4.5vw;
    background: #fff;
    padding: 6% 0;
    border-radius: 100px;
    border: solid 2px #1fb99a;
    text-align: center;
    margin-bottom: 5%;
}

a.b-btn {
    text-decoration: none;
    display: block;
    color: #fff;
    font-weight: bold;
    font-size: 4.5vw;
    background-image: linear-gradient(90deg, rgba(0, 155, 110, 1), rgba(31, 185, 154, 1));
    padding: 6.5% 0;
    border-radius: 100px;
    text-align: center;
}

h1.contact-ttl {
    font-size: 6vw;
    padding-top: 25%;
}

div.form table, div.form table thead, div.form table tbody, div.form table tfoot, div.form table tr {
    display: block;
    width: 100%;
}

div.form table tr th, div.form table tr td {
    display: block;
    width: 100%;
    padding: 2% 0;
}

.form-box {
    padding: 3% 5% 10%;
    width: 100%;
}

.f_complete p {
    text-align: center;
    font-weight: bold;
    padding: 5%;
}

a.g-c-btn, a.g-c-btn--return, .btn_return a {
    margin: 0 auto 10%;
}

h2.anisocilal-ttl {
    font-size: 5vw;
    font-weight: bold;
    text-align: left;
    color: #333333;
    letter-spacing: 0.1rem;
    padding: 10% 0 5%;
}

.txt {
    padding: 1% 0;
    line-height: 2;
    font-size: 3.5vw;
}

h3.anisocilal-ttl {
    font-size: 4.5vw;
    padding: 8% 0 1%;
    color: #1fb99a;
    font-weight: bold;
    letter-spacing: 0.1rem;
    text-align: left;
}

th {
    padding: 5%;
    background: #f3f8f7;
    border-top: 1px solid #ddd;
    width: 35%;
}

td {
    padding: 6%;
    border-top: 1px solid #ddd;
}

table {
    padding: 5% 0 15%;
}

}