@charset "UTF-8";
/* lowerHeader */
.lowerHeader {
  position: relative; }
  .lowerHeader.news .wrap {
    padding-bottom: calc(15 / 375* 100%); }
  .lowerHeader .bg {
    aspect-ratio: 750 / 660; }
  .lowerHeader .wrap {
    padding: calc(24 / 375 * 100%) calc(36 / 375 * 100%) calc(45 / 375 * 100%) calc(36 / 375 * 100%); }

@media screen and (min-width: 769px) {
  .lowerHeader {
    overflow: hidden;
    display: flex;
    align-items: center;
    aspect-ratio: 1440 / 250; }
    .lowerHeader.news .wrap {
      padding-bottom: 0; }
    .lowerHeader .bg {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1;
      aspect-ratio: 1440 / 250; }
      .lowerHeader .bg img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 80%; }
    .lowerHeader .tape {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      z-index: 2;
      width: 100%;
      height: 169%;
      background-color: #FFFFFF;
      transform-origin: 25% center;
      transform: rotate(-140deg) translate(12.7vw, 2.8vw); }
      .lowerHeader .tape:after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: calc(100% - 1px);
        width: 0.9rem;
        background: url(/img/common/edge_tape2.svg) left top repeat-y;
        background-size: contain; }
    .lowerHeader .wrap {
      position: relative;
      z-index: 5;
      padding: calc(4 / 1440 * 100%) 0 0 calc(220 / 1440 * 100%); } }
#companyArea #message .contentInner {
  width: calc(300 / 375 * 100%); }
#companyArea #message .wrap .titleWrap {
  padding: calc(20 / 300 * 100%) 0; }
#companyArea #message .wrap .textWrap {
  padding: 0 0 calc(38 / 300 * 100%) 0; }
  #companyArea #message .wrap .textWrap .text {
    font-size: 1.5rem;
    line-height: 1.87;
    font-weight: 500;
    letter-spacing: -0.03em;
    margin: 0 0 2.8rem 0; }
    #companyArea #message .wrap .textWrap .text.last {
      margin: 0 0 1.5rem 0; }
  #companyArea #message .wrap .textWrap .name {
    font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.8rem;
    line-height: 2.44;
    font-weight: 700;
    text-align: right; }
#companyArea #policy .content {
  background-color: #0EB176; }
#companyArea #policy .contentInner {
  width: calc(300 / 375 * 100%); }
#companyArea #policy .wrap .titleWrap {
  padding: calc(42 / 300 * 100%) 0 0 0; }
  #companyArea #policy .wrap .titleWrap .title {
    color: #FFFFFF; }
  #companyArea #policy .wrap .titleWrap .logo {
    width: calc(140 / 300 * 100%);
    margin: 0 auto;
    padding: calc(25 / 300 * 100%) 0 calc(28 / 300 * 100%) 0; }
#companyArea #policy .wrap .textWrap {
  padding: 0 0 calc(23 / 300 * 100%) 0; }
  #companyArea #policy .wrap .textWrap .text {
    color: #FFFFFF;
    font-size: 1.5rem;
    line-height: 1.87;
    font-weight: 700;
    letter-spacing: -0.03em;
    margin: 0 0 1.5rem 0; }
#companyArea #tree:after {
  content: "";
  display: block;
  height: 3px;
  background-color: #005014; }
#companyArea #tree .titleWrap {
  position: relative;
  background-color: #F2F6C3;
  margin: 0 0 calc(30 / 375 * 100%) 0; }
  #companyArea #tree .titleWrap .title {
    font-size: 2.8rem;
    line-height: 1.21;
    font-weight: 900;
    text-align: center;
    padding: calc(47 / 375 * 100%) 0 calc(30 / 375 * 100%) 0; }
  #companyArea #tree .titleWrap .name {
    font-size: 2.8rem;
    line-height: 1.21;
    font-weight: 900;
    text-align: center;
    padding: 0 0 calc(43 / 375 * 100%) 0; }
  #companyArea #tree .titleWrap .wrap {
    position: relative;
    aspect-ratio: 375 / 396; }
    #companyArea #tree .titleWrap .wrap .image {
      position: absolute;
      z-index: 2; }
    #companyArea #tree .titleWrap .wrap .line {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 3;
      width: calc(218 / 375 * 100%);
      margin: calc(70 / 375 * 100%) 0 0 calc(60 / 375 * 100%); }
    #companyArea #tree .titleWrap .wrap .nav .item {
      position: absolute;
      top: 0;
      z-index: 5;
      width: calc(83 / 375 * 100%); }
      #companyArea #tree .titleWrap .wrap .nav .item:nth-child(1) {
        left: 0;
        margin: calc(288 / 375 * 100%) 0 0 calc(14 / 375 * 100%); }
      #companyArea #tree .titleWrap .wrap .nav .item:nth-child(2) {
        left: 0;
        margin: calc(172 / 375 * 100%) 0 0 calc(14 / 375 * 100%); }
      #companyArea #tree .titleWrap .wrap .nav .item:nth-child(3) {
        right: 0;
        margin: calc(288 / 375 * 100%) calc(14 / 375 * 100%) 0 0; }
      #companyArea #tree .titleWrap .wrap .nav .item:nth-child(4) {
        right: 0;
        margin: calc(172 / 375 * 100%) calc(14 / 375 * 100%) 0 0; }
      #companyArea #tree .titleWrap .wrap .nav .item:nth-child(5) {
        right: 0;
        margin: calc(57 / 375 * 100%) calc(14 / 375 * 100%) 0 0; }
  #companyArea #tree .titleWrap .sep {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; }
    #companyArea #tree .titleWrap .sep .hr {
      position: absolute;
      top: -1.5px;
      left: 0;
      width: 22.7%;
      height: 3px;
      background-color: #005014;
      border-radius: 3px; }
      #companyArea #tree .titleWrap .sep .hr:nth-child(2) {
        left: auto;
        right: 0;
        width: 25.8%; }
#companyArea #tree .flow {
  background-color: #FFFFFF; }
  #companyArea #tree .flow .list {
    padding: calc(35 / 345 * 100%) 0 calc(3 / 345 * 100%) 0; }
    #companyArea #tree .flow .list .item {
      position: relative;
      margin: calc(65 / 345 * 100%) 0 calc(118 / 345 * 100%) 0;
      transform: translateY(50px);
      transition: all 0.6s ease-out; }
      #companyArea #tree .flow .list .item:nth-child(1) {
        transition-delay: 0s; }
        #companyArea #tree .flow .list .item:nth-child(1):after {
          transition-delay: 0.6s; }
      #companyArea #tree .flow .list .item:nth-child(2) {
        transition-delay: 0.2s; }
        #companyArea #tree .flow .list .item:nth-child(2):after {
          transition-delay: 0.8s; }
      #companyArea #tree .flow .list .item:nth-child(3) {
        transition-delay: 0.4s; }
        #companyArea #tree .flow .list .item:nth-child(3):after {
          transition-delay: 1.0s; }
      #companyArea #tree .flow .list .item:nth-child(4) {
        transition-delay: 0.6s; }
        #companyArea #tree .flow .list .item:nth-child(4):after {
          transition-delay: 1.2s; }
      #companyArea #tree .flow .list .item:nth-child(5) {
        transition-delay: 0.8s; }
      #companyArea #tree .flow .list .item:last-child {
        margin-bottom: calc(48 / 345 * 100%); }
      #companyArea #tree .flow .list .item.current {
        transform: translateY(0); }
        #companyArea #tree .flow .list .item.current:after {
          opacity: 1;
          transform: translateY(0); }
      #companyArea #tree .flow .list .item:after {
        content: "";
        opacity: 0;
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: -1;
        width: calc(55 / 345 * 100%);
        background: url(/img/common/icon_arrow03_down.svg) center center no-repeat;
        background-size: contain;
        margin: calc(28 / 345 * 100%) auto 0 auto;
        padding: calc(35 / 345 * 100%) 0 0 0;
        transform: translateY(-50px);
        transition: all 0.2s ease-out; }
      #companyArea #tree .flow .list .item:last-child:after {
        display: none; }
      #companyArea #tree .flow .list .item .box {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        background-color: #DCEB41;
        padding: calc(64 / 345 * 100%) 0 calc(31 / 345 * 100%) 0;
        border-radius: 1.1rem; }
        #companyArea #tree .flow .list .item .box .step {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          width: calc(83 / 345 * 100%);
          margin: calc(10 / 345 * 100%) auto 0 auto; }
        #companyArea #tree .flow .list .item .box .image {
          flex-basis: calc(202 / 345 * 100%);
          position: relative;
          margin: 0 0 calc(18 / 345 * 100%) 0; }
          #companyArea #tree .flow .list .item .box .image .mark {
            display: flex;
            align-items: center;
            position: absolute;
            top: 0;
            bottom: 0;
            right: 0;
            width: calc(104 / 202 * 100%);
            margin: calc(11 / 200 * 100%) calc(-55 / 200 * 100%) 0 0; }
        #companyArea #tree .flow .list .item .box .textWrap {
          flex-basis: calc(300 / 345 * 100%); }
          #companyArea #tree .flow .list .item .box .textWrap .stepTitle {
            font-size: 2.1rem;
            line-height: 1.33;
            font-weight: 900;
            margin: 0 0 0.6em 0; }
          #companyArea #tree .flow .list .item .box .textWrap .text {
            font-size: 1.4rem;
            line-height: 1.64;
            font-weight: 500; }
#companyArea #summary .wrap .titleWrap {
  padding: calc(43 / 345 * 100%) 0 calc(25 / 345 * 100%) 0; }
#companyArea #summary .wrap .textWrap {
  padding: 0 0 calc(50 / 345 * 100%) 0; }
#companyArea #history .content {
  background-color: #EDF4F1; }
#companyArea #history .wrap .titleWrap {
  padding: calc(43 / 345 * 100%) 0 calc(31 / 345 * 100%) 0; }
#companyArea #history .wrap .textWrap {
  padding: 0 0 calc(50 / 345 * 100%) 0; }
  #companyArea #history .wrap .textWrap .row {
    background-color: #FFFFFF; }
    #companyArea #history .wrap .textWrap .row .head {
      font-size: 1.8rem;
      line-height: 1.28;
      padding: 1.37rem 1rem; }
    #companyArea #history .wrap .textWrap .row .cont {
      padding: 1.37rem 1rem; }
#companyArea #csr .contentInner {
  width: 100%; }
#companyArea #csr .titleWrap {
  padding: calc(43 / 375 * 100%) 0 calc(24 / 375 * 100%) 0; }
  #companyArea #csr .titleWrap .title {
    margin: 0 0 calc(16 / 375 * 100%) 0; }
  #companyArea #csr .titleWrap .desc {
    width: calc(300 / 375 * 100%);
    font-size: 1.5rem;
    line-height: 2;
    font-weight: 500;
    margin: auto; }
#companyArea #csr .wrap .textWrap {
  width: calc(300 / 375 * 100%);
  margin: auto;
  padding: 0 0 calc(40 / 375 * 100%) 0; }
  #companyArea #csr .wrap .textWrap .blockTitle {
    font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
    font-size: 2rem;
    line-height: 1.75;
    font-weight: 700;
    padding: calc(22 / 300 * 100%) 0 calc(8 / 300 * 100%) 0; }
  #companyArea #csr .wrap .textWrap .text {
    font-size: 1.5rem;
    line-height: 1.87;
    font-weight: 500;
    letter-spacing: -0.01em; }
    #companyArea #csr .wrap .textWrap .text a {
      text-decoration: underline; }

