@charset "UTF-8";
/*===================================
共通
===================================*/
.Subpage_inner {
  width: 100%;
  max-width: 1140px;
  padding: 0 18px;
  margin: 50px auto 0; }
  @media (max-width: 767px) {
    .Subpage_inner {
      padding: 0 8px;
      margin: 30px auto 0; } }

.head {
  position: relative; }
  .head .head_txt {
    position: absolute;
    top: 25%;
    left: 5%;
    transform: translateY(-25%) translateX(-5%);
    color: #fff; }
    .head .head_txt h2 {
      position: relative;
      font-size: 45px;
      letter-spacing: 3px; }
      @media (min-width: 768px) and (max-width: 1081px) {
        .head .head_txt h2 {
          font-size: 30px; } }
      @media (max-width: 767px) {
        .head .head_txt h2 {
          font-size: 18px; } }
      .head .head_txt h2::before {
        content: "";
        display: block;
        width: 600px;
        height: 4px;
        background-color: #fff;
        position: absolute;
        bottom: 0;
        left: 3px; }
        @media (min-width: 768px) and (max-width: 1081px) {
          .head .head_txt h2::before {
            width: 300px; } }
        @media (max-width: 767px) {
          .head .head_txt h2::before {
            width: 200px;
            height: 2px;
            bottom: -3px; } }
    .head .head_txt p {
      margin-top: 8px;
      font-size: 25px; }
      @media (min-width: 768px) and (max-width: 1081px) {
        .head .head_txt p {
          font-size: 20px; } }
      @media (max-width: 767px) {
        .head .head_txt p {
          font-size: 14px; } }

._himg {
  width: 100%; }

.border_btm {
  padding-bottom: 8px;
  border-bottom: solid 3px #AACCB6; }

.wrap {
  flex-wrap: wrap; }

/*===================================
プライバシーポリシー
===================================*/
._privacy dt {
  font-size: 18px;
  margin-bottom: 8px; }
  @media (max-width: 767px) {
    ._privacy dt {
      font-size: 16px; } }
._privacy dd {
  margin-bottom: 20px; }
@media (max-width: 767px) {
  ._privacy a {
    font-size: 12px; } }
._privacy ._pitem {
  padding-left: 3rem;
  text-indent: -3rem; }
  @media (max-width: 767px) {
    ._privacy ._pitem {
      text-indent: -2.8rem; } }

/*===================================
コンタクト
===================================*/
._contact ._tel {
  font-size: 30px;
  letter-spacing: 2px; }
  @media (max-width: 767px) {
    ._contact ._tel {
      font-size: 20px; } }
._contact li {
  letter-spacing: 1px; }

.contact-form {
  margin-top: 40px;
  padding: 30px;
  background-color: #f4f4f6;
  /* デフォルトのボタン */ }
  @media (max-width: 767px) {
    .contact-form {
      padding: 16px; } }
  .contact-form .label {
    display: block;
    align-items: center;
    margin-bottom: 50px; }
    @media (min-width: 1081px) {
      .contact-form .label {
        display: flex; } }
    @media (max-width: 767px) {
      .contact-form .label {
        margin-bottom: 25px; } }
  .contact-form .label_area {
    display: block;
    margin-bottom: 50px; }
    @media (min-width: 1081px) {
      .contact-form .label_area {
        display: flex; } }
  .contact-form .contact_ttl {
    position: relative;
    padding-top: 8px;
    padding-right: 50px;
    text-align: left;
    padding-bottom: calc(0.5rem + 1px);
    flex: 0 0 35%;
    max-width: 35%; }
    @media (min-width: 1081px) {
      .contact-form .contact_ttl {
        flex: 0 0 20%;
        max-width: 30%; } }
    @media (max-width: 767px) {
      .contact-form .contact_ttl {
        max-width: 70%;
        margin-bottom: 10px; } }
  .contact-form .textarea_ttl {
    position: relative;
    padding-top: 25px;
    padding-right: 50px;
    text-align: left;
    padding-bottom: calc(0.5rem + 1px);
    flex: 0 0 37%;
    max-width: 37%; }
    @media (min-width: 1081px) {
      .contact-form .textarea_ttl {
        flex: 0 0 20%;
        max-width: 30%; } }
    @media (max-width: 767px) {
      .contact-form .textarea_ttl {
        padding-top: 8px;
        max-width: 70%;
        margin-bottom: 10px; } }
  .contact-form .c-form__require {
    padding-right: 80px; }
    .contact-form .c-form__require::after {
      position: absolute;
      top: 9px;
      right: auto;
      padding: 5px 13px;
      color: #e60012;
      font-size: 14px;
      line-height: 1;
      vertical-align: middle;
      content: "\5FC5\9808";
      margin-left: 10px;
      border: solid 1px #e60012; }
      @media (max-width: 767px) {
        .contact-form .c-form__require::after {
          top: 5px; } }
  .contact-form .a-form::after {
    top: 25px !important; }
    @media (max-width: 767px) {
      .contact-form .a-form::after {
        top: 5px !important; } }
  .contact-form .form_box {
    flex: 0 0 70%;
    max-width: 100%;
    position: relative;
    width: 100%;
    padding: 0; }
    @media (min-width: 1081px) {
      .contact-form .form_box {
        max-width: 70%;
        padding-right: 20px;
        padding-left: 46px; } }
    .contact-form .form_box p {
      font-size: 24px;
      font-weight: 500;
      letter-spacing: 2px; }
  .contact-form .a-form_box p {
    padding-top: 8px; }
  .contact-form .form-control {
    height: 50px;
    font-size: 18px;
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    color: #0B0B0B;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #0B0B0B;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; }
  .contact-form textarea.form-control {
    height: 220px; }
    @media (max-width: 767px) {
      .contact-form textarea.form-control {
        height: 180px; } }
  .contact-form input {
    letter-spacing: 3px;
    font-size: 20px; }
    @media (max-width: 767px) {
      .contact-form input {
        font-size: 16px; } }
  .contact-form .icon {
    margin-right: 10px; }
  .contact-form ._formwidth01 {
    width: 80px;
    display: inline-block; }
  .contact-form ._formwidth02 {
    width: 100px;
    display: inline-block; }
  .contact-form .kigou {
    margin: 0 20px; }
  .contact-form .wpcf7-list-item {
    display: inline-block;
    margin: 0 1em;
    position: relative;
    font-size: 18px; }
  .contact-form input[type="radio"] {
    position: absolute;
    left: -23px;
    top: 33%;
    width: 20px;
    height: 14px; }

/*===================================
応募・採用に関する質問
===================================*/
.question_txt {
  letter-spacing: 1px; }

.s_section {
  margin-top: 30px; }
  @media (max-width: 767px) {
    .s_section {
      margin-top: 15px; } }

.accordion_one:not(:first-child) {
  margin-top: 20px; }
  @media (max-width: 767px) {
    .accordion_one:not(:first-child) {
      margin-top: 10px; } }

.accordion_area .accordion_one .ac_header {
  background-color: #EEF5F0;
  border: 1px solid #EEF5F0;
  padding: 1.5rem 4rem 1.5rem 2rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s; }
  @media (max-width: 767px) {
    .accordion_area .accordion_one .ac_header {
      padding: 1.5rem 2rem 1.5rem 1.0rem; } }

.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px; }
  @media (max-width: 767px) {
    .accordion_area .accordion_one .ac_header .i_box {
      right: 0.8rem;
      width: 15px;
      height: 15px;
      margin-top: -7px; } }

.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle; }

.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #1D4077;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0; }
  @media (max-width: 767px) {
    .accordion_area .accordion_one .ac_header .i_box:before {
      width: 15px; } }

.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #1D4077;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s; }
  @media (max-width: 767px) {
    .accordion_area .accordion_one .ac_header .i_box:after {
      height: 15px;
      right: 7px; } }

.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0; }

.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-left: 2px solid #EEF5F0;
  border-right: 2px solid #EEF5F0;
  border-bottom: 2px solid #EEF5F0;
  box-sizing: border-box;
  background: #fff; }
  @media (max-width: 767px) {
    .accordion_area .accordion_one .ac_inner {
      padding: 1.5rem 1.5rem 1.5rem 1rem; } }

.p-faq__headinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5; }
  @media (max-width: 767px) {
    .p-faq__headinner {
      padding-left: 25px; } }

