@charset "UTF-8";
html {
  font-size: 10px;
}

body {
  overflow-wrap: break-word;
}

a,
a:link,
a:visited,
a:active,
a:hover,
a:hover img {
  text-decoration: none;
  color: #251e1c;
}

a:hover {
  text-decoration: none;
}

a:hover,
a:hover img,
.img_hover:hover {
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
  opacity: 0.8;
}

a {
  color: #251e1c;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  width: auto;
  height: auto;
}

div,
p {
  /*word-break: break-all;*/
}

ul,
ol,
li {
  list-style: none;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, nav, picture {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

ul,
ol,
li {
  list-style: none;
}

body,
td,
th,
input,
textarea {
  color: #251e1c;
  font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Tahoma, "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", Verdana, Arial, sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

figure, picture {
  line-height: 0;
}

picture {
  display: block;
}

html, body {
  width: 100%;
  height: 100%;
}

body {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

@media screen and (min-width: 769px), print {
  a[href^=tel] {
    pointer-events: none;
    text-decoration: none;
    cursor: default !important;
  }
  .show_sp {
    display: none !important;
  }
  .container {
    overflow: hidden;
    min-width: 1300px;
  }
  .row {
    max-width: 1050px;
    width: 100%;
    margin: 0 auto;
  }
  img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .tt {
    position: relative;
    font-size: 4.5rem;
    line-height: 1;
    font-weight: bold;
    color: #844F30;
    text-align: center;
    letter-spacing: 0.4em;
    padding-bottom: 88px;
  }
  .tt:after {
    content: "";
    width: 277px;
    height: 39px;
    background: url("../img/tt_bg.svg") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .header__nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .header__nav ul li {
    width: 110px;
    text-align: center;
  }
  .header__nav ul li a {
    font-size: 1.6rem;
    line-height: 32px;
    font-weight: bold;
    color: #845031;
    display: block;
    border-bottom: 2px dotted #88B83E;
    letter-spacing: 0.2em;
  }
  .footer {
    background: #85B73E;
    margin-top: 230px;
    padding-bottom: 80px;
  }
  .footer .row {
    position: relative;
  }
  .footer .row:before {
    content: "";
    width: 94px;
    height: 117px;
    background: url("../img/ic_tree04.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -100px;
    left: 109px;
  }
  .footer .row:after {
    content: "";
    width: 204px;
    height: 110px;
    background: url("../img/ic_clound04.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -45px;
    right: 5px;
  }
  .footer__tt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    top: -82px;
    margin: 0 auto;
    padding-top: 65px;
  }
  .footer__tt:before {
    content: "";
    width: 613px;
    height: 613px;
    background: #85B73E;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
  }
  .footer__tt > span {
    margin-bottom: 49px;
    display: inline-block;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    padding: 5px 30px 10px 40px;
    font-size: 2.5rem;
    line-height: 1;
    font-weight: bold;
    color: #FFF000;
    letter-spacing: 0.35em;
  }
  .footer__tt > span::before, .footer__tt > span::after {
    position: absolute;
    content: "";
    width: 16.12px;
    height: 38.59px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .footer__tt > span::before {
    background: url("../img/ic_splash_l.svg") 0 0 no-repeat;
    background-size: contain;
    left: 0;
  }
  .footer__tt > span::after {
    background: url("../img/ic_splash_r.svg") 0 0 no-repeat;
    background-size: contain;
    right: 0;
  }
  .footer__tt picture img {
    width: 329px;
    height: auto;
  }
  .footer__ct {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 70px;
  }
  .footer__ct .footer__info {
    width: calc(100% - 463px);
  }
  .footer__ct .footer__info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 14px;
  }
  .footer__ct .footer__info dl dt {
    width: 76px;
    font-size: 1.5rem;
    line-height: 1.61;
    font-weight: bold;
    color: #fff;
    border-bottom: 1px solid #FFF000;
    padding-top: 4px;
    padding-bottom: 14px;
    letter-spacing: 0.1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__ct .footer__info dl dd {
    width: calc(100% - 76px);
    font-size: 1.8rem;
    line-height: 29px;
    font-weight: bold;
    color: #fff;
    padding-left: 35px;
  }
  .footer__ct .footer__info dl dd small {
    font-size: 1.4rem;
  }
  .footer__ct .footer__info a {
    font-size: 3.7rem;
    line-height: 1;
    font-weight: bold;
    color: #fff;
    position: relative;
    padding-left: 50px;
    display: block;
    margin-top: 30px;
  }
  .footer__ct .footer__info a:before {
    content: "";
    width: 39px;
    height: 30px;
    background: url("../img/ic_mail.svg") no-repeat;
    background-size: contain;
    position: absolute;
    top: 3px;
    left: 0;
  }
  .footer__ct figure {
    width: 463px;
    margin-top: 35px;
  }
  .footer__phone {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer__phone span {
    background: #FFF000;
    font-weight: bold;
    font-size: 2.5rem;
    line-height: 1;
    width: 280px;
    height: 40px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 40px;
  }
  .footer__phone a {
    font-size: 7.5rem;
    line-height: 1;
    color: #FFF000;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding-left: 120px;
  }
  .footer__phone a:before {
    content: "";
    width: 47px;
    height: 61px;
    background: url("../img/ic_phone_yellow.svg") no-repeat;
    background-size: contain;
    position: absolute;
    left: 50px;
    top: 10px;
  }
  .banner {
    position: relative;
    padding: 80px 0 70px;
  }
  .banner > picture {
    text-align: center;
  }
  .banner__ct {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .banner__ct .row {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .banner__ct .row:before {
    content: "";
    width: 702px;
    height: 427px;
    background: url("../img/banner_l.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -140px;
    left: -292px;
  }
  .banner__ct .row:after {
    content: "";
    width: 740px;
    height: 291px;
    background: url("../img/banner_r.png") no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 70px;
    right: -152px;
  }
  .banner__slg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    right: 0;
    top: 110px;
  }
  .banner__slg span {
    font-size: 2.3rem;
    line-height: 58px;
    font-weight: bold;
    color: #717071;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    border-right: 2px dashed #DD9A96;
  }
  .banner__slg span:first-child {
    border-left: 2px dashed #DD9A96;
  }
  .banner__circle {
    opacity: 0.8;
    position: absolute;
    bottom: 70px;
    left: 0;
  }
  .bannerBottom {
    width: 100%;
    background: url(../img/bottom_header_bg.png) no-repeat center bottom;
    background-size: 1200px auto;
  }
  .bannerBottom + #header {
    padding-bottom: 100px;
  }
  .bannerBottom a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 230px;
  }
  .bannerBottom .logo img {
    width: 212px;
  }
  .about {
    padding: 112px 0 200px;
  }
  .about picture {
    text-align: center;
    width: 100%;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    overflow: hidden;
  }
  .about picture img {
    width: 110.8461538462%;
    max-width: 110.8461538462%;
    margin-left: -8.4615384615%;
  }
  .about picture::before {
    position: absolute;
    content: "";
    width: 48.6538461538%;
    height: 0;
    padding-top: 10.5%;
    background: url("../img/cloud_pc.png") 0 0 no-repeat;
    background-size: contain;
    top: 0;
    right: 19%;
  }
  .about p {
    text-align: center;
    font-size: 1.7rem;
    line-height: 33px;
    font-weight: 400;
  }
  .character {
    position: relative;
    background: #FFFBC8;
    margin: 144px 0 145px;
  }
  .character:before {
    content: "";
    width: 100%;
    height: 144px;
    background: url("../img/bg_top.png") center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -144px;
    left: 0;
  }
  .character:after {
    content: "";
    width: 100%;
    height: 109px;
    background: url("../img/bg_bottom.png") center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: -109px;
    left: 0;
  }
  .character .row {
    position: relative;
  }
  .character .row:before {
    content: "";
    width: 273px;
    height: 218px;
    background: url("../img/ic_tree.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -200px;
    left: -12px;
  }
  .character .row:after {
    content: "";
    width: 186px;
    height: 105px;
    background: url("../img/ic_clound.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -160px;
    right: 25px;
  }
  .character__tt {
    position: relative;
    top: -157px;
  }
  .character__list {
    margin-top: -57px;
    position: relative;
  }
  .character__list:after {
    content: "";
    width: 125px;
    height: 225px;
    background: url("../img/ic_tree02.png") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: 33px;
  }
  .character__list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .character__list li + li {
    margin-top: 70px;
  }
  .character__list li figure {
    width: 270px;
    text-align: center;
  }
  .character__list li .character__ct {
    width: calc(100% - 270px);
  }
  .character__list li .character__ct h4 {
    font-size: 2rem;
    line-height: 29px;
    font-weight: bold;
    color: #844F30;
    margin-bottom: 17px;
  }
  .character__list li .character__ct p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  .character__list li:nth-of-type(1) figure img {
    width: 135px;
  }
  .character__list li:nth-of-type(2) figure img {
    width: 123px;
  }
  .character__list li:nth-of-type(3) figure img {
    width: 137px;
  }
  .character__list li:nth-of-type(4) figure img {
    width: 76px;
  }
  .policy {
    text-align: center;
    padding-bottom: 158px;
  }
  .policy .row {
    position: relative;
  }
  .policy .row:before {
    content: "";
    width: 123px;
    height: 224px;
    background: url("../img/ic_tree03.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -86px;
    left: 14px;
  }
  .policy .row:after {
    content: "";
    width: 98px;
    height: 64px;
    background: url("../img/ic_clound02.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -24px;
    right: 174px;
  }
  .policy__tt {
    margin-bottom: 88px;
  }
  .policy__ct figure {
    margin-bottom: 45px;
  }
  .policy__ct p {
    font-size: 1.5rem;
    line-height: 29px;
  }
  .service {
    position: relative;
    background: #FFFBC8;
    margin: 144px 0 145px;
  }
  .service:before {
    content: "";
    width: 100%;
    height: 144px;
    background: url("../img/bg_top.png") center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -144px;
    left: 0;
  }
  .service:after {
    content: "";
    width: 100%;
    height: 109px;
    background: url("../img/bg_bottom.png") center no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: -109px;
    left: 0;
  }
  .service .row {
    position: relative;
  }
  .service .row:before {
    content: "";
    width: 185px;
    height: 105px;
    background: url("../img/ic_clound03.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -194px;
    left: 92px;
  }
  .service .row:after {
    content: "";
    width: 204px;
    height: 110px;
    background: url("../img/ic_clound04.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -180px;
    right: 68px;
  }
  .service__tt {
    position: relative;
    top: -157px;
  }
  .service__des {
    font-size: 1.9rem;
    line-height: 29px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 86px;
    margin-top: -57px;
  }
  .service__list {
    padding: 0 106px;
    position: relative;
  }
  .service__list:before {
    content: "";
    width: 140px;
    height: 176px;
    background: url("../img/ic_tree04.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -100px;
    right: -12px;
  }
  .service__list > li {
    padding-left: 127px;
    padding-bottom: 64px;
    margin-bottom: 63px;
    position: relative;
  }
  .service__list > li h4 {
    font-size: 2.5rem;
    line-height: 29px;
    font-weight: bold;
    color: #88B83E;
    margin-bottom: 30px;
    position: relative;
  }
  .service__list > li h4:before {
    content: "";
    width: 36px;
    height: 58px;
    background: url("../img/service01.svg") no-repeat;
    background-size: contain;
    position: absolute;
    top: -12px;
    left: -100px;
  }
  .service__list > li .service__ct {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .service__list > li .service__ct figure, .service__list > li .service__ct picture {
    width: 150px;
    text-align: center;
  }
  .service__list > li .service__ct ul {
    width: calc(100% - 150px);
    padding-left: 60px;
  }
  .service__list > li .service__ct ul li {
    font-size: 1.6rem;
    line-height: 29px;
    font-weight: bold;
    padding-left: 20px;
    position: relative;
  }
  .service__list > li .service__ct ul li:before {
    content: "●";
    color: #85B73E;
    position: absolute;
    top: 0;
    left: 0;
  }
  .service__list > li .service__ct ul.has_2col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .service__list > li .service__ct ul.has_2col li {
    width: 214px;
  }
  .service__list > li:not(:last-child):before {
    content: "";
    width: 100%;
    height: 14px;
    background: url("../img/ic_border.png") no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .service__list > li:nth-child(1) .service__ct figure img, .service__list > li:nth-child(1) .service__ct picture img {
    width: 58px;
  }
  .service__list > li:nth-child(2) h4:before {
    width: 40px;
    height: 62px;
    background: url("../img/service02.svg") no-repeat;
    background-size: contain;
  }
  .service__list > li:nth-child(2) .service__ct figure img, .service__list > li:nth-child(2) .service__ct picture img {
    width: 127px;
  }
  .service__list > li:nth-child(3) h4:before {
    width: 50px;
    height: 59px;
    background: url("../img/service03.svg") no-repeat;
    background-size: contain;
  }
  .service__list > li:nth-child(3) .service__ct figure img, .service__list > li:nth-child(3) .service__ct picture img {
    width: 88px;
  }
  .area {
    padding-top: 90px;
  }
  .area .row {
    position: relative;
  }
  .area .row:before {
    content: "";
    width: 125px;
    height: 255px;
    background: url("../img/ic_tree02.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -265px;
    left: 25px;
  }
  .area .row:after {
    content: "";
    width: 91px;
    height: 167px;
    background: url("../img/ic_tree05.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: 58px;
    right: 82px;
  }
  .area__tt {
    margin-bottom: 90px;
  }
  .area picture {
    text-align: center;
    margin-bottom: 220px;
    position: relative;
  }
  .area picture:before {
    content: "";
    width: 115px;
    height: 68px;
    background: url("../img/ic_car.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: 250px;
    left: 30px;
  }
  .area picture:after {
    content: "";
    width: 165px;
    height: 258px;
    background: url("../img/ic_burble.png") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -130px;
    right: 30px;
  }
  .area__box {
    max-width: 997px;
    margin: 0 auto;
    position: relative;
  }
  .area__box:before {
    content: "";
    width: 997px;
    height: 59px;
    background: url("../img/area_border01.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -59px;
    left: 0;
  }
  .area__box:after {
    content: "";
    width: 997px;
    height: 59px;
    background: url("../img/area_border01.png") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -59px;
    left: 0;
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg);
  }
  .area__box .area__inner {
    padding: 5px 74px;
    margin: 59px 0;
    position: relative;
  }
  .area__box .area__inner:before {
    content: "";
    width: 16px;
    height: 100%;
    background: url("../img/area_border02.png") repeat-y;
    background-size: initial;
    position: absolute;
    top: 0;
    left: 0;
  }
  .area__box .area__inner:after {
    content: "";
    width: 16px;
    height: 100%;
    background: url("../img/area_border02.png") repeat-y;
    background-size: initial;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
  }
  .area__box .area__inner h4 {
    text-align: center;
    color: #844F30;
    font-weight: bold;
    font-size: 4.5rem;
    line-height: 1;
    letter-spacing: 0.15em;
    margin-bottom: 50px;
  }
  .area__box .area__inner > p {
    font-size: 1.5rem;
    line-height: 25px;
    text-align: center;
    margin-bottom: 50px;
  }
  .area__box .area__inner .area__phone {
    display: block;
    position: relative;
    padding-bottom: 34px;
    text-align: center;
    max-width: 822px;
    margin: 0 auto 40px;
  }
  .area__box .area__inner .area__phone:before {
    content: "";
    width: 100%;
    height: 18px;
    background: url("../img/area_border03.png") no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .area__box .area__inner .area__phone span {
    background: #85B73E;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    line-height: 1;
    width: 152px;
    height: 28px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 15px;
  }
  .area__box .area__inner .area__phone a {
    font-size: 3.5rem;
    line-height: 1;
    color: #85B73E;
    font-weight: bold;
    padding: 0 27px 0 63px;
    position: relative;
    top: 3px;
  }
  .area__box .area__inner .area__phone a:before {
    content: "";
    width: 24px;
    height: 31px;
    background: url("../img/ic_phone_green.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 25px;
    top: 10px;
  }
  .area__box .area__inner .area__phone em {
    font-style: normal;
    font-size: 2.3rem;
    line-height: 1;
    font-weight: bold;
  }
  .area__box .area__inner .appeal {
    background: #efefef;
    padding: 10px;
    border-radius: 10px;
    font-size: 1.9rem;
    letter-spacing: 0.08em;
    text-align: center;
    font-weight: 700;
    margin-bottom: 50px;
  }
  .area__box .area__inner .appeal strong {
    font-weight: inherit;
    color: #ef857d;
  }
  .area__box .area__inner .area__ct {
    padding: 0 46px;
  }
  .area__box .area__inner .area__ct dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #000;
  }
  .area__box .area__inner .area__ct dl dt {
    width: 170px;
    background: #FFFDE5;
    font-size: 2rem;
    line-height: 31px;
    font-weight: bold;
    color: #844F30;
    padding: 22px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .area__box .area__inner .area__ct dl dd {
    width: calc(100% - 170px);
    padding: 22px;
    padding-left: 30px;
  }
  .area__box .area__inner .area__ct dl dd p {
    font-size: 2rem;
    line-height: 31px;
  }
  .area__box .area__inner .area__ct dl dd ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .area__box .area__inner .area__ct dl dd ul li {
    font-size: 1.8rem;
    line-height: 31px;
    position: relative;
    padding-left: 20px;
  }
  .area__box .area__inner .area__ct dl dd ul li + li {
    margin-top: 10px;
  }
  .area__box .area__inner .area__ct dl dd ul li span {
    display: block;
    font-size: 1.6rem;
  }
  .area__box .area__inner .area__ct dl dd ul li:before {
    content: "●";
    color: #85B73E;
    position: absolute;
    top: 0;
    left: 0;
  }
  .area__box .area__inner .area__ct dl dd ul.has_col li + li {
    margin-top: 0;
  }
  .area__box .area__inner .area__ct dl dd ul.has_col li:not(:last-child) {
    margin-right: 15px;
  }
  .area__box .area__inner .area__ct dl dd ul.block {
    margin-top: 10px;
    display: block;
  }
  .recruit {
    padding-top: 60px;
  }
  .recruit .image picture {
    text-align: center;
    width: 100%;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    overflow: hidden;
  }
  .recruit .image picture img {
    width: 110.8461538462%;
    max-width: 110.8461538462%;
    margin-left: -8.4615384615%;
  }
  .recruit .image picture::before {
    position: absolute;
    content: "";
    width: 48.6538461538%;
    height: 0;
    padding-top: 10.5%;
    background: url("../img/cloud_pc.png") 0 0 no-repeat;
    background-size: contain;
    top: 0;
    right: 19%;
  }
  .recruit .inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
  .recruit h4 {
    text-align: center;
    color: #844F30;
    font-weight: bold;
    font-size: 4.5rem;
    line-height: 1;
    letter-spacing: 0.15em;
    padding-bottom: 50px;
    margin-bottom: 50px;
    background: url(../img/title_line.svg) no-repeat center bottom;
    background-size: 324px 17px;
  }
  .recruit h4 + p {
    font-size: 1.5rem;
    line-height: 1.6666666667;
    text-align: center;
    margin-bottom: 50px;
  }
  .recruit .formArea {
    width: 100%;
  }
  .recruit .formArea .note {
    font-size: 1.3rem;
    text-align: right;
  }
  .recruit table.formTable {
    width: 100%;
    border-collapse: collapse;
  }
  .recruit table.formTable tr th, .recruit table.formTable tr td {
    font-size: 2rem;
    line-height: 1.75;
    text-align: left;
    vertical-align: top;
    padding-bottom: 30px;
  }
  .recruit table.formTable tr th {
    position: relative;
    width: 280px;
    white-space: nowrap;
    padding: 0.5em;
    padding-right: 2em;
  }
  .recruit table.formTable tr th.equired::after {
    content: "※";
    position: absolute;
    top: 0.5em;
    right: 0.5em;
  }
  .recruit table.formTable tr td {
    width: calc(100% - 280px);
    letter-spacing: 0.1em;
  }
  .recruit table.formTable tr td input[type=text], .recruit table.formTable tr td textarea, .recruit table.formTable tr td .frame {
    border: solid 1px #9fa0a0;
    padding: 1em 1em;
  }
  .recruit table.formTable tr td input[type=text].full, .recruit table.formTable tr td textarea.full, .recruit table.formTable tr td .frame.full {
    width: 100%;
  }
  .recruit table.formTable tr td input[type=text].short, .recruit table.formTable tr td textarea.short, .recruit table.formTable tr td .frame.short {
    width: 260px;
  }
  .recruit table.formTable tr td .formColumn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 0.5em 0;
  }
  .recruit table.formTable tr td .formColumn.frame {
    padding-left: 1em;
    padding-right: 1em;
  }
  .recruit table.formTable tr td .formColumn.twoColumn .cell {
    width: calc((100% - 2em) / 2);
  }
  .recruit table.formTable tr td .formColumn.twoColumn .cell input {
    width: 100%;
  }
  .recruit table.formTable tr td .formColumn .cell + .cell {
    margin-left: 2em;
  }
  .recruit .btn {
    text-align: center;
  }
  .recruit .btn button {
    cursor: pointer;
    border: none;
    background: #85b73e;
    border-radius: 0;
    font-size: 1.5rem;
    color: #FFF;
    width: 480px;
    text-align: center;
    padding: 20px 0;
  }
  .recruit.error {
    padding-top: 0;
  }
  .recruit.error .errorText {
    color: red;
    font-size: 1.5rem;
    line-height: 1.6666666667;
    text-align: center;
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .recruit.error .btn button {
    background: #666;
    color: #FFF;
  }
  .recruit.confirm {
    padding-top: 0;
  }
  .recruit.confirm table.formTable tr + tr th, .recruit.confirm table.formTable tr + tr td {
    border-top: solid 1px #9fa0a0;
  }
  .recruit.confirm table.formTable tr th, .recruit.confirm table.formTable tr td {
    padding-bottom: 30px;
    padding: 1em;
  }
  .recruit.confirm table.formTable tr th {
    background: #EEE;
  }
  .recruit.confirm .btn {
    margin-top: 50px;
  }
  .recruit.confirm .btn .back {
    margin-left: 15px;
    width: 200px;
    background: #666;
    color: #FFF;
  }
  .recruit.thanks {
    padding-top: 0;
  }
  .recruit.thanks .back {
    margin-top: 100px;
    text-align: center;
  }
  .recruit.thanks .back a {
    font-size: 1.6rem;
    line-height: 32px;
    font-weight: bold;
    color: #845031;
    display: inline-block;
    border-bottom: 2px dotted #88B83E;
    letter-spacing: 0.2em;
  }
  #fixBnr {
    position: fixed;
    z-index: 100;
    top: 50%;
    left: calc(100% - 60px);
    width: 40px;
    height: 235px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  #fixBnr dl dd {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
  }
  .show_pc {
    display: none !important;
  }
  .row {
    padding-left: 9.0666666667vw;
    padding-right: 9.0666666667vw;
  }
  .tt {
    position: relative;
    font-size: 6.6666666667vw;
    line-height: 1;
    font-weight: bold;
    color: #844F30;
    text-align: center;
    letter-spacing: 0.4em;
    padding-bottom: 11.3333333333vw;
  }
  .tt:after {
    content: "";
    width: 36.9333333333vw;
    height: 5.2vw;
    background: url("../img/tt_bg.svg") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .header {
    margin-bottom: 6.6666666667vw;
  }
  .header__nav ul {
    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;
  }
  .header__nav ul li {
    width: calc((100% - 2em) / 3);
    text-align: center;
  }
  .header__nav ul li:nth-child(n+4) {
    margin-top: 0.5em;
  }
  .header__nav ul li a {
    font-size: 2.1333333333vw;
    line-height: 4.2666666667vw;
    font-weight: bold;
    color: #845031;
    display: block;
    border-bottom: 2px dotted #88B83E;
    letter-spacing: 0.2em;
  }
  .footer {
    background: #85B73E;
    margin-top: 27.8666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  .footer .row {
    position: relative;
  }
  .footer .row:before {
    content: "";
    width: 56.8vw;
    height: 11.4666666667vw;
    background: url("../img/ic_clound07.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -16vw;
    left: 18.6666666667vw;
  }
  .footer__tt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    top: -10.9333333333vw;
    margin: 0 auto;
    padding-top: 8.6666666667vw;
  }
  .footer__tt:before {
    content: "";
    width: 81.7333333333vw;
    height: 81.7333333333vw;
    background: #85B73E;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
  }
  .footer__tt img {
    width: 53.2vw;
  }
  .footer__tt > span {
    margin-bottom: 6.9333333333vw;
    display: inline-block;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    padding: 1.2vw 6.9333333333vw 2.1333333333vw 8.2666666667vw;
    font-size: 5.3333333333vw;
    line-height: 1;
    font-weight: bold;
    color: #FFF000;
    letter-spacing: 0.45em;
  }
  .footer__tt > span::before, .footer__tt > span::after {
    position: absolute;
    content: "";
    width: 4.7328vw;
    height: 8.1358666667vw;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .footer__tt > span::before {
    background: url("../img/ic_splash_l.svg") 0 0 no-repeat;
    background-size: contain;
    left: 0;
  }
  .footer__tt > span::after {
    background: url("../img/ic_splash_r.svg") 0 0 no-repeat;
    background-size: contain;
    right: 0;
  }
  .footer__ct {
    margin-bottom: 5.3333333333vw;
  }
  .footer__ct .footer__info dl + dl {
    margin-top: 8.9333333333vw;
  }
  .footer__ct .footer__info dl dt {
    font-size: 4vw;
    line-height: 1;
    font-weight: bold;
    color: #FFF000;
    letter-spacing: 0.1em;
    text-align: center;
    margin-bottom: 2.6666666667vw;
  }
  .footer__ct .footer__info dl dd {
    font-size: 3.0666666667vw;
    line-height: 4.9333333333vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .footer__ct .footer__info dl dd figure {
    margin-bottom: 2.4vw;
  }
  .footer__ct .footer__info dl dd figure img {
    width: 67.3333333333vw;
  }
  .footer__ct .footer__info a {
    font-size: 5.6vw;
    line-height: 1;
    font-weight: bold;
    color: #fff;
    position: relative;
    padding-left: 5.3333333333vw;
    display: block;
    margin-top: 9.3333333333vw;
    text-align: center;
    letter-spacing: 0.05em;
  }
  .footer__ct .footer__info a:before {
    content: "";
    width: 5.8666666667vw;
    height: 4.2666666667vw;
    background: url("../img/ic_mail.svg") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0.6666666667vw;
    left: 0;
  }
  .footer__phone span {
    background: #FFF000;
    font-weight: bold;
    font-size: 3.3333333333vw;
    line-height: 1;
    width: 37.3333333333vw;
    height: 5.3333333333vw;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  .footer__phone a {
    font-size: 10vw;
    line-height: 1;
    color: #FFF000;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding-left: 10.6666666667vw;
    letter-spacing: -0.2666666667vw;
  }
  .footer__phone a:before {
    content: "";
    width: 6.2666666667vw;
    height: 8.1333333333vw;
    background: url("../img/ic_phone_yellow.svg") no-repeat;
    background-size: contain;
    position: absolute;
    left: 1.8666666667vw;
    top: 1.3333333333vw;
  }
  .banner {
    position: relative;
    padding-bottom: 13.3333333333vw;
  }
  .banner > picture {
    text-align: center;
  }
  .banner__ct {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .banner__circle {
    opacity: 0.8;
    position: absolute;
    bottom: 0;
    left: 9.3333333333vw;
  }
  .banner__circle img {
    width: 32.6666666667vw;
  }
  .bannerBottom {
    width: 100%;
    background: url(../img/bottom_header_bg.png) no-repeat center center;
    background-size: 100% auto;
  }
  .bannerBottom + #header {
    padding-bottom: 0vw;
  }
  .bannerBottom a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 26.6666666667vw;
  }
  .bannerBottom .logo img {
    width: 28.2666666667vw;
  }
  .about {
    padding: 0 0 22.2666666667vw;
  }
  .about picture {
    text-align: center;
    margin-bottom: 8vw;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  .about picture img {
    width: 192vw;
    max-width: 192vw;
    margin-left: -51.2vw;
  }
  .about picture::before {
    position: absolute;
    content: "";
    width: 28.6666666667vw;
    height: 0;
    padding-top: 14.5333333333vw;
    background: url("../img/cloud_sp.png") 0 0 no-repeat;
    background-size: contain;
    top: 0;
    right: 15.3333333333vw;
  }
  .about h3 {
    font-size: 6.6666666667vw;
    line-height: 10.6666666667vw;
    font-weight: 400;
    color: #717071;
    text-align: center;
    margin-bottom: 5.3333333333vw;
  }
  .about p {
    text-align: center;
    font-size: 2.6666666667vw;
    line-height: 5.0666666667vw;
    font-weight: 400;
  }
  .character {
    position: relative;
    background: #FFFBC8;
    margin: 19.2vw 0 19.3333333333vw;
  }
  .character:before {
    content: "";
    width: 100%;
    height: 19.2vw;
    background: url("../img/bg_top.png") center no-repeat;
    background-size: cover;
    position: absolute;
    top: -19.2vw;
    left: 0;
  }
  .character:after {
    content: "";
    width: 100%;
    height: 14.5333333333vw;
    background: url("../img/bg_bottom.png") center no-repeat;
    background-size: cover;
    position: absolute;
    bottom: -14.5333333333vw;
    left: 0;
  }
  .character .row {
    position: relative;
  }
  .character .row:before {
    content: "";
    width: 61.4666666667vw;
    height: 9.6vw;
    background: url("../img/ic_clound05.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -30.6666666667vw;
    left: 12.2666666667vw;
  }
  .character .row:after {
    content: "";
    width: 12vw;
    height: 14.9333333333vw;
    background: url("../img/ic_tree04.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -8.6666666667vw;
    right: 9.3333333333vw;
  }
  .character__tt {
    position: relative;
    top: -20.9333333333vw;
  }
  .character__list {
    margin-top: -7.6vw;
    position: relative;
    padding-bottom: 6.6666666667vw;
  }
  .character__list li + li {
    margin-top: 14vw;
  }
  .character__list li figure {
    text-align: center;
    margin-bottom: 5.3333333333vw;
  }
  .character__list li figure img {
    width: 24.5333333333vw;
  }
  .character__list li .character__ct h4 {
    font-size: 4vw;
    line-height: 6.6666666667vw;
    font-weight: bold;
    color: #844F30;
    margin-bottom: 3.3333333333vw;
    text-align: center;
  }
  .character__list li .character__ct p {
    font-size: 2.6666666667vw;
    line-height: 4.6666666667vw;
  }
  .character__list li:nth-child(2) {
    position: relative;
  }
  .character__list li:nth-child(2):before {
    content: "";
    width: 11.8666666667vw;
    height: 21.3333333333vw;
    background: url("../img/ic_tree02.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: 4vw;
    left: 0;
  }
  .character__list li:nth-child(2) figure img {
    width: 22.4vw;
  }
  .character__list li:nth-child(3) {
    position: relative;
  }
  .character__list li:nth-child(3):before {
    content: "";
    width: 21.0666666667vw;
    height: 12.5333333333vw;
    background: url("../img/ic_clound06.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -7.3333333333vw;
    right: 0;
  }
  .character__list li:nth-child(3) figure img {
    width: 24.9333333333vw;
  }
  .character__list li:nth-child(4) figure img {
    width: 13.3333333333vw;
  }
  .policy {
    text-align: center;
    padding-bottom: 21.0666666667vw;
  }
  .policy .row {
    position: relative;
  }
  .policy .row:before {
    content: "";
    width: 69.0666666667vw;
    height: 22vw;
    background: url("../img/ic_tree06.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -18vw;
    left: 12.8vw;
  }
  .policy__tt {
    margin-bottom: 8.5333333333vw;
  }
  .policy__ct figure {
    margin-bottom: 8vw;
    text-align: center;
  }
  .policy__ct figure img {
    width: 80.6666666667vw;
  }
  .policy__ct p {
    font-size: 2.6666666667vw;
    line-height: 5.0666666667vw;
  }
  .service {
    position: relative;
    background: #FFFBC8;
    margin: 19.2vw 0 19.3333333333vw;
  }
  .service:before {
    content: "";
    width: 100%;
    height: 19.2vw;
    background: url("../img/bg_top.png") center no-repeat;
    background-size: cover;
    position: absolute;
    top: -19.2vw;
    left: 0;
  }
  .service:after {
    content: "";
    width: 100%;
    height: 14.5333333333vw;
    background: url("../img/bg_bottom.png") center no-repeat;
    background-size: cover;
    position: absolute;
    bottom: -14.5333333333vw;
    left: 0;
  }
  .service .row {
    position: relative;
  }
  .service .row:before {
    content: "";
    width: 72.9333333333vw;
    height: 15.7333333333vw;
    background: url("../img/ic_tree07.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -25.8666666667vw;
    left: 17.2vw;
  }
  .service__tt {
    position: relative;
    top: -8vw;
  }
  .service__des {
    font-size: 3.0666666667vw;
    line-height: 5.7333333333vw;
    font-weight: bold;
    text-align: center;
    margin-bottom: 11.4666666667vw;
  }
  .service__list {
    position: relative;
  }
  .service__list > li {
    padding-bottom: 8.5333333333vw;
    margin-bottom: 8.4vw;
    position: relative;
  }
  .service__list > li:before {
    content: "";
    width: 64.6666666667vw;
    height: 64.6666666667vw;
    background: #fff;
    position: absolute;
    top: -8vw;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    border-radius: 50%;
    z-index: 0;
  }
  .service__list > li h4 {
    font-size: 5.3333333333vw;
    line-height: 1;
    font-weight: bold;
    color: #88B83E;
    margin-bottom: 8vw;
    text-align: center;
  }
  .service__list > li .service__ct {
    z-index: 1;
    position: relative;
  }
  .service__list > li .service__ct figure, .service__list > li .service__ct picture {
    text-align: center;
    margin-bottom: 3.3333333333vw;
  }
  .service__list > li .service__ct figure img, .service__list > li .service__ct picture img {
    width: 7.4666666667vw;
  }
  .service__list > li .service__ct ul {
    max-width: 64.6666666667vw;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-left: 3.3333333333vw;
  }
  .service__list > li .service__ct ul li {
    font-size: 3.3333333333vw;
    line-height: 5.3333333333vw;
    font-weight: bold;
    padding-left: 4vw;
    position: relative;
  }
  .service__list > li .service__ct ul li:before {
    content: "●";
    color: #85B73E;
    position: absolute;
    top: 0;
    left: 0;
  }
  .service__list > li .service__ct ul.has_2col {
    max-width: 76.5333333333vw;
    padding-left: 0;
  }
  .service__list > li .service__ct ul.has_2col li:nth-child(odd) {
    width: 32.5333333333vw;
  }
  .service__list > li:nth-child(1)::before {
    top: 5.3333333333vw;
  }
  .service__list > li:nth-child(2) {
    margin-top: 18.6666666667vw;
  }
  .service__list > li:nth-child(2) figure img, .service__list > li:nth-child(2) picture img {
    width: 16.9333333333vw;
  }
  .service__list > li:nth-child(3)::before {
    top: 2.6666666667vw;
  }
  .service__list > li:nth-child(3) figure img, .service__list > li:nth-child(3) picture img {
    width: 11.7333333333vw;
  }
  .area {
    padding-top: 12vw;
  }
  .area .row {
    position: relative;
  }
  .area .row:before {
    content: "";
    width: 73.4666666667vw;
    height: 26.9333333333vw;
    background: url("../img/ic_tree08.png") center no-repeat;
    background-size: contain;
    position: absolute;
    top: -33.3333333333vw;
    left: 12.5333333333vw;
  }
  .area__tt {
    margin-bottom: 12vw;
  }
  .area picture {
    text-align: center;
    margin-bottom: 29.3333333333vw;
    position: relative;
  }
  .area picture:before {
    content: "";
    width: 60.4vw;
    height: 1.7333333333vw;
    background: url("../img/area_border03.png") no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    bottom: -17.3333333333vw;
  }
  .area picture:after {
    content: "";
    width: 16vw;
    height: 25.0666666667vw;
    background: url("../img/ic_burble.png") center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -29.3333333333vw;
    right: 0;
  }
  .area__box {
    padding-bottom: 9.0666666667vw;
    position: relative;
  }
  .area__box:before {
    content: "";
    width: 81.0666666667vw;
    height: 1.7333333333vw;
    background: url("../img/area_border03.png") no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  .area__box .area__inner {
    padding: 0.6666666667vw 9.0666666667vw;
    margin: 7.8666666667vw 0 0;
  }
  .area__box .area__inner h4 {
    text-align: center;
    color: #844F30;
    font-weight: bold;
    font-size: 6.6666666667vw;
    line-height: 1;
    letter-spacing: 0.15em;
    margin-bottom: 6.6666666667vw;
  }
  .area__box .area__inner > p {
    font-size: 2.6666666667vw;
    line-height: 5.0666666667vw;
    text-align: center;
    margin-bottom: 6.6666666667vw;
  }
  .area__box .area__inner .area__phone {
    display: block;
    position: relative;
    text-align: center;
    margin: 0 auto 5.3333333333vw;
  }
  .area__box .area__inner .area__phone span {
    background: #85B73E;
    color: #fff;
    font-weight: bold;
    font-size: 3.6vw;
    line-height: 1;
    width: 26.6666666667vw;
    height: 4.9333333333vw;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 4.9333333333vw;
  }
  .area__box .area__inner .area__phone a {
    font-size: 6vw;
    line-height: 1;
    color: #85B73E;
    font-weight: bold;
    padding-left: 8.4vw;
    position: relative;
    top: 0.6666666667vw;
  }
  .area__box .area__inner .area__phone a:before {
    content: "";
    width: 4.1333333333vw;
    height: 5.4666666667vw;
    background: url("../img/ic_phone_green.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 3.3333333333vw;
    top: 1.6vw;
  }
  .area__box .area__inner .area__phone em {
    font-style: normal;
    font-size: 3.3333333333vw;
    line-height: 1;
    font-weight: bold;
    display: block;
    margin-top: 3.6vw;
  }
  .area__box .area__inner .appeal {
    background: #efefef;
    padding: 1.3333333333vw;
    border-radius: 1.3333333333vw;
    font-size: 2.5333333333vw;
    letter-spacing: 0.08em;
    text-align: center;
    font-weight: 700;
    margin-bottom: 6.6666666667vw;
  }
  .area__box .area__inner .appeal strong {
    font-weight: inherit;
    color: #ef857d;
  }
  .area__box .area__inner .area__ct dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #000;
  }
  .area__box .area__inner .area__ct dl dt {
    width: 17.6vw;
    background: #FFFDE5;
    font-size: 2.2666666667vw;
    line-height: 4.2666666667vw;
    font-weight: bold;
    color: #844F30;
    padding: 1.8666666667vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .area__box .area__inner .area__ct dl dd {
    width: calc(100% - 17.6vw);
    padding: 1.8666666667vw;
    padding-left: 2.1333333333vw;
    padding-right: 0;
  }
  .area__box .area__inner .area__ct dl dd p {
    font-size: 2.9333333333vw;
    line-height: 4.2666666667vw;
  }
  .area__box .area__inner .area__ct dl dd ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .area__box .area__inner .area__ct dl dd ul li {
    font-size: 2.4vw;
    line-height: 4.2666666667vw;
    position: relative;
    padding-left: 2.6666666667vw;
  }
  .area__box .area__inner .area__ct dl dd ul li + li {
    margin-top: 1.3333333333vw;
  }
  .area__box .area__inner .area__ct dl dd ul li span {
    display: block;
    font-size: 2vw;
  }
  .area__box .area__inner .area__ct dl dd ul li:before {
    content: "●";
    color: #85B73E;
    position: absolute;
    top: 0;
    left: 0;
  }
  .area__box .area__inner .area__ct dl dd ul.has_col li + li {
    margin-top: 0;
  }
  .area__box .area__inner .area__ct dl dd ul.has_col li:not(:last-child) {
    margin-right: 1.0666666667vw;
  }
  .area__box .area__inner .area__ct dl dd ul.block {
    margin-top: 1.3333333333vw;
    display: block;
  }
  .recruit {
    margin-top: 8vw;
  }
  .recruit .image picture {
    text-align: center;
    position: relative;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  .recruit .image picture img {
    width: 192vw;
    max-width: 192vw;
    margin-left: -51.2vw;
  }
  .recruit .image picture::before {
    position: absolute;
    content: "";
    width: 28.6666666667vw;
    height: 0;
    padding-top: 14.5333333333vw;
    background: url("../img/cloud_sp.png") 0 0 no-repeat;
    background-size: contain;
    top: 0;
    right: 15.3333333333vw;
  }
  .recruit .inner {
    padding: 0.6666666667vw 2.6666666667vw;
  }
  .recruit .inner h4 {
    text-align: center;
    color: #844F30;
    font-weight: bold;
    font-size: 6.6666666667vw;
    line-height: 1;
    letter-spacing: 0.15em;
    margin-bottom: 6.6666666667vw;
  }
  .recruit .inner > p {
    font-size: 2.6666666667vw;
    line-height: 5.0666666667vw;
    text-align: center;
    margin-bottom: 6.6666666667vw;
  }
  .recruit .formArea {
    width: 100%;
  }
  .recruit .formArea .note {
    font-size: 1.7333333333vw;
    text-align: right;
    margin-bottom: 1em;
  }
  .recruit table.formTable {
    width: 100%;
    border-collapse: collapse;
  }
  .recruit table.formTable tr th, .recruit table.formTable tr td {
    font-size: 2.6666666667vw;
    line-height: 1.75;
    text-align: left;
    vertical-align: top;
    padding-bottom: 1em;
  }
  .recruit table.formTable tr th {
    position: relative;
    width: 37.3333333333vw;
    white-space: nowrap;
    padding: 0.5em;
    padding-right: 2em;
  }
  .recruit table.formTable tr th.equired::after {
    content: "※";
    position: absolute;
    top: 0.5em;
    right: 0.5em;
  }
  .recruit table.formTable tr td {
    width: calc(100% - 37.3333333333vw);
    letter-spacing: 0.1em;
  }
  .recruit table.formTable tr td input[type=text], .recruit table.formTable tr td textarea, .recruit table.formTable tr td .frame {
    border: solid 1px #9fa0a0;
    padding: 0.5em 1em;
    width: 100%;
  }
  .recruit table.formTable tr td input[type=text].full, .recruit table.formTable tr td textarea.full, .recruit table.formTable tr td .frame.full {
    width: 100%;
  }
  .recruit table.formTable tr td input[type=text].short, .recruit table.formTable tr td textarea.short, .recruit table.formTable tr td .frame.short {
    width: 100%;
  }
  .recruit table.formTable tr td .formColumn {
    display: block;
    width: 100%;
    padding: 0.5em 0;
  }
  .recruit table.formTable tr td .formColumn.frame {
    padding-left: 1em;
    padding-right: 1em;
  }
  .recruit .btn {
    text-align: center;
  }
  .recruit .btn button {
    cursor: pointer;
    border: none;
    background: #85b73e;
    border-radius: 0;
    font-size: 2vw;
    letter-spacing: 0.1em;
    color: #FFF;
    width: 70vw;
    text-align: center;
    padding: 2.6666666667vw 0;
  }
  .recruit.error {
    padding-top: 0;
  }
  .recruit.error .errorText {
    color: red;
    font-size: 1.5rem;
    line-height: 1.6666666667;
    text-align: center;
    margin-top: 6.6666666667vw;
    margin-bottom: 6.6666666667vw;
  }
  .recruit.error .btn button {
    background: #666;
    color: #FFF;
  }
  .recruit.confirm {
    padding-top: 0;
  }
  .recruit.confirm table.formTable tr + tr th, .recruit.confirm table.formTable tr + tr td {
    border-top: solid 1px #9fa0a0;
  }
  .recruit.confirm table.formTable tr th, .recruit.confirm table.formTable tr td {
    padding: 1em 0.5em;
  }
  .recruit.confirm table.formTable tr th {
    background: #EEE;
  }
  .recruit.confirm .btn {
    margin-top: 6.6666666667vw;
  }
  .recruit.confirm .btn button {
    width: calc((100% - 20px) / 2);
  }
  .recruit.confirm .btn .back {
    margin-left: 10px;
    background: #666;
    color: #FFF;
  }
  .recruit.thanks {
    padding-top: 0;
  }
  .recruit.thanks .back {
    margin-top: 13.3333333333vw;
    text-align: center;
  }
  .recruit.thanks .back a {
    font-size: 2.1333333333vw;
    line-height: 4.2666666667vw;
    font-weight: bold;
    color: #845031;
    display: inline-block;
    border-bottom: 2px dotted #88B83E;
    letter-spacing: 0.2em;
  }
  #fixBnr {
    position: fixed;
    z-index: 100;
    top: 50%;
    left: calc(100% - 8vw);
    width: 5.3333333333vw;
    height: 31.3333333333vw;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  #fixBnr dl dd {
    margin-top: 2.6666666667vw;
  }
}
.fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}
.fadeInUp.active {
  opacity: 1;
  -webkit-transform: translate(0);
          transform: translate(0);
}

.fadeIn {
  opacity: 0;
}
.fadeIn.active {
  opacity: 1;
}

.delay_03 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.delay_06 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.delay_09 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.delay_12 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.delay_15 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

.delay_18 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

.delay_21 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 2.1s;
          transition-delay: 2.1s;
}

.delay_24 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}

.delay_27 {
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 2.7s;
          transition-delay: 2.7s;
}