@media screen and (min-width: 769px) {
  #companyArea #message .contentInner {
    width: 100%; }
  #companyArea #message .bg {
    position: absolute;
    top: 0;
    right: 50%;
    width: calc(1169 / 1440 * 100%);
    margin: calc(-413 / 1440 * 100%) 20rem 0 0; }
  #companyArea #message .wrap {
    display: flex;
    padding: calc(75 / 1000 * 100%) 0 calc(91 / 1000 * 100%) 0; }
    #companyArea #message .wrap .titleWrap {
      flex-basis: calc(280 / 1000 * 100%);
      padding: 0; }
    #companyArea #message .wrap .textWrap {
      flex-basis: calc(720 / 1000 * 100%);
      padding: 0; }
      #companyArea #message .wrap .textWrap .text.last {
        margin: 0 0 1.8rem 0; }
  #companyArea #policy .contentInner {
    width: 100%; }
  #companyArea #policy .wrap {
    display: flex;
    padding: calc(95 / 1000 * 100%) 0 calc(75 / 1000 * 100%) 0; }
    #companyArea #policy .wrap .titleWrap {
      flex-basis: calc(280 / 1000 * 100%);
      padding: 0; }
      #companyArea #policy .wrap .titleWrap .title {
        color: #FFFFFF; }
      #companyArea #policy .wrap .titleWrap .logo {
        width: calc(200 / 280 * 100%);
        margin: 0;
        padding: calc(34 / 280 * 100%) 0 0 0; }
    #companyArea #policy .wrap .textWrap {
      flex-basis: calc(720 / 1000 * 100%);
      padding: 0; }
      #companyArea #policy .wrap .textWrap .text {
        font-size: 1.5rem;
        line-height: 2;
        letter-spacing: -0.03em;
        margin: 0 0 1.5rem 0; }
  #companyArea #tree .titleWrap {
    margin: 0; }
    #companyArea #tree .titleWrap .inner {
      max-width: 1040px;
      margin: auto;
      padding: 0 20px; }
    #companyArea #tree .titleWrap .title {
      font-size: 3.2rem;
      line-height: 1.25;
      text-align: left;
      padding: calc(81 / 1000 * 100%) 0 calc(40 / 1000 * 100%) 0; }
    #companyArea #tree .titleWrap .name {
      font-size: 3.2rem;
      line-height: 1.25;
      padding: 0 0 calc(33 / 1000 * 100%) 0; }
    #companyArea #tree .titleWrap .wrap {
      aspect-ratio: 1000 / 412;
      margin: 0 0 calc(35 / 1000 * 100%) 0; }
      #companyArea #tree .titleWrap .wrap .image {
        left: 0;
        right: 0;
        width: calc(544 / 1000 * 100%);
        margin: auto; }
      #companyArea #tree .titleWrap .wrap .line {
        width: calc(362 / 1000 * 100%);
        right: 0;
        margin: calc(78 / 1000 * 100%) auto 0 auto;
        padding: 0 calc(65 / 1000 * 100%) 0 0;
        box-sizing: content-box; }
      #companyArea #tree .titleWrap .wrap .nav .item {
        width: calc(352 / 1000 * 100%); }
        #companyArea #tree .titleWrap .wrap .nav .item:nth-child(1) {
          margin: calc(237 / 1000 * 100%) 0 0 calc(-4 / 1000 * 100%); }
        #companyArea #tree .titleWrap .wrap .nav .item:nth-child(2) {
          margin: calc(97 / 1000 * 100%) 0 0 calc(-4 / 1000 * 100%); }
        #companyArea #tree .titleWrap .wrap .nav .item:nth-child(3) {
          margin: calc(314 / 1000 * 100%) calc(3 / 1000 * 100%) 0 0; }
        #companyArea #tree .titleWrap .wrap .nav .item:nth-child(4) {
          margin: calc(174 / 1000 * 100%) calc(3 / 1000 * 100%) 0 0; }
        #companyArea #tree .titleWrap .wrap .nav .item:nth-child(5) {
          margin: calc(34 / 1000 * 100%) calc(3 / 1000 * 100%) 0 0; }
    #companyArea #tree .titleWrap .sep .hr {
      width: 44.9%; }
      #companyArea #tree .titleWrap .sep .hr:nth-child(2) {
        width: 42.9%; }
  #companyArea #tree .flow .list {
    max-width: 915px;
    margin: auto;
    padding: calc(100 / 1000 * 100%) 0 calc(43 / 1000 * 100%) 0; }
    #companyArea #tree .flow .list .item {
      margin: 0 0 calc(97 / 915 * 100%) 0; }
      #companyArea #tree .flow .list .item:last-child {
        margin-bottom: calc(48 / 915 * 100%); }
      #companyArea #tree .flow .list .item:after {
        width: calc(55 / 915 * 100%);
        margin: calc(32 / 915 * 100%) auto 0 auto;
        padding: calc(35 / 915 * 100%) 0 0 0; }
      #companyArea #tree .flow .list .item .box {
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding: calc(5 / 915 * 100%) 0;
        border-radius: 115px; }
        #companyArea #tree .flow .list .item .box .step {
          flex-basis: calc(142 / 915 * 100%);
          flex-shrink: 0;
          position: static;
          width: auto;
          margin: 0 calc(22 / 915 * 100%) 0 calc(35 / 915 * 100%);
          padding: 0; }
        #companyArea #tree .flow .list .item .box .image {
          flex-basis: calc(162 / 915 * 100%);
          margin: 0 calc(45 / 915 * 100%) 0 0; }
          #companyArea #tree .flow .list .item .box .image .mark {
            width: calc(98 / 162 * 100%);
            margin: calc(7 / 162 * 100%) calc(-50 / 162 * 100%) 0 0; }
        #companyArea #tree .flow .list .item .box .textWrap {
          display: flex;
          align-items: center;
          flex-basis: calc(455 / 915 * 100%); }
          #companyArea #tree .flow .list .item .box .textWrap .stepTitle {
            font-size: 2.1rem;
            line-height: 1.43;
            margin: 0 0 0.6em 0; }
          #companyArea #tree .flow .list .item .box .textWrap .text {
            font-size: 1.5rem;
            line-height: 1.47; }
  #companyArea #summary .wrap {
    display: flex;
    padding: calc(82 / 1000 * 100%) 0 calc(100 / 1000 * 100%) 0; }
    #companyArea #summary .wrap .titleWrap {
      flex-basis: calc(280 / 1000 * 100%);
      padding: 1.2rem 0 0 0; }
    #companyArea #summary .wrap .textWrap {
      flex-basis: calc(720 / 1000 * 100%);
      padding: 0; }
  #companyArea #history .wrap {
    display: flex;
    padding: calc(100 / 1000 * 100%) 0 calc(100 / 1000 * 100%) 0; }
    #companyArea #history .wrap .titleWrap {
      flex-basis: calc(280 / 1000 * 100%);
      padding: 0; }
    #companyArea #history .wrap .textWrap {
      flex-basis: calc(720 / 1000 * 100%);
      padding: 0; }
      #companyArea #history .wrap .textWrap .row .head {
        font-size: 2rem;
        line-height: 1.15;
        padding: 1.4rem 1.4rem 1.2rem 1.4rem; }
      #companyArea #history .wrap .textWrap .row .cont {
        padding: 1.4rem 1.4rem 1.2rem 1.4rem; }
  #companyArea #csr .titleWrap {
    display: flex;
    justify-content: space-between;
    padding: calc(96 / 1000 * 100%) 0 calc(62 / 1000 * 100%) 0; }
    #companyArea #csr .titleWrap .title {
      flex-basis: 5em;
      flex-shrink: 0;
      margin: 0; }
    #companyArea #csr .titleWrap .desc {
      flex-basis: calc(720 / 1000 * 100%);
      width: auto;
      margin: 0; }
  #companyArea #csr .wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 0 calc(70 / 1000 * 100%) 0; }
    #companyArea #csr .wrap.block02 .image {
      order: 2; }
    #companyArea #csr .wrap.block02 .textWrap {
      order: 1; }
    #companyArea #csr .wrap .image {
      flex-basis: calc(500 / 1000 * 100%); }
    #companyArea #csr .wrap .textWrap {
      flex-basis: calc(460 / 1000 * 100%);
      width: auto;
      margin: 0;
      padding: 0; }
      #companyArea #csr .wrap .textWrap .blockTitle {
        font-size: 2rem;
        line-height: 1.3;
        padding: 0 0 calc(8 / 460 * 100%) 0; }
      #companyArea #csr .wrap .textWrap .text {
        letter-spacing: -0.05em; } }
@media screen and (min-width: 1441px) {
  #companyArea #message .bg {
    width: 1169px;
    margin: -413px 144px 0 0; } }
#technologyArea .bannerArea .wrap {
  margin: 0 0 calc(95 / 345 * 100%) 0; }

@media screen and (min-width: 769px) {
  #technologyArea .bannerArea .wrap {
    margin: 0; }
    #technologyArea .bannerArea .wrap .banner {
      padding: calc(80 / 1000 * 100%) 0 calc(49 / 1000 * 100%) 0; } }
#productsArea .bannerArea .wrap {
  margin: 0 0 calc(95 / 345 * 100%) 0; }

@media screen and (min-width: 769px) {
  #productsArea .bannerArea .wrap {
    margin: 0; }
    #productsArea .bannerArea .wrap .banner {
      padding: calc(80 / 1000 * 100%) 0 calc(49 / 1000 * 100%) 0; } }
#newsArea .content {
  padding: 0 0 calc(90 / 375 * 100%) 0; }

@media screen and (min-width: 769px) {
  #newsArea .content {
    padding: 0 0 5rem 0; }
  #newsArea .list {
    padding: calc(75 / 1000 * 100%) 0 0 0; } }
