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

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* ---------- 初期 ---------- */
body {
  letter-spacing: 0;
  font-family: "dnp-shuei-mgothic-std", sans-serif;
  font-weight: 600; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  line-height: 0; }

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

/* ---------- /共通部分 ---------- */
#jougetyuou {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto; }

#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

#resbtn {
  -webkit-appearance: none; }

.ancr {
  position: relative;
  transition: 0.5s; }

.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

.ancr:hover {
  transition: 0.5s;
  cursor: pointer; }

/* ---------- /参考タグ部分 ---------- */
.font_noto {
  font-family: "Noto Sans JP", sans-serif; }

.font_inter {
  font-family: "Inter", sans-serif; }

/* PC */
@media screen and (min-width: 769px) {
  .sponly {
    display: none !important; }

  header {
    width: 100%;
    background: #fff;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100; }
    header .inner {
      width: 96%;
      max-width: 1610px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0; }
      header .inner .logo {
        width: 350px; }
        header .inner .logo a {
          display: block;
          width: 100%; }
      header .inner .header_right {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        margin-left: 50px; }
        header .inner .header_right nav ul {
          display: flex;
          justify-content: flex-start;
          margin-right: 50px; }
          header .inner .header_right nav ul li {
            font-size: 18px;
            line-height: 1.25em;
            font-weight: 700;
            margin-right: 60px;
            padding: 50px 0;
            color: #184e24; }
            header .inner .header_right nav ul li:last-child {
              margin-right: 0; }
            header .inner .header_right nav ul li a {
              color: #184e24; }
            header .inner .header_right nav ul li:hover .li {
              visibility: visible;
              opacity: 1; }
            header .inner .header_right nav ul li .li {
              visibility: hidden;
              opacity: 0;
              position: absolute;
              left: 0;
              top: 100%;
              width: 100%;
              background: #e8ede9;
              box-sizing: border-box;
              padding: 15px;
              display: flex;
              justify-content: center;
              transition: opacity 0.3s ease, visibility 0.3s ease; }
              header .inner .header_right nav ul li .li dt:after {
                content: ' ｜ ';
                margin: 0 1em; }
              header .inner .header_right nav ul li .li dt:last-child:after {
                display: none; }
        header .inner .header_right .header_btn {
          width: 250px; }
          header .inner .header_right .header_btn a {
            display: block;
            width: 100%;
            font-size: 18px;
            line-height: 1;
            font-weight: 700;
            color: #fff;
            text-align: center;
            padding: 27px 0 28px;
            border-radius: 100px;
            border: solid 1px #1d9902;
            background: #1d9902;
            transition: 0.3s; }
            header .inner .header_right .header_btn a:hover {
              color: #1d9902;
              background: #fff; } }
@media screen and (min-width: 769px) and (max-width: 1500px) {
  header .inner .logo {
    width: 250px; }
  header .inner .header_right {
    margin-left: 50px; }
    header .inner .header_right nav ul {
      display: flex;
      justify-content: flex-start;
      margin-right: 30px; }
      header .inner .header_right nav ul li {
        font-size: 16px;
        margin-right: 30px; }
    header .inner .header_right .header_btn {
      width: 150px; }
      header .inner .header_right .header_btn a {
        font-size: 16px;
        padding: 17px 0 18px; } }
@media screen and (min-width: 769px) {
  #top_mv {
    width: 100%;
    margin-top: 80px;
    margin-top: 200px; }
    #top_mv .inner {
      width: 100%;
      display: flex;
      justify-content: space-between; }
      #top_mv .inner .top_mv_left {
        width: 49.47916%;
        box-sizing: border-box;
        padding: 8.854% 0 0 7.8125%;
        background: linear-gradient(to right, #79b437, #1d9902);
        border-radius: 0 30px 30px 0;
        position: relative; }
        #top_mv .inner .top_mv_left::before {
          position: absolute;
          content: "";
          width: 39.05%;
          height: 252px;
          right: 15px;
          bottom: 0;
          background: url("../img/mv_ob.png") no-repeat right bottom;
          background-size: contain; }
        #top_mv .inner .top_mv_left h1 {
          font-size: 41px;
          letter-spacing: 0.1em;
          line-height: 1.6em;
          font-weight: 500;
          color: #fff; }
      #top_mv .inner .top_mv_right {
        width: 49.47916%;
        border-radius: 30px 0 0 30px;
        overflow: hidden; } }
@media screen and (min-width: 769px) and (max-width: 1300px) {
  #top_mv .inner .top_mv_left {
    padding-top: 7%;
    padding-left: 5%; }
    #top_mv .inner .top_mv_left h1 {
      font-size: 30px !important; } }
@media screen and (min-width: 769px) {
  .top_sec_ttl {
    text-align: center; }
    .top_sec_ttl .en {
      font-size: 30px;
      letter-spacing: 0.05em;
      line-height: 1.2em;
      font-weight: 400;
      color: #1d9902; }
    .top_sec_ttl .ja {
      font-size: 38px;
      letter-spacing: 0.1em;
      line-height: 1.18em;
      font-weight: bold;
      color: #1d9902; }
      .top_sec_ttl .ja.white {
        color: #fff; }

  #top_news .inner {
    width: 1100px;
    max-width: 95%;
    margin: 0 auto;
    padding: 130px 0 110px; }
    #top_news .inner .top_news_boxes {
      margin: 50px 0 30px; }
      #top_news .inner .top_news_boxes .top_news_box {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 30px 0;
        color: #333333; }
        #top_news .inner .top_news_boxes .top_news_box:nth-child(2) {
          border-bottom: solid 1px #808080;
          border-top: solid 1px #808080; }
        #top_news .inner .top_news_boxes .top_news_box .date {
          width: 159px;
          font-size: 16px;
          line-height: 1.2em; }
        #top_news .inner .top_news_boxes .top_news_box .cat {
          width: 95px;
          font-size: 16px;
          text-align: center;
          padding: 6px 0;
          border-radius: 100px;
          border: solid 1px #1d9902;
          margin-right: 44px; }
        #top_news .inner .top_news_boxes .top_news_box .txt {
          flex: 1; }
          #top_news .inner .top_news_boxes .top_news_box .txt a {
            display: inline-block;
            font-size: 16px;
            line-height: 1.25em;
            color: #333333; }
            #top_news .inner .top_news_boxes .top_news_box .txt a:hover {
              text-decoration: underline; }
    #top_news .inner .top_news_btn {
      width: 327px;
      margin: 0 auto; }
      #top_news .inner .top_news_btn a {
        display: block;
        width: 100%;
        font-size: 19px;
        letter-spacing: 0.05em;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
        padding: 25px 0 26px;
        border-radius: 100px;
        border: solid 1px #1d9902;
        background: #1d9902;
        transition: 0.3s; }
        #top_news .inner .top_news_btn a:hover {
          color: #1d9902;
          background: #fff; }

  #top_network .bg {
    width: 100%;
    padding-top: 175px;
    background: url("../img/top_network_bg.png") no-repeat;
    background-size: cover; }
    #top_network .bg .top_network_head {
      font-size: 48px;
      letter-spacing: 0.1em;
      line-height: 2.04em;
      color: #fff;
      text-align: center;
      padding: 0 1em;
      margin-bottom: 145px; }
    #top_network .bg .top_network_cont {
      padding: 183px 0 71px;
      background: url("../img/top_network_bg_02.png") no-repeat center top;
      background-size: 2004px auto; }
      #top_network .bg .top_network_cont .top_network_txt {
        font-size: 25px;
        letter-spacing: 0.05em;
        line-height: 1.4em;
        font-weight: 400;
        color: #1d9902;
        text-align: center;
        margin: 50px 0 75px; }
      #top_network .bg .top_network_cont .top_network_btn {
        width: 555px;
        margin: 0 auto; }
        #top_network .bg .top_network_cont .top_network_btn a {
          display: block;
          width: 100%;
          font-size: 19px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          text-align: center;
          padding: 25px 0 26px;
          border-radius: 100px;
          border: solid 1px #1d9902;
          background: #1d9902;
          transition: 0.3s; }
          #top_network .bg .top_network_cont .top_network_btn a:hover {
            color: #1d9902;
            background: #fff; } }
@media screen and (min-width: 769px) and (min-width: 1921px) {
  #top_network .bg .top_network_cont {
    background-size: 105% auto; } }
