@charset "UTF-8";
/*--------------------------------------------------------------------
=== [レスポンシブ] ====================================
 -------------------------------------------------------------------*/
.forSp {
  display: none;
}
.forPc {
  display: block;
}
@media (max-width: 1440px) {
  #visitArea {
    margin-bottom: 420px;
  }
}
@media (max-width: 1280px) {
  #btm_header h1 {
    font-size: 40px;
  }
  .section_ttl_wrap .section_ttl h2 {
    font-size: 64px;
  }
  .mainLead {
    font-size: 32px;
  }
  #btm_contact .btm_contact_ttl h2 {
    font-size: 40px;
  }
  /*=== [plant] ===*/
  #plantsArea .plants_map_section {
    margin-top: 140px;
  }
  /*=== [spot] ===*/
  #spotArea .spot_contents {
    margin-top: 100px;
  }
  /*=============== [privacy] ===============*/
  #policyArea {
    padding: 0 0 60px;
  }
}
@media (max-width: 1130px) {
  header {
    margin: 0 auto;
    padding: min(4vw, 16px) min(2vw, 8px);
  }
}
@media (max-width: 800px) {
  :root {
    /* font-size scale */
    --fs-xxs: 2.5vw;
    --fs-xs: 3vw;
    --fs-s: 3.5vw;
    --fs-m: 4vw;
    --fs-l: 4.5vw;
    --fs-xl: 5vw;
    --fs-xxl: 6vw;
  }
  .inner {
    margin: 0 6vw;
  }
  .forSp {
    display: block;
  }
  .forPc {
    display: none;
  }
  #wrapper {
    overflow: hidden;
  }
  /*=== [header] ===*/
  header {
    padding: 0;
  }
  #header_gnav {
    display: none;
  }
  #header_logo img {
    width: 20vw;
  }
  #header_logo .ep img {
    width: 25vw;
  }
  header #header_logo {
    padding: min(2vw, 8px) min(4vw, 16px);
  }
  header #header_logo .ep:after {
    height: 8vw;
  }
  .sp_menu_btn {
    width: 12vw;
    height: 12vw;
    border: none;
    position: fixed;
    top: 0;
    right: 0;
    flex-shrink: 0;
    cursor: pointer;
    z-index: 9999;
  }
  .sp_menu_btn.is-open {
    background-color: var(--c-bl01);
  }
  .sp_menu_btn::before,
  .sp_menu_btn::after,
  .sp_menu_btn span {
    content: "";
    position: absolute;
    left: 50%;
    width: 15px;
    height: 2px;
    background: #333;
    transform: translateX(-50%);
    transition: 0.3s;
  }
  .sp_menu_btn::before {
    top: 4.75vw;
  }
  .sp_menu_btn span {
    top: 5.75vw;
  }
  .sp_menu_btn::after {
    top: 6.75vw;
  }
  .sp_menu_btn.is-open::before {
    top: 5.75vw;
    transform: translateX(-50%) rotate(45deg);
    background: #fff;
  }
  .sp_menu_btn.is-open span {
    opacity: 0;
  }
  .sp_menu_btn.is-open::after {
    top: 5.75vw;
    transform: translateX(-50%) rotate(-45deg);
    background: #fff;
  }
  #sp_menu {
    position: fixed;
    width: 100%;
    top: 12vw;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--c-bl01);
    color: #fff;
    padding: 6vw 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  #sp_menu a {
    color: #fff;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  /*=== [footer] ===*/
  footer {
    padding: 12vw 0;
  }
  footer .footer_logo {
    width: 27vw;
    margin: 0 auto 4vw;
  }
  footer .footer_name {
    font-size: 8vw;
  }
  footer .footer_info {
    margin-bottom: 8vw;
  }
  .footer_menu_top {
    padding-bottom: 4vw;
  }
  .footer_menu_top ul {
    flex-direction: column;
    gap: 4vw;
  }
  .footer_menu_top ul li {
    width: 100% !important;
  }
  .footer_logo span {
    font-size: 3.5vw;
    margin-bottom: 5vw;
  }
  .footer_address {
    font-size: 3.5vw;
  }
  .footer_menu_mid {
    display: block;
    padding: 0;
  }
  .footer_menu_mid > div {
    width: 100%;
    padding: 4vw 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .footer_menu_btm {
    padding: 4vw 0 0 0;
  }
  .footer_menu_btm ul {
    gap: 2vw 0;
    flex-direction: column;
  }
  .footer_menu_btm ul li {
    width: 100%;
  }
  .footer_menu_mid > div > a {
    position: relative;
    display: block;
    padding-right: 1.5em;
    cursor: pointer;
  }
  .footer_menu_mid > div > a::before,
  .footer_menu_mid > div > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 10px !important;
    height: 2px !important;
    background: currentColor;
    transform: translateY(-50%);
    transition: 0.3s;
    background-image: none !important;
  }
  .footer_menu_mid > div > a::after {
    transform: translateY(-50%) rotate(90deg);
  }
  .footer_menu_mid > div.is-open > a::after {
    opacity: 0;
  }
  .back_to_top {
    right: 16px;
    bottom: 16px;
    width: 48px;
    height: 48px;
  }
  .back_to_top svg {
    width: 18px;
    height: 18px;
  }
  /*=== [Parts] ===*/
  .btn_more a {
    gap: 2.5vw;
    padding: 2vw 5vw 2vw 2.5vw;
    font-size: var(--fs-s);
  }
  .btn_more a:before {
    width: 4.25vw;
    height: 4.25vw;
  }
  .mainLead {
    font-size: 6vw;
    margin-bottom: 6vw;
  }
  .mainLead br {
    display: none;
  }
  .leadTxt {
    margin-bottom: 6vw;
  }
  /*--------------------------------------------------------------------
=== [TOP] ====================================
 -------------------------------------------------------------------*/
  .section_ttl {
    margin-bottom: 6vw;
  }
  .section_ttl h2 {
    font-size: 10vw;
  }
  .section_ttl .section_ttl_jp {
    font-size: 6vw;
  }
  /*=== [mvArea] ===*/
  #mvArea {
    padding-top: 0;
    position: relative;
    height: 130vw;
  }
  #mvArea .inner {
    height: 110vw;
    top: 0;
    position: absolute;
  }
  #mvArea h1 {
    font-size: 8vw;
    bottom: inherit;
    top: 20vw;
    letter-spacing: 0.03em;
  }
  #mvArea h1 span {
    font-size: 3.5vw;
    letter-spacing: 0.03em;
    margin-bottom: 2vw;
  }
  #mvArea .picture {
    height: 60vw;
    position: inherit;
    top: 48vw;
  }
  #mvArea .mvArea_catch {
    width: 60vw;
    position: absolute;
    bottom: -20vw;
  }
  /*=== [newsArea] ===*/
  #newsArea {
    margin-top: 10vw;
    margin-bottom: 20vw;
    height: auto;
  }
  #newsArea .inner {
    display: block;
  }
  #newsArea .section_ttl {
    position: unset;
  }
  #newsArea .news_box {
    width: 100%;
    padding: 6vw 6vw 12vw;
    position: unset;
  }
  #newsArea .news_box li {
    display: block;
    padding: 5vw 0;
  }
  #newsArea .news_box li:first-child {
    padding-top: 0;
  }
  /*=== [businessArea] ===*/
  #businessArea {
    padding-bottom: 0;
    margin-bottom: 20vw;
  }
  #businessArea .business_header {
    display: block;
  }
  #businessArea .business_header .picture {
    height: 50vw;
    width: 100%;
  }
  #businessArea .business_header .inner {
    position: unset;
    text-align: left;
  }
  #businessArea .section_ttl {
    margin: 12vw 0;
  }
  #businessArea .business_contents .inner {
    padding-top: 0;
  }
  #businessArea .business_contents {
    margin: 0;
  }

  #businessArea ul {
    margin-top: 12vw;
    gap: 0;
  }
  #businessArea .slick-slide {
    margin: 0 1.5vw;
  }
  #businessArea ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }
  #businessArea ul li h3 br {
    display: none;
  }
  .slick-dots {
    display: flex;
    justify-content: center !important;
    gap: 4vw !important;
    margin: 12vw auto 0 auto !important;
  }
  .slick-dots li {
    width: 4vw;
    height: 4vw;
    margin: 0;
  }
  .slick-dots li button {
    width: 4vw;
    height: 4vw;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #266ab3;
    font-size: 0;
  }
  .slick-dots li button:before {
    display: none;
  }
  .slick-dots li.slick-active button {
    background: #e60012;
  }
  #contactArea {
    padding-bottom: 0;
    margin-bottom: 20vw;
  }
  #contactArea .contact_box {
    width: 100%;
    padding: 6vw;
    position: initial;
  }
  #contactArea .contact_box .btn_contact a {
    padding: 6vw;
    width: 100%;
    margin: 3vw auto 0;
  }
  #initiativesArea {
    padding: 6vw 0 12vw;
    overflow: hidden;
  }
  #initiativesArea .section_ttl {
    margin-bottom: 12vw;
  }
  #initiativesArea .topicsArea {
    margin-bottom: 12vw;
  }
  #initiativesArea .topicsArea .flex {
    gap: 8vw 6vw;
  }
  #initiativesArea .topicsArea .col {
    width: calc((100% - 6vw) / 2);
  }
  #initiativesArea .topicsArea .col .topic-item {
    gap: 2.5vw;
  }
  #initiativesArea .topicsArea .more-btn {
    margin-top: 6vw;
    padding: 2.5vw;
    gap: 2.5vw;
  }
  #initiativesArea .topicsArea .more-btn svg {
    width: 6vw;
    height: 6vw;
  }
  #initiativesArea ul {
    display: block;
    margin-top: 12vw;
  }
  #initiativesArea .slick-list {
    overflow: visible;
    padding-left: 0;
    margin-right: -3vw;
  }
  #initiativesArea .slick-slide {
    width: 70vw !important;
    margin-right: 6vw;
  }
  #initiativesArea .slick-slide:last-child {
    margin-right: 0;
  }
  #initiativesArea .slick-dots {
    display: flex;
  }

  #initiativesArea ul li {
    width: auto;
  }

  #initiativesArea ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }
  /*=== [corporateArea] ===*/
  #corporateArea .corporate_header .picture {
    height: 50vw;
    width: 100%;
  }
  #corporateArea {
    padding-bottom: 0;
    margin-bottom: 20vw;
  }
  #corporateArea .corporate_header {
    display: block;
  }
  #corporateArea .corporate_header .inner {
    position: unset;
    text-align: left;
  }
  #corporateArea .section_ttl {
    margin: 12vw 0;
  }
  #corporateArea .corporate_contents .inner {
    padding-top: 0;
  }
  #corporateArea .corporate_contents {
    margin: 0;
  }

  #corporateArea ul {
    margin: 12vw 0;
    display: flex;
    gap: 8vw 6vw;
    flex-wrap: wrap;
  }
  #corporateArea ul li {
    width: 41vw;
    display: flex;
    flex-direction: column;
  }
  #corporateArea ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }

  /*--------------------------------------------------------------------
=== [BTM] ====================================
 -------------------------------------------------------------------*/

  #btm_header #breadcrumbs ul {
    font-size: var(--fs-xs);
  }
  #btm_header {
    padding: 16vw 0 4vw 0;
  }

  #btm_header h1 {
    font-size: 8vw;
    margin-top: 4vw;
  }

  #btm_page .section_ttl {
    margin: 9vw 0;
  }
  .section_ttl_wrap {
    display: block;
  }
  .section_ttl_wrap.sub_ttl {
    margin: 6vw 0;
  }
  .section_ttl_wrap .picture {
    width: 100%;
    height: 50vw;
    min-height: unset;
  }
  .section_ttl_wrap .inner {
    width: calc(100% - 12vw);
    position: unset;
    padding-top: 0;
  }
  .section_ttl_wrap .section_ttl h2 {
    font-size: 10vw;
    margin-bottom: 2.5vw;
  }
  .section_ttl_wrap .section_ttl .section_ttl_jp {
    font-size: 6vw;
  }

  .section_ttl_wrap .picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
  }
  #btm_contact {
    padding: 5vw 0;
  }
  #btm_contact .inner {
    padding: 3vw 6vw;
    display: block;
  }
  #btm_contact .btm_contact_ttl {
    display: block;
    text-align: center;
  }
  #btm_contact .btn_contact a {
    gap: 10px;
    padding: 6vw;
    width: 100%;
    margin: 3vw auto 0;
  }
  #btm_contact .btm_contact_ttl h2 {
    font-size: 10vw;
  }

  /*=== [company] ===*/

  #btm_page #corporateArea .corporate_contents.bdNone {
    margin-top: 0;
  }
  #btm_page #corporateArea .corporate_contents.bdNone .inner {
    padding-top: 0;
  }
  #btm_page #corporateArea {
    margin-bottom: 16vw;
  }

  /*=== [message] ===*/

  #messageArea .message_contents .picture img {
    object-position: left top;
    height: 100%;
  }
  #messageArea .message_contents .picture {
    width: 100vw;
    height: 100vw;
    position: unset;
    margin-bottom: 6vw;
  }
  #messageArea .message_contents .leadTxt {
    margin: 0;
  }
  #messageArea .message_contents .leadTxt {
    font-size: var(--fs-l);
  }
  #messageArea .message_contents .name {
    font-size: var(--fs-s);
    margin-top: 5vw;
  }
  #messageArea .message_contents .inner {
    position: relative;
    width: calc(100% - 12vw);
    padding: 0;
    margin: 0 6vw;
  }
  #messageArea .message_contents {
    margin-bottom: 10vw;
    padding-bottom: 0;
    flex-direction: column;
  }

  /*=== [profile] ===*/
  #profileArea {
    height: auto;
  }

  #profileArea .profile_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }

  #aboutArea {
    margin-top: 24vw;
  }
  #aboutArea .about_contents .inner {
    display: block;
    padding-bottom: 12vw;
  }
  #aboutArea .about_contents {
    margin-top: 0;
  }

  #aboutArea .about_contents .inner ul li {
    padding: 3vw 0;
    flex-direction: column;
    gap: 2vw;
  }
  #aboutArea .about_contents .inner ul li .ttl {
    margin-right: 0;
    width: 100%;
  }
  #accessArea {
    margin-top: 0;
  }
  #accessArea .access_contents {
    margin-top: 0;
  }
  #accessArea .access_contents .inner {
    display: block;
  }
  #accessArea .access_contents .inner iframe {
    width: 100%;
    height: 87.5vw;
  }
  #accessArea .access_contents .access_map {
    margin-bottom: 6vw;
  }
  #accessArea .access_contents .access_map .address {
    margin: 2vw 0;
  }
  #accessArea .access_contents .access_map .btn_googlemap a {
    font-size: var(--fs-s);
    gap: 2.5vw;
    padding: 1vw 4vw 1vw 2.5vw;
    border-radius: 1vw;
  }

  #powerplantsArea {
    position: unset;
    height: auto;
    margin-top: 6vw;
    margin-bottom: 12vw;
  }

  #powerplantsArea .powerplants_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }

  /*=== [vision] ===*/

  #visionArea .vision_contents > div {
    padding: 5vw;
    width: 100%;
    margin: 0 6vw;
  }
  #visionArea .vision_contents {
    background-size: cover;
    height: 225vw;
    padding: 0;
  }
  #visionArea .vision_contents h2 {
    font-size: 8vw;
    margin-bottom: 6vw;
  }
  #visionArea .vision_contents h2 span {
    font-size: 5.25vw;
  }
  #visionArea .vision_contents .mainLead {
    font-size: 6vw;
  }
  #visionArea {
    margin-bottom: 12vw;
  }
  #basicPolicyArea .basic_policy_contents .basic_policy_list > li {
    width: 100%;
  }

  /*=== [history] ===*/

  #historyArea .history_slider_list li img {
    width: 100%;
    height: min(100vw, 400px);
    object-fit: cover;
  }
  #historyArea .history_slider .history_arrow {
    top: inherit;
    bottom: 0;
    width: 10vw;
    height: 10vw;
  }
  #historyArea .history_slider {
    margin-bottom: 0;
  }

  #historyArea .history_slider .history_prev {
    left: 2.5vw;
  }
  #historyArea .history_slider .history_next {
    right: 2.5vw;
  }
  #historyArea .history_contents {
    margin-top: 0;
  }
  #historyArea .history_contents .history_acd dt {
    padding: 4vw;
    font-size: 5.25vw;
  }
  #historyArea .history_contents .history_acd dd {
    padding: 4vw;
    display: block;
  }
  #historyArea .history_contents .history_acd dd .ym {
    width: 100%;
  }
  #historyArea .history_contents .history_acd {
    margin-bottom: 5vw;
  }

  /*=== [reason] ===*/

  #reasonArea01 .picture,
  #reasonArea02 .picture,
  #reasonArea03 .picture,
  #reasonArea04 .picture,
  #reasonArea05 .picture {
    width: 100%;
    height: auto;
  }

  #reasonArea01 .inner .wrap,
  #reasonArea02 .inner .wrap,
  #reasonArea03 .inner .wrap,
  #reasonArea04 .inner .wrap,
  #reasonArea05 .inner .wrap {
    width: 100%;
  }
  .reason_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }
  #reasonArea01,
  #reasonArea02,
  #reasonArea03,
  #reasonArea04,
  #reasonArea05 {
    margin-bottom: 5vw;
  }

  #reasonArea02 .inner .wrap,
  #reasonArea04 .inner .wrap {
    position: unset;
  }
  #reasonArea02 .section_ttl_wrap .section_ttl,
  #reasonArea04 .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #reasonArea02 .section_ttl_wrap .reason_contents,
  #reasonArea04 .section_ttl_wrap .reason_contents {
    position: unset;
    padding: 0;
  }
  #reasonArea02 .section_ttl_wrap,
  #reasonArea04 .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #reasonArea02 .inner,
  #reasonArea03 .inner,
  #reasonArea04 .inner {
    order: 1;
  }
  #reasonArea02 .section_ttl_wrap .picture,
  #reasonArea03 .section_ttl_wrap .picture {
    order: 0;
  }
  #reasonArea03 .section_ttl_wrap .section_ttl h2 {
    word-break: break-word;
  }
  .reason_contents .btn_more {
    margin-top: 4vw;
  }
  .reason_contents .mainLead {
    font-size: 8vw;
  }

  /*=== [marubeni] ===*/
  #marubeniArea .section_ttl_wrap .picture {
    height: 75vw;
  }
  #marubeniArea .section_ttl_wrap .picture img {
    object-position: center top;
  }
  #marubeniArea .section_ttl_wrap .section_ttl .section_ttl_jp {
    font-size: 6vw;
  }
  #marubeniArea .marubeni_contents {
    margin: 0;
  }
  #marubeniArea .mainLead {
    font-size: 8vw;
  }

  #marubeniArea .marubeni_contents .txt_box .picture {
    margin-bottom: 4vw;
  }
  #marubeniArea .marubeni_contents .txt_box h4 {
    margin-bottom: 2vw;
  }

  /*=== [business] ===*/
  #btm_page #businessArea {
    margin-bottom: 20vw;
  }

  #btm_page #businessArea .business_contents {
    margin-top: 0;
  }
  #btm_page #businessArea .business_contents .inner,
  #relatedArea .related_contents .inner {
    padding-top: 0;
  }
  #businessArea .business_contents_top ul {
    gap: 2vw;
    margin-top: 6vw;
  }
  #businessArea .business_contents_top ul .num_box_col {
    width: calc((100% - 4vw * 1) / 2);
    text-align: center;
    padding: 3vw 4vw;
  }
  #businessArea .business_contents_top ul .num_box_col .num {
    font-size: 12vw;
    margin: 3vw 0;
  }
  #businessArea .business_contents_top ul li .txt,
  #relatedArea .related_contents_top ul li .txt {
    margin: 0;
  }
  #businessArea .business_contents_top .txt,
  #relatedArea .related_contents_top .txt {
    margin: 6vw 0;
  }

  #businessArea .business_contents_btm ul {
    margin: 12vw 0;
    gap: 8vw 6vw;
  }

  #businessArea .business_contents_btm ul li {
    width: 41vw;
  }
  #relatedArea {
    margin-bottom: 20vw;
  }

  #relatedArea .related_contents {
    margin: 0 auto;
  }
  #relatedArea .section_ttl_wrap .inner {
    text-align: left;
  }
  #relatedArea .section_ttl_wrap .section_ttl h2 {
    word-break: auto-phrase;
  }

  #relatedArea ul {
    margin: 12vw 0;
    gap: 8vw 6vw;
  }

  #relatedArea ul li {
    width: 41vw;
  }
  #relatedArea ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }
  #relatedArea.btm .related_contents .inner {
    padding-top: 12vw;
  }

  /*=== [generation] ===*/
  #generationArea01 .picture,
  #generationArea02 .picture,
  #generationArea03 .picture {
    width: 100%;
    height: auto;
  }
  #generationArea01 .inner .wrap,
  #generationArea02 .inner .wrap,
  #generationArea03 .inner .wrap {
    width: 100%;
    position: unset;
  }
  #generationArea01,
  #generationArea02,
  #generationArea03 {
    margin-bottom: 5vw;
  }
  .generation_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }

  #generationArea02 .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #generationArea02 .section_ttl_wrap .generation_contents {
    position: unset;
    padding: 0;
  }
  #generationArea02 .section_ttl_wrap {
    flex-direction: column;
    display: flex;
  }
  #generationArea02 .inner {
    order: 1;
  }
  #generationArea02 .picture {
    order: 0;
  }

  #generationArea03 {
    margin-bottom: 20vw;
  }
  #hydroArea .hydro_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }

  /*=== [hydro] ===*/
  #hydroArea {
    margin-bottom: 12vw;
  }
  #hydroArea .picture {
    display: block;
    width: 100%;
  }
  #hydroArea .inner .wrap {
    width: 100%;
  }

  #hydroArea .hydro_contents ul {
    display: grid;
    grid-template-columns: repeat(2, 38vw);
    justify-content: center;
    gap: 6vw;
    padding: 0;
    margin-top: 3vw;
  }

  #hydroArea .hydro_contents ul li:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    justify-self: center;
  }

  #hydroArea .hydro_contents ul .picture {
    width: 38vw;
    text-align: center;
    min-height: auto;
    height: auto;
  }
  #hydroArea .hydro_contents ul figcaption span {
    font-size: var(--fs-xs);
  }

  #meritArea .section_ttl_wrap .section_ttl .section_ttl_jp {
    font-size: 6vw;
  }
  #meritArea .merit_list .txt {
    font-size: 5.25vw;
    text-align: left;
  }

  #meritArea .merit_list ul {
    display: grid;
    grid-template-columns: repeat(2, 38vw);
    justify-content: center;
    gap: 6vw;
    padding: 0;
    margin-top: 3vw;
  }

  #meritArea .merit_list ul .picture {
    width: 38vw;
    text-align: center;
    min-height: auto;
    height: auto;
  }

  #meritArea .merit_list ul li:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    justify-self: center;
  }
  #meritArea .merit_contents .inner {
    padding-bottom: 12vw;
  }
  #environmentalArea .section_ttl_wrap .section_ttl h2 {
    word-break: break-word;
  }
  #environmentalArea .environmental_contents .inner {
    display: block;
  }
  #environmentalArea .environmental_contents .txt,
  #environmentalArea .environmental_contents .graph {
    width: 100%;
  }
  .environmental_contents .graph {
    margin-top: 4vw;
  }
  #environmentalArea .environmental_contents .graph figcaption {
    font-size: var(--fs-xs);
  }
  #environmentalArea {
    margin-bottom: 12vw;
  }

  #s_hydroArea {
    margin-bottom: 0;
  }
  #s_hydroArea .picture {
    width: 100%;
    height: auto;
  }
  #s_hydroArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #s_hydroArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #s_hydroArea .s_hydro_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
    position: unset;
    padding-bottom: 12vw;
  }
  #s_hydroArea .s_hydro_contents dt {
    margin-top: 4vw;
    font-size: 5.25vw;
  }
  #s_hydroArea .s_hydro_contents dd ul {
    margin-top: 6vw;
    margin-bottom: 6vw;
    font-size: var(--fs-m);
  }
  #s_hydroArea02 {
    padding-top: 12vw;
  }
  #s_hydroArea02 .s_hydro_contents02 .inner {
    width: auto;
    margin: 0 6vw;
  }
  #s_hydroArea02 h2 {
    font-size: 6vw;
    margin-bottom: 6vw;
  }
  #s_hydroArea02 h3 {
    font-size: 5.25vw;
    margin-bottom: 3vw;
  }
  #s_hydroArea02 dt {
    margin-bottom: 2vw;
  }
  #s_hydroArea02 dd {
    margin-bottom: 4vw;
  }
  #s_hydroArea02 .reference {
    gap: 2.5vw;
    margin: 12vw 6vw;
    flex-direction: column;
  }
  #s_hydroArea02 .reference .box {
    padding: 2vw 4vw;
    width: 100%;
    margin-bottom: 2.5vw;
  }
  #s_hydroArea02 .reference .box h4 {
    margin-bottom: 2vw;
    font-size: 2.5vw;
  }
  #s_hydroArea02 .reference .box li {
    font-size: var(--fs-xxs);
  }

  /*=== [plants] ===*/

  #plantsArea {
    position: relative;
    height: auto;
    padding-bottom: 12vw;
  }

  #plantsArea .plants_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }
  #plantsArea .plants_map_section {
    padding-bottom: 0;
    margin-top: 0;
  }
  #plantsArea .plants_map_section .total_output {
    display: block;
    text-align: center;
    padding: 3vw;
    margin: 6vw 0;
  }
  #plantsArea .plants_map_section .total_output .data {
    font-size: 12vw;
  }
  #plantsArea .plants_map_section .total_output .data span {
    font-size: 6vw;
  }

  #plantsArea .plants_map_section .plant_list_anc ul {
    gap: 8px;
  }

  #plantsArea .plants_map_section .plant_list_anc ul li {
    max-width: none;
    width: calc((100% - 16px) / 3);
  }

  #plantslist > div {
    margin-bottom: 12vw;
  }
  #plantslistArea .btn_more a {
    margin: 5vw auto;
  }
  #plantslistArea {
    margin-bottom: 0;
  }
  #plantslist .list_header {
    display: block;
    padding: 6vw;
    margin-bottom: 5vw;
  }
  #plantslist .list_header .num {
    border-bottom: 1px solid #fff;
    border-right: none;
    padding-bottom: 4vw;
  }
  #plantslist .list_header dt {
    font-size: 12vw;
  }
  #plantslist .list_header dt span {
    font-size: 6vw;
  }
  #plantslist .list_header dd {
    font-size: var(--fs-s);
  }
  #plantslist ul li .plants_data_inner {
    grid-template-columns: repeat(1, 1fr);
  }
  #plantslist ul li .plants_name .plants_txt {
    display: block;
  }
  #plantslist ul li .plants_name {
    column-gap: 3vw;
    padding: 4vw 6vw;
  }
  #plantslist ul li .plants_data {
    padding: 0 6vw 6vw;
  }

  /*=== [service] ===*/

  #serviceArea01 .picture,
  #serviceArea02 .picture,
  #serviceArea03 .picture {
    width: 100%;
  }

  #serviceArea01 .section_ttl_wrap,
  #serviceArea03 .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }

  #serviceArea01 .inner .wrap,
  #serviceArea03 .inner .wrap {
    width: 100%;
    right: 0;
    position: unset;
  }
  #serviceArea01 .inner .wrap,
  #serviceArea02 .inner .wrap,
  #serviceArea03 .inner .wrap {
    width: 100%;
  }
  #serviceArea01 .section_ttl_wrap .section_ttl,
  #serviceArea03 .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #serviceArea02 .section_ttl_wrap .section_ttl h2 {
    font-size: 10vw;
  }
  .service_contents {
    margin-top: 0;
    padding: 0;
    width: 100%;
  }
  #serviceArea01 .section_ttl_wrap .service_contents,
  #serviceArea03 .section_ttl_wrap .service_contents {
    position: unset;
    padding: 0;
  }
  #serviceArea01,
  #serviceArea02,
  #serviceArea03 {
    margin-bottom: 12vw;
  }

  #serviceArea03 .picture {
    order: 0;
  }
  #serviceArea03 .inner {
    order: 1;
  }

  /*=== [consulting] ===*/
  #consultingArea {
    margin-bottom: 12vw;
  }

  #consultingArea .picture {
    width: 100%;
  }
  #consultingArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #consultingArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #consultingArea .section_ttl_wrap .consulting_contents {
    position: unset;
    padding: 0;
    width: 100%;
    margin-top: 0;
  }
  #consultingArea02 {
    margin-bottom: 12vw;
  }

  #consultingArea02 ul {
    display: block;
  }
  #consultingArea02 ul li {
    width: 100%;
    padding: 3vw;
    margin-bottom: 18vw;
  }
  #consultingArea02 ul li:after {
    width: 10vw;
    height: 20vw;
    bottom: -19vw;
    margin: auto;
    left: 0;
    right: 0;
    transform: rotate(90deg);
    top: inherit;
  }
  #consultingArea02 ul li:last-child {
    margin-bottom: 0;
  }

  #serviceDetailArea .inner {
    padding-top: 0;
  }

  #commercializationArea {
    margin-bottom: 12vw;
    margin-top: 12vw;
  }
  #commercializationArea .picture {
    width: 100%;
  }
  #commercializationArea .inner .wrap {
    width: 100%;
  }
  #commercializationArea .section_ttl_wrap .section_ttl h2 {
    font-size: 10vw;
  }
  #commercializationArea .commercialization_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }
  #commercializationArea .commercialization_contents .leadTxt {
    margin-bottom: 6vw;
  }
  #commercializationArea ul li {
    padding: 5vw 2.5vw;
    margin-bottom: 2.5vw;
    gap: 2.5vw;
  }
  #commercializationArea ul {
    margin-bottom: 12vw;
  }

  /*=== [maintenance] ===*/
  #maintenanceArea {
    margin-bottom: 12vw;
  }
  #maintenanceArea .picture {
    width: 100%;
  }
  #maintenanceArea .section_ttl_wrap .section_ttl h2 {
    font-size: 10vw;
  }
  #maintenanceArea .inner .wrap {
    width: 100%;
  }
  .maintenance_contents {
    margin-top: 0;
    width: 100%;
    padding: 0;
  }
  #serviceArea .service_contents .service_list {
    display: block;
  }
  #serviceArea .service_contents .service_list > li {
    width: 100%;
    margin-bottom: 6vw;
  }
  #serviceArea .service_contents .service_list > li:last-child {
    margin-bottom: 0;
  }
  #serviceArea .inner {
    padding-top: 12vw;
  }
  #serviceArea .service_contents .service_list .section_ttl_wrap .picture {
    height: auto;
  }
  #serviceArea .service_contents .service_list .cont h3 {
    margin-bottom: 2vw;
  }
  #serviceArea .service_contents .service_list .cont_list {
    font-size: var(--fs-xs);
    padding-top: 2vw;
    margin-top: 2vw;
  }

  /*=== [partnership] ===*/

  #partnershipArea01 .picture,
  #partnershipArea02 .picture,
  #partnershipArea03 .picture {
    width: 100%;
  }
  #partnershipArea01 .inner .wrap,
  #partnershipArea02 .inner .wrap {
    width: 100%;
    position: unset;
  }

  #partnershipArea01 {
    margin-bottom: 12vw;
  }
  #partnershipArea01 .section_ttl_wrap .partnership_contents,
  #partnershipArea02 .section_ttl_wrap .partnership_contents,
  #partnershipArea03 .section_ttl_wrap .partnership_contents {
    position: unset;
    padding: 0;
    width: 100%;
    margin-top: 0;
  }

  #partnershipArea01 .section_ttl_wrap .section_ttl,
  #partnershipArea02 .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }
  #partnershipArea02 .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #partnershipArea02 .section_ttl_wrap .picture {
    order: 0;
  }
  #partnershipArea02 .section_ttl_wrap .inner {
    order: 1;
  }
  #partnershipArea02 .list {
    padding: 2vw;
    margin-top: 4vw;
    font-size: var(--fs-xs);
  }
  #partnershipArea01 dl dt,
  #partnershipArea02 dl dt,
  #partnershipArea03 dl dt {
    font-size: 5.25vw;
    margin-bottom: 4vw;
    margin-top: 4vw;
  }
  #partnershipArea02 .merit {
    margin-top: 4vw;
    display: block;
  }
  #partnershipArea02 .merit > li .ttl {
    font-size: var(--fs-l);
    margin-bottom: 2.5vw;
  }
  #partnershipArea02 .merit > li > ul li {
    font-size: var(--fs-xs);
  }
  #partnershipArea02 .merit > li {
    margin-bottom: 2.5vw;
  }
  #partnershipArea02 {
    margin-bottom: 12vw;
  }
  #partnershipArea01 .inner .wrap,
  #partnershipArea02 .inner .wrap,
  #partnershipArea03 .inner .wrap {
    width: 100%;
  }
  #partnershipArea03 {
    margin-bottom: 12vw;
  }

  /*=== [environment] ===*/
  #environmentArea {
    margin-bottom: 12vw;
  }
  #environmentArea .environment_contents {
    margin: 0 auto;
  }
  #environmentArea .environment_contents .inner {
    padding-top: 12vw;
  }

  #environmentArea ul {
    margin: 12vw 0;
    gap: 8vw 6vw;
  }

  #environmentArea ul li {
    width: 41vw;
  }

  #environmentArea ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }

  /*=== [clean] ===*/
  #cleanArea {
    margin-bottom: 12vw;
  }
  #cleanArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #cleanArea .inner .wrap {
    width: 100%;
  }
  #cleanArea .clean_contents {
    width: 100%;
    background-color: #fff;
    margin-top: 0;
    padding: 0;
  }
  #cleanArea .inner .wrap {
    width: 100%;
  }
  #cleanArea .section_ttl_wrap .picture {
    order: 0;
  }
  #cleanArea .section_ttl_wrap .inner {
    order: 1;
  }
  #cleanArea .clean_contents .reception p {
    font-size: var(--fs-xs);
  }

  /*=== [policy] ===*/
  #policyArea {
    padding: 0;
  }
  #policyArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #policyArea .section_ttl_wrap .picture {
    order: 0;
  }
  #policyArea .section_ttl_wrap .inner {
    order: 1;
  }
  #policyArea .inner .wrap {
    width: 100%;
  }
  #policyArea .policy_contents {
    margin-top: 0;
    padding: 0;
    width: 100%;
  }
  #activityArea .section_ttl_wrap .inner {
    padding-top: 0;
  }
  #activityArea .activity_contents ul {
    display: block;
  }
  #activityArea .activity_contents ul li {
    margin-bottom: 5vw;
  }
  #activityArea .activity_contents ul li .ttl {
    font-size: var(--fs-xl);
    margin-bottom: 4vw;
  }
  #activityArea .activity_contents ul li .wrap {
    padding: 4vw;
  }
  #activityArea .activity_contents ul li:nth-child(2) .ttl,
  #activityArea .activity_contents ul li:nth-child(3) .ttl {
    display: none;
  }
  #activityArea .activity_contents .inner {
    padding-bottom: 12vw;
  }
  #effortsArea .efforts_contents li .picture {
    width: 100%;
  }
  #effortsArea .efforts_contents li {
    display: block;
  }
  #effortsArea .efforts_contents li .cont {
    padding: 6vw;
  }
  #effortsArea .efforts_contents li .cont h3 {
    font-size: 5.25vw;
    font-weight: bold;
    margin-bottom: 4vw;
  }
  #effortsArea {
    margin-bottom: 12vw;
  }

  /*=== [region] ===*/

  #regionArea {
    padding: 0;
    margin-bottom: 0;
  }
  #regionArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #regionArea .section_ttl_wrap .picture {
    order: 0;
  }
  #regionArea .section_ttl_wrap .inner {
    order: 1;
  }
  #regionArea .inner .wrap {
    width: 100%;
  }
  #regionArea .region_contents {
    margin-top: 0;
    padding: 0;
    width: 100%;
  }
  #regionArea02 {
    margin-bottom: 12vw;
  }
  #regionArea02 ul {
    display: flex;
    flex-direction: column;
    gap: 5vw;
  }
  #regionArea02 ul li {
    width: 100%;
    padding: 3vw;
  }

  #jobArea .picture,
  #regionalArea .picture,
  #waterfarmArea .picture,
  #taxArea .picture {
    width: 100%;
  }

  #jobArea {
    padding: 0;
    margin-bottom: 0;
  }
  #jobArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #jobArea .section_ttl_wrap .picture {
    order: 0;
  }
  #jobArea .section_ttl_wrap .inner {
    order: 1;
  }
  #jobArea .inner .wrap {
    width: 100%;
  }
  #jobArea .job_contents {
    margin-top: 0;
    padding: 0;
    width: 100%;
  }

  #regionalArea {
    padding: 0;
    margin-bottom: 12vw;
  }
  #regionalArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #regionalArea .section_ttl_wrap .picture {
    order: 0;
  }
  #regionalArea .section_ttl_wrap .inner {
    order: 1;
  }
  #regionalArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #regionalArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }

  #regionalArea .regional_contents {
    width: 100%;
    margin-top: 0;
    position: unset;
    padding: 0;
  }

  #taxArea {
    padding: 0;
    margin-bottom: 12vw;
  }
  #taxArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #taxArea .section_ttl_wrap .picture {
    order: 0;
  }
  #taxArea .section_ttl_wrap .inner {
    order: 1;
  }
  #taxArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #taxArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }

  #taxArea .tax_contents {
    width: 100%;
    margin-top: 0;
    position: unset;
    padding: 0;
  }

  /*=== [visit] ===*/

  #visitArea {
    padding: 0;
    margin-bottom: 12vw;
  }
  #visitArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #visitArea .section_ttl_wrap .picture {
    order: 0;
  }
  #visitArea .section_ttl_wrap .inner {
    order: 1;
  }
  #visitArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #visitArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }

  #visitArea .visit_contents {
    width: 100%;
    margin-top: 0;
    position: unset;
    padding: 0;
  }
  #courseArea .inner {
    padding-top: 0;
  }
  #courseArea .course_contents ul {
    gap: 4vw;
    margin-top: 0;
  }
  #courseArea .course_contents li {
    display: block;
  }
  #courseArea .course_contents li .picture {
    width: 100%;
  }
  #courseArea .course_contents li .cont {
    padding: 3vw 6vw;
  }
  #courseArea .course_contents li h3 {
    margin-bottom: 2vw;
    font-size: 5.25vw;
  }
  #courseArea .course_contents li dd {
    margin: 2vw 0;
  }
  #courseArea .course_contents li dt {
    font-size: var(--fs-m);
    font-weight: bold;
  }

  #tourArea {
    padding: 0;
    margin-bottom: 12vw;
  }
  #tourArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #tourArea .section_ttl_wrap .picture {
    order: 0;
  }
  #tourArea .section_ttl_wrap .inner {
    order: 1;
  }
  #tourArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #tourArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }

  #tourArea .tour_contents {
    width: 100%;
    margin-top: 0;
    position: unset;
    padding: 0;
  }

  /*=== [spot] ===*/

  #spotArea {
    padding: 0;
    margin-bottom: 12vw;
  }
  #spotArea .section_ttl_wrap {
    display: flex;
    flex-direction: column;
  }
  #spotArea .section_ttl_wrap .picture {
    order: 0;
  }
  #spotArea .section_ttl_wrap .inner {
    order: 1;
  }
  #spotArea .inner .wrap {
    width: 100%;
    position: unset;
  }
  #spotArea .section_ttl_wrap .section_ttl {
    margin-left: 0;
  }

  #spotArea .spot_contents {
    width: 100%;
    margin-top: 0;
    position: unset;
    padding: 0;
  }

  #spotlistArea .spotlist_contents .spotlist_anc {
    padding-bottom: 12vw;
  }
  #spotlistArea .spotlist_contents .spotlist_anc ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-weight: bold;
    margin-top: 4vw;
    margin-bottom: 0;
  }

  #spotlistArea .spotlist_contents .spotlist_anc ul li {
    max-width: none;
    width: calc((100% - 16px) / 3);
  }
  #spotlistArea {
    padding-bottom: 12vw;
  }
  #spotlist > div {
    padding-bottom: 12vw;
  }
  #spotlist .spot_municipality + .spot_municipality {
    margin-top: 12vw;
  }
  #spotlist .spot_municipality_head {
    flex-direction: column;
    align-items: flex-start;
    gap: 3vw;
    margin-bottom: 4vw;
  }
  #spotlist .spot_municipality_name {
    font-size: 5.25vw;
  }
  #spotlist .spot_municipality_actions {
    justify-content: flex-start;
    gap: 2vw;
  }
  #spotlist .spot_municipality_actions .btn_more a {
    padding: 2vw 4vw 2vw 2.5vw;
    font-size: var(--fs-s);
  }
  #spotlist ul {
    margin-top: 0;
    gap: 0;
    display: block;
  }
  #spotlist .slick-slide {
    margin: 0 1.5vw;
  }
  #spotlist ul li h3 {
    font-size: 5.25vw;
    margin: 4vw 0;
  }
  #spotlist ul .wrap {
    padding: 2vw 3vw;
  }
  #spotlist ul li h3 br {
    display: none;
  }
  #spotlist .slick-dots {
    display: flex;
  }

  #spotlist .slick-list {
    padding-bottom: 1vw !important;
    touch-action: pan-y;
    -ms-touch-action: pan-y;
    overscroll-behavior: contain;
    overflow-anchor: none;
  }

  /*=== [news] ===*/

  #archiveArea {
    padding: 0;
  }
  #archiveArea .archive_list {
    margin-top: 0;
  }
  #archiveArea .archive_list li a h3 {
    width: 100%;
    font-size: var(--fs-m);
  }
  #archiveArea .archive_list li a span {
    width: 100%;
    font-size: var(--fs-m);
  }
  #archiveArea .archive_list li a {
    display: block;
    padding: 3vw 0;
  }

  .pager {
    margin-top: 5vw;
  }
  #topicsArea {
    padding: 0 0 12vw 0;
  }

  #topicsArea .topics_list li {
    width: 41vw;
  }

  #topicsArea .topics_list {
    margin: 12vw 0;
    gap: 8vw 6vw;
  }
  #topicsArea .topics_list li a .topics_date {
    margin: 2.5vw 0;
    font-size: 2.5vw;
  }
  #topicsArea .topics_list li a h3 {
    font-size: 4vw;
  }
  .post_date {
    margin-top: 4vw;
    font-size: 5.25vw;
  }
  #postArea .article_contents {
    padding: 6vw 0;
  }
  #postArea .article_wrap h2 {
    margin-bottom: 6vw;
    font-size: 6vw;
  }
  #postArea .article_wrap h3 {
    font-size: 5vw;
  }
  #postArea .article_wrap h4 {
    font-size: 4.5vw;
  }
  #postArea .article_wrap .column_flex {
    gap: 10vw;
    flex-direction: column;
  }
  #postArea .article_wrap .column_flex .column_img {
    width: 100%;
  }
  #postArea .article_wrap .column_flex .column_txt {
    width: 100%;
  }
  #postArea .postPager {
    flex-wrap: wrap;
  }

  #postArea .postPager_btn.archive {
    width: 100%;
    margin-top: 7.5vw;
    order: 3;
  }
  #postArea .postPager {
    gap: 0;
    padding: 6vw 0 12vw 0;
    border: none;
  }
  #postArea .postPager_btn {
    width: fit-content;
    padding: 4vw;
    font-size: 4vw;
  }

  /*=== contact ===*/

  #contactFormArea {
    margin-top: 0;
  }
  #contactFormArea .intro_txt {
    font-size: 5vw;
    margin-bottom: 0;
  }
  #contactFormArea .contact_form {
    padding: 6vw 0;
  }
  #contactFormArea .contact_btn {
    margin-top: 0;
    gap: 8vw;
    flex-wrap: wrap;
  }
  #contactFormArea .contact_btn button[type="button"] {
    width: 100%;
  }
  #contactFormArea .contact_btn button[type="submit"] {
    width: 100%;
  }
  #doneArea {
    padding: 6vw 0;
  }
  #doneArea .intro_head {
    font-size: 5vw;
    margin-bottom: 8vw;
  }
  #doneArea .intro_head br {
    display: none;
  }
  #contactFormArea .contact_policy {
    margin-bottom: 5vw;
  }

  /*=== recruit ===*/

  #recruitArea .section_ttl_wrap .picture {
    width: 100%;
  }
  #recruitArea .anchor_list {
    margin-top: 0;
    flex-direction: column;
    width: 100%;
    gap: 2vw;
    padding: 0;
  }
  .linkArea {
    padding: 12vw 0;
  }
  .linkArea .anchor_list {
    gap: 5vw;
    flex-direction: column;
  }
  .linkArea .anchor_list li {
    width: 100%;
  }

  .linkArea .anchor_list li .text-wrap .link-btn {
    gap: 2.5vw;
    padding: 2vw 5vw 2vw 2.5vw;
    font-size: var(--fs-s);
    align-items: center;
  }

  .recruit_contents .inner {
    margin: 0 auto;
  }
  #infoArea .recruit_contents.first {
    padding-top: 0;
  }

  #infoArea {
    padding: 0 0 20vw;
  }

  #infoArea .recruit_contents .section_ttl h2 {
    font-size: 10vw;
    margin-bottom: 3vw;
  }
  #infoArea .recruit_contents .recruit_list {
    margin: 0;
  }
  #infoArea .recruit_contents .recruit_list .recruit_wrap {
    display: block;
    padding: 3vw 0;
  }
  #infoArea .recruit_contents .recruit_list .recruit_wrap dt {
    width: 100%;
    font-size: var(--fs-s);
  }

  #infoArea .recruit_contents .recruit_list .recruit_wrap dd {
    width: 100%;
    font-size: var(--fs-s);
  }

  #infoArea .recruit_contents .entryBtn a {
    gap: 2.5vw;
    padding: 2vw 5vw 2vw 2.5vw;
    font-size: var(--fs-s);
    align-items: center;
    margin-top: 3vw;
  }
  #infoArea .recruit_contents.second,
  #infoArea .recruit_contents.third {
    padding-top: 0;
    margin-top: 12vw;
  }

  /*=== [FAQ] ===*/

  #faqArea .section_ttl_wrap .picture {
    width: 100%;
  }

  #faqArea .faq_contents {
    margin: 0 auto;
  }
  #faqArea .faq_contents .inner {
    padding-top: 0;
  }
  #faqArea .faq_contents dl.faq_list {
    margin-top: 0;
  }
  #faqArea .faq_contents dl.faq_list .faq_wrap {
    padding: 4vw 6vw;
  }
  #faqArea .faq_contents dl.faq_list .faq_wrap:not(:last-of-type) {
    margin-bottom: 4vw;
  }
  #faqArea .faq_contents dl.faq_list .faq_wrap dt {
    padding-left: 13vw;
    font-size: 4vw;
  }
  #faqArea .faq_contents dl.faq_list .faq_wrap dd {
    padding: 0 4vw 0 13vw;
    transition: 0.8s ease-in-out;
  }
  #faqArea .faq_contents dl.faq_list .faq_wrap dd.open {
    padding: 0 4vw 0 13vw;
  }
  #faqArea {
    margin-bottom: 20vw;
  }

  /*=== [policy] ===*/

  #policyArea .policy_contents p {
    font-size: 4vw;
  }
  #policyArea .policy_contents p + p {
    margin-top: 5vw;
  }
  #policyArea .policy_contents ol.policy_list li {
    font-size: 4vw;
  }
  #regalArea {
    padding: 0 0 20vw;
  }
  #regalArea .section_ttl h2 {
    font-size: 10vw;
    margin-bottom: 2vw;
  }
  #regalArea .section_ttl {
    padding-top: 12vw;
  }
  #regalArea .regal_contents {
    margin-top: 0;
  }
  #regalArea .regal_contents dl.regal_dtl dt {
    font-size: 4vw;
    margin-bottom: 2vw;
  }
  #regalArea .regal_contents dl.regal_dtl dd p {
    font-size: 4vw;
  }
  #regalArea .regal_contents dl.regal_dtl dt:not(:first-of-type) {
    margin-top: 5vw;
  }
  #regalArea .regal_contents p {
    font-size: 4vw;
  }

  /*=== [sitemap] ===*/
  #sitemapArea {
    padding: 0 0 20vw;
  }
  #sitemapArea ul.sitemap {
    margin-top: 0;
  }
  #sitemapArea ul.lower_list {
    padding-left: 6vw;
    font-size: 4vw;
  }
  #sitemapArea ul.sitemap li a {
    padding: 3vw;
    font-size: 4vw;
  }

  /*=== [link] ===*/
  #companyArea .section_ttl h2,
  #coopArea .section_ttl h2 {
    font-size: 10vw;
    margin-bottom: 2vw;
    word-break: break-word;
  }
  #companyArea {
    padding: 0;
  }
  #companyArea .company_list li {
    width: 41vw;
  }
  #companyArea .company_list {
    margin-top: 0;
    gap: 6vw;
    flex-wrap: wrap;
  }
  #companyArea .company_list li h3 {
    font-size: 4vw;
    margin: 2.5vw 0;
  }
  #coopArea {
    padding: 0 0 20vw;
  }
  #coopArea .coop_list {
    margin-top: 0;
  }

  #coopArea .coop_list li {
    padding: 6vw;
  }
  #coopArea .coop_list li a {
    font-size: 4vw;
  }
  footer .copy {
    margin-top: 8vw;
  }
}