/* specialArea */
#specialArea {
  /* about */
  /* flow */
  /* faq */
  /* processing */
  /* product */ }
  #specialArea #about .contentInner {
    width: calc(300 / 375 * 100%); }
  #specialArea #about .title {
    padding: calc(50 / 300 * 100%) 0 calc(36 / 300 * 100%) 0; }
  #specialArea #about .intro {
    margin: 0 0 calc(37 / 300 * 100%) 0; }
    #specialArea #about .intro .introTitle {
      margin: 0 0 calc(20 / 300 * 100%) 0; }
    #specialArea #about .intro .text {
      font-size: 1.6rem;
      line-height: 1.69; }
  #specialArea #about .imageWrap {
    padding: 0 0 calc(28 / 300 * 100%) 0; }
    #specialArea #about .imageWrap .note {
      color: #ff0000;
      font-size: 1.4rem;
      line-height: 1.5;
      font-weight: 700;
      padding: 1.1em 0; }
  #specialArea #about .ingenuity {
    background-color: #EEEEEE; }
    #specialArea #about .ingenuity .contentInner {
      width: calc(345 / 375* 100%); }
    #specialArea #about .ingenuity .title {
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      color: #005014;
      font-size: 2.5rem;
      line-height: 1.2;
      font-weight: 700;
      text-align: center;
      padding: calc(47 / 345 * 100%) 0 calc(21 / 345 * 100%) 0; }
    #specialArea #about .ingenuity .wrap {
      padding: 0 0 calc(59 / 345 * 100%) 0; }
    #specialArea #about .ingenuity .image {
      margin: 0 0 calc(47 / 345 * 100%) 0; }
    #specialArea #about .ingenuity .textWrap {
      width: calc(315 / 345 * 100%);
      margin: auto; }
      #specialArea #about .ingenuity .textWrap .ingenuityTitle {
        font-size: 3rem;
        line-height: 1.33;
        text-align: center;
        margin: 0 0 calc(26 / 315 * 100%) 0; }
      #specialArea #about .ingenuity .textWrap .text {
        font-size: 1.6rem;
        line-height: 1.69;
        font-weight: 500; }
  #specialArea #about .election {
    padding: calc(44 / 375 * 100%) 0 calc(40 / 375 * 100%) 0;
    border-top: 2px solid #005014;
    border-bottom: 2px solid #005014; }
    #specialArea #about .election .box .boxTitle {
      margin: 0 0 calc(46 / 300 * 100%) 0; }
    #specialArea #about .election .box .wrap {
      display: flex;
      flex-wrap: wrap; }
      #specialArea #about .election .box .wrap .text {
        flex-basis: 100%;
        order: 2;
        font-size: 1.4rem;
        line-height: 1.64;
        margin: auto; }
      #specialArea #about .election .box .wrap .image {
        flex-basis: 100%;
        order: 1;
        margin: 0 0 calc(20 / 300 * 100%) 0; }
  #specialArea #flow .content {
    background-color: #EEEEEE; }
  #specialArea #flow .title {
    padding: calc(42 / 345 * 100%) 0 calc(37 / 345 * 100%) 0; }
  #specialArea #flow .intro {
    margin: 0 0 calc(70 / 345 * 100%) 0; }
    #specialArea #flow .intro.current .imageWrap .partsWrap .parts {
      animation: fluffy 5s ease-out infinite; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts:nth-child(2n) {
        animation-direction: reverse; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts02 {
        animation-delay: 0.8s; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts03 {
        animation-delay: 0.6s; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts04 {
        animation-delay: 0.4s; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts05 {
        animation-delay: 0.2s; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts06 {
        animation-delay: 0.6s; }
      #specialArea #flow .intro.current .imageWrap .partsWrap .parts.parts07 {
        animation-delay: 0.6s; }
    #specialArea #flow .intro .imageWrap {
      position: relative; }
      #specialArea #flow .intro .imageWrap .person {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10; }
      #specialArea #flow .intro .imageWrap .partsWrap .parts {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        width: calc(210 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts01 {
          margin: calc(404 / 345 * 100%) 0 0 calc(146 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts02 {
          width: calc(160 / 345 * 100%);
          margin: calc(202 / 345 * 100%) 0 0 calc(23 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts03 {
          z-index: 2;
          width: calc(210 / 345 * 100%);
          margin: calc(32 / 345 * 100%) 0 0 calc(-12 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts04 {
          width: calc(160 / 345 * 100%);
          margin: 0 0 0 calc(139 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts05 {
          z-index: 3;
          margin: calc(105 / 345 * 100%) 0 0 calc(127 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts06 {
          width: calc(165 / 345 * 100%);
          margin: calc(264 / 345 * 100%) 0 0 calc(154 / 345 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts07 {
          z-index: 2;
          width: calc(200 / 345 * 100%);
          margin: calc(335 / 345 * 100%) 0 0 0; }
    #specialArea #flow .intro .text {
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      font-size: 2.4rem;
      line-height: 1.25;
      font-weight: 700;
      letter-spacing: -0.06em;
      text-align: center;
      padding: 3.3rem 0 0 0; }
  #specialArea #flow .band {
    color: #FFFFFF;
    background-color: #0EB176; }
    #specialArea #flow .band .contentInner {
      position: relative;
      width: 100%;
      transform: translateY(50px);
      transition: all 0.4s ease-out 0.1s; }
      #specialArea #flow .band .contentInner.current {
        transform: translateY(0); }
    #specialArea #flow .band .text {
      font-size: 3.1rem;
      line-height: 1.32;
      font-weight: 900;
      padding: calc(100 / 375 * 100%) 0 calc(34 / 375 * 100%) calc(39 / 375 * 100%); }
    #specialArea #flow .band .image {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: calc(-64 / 375 * 100%) 0 0 0; }
  #specialArea #flow .flow {
    background-color: #FFFFFF; }
    #specialArea #flow .flow .list {
      padding: calc(35 / 345 * 100%) 0 calc(3 / 345 * 100%) 0; }
      #specialArea #flow .flow .list .item {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        position: relative;
        background-color: #DCEB41;
        margin: calc(65 / 345 * 100%) 0 calc(118 / 345 * 100%) 0;
        padding: calc(58 / 345 * 100%) 0 calc(31 / 345 * 100%) 0;
        border-radius: 5px;
        transform: translateY(50px);
        transition: all 0.6s ease-out; }
        #specialArea #flow .flow .list .item:nth-child(1) {
          transition-delay: 0s; }
          #specialArea #flow .flow .list .item:nth-child(1):after {
            transition-delay: 0.6s; }
        #specialArea #flow .flow .list .item:nth-child(2) {
          transition-delay: 0.2s; }
          #specialArea #flow .flow .list .item:nth-child(2):after {
            transition-delay: 0.8s; }
        #specialArea #flow .flow .list .item:nth-child(3) {
          transition-delay: 0.4s; }
          #specialArea #flow .flow .list .item:nth-child(3):after {
            transition-delay: 1.0s; }
        #specialArea #flow .flow .list .item:nth-child(4) {
          transition-delay: 0.6s; }
        #specialArea #flow .flow .list .item:last-child {
          margin-bottom: calc(48 / 345 * 100%); }
        #specialArea #flow .flow .list .item.current {
          transform: translateY(0); }
          #specialArea #flow .flow .list .item.current:after {
            opacity: 1;
            transform: translateY(0); }
        #specialArea #flow .flow .list .item:after {
          content: "";
          opacity: 0;
          display: block;
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          z-index: -1;
          width: calc(55 / 345 * 100%);
          background: url(/img/common/icon_arrow03_down.svg) center center no-repeat;
          background-size: contain;
          margin: calc(22 / 345 * 100%) auto 0 auto;
          padding: calc(35 / 345 * 100%) 0 0 0;
          transform: translateY(-50px);
          transition: all 0.2s ease-out; }
        #specialArea #flow .flow .list .item:last-child:after {
          display: none; }
        #specialArea #flow .flow .list .item .step {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          width: calc(123 / 345 * 100%);
          margin: calc(-55 / 345 * 100%) auto 0 auto;
          padding: 0 calc(20 / 345 * 100%) 0 0; }
        #specialArea #flow .flow .list .item .textWrap {
          flex-basis: calc(300 / 345 * 100%);
          order: 2; }
          #specialArea #flow .flow .list .item .textWrap .stepTitle {
            font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
            font-size: 2.5rem;
            line-height: 1.4;
            margin: 0 0 0.6em 0; }
          #specialArea #flow .flow .list .item .textWrap .text {
            font-size: 1.4rem;
            line-height: 1.64; }
        #specialArea #flow .flow .list .item .image {
          flex-basis: 100%;
          order: 1;
          margin: 0 0 calc(18 / 345 * 100%) 0; }
  #specialArea #faq .content {
    background-color: #EEEEEE; }
  #specialArea #faq .title {
    padding: calc(40 / 345 * 100%) 0 calc(36 / 345 * 100%) 0; }
  #specialArea #faq .more {
    padding: 0 0 calc(38 / 345 * 100%) 0; }
  #specialArea #processing .title {
    padding: calc(45 / 345 * 100%) 0 calc(21 / 345 * 100%) 0; }
  #specialArea #processing .desc {
    width: calc(300 / 345 * 100%);
    font-size: 1.6rem;
    line-height: 1.69;
    margin: 0 auto calc(30 / 345 * 100%) auto; }
  #specialArea #processing .list {
    display: flex;
    flex-wrap: wrap;
    width: calc(335 / 345 * 100%);
    margin: auto; }
    #specialArea #processing .list .item {
      flex-basis: calc(160 / 335 * 100%);
      color: #005014;
      margin: 0 0 calc(18 / 335* 100%) calc(15 / 335 * 100%); }
      #specialArea #processing .list .item:nth-child(2n+1) {
        margin-left: 0; }
      #specialArea #processing .list .item p {
        font-size: 1.5rem;
        line-height: 1.33;
        font-weight: 700;
        letter-spacing: -0.05em;
        text-align: center;
        padding: 0.5em 0; }
  #specialArea #processing .more {
    padding: 0 0 calc(38 / 345 * 100%) 0; }
  #specialArea #product .title {
    width: calc(300 / 345 * 100%);
    margin: 0 auto;
    padding: calc(38 / 345 * 100%) 0 calc(34 / 345 * 100%) 0; }
  #specialArea #product .desc {
    width: calc(300 / 345 * 100%);
    font-size: 1.5rem;
    line-height: 1.87;
    font-weight: 500;
    margin: 0 auto calc(42 / 345 * 100%) auto; }
  #specialArea #product .productNav .list {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #BFBFBF; }
    #specialArea #product .productNav .list .item {
      flex-basis: 50%;
      position: relative;
      border-bottom: 1px solid #BFBFBF; }
      #specialArea #product .productNav .list .item:nth-child(2n):before {
        content: "";
        position: absolute;
        top: 6px;
        bottom: 6px;
        left: 0;
        border-left: 1px solid #BFBFBF; }
      #specialArea #product .productNav .list .item a {
        display: block;
        color: #004F02;
        font-size: 1.7rem;
        line-height: 1;
        font-weight: 700;
        text-align: center;
        padding: 2.15rem 0; }
  #specialArea #product .sectionWrap .section:nth-child(2n+1) .content {
    background-color: #E9F2EF; }
  #specialArea #product .sectionWrap .section:nth-child(1) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product01.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(2) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product02.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(3) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product03.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(4) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product04.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(5) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product05.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(6) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product06.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(7) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product07.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section:nth-child(8) .wrap .titleWrap .name:before {
    background: url(/img/special/icon_product08.svg) center center no-repeat;
    background-size: contain; }
  #specialArea #product .sectionWrap .section .wrap {
    padding: calc(60 / 345 * 100%) 0; }
    #specialArea #product .sectionWrap .section .wrap .titleWrap {
      margin: 0 0 calc(60 / 345 * 100%) 0; }
      #specialArea #product .sectionWrap .section .wrap .titleWrap .name {
        width: calc(210 / 345 * 100%);
        color: #FFFFFF;
        font-size: 1.8rem;
        line-height: 1;
        font-weight: 700;
        text-align: center;
        background-color: #00A046;
        margin: auto;
        padding: calc(19 / 345 * 100%) 0 calc(14 / 345 * 100%) 0;
        border-radius: 2rem; }
        #specialArea #product .sectionWrap .section .wrap .titleWrap .name:before {
          content: "";
          display: block;
          width: 100%;
          margin: 0 0 1.5rem 0;
          aspect-ratio: 250 / 120; }
    #specialArea #product .sectionWrap .section .wrap .listWrap .list {
      background-color: #FFFFFF; }
      #specialArea #product .sectionWrap .section .wrap .listWrap .list .item {
        border-bottom: 2px solid #0EB176; }
        #specialArea #product .sectionWrap .section .wrap .listWrap .list .item:first-child {
          border-top: 2px solid #0EB176; }
        #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row {
          display: flex; }
          #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .head {
            flex-basis: calc(126 / 345 * 100%);
            color: #0EB176;
            font-size: 1.6rem;
            line-height: 1.38;
            font-weight: 700;
            padding: 1.5rem 1.3rem; }
          #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .cont {
            flex-basis: calc(219 / 345 * 100%); }
            #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .cont .name {
              font-size: 1.5rem;
              line-height: 1.53;
              font-weight: 500;
              padding: 1.32rem;
              border-bottom: 1px solid #A6A6A6; }
              #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .cont .name:last-child {
                border-bottom: 0; }