.p-faq__headinner::before {
  position: absolute;
  left: 0;
  content: "Q．";
  color: #1D4077;
  font-size: 18px;
  font-weight: bold; }
  @media (max-width: 767px) {
    .p-faq__headinner::before {
      font-size: 14px; } }

.p-faq__headinner p.p-faq__q-txt {
  font-size: 18px; }
  @media (max-width: 767px) {
    .p-faq__headinner p.p-faq__q-txt {
      font-size: 14px;
      padding-right: 15px; } }

.p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5; }
  @media (max-width: 767px) {
    .p-faq__bodyinner {
      padding-left: 25px; } }

.p-faq__bodyinner::before {
  position: absolute;
  left: 0;
  content: "A．";
  color: #de0000;
  font-size: 18px;
  font-weight: bold; }
  @media (max-width: 767px) {
    .p-faq__bodyinner::before {
      font-size: 14px; } }

.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 18px; }
  @media (max-width: 767px) {
    .p-faq__bodyinner p.p-faq__a-txt {
      font-size: 14px; } }

/*===================================
インタビュー
===================================*/
.interview_wrap {
  position: relative; }
  @media (max-width: 767px) {
    .interview_wrap {
      display: block; } }
  .interview_wrap::before {
    content: "";
    position: absolute;
    background-color: rgba(85, 154, 110, 0.5);
    bottom: -50px;
    top: 50px;
    left: 0; }
    @media (min-width: 1081px) {
      .interview_wrap::before {
        right: 500px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .interview_wrap::before {
        right: 300px; } }
    @media (max-width: 767px) {
      .interview_wrap::before {
        bottom: 0;
        right: 0; } }
  .interview_wrap img {
    width: 50%;
    max-width: 450px;
    position: relative; }
    @media (max-width: 767px) {
      .interview_wrap img {
        width: 75%; } }
  .interview_wrap .interview_contents {
    width: 55%;
    background-color: #EEF5F0;
    padding: 50px 45px;
    position: relative;
    z-index: 2;
    left: -20px; }
    @media (min-width: 1081px) {
      .interview_wrap .interview_contents {
        padding: 50px 45px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .interview_wrap .interview_contents {
        padding: 50px 35px; } }
    @media (max-width: 767px) {
      .interview_wrap .interview_contents {
        width: 100%;
        padding: 30px 25px; } }
    .interview_wrap .interview_contents .name_txt {
      padding-bottom: 30px; }
@icnlude mq(sm) {
  .interview_wrap .interview_contents .name_txt {
    width: 80%; } }
    .interview_wrap .interview_contents .txt_flex {
      display: flex;
      align-items: center; }
    .interview_wrap .interview_contents .saiyou_txt {
      padding-right: 18px; }
      .interview_wrap .interview_contents .saiyou_txt::after {
        content: "｜";
        position: absolute; }

.interview {
  margin-top: 120px; }
  @media (max-width: 767px) {
    .interview {
      margin-top: 60px; } }
  @media (min-width: 1081px) {
    .interview dt {
      font-size: 24px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .interview dt {
      font-size: 18px; } }
  @media (max-width: 767px) {
    .interview dt {
      font-size: 16px;
      padding-left: 3rem;
      text-indent: -3rem; } }
  .interview dt span {
    color: #284B35;
    padding-right: 8px; }
  .interview dd {
    border-bottom: solid 3px #AACCB6;
    margin-top: 20px;
    margin-bottom: 50px;
    padding-bottom: 30px; }
    @media (min-width: 1081px) {
      .interview dd {
        font-size: 18px;
        padding-left: 4.5rem; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .interview dd {
        padding-left: 4rem; } }
    @media (max-width: 767px) {
      .interview dd {
        border-bottom: solid 2px #AACCB6;
        margin-top: 15px;
        margin-bottom: 30px;
        padding-bottom: 20px; } }
  .interview ._cot01 {
    margin-bottom: 50px;
    padding: 30px;
    background-color: #f4f4f6; }
    .interview ._cot01 .interview__img {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%; }
      @media (min-width: 1081px) {
        .interview ._cot01 .interview__img {
          width: 75%; } }
      @media (max-width: 767px) {
        .interview ._cot01 .interview__img {
          flex-wrap: wrap;
          justify-content: center; } }
    .interview ._cot01 img {
      max-width: 320px; }
      @media (max-width: 767px) {
        .interview ._cot01 img {
          padding: 10px;
          max-width: 300px; } }
  .interview ._cot02 {
    border: solid 6px #559A6E;
    padding: 30px; }
    @media (max-width: 767px) {
      .interview ._cot02 {
        display: block;
        padding: 20px; } }
    .interview ._cot02 img {
      width: 320px; }
      @media (max-width: 767px) {
        .interview ._cot02 img {
          margin-bottom: 15px; } }
    .interview ._cot02 dd {
      padding: 0;
      border-bottom: none; }
  .interview ._cot03 {
    margin-top: 50px; }
    @media (max-width: 767px) {
      .interview ._cot03 {
        margin-top: 30px; } }

._interviewlist {
  display: flex;
  align-items: center; }

._interviewitem {
  padding: 0 10px; }
  @media (min-width: 1081px) {
    ._interviewitem {
      width: 33.333%; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    ._interviewitem {
      width: 50%; } }
  @media (max-width: 767px) {
    ._interviewitem {
      width: fit-content;
      margin: 0 auto 30px; } }
  ._interviewitem img {
    max-width: 320px; }
  ._interviewitem ._interviewctn {
    position: relative;
    z-index: 1;
    width: 90%;
    max-width: 534px;
    padding: 20px 25px;
    margin-top: -30px;
    border: solid 3px #559A6E;
    box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.16);
    background-color: #fff; }
    ._interviewitem ._interviewctn p {
      width: 85%;
      font-size: 20px; }
      @media (max-width: 767px) {
        ._interviewitem ._interviewctn p {
          font-size: 16px; } }
    ._interviewitem ._interviewctn a {
      width: 85%;
      text-align: right; }
      ._interviewitem ._interviewctn a::after {
        width: 40px;
        top: 35%;
        right: -45px; }
      ._interviewitem ._interviewctn a:hover::after {
        width: 50px;
        right: -55px; }

/*===================================
募集概要
===================================*/
.recruite_contents {
  display: flex;
  align-items: center;
  margin-bottom: 60px; }
  @media (max-width: 767px) {
    .recruite_contents {
      margin-bottom: 40px; } }
  .recruite_contents ._txt {
    padding: 5px 20px;
    border: solid 2px #000;
    margin-right: 15px; }

.recruite_table {
  width: 100%;
  letter-spacing: 2px; }
  .recruite_table th {
    width: 30%;
    font-size: 20px;
    border: solid 1px #000;
    background-color: #EEF5F0; }
    @media (min-width: 1081px) {
      .recruite_table th {
        padding: 20px 30px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .recruite_table th {
        padding: 20px; } }
    @media (max-width: 767px) {
      .recruite_table th {
        width: 100%;
        display: block;
        font-size: 16px;
        padding: 15px 10px;
        border-bottom: none; } }
  .recruite_table td {
    font-size: 18px;
    border: solid 1px #000; }
    @media (min-width: 1081px) {
      .recruite_table td {
        padding: 20px 30px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .recruite_table td {
        padding: 20px; } }
    @media (max-width: 767px) {
      .recruite_table td {
        display: block;
        font-size: 13px;
        padding: 15px 10px;
        border-bottom: none; } }
  @media (max-width: 767px) {
    .recruite_table tr:last-of-type td {
      border-bottom: solid 1px #000; } }

/*===================================
採用メッセージ
===================================*/
@media (min-width: 1081px) {
  .message_wrap .message_contents {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; } }
.message_wrap .message_contents img {
  margin-bottom: 20px; }
  @media (min-width: 1081px) {
    .message_wrap .message_contents img {
      margin-bottom: 0; } }
.message_wrap .message_contents div {
  width: 100%; }
  @media (min-width: 1081px) {
    .message_wrap .message_contents div {
      width: 60%; } }
.message_wrap .message_inner {
  position: relative;
  padding: 30px 0;
  border: solid 3px #559A6E; }
  @media (min-width: 1081px) {
    .message_wrap .message_inner {
      height: 200px;
      padding: 30px 0; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .message_wrap .message_inner {
      height: 220px; } }
  @media (max-width: 767px) {
    .message_wrap .message_inner {
      padding: 30px 15px; } }
  .message_wrap .message_inner ._cb01 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%); }
    @media (min-width: 1081px) {
      .message_wrap .message_inner ._cb01 {
        width: 85%; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .message_wrap .message_inner ._cb01 {
        width: 95%; } }
    @media (max-width: 767px) {
      .message_wrap .message_inner ._cb01 {
        position: unset;
        transform: unset; } }
    @media (min-width: 1081px) {
      .message_wrap .message_inner ._cb01 h4 {
        font-size: 23px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .message_wrap .message_inner ._cb01 h4 {
        font-size: 20px; } }
    @media (max-width: 767px) {
      .message_wrap .message_inner ._cb01 h4 {
        font-size: 17px; } }
    .message_wrap .message_inner ._cb01 h4::before {
      content: "●";
      font-size: 14px;
      margin-right: 8px; }
      @media (max-width: 767px) {
        .message_wrap .message_inner ._cb01 h4::before {
          font-size: 12px; } }
.message_wrap .message_inner:first-of-type, .message_wrap .message_inner:nth-of-type(2) {
  margin-bottom: 20px; }
@media (max-width: 767px) {
  .message_wrap .message_inner:not(:last-of-type) {
    margin-bottom: 20px; } }
.message_wrap p {
  line-height: 1.7; }
.message_wrap .table {
  overflow-x: scroll; }
.message_wrap table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap; }
  .message_wrap table th {
    width: 20%;
    padding: 0 20px;
    border: solid 2px #000; }
    @media (min-width: 1081px) {
      .message_wrap table th {
        font-size: 20px;
        padding: 0 40px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .message_wrap table th {
        font-size: 16px;
        width: 15%; } }
    @media (max-width: 767px) {
      .message_wrap table th {
        font-size: 14px; } }
  .message_wrap table td {
    font-size: 18px;
    font-weight: bold;
    padding: 10px 30px;
    border: solid 2px #000; }
    @media (min-width: 768px) and (max-width: 1081px) {
      .message_wrap table td {
        font-size: 16px; } }
    @media (max-width: 767px) {
      .message_wrap table td {
        font-size: 14px;
        padding: 10px 20px; } }
  .message_wrap table .data01 {
    width: 30%;
    text-align: center; }
    @media (min-width: 768px) and (max-width: 1081px) {
      .message_wrap table .data01 {
        width: 20%; } }
  .message_wrap table .data02 {
    width: 50%; }

/*===================================
施工実績
===================================*/
@media (min-width: 1081px) {
  .achievement_wrap {
    padding-top: 50px; } }

.achievemen_contents .ttl {
  margin-bottom: 30px; }
  @media (min-width: 768px) and (max-width: 1081px) {
    .achievemen_contents .ttl {
      margin-top: 60px; } }
  @media (max-width: 767px) {
    .achievemen_contents .ttl {
      margin-top: 30px; } }
  .achievemen_contents .ttl h3 {
    text-align: center;
    padding: 15px; }
    @media (min-width: 1081px) {
      .achievemen_contents .ttl h3 {
        font-size: 28px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .achievemen_contents .ttl h3 {
        font-size: 20px; } }
    @media (max-width: 767px) {
      .achievemen_contents .ttl h3 {
        padding: 10px; } }
.achievemen_contents .sabou {
  border: solid 4px #BF9D58; }
  @media (max-width: 767px) {
    .achievemen_contents .sabou {
      border: solid 2px #BF9D58; } }
.achievemen_contents .kasen {
  border: solid 4px #4eadea; }
  @media (max-width: 767px) {
    .achievemen_contents .kasen {
      border: solid 2px #4eadea; } }
.achievemen_contents .sinrin {
  border: solid 4px #5e813f; }
  @media (max-width: 767px) {
    .achievemen_contents .sinrin {
      border: solid 2px #5e813f; } }
.achievemen_contents .douro {
  border: solid 4px #4eadea; }
  @media (max-width: 767px) {
    .achievemen_contents .douro {
      border: solid 2px #4eadea; } }
.achievemen_contents .minkan {
  border: solid 4px #9B2739; }
  @media (max-width: 767px) {
    .achievemen_contents .minkan {
      border: solid 2px #9B2739; } }
.achievemen_contents .zyosetu {
  border: solid 4px #1D4077; }
  @media (max-width: 767px) {
    .achievemen_contents .zyosetu {
      border: solid 2px #1D4077; } }
.achievemen_contents .other {
  border: solid 4px #68349a; }
  @media (max-width: 767px) {
    .achievemen_contents .other {
      border: solid 2px #68349a; } }

.anchorlink_lst {
  display: flex;
  justify-content: unset;
  margin-bottom: 20px;
  flex-wrap: wrap; }
  @media (min-width: 1081px) {
    .anchorlink_lst {
      justify-content: space-between;
      flex-wrap: nowrap; } }
  @media (max-width: 767px) {
    .anchorlink_lst {
      margin-bottom: 0; } }
  .anchorlink_lst li {
    padding: 0 8px;
    margin: 10px;
    border: solid 2px #559A6E;
    border-radius: 5px;
    transition: .6s; }
    @media (min-width: 1081px) {
      .anchorlink_lst li {
        padding: 0;
        margin: 0; } }
    .anchorlink_lst li:hover {
      background-color: #559A6E;
      color: #fff; }
    .anchorlink_lst li a {
      font-size: 18px;
      font-weight: bold;
      padding: 5px 30px; }
      @media (max-width: 767px) {
        .anchorlink_lst li a {
          font-size: 14px; } }

.oil_anchorlink_lst {
  line-height: 2.5;
  justify-content: unset;
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .oil_anchorlink_lst {
      margin-bottom: 0; } }
  .oil_anchorlink_lst li {
    margin: 15px 10px;
    border: solid 2px #c3d24e; }
    .oil_anchorlink_lst li:hover {
      background-color: #c3d24e; }

.category_wrap {
  justify-content: center; }

@media (max-width: 767px) {
  .Category {
    justify-content: center; } }
.Category ._categoryinner {
  margin-top: 50px; }
  @media (max-width: 767px) {
    .Category ._categoryinner {
      width: 85%;
      margin-top: 30px; } }
.Category .category-name {
  top: auto; }
.Category img {
  padding-top: 60px; }
  @media (max-width: 767px) {
    .Category img {
      padding-top: 30px; } }

.category_ttl {
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 767px) {
    .category_ttl {
      display: block; } }

.category_tag {
  width: fit-content;
  padding: 5px 20px;
  border: solid 2px #000; }
  @media (max-width: 767px) {
    .category_tag {
      padding: 5px 15px; } }

.single_ttl {
  margin-left: 30px; }
  @media (min-width: 1081px) {
    .single_ttl {
      font-size: 28px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .single_ttl {
      font-size: 20px; } }
  @media (max-width: 767px) {
    .single_ttl {
      font-size: 16px;
      margin-left: 0;
      margin-top: 20px; } }

.single_contents {
  margin-top: 80px; }
  @media (max-width: 767px) {
    .single_contents {
      margin-top: 30px; } }

.hikaku_img {
  margin: 30px auto; }
  .hikaku_img img {
    width: 100%;
    max-width: 480px; }
  .hikaku_img .single_inner {
    position: relative; }
    .hikaku_img .single_inner ._txt {
      position: absolute;
      bottom: 0;
      font-size: 25px;
      letter-spacing: 2px;
      padding: 10px;
      width: 100%;
      background-color: #333; }
      @media (max-width: 767px) {
        .hikaku_img .single_inner ._txt {
          font-size: 13px;
          padding: 5px; } }
  @media (min-width: 1081px) {
    .hikaku_img .arrow_icon {
      font-size: 50px;
      padding: 0 40px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .hikaku_img .arrow_icon {
      font-size: 30px;
      padding: 0 30px; } }
  @media (max-width: 767px) {
    .hikaku_img .arrow_icon {
      padding: 0 6px; } }

.single_inner__other {
  display: flex;
  align-items: center;
  margin: 50px auto 0; }
  @media (max-width: 767px) {
    .single_inner__other {
      margin: 30px auto 0; } }

.landscape_link {
  width: 20%;
  padding: 0 15px;
  margin-bottom: 10px; }
  @media (max-width: 767px) {
    .landscape_link {
      width: 33.333%;
      padding: 0 5px; } }

@media (min-width: 1081px) {
  .landscape_img {
    max-width: 160px; } }

.remarkscolumn_txt__01 {
  width: 30%;
  border: solid 2px #7d7d7d;
  padding: 50px;
  color: #7d7d7d; }
  @media (max-width: 767px) {
    .remarkscolumn_txt__01 {
      padding: 20px; } }

.remarkscolumn_txt__02 {
  width: 70%;
  border: solid 2px #7d7d7d;
  border-left: none;
  padding: 50px;
  color: #7d7d7d; }
  @media (max-width: 767px) {
    .remarkscolumn_txt__02 {
      padding: 20px; } }

/*===================================
採用情報
===================================*/
.recruit_txt {
  font-size: 18px; }
  @media (max-width: 767px) {
    .recruit_txt {
      font-size: 15px; } }

.recruit_head__wrap {
  margin: 40px auto 0;
  width: 100%;
  max-width: 840px; }

.recruit_inner {
  border-right: solid 5px #559A6E; }

.recruit_list {
  padding: 35px 0; }

.recruit_ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: max-content; }

.recruit_link {
  padding: 10px; }
  .recruit_link .category-name {
    font-size: 13px;
    border: solid 2px #000;
    padding: 3px 20px;
    width: fit-content; }
    @media (min-width: 1081px) {
      .recruit_link .category-name {
        font-size: 16px; } }
    @media (max-width: 767px) {
      .recruit_link .category-name {
        margin-bottom: 10px;
        padding: 3px 15px; } }
  .recruit_link ._ttl {
    margin-left: 15px;
    font-size: 15px; }
    @media (min-width: 1081px) {
      .recruit_link ._ttl {
        font-size: 20px; } }
    @media (max-width: 767px) {
      .recruit_link ._ttl {
        margin-left: 0; } }

@media (max-width: 767px) {
  .recruit_btn__pc {
    display: none; } }

.recruit_btn__sp {
  display: none; }
  @media (max-width: 767px) {
    .recruit_btn__sp {
      display: flex;
      margin: 0 auto; } }

/*===================================
会社案内
===================================*/
.overview_wrap {
  padding: 20px;
  background-color: #f4f4f6; }
  @media (max-width: 767px) {
    .overview_wrap {
      padding: 10px; } }

.history_wrap, .qualified-persons_wrap {
  padding: 20px;
  background-color: #EFF5F1; }
  @media (max-width: 767px) {
    .history_wrap, .qualified-persons_wrap {
      padding: 10px; } }

.scroll {
  overflow-x: scroll; }

.history_img {
  display: flex;
  justify-content: center;
  margin: 50px auto 0;
  padding: 0 10px; }
  @media (min-width: 1081px) {
    .history_img {
      display: block;
      margin: 0px;
      width: 40%; } }
  @media (max-width: 767px) {
    .history_img {
      flex-wrap: wrap; } }
  .history_img img {
    padding: 10px; }
    @media (min-width: 768px) and (max-width: 1081px) {
      .history_img img {
        width: 48%; } }

@media (max-width: 767px) {
  .company_txt {
    margin-bottom: 20px; } }

.company_01 {
  background-color: #f4f4f6;
  padding: 40px;
  width: 100%; }
  @media (min-width: 1081px) {
    .company_01 {
      width: 750px; } }
  .company_01 p {
    margin-bottom: 20px; }

.company_02 img {
  margin-top: -30px;
  width: 400px; }
  @media (min-width: 1081px) {
    .company_02 img {
      margin-left: -60px;
      margin-top: 0; } }

.company_03 {
  width: 100%; }
  @media (min-width: 1081px) {
    .company_03 {
      width: 60%; } }
  .company_03 tr {
    border-bottom: solid 2px #000; }
  .company_03 th {
    width: 20%;
    text-align: left;
    font-size: 18px;
    padding: 15px;
    vertical-align: baseline; }
    @media (max-width: 767px) {
      .company_03 th {
        width: 100%;
        padding: 5px;
        display: block; } }
  .company_03 td {
    padding: 15px; }
    @media (max-width: 767px) {
      .company_03 td {
        width: 100%;
        padding: 5px;
        display: block; } }
    .company_03 td ul {
      padding-left: 1.5em;
      text-indent: -1.3em; }
      .company_03 td ul li {
        margin-bottom: 8px; }

.company_04 {
  width: 100%;
  margin: 50px auto 0;
  position: relative; }
  @media (min-width: 1081px) {
    .company_04 {
      width: 80%; } }
  .company_04::after {
    content: '';
    width: 1px;
    top: 0.95rem;
    left: 20%;
    height: 93.5%;
    position: absolute;
    z-index: 1;
    background: #000; }
    @media (min-width: 1081px) {
      .company_04::after {
        left: 15%; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .company_04::after {
        left: 20%; } }
    @media (max-width: 767px) {
      .company_04::after {
        left: 28%;
        height: 91.5%; } }
  .company_04 .row {
    margin-bottom: 50px;
    padding-bottom: 30px;
    border-bottom: solid 1px #D4D5D8; }
    .company_04 .row::after {
      content: '';
      clear: both;
      display: block; }
    .company_04 .row .date {
      line-height: 1;
      color: #559A6E;
      position: relative;
      float: left;
      letter-spacing: 1px;
      width: fit-content;
      margin: 0 auto;
      text-align: center;
      font-family: "M PLUS 1p", sans-serif; }
      @media (min-width: 1081px) {
        .company_04 .row .date {
          font-size: 38px; } }
      @media (min-width: 768px) and (max-width: 1081px) {
        .company_04 .row .date {
          font-size: 33px; } }
      @media (max-width: 767px) {
        .company_04 .row .date {
          font-size: 24px;
          width: 28%; } }
      .company_04 .row .date span {
        display: block;
        font-size: 16px;
        letter-spacing: 0.5px; }
        @media (max-width: 767px) {
          .company_04 .row .date span {
            font-size: 13px; } }
    .company_04 .row .content {
      float: right;
      display: flex;
      width: 80%;
      align-items: baseline;
      position: relative;
      margin-bottom: 20px;
      padding-top: 8px; }
      @media (min-width: 1081px) {
        .company_04 .row .content {
          width: 85%; } }
      @media (max-width: 767px) {
        .company_04 .row .content {
          display: block;
          width: 70%;
          padding-left: 8px; } }
      .company_04 .row .content::before {
        content: '';
        height: 2.1rem;
        width: 2.1rem;
        border-radius: 50%;
        background: #000;
        position: absolute;
        top: 0.85rem;
        left: -0.95rem;
        z-index: 2; }
        @media (max-width: 767px) {
          .company_04 .row .content::before {
            height: 1.1rem;
            width: 1.1rem;
            top: 0.95rem;
            left: -1.2rem; } }
      .company_04 .row .content .left {
        min-width: 1.85rem;
        text-align: center;
        font-size: 18px;
        font-weight: bold;
        line-height: 1;
        letter-spacing: 0;
        margin-left: 30px;
        margin-top: 3px; }
        @media (max-width: 767px) {
          .company_04 .row .content .left {
            text-align: left;
            margin-left: 0;
            margin-top: 0;
            margin-bottom: 8px; } }
      .company_04 .row .content .right {
        font-size: 18px;
        font-weight: bold;
        line-height: 1;
        letter-spacing: 0;
        margin-left: 15px; }
        @media (max-width: 767px) {
          .company_04 .row .content .right {
            font-size: 16px;
            line-height: 1.6;
            margin-left: 0; } }
  .company_04 .row:last-of-type {
    border-bottom: none; }

.company_05 h4 {
  padding: 15px 20px;
  text-align: center;
  font-size: 18px;
  background-color: #ADCDBA;
  border: solid 1px #000; }
.company_05 ul {
  padding: 30px 25px;
  background-color: #f4f4f6; }
  @media (max-width: 767px) {
    .company_05 ul {
      margin-bottom: 20px;
      padding: 30px 10px; } }
  .company_05 ul li {
    width: fit-content;
    border-bottom: solid 1px #000;
    margin-bottom: 5px;
    font-size: 15px; }

.company_06 {
  justify-content: space-around; }
  @media (max-width: 767px) {
    .company_06 {
      justify-content: center; } }
  .company_06 .company_img__pc {
    display: block; }
    @media (max-width: 767px) {
      .company_06 .company_img__pc {
        display: none; } }
  .company_06 .company_img__sp {
    display: none; }
    @media (max-width: 767px) {
      .company_06 .company_img__sp {
        display: block; } }
  @media (max-width: 767px) {
    .company_06 .detail_link {
      margin: 24px auto 0; } }

.company_08 h4 {
  font-size: 25px;
  text-align: center; }
.company_08 .img_wrap {
  max-width: 350px; }
  @media (min-width: 1081px) {
    .company_08 .img_wrap {
      max-width: 480px; } }
.company_08 .table_wrap01 {
  padding: 20px 20px 50px;
  background-color: #000;
  margin-bottom: 20px; }
.company_08 .table_wrap02 {
  padding: 20px 20px 50px;
  background-color: #f4f4f6; }
.company_08 .table_wrap03 {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap; }
  .company_08 .table_wrap03 th {
    width: 30%;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    padding: 10px 30px;
    border: solid 2px #000; }
    @media (max-width: 767px) {
      .company_08 .table_wrap03 th {
        font-size: 16px; } }
  .company_08 .table_wrap03 td {
    width: 50%;
    font-size: 18px;
    font-weight: bold;
    padding: 10px 30px;
    border: solid 2px #000; }
    @media (max-width: 767px) {
      .company_08 .table_wrap03 td {
        font-size: 16px; } }
.company_08 .table_wrap04 td {
  width: 30%; }
.company_08 .table {
  width: 100%; }
  .company_08 .table th {
    width: 40%;
    text-align: left;
    font-size: 15px;
    padding: 15px;
    vertical-align: baseline; }
    @media (min-width: 1081px) {
      .company_08 .table th {
        width: 35%;
        font-size: 18px; } }
  .company_08 .table td {
    padding: 15px; }
.company_08 .table_01 tr {
  border-bottom: solid 1px #fff; }
.company_08 .table_01 th, .company_08 .table_01 td {
  color: #fff; }
.company_08 .table_02 tr {
  border-bottom: solid 1px #000; }

.company_09 ul {
  padding: 30px 5px; }
  @media (min-width: 1081px) {
    .company_09 ul {
      padding: 30px 50px; } }
  .company_09 ul li {
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px #000;
    margin-bottom: 5px;
    font-size: 18px;
    width: 340px; }
    @media (max-width: 767px) {
      .company_09 ul li {
        font-size: 16px;
        width: 310px; } }

/*===================================
方針・十訓
===================================*/
.policy_01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%); }

.policy_02 ul {
  display: inline-flex;
  justify-content: center;
  flex-direction: column; }
  .policy_02 ul li {
    text-align: left;
    font-size: 15px;
    letter-spacing: -0.5px; }

.policy_03 {
  padding: 30px;
  background-color: #f4f4f6; }
  @media (max-width: 767px) {
    .policy_03 {
      padding: 15px; } }
  .policy_03 li {
    padding-left: 3rem;
    text-indent: -3rem; }

.policy_04 {
  padding: 30px; }
  @media (max-width: 767px) {
    .policy_04 {
      padding: 15px; } }
  .policy_04 li {
    padding-left: 3rem;
    text-indent: -3rem; }

.policy_05 {
  width: 100%;
  padding: 35px;
  background-color: #f4f4f6; }
  @media (min-width: 1081px) {
    .policy_05 {
      width: 50%; } }
  @media (max-width: 767px) {
    .policy_05 {
      padding: 15px; } }
  .policy_05 ul {
    line-height: 1.6; }
    .policy_05 ul li {
      padding-left: 3rem;
      text-indent: -3rem; }

.policy_06 {
  width: 100%;
  padding: 35px;
  background-color: #EEF5F0; }
  @media (min-width: 1081px) {
    .policy_06 {
      width: 50%; } }
  @media (max-width: 767px) {
    .policy_06 {
      padding: 15px; } }
  .policy_06 ul {
    line-height: 1.6; }
    .policy_06 ul li {
      padding-left: 3rem;
      text-indent: -3rem; }

/*===================================
SDGs取り組み
===================================*/
.sdgs_txt {
  width: fit-content;
  line-height: 1.7; }

@media (max-width: 767px) {
  .sdgs_hd04 {
    letter-spacing: -0.5px; } }

.SDGs_01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 90%; }

.SDGs_02 {
  padding: 30px;
  background-color: #f4f4f6; }
  @media (max-width: 767px) {
    .SDGs_02 {
      padding: 15px; } }

.SDGs_03 {
  width: 100%;
  margin: 0 auto;
  justify-content: space-around; }
  @media (min-width: 1081px) {
    .SDGs_03 {
      width: 90%; } }
  @media (max-width: 767px) {
    .SDGs_03 {
      justify-content: space-between; } }
  @media (max-width: 767px) {
    .SDGs_03 .SDGs_icon {
      width: 75%;
      max-width: 250px; } }

.SDGs_link {
  margin: 35px 15px;
  padding: 16px; }
  @media (max-width: 767px) {
    .SDGs_link {
      margin: 15px 10px; } }

/*===================================
業務案内
===================================*/
.business_wrap {
  flex-wrap: wrap; }
  @media (min-width: 1081px) {
    .business_wrap {
      flex-wrap: nowrap; } }

.business_img {
  width: 100%;
  max-width: 500px; }

.business_head__txt {
  font-size: 25px; }
  @media (min-width: 1081px) {
    .business_head__txt {
      font-size: 32px; } }

.business_txt {
  font-size: 22px; }
  @media (max-width: 767px) {
    .business_txt {
      font-size: 15px; } }

.business_span {
  font-size: 16px; }
  @media (max-width: 767px) {
    .business_span {
      font-size: 14px; } }

.business_small {
  display: block;
  margin-top: -20px; }

.demolition_img {
  width: 80%;
  margin: 0 auto; }
  @media (min-width: 1081px) {
    .demolition_img {
      width: 100%; } }

.business_00 {
  margin-bottom: 15px;
  padding: 10px;
  height: 400px;
  width: 300px; }
  @media (min-width: 1081px) {
    .business_00 {
      width: auto; } }
  .business_00 h4 {
    font-size: 20px; }
  .business_00 p {
    font-size: 12.5px;
    line-height: 1.7; }
  .business_00 small {
    position: absolute;
    bottom: 10px; }

.business_01 {
  background-color: #000;
  color: #fff; }

.business_02 {
  background-color: #f4f4f6; }

.business_03 {
  background-color: #AACCB6; }

.business_04 {
  background-color: #4eadea; }

.business_05 {
  margin-top: 100px;
  position: relative;
  padding-right: 30px; }
  @media (min-width: 1081px) {
    .business_05 {
      padding-right: 30px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .business_05 {
      padding-right: 20px; } }
  @media (max-width: 767px) {
    .business_05 {
      margin-top: 0;
      padding: 20px 10px; } }
  .business_05::before {
    background-color: #f4f4f6;
    content: "";
    position: absolute;
    top: 20%;
    left: -30%;
    bottom: -50px;
    right: 0;
    z-index: -1; }
    @media (max-width: 767px) {
      .business_05::before {
        left: 0;
        bottom: 0; } }

.business_06 {
  position: relative;
  margin-top: 20rem; }
  @media (min-width: 1081px) {
    .business_06 {
      padding-right: 30px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .business_06 {
      padding-right: 20px; } }
  @media (max-width: 767px) {
    .business_06 {
      margin-top: 25px;
      padding: 20px 10px; } }
  .business_06::before {
    background-color: #f4f4f6;
    content: "";
    position: absolute;
    top: -15%;
    left: -30%;
    bottom: -30px;
    right: 0;
    z-index: -1; }
    @media (max-width: 767px) {
      .business_06::before {
        top: -5%;
        left: 0;
        bottom: 0; } }

.business_07 {
  padding: 15px 7px;
  border: solid 3px #559A6E; }
  @media (min-width: 1081px) {
    .business_07 {
      padding: 30px; } }
  .business_07 .tel_span {
    display: none; }
    @media (max-width: 767px) {
      .business_07 .tel_span {
        display: block; } }
  @media (min-width: 1081px) {
    .business_07 h4 {
      font-size: 25px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .business_07 h4 {
      font-size: 20px; } }
  @media (max-width: 767px) {
    .business_07 h4 {
      font-size: 18px; } }
  .business_07 ul {
    display: inline-flex;
    justify-content: center;
    flex-direction: column; }
    .business_07 ul li {
      text-align: left;
      font-size: 15px; }

/*===================================
伐採事業
===================================*/
.logging_00 {
  content: "";
  background-image: url(/wp-content/uploads/2024/03/business01.png);
  background-size: cover;
  background-position: center;
  padding: 40px;
  height: 400px;
  position: relative; }
  @media (max-width: 767px) {
    .logging_00 {
      background-position: left;
      height: 300px; } }
  .logging_00 div {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%); }
    @media (min-width: 1081px) {
      .logging_00 div h3 {
        font-size: 38px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .logging_00 div h3 {
        font-size: 30px; } }
    @media (max-width: 767px) {
      .logging_00 div h3 {
        font-size: 24px; } }
  .logging_00 .free_txt {
    border: solid 2px #000;
    padding: 10px 20px;
    width: fit-content;
    background-color: #ff0000;
    color: #fff; }
    @media (min-width: 1081px) {
      .logging_00 .free_txt {
        font-size: 33px;
        margin: 45px auto 0; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .logging_00 .free_txt {
        font-size: 28px;
        margin: 35px auto 0; } }
    @media (max-width: 767px) {
      .logging_00 .free_txt {
        font-size: 20px;
        margin: 20px auto 0; } }

.logging_01 {
  position: relative; }
  .logging_01::before {
    background-color: #EFF5F1;
    content: "";
    position: absolute;
    top: 35%;
    left: 0;
    bottom: -30px;
    right: 0;
    z-index: -1; }
    @media (max-width: 767px) {
      .logging_01::before {
        top: 0;
        bottom: -15px; } }
  @media (max-width: 767px) {
    .logging_01 {
      padding: 0 30px;
      flex-wrap: wrap; } }

@media (min-width: 1081px) {
  .logging_02 {
    margin-top: 20rem; } }
@media (min-width: 768px) and (max-width: 1081px) {
  .logging_02 {
    margin-top: 10rem; } }
@media (max-width: 767px) {
  .logging_02 {
    padding: 10px; } }

.logging_03 img {
  width: 100%;
  margin: 0 auto; }
  @media (min-width: 1081px) {
    .logging_03 img {
      max-width: 500px; } }
  @media (max-width: 767px) {
    .logging_03 img {
      max-width: 500px; } }

.logging_04 {
  padding: 30px;
  background-color: #EEF5F0; }
  @media (max-width: 767px) {
    .logging_04 .logging_wrap {
      flex-wrap: wrap; } }
  @media (max-width: 767px) {
    .logging_04 .logging_contents {
      width: 100%;
      justify-content: center;
      display: block !important; } }
  .logging_04 .logging_contents:not(:last-of-type)::after {
    content: "▶︎";
    font-size: 23px;
    margin: 0 10px; }
    @media (max-width: 767px) {
      .logging_04 .logging_contents:not(:last-of-type)::after {
        content: "▼";
        display: block;
        margin: 10px auto;
        width: fit-content; } }
  .logging_04 .logging_inner {
    padding: 10px;
    background-color: #fff; }
    @media (min-width: 1081px) {
      .logging_04 .logging_inner {
        width: 220px; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .logging_04 .logging_inner {
        width: 100%;
        height: 216px; } }
  .logging_04 .logging_txt {
    font-size: 18px;
    padding: 5px 15px;
    border: solid 2px #000;
    width: fit-content; }
  .logging_04 h4 {
    font-size: 15px; }
    @media (min-width: 1081px) {
      .logging_04 h4 {
        font-size: 20px; } }
  .logging_04 img {
    width: 100px;
    margin: 20px auto 0; }

.logging_05 {
  margin-bottom: 25px; }
  .logging_05 img {
    width: 100%;
    padding: 0 10px; }
    @media (max-width: 767px) {
      .logging_05 img {
        max-width: 500px;
        margin: 0 auto; } }
  .logging_05 p {
    font-size: 20px; }
    @media (max-width: 767px) {
      .logging_05 p {
        font-size: 18px; } }

.logging_06 {
  padding: 30px;
  background-color: #f4f4f6; }

.logging_07 {
  padding: 0 30px;
  position: relative; }
  @media (max-width: 767px) {
    .logging_07 {
      flex-wrap: wrap; } }
  .logging_07::before {
    background-color: #f4f4f6;
    content: "";
    position: absolute;
    left: 0;
    bottom: -30px;
    right: 0;
    z-index: -1; }
    @media (min-width: 1081px) {
      .logging_07::before {
        top: 35%; } }
    @media (min-width: 768px) and (max-width: 1081px) {
      .logging_07::before {
        top: 20%; } }
    @media (max-width: 767px) {
      .logging_07::before {
        top: -20px;
        bottom: -10px; } }
  @media (min-width: 1081px) {
    .logging_07 h3 {
      font-size: 22px; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .logging_07 h3 {
      font-size: 20px; } }
  @media (max-width: 767px) {
    .logging_07 h3 {
      font-size: 16px; } }

.logging_08 {
  align-items: stretch; }
  @media (max-width: 767px) {
    .logging_08 {
      flex-wrap: wrap; } }
  .logging_08 .chip_wrap {
    max-width: 450px;
    background-color: #EEF5F0; }
  .logging_08 .chip_contents {
    padding: 15px; }
    .logging_08 .chip_contents h5 {
      font-size: 20px;
      padding: 10px 0;
      margin: 0; }

@media (min-width: 1081px) {
  .logging_link {
    font-size: 40px; } }
@media (min-width: 768px) and (max-width: 1081px) {
  .logging_link {
    font-size: 30px; } }
@media (max-width: 767px) {
  .logging_link {
    font-size: 15px; } }

.logging__hd04 {
  font-size: 28px; }

/*===================================
石油事業
===================================*/
#introduction h4, #membercard h4, #access h4 {
  font-size: 25px; }
  @media (max-width: 767px) {
    #introduction h4, #membercard h4, #access h4 {
      font-size: 15px; } }

.oil_head {
  padding: 8px;
  background-color: #fff; }

.oil_hd03__01 {
  border-left: solid 8px #c3d24e;
  width: fit-content;
  margin: 0 auto;
  padding-left: 13px; }

.oil_hd03__02 {
  padding-bottom: 5px;
  border-bottom: solid 3px #8ed973; }

.oil_list time {
  margin-right: 20px; }
.oil_list div {
  display: block; }
  @media (min-width: 1081px) {
    .oil_list div {
      display: flex; } }

.oil_txt {
  font-size: 23px;
  background-color: #c3d24e;
  padding: 20px; }
  @media (max-width: 767px) {
    .oil_txt {
      font-size: 15px;
      padding: 10px; } }

.oil_link {
  margin: 20px auto 0; }

.oil_01 {
  padding: 15px;
  border: solid 2px #000;
  background-color: #f2f2f2; }
  @media (min-width: 1081px) {
    .oil_01 {
      padding: 22px; } }

.oil_02 {
  width: 100%;
  margin: 0 auto; }
  @media (min-width: 1081px) {
    .oil_02 {
      width: 85%; } }
  .oil_02 table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap; }
    .oil_02 table th {
      width: 30%;
      text-align: center;
      font-size: 18px;
      font-weight: bold;
      padding: 10px 30px;
      border: solid 2px #000;
      background-color: #c3d24e; }
      @media (max-width: 767px) {
        .oil_02 table th {
          display: block;
          width: 100%;
          border-bottom: none; } }
    .oil_02 table td {
      font-size: 18px;
      font-weight: bold;
      padding: 10px 30px;
      border: solid 2px #000;
      text-align: center; }
      @media (max-width: 767px) {
        .oil_02 table td {
          display: block;
          border-bottom: none; } }
    @media (max-width: 767px) {
      .oil_02 table tr:last-of-type td {
        border-bottom: solid 2px #000; } }

.oil_03 h4 {
  font-size: 25px; }
  @media (max-width: 767px) {
    .oil_03 h4 {
      font-size: 20px; } }
  .oil_03 h4 span {
    font-size: 40px; }
    @media (max-width: 767px) {
      .oil_03 h4 span {
        font-size: 35px; } }

.oil_04_wrap {
  background-color: #c3d24e;
  padding: 30px 0; }

.oil_04_content {
  width: 95%;
  margin: 0 auto; }
  @media (min-width: 1081px) {
    .oil_04_content {
      width: 90%; } }

.oil_04 {
  border: solid 2px #8ed973;
  padding: 10px;
  background-color: #f2f2f2; }
  @media (min-width: 1081px) {
    .oil_04 {
      width: 19%; } }
  @media (min-width: 768px) and (max-width: 1081px) {
    .oil_04 {
      width: 30%;
      margin-bottom: 20px; } }
  @media (max-width: 767px) {
    .oil_04 {
      width: 100%;
      margin-bottom: 10px; } }
  .oil_04 .support_img__contents {
    position: relative;
    height: 150px; }
    .oil_04 .support_img__contents img {
      width: 80%;
      margin: 0 auto;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%); }
      @media (max-width: 767px) {
        .oil_04 .support_img__contents img {
          width: 150px; } }
    .oil_04 .support_img__contents .img_01 {
      width: 55%; }
      @media (max-width: 767px) {
        .oil_04 .support_img__contents .img_01 {
          width: 100px; } }
    @media (max-width: 767px) {
      .oil_04 .support_img__contents .img_02 {
        width: 250px; } }
  .oil_04 h5 {
    font-size: 20px;
    margin-bottom: 15px; }
  .oil_04 a {
    display: block;
    width: fit-content;
    margin: 0 auto;
    padding: 8px 15px;
    border: solid 2px #000;
    background-color: #000;
    color: #fff;
    transition: 0.5s; }
    .oil_04 a:hover {
      background-color: #fff;
      color: #000; }

.oil_05 a {
  display: block;
  font-size: 16px;
  width: 80%;
  padding: 15px 30px;
  background-color: #bee4a8;
  border: solid 2px #000;
  color: #000;
  transition: 0.5s; }
  .oil_05 a:hover {
    opacity: 0.5; }
  @media (min-width: 1081px) {
    .oil_05 a {
      font-size: 22px;
      width: 75%; } }

.oil_06::before {
  background-color: #f4f4f6;
  content: "";
  position: absolute;
  top: 30%;
  bottom: -30px;
  left: 0;
  right: 20%;
  z-index: -1; }
  @media (max-width: 767px) {
    .oil_06::before {
      top: -5%;
      left: 0;
      bottom: 0; } }
.oil_06 .oil_06_txt {
  width: 100%; }
  @media (min-width: 1081px) {
    .oil_06 .oil_06_txt {
      width: 85%; } }

.oil_08 .insurance_img {
  max-width: 250px; }
  @media (max-width: 767px) {
    .oil_08 .insurance_img {
      max-width: 150px; } }

.oil_09 {
  width: 100%;
  margin: 0 auto; }
  @media (min-width: 1081px) {
    .oil_09 {
      width: 75%; } }
  .oil_09 div {
    width: 50%; }
    @media (max-width: 767px) {
      .oil_09 div {
        width: 100%; } }

.oil_09__oth {
  flex-wrap: wrap-reverse; }

.oil_10 {
  width: 90%;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .oil_10 {
      width: 100%; } }

.map {
  width: 100%; }
  @media (min-width: 1081px) {
    .map {
      width: 50%; } }
  .map iframe {
    width: 100%;
    height: 225px;
    margin: 0 auto; }