@media screen and (min-width: 769px) {
  #top_comp .inner {
    width: 95%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 136px 0 224px; }
    #top_comp .inner .top_sec_ttl .en {
      margin-bottom: 15px; }
    #top_comp .inner .top_comp_boxes {
      margin-top: 90px;
      display: flex;
      justify-content: space-between; }
      #top_comp .inner .top_comp_boxes .top_comp_box {
        width: 28.571%; }
        #top_comp .inner .top_comp_boxes .top_comp_box .top_comp_box_img {
          width: 85%;
          margin: 0 auto; }
        #top_comp .inner .top_comp_boxes .top_comp_box h3 {
          font-size: 30px;
          letter-spacing: 0.1em;
          line-height: 1.2em;
          font-weight: bold;
          color: #184e24;
          text-align: center;
          margin: 15px 0 30px; }
        #top_comp .inner .top_comp_boxes .top_comp_box .top_comp_box_txt {
          width: 86.25%;
          margin: 0 auto;
          font-size: 18px;
          letter-spacing: 0.05em;
          line-height: 1.5em;
          color: #333333; }

  #top_product {
    background: #e8ede9; }
    #top_product .inner {
      width: 95%;
      max-width: 1235px;
      margin: 0 auto;
      padding: 150px 0 140px; }
      #top_product .inner .top_sec_ttl .en {
        margin-bottom: 15px; }
      #top_product .inner .top_product_cont {
        margin: 60px 0 55px;
        display: flex;
        justify-content: space-between; }
        #top_product .inner .top_product_cont .top_product_boxes {
          width: 47.6297%;
          position: relative; }
          #top_product .inner .top_product_cont .top_product_boxes .top_product_box {
            box-sizing: border-box;
            padding: 75px 40px 100px;
            border-radius: 30px;
            background: #fff;
            position: relative;
            z-index: 2; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_img {
              text-align: center; }
              #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_img .short {
                width: 92.526%;
                padding-bottom: 5px; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box h3 {
              font-size: 30px;
              letter-spacing: 0.1em;
              line-height: 1.2em;
              font-weight: bold;
              color: #184e24;
              margin: 50px 0 30px; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_txt {
              font-size: 18px;
              letter-spacing: 0.05em;
              line-height: 1.5em;
              color: #333333; }
          #top_product .inner .top_product_cont .top_product_boxes .box_bg {
            width: 105.143%;
            position: absolute;
            left: -1.7%;
            top: -10px;
            z-index: 1; }
      #top_product .inner .top_product_txt {
        font-size: 25px;
        letter-spacing: 0.1em;
        line-height: 1.2em;
        font-weight: bold;
        color: #333333;
        text-align: center; }

  #top_zakki {
    background: url("../img/top_zakki_bg.png") no-repeat center;
    background-size: cover; }
    #top_zakki .inner {
      width: 95%;
      max-width: 1380px;
      margin: 0 auto;
      padding: 150px 0 280px; }
      #top_zakki .inner .top_zakki_box {
        width: 100%;
        /*実質1260px*/
        margin: 70px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-sizing: border-box;
        padding: 40px 80px 40px 40px;
        background: url("../img/top_zakki_box_bg.png") no-repeat right bottom;
        background-size: cover; }
        #top_zakki .inner .top_zakki_box .top_zakki_box_img {
          width: 35.327%; }
        #top_zakki .inner .top_zakki_box .top_zakki_box_right {
          width: 58.73%;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          flex-wrap: wrap;
          color: #333; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .cat {
            display: inline-block;
            font-size: 16px;
            letter-spacing: 0.1em;
            color: #1d9902;
            padding: 5px 32px;
            border-radius: 100px;
            border: solid 2px #1d9902;
            margin-right: 15px; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .date {
            font-size: 16px;
            letter-spacing: 0.05em;
            line-height: 1.5em; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .ttl {
            width: 100%;
            font-size: 30px;
            letter-spacing: 0.05em;
            line-height: 1.2em;
            font-weight: bold;
            color: #184e24;
            margin: 25px 0; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .txt {
            font-size: 18px;
            letter-spacing: 0.05em;
            line-height: 2em;
            text-decoration: underline;
            text-decoration-style: dashed;
            text-decoration-color: #1d9902;
            text-decoration-thickness: 1px;
            text-underline-offset: 10px; }
      #top_zakki .inner .top_zakki_btn {
        width: 360px;
        margin: 0 auto; }
        #top_zakki .inner .top_zakki_btn a {
          display: block;
          width: 100%;
          font-size: 19px;
          letter-spacing: 0.05em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          text-align: center;
          padding: 30px 0;
          border-radius: 100px;
          background: #fff;
          transition: 0.3s; }
          #top_zakki .inner .top_zakki_btn a:hover {
            color: #fff;
            background: #1d9902; }

  .kodamakai {
    margin-top: -180px; }
    .kodamakai .inner {
      width: 1100px;
      max-width: 95%;
      margin: 0 auto; }
      .kodamakai .inner .kodamakai_cont {
        position: relative; }
        .kodamakai .inner .kodamakai_cont::before {
          position: absolute;
          content: "";
          width: 103.363%;
          height: 110%;
          position: absolute;
          top: -10px;
          left: -10px;
          background: url("../img/kodamakai_bg.png") no-repeat center;
          background-size: 100% 100%; }
        .kodamakai .inner .kodamakai_cont .kodamakai_box {
          width: 100%;
          /*実質1088px*/
          display: flex;
          justify-content: space-between;
          align-items: center;
          box-sizing: border-box;
          border: solid 6px #184e24;
          border-radius: 30px;
          background: #e8f5e6;
          position: relative;
          z-index: 2; }
          .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_logo {
            width: 40.44%;
            padding: 61px 0;
            text-align: center;
            position: relative; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_logo::before {
              position: absolute;
              content: "";
              width: 4px;
              height: calc( 100% - 80px );
              right: -2px;
              top: 50%;
              transform: translateY(-50%);
              background: #184e24; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_logo img {
              width: 203px; }
          .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right {
            width: 59.56%; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_txt {
              width: 382px;
              margin: 0 auto;
              font-size: 20px;
              letter-spacing: 0.1em;
              line-height: 1.5em;
              color: #184e24;
              margin-bottom: 30px; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_btn {
              width: 382px;
              margin: 0 auto; }
              .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_btn a {
                display: block;
                width: 371px;
                max-width: 100%;
                font-size: 19px;
                letter-spacing: 0.05em;
                line-height: 1;
                font-weight: bold;
                color: #fff;
                text-align: center;
                box-sizing: border-box;
                padding: 24px 0 26px;
                border-radius: 100px;
                border: solid 1px #184e24;
                background: #184e24;
                transition: 0.3s; }
                .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_btn a:hover {
                  color: #184e24;
                  background: #fff; }

  footer {
    padding-top: 135px; }
    footer a:hover {
      text-decoration: underline; }
    footer .footer_nav {
      width: 1380px;
      max-width: 95%;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      footer .footer_nav .footer_menu {
        padding-right: 1em; }
        footer .footer_nav .footer_menu .footer_menu_ttl {
          font-size: 22px;
          letter-spacing: 0.05em;
          line-height: 1.18em;
          font-weight: bold;
          color: #1d9902; }
          footer .footer_nav .footer_menu .footer_menu_ttl:nth-child(n+2) {
            margin-top: 20px; }
          footer .footer_nav .footer_menu .footer_menu_ttl a {
            color: #1d9902; }
        footer .footer_nav .footer_menu ul {
          margin-top: 25px; }
          footer .footer_nav .footer_menu ul li {
            font-size: 18px;
            letter-spacing: 0.05em;
            line-height: 1.16em; }
            footer .footer_nav .footer_menu ul li:nth-child(n+2) {
              margin-top: 20px; }
            footer .footer_nav .footer_menu ul li a {
              display: inline-block;
              color: #333;
              padding-left: 1.5em;
              text-indent: -1.5em; }
    footer .footer_logo {
      width: 1380px;
      max-width: 95%;
      margin: 90px auto 65px;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      footer .footer_logo .logo01 {
        width: 47.588%; }
      footer .footer_logo .logo02 {
        width: 41.916%; }
    footer .footer_btm {
      background: #1d9902; }
      footer .footer_btm .inner {
        width: 1380px;
        max-width: 95%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 40px 0;
        color: #fff; }
        footer .footer_btm .inner .footer_btm_link {
          display: flex;
          justify-content: flex-start; }
          footer .footer_btm .inner .footer_btm_link a {
            display: inline-block;
            font-size: 16px;
            line-height: 1.25em;
            color: #fff;
            position: relative; }
            footer .footer_btm .inner .footer_btm_link a:first-child {
              margin-right: 3em; }
              footer .footer_btm .inner .footer_btm_link a:first-child::before {
                position: absolute;
                content: "";
                width: 1px;
                height: 32px;
                right: -24px;
                top: 50%;
                transform: translateY(-50%);
                background: #fff; }
        footer .footer_btm .inner .copyright {
          font-size: 16px;
          letter-spacing: 0.05em;
          line-height: 1.25em; }

  /*下層共通*/
  .under .under_mv {
    margin-top: 125px; }
    .under .under_mv .inner {
      display: flex;
      justify-content: space-between; }
      .under .under_mv .inner .under_mv_left {
        width: 49.5833%;
        box-sizing: border-box;
        background: linear-gradient(to right, #79b437, #1d9902);
        border-radius: 0 30px 30px 0;
        position: relative;
        min-height: 368px; }
        .under .under_mv .inner .under_mv_left::before {
          position: absolute;
          content: "";
          width: 39.05%;
          height: 252px;
          right: 15px;
          bottom: 0;
          background: url("../img/mv_ob.png") no-repeat right bottom;
          background-size: contain; }
        .under .under_mv .inner .under_mv_left h2 {
          font-size: 55px;
          letter-spacing: 0.2em;
          line-height: 1.2em;
          font-weight: bold;
          color: #fff;
          box-sizing: border-box;
          padding-left: 28%;
          position: relative;
          top: 50%;
          transform: translateY(-50%); }
      .under .under_mv .inner .under_mv_right {
        width: 49.5833%;
        border-radius: 30px 0 0 30px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover; }
  .under .punkuzu {
    width: 95%;
    max-width: 1740px;
    margin: 45px auto 0; }
    .under .punkuzu ul {
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      .under .punkuzu ul li {
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 1;
        margin-right: 20px; }
        .under .punkuzu ul li:last-child {
          margin: 0; }
        .under .punkuzu ul li.arrow {
          width: 8px; }
        .under .punkuzu ul li a {
          display: inline-block;
          color: #333333; }
          .under .punkuzu ul li a.home {
            width: 22px; }
  .under .under_body.bg_gray {
    width: 95%;
    max-width: 1795px;
    margin: 35px auto 0;
    border-radius: 50px;
    background: rgba(232, 237, 233, 0.41); }
  .under .wp-pagenavi {
    display: flex;
    justify-content: center;
    align-items: center; }
    .under .wp-pagenavi a {
      display: inline-block;
      width: 64px;
      height: 64px;
      margin: 0 7px;
      font-weight: bold;
      text-align: center;
      border: none;
      padding: 0; }
      .under .wp-pagenavi a.previouspostslink {
        height: 64px;
        border-radius: 100%;
        background: url("../img/page_prev_arrow.png") no-repeat center #fff;
        background-size: 12px; }
      .under .wp-pagenavi a.nextpostslink {
        height: 64px;
        border-radius: 100%;
        background: url("../img/page_next_arrow.png") no-repeat center #fff;
        background-size: 12px; }
      .under .wp-pagenavi a.page {
        font-size: 26px;
        line-height: 64px;
        color: #1d9902; }
    .under .wp-pagenavi span {
      display: inline-block;
      width: 64px;
      height: 64px;
      margin: 0 7px;
      font-size: 26px;
      line-height: 64px;
      font-weight: bold;
      color: #1d9902;
      text-align: center;
      border: none;
      padding: 0; }
      .under .wp-pagenavi span.current {
        color: #fff;
        border-radius: 100%;
        background: #1d9902; } }
@media screen and (min-width: 769px) and (max-width: 1600px) {
  .under .under_mv .inner .under_mv_left h2 {
    font-size: 45px;
    padding-left: 20%; } }
@media screen and (min-width: 769px) {
  /*お知らせ（共通）*/
  .news .under_mv_right {
    background-image: url("../img/news_mv.png"); }

  /*お知らせ*/
  #news .under_body {
    padding: 87px 0 140px; }
    #news .under_body .inner {
      width: 85%;
      max-width: 1380px;
      margin: 0 auto; }
  #news .news_cat {
    margin-bottom: 60px; }
    #news .news_cat ul {
      display: flex;
      justify-content: center;
      align-items: center; }
      #news .news_cat ul li {
        margin: 0 14px; }
        #news .news_cat ul li a {
          display: inline-block;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          box-sizing: border-box;
          padding: 16px 40px;
          border-radius: 25px;
          border: solid 1px #1d9902;
          background: #fff;
          transition: 0.3s; }
          #news .news_cat ul li a.active {
            color: #fff;
            background: #1d9902; }
          #news .news_cat ul li a:hover {
            color: #fff;
            background: #1d9902; }
  #news .news_boxes {
    margin-bottom: 105px; }
    #news .news_boxes .news_box {
      padding: 40px 0 55px;
      background: #fff; }
      #news .news_boxes .news_box:nth-child(n+2) {
        margin-top: 45px; }
      #news .news_boxes .news_box .news_box_in {
        width: 95%;
        max-width: 1100px;
        margin: 0 auto;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap; }
        #news .news_boxes .news_box .news_box_in .date {
          font-size: 18px;
          letter-spacing: 0.1em;
          line-height: 1;
          color: #333333;
          margin-right: 40px; }
        #news .news_boxes .news_box .news_box_in .cat {
          display: inline-block;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          box-sizing: border-box;
          padding: 16px 40px;
          border-radius: 25px;
          border: solid 1px #1d9902;
          background: #fff; }
        #news .news_boxes .news_box .news_box_in .ttl {
          width: 100%;
          margin-top: 20px; }
          #news .news_boxes .news_box .news_box_in .ttl a {
            font-size: 22px;
            letter-spacing: 0.05em;
            line-height: 1.5em;
            color: #333333; }
            #news .news_boxes .news_box .news_box_in .ttl a:hover {
              text-decoration: underline; }

  /*雑記帳（共通）*/
  .zakkicho .under_mv_right {
    background-image: url("../img/zakkicho_mv.png"); }

  /*雑記帳*/
  #zakkicho .under_body {
    padding: 75px 0 150px; }
    #zakkicho .under_body .inner {
      width: 85%;
      max-width: 1380px;
      margin: 0 auto; }
  #zakkicho .zakkicho_head {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto 115px; }
    #zakkicho .zakkicho_head .zakkicho_head_box {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start; }
      #zakkicho .zakkicho_head .zakkicho_head_box:nth-child(2) {
        margin-top: 20px; }
      #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_head_box_ttl {
        width: 110px;
        font-size: 18px;
        letter-spacing: 0.01em;
        line-height: 50px;
        font-weight: bold;
        color: #333333;
        margin-right: 25px; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_head_box_ttl.cat {
          padding-top: 20px;
          letter-spacing: 0.22em; }
      #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search {
        width: 472px;
        position: relative; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_box {
          width: 100%;
          height: 50px;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          font-family: "dnp-shuei-mgothic-std", sans-serif;
          color: #333333;
          box-sizing: border-box;
          padding-left: 40px;
          border-radius: 25px;
          border: solid 1px #1d9902; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_btn {
          width: 29px;
          position: absolute;
          right: 27px;
          top: 50%;
          transform: translateY(-50%); }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_btn input {
            width: 100%;
            height: 29px;
            font-size: 0;
            border: none;
            background: url("../img/icon_search.png") no-repeat center;
            background-size: contain;
            cursor: pointer; }
      #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_year {
        width: 166px; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_year select {
          width: 100%;
          height: 50px;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          font-family: "dnp-shuei-mgothic-std", sans-serif;
          color: #1d9902;
          box-sizing: border-box;
          padding-left: 40px;
          border-radius: 25px;
          border: solid 1px #1d9902;
          -webkit-appearance: none;
          appearance: none;
          /* デフォルトの矢印を非表示 */
          background: url("../img/icon_select.png") no-repeat right 30px center #fff;
          background-size: 15px; }
      #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat {
        flex: 1; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          flex-wrap: wrap; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li {
            margin-right: 28px;
            margin-top: 20px;
            /* aタグだった部分をlabelに変更 */ }
            #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label {
              display: inline-block;
              font-size: 16px;
              letter-spacing: 0.1em;
              line-height: 1;
              font-weight: bold;
              color: #1d9902;
              box-sizing: border-box;
              padding: 16px 40px;
              border-radius: 25px;
              border: solid 1px #1d9902;
              background: #fff;
              transition: 0.3s;
              cursor: pointer;
              /* クリックできることが分かるようにポインターにする */
              /* デフォルトの四角いチェックボックスは非表示にする */
              /* 中のチェックボックスがチェックされた時のスタイル（元の .active に相当） */
              /* ホバー時のスタイル */ }
              #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label input[type="checkbox"] {
                display: none; }
              #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label:has(input:checked) {
                color: #fff;
                background: #1d9902; }
              #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label:hover {
                color: #fff;
                background: #1d9902; }
  #zakkicho .zakkicho_boxes {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: 130px; }
    #zakkicho .zakkicho_boxes .zakkicho_box {
      width: 31.1594%;
      margin-right: 3.26%; }
      #zakkicho .zakkicho_boxes .zakkicho_box:nth-child(3n) {
        margin-right: 0; }
      #zakkicho .zakkicho_boxes .zakkicho_box:nth-child(n+4) {
        margin-top: 65px; }
      #zakkicho .zakkicho_boxes .zakkicho_box a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        width: 100%;
        color: #333333;
        box-sizing: border-box;
        padding: 13px 12px 20px;
        border-radius: 17px;
        background: #fff;
        transition: 0.3s; }
        #zakkicho .zakkicho_boxes .zakkicho_box a:hover {
          opacity: 0.8; }
        #zakkicho .zakkicho_boxes .zakkicho_box a .zakkicho_box_img {
          width: 100%;
          padding-top: 68.56%;
          background-repeat: no-repeat;
          background-position: center;
          background-size: cover; }
        #zakkicho .zakkicho_boxes .zakkicho_box a .ttl {
          width: 100%;
          font-size: 22px;
          letter-spacing: 0.01em;
          line-height: 1.5em;
          font-weight: bold;
          margin: 20px 0 25px; }
        #zakkicho .zakkicho_boxes .zakkicho_box a .cat {
          display: inline-block;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          box-sizing: border-box;
          padding: 16px 38px;
          border-radius: 25px;
          border: solid 1px #1d9902;
          background: #fff; }
        #zakkicho .zakkicho_boxes .zakkicho_box a .date {
          font-size: 18px;
          letter-spacing: 0.01em;
          line-height: 1; }

  /*記事詳細（共通）*/
  .article .under_body {
    padding: 70px 0 195px; }
    .article .under_body .inner {
      width: 85%;
      max-width: 1380px;
      margin: 0 auto; }
  .article .article_ttl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 50px; }
    .article .article_ttl .date {
      font-size: 18px;
      letter-spacing: 0.1em;
      line-height: 1;
      color: #333333;
      margin-right: 40px; }
    .article .article_ttl .cat {
      display: inline-block;
      font-size: 16px;
      letter-spacing: 0.1em;
      line-height: 1;
      font-weight: bold;
      color: #1d9902;
      box-sizing: border-box;
      padding: 16px 40px;
      border-radius: 25px;
      border: solid 1px #1d9902;
      background: #fff; }
    .article .article_ttl .ttl {
      width: 100%;
      margin-top: 15px;
      font-size: 30px;
      letter-spacing: 0.05em;
      line-height: 1.5em;
      font-weight: bold;
      color: #333333; }
  .article .article_bg {
    padding: 90px 0 130px;
    border-radius: 5px;
    background: #fff; }
    .article .article_bg .article_cont {
      width: 80%;
      margin: 0 auto;
      color: #333333; }
      .article .article_bg .article_cont .article_img {
        width: 100%;
        margin-bottom: 40px; }
      .article .article_bg .article_cont p {
        font-size: 17px;
        letter-spacing: 0;
        line-height: 1.8em;
        margin-bottom: 50px;
        text-align: justify; }
        .article .article_bg .article_cont p:last-of-type {
          margin-bottom: 0; }
      .article .article_bg .article_cont h2 {
        font-size: 26px;
        letter-spacing: 0.1em;
        line-height: 1.5em;
        font-weight: bold;
        box-sizing: border-box;
        padding: 16px 24px;
        border-left: solid 6px #1d9902;
        background: #e8f5e6;
        margin-bottom: 20px; }
      .article .article_bg .article_cont h3 {
        font-size: 23px;
        letter-spacing: 0.1em;
        line-height: 1.5em;
        font-weight: bold;
        box-sizing: border-box;
        padding: 9px 24px;
        border-left: solid 6px #1d9902;
        margin-bottom: 20px; }
      .article .article_bg .article_cont h4 {
        font-size: 21px;
        letter-spacing: 0.1em;
        line-height: 1.5em;
        font-weight: bold;
        padding-bottom: 18px;
        border-bottom: solid 2px #1d9902;
        margin-bottom: 20px; }
      .article .article_bg .article_cont h5 {
        font-size: 20px;
        letter-spacing: 0.1em;
        line-height: 1.5em;
        font-weight: bold;
        padding-left: 30px;
        box-sizing: border-box;
        margin-bottom: 20px;
        position: relative; }
        .article .article_bg .article_cont h5::before {
          position: absolute;
          content: "";
          width: 19px;
          height: 16px;
          left: 0;
          top: 8px;
          background: url("../img/icon_check.png") no-repeat left center;
          background-size: contain; }
      .article .article_bg .article_cont h6 {
        font-size: 17px;
        letter-spacing: 0.1em;
        line-height: 1.5em;
        font-weight: bold;
        box-sizing: border-box;
        padding: 6px 20px;
        background: rgba(51, 51, 51, 0.14);
        margin-bottom: 20px; }
  .article .article_btn {
    width: 327px;
    margin: 115px auto 0; }
    .article .article_btn a {
      display: block;
      width: 100%;
      font-size: 19px;
      letter-spacing: 0.1em;
      line-height: 1;
      font-weight: bold;
      color: #fff;
      text-align: center;
      padding: 25px 0 24px;
      border-radius: 100px;
      border: solid 1px #1d9902;
      background: #1d9902;
      transition: 0.3s; }
      .article .article_btn a:hover {
        color: #1d9902;
        background: #fff; }

  /*個人情報の取り扱いについて*/
  #privacy .under_mv_right {
    background-image: url("../img/privacy_mv.png"); }
  #privacy .under_body {
    padding: 135px 0 140px; }
    #privacy .under_body .inner {
      width: 85%;
      max-width: 1100px;
      margin: 0 auto; }
  #privacy h3 {
    font-size: 36px;
    letter-spacing: 0.1em;
    line-height: 1;
    font-weight: bold;
    color: #333333;
    text-align: center;
    margin-bottom: 50px; }
  #privacy .privacy_txt {
    font-size: 22px;
    letter-spacing: 0.05em;
    line-height: 1.81em;
    color: #333333; }
    #privacy .privacy_txt span {
      display: inline-block;
      font-size: 24px;
      line-height: 1.66em; }

  /*リンク集*/
  #link .under_mv_right {
    background-image: url("../img/link_mv.png"); }
  #link .under_body {
    padding: 100px 0 115px; }
    #link .under_body .inner {
      width: 90%;
      max-width: 1495px;
      margin: 0 auto; }
  #link .link_boxes .link_box {
    width: 100%;
    min-height: 183px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
    padding: 30px 13% 30px 4.34%;
    border-radius: 15px;
    background: url("../img/link_box_arrow.png") no-repeat right 3.41% center #fff;
    background-size: 5.886%;
    transition: 0.3s; }
    #link .link_boxes .link_box:nth-child(n+2) {
      margin-top: 55px; }
    #link .link_boxes .link_box:hover {
      opacity: 0.8; }
    #link .link_boxes .link_box .link_box_ttl {
      width: 395px;
      font-size: 36px;
      letter-spacing: 0.05em;
      line-height: 1.33em;
      font-weight: bold;
      color: #1d9902;
      margin-right: 80px;
      margin-right: 6.47%; }
    #link .link_boxes .link_box .link_box_txt {
      flex: 1;
      font-size: 21px;
      letter-spacing: 0.05em;
      line-height: 1.47em;
      color: #333333; }

  /*お問い合わせ（共通）*/
  .contact {
    background: rgba(232, 237, 233, 0.41); }
    .contact .under_mv_right {
      background-image: url("../img/contact_mv.png"); }
    .contact .under_body {
      padding: 135px 0 210px; }
      .contact .under_body .inner {
        width: 85%;
        max-width: 1100px;
        margin: 0 auto; }
    .contact .contact_btn {
      display: flex;
      justify-content: center; }
      .contact .contact_btn input {
        width: 327px;
        height: 72px;
        box-sizing: border-box;
        font-size: 19px;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        padding: 26px 0 25px;
        border-radius: 35px;
        cursor: pointer;
        transition: 0.3s; }
        .contact .contact_btn input.submit {
          color: #fff;
          border: solid 1px #1d9902;
          background: #1d9902; }
          .contact .contact_btn input.submit:hover {
            color: #1d9902;
            background: #fff; }

  /*お問い合わせ*/
  #contact {
    color: #333333; }
    #contact .contact_txt {
      font-size: 25px;
      letter-spacing: 0.05em;
      line-height: 1.64em;
      font-weight: bold;
      text-align: center; }
    #contact .contact_head {
      width: 95.909%;
      margin: 80px auto 100px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative; }
      #contact .contact_head::before {
        position: absolute;
        content: "";
        width: 87.4%;
        height: 2px;
        top: 28px;
        left: 50%;
        transform: translateX(-50%);
        background: #333333; }
      #contact .contact_head .contact_head_box .circle {
        width: 58px;
        height: 58px;
        margin: 0 auto;
        border-radius: 100%;
        background: #333333;
        position: relative; }
        #contact .contact_head .contact_head_box .circle.active {
          background: #1d9902; }
          #contact .contact_head .contact_head_box .circle.active::before {
            position: absolute;
            content: "";
            width: 85px;
            height: 85px;
            top: 50%;
            left: 50%;
            transform: translateX(-50%) translateY(-50%);
            border: solid 3px #1d9902;
            box-sizing: border-box;
            border-radius: 100%; }
      #contact .contact_head .contact_head_box .list {
        font-size: 31px;
        letter-spacing: 0.1em;
        margin-top: 33px; }
        #contact .contact_head .contact_head_box .list.active {
          font-weight: bold;
          color: #1d9902; }
    #contact .contact_form table {
      width: 100%;
      margin-bottom: 35px; }
      #contact .contact_form table tr th {
        display: block;
        width: 100%;
        font-size: 20px;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #333333;
        text-align: left; }
        #contact .contact_form table tr th.nini div:before {
          display: none; }
        #contact .contact_form table tr th div {
          display: inline-block;
          padding-right: 55px;
          position: relative; }
          #contact .contact_form table tr th div::before {
            position: absolute;
            content: "必須";
            width: 38px;
            height: 18px;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            font-size: 12px;
            letter-spacing: 0.1em;
            line-height: 18px;
            font-weight: bold;
            color: #fff;
            text-align: center;
            background: #f80000; }
      #contact .contact_form table tr td {
        display: block;
        width: 100%;
        padding: 10px 0 45px; }
        #contact .contact_form table tr td input {
          width: 100%;
          height: 65px;
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 1;
          box-sizing: border-box;
          padding: 0 27px;
          border: solid 1px #333333;
          border-radius: 5px;
          background: #fff;
          font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
          #contact .contact_form table tr td input::placeholder {
            color: #b3b3b3; }
          #contact .contact_form table tr td input.p-postal-code {
            width: auto; }
        #contact .contact_form table tr td textarea {
          width: 100%;
          height: 320px;
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 1;
          box-sizing: border-box;
          padding: 25px 27px;
          border: solid 1px #333333;
          border-radius: 5px;
          background: #fff;
          font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
          #contact .contact_form table tr td textarea::placeholder {
            color: #b3b3b3; }
      #contact .contact_form table tr:last-child td {
        padding-bottom: 0; }
    #contact .contact_form .privacy_txt {
      width: 97.363%;
      margin: 0 auto;
      font-size: 18px;
      letter-spacing: 0.05em;
      line-height: 1.55em; }
      #contact .contact_form .privacy_txt a {
        color: #ff0000;
        text-decoration: underline; }
    #contact .contact_form .privacy_check {
      width: 100%;
      text-align: center;
      padding: 23px 0;
      border-radius: 5px;
      border: solid 1px #333333;
      background: #fff;
      margin: 20px 0 130px; }
      #contact .contact_form .privacy_check label {
        display: inline-block;
        font-size: 20px;
        letter-spacing: 0.05em;
        cursor: pointer; }
        #contact .contact_form .privacy_check label input {
          width: 15px;
          height: 15px;
          margin-right: 1em; }

  /*会社概要*/
  #company {
    color: #333333; }
    #company .under_mv_right {
      background-image: url("../img/company_mv.png"); }
    #company .under_body .inner {
      width: 90%;
      max-width: 1380px;
      margin: 0 auto; }
      #company .under_body .inner h3 {
        font-size: 36px;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #1d9902;
        padding-bottom: 44px;
        border-bottom: solid 2px #1d9902; }
    #company .message {
      padding: 140px 0 185px; }
      #company .message .message_cont .message_cont_left {
        padding-top: 29px; }
        #company .message .message_cont .message_cont_left .message_txt {
          text-align: center;
          font-size: 18px;
          letter-spacing: 0.05em;
          line-height: 2.05em;
          margin: 45px 0; }
        #company .message .message_cont .message_cont_left .name {
          text-align: center;
          font-size: 27px;
          letter-spacing: 0.05em;
          line-height: 1.1em; }
          #company .message .message_cont .message_cont_left .name span {
            font-size: 18px; }
      #company .message .message_cont .message_img {
        width: 43.26%; }
    #company .overview {
      padding: 140px 0 195px;
      background: rgba(232, 237, 233, 0.41); }
      #company .overview h3 {
        text-align: right;
        margin-bottom: 69px; }
      #company .overview .overview_cont {
        display: flex;
        justify-content: space-between;
        flex-direction: row-reverse; }
        #company .overview .overview_cont .overview_cont_right {
          width: 53.9855%; }
          #company .overview .overview_cont .overview_cont_right table {
            width: 100%;
            box-sizing: border-box;
            border-collapse: collapse;
            border: solid 2px #1d9902; }
            #company .overview .overview_cont .overview_cont_right table tr th {
              width: 157px;
              font-size: 21px;
              letter-spacing: 0.1em;
              line-height: 1.1428em;
              font-weight: bold;
              box-sizing: border-box;
              padding: 23px 0 22px;
              vertical-align: middle;
              border: solid 1px #1d9902;
              background: rgba(29, 153, 2, 0.2); }
            #company .overview .overview_cont .overview_cont_right table tr td {
              width: calc( 100% - 157px );
              font-size: 20px;
              letter-spacing: 0.1em;
              line-height: 1.2em;
              font-weight: bold;
              box-sizing: border-box;
              padding: 18px 10px 18px 30px;
              vertical-align: middle;
              border: solid 1px #1d9902;
              background: #fff; }
              #company .overview .overview_cont .overview_cont_right table tr td dl {
                padding: 7px 0; }
                #company .overview .overview_cont .overview_cont_right table tr td dl dd {
                  font-size: 16px;
                  line-height: 1.4em;
                  font-weight: 400;
                  margin-bottom: 12px; }
                  #company .overview .overview_cont .overview_cont_right table tr td dl dd:last-child {
                    margin-bottom: 0; }
              #company .overview .overview_cont .overview_cont_right table tr td .map {
                font-size: 15px;
                padding-left: 21px;
                background: url("../img/icon_map.webp") no-repeat center left;
                display: inline-block;
                margin-top: 5px;
                background-size: 16px; }
                #company .overview .overview_cont .overview_cont_right table tr td .map a {
                  text-decoration: underline;
                  color: #4796d2; }
        #company .overview .overview_cont .overview_map {
          width: 40.07%;
          position: relative; }
          #company .overview .overview_cont .overview_map iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0; }

  /*保険制度*/
  #hoken {
    background: rgba(232, 237, 233, 0.41);
    color: #333333; }
    #hoken .under_mv_right {
      background-image: url("../img/hoken_mv.png"); }
    #hoken .under_body {
      padding: 115px 0; }
      #hoken .under_body .inner {
        width: 85%;
        max-width: 1115px;
        margin: 0 auto; }
    #hoken .hoken_txt {
      font-size: 25px;
      letter-spacing: 0.05em;
      line-height: 1.64em;
      font-weight: bold;
      text-align: center;
      margin-bottom: 75px; }
    #hoken .hoken_boxes {
      max-width: 1100px;
      margin: 0 auto; }
      #hoken .hoken_boxes .hoken_box {
        filter: drop-shadow(0 0 6px rgba(0, 128, 0, 0.2)); }
        #hoken .hoken_boxes .hoken_box:nth-child(n+2) {
          margin-top: 78px; }
          #hoken .hoken_boxes .hoken_box:nth-child(n+2) .hoken_box_ttl {
            position: relative;
            bottom: -15px; }
        #hoken .hoken_boxes .hoken_box .hoken_box_bg {
          width: 572px;
          margin: 0 auto;
          min-height: 106px;
          text-align: center;
          display: flex;
          justify-content: flex-end;
          flex-direction: column;
          background: url("../img/hoken_box_bg.png") no-repeat center top;
          background-size: 100% 100%; }
          #hoken .hoken_boxes .hoken_box .hoken_box_bg .hoken_box_ttl {
            font-size: 36px;
            letter-spacing: 0.1em;
            line-height: 1.08em;
            font-weight: bold;
            color: #1d9902; }
            #hoken .hoken_boxes .hoken_box .hoken_box_bg .hoken_box_ttl span {
              display: inline-block;
              font-size: 30px; }
        #hoken .hoken_boxes .hoken_box .hoken_box_txt {
          font-size: 22px;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          text-align: center;
          padding: 40px 20px 35px;
          border-radius: 15px;
          background: #fff; }

  /*全国ネットワーク*/
  #network {
    background: rgba(232, 237, 233, 0.41); }
    #network .under_mv_right {
      background-image: url("../img/network_mv.png"); }
    #network .under_body {
      padding: 40px 0 330px; }
      #network .under_body .inner {
        width: 95%;
        max-width: 1268px;
        margin: 0 auto; }
        #network .under_body .inner .network_head_img {
          width: 578px;
          margin: 0 auto 45px; }
        #network .under_body .inner .network_link {
          display: flex;
          justify-content: space-between;
          margin-bottom: 50px; }
          #network .under_body .inner .network_link .link {
            width: 10.96%;
            position: relative; }
            #network .under_body .inner .network_link .link::before {
              content: "";
              display: block;
              padding-top: 100%; }
            #network .under_body .inner .network_link .link a {
              width: 100%;
              height: 100%;
              position: absolute;
              top: 0;
              left: 0;
              display: flex;
              justify-content: center;
              align-items: center;
              font-size: 21px;
              letter-spacing: 0.1em;
              line-height: 1.25em;
              font-weight: bold;
              color: #1d9902;
              text-align: center;
              box-sizing: border-box;
              border: solid 1px #1d9902;
              border-radius: 100%;
              background: #fff;
              transition: 0.3s; }
              #network .under_body .inner .network_link .link a:hover {
                color: #fff;
                background: #1d9902; }
        #network .under_body .inner .network_cont {
          max-width: 1240px;
          margin: 0 auto 70px;
          padding-top: 125px;
          margin-top: -125px; }
          #network .under_body .inner .network_cont:last-child {
            margin-bottom: 0; }
          #network .under_body .inner .network_cont h3 {
            font-size: 36px;
            line-height: 1;
            font-weight: bold;
            color: #1d9902;
            text-align: center;
            margin-bottom: 25px; }
          #network .under_body .inner .network_cont .network_table {
            width: 100%; }
            #network .under_body .inner .network_cont .network_table table {
              width: 100%;
              border-collapse: collapse; }
              #network .under_body .inner .network_cont .network_table table tr th {
                font-size: 20px;
                line-height: 1.5em;
                font-weight: bold;
                color: #fff;
                text-align: center;
                vertical-align: middle;
                padding: 15px 0;
                box-sizing: border-box;
                border: solid 2px #1d9902;
                background: rgba(29, 153, 2, 0.8); }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(1) {
                  width: 15%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(2) {
                  width: 28%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(3) {
                  width: 29.5%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(4) {
                  width: 19%; }
              #network .under_body .inner .network_cont .network_table table tr td {
                font-size: 18px;
                line-height: 1.27em;
                color: #333;
                padding: 12px 0;
                text-align: center;
                vertical-align: middle;
                box-sizing: border-box;
                border: solid 2px #1d9902;
                background: #fff; }
                #network .under_body .inner .network_cont .network_table table tr td a {
                  color: #1d9902;
                  text-decoration: underline; }
                #network .under_body .inner .network_cont .network_table table tr td.address {
                  text-align: left;
                  padding-left: 28px;
                  padding-right: 1em; }

  /*コダマの防湿マット*/
  #bositsu {
    background: rgba(232, 237, 233, 0.41); }
    #bositsu .under_mv_right {
      background-image: url("../img/bositsu_mv.png");
      border: solid 1px #1d9902; }
    #bositsu .kawaii_head {
      text-align: center;
      max-width: 1100px;
      margin: 0 auto 95px; }
      #bositsu .kawaii_head .kawaii_head_img01 {
        width: 100%;
        max-width: 910px;
        margin: 0 auto 90px; }
      #bositsu .kawaii_head .kawaii_head_img02 {
        max-width: 685px;
        width: 100%;
        margin: 0 auto 55px; }
      #bositsu .kawaii_head .kawaii_head_txt {
        font-size: 22px;
        line-height: 1.5em; }
      #bositsu .kawaii_head .kawaii_head_ttl {
        font-size: 25px;
        line-height: 1.7em;
        margin-bottom: 75px;
        font-weight: 700; }
        #bositsu .kawaii_head .kawaii_head_ttl a {
          text-decoration: underline;
          color: #333333; }
    #bositsu .under_body {
      padding: 130px 0 290px; }
      #bositsu .under_body .inner {
        width: 95%;
        max-width: 1380px;
        margin: 0 auto; }
        #bositsu .under_body .inner .bositsu_head {
          text-align: center;
          margin-bottom: 90px; }
          #bositsu .under_body .inner .bositsu_head .bositsu_head_txt {
            font-size: 25px;
            letter-spacing: 0.1em;
            line-height: 1.64em;
            font-weight: bold; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_txt .line {
              text-decoration: underline; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_txt.btm {
              font-size: 22px;
              line-height: 1.54em;
              font-weight: 400; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_txt.btm .bold {
                font-weight: bold; }
          #bositsu .under_body .inner .bositsu_head .bositsu_head_box {
            margin: 55px 0 75px; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt {
              font-size: 43px;
              line-height: 1.8em;
              letter-spacing: 0.1em;
              font-weight: bold; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt:last-child {
                line-height: 1.5em; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span {
                display: inline-block; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.small {
                  font-size: 37px; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.middle {
                  font-size: 60px;
                  margin: 0 0.5em; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.bg {
                  line-height: 1;
                  box-sizing: border-box;
                  /*border: solid 3px #000;*/
                  background: #fff;
                  position: relative; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.bg::after {
                    position: absolute;
                    content: "";
                    width: 100%;
                    height: 100%;
                    left: 0;
                    top: 0;
                    border: solid 3px #000; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.circle {
                  width: 222px;
                  font-size: 74px;
                  padding: 9px 0; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.circle::before {
                    position: absolute;
                    content: "";
                    width: 264px;
                    height: 135px;
                    left: -19px;
                    top: -12px;
                    background: url("../img/bositsu_head_txt_circle.png") no-repeat;
                    background-size: contain; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.line {
                  width: 404px;
                  font-size: 54px;
                  padding: 11px 0;
                  margin-right: 15px; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.line::before {
                    position: absolute;
                    content: "";
                    width: 444px;
                    height: 15px;
                    left: -15px;
                    bottom: -5px;
                    background: url("../img/bositsu_head_txt_line.png") no-repeat;
                    background-size: contain; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_arrow {
              width: 175px;
              margin: 45px auto 35px; }
        #bositsu .under_body .inner .bositsu_cont .bositsu_box {
          border-radius: 45px;
          background: #fff;
          overflow: hidden; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box:nth-child(n+2) {
            margin-top: 110px; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box01 {
            padding-bottom: 105px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box.box01 .bositsu_box_txt {
              margin-top: 55px; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box02 {
            padding-bottom: 65px; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box03 {
            padding-bottom: 65px; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box04 {
            padding-bottom: 110px; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box h3 {
            font-size: 36px;
            letter-spacing: 0.1em;
            font-weight: bold;
            color: #fff;
            text-align: center;
            padding: 40px 0;
            background: #1a944b; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box dl {
            width: 85%;
            max-width: 1100px;
            margin: 0 auto;
            position: relative; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl:first-of-type {
              margin-top: 65px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl:nth-of-type(2) {
              margin-top: 35px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl dt {
              width: 54px;
              height: 54px;
              font-size: 26px;
              line-height: 54px;
              color: #1a944b;
              text-align: center;
              border: solid 1px #1a944b;
              border-radius: 100%;
              position: absolute;
              left: -65px;
              top: 50%;
              transform: translateY(-50%); }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl dd {
              font-size: 26px;
              letter-spacing: 0.1em;
              line-height: 1.73em;
              color: #1a944b; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt {
            width: 85%;
            max-width: 1100px;
            margin: 0 auto;
            font-size: 22px;
            letter-spacing: 0.1em;
            line-height: 1.5em; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt .big {
              display: inline-block;
              font-size: 26px;
              letter-spacing: 0.1em;
              line-height: 1.73em; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt .line {
              text-decoration: underline; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img {
            width: 85%;
            margin: 0 auto; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img01 {
              max-width: 802px;
              margin-top: 65px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img02 {
              max-width: 873px;
              margin-top: 35px;
              margin-bottom: 45px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img03 {
              max-width: 856px;
              margin-top: 55px;
              margin-bottom: 70px; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img04 {
              max-width: 1100px;
              margin-top: 80px; }

  /*コダマの白蟻防除剤*/
  #boujyo {
    background: rgba(232, 237, 233, 0.41); }
    #boujyo .under_mv_right {
      background-image: url("../img/boujyo_mv.png"); }
    #boujyo .under_body {
      padding: 95px 0 350px; }
      #boujyo .under_body .inner {
        width: 95%;
        max-width: 1240px;
        margin: 0 auto; }
        #boujyo .under_body .inner .boujyo_head {
          max-width: 1100px;
          margin: 0 auto 90px; }
          #boujyo .under_body .inner .boujyo_head .boujyo_head_box {
            filter: drop-shadow(0 0 6px rgba(0, 128, 0, 0.2)); }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box:nth-child(n+2) {
              margin-top: 50px; }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_bg {
              width: 572px;
              margin: 0 auto;
              min-height: 106px;
              text-align: center;
              display: flex;
              justify-content: flex-end;
              flex-direction: column;
              background: url("../img/hoken_box_bg.png") no-repeat center top;
              background-size: 100% 100%; }
              #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_bg .boujyo_head_box_ttl {
                font-size: 36px;
                letter-spacing: 0.05em;
                line-height: 1.08em;
                font-weight: bold;
                color: #1d9902; }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_txt {
              font-size: 22px;
              letter-spacing: 0.1em;
              line-height: 1.5em;
              text-align: center;
              padding: 45px 52px;
              border-radius: 15px;
              background: #fff; }
        #boujyo .under_body .inner .boujyo_btn {
          width: 878px;
          max-width: 100%;
          margin: 0 auto 195px; }
          #boujyo .under_body .inner .boujyo_btn a {
            display: block;
            width: 100%;
            font-size: 26px;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            color: #fff;
            text-align: center;
            box-sizing: border-box;
            padding: 42px 0;
            border: solid 1px #1d9902;
            border-radius: 55px;
            background: #1d9902;
            transition: 0.3s; }
            #boujyo .under_body .inner .boujyo_btn a:hover {
              color: #1d9902;
              background: #fff; }
        #boujyo .under_body .inner .boujyo_boxes {
          width: 100%; }
          #boujyo .under_body .inner .boujyo_boxes .boujyo_box:nth-child(n+2) {
            margin-top: 100px; }
          #boujyo .under_body .inner .boujyo_boxes .boujyo_box .boujyo_box_ttl {
            font-size: 33px;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            color: #1d9902;
            margin-bottom: 25px; }
          #boujyo .under_body .inner .boujyo_boxes table {
            width: 100%;
            border-collapse: collapse; }
            #boujyo .under_body .inner .boujyo_boxes table tr th {
              font-size: 22px;
              letter-spacing: 0.1em;
              line-height: 1.5em;
              color: #fff;
              box-sizing: border-box;
              padding: 9px 0;
              vertical-align: middle;
              border: solid 2px #000;
              background: rgba(51, 51, 51, 0.8); }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(1) {
                width: 75px;
                width: 6.04%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(2) {
                width: 75px;
                width: 6.04%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(3) {
                width: 230px;
                width: 18.55%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(4) {
                width: 280px;
                width: 22.58%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(5) {
                width: 170px;
                width: 13.71%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(6) {
                width: 180px;
                width: 14.51%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(7) {
                width: 150px;
                width: 12.1%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(8) {
                width: 80px;
                width: 6.45%; }
            #boujyo .under_body .inner .boujyo_boxes table tr td {
              font-size: 20px;
              letter-spacing: 0.05em;
              line-height: 1.25em;
              color: #333;
              vertical-align: middle;
              box-sizing: border-box;
              padding: 15px 0.5em;
              border: solid 2px #000;
              background: #fff; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.bold {
                font-size: 26px;
                font-weight: 500;
                text-align: center; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.center {
                text-align: center;
                padding: 15px 0; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.right {
                text-align: right; }
              #boujyo .under_body .inner .boujyo_boxes table tr td .pdf {
                width: 60px;
                margin: 8px auto 0;
                text-align: center; }
                #boujyo .under_body .inner .boujyo_boxes table tr td .pdf a {
                  display: inline-block;
                  width: 50px; }
        #boujyo .under_body .inner .boujyo_btm_txt {
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 1.75em;
          color: #333;
          text-align: right;
          margin-top: 45px; }

  /*沿革*/
  #history {
    background: rgba(232, 237, 233, 0.41); }
    #history .under_mv_right {
      background-image: url("../img/enkaku_mv.png"); }
    #history .under_body {
      padding: 140px 0 115px; }
      #history .under_body .inner {
        width: 100%; }
        #history .under_body .inner .history_head {
          width: 95%;
          max-width: 1380px;
          margin: 0 auto 100px;
          position: relative; }
          #history .under_body .inner .history_head .history_head_box {
            width: 26.0869%;
            height: 75px;
            font-size: 25px;
            letter-spacing: 0.1em;
            line-height: 1.25em;
            font-weight: bold;
            color: #fff;
            text-align: center;
            display: flex;
            justify-content: center;
            align-content: center;
            flex-direction: column;
            box-sizing: border-box;
            padding: 0 1em;
            background: url("../img/his_arr_01o.webp") no-repeat center;
            background-size: 100% 100%;
            position: relative; }
            #history .under_body .inner .history_head .history_head_box a {
              display: block;
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              z-index: 2; }
            #history .under_body .inner .history_head .history_head_box:hover {
              background-image: url("../img/history_head_box_bg_01.png"); }
            #history .under_body .inner .history_head .history_head_box:nth-child(n+2) {
              position: absolute;
              top: 0;
              background: url("../img/history_head_box_bg_02.png") no-repeat center;
              background-size: 100% 100%; }
              #history .under_body .inner .history_head .history_head_box:nth-child(n+2):hover {
                background-image: url("../img/his_arr_02o.webp"); }
            #history .under_body .inner .history_head .history_head_box:nth-child(2) {
              left: 24.63%; }
            #history .under_body .inner .history_head .history_head_box:nth-child(3) {
              left: 49.42%; }
            #history .under_body .inner .history_head .history_head_box:nth-child(4) {
              left: 74.13%; }
        #history .under_body .inner .history_body .history_cont h3 {
          font-size: 34px;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          text-align: center;
          color: #fff;
          padding: 33px 0;
          background: #1d9902; }
        #history .under_body .inner .history_body .history_cont .history_boxes {
          width: 95%;
          max-width: 1455px;
          margin: 0 auto;
          padding: 58px 0 125px;
          position: relative; }
          #history .under_body .inner .history_body .history_cont .history_boxes::before {
            position: absolute;
            content: "";
            width: 8px;
            height: 100%;
            top: 0;
            left: 298px;
            background: #1d9902; }
          #history .under_body .inner .history_body .history_cont .history_boxes .history_box {
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: flex-start; }
            #history .under_body .inner .history_body .history_cont .history_boxes .history_box:nth-child(n+2) {
              margin-top: 55px; }
            #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left {
              width: 330px;
              padding-top: 40px;
              margin-right: 35px;
              text-align: right;
              position: relative;
              display: flex;
              justify-content: space-between;
              align-items: center;
              /*&::before {
              	position: absolute;
              	content: "";
              	width: 55px;
              	height: 55px;
              	right: -77px;
              	top: 53px;
              	border-radius: 100%;
              	background: #1d9902;
              }*/ }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left .year {
                width: 250px;
                font-size: 28px;
                letter-spacing: 0em;
                line-height: 1.53em;
                font-weight: bold;
                color: #1d9902; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left .circle {
                width: 55px;
                height: 55px;
                border-radius: 100%;
                background: #1d9902; }
            #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right {
              width: calc( 100% - 365px );
              box-sizing: border-box;
              padding: 50px 75px;
              border-radius: 45px;
              background: #fff;
              position: relative; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt.history_box_txt07 {
                padding-right: 46%; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt h4 {
                font-size: 23px;
                letter-spacing: 0.1em;
                line-height: 1.87em;
                font-weight: bold;
                color: #1d9902; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt p {
                font-size: 18px;
                letter-spacing: 0.05em;
                line-height: 1.83em;
                color: #333; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt p.txt01 {
                  width: 78.19%; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt p.txt02 {
                  width: 63.51%; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt {
                display: flex;
                justify-content: space-between;
                margin-top: 20px; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_left {
                  font-size: 18px;
                  letter-spacing: 0.05em;
                  line-height: 1.83em;
                  color: #333;
                  width: 62%; }
                  #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_left.long {
                    width: 100%; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_right {
                  width: 35%; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img01 {
                width: 15.04%;
                position: absolute;
                top: 50%;
                right: 75px;
                transform: translateY(-50%); }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img02 {
                float: right;
                width: 36.38%;
                margin-left: 30px;
                margin-bottom: 20px; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img03 {
                float: right;
                width: 34.04%;
                margin-left: 30px;
                position: relative;
                top: -10px; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img04 {
                float: right;
                width: 29.25%;
                margin-left: 30px; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img05 {
                float: right;
                width: 45.1%;
                margin-left: 30px; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img06 {
                width: 28.165%;
                position: absolute;
                top: 50%;
                right: 75px;
                transform: translateY(-50%); }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img07 {
                width: 32.11%;
                position: absolute;
                top: 50%;
                right: 75px;
                transform: translateY(-50%); }
        #history .under_body .inner .history_body .history_cont:last-child .history_boxes {
          padding: 100px 0 195px; }
          #history .under_body .inner .history_body .history_cont:last-child .history_boxes::before {
            position: absolute;
            content: "";
            width: 8px;
            height: 340px;
            top: 0;
            left: 298px;
            background: #1d9902; }
          #history .under_body .inner .history_body .history_cont:last-child .history_boxes::after {
            position: absolute;
            content: "";
            width: 8px;
            height: 77px;
            bottom: 0;
            left: 298px;
            background-image: linear-gradient(to bottom, #1d9902 0, #1d9902 8px, transparent 8px, transparent 22px);
            /* 1サイクルのサイズを指定 */
            background-size: 8px 22px;
            background-repeat: repeat-y; }

  /*お試しcss*/
  .test .name {
    font-size: 16rem;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10rem;
    margin-bottom: 10px; }

  .test table {
    width: 650rem;
    width: 650px;
    margin: 100rem auto;
    margin: 100px auto;
    border-collapse: collapse; }
    .test table tr th {
      font-size: 16rem;
      font-size: 16px;
      line-height: 1.5em;
      font-weight: bold;
      box-sizing: border-box;
      border: solid 1rem #000;
      border: solid 1px #000;
      padding: 0.2em 0; }
      .test table tr th:nth-child(1) {
        width: 2.5em; }
      .test table tr th:nth-child(2) {
        width: 3.5em; }
      .test table tr th:nth-child(3) {
        width: calc(100% - 34em); }
      .test table tr th:nth-child(4) {
        width: 8.5em; }
      .test table tr th:nth-child(5) {
        width: 6em; }
      .test table tr th:nth-child(6) {
        width: 6em; }
      .test table tr th:nth-child(7) {
        width: 4.5em; }
      .test table tr th:nth-child(8) {
        width: 3em; }
    .test table tr td {
      font-size: 13rem;
      font-size: 13px;
      line-height: 1.5em;
      box-sizing: border-box;
      border: solid 1rem #000;
      border: solid 1px #000;
      vertical-align: middle;
      padding: 1em 0.5em; }
      .test table tr td.bold {
        font-size: 16rem;
        font-size: 16px;
        font-weight: bold;
        text-align: center; }
      .test table tr td.center {
        text-align: center; }
      .test table tr td.right {
        text-align: right;
        padding-left: 1em; } }
/* SP */
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 750); }

  header {
    width: 100%;
    background: #fff;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100; }
    header .inner {
      width: 100%;
      margin: 0 auto;
      padding: 40rem 0 40rem 30rem; }
      header .inner .logo {
        width: 350rem; }
        header .inner .logo a {
          display: block;
          width: 100%; }

  /*ハンバーガー メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    top: 0;
    right: -100vw;
    /*bottom: 0;*/
    width: 100vw;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: all .5s;
    z-index: 19;
    opacity: 1;
    background: #F8F8F8; }

  .open nav.hum {
    right: 0;
    opacity: 1; }

  nav.hum .hum_inner {
    width: 90%;
    margin: 0 auto;
    padding: 215rem 0 190rem;
    overflow-y: scroll;
    box-sizing: border-box;
    height: 100dvh; }
    nav.hum .hum_inner .acd input {
      display: none; }
    nav.hum .hum_inner .acd input:checked + .acd_ttl:after {
      transition: 0.3s;
      opacity: 0; }
    nav.hum .hum_inner .acd input:checked + .acd_ttl + .acd_inner {
      height: auto;
      visibility: visible;
      opacity: 1;
      transition: 0.3s; }
    nav.hum .hum_inner .acd .acd_ttl {
      font-size: 30rem;
      font-weight: 700;
      color: #1d9902;
      display: block;
      width: 100%;
      line-height: 1.4em;
      padding: 25rem 0;
      border-bottom: solid 1px #1d9902;
      position: relative; }
      nav.hum .hum_inner .acd .acd_ttl a {
        display: block; }
      nav.hum .hum_inner .acd .acd_ttl:before {
        background: #1d9902;
        content: "";
        width: 10px;
        height: 2px;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%); }
      nav.hum .hum_inner .acd .acd_ttl:after {
        background: #1d9902;
        content: "";
        height: 10px;
        width: 2px;
        position: absolute;
        right: 4px;
        top: 50%;
        transform: translateY(-50%);
        transition: 0.3s; }
    nav.hum .hum_inner .acd .acd_inner {
      box-sizing: border-box;
      padding-left: 30rem;
      height: 0;
      visibility: hidden;
      opacity: 0; }
      nav.hum .hum_inner .acd .acd_inner li {
        font-weight: 700;
        font-size: 30rem;
        border-bottom: solid 1px #72B76F;
        padding: 25rem 0; }
        nav.hum .hum_inner .acd .acd_inner li a {
          color: #1d9902;
          display: block; }
    nav.hum .hum_inner .hum_menu {
      font-weight: 700;
      font-size: 30rem;
      border-bottom: solid 1px #72B76F;
      padding: 25rem 0; }
      nav.hum .hum_inner .hum_menu a {
        color: #1d9902;
        display: block; }
    nav.hum .hum_inner .hum_menumini {
      font-weight: 700;
      font-size: 20rem; }
      nav.hum .hum_inner .hum_menumini a {
        color: #000;
        display: block; }
    nav.hum .hum_inner .hum_contact {
      margin-top: 20rem;
      margin-bottom: 20rem; }
      nav.hum .hum_inner .hum_contact a {
        background: #1d9902;
        color: #fff;
        border-radius: 20rem;
        padding: 50rem 40rem 60rem;
        box-sizing: border-box;
        display: block;
        font-size: 60rem;
        font-weight: 700;
        position: relative; }
        nav.hum .hum_inner .hum_contact a span {
          margin-top: 15rem;
          display: block;
          font-size: 26rem; }
        nav.hum .hum_inner .hum_contact a:after {
          content: "→";
          color: #1d9902;
          width: 55rem;
          height: 55rem;
          display: flex;
          font-size: 30rem;
          position: absolute;
          text-align: justify;
          align-items: center;
          justify-content: center;
          right: 30rem;
          top: 50%;
          transform: translateY(-50%);
          border-radius: 100px;
          -webkit-border-radius: 100px;
          -moz-border-radius: 100px;
          background: #fff; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    top: 20rem;
    right: 20rem;
    width: 88rem;
    height: 88rem;
    transition: all .5s;
    cursor: pointer;
    background: #1d9902;
    border-radius: 100%;
    z-index: 23; }

  .toggle_btn span {
    display: block;
    position: absolute;
    left: 24rem;
    width: 40rem;
    height: 5rem;
    background-color: #fff;
    transition: all .5s; }

  .toggle_btn span:nth-child(1) {
    top: 28rem; }

  .toggle_btn span:nth-child(2) {
    top: 42rem; }

  .toggle_btn span:nth-child(3) {
    top: 56rem; }

  .open .toggle_btn span:nth-child(1) {
    -webkit-transform: translateY(14rem) rotate(-315deg);
    transform: translateY(14rem) rotate(-315deg); }

  .open .toggle_btn span:nth-child(2) {
    opacity: 0; }

  .open .toggle_btn span:nth-child(3) {
    -webkit-transform: translateY(-14rem) rotate(315deg);
    transform: translateY(-14rem) rotate(315deg); }

  /*============
  #mask
  =============*/
  #mask {
    display: none;
    transition: all .5s; }

  .open #mask {
    display: block;
    transition: all .5s;
    position: absolute;
    top: 13.73vw;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 18; }

  #top_mv {
    width: 100%;
    margin-top: 126rem; }
    #top_mv .inner {
      width: 100%; }
      #top_mv .inner .top_mv_left {
        width: 100%;
        box-sizing: border-box;
        padding: 618rem 0 52rem 36rem;
        background: url("../img/top_mv_img_sp.webp") no-repeat center;
        background-size: cover;
        position: relative; }
        #top_mv .inner .top_mv_left h1 {
          font-size: 48rem;
          letter-spacing: 0.05em;
          line-height: 1.14em;
          font-weight: 500;
          color: #fff;
          font-feature-settings: "palt"; }
          #top_mv .inner .top_mv_left h1 span {
            display: inline-block;
            padding: 5px;
            background: repeating-linear-gradient(to right, #79b437, #1d9902); }
            #top_mv .inner .top_mv_left h1 span:nth-child(n+2) {
              margin-top: 7rem; }
      #top_mv .inner .top_mv_right {
        width: 49.47916%;
        border-radius: 30px 0 0 30px;
        overflow: hidden; }

  .top_sec_ttl {
    text-align: center; }
    .top_sec_ttl .en {
      font-size: 50rem;
      letter-spacing: 0.05em;
      line-height: 1.2em;
      font-weight: 400;
      color: #1d9902; }
    .top_sec_ttl .ja {
      font-size: 46rem;
      letter-spacing: 0.1em;
      line-height: 1.18em;
      font-weight: bold;
      color: #1d9902; }
      .top_sec_ttl .ja.white {
        color: #fff; }

  #top_news .inner {
    width: 675rem;
    margin: 0 auto;
    padding: 120rem 0 85rem; }
    #top_news .inner .top_news_boxes {
      margin: 25rem 0 60rem; }
      #top_news .inner .top_news_boxes .top_news_box {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap;
        padding: 30rem 0;
        color: #333333; }
        #top_news .inner .top_news_boxes .top_news_box:nth-child(2) {
          border-bottom: solid 1rem #808080;
          border-top: solid 1rem #808080; }
        #top_news .inner .top_news_boxes .top_news_box .date {
          width: 130rem;
          font-size: 16rem;
          line-height: 1.2em;
          margin-right: 35rem; }
        #top_news .inner .top_news_boxes .top_news_box .cat {
          width: 95rem;
          font-size: 16rem;
          text-align: center;
          padding: 6rem 0;
          border-radius: 100rem;
          border: solid 1rem #1d9902; }
        #top_news .inner .top_news_boxes .top_news_box .txt {
          width: 100%;
          margin-top: 20rem; }
          #top_news .inner .top_news_boxes .top_news_box .txt a {
            display: inline-block;
            font-size: 20rem;
            line-height: 1.25em;
            color: #333333; }
            #top_news .inner .top_news_boxes .top_news_box .txt a:hover {
              text-decoration: underline; }
    #top_news .inner .top_news_btn {
      width: 327rem;
      margin: 0 auto; }
      #top_news .inner .top_news_btn a {
        display: block;
        width: 100%;
        font-size: 22rem;
        letter-spacing: 0.05em;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
        padding: 25rem 0;
        border-radius: 100rem;
        background: #1d9902; }

  #top_network .bg {
    width: 100%;
    padding-top: 45rem;
    background: url("../img/top_network_bg.png") no-repeat;
    background-size: 100% auto; }
    #top_network .bg .top_network_head {
      font-size: 28rem;
      letter-spacing: 0.05em;
      line-height: 2em;
      color: #fff;
      text-align: center;
      margin-bottom: 40rem; }
    #top_network .bg .top_network_cont {
      padding: 110rem 0 0;
      background: url("../img/top_network_bg_02_sp.png") no-repeat center top;
      background-size: 932rem auto; }
      #top_network .bg .top_network_cont .top_network_txt {
        font-size: 22rem;
        letter-spacing: 0.05em;
        line-height: 1.4em;
        font-weight: 400;
        color: #1d9902;
        text-align: center;
        margin: 45rem 0 60rem; }
      #top_network .bg .top_network_cont .top_network_btn {
        width: 474rem;
        margin: 0 auto; }
        #top_network .bg .top_network_cont .top_network_btn a {
          display: block;
          width: 100%;
          font-size: 22rem;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          text-align: center;
          padding: 25rem 0;
          border-radius: 100rem;
          background: #1d9902; }

  #top_comp .inner {
    width: 95%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 130rem 0; }
    #top_comp .inner .top_sec_ttl .en {
      margin-bottom: 10rem; }
    #top_comp .inner .top_comp_boxes {
      margin-top: 75rem; }
      #top_comp .inner .top_comp_boxes .top_comp_box {
        width: 100%; }
        #top_comp .inner .top_comp_boxes .top_comp_box:nth-child(n+2) {
          margin-top: 100rem; }
        #top_comp .inner .top_comp_boxes .top_comp_box .top_comp_box_img {
          width: 340rem;
          margin: 0 auto; }
        #top_comp .inner .top_comp_boxes .top_comp_box h3 {
          font-size: 30rem;
          letter-spacing: 0.1em;
          line-height: 1.2em;
          font-weight: bold;
          color: #184e24;
          text-align: center;
          margin: 30rem 0; }
        #top_comp .inner .top_comp_boxes .top_comp_box .top_comp_box_txt {
          width: 495rem;
          margin: 0 auto;
          font-size: 25rem;
          letter-spacing: 0.05em;
          line-height: 2em;
          text-align: center;
          color: #333333; }

  #top_product {
    background: #e8ede9; }
    #top_product .inner {
      width: 675rem;
      margin: 0 auto;
      padding: 85rem 0 60rem; }
      #top_product .inner .top_sec_ttl .en {
        margin-bottom: 10rem; }
      #top_product .inner .top_product_cont {
        margin: 55rem 0 35rem; }
        #top_product .inner .top_product_cont .top_product_boxes {
          width: 100%;
          position: relative; }
          #top_product .inner .top_product_cont .top_product_boxes:first-child {
            margin-bottom: 42rem; }
          #top_product .inner .top_product_cont .top_product_boxes .top_product_box {
            box-sizing: border-box;
            padding: 60rem 45rem 40rem;
            border-radius: 30rem;
            background: #fff;
            position: relative;
            z-index: 2; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_img {
              text-align: center; }
              #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_img .short {
                width: 470rem;
                padding-bottom: 25rem; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box h3 {
              font-size: 32rem;
              letter-spacing: 0.1em;
              line-height: 1.2em;
              font-weight: bold;
              color: #184e24;
              margin: 35rem 0 30rem; }
            #top_product .inner .top_product_cont .top_product_boxes .top_product_box .top_product_box_txt {
              font-size: 26rem;
              letter-spacing: 0.05em;
              line-height: 1.9em;
              color: #333333; }
          #top_product .inner .top_product_cont .top_product_boxes .box_bg {
            display: none !important; }
      #top_product .inner .top_product_txt {
        font-size: 23rem;
        letter-spacing: 0.1em;
        line-height: 1.2em;
        font-weight: bold;
        color: #333333;
        text-align: center; }

  #top_zakki {
    background: url("../img/top_zakki_bg_sp.png") no-repeat center;
    background-size: cover; }
    #top_zakki .inner {
      width: 675rem;
      margin: 0 auto;
      padding: 65rem 0 123rem; }
      #top_zakki .inner .top_zakki_box {
        width: 100%;
        margin: 45rem 0 40rem;
        box-sizing: border-box;
        padding: 35rem 25rem 40rem;
        background: #fff; }
        #top_zakki .inner .top_zakki_box .top_zakki_box_img {
          width: 100%; }
        #top_zakki .inner .top_zakki_box .top_zakki_box_right {
          width: 100%;
          margin-top: 15rem;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          flex-wrap: wrap;
          color: #333; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .cat {
            display: inline-block;
            font-size: 16rem;
            letter-spacing: 0.1em;
            color: #1d9902;
            padding: 5rem 35rem;
            border-radius: 100px;
            border: solid 2rem #1d9902;
            margin-right: 15rem; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .date {
            font-size: 16px;
            letter-spacing: 0.05em;
            line-height: 1.5em; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .ttl {
            width: 100%;
            font-size: 30rem;
            letter-spacing: 0.05em;
            line-height: 1.2em;
            font-weight: bold;
            color: #184e24;
            margin: 25rem 0; }
          #top_zakki .inner .top_zakki_box .top_zakki_box_right .txt {
            font-size: 24rem;
            letter-spacing: 0.05em;
            line-height: 2em;
            text-decoration: underline;
            text-decoration-style: dashed;
            text-decoration-color: #1d9902;
            text-decoration-thickness: 1rem;
            text-underline-offset: 10rem; }
      #top_zakki .inner .top_zakki_btn {
        width: 327rem;
        margin: 0 auto; }
        #top_zakki .inner .top_zakki_btn a {
          display: block;
          width: 100%;
          font-size: 22rem;
          letter-spacing: 0.05em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          text-align: center;
          padding: 25rem 0;
          border-radius: 100rem;
          background: #fff; }

  .kodamakai {
    margin: -65rem 0 80rem; }
    .kodamakai .inner {
      width: 675rem;
      margin: 0 auto; }
      .kodamakai .inner .kodamakai_cont {
        position: relative;
        /*&::before {
        	position: absolute;
        	content: "";
        	width: 103.363%;
        	height: 110%;
        	position: absolute;
        	top: -10px;
        	left: -10px;
        	background: url("../img/kodamakai_bg.png")no-repeat center;
        	background-size: 100% 100%;
        }*/ }
        .kodamakai .inner .kodamakai_cont .kodamakai_box {
          width: 100%;
          /*実質1088px*/
          box-sizing: border-box;
          padding: 70rem 77rem 80rem;
          border: solid 4rem #184e24;
          border-radius: 30rem;
          background: #e8f5e6;
          position: relative;
          z-index: 2; }
          .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_logo {
            width: 100%;
            text-align: center;
            position: relative;
            padding-bottom: 57rem;
            border-bottom: solid 4rem #184e24;
            /*&::before {
            	position: absolute;
            	content: "";
            	width: 4px;
            	height: calc( 100% - 80px );
            	right: -2px;
            	top: 50%;
            	transform: translateY(-50%);
            	background: #184e24;
            }*/ }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_logo img {
              width: 252rem; }
          .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right {
            width: 100%;
            padding-top: 40rem; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_txt {
              margin: 0 auto;
              font-size: 27rem;
              letter-spacing: 0.1em;
              line-height: 2em;
              color: #184e24;
              padding: 0 5rem;
              margin-bottom: 80rem; }
            .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_btn {
              width: 327rem;
              margin: 0 auto; }
              .kodamakai .inner .kodamakai_cont .kodamakai_box .kodamakai_box_right .kodamakai_btn a {
                display: block;
                width: 327rem;
                max-width: 100%;
                font-size: 22rem;
                letter-spacing: 0.05em;
                line-height: 1;
                font-weight: bold;
                color: #fff;
                text-align: center;
                box-sizing: border-box;
                padding: 25rem 0;
                border-radius: 100rem;
                background: #184e24; }

  footer {
    padding-top: 10rem;
    border-top: solid 4rem #1d9902; }
    footer .footer_nav {
      width: 675rem;
      margin: 0 auto; }
      footer .footer_nav .footer_menu {
        padding-right: 1em;
        border-bottom: solid 2rem #1d9902; }
        footer .footer_nav .footer_menu:last-child {
          border: none; }
        footer .footer_nav .footer_menu .footer_menu_ttl {
          font-size: 34rem;
          letter-spacing: 0.05em;
          line-height: 1.2em;
          font-weight: bold;
          color: #1d9902;
          padding: 32rem 0;
          position: relative; }
          footer .footer_nav .footer_menu .footer_menu_ttl::before {
            position: absolute;
            content: "";
            width: 40rem;
            height: 40rem;
            right: 11rem;
            top: 50%;
            transform: translateY(-50%);
            background: url("../img/footer_arrow.png") no-repeat;
            background-size: contain; }
          footer .footer_nav .footer_menu .footer_menu_ttl.open::before {
            transform: translateY(-50%) rotate(180deg); }
          footer .footer_nav .footer_menu .footer_menu_ttl:nth-child(2) {
            border-top: solid 2rem #1d9902; }
          footer .footer_nav .footer_menu .footer_menu_ttl.link {
            padding: 0; }
            footer .footer_nav .footer_menu .footer_menu_ttl.link::before {
              display: none !important; }
          footer .footer_nav .footer_menu .footer_menu_ttl a {
            display: block;
            width: 100%;
            color: #1d9902;
            padding: 32rem 0; }
        footer .footer_nav .footer_menu ul {
          display: none;
          padding-bottom: 32rem; }
          footer .footer_nav .footer_menu ul li {
            font-size: 26rem;
            letter-spacing: 0.05em;
            line-height: 1.2em; }
            footer .footer_nav .footer_menu ul li:nth-child(n+2) {
              margin-top: 30rem; }
            footer .footer_nav .footer_menu ul li a {
              display: inline-block;
              color: #333; }
    footer .footer_logo {
      margin: 50rem auto 70rem; }
      footer .footer_logo .logo01 {
        width: 510rem;
        margin: 0 auto 55rem; }
      footer .footer_logo .logo02 {
        width: 486rem;
        margin: 0 auto; }
    footer .footer_btm {
      background: #1d9902; }
      footer .footer_btm .inner {
        padding: 30rem 0;
        color: #fff; }
        footer .footer_btm .inner .footer_btm_link {
          display: flex;
          justify-content: center;
          margin-bottom: 20rem; }
          footer .footer_btm .inner .footer_btm_link a {
            display: inline-block;
            font-size: 16rem;
            line-height: 1.25em;
            color: #fff;
            position: relative; }
            footer .footer_btm .inner .footer_btm_link a:first-child {
              margin-right: 3em; }
              footer .footer_btm .inner .footer_btm_link a:first-child::before {
                position: absolute;
                content: "";
                width: 1rem;
                height: 32rem;
                right: -24rem;
                top: 50%;
                transform: translateY(-50%);
                background: #fff; }
        footer .footer_btm .inner .copyright {
          font-size: 10rem;
          letter-spacing: 0.05em;
          line-height: 1.25em;
          text-align: center; }

  /*全国ネットワーク*/
  #network {
    background: rgba(232, 237, 233, 0.41); }
    #network .under_mv_right {
      background-image: url("../img/network_mv.png"); }
    #network .under_body {
      padding: 65rem 0 70rem; }
      #network .under_body .inner {
        width: 88%;
        margin: 0 auto; }
        #network .under_body .inner .network_link {
          display: flex;
          justify-content: center;
          flex-wrap: wrap;
          margin-bottom: 50px; }
          #network .under_body .inner .network_link .link {
            width: 112rem;
            position: relative;
            margin: 0 20rem 40rem; }
            #network .under_body .inner .network_link .link::before {
              content: "";
              display: block;
              padding-top: 100%; }
            #network .under_body .inner .network_link .link a {
              width: 100%;
              height: 100%;
              position: absolute;
              top: 0;
              left: 0;
              display: flex;
              justify-content: center;
              align-items: center;
              font-size: 17rem;
              letter-spacing: 0.1em;
              line-height: 1.25em;
              font-weight: bold;
              color: #1d9902;
              text-align: center;
              box-sizing: border-box;
              border: solid 1px #1d9902;
              border-radius: 100%;
              background: #fff;
              transition: 0.3s; }
              #network .under_body .inner .network_link .link a:hover {
                color: #fff;
                background: #1d9902; }
        #network .under_body .inner .network_cont {
          margin: 0 auto 70rem;
          padding-top: 125rem;
          margin-top: -125rem; }
          #network .under_body .inner .network_cont:last-child {
            margin-bottom: 0; }
          #network .under_body .inner .network_cont h3 {
            font-size: 36rem;
            line-height: 1;
            font-weight: bold;
            color: #1d9902;
            text-align: center;
            margin-bottom: 25rem; }
          #network .under_body .inner .network_cont .network_table {
            width: 100%;
            overflow: scroll;
            padding-bottom: 10rem; }
            #network .under_body .inner .network_cont .network_table table {
              width: 1200rem;
              border-collapse: collapse; }
              #network .under_body .inner .network_cont .network_table table tr th {
                font-size: 24rem;
                line-height: 1.5em;
                font-weight: bold;
                color: #fff;
                text-align: center;
                vertical-align: middle;
                padding: 15rem 0;
                box-sizing: border-box;
                border: solid 2px #1d9902;
                background: rgba(29, 153, 2, 0.8); }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(1) {
                  width: 15%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(2) {
                  width: 28%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(3) {
                  width: 29.5%; }
                #network .under_body .inner .network_cont .network_table table tr th:nth-child(4) {
                  width: 19%; }
              #network .under_body .inner .network_cont .network_table table tr td {
                font-size: 22rem;
                line-height: 1.27em;
                color: #333;
                padding: 15rem 0;
                text-align: center;
                vertical-align: middle;
                box-sizing: border-box;
                border: solid 2px #1d9902;
                background: #fff; }
                #network .under_body .inner .network_cont .network_table table tr td a {
                  color: #1d9902;
                  text-decoration: underline; }
                #network .under_body .inner .network_cont .network_table table tr td.address {
                  text-align: left;
                  padding-left: 20rem;
                  padding-right: 1em; }

  main {
    margin-top: 125rem; }

  .under_mv .inner {
    position: relative; }
    .under_mv .inner .under_mv_left {
      position: absolute;
      left: 0;
      bottom: 0;
      box-sizing: border-box;
      background: linear-gradient(to right, #79b437, #1d9902);
      z-index: 2;
      width: 100%; }
      .under_mv .inner .under_mv_left h2 {
        box-sizing: border-box;
        padding: 10rem 30rem;
        font-size: 34rem;
        letter-spacing: 0.2em;
        line-height: 1.4em;
        font-weight: bold;
        color: #fff;
        box-sizing: border-box; }
      .under_mv .inner .under_mv_left br {
        display: none; }
    .under_mv .inner .under_mv_right {
      position: relative;
      height: 45vw;
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover; }

  .punkuzu {
    width: 100%;
    background: #fff;
    padding: 27rem 37rem;
    box-sizing: border-box; }
    .punkuzu ul {
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      .punkuzu ul li {
        font-size: 16rem;
        letter-spacing: 0.1em;
        line-height: 1;
        margin-right: 20rem; }
        .punkuzu ul li:last-child {
          margin: 0; }
        .punkuzu ul li.arrow {
          width: 8rem; }
        .punkuzu ul li a {
          display: inline-block;
          color: #333333; }
          .punkuzu ul li a.home {
            width: 22rem; }

  /*お問い合わせ（共通）*/
  .contact {
    background: rgba(232, 237, 233, 0.41); }
    .contact .under_mv_right {
      background-image: url("../img/contact_mv.png"); }
    .contact .under_body {
      padding: 135rem 0 210rem; }
      .contact .under_body .inner {
        width: 85%;
        max-width: 1100px;
        margin: 0 auto; }
    .contact .contact_btn {
      display: flex;
      justify-content: center; }
      .contact .contact_btn input {
        width: 327rem;
        height: 72rem;
        box-sizing: border-box;
        font-size: 26rem;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        padding: 26rem 0 25rem;
        border-radius: 35rem;
        cursor: pointer;
        transition: 0.3s; }
        .contact .contact_btn input.submit {
          color: #fff;
          border: solid 1px #1d9902;
          background: #1d9902; }
          .contact .contact_btn input.submit:hover {
            color: #1d9902;
            background: #fff; }

  /*お問い合わせ*/
  #contact {
    color: #333333; }
    #contact .contact_txt {
      font-size: 25rem;
      letter-spacing: 0.05em;
      line-height: 1.64em;
      font-weight: bold;
      text-align: center; }
    #contact .contact_head {
      margin: 60rem auto 100rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative; }
      #contact .contact_head::before {
        position: absolute;
        content: "";
        width: 87.4%;
        height: 2rem;
        top: 28rem;
        left: 50%;
        transform: translateX(-50%);
        background: #333333; }
      #contact .contact_head .contact_head_box .circle {
        width: 58rem;
        height: 58rem;
        margin: 0 auto;
        border-radius: 100%;
        background: #333333;
        position: relative; }
        #contact .contact_head .contact_head_box .circle.active {
          background: #1d9902; }
          #contact .contact_head .contact_head_box .circle.active::before {
            position: absolute;
            content: "";
            width: 85rem;
            height: 85rem;
            top: 50%;
            left: 50%;
            transform: translateX(-50%) translateY(-50%);
            border: solid 3px #1d9902;
            box-sizing: border-box;
            border-radius: 100%; }
      #contact .contact_head .contact_head_box .list {
        font-size: 31rem;
        letter-spacing: 0.1em;
        margin-top: 33rem; }
        #contact .contact_head .contact_head_box .list.active {
          font-weight: bold;
          color: #1d9902; }
    #contact .contact_form table {
      width: 100%;
      margin-bottom: 35rem; }
      #contact .contact_form table tr th {
        display: block;
        width: 100%;
        font-size: 30rem;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #333333;
        text-align: left;
        padding-bottom: 10rem; }
        #contact .contact_form table tr th.nini div:before {
          display: none; }
        #contact .contact_form table tr th div {
          display: inline-block;
          padding-right: 85rem;
          position: relative; }
          #contact .contact_form table tr th div::before {
            position: absolute;
            content: "必須";
            width: 58rem;
            height: 32rem;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            font-size: 20rem;
            letter-spacing: 0.1em;
            line-height: 32rem;
            font-weight: bold;
            color: #fff;
            text-align: center;
            background: #f80000; }
      #contact .contact_form table tr td {
        display: block;
        width: 100%;
        padding: 10rem 0 45rem; }
        #contact .contact_form table tr td input {
          width: 100%;
          height: 65rem;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          box-sizing: border-box;
          padding: 0 27rem;
          border: solid 1px #333333;
          border-radius: 5rem;
          background: #fff;
          font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
          #contact .contact_form table tr td input::placeholder {
            color: #b3b3b3; }
          #contact .contact_form table tr td input.p-postal-code {
            width: auto; }
        #contact .contact_form table tr td textarea {
          width: 100%;
          height: 320rem;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 1;
          box-sizing: border-box;
          padding: 25rem 27rem;
          border: solid 1px #333333;
          border-radius: 5rem;
          background: #fff;
          font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
          #contact .contact_form table tr td textarea::placeholder {
            color: #b3b3b3; }
      #contact .contact_form table tr:last-child td {
        padding-bottom: 0; }
    #contact .contact_form .privacy_txt {
      width: 97.363%;
      margin: 0 auto;
      font-size: 18rem;
      letter-spacing: 0.05em;
      line-height: 1.55em; }
      #contact .contact_form .privacy_txt a {
        color: #ff0000;
        text-decoration: underline; }
    #contact .contact_form .privacy_check {
      width: 100%;
      text-align: center;
      padding: 23rem 0;
      border-radius: 5rem;
      border: solid 1px #333333;
      background: #fff;
      margin: 20rem 0 130rem; }
      #contact .contact_form .privacy_check label {
        display: inline-block;
        font-size: 20rem;
        letter-spacing: 0.05em;
        cursor: pointer; }
        #contact .contact_form .privacy_check label input {
          width: 15rem;
          height: 15rem;
          margin-right: 1em; }

  /*会社概要*/
  #company {
    color: #333333; }
    #company .under_mv_right {
      background-image: url("../img/company_mv.png"); }
    #company .under_body .inner {
      margin: 0 auto; }
      #company .under_body .inner h3 {
        width: 90%;
        margin: 0 auto;
        font-size: 36rem;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #1d9902;
        padding-bottom: 40rem;
        border-bottom: solid 2px #1d9902; }
    #company .message {
      padding: 10rem 0 75rem; }
      #company .message .message_cont {
        padding-bottom: 10rem; }
        #company .message .message_cont .message_cont_left {
          padding-top: 30rem; }
          #company .message .message_cont .message_cont_left .message_txt {
            text-align: center;
            font-size: 22rem;
            letter-spacing: 0.05em;
            line-height: 2.05em;
            margin: 40rem 0; }
          #company .message .message_cont .message_cont_left .name {
            text-align: center;
            font-size: 27rem;
            letter-spacing: 0.05em;
            line-height: 1.1em; }
            #company .message .message_cont .message_cont_left .name span {
              font-size: 18rem;
              display: inline-block; }
    #company .overview {
      padding: 75rem 0;
      background: rgba(232, 237, 233, 0.41); }
      #company .overview h3 {
        margin-bottom: 70rem; }
      #company .overview .overview_cont {
        width: 90%;
        margin: 0 auto; }
        #company .overview .overview_cont .overview_cont_right {
          padding: 40rem 0 50rem; }
          #company .overview .overview_cont .overview_cont_right table {
            width: 100%;
            box-sizing: border-box;
            border-collapse: collapse;
            border: solid 2px #1d9902; }
            #company .overview .overview_cont .overview_cont_right table tr th {
              width: 157rem;
              font-size: 22rem;
              letter-spacing: 0.1em;
              line-height: 1.1428em;
              font-weight: bold;
              box-sizing: border-box;
              padding: 18rem 0;
              vertical-align: middle;
              border: solid 1px #1d9902;
              background: rgba(29, 153, 2, 0.2); }
            #company .overview .overview_cont .overview_cont_right table tr td {
              width: calc( 100% - 157rem );
              font-size: 22rem;
              letter-spacing: 0.1em;
              line-height: 1.2em;
              font-weight: bold;
              box-sizing: border-box;
              padding: 18rem 20rem;
              vertical-align: middle;
              border: solid 1px #1d9902;
              background: #fff; }
              #company .overview .overview_cont .overview_cont_right table tr td dl {
                padding: 7rem 0; }
                #company .overview .overview_cont .overview_cont_right table tr td dl dd {
                  font-size: 22rem;
                  line-height: 1.4em;
                  font-weight: 400;
                  margin-bottom: 12rem; }
                  #company .overview .overview_cont .overview_cont_right table tr td dl dd:last-child {
                    margin-bottom: 0; }
              #company .overview .overview_cont .overview_cont_right table tr td .map {
                font-size: 17rem;
                padding-left: 21rem;
                background: url("../img/icon_map.webp") no-repeat center left;
                display: inline-block;
                margin-top: 5rem;
                background-size: 16rem;
                margin-bottom: 25rem; }
                #company .overview .overview_cont .overview_cont_right table tr td .map a {
                  text-decoration: underline;
                  color: #4796d2; }
                #company .overview .overview_cont .overview_cont_right table tr td .map:last-child {
                  margin-bottom: 0; }
        #company .overview .overview_cont .overview_map {
          position: relative; }
          #company .overview .overview_cont .overview_map iframe {
            width: 100%;
            height: 80vw;
            top: 0;
            left: 0; }

  /*お問い合わせ（共通）*/
  #hoken {
    background: rgba(232, 237, 233, 0.41);
    color: #333333;
    padding-bottom: 100rem; }
    #hoken.shiroari .under_mv_right {
      background: url("../img/shiroari_mv.webp"); }
    #hoken .under_mv_right {
      background-image: url("../img/hoken_mv.png"); }
    #hoken .under_body {
      padding: 100rem 0 0; }
      #hoken .under_body .inner {
        margin: 0 auto; }
    #hoken .hoken_txt {
      font-size: 25rem;
      width: 88%;
      margin: 0 auto;
      letter-spacing: 0.05em;
      line-height: 1.64em;
      font-weight: bold;
      text-align: center;
      margin-bottom: 60rem; }
    #hoken .hoke_btn {
      width: 100%;
      margin: 90rem auto;
      text-align: center; }
      #hoken .hoke_btn a {
        font-size: 32rem;
        font-weight: 700;
        line-height: 1.5em;
        background: #1d9902;
        border: solid 1px #1d9902;
        border-radius: 100px;
        -webkit-border-radius: 100px;
        -moz-border-radius: 100px;
        box-sizing: border-box;
        text-align: center;
        padding: 20rem 50rem;
        display: inline-block;
        margin: 0 auto;
        color: #fff; }
        #hoken .hoke_btn a:hover {
          background: #fff;
          color: #1d9902; }
    #hoken .hoken_table {
      width: 90%;
      margin: 0 auto; }
      #hoken .hoken_table .hoken_table_ttl {
        font-size: 40rem;
        color: #1d9902;
        font-weight: 700;
        padding-top: 100px;
        margin-bottom: 40rem; }
      #hoken .hoken_table .tablein {
        width: 100%;
        overflow: scroll;
        padding-bottom: 20rem; }
        #hoken .hoken_table .tablein table {
          width: 250vw;
          background: #fff; }
          #hoken .hoken_table .tablein table tr .f1 {
            width: 40rem;
            font-weight: 700;
            text-align: center;
            line-height: 1; }
          #hoken .hoken_table .tablein table tr th {
            color: #fff;
            font-size: 30rem;
            vertical-align: middle;
            background: #333333;
            border: solid 2rem #000000;
            font-weight: 700;
            line-height: 1.4em;
            padding: 20rem 10rem; }
          #hoken .hoken_table .tablein table tr td {
            font-size: 30rem;
            vertical-align: middle;
            border: solid 2rem #000000;
            background: #fff;
            line-height: 1.4em;
            padding: 20rem 30rem; }
            #hoken .hoken_table .tablein table tr td .pdf {
              margin-top: 10rem;
              display: inline-block;
              width: 60rem; }
    #hoken .hoken_boxes {
      margin: 0 auto; }
      #hoken .hoken_boxes .hoken_box {
        filter: drop-shadow(0 0 12rem rgba(0, 128, 0, 0.2)); }
        #hoken .hoken_boxes .hoken_box:nth-child(n+2) {
          margin-top: 100rem; }
        #hoken .hoken_boxes .hoken_box .hoken_box_bg {
          width: 90%;
          margin: 0 auto -15rem;
          min-height: 100rem;
          text-align: center;
          display: flex;
          justify-content: flex-end;
          align-items: center;
          background: url("../img/hoken_box_bg.png") no-repeat center top;
          background-size: 100% 100%; }
          #hoken .hoken_boxes .hoken_box .hoken_box_bg .hoken_box_ttl {
            font-size: 30rem;
            letter-spacing: 0.1em;
            line-height: 1.08em;
            font-weight: bold;
            color: #1d9902;
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            width: 100%;
            align-items: center;
            line-height: 1.4em; }
            #hoken .hoken_boxes .hoken_box .hoken_box_bg .hoken_box_ttl span {
              display: inline-block;
              width: 100%;
              font-size: 23rem; }
        #hoken .hoken_boxes .hoken_box .hoken_box_txt {
          font-size: 22rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          text-align: left;
          padding: 1em 2em 1em;
          background: #fff; }

  /*お知らせ（共通）*/
  .news .under_mv_right {
    background-image: url("../img/news_mv.png"); }

  /*お知らせ*/
  #news {
    background: rgba(24, 78, 36, 0.1); }
    #news .under_body {
      padding: 40rem 0 60rem; }
      #news .under_body .inner {
        width: 88%;
        margin: 0 auto; }
    #news .news_cat {
      margin-bottom: 40rem; }
      #news .news_cat ul li {
        display: inline-block;
        margin: 0 25rem 25rem 0; }
        #news .news_cat ul li a {
          display: inline-block;
          font-size: 16rem;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          color: #1d9902;
          box-sizing: border-box;
          padding: 16rem 40rem;
          border-radius: 100rem;
          border: solid 1px #1d9902;
          background: #fff;
          transition: 0.3s; }
          #news .news_cat ul li a.active {
            color: #fff;
            background: #1d9902; }
          #news .news_cat ul li a:hover {
            color: #fff;
            background: #1d9902; }
    #news .news_boxes {
      margin-bottom: 60rem; }
      #news .news_boxes .news_box {
        padding: 40rem 35rem;
        background: #fff;
        margin-bottom: 18rem; }
        #news .news_boxes .news_box .news_box_in {
          width: 95%;
          margin: 0 auto;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          flex-wrap: wrap; }
          #news .news_boxes .news_box .news_box_in .date {
            font-size: 20rem;
            letter-spacing: 0.1em;
            line-height: 1;
            color: #333333;
            margin-right: 40rem; }
          #news .news_boxes .news_box .news_box_in .cat {
            display: inline-block;
            font-size: 18rem;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            color: #1d9902;
            box-sizing: border-box;
            padding: 16rem 40rem;
            border-radius: 100rem;
            border: solid 1px #1d9902;
            background: #fff; }
          #news .news_boxes .news_box .news_box_in .ttl {
            width: 100%;
            margin-top: 20rem; }
            #news .news_boxes .news_box .news_box_in .ttl a {
              font-size: 24rem;
              letter-spacing: 0.05em;
              line-height: 1.5em;
              color: #333333; }
              #news .news_boxes .news_box .news_box_in .ttl a:hover {
                text-decoration: underline; }

  /*雑記帳（共通）*/
  .zakkicho .under_mv_right {
    background-image: url("../img/zakkicho_mv.png"); }

  /*雑記帳*/
  #zakkicho {
    background: rgba(24, 78, 36, 0.1); }
    #zakkicho .under_body {
      padding: 60rem 0 100rem; }
      #zakkicho .under_body .inner {
        width: 88%;
        margin: 0 auto; }
    #zakkicho .zakkicho_head {
      width: 100%;
      max-width: 1100px;
      margin: 0 auto 60rem; }
      #zakkicho .zakkicho_head .zakkicho_head_box {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start; }
        #zakkicho .zakkicho_head .zakkicho_head_box:nth-child(2) {
          margin-top: 20rem; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_head_box_ttl {
          width: 110rem;
          font-size: 18rem;
          letter-spacing: 0.01em;
          line-height: 50rem;
          font-weight: bold;
          color: #333333;
          margin-right: 25rem; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_head_box_ttl.cat {
            padding-top: 20rem;
            letter-spacing: 0.22em; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search {
          width: 472rem;
          position: relative; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_box {
            width: 100%;
            height: 50rem;
            font-size: 16rem;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            font-family: "dnp-shuei-mgothic-std", sans-serif;
            color: #333333;
            box-sizing: border-box;
            padding-left: 40rem;
            border-radius: 25rem;
            border: solid 1px #1d9902; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_btn {
            width: 29rem;
            position: absolute;
            right: 27rem;
            top: 50%;
            transform: translateY(-50%); }
            #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_search .search_btn input {
              width: 100%;
              height: 29rem;
              font-size: 0;
              border: none;
              background: url("../img/icon_search.png") no-repeat center;
              background-size: contain;
              cursor: pointer; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_year {
          width: 166rem; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_year select {
            width: 100%;
            height: 50rem;
            font-size: 16rem;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            font-family: "dnp-shuei-mgothic-std", sans-serif;
            color: #1d9902;
            box-sizing: border-box;
            padding-left: 40rem;
            border-radius: 25rem;
            border: solid 1px #1d9902;
            -webkit-appearance: none;
            appearance: none;
            /* デフォルトの矢印を非表示 */
            background: url("../img/icon_select.png") no-repeat right 30rem center #fff;
            background-size: 15rem; }
        #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat {
          flex: 1; }
          #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul {
            display: flex;
            justify-content: flex-start;
            align-items: center;
            flex-wrap: wrap; }
            #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li {
              margin-right: 28rem;
              margin-top: 20rem;
              /* aタグだった部分をlabelに変更 */ }
              #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label {
                display: inline-block;
                font-size: 16rem;
                letter-spacing: 0.1em;
                line-height: 1;
                font-weight: bold;
                color: #1d9902;
                box-sizing: border-box;
                padding: 16rem 40rem;
                border-radius: 25rem;
                border: solid 1px #1d9902;
                background: #fff;
                transition: 0.3s;
                cursor: pointer;
                /* クリックできることが分かるようにポインターにする */
                /* デフォルトの四角いチェックボックスは非表示にする */
                /* 中のチェックボックスがチェックされた時のスタイル（元の .active に相当） */
                /* ホバー時のスタイル */ }
                #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label input[type="checkbox"] {
                  display: none; }
                #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label:has(input:checked) {
                  color: #fff;
                  background: #1d9902; }
                #zakkicho .zakkicho_head .zakkicho_head_box .zakkicho_cat ul li label:hover {
                  color: #fff;
                  background: #1d9902; }
    #zakkicho .zakkicho_boxes {
      margin-bottom: 100rem; }
      #zakkicho .zakkicho_boxes .zakkicho_box {
        margin-bottom: 30rem; }
        #zakkicho .zakkicho_boxes .zakkicho_box a {
          display: flex;
          justify-content: space-between;
          align-items: center;
          flex-wrap: wrap;
          width: 100%;
          color: #333333;
          box-sizing: border-box;
          padding: 15rem 15rem 20rem;
          border-radius: 20rem;
          background: #fff;
          transition: 0.3s; }
          #zakkicho .zakkicho_boxes .zakkicho_box a:hover {
            opacity: 0.8; }
          #zakkicho .zakkicho_boxes .zakkicho_box a .zakkicho_box_img {
            width: 100%;
            padding-top: 68.56%;
            background-repeat: no-repeat;
            background-position: center;
            background-size: cover; }
          #zakkicho .zakkicho_boxes .zakkicho_box a .ttl {
            width: 100%;
            font-size: 26rem;
            letter-spacing: 0.01em;
            line-height: 1.5em;
            font-weight: bold;
            margin: 20rem 0 25rem; }
          #zakkicho .zakkicho_boxes .zakkicho_box a .cat {
            display: inline-block;
            font-size: 18rem;
            letter-spacing: 0.1em;
            line-height: 1;
            font-weight: bold;
            color: #1d9902;
            box-sizing: border-box;
            padding: 16rem 38rem;
            border-radius: 100rem;
            border: solid 1px #1d9902;
            background: #fff; }
          #zakkicho .zakkicho_boxes .zakkicho_box a .date {
            font-size: 18rem;
            letter-spacing: 0.01em;
            line-height: 1; }

  /*記事詳細（共通）*/
  .article {
    background: rgba(24, 78, 36, 0.1); }
    .article .under_body {
      padding: 60rem 0 100rem; }
      .article .under_body .inner {
        width: 85%;
        max-width: 1380px;
        margin: 0 auto; }
    .article .article_ttl {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      flex-wrap: wrap;
      margin-bottom: 50rem; }
      .article .article_ttl .date {
        font-size: 20rem;
        letter-spacing: 0.1em;
        line-height: 1;
        color: #333333;
        margin-right: 40rem; }
      .article .article_ttl .cat {
        display: inline-block;
        font-size: 18rem;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #1d9902;
        box-sizing: border-box;
        padding: 16rem 40rem;
        border-radius: 100rem;
        border: solid 1px #1d9902;
        background: #fff; }
      .article .article_ttl .ttl {
        width: 100%;
        margin-top: 15rem;
        font-size: 30rem;
        letter-spacing: 0.05em;
        line-height: 1.5em;
        font-weight: bold;
        color: #333333; }
    .article .article_bg {
      padding: 30rem;
      box-sizing: border-box;
      border-radius: 5px;
      background: #fff; }
      .article .article_bg .article_cont {
        margin: 0 auto;
        color: #333333; }
        .article .article_bg .article_cont .article_img {
          width: 100%;
          margin-bottom: 20rem; }
        .article .article_bg .article_cont p {
          font-size: 25rem;
          letter-spacing: 0;
          line-height: 1.7em;
          margin-bottom: 50rem;
          text-align: justify; }
          .article .article_bg .article_cont p:last-of-type {
            margin-bottom: 0; }
        .article .article_bg .article_cont h2 {
          font-size: 34rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          font-weight: bold;
          box-sizing: border-box;
          padding: 16rem 24rem;
          border-left: solid 6px #1d9902;
          background: #e8f5e6;
          margin-bottom: 20rem; }
        .article .article_bg .article_cont h3 {
          font-size: 30rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          font-weight: bold;
          box-sizing: border-box;
          padding: 9rem 24rem;
          border-left: solid 6px #1d9902;
          margin-bottom: 20rem; }
        .article .article_bg .article_cont h4 {
          font-size: 27rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          font-weight: bold;
          padding-bottom: 18rem;
          border-bottom: solid 2px #1d9902;
          margin-bottom: 20rem; }
        .article .article_bg .article_cont h5 {
          font-size: 26rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          font-weight: bold;
          padding-left: 30rem;
          box-sizing: border-box;
          margin-bottom: 20rem;
          position: relative; }
          .article .article_bg .article_cont h5::before {
            position: absolute;
            content: "";
            width: 19rem;
            height: 16rem;
            left: 0;
            top: 8rem;
            background: url("../img/icon_check.png") no-repeat left center;
            background-size: contain; }
        .article .article_bg .article_cont h6 {
          font-size: 24rem;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          font-weight: bold;
          box-sizing: border-box;
          padding: 6rem 20rem;
          background: rgba(51, 51, 51, 0.14);
          margin-bottom: 20rem; }
    .article .article_btn {
      width: 327rem;
      margin: 110rem auto 0; }
      .article .article_btn a {
        display: block;
        width: 100%;
        font-size: 19rem;
        letter-spacing: 0.1em;
        line-height: 1;
        font-weight: bold;
        color: #fff;
        text-align: center;
        padding: 25rem 0 24rem;
        border-radius: 100rem;
        border: solid 1px #1d9902;
        background: #1d9902;
        transition: 0.3s; }
        .article .article_btn a:hover {
          color: #1d9902;
          background: #fff; }

  /*個人情報の取り扱いについて*/
  #privacy {
    background: rgba(232, 237, 233, 0.41); }
    #privacy .under_mv_right {
      background-image: url("../img/privacy_mv.png"); }
    #privacy .under_body {
      padding: 60rem 0 60rem; }
      #privacy .under_body .inner {
        width: 88%;
        margin: 0 auto; }
    #privacy h3 {
      font-size: 30rem;
      letter-spacing: 0.1em;
      line-height: 1;
      font-weight: bold;
      color: #333333;
      text-align: center;
      margin-bottom: 50rem; }
    #privacy .privacy_txt {
      font-size: 22rem;
      letter-spacing: 0.05em;
      line-height: 1.81em;
      color: #333333; }
      #privacy .privacy_txt span {
        display: inline-block;
        font-size: 26rem;
        line-height: 1.66em; }

  /*コダマの防湿マット*/
  #bositsu {
    background: rgba(232, 237, 233, 0.41); }
    #bositsu .under_mv_right {
      background-image: url("../img/bositsu_mv.png"); }
    #bositsu .kawaii_head {
      text-align: center;
      margin: 0 auto 75rem; }
      #bositsu .kawaii_head .kawaii_head_img01 {
        width: 100%;
        margin: 0 auto 70rem; }
      #bositsu .kawaii_head .kawaii_head_img02 {
        width: 80%;
        margin: 0 auto 50rem; }
      #bositsu .kawaii_head .kawaii_head_txt {
        font-size: 24rem;
        line-height: 1.5em; }
      #bositsu .kawaii_head .kawaii_head_ttl {
        font-weight: 700;
        font-size: 26rem;
        line-height: 1.7em;
        margin-bottom: 80rem; }
        #bositsu .kawaii_head .kawaii_head_ttl a {
          text-decoration: underline;
          color: #333333; }
    #bositsu .under_body {
      padding: 56rem 0; }
      #bositsu .under_body .inner {
        width: 90%;
        margin: 0 auto; }
        #bositsu .under_body .inner .bositsu_head {
          text-align: center;
          margin-bottom: 35rem; }
          #bositsu .under_body .inner .bositsu_head .bositsu_head_txt {
            font-size: 36rem;
            letter-spacing: 0.1em;
            line-height: 1.64em;
            font-weight: bold; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_txt .line {
              text-decoration: underline; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_txt.btm {
              font-size: 22px;
              line-height: 1.54em;
              font-weight: 400; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_txt.btm .bold {
                font-weight: bold; }
          #bositsu .under_body .inner .bositsu_head .bositsu_head_box {
            margin: 55px 0 75px; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt {
              font-size: 43px;
              line-height: 1.8em;
              letter-spacing: 0.1em;
              font-weight: bold; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt:last-child {
                line-height: 1.5em; }
              #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span {
                display: inline-block; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.small {
                  font-size: 37px; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.middle {
                  font-size: 60px;
                  margin: 0 0.5em; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.bg {
                  line-height: 1;
                  box-sizing: border-box;
                  /*border: solid 3px #000;*/
                  background: #fff;
                  position: relative; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.bg::after {
                    position: absolute;
                    content: "";
                    width: 100%;
                    height: 100%;
                    left: 0;
                    top: 0;
                    border: solid 3px #000; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.circle {
                  width: 222px;
                  font-size: 74px;
                  padding: 9px 0; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.circle::before {
                    position: absolute;
                    content: "";
                    width: 264px;
                    height: 135px;
                    left: -19px;
                    top: -12px;
                    background: url("../img/bositsu_head_txt_circle.png") no-repeat;
                    background-size: contain; }
                #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.line {
                  width: 404px;
                  font-size: 54px;
                  padding: 11px 0;
                  margin-right: 15px; }
                  #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_txt span.line::before {
                    position: absolute;
                    content: "";
                    width: 444px;
                    height: 15px;
                    left: -15px;
                    bottom: -5px;
                    background: url("../img/bositsu_head_txt_line.png") no-repeat;
                    background-size: contain; }
            #bositsu .under_body .inner .bositsu_head .bositsu_head_box .bositsu_head_box_arrow {
              width: 175px;
              margin: 45px auto 35px; }
        #bositsu .under_body .inner .bositsu_cont .bositsu_box {
          border-radius: 40rem;
          background: #fff;
          overflow: hidden;
          margin-bottom: 50rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box01 {
            padding-bottom: 45rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box.box01 .bositsu_box_txt {
              margin-top: 45rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box02 {
            padding-bottom: 45rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box03 {
            padding-bottom: 45rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box.box04 {
            padding-bottom: 45rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box h3 {
            font-size: 36rem;
            letter-spacing: 0.1em;
            font-weight: bold;
            color: #fff;
            text-align: center;
            padding: 35rem 0;
            background: #1a944b; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box dl {
            width: 88%;
            margin: 0 auto;
            position: relative; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl:first-of-type {
              margin-top: 35rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl:nth-of-type(2) {
              margin-top: 35rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl dt {
              width: 54rem;
              height: 54rem;
              font-size: 26rem;
              line-height: 54rem;
              color: #1a944b;
              text-align: center;
              border: solid 1px #1a944b;
              border-radius: 100%;
              position: absolute;
              left: -14rem;
              top: 0; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box dl dd {
              box-sizing: border-box;
              padding-left: 60rem;
              font-size: 28rem;
              letter-spacing: 0.1em;
              line-height: 1.73em;
              color: #1a944b; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box dl + .bositsu_box_txt {
            box-sizing: border-box;
            padding-left: 60rem; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt {
            width: 88%;
            margin: 0 auto;
            font-size: 22rem;
            letter-spacing: 0.1em;
            line-height: 1.5em; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt.bositsu_box_txt2 {
              box-sizing: border-box;
              padding-left: 60rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt .big {
              display: inline-block;
              font-size: 24rem;
              letter-spacing: 0.1em;
              line-height: 1.73em; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_txt .line {
              text-decoration: underline; }
          #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img {
            width: 85%;
            margin: 0 auto; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img01 {
              margin-top: 35rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img02 {
              margin-top: 35rem;
              margin-bottom: 45rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img03 {
              margin-top: 35rem;
              margin-bottom: 45rem; }
            #bositsu .under_body .inner .bositsu_cont .bositsu_box .bositsu_box_img.img04 {
              margin-top: 35rem; }

  /*コダマの白蟻防除剤*/
  #boujyo {
    background: rgba(232, 237, 233, 0.41); }
    #boujyo .under_mv_right {
      background-image: url("../img/boujyo_mv.png"); }
    #boujyo .under_body {
      padding: 60rem 0 75rem; }
      #boujyo .under_body .inner {
        margin: 0 auto; }
        #boujyo .under_body .inner .boujyo_head {
          margin: 0 auto 0; }
          #boujyo .under_body .inner .boujyo_head .boujyo_head_box {
            filter: drop-shadow(0 0 6px rgba(0, 128, 0, 0.2)); }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box:nth-child(n+2) {
              margin-top: 60rem; }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_bg {
              width: 80vw;
              margin: 0 auto -4rem;
              min-height: 90rem;
              text-align: center;
              display: flex;
              justify-content: center;
              align-items: flex-end;
              background: url("../img/hoken_box_bg.png") no-repeat center top;
              background-size: 100% 100%; }
              #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_bg .boujyo_head_box_ttl {
                font-size: 30rem;
                letter-spacing: 0.05em;
                line-height: 1.08em;
                font-weight: bold;
                color: #1d9902; }
            #boujyo .under_body .inner .boujyo_head .boujyo_head_box .boujyo_head_box_txt {
              font-size: 22rem;
              letter-spacing: 0.1em;
              line-height: 1.5em;
              text-align: left;
              padding: 1em 2em 1em;
              background: #fff; }
        #boujyo .under_body .inner .boujyo_btn {
          width: 553rem;
          max-width: 100%;
          margin: 70rem auto 100rem; }
          #boujyo .under_body .inner .boujyo_btn a {
            display: block;
            width: 100%;
            font-size: 26rem;
            letter-spacing: 0.1em;
            line-height: 1.6em;
            font-weight: bold;
            color: #fff;
            text-align: center;
            box-sizing: border-box;
            padding: 30rem 0;
            border: solid 1px #1d9902;
            border-radius: 100rem;
            background: #1d9902;
            transition: 0.3s; }
            #boujyo .under_body .inner .boujyo_btn a:hover {
              color: #1d9902;
              background: #fff; }
        #boujyo .under_body .inner .boujyo_boxes {
          width: 90%;
          margin: 0 auto; }
          #boujyo .under_body .inner .boujyo_boxes .boujyo_box {
            width: 100%;
            overflow: scroll;
            padding-bottom: 10rem; }
            #boujyo .under_body .inner .boujyo_boxes .boujyo_box:nth-child(n+2) {
              margin-top: 90rem; }
            #boujyo .under_body .inner .boujyo_boxes .boujyo_box .boujyo_box_ttl {
              font-size: 33rem;
              letter-spacing: 0.1em;
              line-height: 1;
              font-weight: bold;
              color: #1d9902;
              margin-bottom: 20rem; }
          #boujyo .under_body .inner .boujyo_boxes table {
            width: 1200rem;
            border-collapse: collapse; }
            #boujyo .under_body .inner .boujyo_boxes table tr th {
              font-size: 22rem;
              letter-spacing: 0.1em;
              line-height: 1.5em;
              color: #fff;
              box-sizing: border-box;
              padding: 9rem 0;
              vertical-align: middle;
              border: solid 2px #000;
              background: rgba(51, 51, 51, 0.8); }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(1) {
                width: 75rem;
                width: 6.04%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(2) {
                width: 75rem;
                width: 6.04%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(3) {
                width: 230rem;
                width: 18.55%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(4) {
                width: 280rem;
                width: 22.58%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(5) {
                width: 170rem;
                width: 13.71%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(6) {
                width: 180rem;
                width: 14.51%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(7) {
                width: 150rem;
                width: 12.1%; }
              #boujyo .under_body .inner .boujyo_boxes table tr th:nth-child(8) {
                width: 80rem;
                width: 6.45%; }
            #boujyo .under_body .inner .boujyo_boxes table tr td {
              font-size: 20rem;
              letter-spacing: 0.05em;
              line-height: 1.25em;
              color: #333;
              vertical-align: middle;
              box-sizing: border-box;
              padding: 15rem 0.5em;
              border: solid 2px #000;
              background: #fff; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.bold {
                font-size: 26rem;
                font-weight: 500;
                text-align: center; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.center {
                text-align: center;
                padding: 15rem 0; }
              #boujyo .under_body .inner .boujyo_boxes table tr td.right {
                text-align: right; }
              #boujyo .under_body .inner .boujyo_boxes table tr td .pdf {
                width: 60rem;
                margin: 8rem auto 0;
                text-align: center; }
                #boujyo .under_body .inner .boujyo_boxes table tr td .pdf a {
                  display: inline-block;
                  width: 50rem; }
        #boujyo .under_body .inner .boujyo_btm_txt {
          width: 90%;
          margin: 0 auto;
          font-size: 22rem;
          letter-spacing: 0.1em;
          line-height: 1.75em;
          color: #333;
          text-align: right;
          margin-top: 45rem; }

  /*沿革*/
  #history {
    background: rgba(232, 237, 233, 0.41); }
    #history .under_mv_right {
      background-image: url("../img/enkaku_mv.png"); }
    #history .under_body {
      padding: 60rem 0 60rem; }
      #history .under_body .inner {
        width: 100%; }
        #history .under_body .inner .history_head {
          width: 90%;
          margin: 0 auto 60rem;
          position: relative; }
          #history .under_body .inner .history_head .history_head_box {
            width: 26.0869%;
            height: 75rem;
            font-size: 22rem;
            letter-spacing: 0.1em;
            line-height: 1.25em;
            font-weight: bold;
            color: #fff;
            text-align: center;
            display: flex;
            justify-content: center;
            align-content: center;
            flex-direction: column;
            box-sizing: border-box;
            padding: 0 1em;
            background: url("../img/his_arr_01o.webp") no-repeat center;
            background-size: 100% 100%;
            position: relative; }
            #history .under_body .inner .history_head .history_head_box a {
              display: block;
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              z-index: 2; }
            #history .under_body .inner .history_head .history_head_box:hover {
              background-image: url("../img/history_head_box_bg_01.png"); }
            #history .under_body .inner .history_head .history_head_box:nth-child(n+2) {
              position: absolute;
              top: 0;
              background: url("../img/history_head_box_bg_02.png") no-repeat center;
              background-size: 100% 100%; }
              #history .under_body .inner .history_head .history_head_box:nth-child(n+2):hover {
                background-image: url("../img/his_arr_02o.webp"); }
            #history .under_body .inner .history_head .history_head_box:nth-child(2) {
              left: 24.63%; }
            #history .under_body .inner .history_head .history_head_box:nth-child(3) {
              left: 49.42%; }
            #history .under_body .inner .history_head .history_head_box:nth-child(4) {
              left: 74.13%; }
        #history .under_body .inner .history_body .history_cont h3 {
          font-size: 30rem;
          letter-spacing: 0.1em;
          line-height: 1;
          font-weight: bold;
          text-align: center;
          color: #fff;
          padding: 25rem 0;
          background: #1d9902; }
        #history .under_body .inner .history_body .history_cont .history_boxes {
          width: 88%;
          margin: 0 auto;
          padding: 58rem 0 45rem;
          position: relative; }
          #history .under_body .inner .history_body .history_cont .history_boxes::before {
            position: absolute;
            content: "";
            width: 12rem;
            height: 100%;
            top: 0;
            left: 17rem;
            background: #1d9902; }
          #history .under_body .inner .history_body .history_cont .history_boxes .history_box {
            width: 100%;
            margin-bottom: 80rem; }
            #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left {
              position: relative;
              padding-left: 100rem;
              margin-bottom: 50rem; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left .year {
                font-size: 36rem;
                letter-spacing: 0em;
                line-height: 1.53em;
                font-weight: bold;
                color: #1d9902;
                box-sizing: border-box; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_left .circle {
                position: absolute;
                left: -10rem;
                top: 0;
                width: 65rem;
                height: 65rem;
                border-radius: 100%;
                background: #1d9902; }
            #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right {
              box-sizing: border-box;
              margin-left: 100rem;
              padding: 50rem 45rem;
              border-radius: 45rem;
              background: #fff;
              position: relative; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt.history_box_txt07 {
                padding-right: 51%; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt h4 {
                font-size: 28rem;
                letter-spacing: 0.1em;
                line-height: 1.87em;
                font-weight: bold;
                color: #1d9902; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_txt p {
                font-size: 24rem;
                letter-spacing: 0.05em;
                line-height: 1.83em;
                color: #333; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt {
                margin-top: 5vw; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_left {
                  font-size: 24rem;
                  letter-spacing: 0.05em;
                  line-height: 1.83em;
                  color: #333;
                  margin-bottom: 3vw; }
                #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_right {
                  text-align: center; }
                  #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .his_txt .his_txt_right img {
                    width: 80%; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img01 {
                text-align: center;
                width: 50%;
                margin: 15rem auto 0; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img02 {
                float: right;
                width: 36.38%;
                margin-left: 27rem;
                margin-bottom: 15rem; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img03 {
                float: right;
                width: 34.04%;
                margin-left: 30rem;
                position: relative;
                top: -10rem; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img04 {
                float: right;
                width: 29.25%;
                margin-left: 30rem; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img05 {
                float: right;
                width: 45.1%;
                margin-left: 30rem; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img06 {
                width: 50%;
                margin: 30rem auto 0; }
              #history .under_body .inner .history_body .history_cont .history_boxes .history_box .history_box_right .history_box_img.img07 {
                width: 32.11%;
                position: absolute;
                top: 50%;
                right: 75rem;
                transform: translateY(-50%); }
        #history .under_body .inner .history_body .history_cont:last-child .history_boxes {
          padding: 100rem 0 195rem; }
          #history .under_body .inner .history_body .history_cont:last-child .history_boxes::before {
            position: absolute;
            content: "";
            width: 12rem;
            height: 340rem;
            top: 0;
            left: 16rem;
            background: #1d9902; }
          #history .under_body .inner .history_body .history_cont:last-child .history_boxes::after {
            position: absolute;
            content: "";
            top: 0;
            width: 12rem;
            height: 77rem;
            bottom: 0;
            left: 16rem;
            background-image: linear-gradient(to bottom, #1d9902 0, #1d9902 8rem, transparent 8rem, transparent 22rem);
            /* 1サイクルのサイズを指定 */
            background-size: 8rem 22rem;
            background-repeat: repeat-y; }

  .wp-pagenavi {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    .wp-pagenavi a {
      display: inline-block;
      width: 64rem;
      height: 64rem;
      margin: 0 7rem;
      font-weight: bold;
      text-align: center;
      border: none;
      padding: 0; }
      .wp-pagenavi a.previouspostslink {
        height: 64rem;
        border-radius: 100%;
        background: url("../img/page_prev_arrow.png") no-repeat center #fff;
        background-size: 12rem; }
      .wp-pagenavi a.nextpostslink {
        height: 64rem;
        border-radius: 100%;
        background: url("../img/page_next_arrow.png") no-repeat center #fff;
        background-size: 12rem; }
      .wp-pagenavi a.page {
        font-size: 26rem;
        line-height: 64rem;
        color: #1d9902; }
    .wp-pagenavi span {
      display: inline-block;
      width: 64rem;
      height: 64rem;
      margin: 0 7rem;
      font-size: 26rem;
      line-height: 64rem;
      font-weight: bold;
      color: #1d9902;
      text-align: center;
      border: none;
      padding: 0; }
      .wp-pagenavi span.current {
        color: #fff;
        border-radius: 100%;
        background: #1d9902; } }
.p-country-name {
  display: none !important; }

.error {
  margin-top: 0.6em; }