@media screen and (min-width: 769px) {
  #specialArea {
    /* about */
    /* flow */
    /* faq */
    /* processing */
    /* product */ }
    #specialArea #about .contentInner {
      width: 100%; }
    #specialArea #about .title {
      padding: calc(101 / 1000 * 100%) 0 calc(67 / 1000 * 100%) 0; }
    #specialArea #about .intro {
      max-width: 750px;
      margin: 0 auto calc(61 / 1000 * 100%) auto; }
      #specialArea #about .intro .introTitle {
        margin: 0 0 calc(25 / 750 * 100%) 0; }
      #specialArea #about .intro .text {
        font-size: 1.6rem;
        line-height: 1.88; }
    #specialArea #about .imageWrap {
      padding: 0 0 calc(85 / 1000 * 100%) 0; }
      #specialArea #about .imageWrap .note {
        color: #ff0000;
        font-size: 1.4rem;
        line-height: 1.79;
        font-weight: 700;
        padding: 0.8em 0; }
    #specialArea #about .strength {
      background-color: #EEEEEE; }
      #specialArea #about .strength .strengthTitle {
        text-align: center;
        padding: calc(61 / 1000 * 100%) 0 calc(41 / 1000 * 100%) 0; }
      #specialArea #about .strength .list {
        display: flex;
        justify-content: space-between;
        max-width: 750px;
        margin: auto;
        padding: 0 0 calc(63 / 1000 * 100%) 0; }
        #specialArea #about .strength .list .item {
          flex-basis: calc(220 / 750 * 100%); }
          #specialArea #about .strength .list .item .textWrap .head {
            font-size: 2.2rem;
            line-height: 1.36;
            font-weight: 700;
            text-align: center;
            padding: 0.9em 0 0.6em 0; }
          #specialArea #about .strength .list .item .textWrap .cont {
            font-size: 1.4rem;
            line-height: 1.64; }
    #specialArea #about .ingenuity {
      background-color: #EEEEEE; }
      #specialArea #about .ingenuity .wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: calc(114 / 1000 * 100%) 0 calc(100 / 1000 * 100%) 0; }
      #specialArea #about .ingenuity .image {
        flex-basis: calc(489 / 1000 * 100%);
        margin: calc(-15 / 898 * 100%) 0 0 0; }
      #specialArea #about .ingenuity .textWrap {
        flex-basis: calc(465 / 1000 * 100%);
        width: auto;
        margin: 0;
        padding: 1.5rem 0 0 0; }
        #specialArea #about .ingenuity .textWrap .ingenuityTitle {
          text-align: left;
          margin: 0 0 2.5rem 0; }
        #specialArea #about .ingenuity .textWrap .text {
          font-size: 1.6rem;
          line-height: 1.88;
          font-weight: 500; }
    #specialArea #about .election {
      padding: calc(82 / 1440 * 100%) 0;
      border-top: 0;
      border-bottom: 0; }
      #specialArea #about .election .box {
        padding: calc(41 / 1000 * 100%) calc(50 / 1000 * 100%) calc(34 / 1000 * 100%) calc(50 / 1000 * 100%);
        border: 1px solid #005014;
        border-radius: 10px; }
        #specialArea #about .election .box .boxTitle {
          margin: 0 0 calc(23 / 900 * 100%) 0; }
        #specialArea #about .election .box .wrap {
          align-items: center;
          justify-content: space-between;
          flex-wrap: nowrap; }
          #specialArea #about .election .box .wrap .text {
            flex-basis: calc(523 / 898 * 100%);
            order: 1;
            font-size: 1.4rem;
            line-height: 1.64;
            margin: 0; }
          #specialArea #about .election .box .wrap .image {
            flex-basis: calc(343 / 898 * 100%);
            order: 2;
            margin: 0; }
    #specialArea #flow .title {
      padding: calc(105 / 1000 * 100%) 0 calc(67 / 1000 * 100%) 0; }
    #specialArea #flow .intro {
      margin: 0 0 calc(77 / 1000 * 100%) 0; }
      #specialArea #flow .intro .imageWrap {
        position: relative; }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts01 {
          width: calc(231 / 1000 * 100%);
          margin: calc(240 / 1000 * 100%) 0 0 calc(131 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts02 {
          width: calc(180 / 1000 * 100%);
          margin: calc(116 / 1000 * 100%) 0 0 calc(55 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts03 {
          width: calc(234 / 1000 * 100%);
          margin: calc(-12 / 1000 * 100%) 0 0 calc(185 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts04 {
          width: calc(180 / 1000 * 100%);
          margin: calc(25 / 1000 * 100%) 0 0 calc(427 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts05 {
          width: calc(234 / 1000 * 100%);
          margin: calc(-13 / 1000 * 100%) 0 0 calc(617 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts06 {
          width: calc(186 / 1000 * 100%);
          margin: calc(119 / 1000 * 100%) 0 0 calc(776 / 1000 * 100%); }
        #specialArea #flow .intro .imageWrap .partsWrap .parts.parts07 {
          width: calc(262 / 1000 * 100%);
          margin: calc(198 / 1000 * 100%) 0 0 calc(615 / 1000 * 100%); }
      #specialArea #flow .intro .text {
        font-size: 2.8rem;
        line-height: 1.43;
        letter-spacing: 0;
        padding: 0.7em 0 0 0; }
    #specialArea #flow .band {
      color: #FFFFFF;
      background-color: #0EB176; }
      #specialArea #flow .band .contentInner {
        position: relative;
        transform: translateY(50px);
        transition: all 0.4s ease-out 0.1s; }
        #specialArea #flow .band .contentInner.current {
          transform: translateY(0); }
      #specialArea #flow .band .text {
        font-size: 4.5rem;
        line-height: 1.4;
        font-weight: 900;
        letter-spacing: 0;
        padding: calc(63 / 1000 * 100%) 0 calc(48 / 1000 * 100%) 0; }
      #specialArea #flow .band .image {
        position: absolute;
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
        width: calc(374 / 1040 * 100%);
        margin: 0 calc(20 / 1040 * 100%) 0 0; }
    #specialArea #flow .flow .list {
      padding: calc(100 / 1000 * 100%) 0 calc(43 / 1000 * 100%) 0; }
      #specialArea #flow .flow .list .item {
        flex-wrap: nowrap;
        justify-content: space-between;
        margin: 0 0 calc(80 / 1000 * 100%) 0;
        padding: 0;
        border-radius: 115px; }
        #specialArea #flow .flow .list .item:last-child {
          margin-bottom: calc(48 / 1000 * 100%); }
        #specialArea #flow .flow .list .item:after {
          width: calc(55 / 1000 * 100%);
          margin: calc(22 / 1000 * 100%) auto 0 auto;
          padding: calc(35 / 1000 * 100%) 0 0 0; }
        #specialArea #flow .flow .list .item .step {
          flex-basis: calc(142 / 1000 * 100%);
          flex-shrink: 0;
          position: static;
          width: auto;
          margin: 0 calc(8 / 1000 * 100%) 0 calc(35 / 1000 * 100%);
          padding: 0; }
        #specialArea #flow .flow .list .item .image {
          flex-basis: calc(426 / 1000 * 100%);
          order: 3;
          margin: 0; }
        #specialArea #flow .flow .list .item .textWrap {
          flex-basis: calc(340 / 1000 * 100%);
          flex-shrink: 0;
          min-width: 342px; }
          #specialArea #flow .flow .list .item .textWrap .stepTitle {
            font-size: 2.5rem;
            line-height: 1.4;
            margin: 0 0 0.6em 0; }
          #specialArea #flow .flow .list .item .textWrap .text {
            font-size: 1.4rem;
            line-height: 1.64; }
    #specialArea #faq .contentInner {
      max-width: 790px; }
    #specialArea #faq .title {
      padding: calc(110 / 750 * 100%) 0 calc(69 / 750 * 100%) 0; }
    #specialArea #faq .faq .list {
      margin: 0 0 calc(20 / 750 * 100%) 0; }
      #specialArea #faq .faq .list .item:last-child {
        margin-bottom: 0; }
    #specialArea #faq .more {
      padding: 0 0 calc(88 / 750 * 100%) 0; }
    #specialArea #processing .contentInner {
      max-width: 790px; }
    #specialArea #processing .title {
      padding: calc(110 / 750 * 100%) 0 calc(69 / 750 * 100%) 0; }
    #specialArea #processing .desc {
      width: 100%;
      font-size: 1.6rem;
      line-height: 1.88;
      margin: 0 0 calc(45 / 750 * 100%) 0; }
    #specialArea #processing .list {
      width: 100%;
      margin: 0; }
      #specialArea #processing .list .item {
        flex-basis: calc(220 / 750 * 100%);
        margin: 0 0 calc(50 / 750 * 100%) calc(45 / 750 * 100%); }
        #specialArea #processing .list .item:nth-child(2n+1) {
          margin-left: calc(45 / 750 * 100%); }
        #specialArea #processing .list .item:nth-child(3n+1) {
          margin-left: 0; }
        #specialArea #processing .list .item p {
          font-size: 1.8rem;
          line-height: 1.22;
          padding: 0.8em 0; }
    #specialArea #processing .more {
      margin: calc(-33 / 750 * 100%) 0 0 0;
      padding: 0 0 calc(30 / 750 * 100%) 0; }
    #specialArea #product .contentInner.narrow {
      max-width: 790px; }
    #specialArea #product .title {
      width: 100%;
      padding: calc(110 / 750 * 100%) 0 calc(69 / 750 * 100%) 0; }
    #specialArea #product .desc {
      width: 100%;
      margin: 0 0 calc(45 / 750 * 100%) 0; }
    #specialArea #product .productNav {
      max-width: 1040px;
      margin: auto;
      padding: 0 20px; }
      #specialArea #product .productNav .list {
        margin: 0 0 calc(40 / 1000 * 100%) 0;
        border-top: 0; }
        #specialArea #product .productNav .list .item {
          flex-basis: 25%;
          border-top: 1px solid #BFBFBF;
          border-bottom: 0; }
          #specialArea #product .productNav .list .item:nth-child(4n):after {
            content: "";
            position: absolute;
            top: 1.3rem;
            bottom: 1.3rem;
            right: 0;
            border-left: 1px solid #BFBFBF; }
          #specialArea #product .productNav .list .item:nth-child(1), #specialArea #product .productNav .list .item:nth-child(2), #specialArea #product .productNav .list .item:nth-child(3), #specialArea #product .productNav .list .item:nth-child(4) {
            border-top: 0; }
          #specialArea #product .productNav .list .item:before {
            content: "";
            position: absolute;
            top: 1.3rem;
            bottom: 1.3rem;
            left: 0;
            border-left: 1px solid #BFBFBF; }
          #specialArea #product .productNav .list .item a {
            font-size: 1.8rem;
            line-height: 1;
            padding: 2.5rem 0; }
    #specialArea #product .sectionWrap .section .wrap {
      display: flex;
      justify-content: space-between;
      padding: calc(60 / 1000 * 100%) 0; }
      #specialArea #product .sectionWrap .section .wrap .titleWrap {
        flex-basis: calc(250 / 1000 * 100%);
        margin: 0; }
        #specialArea #product .sectionWrap .section .wrap .titleWrap .name {
          width: 100%;
          font-size: 2rem;
          line-height: 1;
          padding: calc(25 / 250 * 100%) 0 calc(20 / 250 * 100%) 0;
          border-radius: 2rem; }
          #specialArea #product .sectionWrap .section .wrap .titleWrap .name:before {
            content: "";
            display: block;
            width: 100%;
            margin: 0 0 1.5rem 0;
            aspect-ratio: 250 / 120; }
      #specialArea #product .sectionWrap .section .wrap .listWrap {
        flex-basis: calc(690 / 1000 * 100%); }
        #specialArea #product .sectionWrap .section .wrap .listWrap .list {
          background-color: #FFFFFF; }
          #specialArea #product .sectionWrap .section .wrap .listWrap .list .item {
            border-bottom: 2px solid #0EB176; }
            #specialArea #product .sectionWrap .section .wrap .listWrap .list .item:first-child {
              border-top: 2px solid #0EB176; }
            #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row {
              display: flex; }
              #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .head {
                flex-basis: calc(335 / 690 * 100%);
                padding: 1.5rem 1.3rem; }
              #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .cont {
                flex-basis: calc(355 / 690 * 100%); }
                #specialArea #product .sectionWrap .section .wrap .listWrap .list .item .row .cont .name {
                  padding: 1.32rem; } }
#faqArea #faq .content {
  padding: 0 0 calc(51 / 345 * 100%) 0; }
#faqArea #faq .list {
  margin-bottom: calc(12 / 750 * 100%); }
  #faqArea #faq .list .item:last-child {
    margin-bottom: 0; }

@media screen and (min-width: 769px) {
  #faqArea #faq .content {
    padding: 0 0 calc(40 / 1440 * 100%) 0; }
  #faqArea #faq .contentInner {
    max-width: 790px; }
  #faqArea #faq .list {
    margin-bottom: 0;
    padding: calc(97 / 750 * 100%) 0 0 0; }
    #faqArea #faq .list .item:last-child {
      margin-bottom: 0; } }
#recruitArea {
  /* message */
  /* work */
  /* number */
  /* welfare */
  /* information */
  /* qa */ }
  #recruitArea .hr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 10;
    margin-top: -1.5px; }
    #recruitArea .hr.reverse:before {
      flex-basis: calc(54 / 375 * 100%); }
    #recruitArea .hr.reverse:after {
      flex-basis: calc(311 / 375 * 100%); }
    #recruitArea .hr:before, #recruitArea .hr:after {
      content: "";
      display: block;
      flex-basis: calc(284 / 375 * 100%);
      height: 3px;
      background-color: #005014;
      border-radius: 3px; }
    #recruitArea .hr:after {
      flex-basis: calc(81 / 375 * 100%); }
  #recruitArea .tape {
    opacity: 1;
    position: absolute;
    z-index: 20;
    width: calc(330 / 375 * 100vw);
    aspect-ratio: 1 / 1;
    transition: all 0.8s linear 0.2s; }
    #recruitArea .tape:before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      background: url(/img/common/frame_tape.svg) center center no-repeat;
      background-size: contain; }
  #recruitArea #recruitTop .curtainWrap {
    margin: 0 calc((-85 / 2) / 375* 100%); }
  #recruitArea #message .content {
    background-color: #F2F6C3; }
  #recruitArea #message .tape {
    bottom: 0;
    right: 0;
    margin: 0 calc(-34 / 375 * 100vw) calc(-10 / 375 * 100vw) 0;
    transform: translateX(100vw) rotate(360deg); }
    #recruitArea #message .tape.current {
      transform: translateX(0) rotate(0); }
  #recruitArea #message .title {
    padding: calc(42 / 345 * 100%) 0 calc(30 / 345 * 100%) 0; }
  #recruitArea #message .wrap {
    padding: 0 0 calc(343 / 345 * 100%) 0; }
    #recruitArea #message .wrap .copy {
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      color: #005014;
      font-size: 2.8rem;
      line-height: 1.36;
      font-weight: 900;
      margin: 0 0 calc(20 / 345 * 100%) 0; }
    #recruitArea #message .wrap .text {
      font-size: 1.6rem;
      line-height: 2;
      font-weight: 500; }
  #recruitArea #work .tape {
    bottom: 0;
    left: 0;
    margin: 0 0 calc(-10 / 375 * 100vw) calc(-36 / 375 * 100vw);
    transform: translateX(-100vw) rotate(-360deg); }
    #recruitArea #work .tape.current {
      transform: translateX(0) rotate(0); }
  #recruitArea #work .title {
    padding: calc(45 / 345 * 100%) 0 calc(38 / 345 * 100%) 0; }
  #recruitArea #work .bannerArea {
    padding: 0 0 calc(342 / 345 * 100%) 0; }
    #recruitArea #work .bannerArea .list .item {
      margin: 0 0 calc(18 / 345 * 100%) 0; }
  #recruitArea #number .tape {
    bottom: 0;
    right: 0;
    margin: 0 calc(-34 / 375 * 100vw) calc(-10 / 375 * 100vw) 0;
    transform: translateX(100vw) rotate(360deg); }
    #recruitArea #number .tape.current {
      transform: translateX(0) rotate(0); }
  #recruitArea #number .content {
    background-color: #F2F6C3; }
  #recruitArea #number .title {
    padding: calc(47 / 345 * 100%) 0 calc(40 / 345 * 100%) 0; }
  #recruitArea #number .data {
    padding: 0 0 calc(26 / 345 * 100%) 0; }
    #recruitArea #number .data .list {
      display: flex;
      flex-wrap: wrap; }
      #recruitArea #number .data .list .item {
        flex-basis: calc(165 / 345 * 100%);
        color: #FFFFFF;
        text-align: center;
        background-color: #0EB176;
        margin: 0 0 calc(15 / 345 * 100%) calc(15 / 345 * 100%);
        padding: 0 0 calc(13 / 345 * 100%) 0;
        border-radius: 5px; }
        #recruitArea #number .data .list .item:nth-child(2n+1) {
          margin-left: 0; }
        #recruitArea #number .data .list .item:nth-child(4), #recruitArea #number .data .list .item:nth-child(7) {
          padding: 0 0 calc(6 / 345 * 100%) 0; }
        #recruitArea #number .data .list .item .name {
          font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
          font-size: 1.7rem;
          line-height: 1;
          font-weight: 700;
          padding: 0.9rem 0; }
          #recruitArea #number .data .list .item .name .sup {
            font-size: 1rem;
            line-height: 1;
            vertical-align: super; }
        #recruitArea #number .data .list .item .cont .num {
          font-size: 4.8rem;
          line-height: 1;
          font-weight: 600; }
        #recruitArea #number .data .list .item .cont .unit {
          font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
          font-size: 2.7rem;
          line-height: 1;
          font-weight: 900; }
        #recruitArea #number .data .list .item .cont .text {
          font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
          font-size: 4rem;
          line-height: 1;
          font-weight: 900; }
    #recruitArea #number .data .noteWrap {
      text-align: right; }
      #recruitArea #number .data .noteWrap .note {
        display: inline-block;
        font-size: 1.2rem;
        line-height: 1.33; }
  #recruitArea #number .bannerArea {
    padding: 0 0 calc(363 / 345 * 100%) 0; }
  #recruitArea #welfare .title {
    padding: calc(44 / 345 * 100%) 0 calc(48 / 345 * 100%) 0; }
  #recruitArea #welfare .list {
    padding: 0 0 calc(30 / 345 * 100%) 0; }
    #recruitArea #welfare .list .item {
      color: #005014;
      text-align: center;
      background-color: #AAC84B;
      margin: 0 0 calc(20 / 345 * 100%) 0;
      padding: 0 0 calc(18 / 345 * 100%) 0;
      border-radius: 1rem; }
      #recruitArea #welfare .list .item .image {
        margin: 0 0 calc(6 / 345 * 100%) 0; }
      #recruitArea #welfare .list .item .headline {
        font-size: 2.4rem;
        line-height: 1.17;
        font-weight: 900; }
        #recruitArea #welfare .list .item .headline .en {
          font-family: inherit;
          font-size: 2.7rem;
          line-height: 1.04; }
        #recruitArea #welfare .list .item .headline .ja {
          display: block;
          font-size: 1.8rem;
          line-height: 1.56; }
      #recruitArea #welfare .list .item .text {
        font-size: 1.6rem;
        line-height: 1.38;
        margin: calc(5 / 345 * 100%) 0 0 0; }
  #recruitArea #information .content {
    background-color: #E4EBE8; }
  #recruitArea #information .title {
    padding: calc(49 / 345 * 100%) 0 calc(44 / 345 * 100%) 0; }
  #recruitArea #information .wrap {
    padding: 0 0 calc(48 / 345 * 100%) 0; }
    #recruitArea #information .wrap .tablepress > .row-hover > tr:hover > * {
      color: inherit;
      background-color: transparent; }
    #recruitArea #information .wrap table {
      background-color: #FFFFFF;
      table-layout: fixed;
      word-break: break-all;
      word-wrap: break-all;
      margin: 0 0 calc(12 / 345 * 100%) 0;
      padding: 0; }
      #recruitArea #information .wrap table tr {
        display: table-row;
        justify-content: space-between; }
        #recruitArea #information .wrap table tr th {
          display: table-cell;
          position: relative;
          width: 10rem;
          color: #0EB176;
          font-size: 1.6rem;
          line-height: 1.44;
          font-weight: 700;
          padding: 1.3rem 1rem;
          border: 0;
          box-sizing: border-box; }
          #recruitArea #information .wrap table tr th:after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0.5rem;
            border-bottom: 1px solid #0EB176; }
        #recruitArea #information .wrap table tr td {
          display: table-cell;
          position: relative;
          font-size: 1.5rem;
          line-height: 1.53;
          font-weight: 500;
          padding: 1.3rem 1rem;
          border: 0;
          box-sizing: border-box; }
          #recruitArea #information .wrap table tr td:after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            border-bottom: 1px solid #A6A6A6; }
    #recruitArea #information .wrap .buttonArea .more a {
      display: block;
      color: #FFFFFF;
      font-size: 2rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      background-color: #23AA82;
      padding: 0.8em 0 0.7em 0; }
    #recruitArea #information .wrap .none {
      color: #646464;
      font-size: 2rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      padding: 2em 0; }
  #recruitArea #qa .title {
    padding: calc(50 / 345 * 100%) 0 calc(40 / 345 * 100%) 0; }
  #recruitArea #qa .more {
    padding: 0 0 calc(70 / 345 * 100%) 0; }

@media screen and (min-width: 769px) {
  #recruitArea {
    /* message */
    /* work */
    /* number */
    /* welfare */
    /* information */
    /* qa */ }
    #recruitArea .hr {
      margin-top: -1.5px; }
      #recruitArea .hr.reverse:before {
        flex-basis: calc(341 / 1440 * 100%); }
      #recruitArea .hr.reverse:after {
        flex-basis: calc(1082 / 1440 * 100%); }
      #recruitArea .hr:before, #recruitArea .hr:after {
        flex-basis: calc(1076 / 1440 * 100%);
        height: 5px;
        border-radius: 5px; }
      #recruitArea .hr:after {
        flex-basis: calc(347 / 1440 * 100%); }
    #recruitArea .tape {
      width: calc(500 / 1440 * 100vw);
      transition: all 1s linear; }
    #recruitArea #recruitTop .curtainWrap {
      margin: 0; }
    #recruitArea #message .tape {
      margin: 0 calc(-104 / 1440 * 100vw) calc(-13 / 1440 * 100vw) 0;
      transform: translateX(50vw) rotate(360deg); }
    #recruitArea #message .title {
      padding: calc(71 / 1000 * 100%) 0 calc(76 / 1000 * 100%) 0; }
    #recruitArea #message .wrap {
      padding: 0 0 calc(78 / 1000 * 100%) 0; }
      #recruitArea #message .wrap .copy {
        font-size: 3.4rem;
        line-height: 1.24;
        margin: 0 0 2.8rem 0; }
      #recruitArea #message .wrap .text {
        font-size: 1.8rem;
        line-height: 2.22; }
    #recruitArea #work .tape {
      margin: 0 0 calc(-18 / 1440 * 100vw) calc(-113 / 1440 * 100vw);
      transform: translateX(-50vw) rotate(-360deg); }
    #recruitArea #work .hr:before {
      flex-basis: calc(1193 / 1440 * 100%); }
    #recruitArea #work .hr:after {
      flex-basis: calc(229 / 1440 * 100%); }
    #recruitArea #work .content {
      background-color: #FFFFFF; }
    #recruitArea #work .title {
      padding: calc(72 / 1000 * 100%) 0 calc(75 / 1000 * 100%) 0; }
    #recruitArea #work .bannerArea {
      padding: 0 0 calc(494 / 1000 * 100%) 0; }
      #recruitArea #work .bannerArea .list .item {
        margin: 0 0 calc(14 / 1000 * 100%) 0; }
    #recruitArea #number {
      position: relative; }
      #recruitArea #number:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: -1;
        background-color: #F2F6C3; }
      #recruitArea #number .tape {
        margin: 0 calc(-100 / 1440 * 100vw) calc(-17 / 1440 * 100vw) 0;
        transform: translateX(50vw) rotate(360deg); }
      #recruitArea #number .content {
        z-index: 20;
        background-color: transparent; }
      #recruitArea #number .title {
        margin: calc(-428 / 1000 * 100%) 0 0 0;
        padding: calc(78 / 1000 * 100%) 0 calc(75 / 1000 * 100%) 0; }
      #recruitArea #number .data {
        padding: 0 0 calc(56 / 1000 * 100%) 0; }
        #recruitArea #number .data .list {
          display: flex;
          flex-wrap: wrap;
          max-width: 750px;
          margin: auto; }
          #recruitArea #number .data .list .item {
            flex-basis: calc(240 / 750 * 100%);
            margin: 0 0 calc(15 / 750 * 100%) calc(15 / 750 * 100%);
            padding: 0 0 calc(19 / 750 * 100%) 0;
            border-radius: 10px; }
            #recruitArea #number .data .list .item:nth-child(2n+1) {
              margin-left: calc(15 / 750 * 100%); }
            #recruitArea #number .data .list .item:nth-child(3n+1) {
              margin-left: 0; }
            #recruitArea #number .data .list .item:nth-child(4), #recruitArea #number .data .list .item:nth-child(7) {
              padding: 0 0 calc(9 / 750 * 100%) 0; }
              #recruitArea #number .data .list .item:nth-child(4) .name, #recruitArea #number .data .list .item:nth-child(7) .name {
                padding: 2rem 0 1rem 0; }
            #recruitArea #number .data .list .item .name {
              font-size: 2.2rem;
              line-height: 1;
              padding: 1rem 0 1rem 0; }
              #recruitArea #number .data .list .item .name .sup {
                font-size: 1.2rem;
                line-height: 1; }
            #recruitArea #number .data .list .item .cont .num {
              font-size: 7rem;
              line-height: 1; }
            #recruitArea #number .data .list .item .cont .unit {
              font-size: 3.4rem;
              line-height: 1; }
            #recruitArea #number .data .list .item .cont .text {
              font-size: 5.8rem;
              line-height: 1; }
        #recruitArea #number .data .noteWrap {
          max-width: 750px;
          margin: auto; }
      #recruitArea #number .bannerArea {
        padding: 0 0 calc(550 / 1000 * 100%) 0; }
    #recruitArea #welfare .content {
      z-index: 20; }
    #recruitArea #welfare .title {
      margin: calc(-469 / 1000 * 100%) 0 0 0;
      padding: calc(78 / 1000 * 100%) 0 calc(78 / 1000 * 100%) 0; }
    #recruitArea #welfare .list {
      display: flex;
      flex-wrap: wrap;
      max-width: 720px;
      margin: auto;
      padding: 0 0 calc(57 / 1000 * 100%) 0; }
      #recruitArea #welfare .list .item {
        flex-basis: calc(345 / 720 * 100%);
        margin: 0 0 calc(25 / 720 * 100%) calc(30 / 720 * 100%);
        padding: 0 0 calc(18 / 720 * 100%) 0; }
        #recruitArea #welfare .list .item:nth-child(2n+1) {
          margin-left: 0; }
    #recruitArea #information .title {
      padding: calc(78 / 1000 * 100%) 0 calc(79 / 1000 * 100%) 0; }
    #recruitArea #information .wrap {
      max-width: 750px;
      margin: auto;
      padding: 0 0 calc(100 / 1000 * 100%) 0; }
      #recruitArea #information .wrap table {
        margin: 0 0 calc(10 / 750 * 100%) 0; }
        #recruitArea #information .wrap table tr {
          display: table-row;
          justify-content: space-between; }
          #recruitArea #information .wrap table tr th {
            width: calc(190 / 750 * 100%);
            padding: 1.4rem 1.4rem 1.2rem 1.4rem; }
          #recruitArea #information .wrap table tr td {
            padding: 1.4rem 1.4rem 1.2rem 1.4rem; }
      #recruitArea #information .wrap .buttonArea .more a {
        font-size: 2.5rem;
        line-height: 1;
        padding: 0.7em 0 0.5em 0; }
      #recruitArea #information .wrap .none {
        font-size: 3rem;
        line-height: 1; }
    #recruitArea #qa .title {
      padding: calc(78 / 1000 * 100%) 0 calc(77 / 1000 * 100%) 0; }
    #recruitArea #qa .faq {
      max-width: 750px;
      margin: auto; }
      #recruitArea #qa .faq .list {
        margin: 0; }
    #recruitArea #qa .more {
      max-width: 750px;
      margin: auto;
      padding: 0 0 calc(62 / 1000 * 100%) 0; } }
#recruitTalkArea #recruitTop .content {
  aspect-ratio: 375 / 400; }
#recruitTalkArea #recruitTop .bg img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }
#recruitTalkArea #recruitTop .wrap {
  position: relative;
  z-index: 10; }
#recruitTalkArea #talk.executive .intro {
  padding: calc(262 / 345 * 100%) 0 0 0; }
#recruitTalkArea #talk .hr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 10;
  margin-top: -1.5px; }
  #recruitTalkArea #talk .hr.reverse:before {
    flex-basis: calc(97 / 375 * 100%); }
  #recruitTalkArea #talk .hr.reverse:after {
    flex-basis: calc(267 / 375 * 100%); }
  #recruitTalkArea #talk .hr:before, #recruitTalkArea #talk .hr:after {
    content: "";
    display: block;
    flex-basis: calc(284 / 375 * 100%);
    height: 3px;
    background-color: #005014;
    border-radius: 3px; }
  #recruitTalkArea #talk .hr:after {
    flex-basis: calc(81 / 375 * 100%); }
#recruitTalkArea #talk .content {
  background-color: #F2F6C3; }
  #recruitTalkArea #talk .content.first {
    background-color: #FFFFFF; }
#recruitTalkArea #talk .intro {
  width: calc(313 / 345 * 100%);
  font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
  color: #005014;
  font-size: 2rem;
  line-height: 2;
  font-weight: 700;
  letter-spacing: -0.03em;
  margin: auto;
  padding: calc(39 / 345 * 100%) 0 calc(252 / 345 * 100%) 0; }
#recruitTalkArea #talk .member {
  position: relative; }
  #recruitTalkArea #talk .member:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color: #F2F6C3; }
  #recruitTalkArea #talk .member .content {
    z-index: 20;
    background-color: transparent; }
  #recruitTalkArea #talk .member .title {
    margin: calc(-238 / 345 * 100%) 0 0 0;
    padding: calc(20 / 345 * 100%) 0 calc(20 / 345 * 100%) 0; }
  #recruitTalkArea #talk .member .list {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 calc(10 / 345 * 100%) 0; }
    #recruitTalkArea #talk .member .list .item {
      flex-basis: calc(161 / 345 * 100%);
      text-align: center;
      margin: 0 0 calc(35 / 345 * 100%) calc(23 / 345 * 100%); }
      #recruitTalkArea #talk .member .list .item:nth-child(2n+1) {
        margin-left: 0; }
      #recruitTalkArea #talk .member .list .item .image {
        width: calc(142 / 161 * 100%);
        margin: 0 auto calc(10 / 161 * 100%) auto; }
      #recruitTalkArea #talk .member .list .item .post {
        font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
        font-size: 1.8rem;
        line-height: 1;
        font-weight: 700;
        margin: 0 0 0.6rem 0; }
      #recruitTalkArea #talk .member .list .item .name {
        font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
        color: #005014;
        font-size: 2.8rem;
        line-height: 1;
        font-weight: 900;
        margin: 0 0 1.8rem 0; }
      #recruitTalkArea #talk .member .list .item .year {
        font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
        font-size: 1.8rem;
        line-height: 1;
        font-weight: 700;
        margin: 0 0 0.6rem 0; }
      #recruitTalkArea #talk .member .list .item .info {
        font-size: 1.4rem;
        line-height: 1.43;
        font-weight: 500;
        letter-spacing: -0.04em;
        text-align: left; }
#recruitTalkArea #talk .box {
  background-color: #FFFFFF;
  padding: calc(41 / 345 * 100%) 0 calc(24 / 345 * 100%) 0;
  border: 2px solid #005014;
  border-radius: 2.5rem; }
  #recruitTalkArea #talk .box .boxInner {
    width: calc(300 / 345 * 100%);
    margin: auto; }
  #recruitTalkArea #talk .box .title {
    font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
    color: #005014;
    font-size: 2.3rem;
    line-height: 1.65;
    font-weight: 700;
    margin: 0 0 4rem 0; }
  #recruitTalkArea #talk .box .question {
    font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 700;
    margin: 0 0 1.6rem 0; }
  #recruitTalkArea #talk .box p {
    font-size: 1.5rem;
    line-height: 1.67;
    font-weight: 500;
    margin: 0 0 2.2rem 0; }
    #recruitTalkArea #talk .box p .name {
      display: block;
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      font-size: 2.2rem;
      line-height: 1.14;
      font-weight: 700;
      margin: 0 0 0.3rem 0; }
  #recruitTalkArea #talk .box .wrap {
    margin: 0 0 4.5rem 0; }
    #recruitTalkArea #talk .box .wrap .image {
      margin: 0 0 2.6rem 0; }
#recruitTalkArea .bannerArea .list {
  padding: calc(48 / 345 * 100%) 0 calc(88 / 345 * 100%) 0; }

@media screen and (min-width: 769px) {
  #recruitTalkArea #recruitTop .content {
    aspect-ratio: 1440 / 710; }
  #recruitTalkArea #recruitTop .wrap {
    width: calc(1000 / 1440 * 100%);
    margin: auto; }
  #recruitTalkArea #talk.executive .intro {
    padding: calc(410 / 1000 * 100%) 0 0 0; }
  #recruitTalkArea #talk.executive .member .list {
    justify-content: center;
    padding: 0 0 calc(69 / 1000 * 100%) 0; }
    #recruitTalkArea #talk.executive .member .list .item {
      margin: 0 calc(40 / 1000 * 100%); }
      #recruitTalkArea #talk.executive .member .list .item .image {
        margin: 0 0 calc(27 / 183 * 100%) 0; }
      #recruitTalkArea #talk.executive .member .list .item .post {
        margin: 0 0 0.5rem 0; }
  #recruitTalkArea #talk.executive .box {
    padding: calc(90 / 1200 * 100%) 0 calc(89 / 1200 * 100%) 0; }
  #recruitTalkArea #talk .hr {
    margin-top: -1.5px; }
    #recruitTalkArea #talk .hr.reverse:before {
      flex-basis: calc(341 / 1440 * 100%); }
    #recruitTalkArea #talk .hr.reverse:after {
      flex-basis: calc(1082 / 1440 * 100%); }
    #recruitTalkArea #talk .hr:before, #recruitTalkArea #talk .hr:after {
      flex-basis: calc(1076 / 1440 * 100%);
      height: 2.5px;
      border-radius: 2.5px; }
    #recruitTalkArea #talk .hr:after {
      flex-basis: calc(347 / 1440 * 100%); }
  #recruitTalkArea #talk .content.wide .contentInner {
    max-width: 1240px; }
  #recruitTalkArea #talk .intro {
    width: 100%;
    font-size: 2.5rem;
    line-height: 2;
    letter-spacing: -0.03em;
    text-align: center;
    padding: calc(83 / 1000 * 100%) 0 calc(394 / 1000 * 100%) 0; }
  #recruitTalkArea #talk .member .title {
    margin: calc(-338 / 1000 * 100%) auto 0 auto;
    padding: calc(20 / 1000 * 100%) 0 calc(54 / 1000 * 100%) 0; }
  #recruitTalkArea #talk .member .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    padding: 0 0 calc(59 / 1000 * 100%) 0; }
    #recruitTalkArea #talk .member .list .item {
      flex-basis: calc(183 / 1000 * 100%);
      margin: 0; }
      #recruitTalkArea #talk .member .list .item:nth-child(2n+1) {
        margin-left: 0; }
      #recruitTalkArea #talk .member .list .item .image {
        width: 100%;
        margin: 0 0 calc(16 / 183 * 100%) 0; }
      #recruitTalkArea #talk .member .list .item .name {
        font-size: 3.2rem;
        line-height: 1;
        margin: 0 0 1.5rem 0; }
      #recruitTalkArea #talk .member .list .item .year {
        margin: 0 0 1.6rem 0; }
      #recruitTalkArea #talk .member .list .item .info {
        font-size: 1.5rem;
        line-height: 1.33;
        letter-spacing: 0.04em; }
  #recruitTalkArea #talk .box {
    padding: calc(39 / 1200 * 100%) 0 calc(89 / 1200 * 100%) 0;
    border: 3px solid #005014;
    border-radius: 4rem; }
    #recruitTalkArea #talk .box .boxInner {
      width: calc(1000 / 1200 * 100%); }
    #recruitTalkArea #talk .box .title {
      font-size: 3rem;
      line-height: 1.67;
      letter-spacing: 0.04rem;
      text-align: center;
      margin: 3.8rem 0 7rem 0; }
    #recruitTalkArea #talk .box .question {
      margin: -0.4rem 0 1.6rem 0; }
    #recruitTalkArea #talk .box p {
      margin: 0 0 2.2rem 0; }
      #recruitTalkArea #talk .box p .name {
        margin: 0 0 0.2rem 0; }
    #recruitTalkArea #talk .box .wrap {
      display: flex;
      justify-content: space-between;
      margin: 0 0 2.5rem 0; }
      #recruitTalkArea #talk .box .wrap.type02 .image {
        order: 1; }
      #recruitTalkArea #talk .box .wrap.type02 .text {
        order: 2; }
      #recruitTalkArea #talk .box .wrap .image {
        flex-basis: calc(400 / 1000 * 100%);
        order: 2;
        margin: 0; }
      #recruitTalkArea #talk .box .wrap .text {
        flex-basis: calc(550 / 1000 * 100%);
        order: 1; }
  #recruitTalkArea .bannerArea .list {
    padding: calc(98 / 1000 * 100%) 0 calc(61 / 1000 * 100%) 0; } }
#recruitEnqueteArea #recruitTop .content {
  aspect-ratio: 375 / 400; }
#recruitEnqueteArea #recruitTop .bg img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }
#recruitEnqueteArea #recruitTop .wrap {
  position: relative;
  z-index: 10; }
#recruitEnqueteArea #enquete .hr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 10;
  margin-top: -1.5px; }
  #recruitEnqueteArea #enquete .hr.reverse:before {
    flex-basis: calc(97 / 375 * 100%); }
  #recruitEnqueteArea #enquete .hr.reverse:after {
    flex-basis: calc(267 / 375 * 100%); }
  #recruitEnqueteArea #enquete .hr:before, #recruitEnqueteArea #enquete .hr:after {
    content: "";
    display: block;
    flex-basis: calc(284 / 375 * 100%);
    height: 3px;
    background-color: #005014;
    border-radius: 3px; }
  #recruitEnqueteArea #enquete .hr:after {
    flex-basis: calc(81 / 375 * 100%); }
#recruitEnqueteArea #enquete .content {
  background-color: #F2F6C3; }
  #recruitEnqueteArea #enquete .content.first {
    background-color: #FFFFFF; }
#recruitEnqueteArea #enquete .intro {
  width: calc(313 / 345 * 100%);
  font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
  color: #005014;
  font-size: 2rem;
  line-height: 2;
  font-weight: 700;
  letter-spacing: -0.03em;
  margin: auto;
  padding: calc(39 / 345 * 100%) 0 calc(38 / 345 * 100%) 0; }
#recruitEnqueteArea #enquete .qa {
  position: relative; }
  #recruitEnqueteArea #enquete .qa .content {
    background-color: #F2F6C3; }
  #recruitEnqueteArea #enquete .qa .block {
    padding: calc(49 / 345 * 100%) 0 0 0; }
    #recruitEnqueteArea #enquete .qa .block:last-child {
      padding-bottom: calc(51 / 345 * 100%); }
    #recruitEnqueteArea #enquete .qa .block .question {
      display: flex;
      align-items: center;
      position: relative;
      min-height: 8rem;
      background-color: #005014;
      margin: 0 0 calc(38 / 345 * 100%) 0;
      padding: 0 1rem;
      border-radius: 4rem; }
      #recruitEnqueteArea #enquete .qa .block .question.multiple3 {
        border-radius: 2rem; }
        #recruitEnqueteArea #enquete .qa .block .question.multiple3 .icon {
          height: 8rem;
          border-radius: 1.25rem; }
        #recruitEnqueteArea #enquete .qa .block .question.multiple3 .text {
          font-size: 1.7rem;
          line-height: 1.35;
          letter-spacing: -0.04rem; }
      #recruitEnqueteArea #enquete .qa .block .question:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        width: 5rem;
        height: 5rem;
        background-color: #005014;
        border-radius: 0.5rem;
        transform: rotate(45deg);
        margin: -4rem auto 0 auto; }
      #recruitEnqueteArea #enquete .qa .block .question .icon {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        position: relative;
        z-index: 2;
        width: 6rem;
        min-height: 6rem;
        color: #005014;
        font-size: 2.9rem;
        line-height: 1;
        font-weight: 700;
        background-color: #FFFFFF;
        margin: 0 1.5rem 0 0;
        border-radius: 3rem; }
        #recruitEnqueteArea #enquete .qa .block .question .icon span {
          display: flex;
          align-items: center;
          justify-content: center; }
          #recruitEnqueteArea #enquete .qa .block .question .icon span img {
            width: 2.34rem;
            margin: 0 0.3rem 0 0; }
      #recruitEnqueteArea #enquete .qa .block .question .text {
        position: relative;
        z-index: 2;
        font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
        color: #FFFFFF;
        font-size: 1.8rem;
        line-height: 1.28;
        font-weight: 900;
        padding: 1.5rem 0; }
    #recruitEnqueteArea #enquete .qa .block .list .item {
      position: relative;
      margin: 0 0 calc(15 / 345 * 100%) 0;
      padding: 1rem 0; }
      #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .image {
        left: auto;
        right: 0; }
      #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .balloon {
        margin: 0 4rem 0 0;
        padding: 0 4rem 0 3rem; }
        #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .balloon:before {
          left: -14rem;
          right: 0;
          transform: rotate(90deg) skewX(-40deg); }
      #recruitEnqueteArea #enquete .qa .block .list .item .image {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
        width: 8.6rem;
        height: 10rem;
        margin: auto; }
      #recruitEnqueteArea #enquete .qa .block .list .item .balloon {
        display: flex;
        align-items: center;
        position: relative;
        min-height: 8rem;
        background-color: #FFFFFF;
        margin: 0 0 0 4rem;
        padding: 0 0 0 6rem;
        border-radius: 4rem; }
        #recruitEnqueteArea #enquete .qa .block .list .item .balloon:before {
          content: "";
          position: absolute;
          top: 100%;
          right: 5.5rem;
          width: 3rem;
          height: 5rem;
          background-color: #FFFFFF;
          border-radius: 0.5rem;
          transform: rotate(60deg) skewY(30deg);
          margin: -4rem auto 0 auto; }
        #recruitEnqueteArea #enquete .qa .block .list .item .balloon .text {
          position: relative;
          z-index: 2;
          font-size: 1.5rem;
          line-height: 1.33;
          font-weight: 700;
          padding: 2.1rem 0; }
          #recruitEnqueteArea #enquete .qa .block .list .item .balloon .text .color {
            color: #0EB176; }

@media screen and (min-width: 769px) {
  #recruitEnqueteArea #recruitTop .content {
    aspect-ratio: 1440 / 710; }
  #recruitEnqueteArea #recruitTop .wrap {
    width: calc(1000 / 1440 * 100%);
    margin: auto; }
  #recruitEnqueteArea #enquete .hr {
    margin-top: -1.5px; }
    #recruitEnqueteArea #enquete .hr.reverse:before {
      flex-basis: calc(341 / 1440 * 100%); }
    #recruitEnqueteArea #enquete .hr.reverse:after {
      flex-basis: calc(1082 / 1440 * 100%); }
    #recruitEnqueteArea #enquete .hr:before, #recruitEnqueteArea #enquete .hr:after {
      flex-basis: calc(1076 / 1440 * 100%);
      height: 2.5px;
      border-radius: 2.5px; }
    #recruitEnqueteArea #enquete .hr:after {
      flex-basis: calc(347 / 1440 * 100%); }
  #recruitEnqueteArea #enquete .content.wide .contentInner {
    max-width: 1240px; }
  #recruitEnqueteArea #enquete .intro {
    width: 100%;
    font-size: 2.5rem;
    line-height: 2;
    letter-spacing: -0.03em;
    text-align: center;
    padding: calc(83 / 1000 * 100%) 0 calc(94 / 1000 * 100%) 0; }
  #recruitEnqueteArea #enquete .qa .block {
    padding: calc(100 / 1000 * 100%) 0 0 0; }
    #recruitEnqueteArea #enquete .qa .block:last-child {
      padding-bottom: calc(51 / 1000 * 100%); }
    #recruitEnqueteArea #enquete .qa .block .question {
      min-height: 9rem;
      margin: 0 0 calc(38 / 1000 * 100%) 0;
      padding: 0 1rem;
      border-radius: 4.5rem; }
      #recruitEnqueteArea #enquete .qa .block .question.multiple3 {
        min-height: 13.5rem;
        border-radius: 3rem; }
        #recruitEnqueteArea #enquete .qa .block .question.multiple3 .icon {
          height: 12rem;
          border-radius: 2.25rem; }
        #recruitEnqueteArea #enquete .qa .block .question.multiple3 .text {
          font-size: 2.8rem;
          line-height: 1.43;
          letter-spacing: 0; }
      #recruitEnqueteArea #enquete .qa .block .question:before {
        width: 3rem;
        height: 5rem;
        left: auto;
        right: 18.2rem;
        margin: -4rem auto 0 auto;
        border-radius: 0.75rem;
        transform: rotate(45deg) skewY(45deg); }
      #recruitEnqueteArea #enquete .qa .block .question .icon {
        width: 8.5rem;
        min-height: 7.5rem;
        font-size: 3.6rem;
        line-height: 1;
        margin: 0 3rem 0 0;
        border-radius: 3.75rem; }
        #recruitEnqueteArea #enquete .qa .block .question .icon span img {
          width: 3rem;
          margin: 0 0.5rem 0 0; }
      #recruitEnqueteArea #enquete .qa .block .question .text {
        font-size: 2.8rem;
        line-height: 1.43;
        padding: 1.5rem 0; }
    #recruitEnqueteArea #enquete .qa .block .list {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      width: calc(940 / 1000 * 100%);
      margin: auto; }
      #recruitEnqueteArea #enquete .qa .block .list .item {
        flex-basis: calc(457 / 940 * 100%);
        margin: 0 0 calc(26 / 940 * 100%) calc(26 / 940 * 100%);
        padding: 2rem 0 0 0; }
        #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n+1) {
          margin-left: 0; }
        #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .image {
          left: 0;
          right: auto; }
        #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .balloon {
          margin: 0 0 0 6rem;
          padding: 0 3rem 0 8.2rem; }
          #recruitEnqueteArea #enquete .qa .block .list .item:nth-child(2n) .balloon:before {
            left: auto;
            right: 7.6rem;
            transform: rotate(45deg) skewY(45deg); }
        #recruitEnqueteArea #enquete .qa .block .list .item .image {
          width: 12.1rem;
          height: 13.1rem; }
        #recruitEnqueteArea #enquete .qa .block .list .item .balloon {
          min-height: 10rem;
          margin: 0 0 0 6rem;
          padding: 0 3rem 0 8.2rem;
          border-radius: 5rem; }
          #recruitEnqueteArea #enquete .qa .block .list .item .balloon:before {
            right: 7.6rem;
            width: 3rem;
            height: 5rem;
            border-radius: 0.5rem;
            transform: rotate(45deg) skewY(45deg);
            margin: -4rem auto 0 auto; }
          #recruitEnqueteArea #enquete .qa .block .list .item .balloon .text {
            font-size: 1.7rem;
            line-height: 1.35;
            padding: 2.1rem 0; } }
#contactArea .intro {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 500;
  margin: 0 0 calc(42 / 345 * 100%) 0; }
#contactArea .snow-monkey-form[data-screen="confirm"] .smf-form .smf-item:nth-child(13) {
  display: none; }
#contactArea .snow-monkey-form[data-screen="confirm"] .policy {
  display: none; }
#contactArea .snow-monkey-form[data-screen="complete"] .smf-action {
  display: none; }
#contactArea .smf-form > p {
  display: block;
  width: calc(345 / 375 * 100%);
  font-size: 1.5rem;
  line-height: 1.67;
  font-weight: 500;
  margin: 0 auto calc(25 / 375* 100%) auto; }
  #contactArea .smf-form > p strong {
    font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
    font-size: 2.5rem;
    line-height: 1.2;
    font-weight: 700; }
#contactArea .smf-form .smf-item {
  width: calc(345 / 375 * 100%);
  margin: auto;
  margin: 0 auto calc(25 / 375* 100%) auto; }
  #contactArea .smf-form .smf-item:nth-child(10) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(11) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(12) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(13) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(15) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(16) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(17) .smf-item__label__text:after, #contactArea .smf-form .smf-item:nth-child(18) .smf-item__label__text:after {
    display: none; }
  #contactArea .smf-form .smf-item__label {
    margin: 0 0 1em 0; }
    #contactArea .smf-form .smf-item__label__text {
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      font-size: 1.8rem;
      line-height: 1;
      font-weight: 500; }
      #contactArea .smf-form .smf-item__label__text:after {
        content: "必須";
        display: block;
        color: #FFFFFF;
        font-size: 1.5rem;
        line-height: 1;
        font-weight: 700;
        background-color: #C60000;
        padding: 0.5rem 0.6rem; }
  #contactArea .smf-form .smf-item__controls .smf-placeholder {
    font-size: 1.5rem;
    line-height: 1.67;
    font-weight: 500;
    word-break: break-word; }
  #contactArea .smf-form .smf-item__controls .smf-text-control__control {
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.67;
    font-weight: 500;
    padding: 0.6em 1.4em;
    border: 1px solid #ADADAD;
    border-radius: 0.5rem;
    box-shadow: none;
    box-sizing: border-box; }
  #contactArea .smf-form .smf-item__controls .smf-textarea-control__control {
    width: 100%;
    min-height: 16.6em;
    font-size: 1.5rem;
    line-height: 1.67;
    font-weight: 500;
    padding: 0.6em 1.4em;
    border: 1px solid #ADADAD;
    border-radius: 0.5rem;
    box-shadow: none;
    box-sizing: border-box; }
  #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control {
    display: block;
    width: 100%;
    padding: 0 0 0 2.2rem;
    box-sizing: border-box; }
    #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-label {
      margin: 0.75rem 0 0 0; }
    #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control {
      align-items: center; }
      #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__control {
        width: 3rem;
        height: 3rem;
        margin: 0 0.3rem 0 0;
        border: 1px solid #ADADAD; }
        #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__control:checked {
          background-color: #FFFFFF;
          border: 1px solid #ADADAD; }
          #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__control:checked:before {
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            width: 1.67rem;
            height: 1.67rem;
            background-color: #0EB176;
            margin: auto !important; }
      #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__label {
        font-size: 1.6rem;
        line-height: 1;
        font-weight: 500; }
  #contactArea .smf-form .smf-item__controls .note {
    color: #000000;
    font-size: 1.2rem;
    line-height: 1.42;
    font-weight: 500;
    margin: 0;
    padding: 0.5rem 0; }
#contactArea .smf-form .policy {
  display: block;
  width: calc(345 / 375 * 100%);
  font-size: 1.5rem;
  line-height: 1.67;
  font-weight: 500;
  text-align: center;
  margin: auto;
  padding: calc(9 / 345 * 100%) 0 calc(14 / 345 * 100%) 0; }
  #contactArea .smf-form .policy a {
    color: #0EB176;
    text-decoration: underline; }
    #contactArea .smf-form .policy a[target="_blank"]:after {
      content: "";
      display: inline-block;
      width: 1em;
      height: 1em;
      vertical-align: middle;
      background: url(/img/common/icon_blank3.svg) center center no-repeat;
      background-size: contain;
      margin: 0 0.5rem; }
  #contactArea .smf-form .policy .smf-item {
    text-align: center;
    padding: calc(5 / 345 * 100%) 0 0 0; }
    #contactArea .smf-form .policy .smf-item .smf-item__label__text:after {
      display: none; }
    #contactArea .smf-form .policy .smf-item .smf-checkbox-control {
      align-items: center;
      gap: 1.5rem;
      font-size: 1.7rem;
      line-height: 1; }
      #contactArea .smf-form .policy .smf-item .smf-checkbox-control__control {
        width: 3rem;
        height: 3rem;
        background-color: #FFFFFF;
        margin: 0;
        border: 1px solid #ADADAD;
        border-radius: 0.5rem;
        box-shadow: none; }
        #contactArea .smf-form .policy .smf-item .smf-checkbox-control__control:checked:before {
          top: -0.5rem;
          width: 1.5rem;
          height: 2.5rem;
          border-bottom: 3px solid #0EB176;
          border-right: 3px solid #0EB176; }
#contactArea .smf-action {
  padding: calc(30 / 345 * 100%) 0 calc(100 / 345 * 100%) 0; }
  #contactArea .smf-action .smf-button-control {
    display: block;
    width: calc(345 / 375 * 100%);
    margin: auto; }
    #contactArea .smf-action .smf-button-control + .smf-button-control {
      margin-top: calc(40 / 345 * 100%); }
    #contactArea .smf-action .smf-button-control__control {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      width: 100%;
      height: 7.5rem;
      color: #FFFFFF;
      font-size: 2.8rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      background-color: #005014;
      background-image: none;
      padding: 0;
      border: 1px solid #005014;
      border-radius: 0.5rem;
      box-sizing: border-box;
      transition: color 0.3s ease; }
      #contactArea .smf-action .smf-button-control__control[data-action="back"] {
        color: #FFFFFF;
        background-color: #A6A6A6;
        border: 1px solid #A6A6A6; }

@media screen and (min-width: 769px) {
  #contactArea .contentInner {
    max-width: 790px; }
  #contactArea .intro {
    font-size: 1.8rem;
    line-height: 1.56;
    margin: 0 0 calc(44 / 750 * 100%) 0;
    padding: calc(96 / 750 * 100%) 0 0 0; }
  #contactArea .snow-monkey-form[data-screen="confirm"] .smf-form .smf-item:nth-child(19) .smf-item__label {
    margin: 0.8rem 0 0 0; }
  #contactArea .snow-monkey-form[data-screen="confirm"] .smf-form .smf-item__controls .smf-placeholder {
    padding: 0.85em 1em; }
  #contactArea .snow-monkey-form[data-screen="confirm"] .policy {
    display: none; }
  #contactArea .smf-form > p {
    width: 100%;
    max-width: 790px;
    margin: 0 auto 1rem auto;
    padding: 0 20px; }
    #contactArea .smf-form > p strong {
      font-size: 2.2rem;
      line-height: 1.36; }
  #contactArea .smf-form .smf-item {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 790px;
    margin: 0 auto 2.8rem auto;
    padding: 0 20px;
    box-sizing: border-box; }
    #contactArea .smf-form .smf-item:nth-child(3), #contactArea .smf-form .smf-item:nth-child(4) {
      display: block; }
      #contactArea .smf-form .smf-item:nth-child(3) .smf-item__label__text, #contactArea .smf-form .smf-item:nth-child(4) .smf-item__label__text {
        justify-content: flex-start;
        font-size: 1.8rem;
        line-height: 1.67;
        margin: 0 0 0.5rem 0; }
    #contactArea .smf-form .smf-item:nth-child(19) .smf-item__label {
      margin: 1.3rem 0 0 0; }
    #contactArea .smf-form .smf-item:nth-child(19) .smf-radio-buttons-control {
      padding: 0 1.6rem 0 1.6rem; }
      #contactArea .smf-form .smf-item:nth-child(19) .smf-radio-buttons-control__control {
        display: flex;
        justify-content: space-between; }
        #contactArea .smf-form .smf-item:nth-child(19) .smf-radio-buttons-control__control .smf-label {
          margin-right: 0; }
    #contactArea .smf-form .smf-item__col--label {
      flex-basis: calc(220 / 750 * 100%); }
    #contactArea .smf-form .smf-item__col--controls {
      flex-basis: calc(515 / 750 * 100%); }
    #contactArea .smf-form .smf-item__label {
      margin: 0.8rem 0 0 0; }
      #contactArea .smf-form .smf-item__label__text {
        font-size: 1.6rem;
        line-height: 1.88; }
        #contactArea .smf-form .smf-item__label__text:after {
          margin: 0 0 0 1.5rem;
          padding: 0.5rem 0.6rem; }
    #contactArea .smf-form .smf-item__controls .smf-placeholder {
      font-size: 1.4rem;
      line-height: 1.43;
      font-weight: 500;
      word-break: break-word; }
    #contactArea .smf-form .smf-item__controls .smf-text-control__control {
      font-size: 1.4rem;
      line-height: 1.43;
      padding: 0.85em 1em; }
    #contactArea .smf-form .smf-item__controls .smf-textarea-control__control {
      min-height: 14.3em;
      font-size: 1.4rem;
      line-height: 1.43;
      padding: 1.3em 1.7em; }
    #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control {
      padding: 0; }
      #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-label {
        display: inline-block;
        margin: 1.7rem 3rem 0 0; }
      #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__control {
        width: 2.45rem;
        height: 2.45rem;
        margin: 0 0.3rem 0 0; }
        #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__control:checked:before {
          width: 1.36rem;
          height: 1.36rem; }
      #contactArea .smf-form .smf-item__controls .smf-radio-buttons-control .smf-radio-button-control__label {
        font-size: 1.5rem;
        line-height: 1; }
    #contactArea .smf-form .smf-item__controls .note {
      padding: 0.5rem 0; }
  #contactArea .smf-form .policy {
    width: 100%;
    max-width: 790px;
    font-size: 1.5rem;
    line-height: 1.53;
    padding: calc(23 / 750 * 100%) 20px 0 20px; }
    #contactArea .smf-form .policy a {
      color: #0EB176;
      font-weight: 700;
      transition: opacity 0.2s ease-out; }
      #contactArea .smf-form .policy a[target="_blank"]:after {
        width: 1.2em;
        height: 1.2em; }
      #contactArea .smf-form .policy a:hover {
        opacity: 0.8; }
    #contactArea .smf-form .policy br {
      display: none; }
    #contactArea .smf-form .policy .smf-item {
      display: block;
      text-align: center;
      padding: calc(24 / 750 * 100%) 0 0 0; }
      #contactArea .smf-form .policy .smf-item .smf-item__label__text:after {
        display: none; }
      #contactArea .smf-form .policy .smf-item .smf-checkbox-control {
        align-items: center;
        gap: 1.5rem;
        font-size: 1.8rem;
        line-height: 1;
        font-weight: 700; }
  #contactArea .smf-action {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 790px;
    margin: auto;
    padding: 5rem 0 0 0; }
    #contactArea .smf-action .smf-button-control {
      width: 100%;
      max-width: 300px;
      padding: 0 0 calc(115 / 750 * 100%) 0; }
      #contactArea .smf-action .smf-button-control + .smf-button-control {
        margin-top: 0; }
      #contactArea .smf-action .smf-button-control__control {
        height: 5rem;
        font-size: 1.8rem;
        line-height: 1;
        border-radius: 0;
        transition: opacity 0.2s ease-out; }
        #contactArea .smf-action .smf-button-control__control:hover {
          opacity: 0.8; } }
#thanksArea .content {
  background-color: #EDF4F1; }
#thanksArea .wrap {
  padding: calc(26 / 345 * 100%) 0 calc(136 / 345 * 100%) 0; }
  #thanksArea .wrap .box {
    background-color: #FFFFFF;
    padding: calc(31 / 345 * 100%) 0 calc(37 / 345 * 100%) 0; }
    #thanksArea .wrap .box .title {
      width: calc(300 / 345 * 100%);
      font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
      color: #005014;
      font-size: 2.4rem;
      line-height: 1.38;
      font-weight: 700;
      margin: 0 auto calc(22 / 345 * 100%) auto; }
    #thanksArea .wrap .box .text {
      width: calc(300 / 345 * 100%);
      font-size: 1.5rem;
      line-height: 1.67;
      letter-spacing: -0.05em;
      margin: auto; }

@media screen and (min-width: 769px) {
  #thanksArea .contentInner {
    max-width: 840px; }
  #thanksArea .wrap {
    padding: calc(85 / 800 * 100%) 0 calc(125 / 800 * 100%) 0; }
    #thanksArea .wrap .box {
      text-align: center;
      padding: calc(77 / 800 * 100%) 0 calc(90 / 800 * 100%) 0; }
      #thanksArea .wrap .box .title {
        width: 100%;
        font-size: 2.8rem;
        line-height: 1.25;
        margin: 0 20px calc(30 / 800 * 100%) 20px; }
      #thanksArea .wrap .box .text {
        width: 100%;
        font-size: 1.8rem;
        line-height: 1.89;
        margin: 0 20px; } }
#policyArea .policy {
  width: calc(300 / 345 * 100%);
  margin: auto;
  padding: 0 0 calc(57 / 345 * 100%) 0; }
  #policyArea .policy .text {
    font-size: 1.5rem;
    line-height: 2;
    font-weight: 500;
    margin: 0 0 calc(28 / 300 * 100%) 0; }
  #policyArea .policy .row {
    margin: 0 0 calc(26 / 300 * 100%) 0; }
    #policyArea .policy .row .head {
      font-size: 1.8rem;
      line-height: 1.56;
      font-weight: 700;
      margin: 0 0 calc(5 / 300 * 100%) 0; }
    #policyArea .policy .row .cont {
      font-size: 1.5rem;
      line-height: 2;
      font-weight: 500; }
      #policyArea .policy .row .cont ul li {
        text-indent: -1em;
        padding: 0 0 0 1em; }
        #policyArea .policy .row .cont ul li:before {
          content: "・";
          font-family: "Outfit", serif; }
  #policyArea .policy .last {
    font-size: 1.5rem;
    line-height: 2;
    font-weight: 500;
    padding: 0 0 calc(28 / 300 * 100%) 0; }

@media screen and (min-width: 769px) {
  #policyArea .policy {
    width: 100%;
    max-width: 750px;
    padding: calc(93 / 1000 * 100%) 0 calc(24 / 1000 * 100%) 0; }
    #policyArea .policy .text {
      margin: 0 0 calc(33 / 750 * 100%) 0; }
    #policyArea .policy .row {
      margin: 0 0 calc(33 / 750 * 100%) 0; }
      #policyArea .policy .row .head {
        margin: 0 0 calc(5 / 750 * 100%) 0; }
    #policyArea .policy .last {
      padding: 0 0 calc(28 / 750 * 100%) 0; } }
