@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Encode+Sans+Expanded:wght@100;200;300;400;500;600;700;800;900&family=Shippori+Antique&display=swap");
.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

/* ==========================================================================
  Base
  ========================================================================== */
/*! css-wipe | https://github.com/stackcss/css-wipe */
* {
  box-sizing: border-box;
}

/* webkit specific styles */
input[type=color]::-webkit-color-swatch {
  border: none;
}

input[type=color]::-webkit-color-swatch-wrapper {
  padding: 0;
}

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: inherit;
  -webkit-text-size-adjust: none;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
input[type=button],
button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration,
button::-webkit-search-decoration {
  display: none;
}
input[type=submit]::focus,
input[type=button]::focus,
button::focus {
  outline-offset: -2px;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

input:focus {
  outline: none;
}

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

/* ==========================================================================
   end of css-wipe
   ========================================================================== */
html {
  font-size: 62.5%;
  overflow-x: hidden;
}

body {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  position: relative;
}

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

a {
  transition: 0.25s;
  color: inherit;
}
a > img {
  transition: 0.25s;
}
a > img:focus, a > img:hover, a > img:active {
  opacity: 0.75;
}

a[href*="tel:"] {
  text-decoration: none;
}
@media (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

/* ==========================================================================
  Grid
  ========================================================================== */
/* ==========================================================================
  Layout
  ========================================================================== */
#wrap {
  overflow-x: hidden;
}

.ly_header {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 999;
  transition: 0.5s ease;
  padding: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .ly_header {
    padding: 2rem;
  }
}
.ly_header.is-active {
  background: #f6f6f6;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  .ly_header.is-active {
    padding: 1rem;
  }
}
.page-id-2 .ly_header {
  background: transparent;
  border-bottom: 0px;
}
.page-id-2 .ly_header.is-active {
  background: #f6f6f6;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  .page-id-2 .ly_header.is-active {
    padding: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .page-id-2 .ly_header {
    background: #f6f6f6;
  }
}
.ly_header_inner {
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
}
.ly_header .bl_logo {
  max-width: 20rem;
}
@media screen and (max-width: 767px) {
  .ly_header .bl_logo {
    max-width: 40vw;
  }
}
@media screen and (max-width: 500px) {
  .ly_header .bl_logo {
    max-width: 20rem;
  }
}
.ly_header .bl_logo svg {
  fill: #000;
  width: 148px;
  height: 41px;
  transition: 0.25s;
  width: 148px;
  height: 38px;
}
@media screen and (max-width: 767px) {
  .ly_header .bl_logo svg {
    width: 120px;
    height: 28px;
  }
}
.page-id-2 .ly_header .bl_logo svg {
  fill: #fff;
}
@media screen and (max-width: 767px) {
  .page-id-2 .ly_header .bl_logo svg {
    fill: #000;
  }
}
.page-id-2 .ly_header .bl_logo svg.invert {
  fill: #000;
}

.bl_headerConts {
  font-family: Helvetica, Arial, "Helvetica Neue", Verdana, Roboto, sans-serif;
}
.bl_headerConts ul li {
  display: inline-block;
}
.bl_headerConts ul li a {
  color: inherit;
  text-decoration: none;
  font-size: 20px;
  font-weight: 700;
}

.ly_footer {
  background: #f5f5f6;
  padding-top: 95px;
  padding-bottom: 6rem;
}
@media screen and (max-width: 1040px) {
  .ly_footer {
    padding-bottom: 3vw;
    padding-top: 14vw;
  }
}
@media screen and (max-width: 767px) {
  .ly_footer {
    padding-bottom: 20px;
  }
}
.ly_footer .ly_footer_inner {
  width: 90%;
  max-width: 1040px;
  margin: 0 auto;
  display: flex;
  gap: 5rem;
  justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .ly_footer .ly_footer_inner {
    flex-direction: column;
    align-items: center;
    gap: 15vw;
  }
}
@media screen and (max-width: 500px) {
  .ly_footer .ly_footer_inner {
    gap: 6rem;
  }
}
.ly_footer .ly_footList {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  justify-content: space-between;
}
.ly_footer .ly_footList.v2 {
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .ly_footer .ly_footList.v2 .bl_footernav {
    display: flex;
  }
}
.ly_footer .bl_footernav {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  justify-content: space-between;
  width: 100%;
  max-width: -moz-max-content;
  max-width: max-content;
  gap: 3rem;
}
.ly_footer .bl_footernav .sp {
  display: none !important;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_footernav {
    gap: 8vw;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .ly_footer .bl_footernav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .ly_footer .bl_footernav .pc {
    display: none !important;
  }
  .ly_footer .bl_footernav .sp {
    display: flex !important;
  }
}
.ly_footer .bl_footernav li {
  color: #000;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.8rem;
}
.ly_footer .bl_footernav li.bl_footernav_ttl {
  margin: 0 0 20px;
}
@media screen and (max-width: 767px) {
  .ly_footer .bl_footernav li.bl_footernav_ttl {
    font-size: 1.6rem;
  }
}
.ly_footer .bl_footernav li a {
  color: #666;
  text-decoration: none;
  position: relative;
  padding: 7px 0;
  padding-left: 10px;
  transition: 0.25s;
  display: inline-block;
  font-weight: 500;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_footernav li a {
    padding: 1.5rem 0;
  }
}
.ly_footer .bl_footernav li a:focus, .ly_footer .bl_footernav li a:hover, .ly_footer .bl_footernav li a:active {
  color: #268937;
}
.ly_footer .bl_footernav li a:focus::before, .ly_footer .bl_footernav li a:hover::before, .ly_footer .bl_footernav li a:active::before {
  background: #268937;
}
.ly_footer .bl_footernav_noline li a {
  padding: 7px 0;
  font-weight: 700;
  color: #000;
}
.ly_footer .bl_footernav_noline li a::before {
  content: none;
}
.ly_footer .bl_footernav_btn .el_txt {
  color: #fff;
  font-size: 12px;
  text-align: center;
  display: block;
  margin: 15px 0 0;
  text-decoration: none;
}
.ly_footer .bl_footernav_btn .el_txt:hover {
  color: #268937;
}
.ly_footer .bl_footernav_group_item.sp {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_footernav_group {
    display: flex;
    gap: 8vw;
  }
}
@media screen and (max-width: 340px) {
  .ly_footer .bl_footernav_group {
    width: 100%;
    justify-content: flex-start;
    gap: 16vw;
  }
}
.ly_footer .bl_footernav_group_item {
  margin-top: 3rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_footernav_group_item {
    margin-top: 0;
  }
}
.ly_footer .bl_footernav_group_item li.bl_footernav_ttl {
  margin: 0;
}
.ly_footer .bl_footernav_group_item li.bl_footernav_ttl_en a {
  color: #268937;
  font-family: "Encode Sans Expanded", sans-serif;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid;
  max-width: -moz-max-content;
  max-width: max-content;
  margin-top: 5rem;
}
.ly_footer .bl_footernav_group_item li a {
  font-weight: 700;
  padding: 0;
  color: #000;
}
.ly_footer .bl_footernav_group_item li a::before {
  content: none;
}
.ly_footer .bl_footernav_ttl_en.pc_only {
  margin-top: 9rem;
}
.ly_footer .ly_footer__english {
  display: flex;
  justify-content: space-between;
  gap: 5rem;
  width: 100%;
  text-align: right;
}
@media screen and (max-width: 1040px) {
  .ly_footer .ly_footer__english {
    flex-direction: column;
    align-items: center;
  }
  .ly_footer .ly_footer__english .pc_only {
    display: none !important;
  }
  .ly_footer .ly_footer__english .sp_only {
    display: block !important;
  }
}
.ly_footer .bl_footernav_ttl_en a {
  color: #268937 !important;
  font-family: "Encode Sans Expanded", sans-serif;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid;
  max-width: -moz-max-content;
  max-width: max-content;
  font-weight: 700;
  text-decoration: none;
  font-size: 1.4rem;
}
.ly_footer .bl_logo {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_logo_top {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.ly_footer .bl_logo a {
  display: flex;
}
.ly_footer .bl_logo img {
  max-width: 25rem;
  height: auto;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .ly_footer .bl_logo img {
    max-width: 28rem;
  }
}
@media screen and (max-width: 500px) {
  .ly_footer .bl_logo img {
    max-width: 25rem;
  }
}
.ly_footer .bl_logo_address {
  font-size: 1.2rem;
  color: #666;
  margin-top: 5rem;
  line-height: 1.8;
}
@media screen and (max-width: 1040px) {
  .ly_footer .bl_logo_address {
    margin-top: 5vw;
    line-height: 2;
  }
}
@media screen and (max-width: 500px) {
  .ly_footer .bl_logo_address {
    margin-top: 2.5rem;
  }
}
.ly_footer .copy {
  color: #666;
  font-size: 1.2rem;
  line-height: 1.2rem;
}
.ly_footer .copy.sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .ly_footer .copy {
    font-size: 1rem;
  }
  .ly_footer .copy.pc {
    display: none;
  }
  .ly_footer .copy.sp {
    display: block;
    text-align: right;
    margin-top: 20vw;
    margin-right: 4vw;
  }
}
@media screen and (max-width: 1040px) and (max-width: 500px) {
  .ly_footer .copy.sp {
    margin-top: 7rem;
  }
}

.ly_frame {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  pointer-events: none;
  border: 0 solid #fff;
}

.ly_cont {
  padding-top: 86px;
}
.page-id-2 .ly_cont {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .page-id-2 .ly_cont {
    padding-top: 61px;
  }
}
@media screen and (max-width: 767px) {
  .ly_cont {
    padding-top: 61px;
  }
}
.ly_cont .bg01 {
  background: url(images/news/bg-news.png);
  background-position: top;
  background-repeat: no-repeat;
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .ly_cont .bg01 {
    padding-top: 3rem;
  }
}
.ly_cont .bg02 {
  border-bottom: 1px solid #e8e8e9;
}
.ly_cont .ly_secbox {
  padding: 5rem 0 3rem;
}
.ly_cont .ly_secbox_last {
  padding: 0 0 115px;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_secbox_last {
    padding: 3rem 0 6rem;
  }
}
.ly_cont .ly_secbox_pt {
  padding-top: 1px;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_secbox_pt {
    padding-top: 1px;
  }
}
.ly_cont .ly_secbox_pt100 {
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_secbox_pt100 {
    padding-top: 50px;
  }
}
.ly_cont .ly_secbox_list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  position: relative;
  z-index: 3;
}
.ly_cont .ly_secbox dl {
  background: #fff;
  padding: 2.5rem 3.2rem;
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_secbox dl {
    flex-direction: column;
  }
}
.ly_cont .ly_secbox dl .cat {
  border: 1px solid #000;
  font-size: 1.2rem;
  padding: 0.2rem 1rem;
  color: #666666;
}
.ly_cont .ly_secbox dl .cat:hover {
  color: #268937;
  border: 1px solid #268937;
}
.ly_cont .ly_secbox dl .date {
  color: #666666;
}
.ly_cont .ly_secbox dt {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.ly_cont .ly_secbox dd {
  flex: 1;
}
.ly_cont .ly_murata {
  margin-top: 10rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata {
    margin-top: 10rem;
    margin-bottom: 12rem;
  }
}
.ly_cont .ly_murata_content {
  padding: 8rem 8rem 10rem;
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata_content {
    padding: 3rem 2rem;
  }
  .ly_cont .ly_murata_content_img {
    max-width: 14rem;
  }
}
.ly_cont .ly_murata_content_title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 2rem;
}
.ly_cont .ly_murata_content_btn {
  display: flex;
  justify-content: flex-end;
  flex: 1;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata_content_btn {
    flex: none;
  }
}
.ly_cont .ly_murata_content_box {
  margin-top: 6rem;
  overflow-y: auto;
}
.ly_cont .ly_murata_content_list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  height: 50rem;
}
.ly_cont .ly_murata_content_item {
  background: #f6fbf7;
  border: 1px solid #99cfa3;
  padding: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
  text-decoration: none;
}
.ly_cont .ly_murata_content_item_left {
  display: flex;
  align-items: center;
  gap: 3rem;
  flex: 1;
}
.ly_cont .ly_murata_content_item_left .date {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.ly_cont .ly_murata_content_item_left .date p {
  border: 1px solid #666;
  color: #666;
  background: #fff;
  padding: 0.2rem 1rem;
  letter-spacing: 0.1rem;
  text-align: center;
  font-size: 1.2rem;
}
.ly_cont .ly_murata_content_item_left .date span {
  color: #666;
}
.ly_cont .ly_murata_content_item_left .txt {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata_content_item_left {
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata_content_item_right {
    margin-top: 1.2rem;
    width: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .ly_cont .ly_murata_content_item {
    padding: 2rem;
    gap: 2rem;
    align-items: flex-start;
  }
}
.page-template-template-en-php .ly_cont .ly_secbox {
  padding: 0 0 60px;
}
@media screen and (max-width: 767px) {
  .page-template-template-en-php .ly_cont .ly_secbox {
    padding: 0 0 40px;
  }
}
.page-template-template-en-php .ly_cont .ly_secbox_last {
  padding: 0 0 150px;
}
@media screen and (max-width: 767px) {
  .page-template-template-en-php .ly_cont .ly_secbox_last {
    padding: 0 0 100px;
  }
}
.page-template-template-en-php .ly_cont .ly_secbox_pt100 {
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .page-template-template-en-php .ly_cont .ly_secbox_pt100 {
    padding-top: 50px;
  }
}

.ly__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

/* ==========================================================================
  Element Modules
  ========================================================================== */
.el_ttl01 {
  display: flex;
  align-items: flex-end;
  gap: 4rem;
}
.el_ttl01_column {
  flex-direction: column;
  align-items: flex-start;
}
.el_ttl01_en {
  font-size: 10rem;
  line-height: 8rem;
  color: #111;
  font-weight: 700;
  font-family: "Encode Sans Expanded", sans-serif;
  font-style: italic;
}
@media screen and (max-width: 1040px) {
  .el_ttl01_en {
    font-size: 7rem;
    line-height: 6.4rem;
  }
}
@media screen and (max-width: 767px) {
  .el_ttl01_en {
    font-size: 4rem;
    line-height: 3.2rem;
  }
}
.el_ttl01_jp {
  font-size: 1.8rem;
  color: #268937;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1040px) {
  .el_ttl01_jp {
    font-size: 1.6rem;
  }
}

.el_ttl02 {
  font-size: 3rem;
  line-height: 4rem;
  color: #111;
  letter-spacing: 0.2em;
  font-weight: 700;
  margin: 0 0 15px;
}
@media screen and (max-width: 767px) {
  .el_ttl02 {
    font-size: 2.2rem;
    line-height: 3rem;
  }
}

.el_ttl03 {
  text-align: center;
  font-size: 2rem;
  color: #268937;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-bottom: 4.5rem;
  border-bottom: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .el_ttl03 {
    padding-bottom: 2rem;
  }
}
.el_ttl03_noline {
  border-bottom: 0px;
  padding: 0 0 30px;
}
.el_ttl03_ueline {
  border-bottom: 0px;
  border-top: 1px solid #e0e0e0;
  padding: 90px 0 30px;
}
.el_ttl03_first {
  margin: 0 0 55px;
  padding: 100px 0 60px;
}

.el_ttl04 {
  background: #0f7020;
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  padding: 1.5rem;
  text-align: center;
  border-radius: 1.2rem 1.2rem 0 0;
}
@media screen and (max-width: 767px) {
  .el_ttl04 {
    padding: 1rem 0;
    font-size: 1.8rem;
  }
}

.el-border-0 {
  border: 0 !important;
}

.el_pagettl {
  position: relative;
  padding-bottom: 10rem;
  background: #f4faf5;
}
@media screen and (max-width: 1040px) {
  .el_pagettl {
    padding-bottom: 7rem;
  }
}
@media screen and (max-width: 767px) {
  .el_pagettl {
    padding-bottom: 6rem;
  }
}
.el_pagettl .ly__inner {
  width: 100%;
  max-width: 100%;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .el_pagettl .ly__inner {
    width: 100%;
  }
}
.el_pagettl_ttl {
  background: url(images/common/bg-new.png);
  background-position: right;
  background-size: cover;
  padding: 5rem 10rem 5rem 4rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .el_pagettl_ttl {
    padding: 2rem 7rem 2rem 4rem;
  }
}
@media screen and (max-width: 767px) {
  .el_pagettl_ttl {
    padding: 2rem 5rem 2rem 2rem;
  }
}
.el_pagettl_ttl .en {
  font-size: 9rem;
  font-family: "Encode Sans Expanded", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  color: #111;
  font-style: italic;
}
@media screen and (max-width: 1040px) {
  .el_pagettl_ttl .en {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .el_pagettl_ttl .en {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 500px) {
  .el_pagettl_ttl .en {
    font-size: 2.6rem;
  }
}
.el_pagettl_ttl .jp {
  color: #268937;
  font-size: 2rem;
  letter-spacing: 0.1em;
  color: #268937;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 1040px) {
  .el_pagettl_ttl .jp {
    font-size: 1.6rem;
  }
  .el_pagettl_ttl .jp img {
    width: 2rem;
  }
}
@media screen and (max-width: 500px) {
  .el_pagettl_ttl .jp {
    font-size: 1.4rem;
  }
  .el_pagettl_ttl .jp img {
    width: 1.5rem;
  }
}
.el_pagettl .pos {
  position: absolute;
  right: 8rem;
  bottom: 0;
  z-index: 1;
  transform: translateY(22%);
}
@media screen and (max-width: 1040px) {
  .el_pagettl .pos {
    max-width: 20rem;
  }
}
@media screen and (max-width: 767px) {
  .el_pagettl .pos {
    max-width: 12rem;
    transform: translateY(9%);
    right: 3rem;
  }
}
@media screen and (max-width: 500px) {
  .el_pagettl .pos {
    display: none;
  }
}
.el_pagettl_img img {
  min-height: 20rem;
  -o-object-fit: cover;
     object-fit: cover;
}
.el_pagettl_en .en {
  margin: 0;
}
.page-id-234 .el_pagettl {
  border-top: 1px solid #e0e0e0;
}

.el_childttl {
  text-align: center;
}
.el_childttl .en {
  text-transform: capitalize;
  font-size: 5rem;
  font-family: "Encode Sans Expanded", sans-serif;
  font-weight: 700;
  line-height: 4.5rem;
  letter-spacing: 0.05em;
  color: #268937;
  margin: 0 0 10px;
}
@media screen and (max-width: 500px) {
  .el_childttl .en.page-en {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .el_childttl .en {
    font-size: 3rem;
    line-height: 3rem;
  }
}
.el_childttl .jp {
  color: #111;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #268937;
}
@media screen and (max-width: 767px) {
  .el_childttl .jp {
    font-size: 1.6rem;
  }
}
.el_childttl.hp_anker .ly__inner {
  padding-top: 90px;
}
.el_childttl_line {
  padding: 0;
}
.el_childttl_line .ly__inner {
  padding: 80px 0;
  margin: 80px auto 0;
  border-top: 1px solid #e9e9e9;
}
@media screen and (max-width: 767px) {
  .el_childttl_line .ly__inner {
    padding: 40px 0;
    margin: 40px auto 0;
  }
}
.el_childttl_en .en {
  margin: 0;
}

.el_btn {
  display: inline-block;
  padding: 23px 35px;
  background-color: #fff;
  border-radius: 70px;
  color: #268937;
  text-decoration: none;
  text-align: center;
  transition: 0.25s;
  border: 1px solid #268937;
  font-size: 2.4rem;
  max-width: 300px;
  width: 100%;
  margin: 40px auto 0;
}
@media screen and (max-width: 767px) {
  .el_btn {
    font-size: 2.2rem;
    margin: 20px auto 0;
    padding: 15px 20px;
    max-width: 480px;
    width: 90%;
  }
}
.el_btn:focus, .el_btn:hover, .el_btn:active {
  background: #268937;
  color: #fff;
}
.el_btn_green {
  background: #268937;
  color: #fff;
  cursor: pointer;
  width: 300px;
}
.el_btn_green:focus, .el_btn_green:hover, .el_btn_green:active {
  background: #fff;
  color: #268937;
}
.el_btn_head {
  padding: 18px 35px;
  border: 0px;
  font-size: 1.6rem;
  max-width: 180px;
  color: #268937;
  margin: 0;
}
.el_btn_head:focus, .el_btn_head:hover, .el_btn_head:active {
  background: #000;
  color: #fff;
}
.el_btn_foot {
  padding: 23px 35px;
  border: 0px;
  font-size: 1.8rem;
  max-width: 180px;
  margin-top: 0;
}
.el_btn_en {
  padding: 23px 35px;
  border: 0px;
  font-size: 1.8rem;
  max-width: 180px;
  margin-top: 0;
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
  margin-top: 15px;
}
.el_btn_en:focus, .el_btn_en:hover, .el_btn_en:active {
  background: #fff;
  color: #000;
}
.el_btn.el_btn_nb {
  border: 0px;
}
.el_btn_wide {
  max-width: 480px;
  background: #268937;
  color: #fff;
  border-radius: 0;
}
.el_btn_wide:focus, .el_btn_wide:hover, .el_btn_wide:active {
  background: #fff;
  color: #268937;
}
.el_btn_mynavi {
  width: 100%;
  max-width: 320px;
  padding: 20px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #268937;
  display: block;
  margin: 40px auto 0;
}

.el_btnmovie {
  display: inline-block;
  padding: 16px 10px 21px 90px;
  background: #268937 url(images/common/i-play@2x.png) no-repeat 23px center;
  background-size: 50px 50px;
  border-radius: 70px;
  color: #fff;
  text-decoration: none;
  transition: 0.25s;
  border: 1px solid #268937;
  font-size: 3rem;
  line-height: 3rem;
  max-width: 480px;
  width: 100%;
  margin: 40px auto 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .el_btnmovie {
    font-size: 1.8rem;
    line-height: 2rem;
    padding: 15px 5px 18px 70px;
    background: #268937 url(images/common/i-play@2x.png) no-repeat 20px center;
    background-size: 40px 40px;
    width: 90%;
    margin: 0 auto;
    display: block;
  }
}
.el_btnmovie span {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 1.4rem;
  display: block;
  margin: 0 0 5px;
}
.el_btnmovie:focus, .el_btnmovie:hover, .el_btnmovie:active {
  background: #fff url(images/common/i-play_green@2x.png) no-repeat 23px center;
  background-size: 50px 50px;
  color: #268937;
}
@media screen and (max-width: 767px) {
  .el_btnmovie:focus, .el_btnmovie:hover, .el_btnmovie:active {
    background: #fff url(images/common/i-play_green@2x.png) no-repeat 20px center;
    background-size: 40px 40px;
  }
}

.el_hamburger {
  width: -moz-max-content;
  width: max-content;
  height: 20px;
  position: unset;
  z-index: 10002;
  font-family: "Encode Sans Expanded", sans-serif;
  color: #111;
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 1rem;
  transition: 0.3s ease;
}
.el_hamburger .el_hamburger__icon,
.el_hamburger .el_hamburger__icon::before,
.el_hamburger .el_hamburger__icon::after {
  display: block;
  width: 30px;
  height: 1px;
  margin: 0 auto;
  background: #111;
  transition: 0.2s;
}
@media screen and (max-width: 767px) {
  .el_hamburger .el_hamburger__icon,
  .el_hamburger .el_hamburger__icon::before,
  .el_hamburger .el_hamburger__icon::after {
    width: 30px;
  }
}
.el_hamburger .el_hamburger__icon {
  position: relative;
  background: transparent;
  float: right;
  margin: 9px 0 0;
}
.el_hamburger .el_hamburger__icon::before {
  content: "";
  position: absolute;
  top: -4px;
}
.el_hamburger .el_hamburger__icon::after {
  content: "";
  position: absolute;
  top: 4px;
}
.js_drawer__open .el_hamburger {
  color: #fff;
  position: fixed;
  top: 5rem;
  right: 3rem;
}
@media screen and (max-width: 767px) {
  .js_drawer__open .el_hamburger {
    color: #268937;
    position: unset;
  }
}
.js_drawer__open .el_hamburger .el_hamburger__icon::before,
.js_drawer__open .el_hamburger .el_hamburger__icon::after {
  top: 0;
  background: #FFF;
}
@media screen and (max-width: 767px) {
  .js_drawer__open .el_hamburger .el_hamburger__icon::before,
  .js_drawer__open .el_hamburger .el_hamburger__icon::after {
    background: #268937;
  }
}
.js_drawer__open .el_hamburger .el_hamburger__icon {
  background: none;
}
.js_drawer__open .el_hamburger .el_hamburger__icon::before {
  transform: rotate(-45deg);
}
.js_drawer__open .el_hamburger .el_hamburger__icon::after {
  transform: rotate(45deg);
}

.el_scroll {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: none;
}
.el_scroll::before {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: -2px;
  /*丸の形状*/
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #eee;
  /*丸の動き1.6秒かけて透過し、永遠にループ*/
  animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}
.el_scroll::after {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: 0;
  /*線の形状*/
  width: 1px;
  height: 25px;
  background: #eee;
}

@keyframes circlemove {
  0% {
    bottom: 25px;
  }
  100% {
    bottom: -4px;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
.el_label {
  display: inline-block;
  padding: 3px 8px;
  background-color: #aaa;
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none;
  transition: 0.25s;
}
.el_label:focus, .el_label:hover, .el_label:active {
  opacity: 0.75;
}
.el_label.el_label__red {
  background-color: #e13626;
}

.el_breadCrumbs {
  padding-bottom: 3rem;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .el_breadCrumbs {
    padding-bottom: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .el_breadCrumbs .ly__inner {
    display: flex;
    align-items: center;
  }
}
.el_breadCrumbs span, .el_breadCrumbs a {
  font-size: 1.2rem;
  line-height: 1.5rem;
  color: #111;
  text-decoration: none;
  display: inline-block;
  vertical-align: baseline;
}
.el_breadCrumbs .home {
  padding: 0 0 0 30px;
  background: url(images/common/ic-home.png) no-repeat left center;
  background-size: 15px 15px;
}
@media screen and (max-width: 767px) {
  .el_breadCrumbs .home span {
    font-size: 0;
  }
}
.el_breadCrumbs .lt {
  width: 40px;
  height: 1.5rem;
  display: inline-block;
  vertical-align: baseline;
  background: url(images/common/ic-arrow.png) no-repeat center 7px;
  background-size: 4px 8px;
}
@media screen and (max-width: 767px) {
  .el_breadCrumbs .lt {
    width: 20px;
    height: 2rem;
  }
}

.el_iframe {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.el_iframe iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.el_iframe video {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.cursor {
  position: absolute;
  background-color: #fff;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  z-index: 1;
  transition: 0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
  z-index: 10000;
  transform: scale(1);
}
.cursor.active {
  opacity: 0.5;
  transform: scale(0);
}
.cursor.hovered {
  opacity: 0.08;
}

.cursor-follower {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.3);
  width: 20px;
  height: 20px;
  border-radius: 100%;
  z-index: 1;
  transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
  z-index: 10000;
  transform: translate(5px, 5px);
}
.cursor-follower span {
  display: none;
  text-align: center;
  transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity;
}
.cursor-follower.active {
  opacity: 0.7;
  transform: scale(3);
}
.cursor-follower.is-active {
  opacity: 0.7;
  transform: scale(3);
}
.cursor-follower.is-active span {
  display: block;
}
.cursor-follower.is-active span::before {
  content: "MORE";
  font-size: 10px;
}
.cursor-follower.hovered {
  opacity: 0.08;
}

.el_check {
  padding: 10px 0;
}
.el_check li {
  padding: 5px 0 5px 50px;
  background: url(images/common/green_check@2x.png) no-repeat left 14px;
  background-size: 22px 16px;
}

/* ==========================================================================
  Block Modules
  ========================================================================== */
.bl_modalMenu {
  transition: 0.3s ease;
  margin-top: 1.5rem;
}
.bl_modalMenu .bl_modalMenu_inner {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: #268937;
  z-index: 10000;
  padding: 100px 30px;
  box-sizing: border-box;
  height: 100vh;
  overflow-y: auto;
  transition: 0.3s ease;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner {
    top: 12vw;
    padding: 50px 10px 80px;
  }
}
@media screen and (max-width: 500px) {
  .bl_modalMenu .bl_modalMenu_inner {
    top: 6rem;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenuin {
  width: 100%;
  max-width: 1040px;
  position: relative;
  margin: 0 auto;
  display: flex;
  gap: 10rem;
}
@media screen and (max-width: 1040px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenuin {
    flex-direction: column;
    gap: 10vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenuin {
    padding-bottom: 80px;
    opacity: 0;
  }
  .js_drawer__open .bl_modalMenu .bl_modalMenu_inner .bl_modalMenuin {
    animation: fadein 0.4s ease-in forwards;
  }
}
.js_drawer__open .bl_modalMenu .bl_modalMenu_inner {
  visibility: visible;
  opacity: 1;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav {
    display: block;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav .txt-new {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-top: 3rem;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav .bl_modalMenu_nav__english {
  border-bottom: 1px solid #fff;
  max-width: -moz-max-content;
  max-width: max-content;
  padding-bottom: 0.5rem;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav .bl_modalMenu_nav__english {
    padding: 0;
    margin: 0;
    border: 0;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl {
    border-bottom: 1px solid #fff;
    line-height: 1.8rem;
    position: relative;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl a {
  color: #fff;
  text-decoration: none;
  position: relative;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd {
  margin: 55px 0 0;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd {
    display: none;
    margin: 0;
    border-top: 1px solid #fff;
    padding: 0 0 0 10px;
    position: relative;
  }
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd.spdisplay {
    display: block;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a {
  padding: 7px 15px 8px 22px;
  transition: 0.25s;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a {
    padding: 0 0 0 20px;
    display: block;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a span::before {
  content: "";
  width: 12px;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 3px;
  top: 16px;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a span::before {
    left: 15px;
    top: 31px;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:focus, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:hover, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:active {
  color: #000;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:focus span::before, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:hover span::before, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd a:active span::before {
  background: #000;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl dd ul li span {
    padding: 7px 15px 8px 22px;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu.sp_only dt::after, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu.sp_only dt::before {
  content: none !important;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.sp_only {
  padding: 13px 15px;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.sp_only::before, .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.sp_only::after {
  position: absolute;
  top: 26px;
  right: 10px;
  content: "";
  display: inline-block;
  width: 20px;
  height: 1px;
  background: #fff;
  transform: translateX(-50%);
  transition: 0.25s;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.sp_only::after {
  top: 26px;
  right: 20px;
  transform: rotate(90deg);
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.sp_only.active::after {
  transform: rotate(0) !important;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dt.dipmenu {
  border-top: 1px solid #fff;
  padding: 13px 15px;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dd li {
    border-top: 1px solid #fff;
    padding: 5px 0;
  }
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dd li:first-child {
    border-top: 0px;
  }
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.hidemenu dd span::before {
    top: 19px;
  }
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl.openmenu dt {
    border-top: 1px solid #fff;
    padding: 13px 15px;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__en {
  display: block;
  overflow: hidden;
  margin: 0 0 15px;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__en {
    display: none;
  }
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__en span {
  position: relative;
  display: inline-block;
  font-family: Helvetica, Arial, "Helvetica Neue", Verdana, Roboto, sans-serif;
  bottom: -35px;
  line-height: 3.2rem;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.5);
}
.js_drawer__open .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__en span {
  animation: slideup 0.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;
  animation-delay: 0.3s;
}
.bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__jp {
  display: block;
  font-size: 1.4rem;
  line-height: 1.8rem;
  opacity: 0;
  filter: alpha(opacity=0);
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__jp {
    font-size: 1.8rem;
    line-height: 2.4rem;
    opacity: 1;
  }
}
.js_drawer__open .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__jp {
  animation: fadein 0.8s ease-in forwards;
  animation-delay: 0.3s;
}
@media screen and (max-width: 767px) {
  .js_drawer__open .bl_modalMenu .bl_modalMenu_inner .bl_modalMenu_nav dl .bl_modalMenu_nav__jp {
    animation: none;
  }
}
.bl_modalMenu_head {
  width: 100%;
  max-width: -moz-max-content;
  max-width: max-content;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu_head {
    display: none;
  }
}
.bl_modalMenu_head .bl_modal_logo {
  width: 100%;
  max-width: 191px;
  height: auto;
}
.bl_modalMenu_head .bl_modal_btn {
  max-width: 180px;
}
@media screen and (max-width: 767px) {
  .bl_modalMenu .bl_modal_btn {
    margin: 25px auto 0;
    width: 90%;
    max-width: 700px;
    text-align: center;
  }
  .bl_modalMenu .bl_modal_btn .el_btn {
    max-width: 100%;
  }
}
.bl_modalMenu .bl_modalMenu_en li {
  margin: 0 0 40px;
}
.bl_modalMenu .bl_modalMenu_en .bl_modalMenu_nav__en {
  display: block;
  overflow: hidden;
}
.bl_modalMenu .bl_modalMenu_en .bl_modalMenu_nav__en span {
  position: relative;
  display: inline-block;
  font-family: Helvetica, Arial, "Helvetica Neue", Verdana, Roboto, sans-serif;
  bottom: -35px;
  line-height: 3.2rem;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #fff;
}
.js_drawer__open .bl_modalMenu .bl_modalMenu_en .bl_modalMenu_nav__en span {
  animation: slideup 0.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;
  animation-delay: 0.3s;
}

@keyframes slideup {
  from {
    bottom: -40px;
  }
  to {
    bottom: 0px;
  }
}
@keyframes fadein {
  from {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  to {
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.video-container {
  width: 100%;
  height: 664px;
  position: relative;
}

.bl_MV {
  position: relative;
  border-bottom: 20px solid #fff;
}
.bl_MV .bl_MV_inner {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .bl_MV .bl_MV_inner {
    padding-top: 120%;
  }
}
.bl_MV .bl_MV_inner .sec02 {
  line-height: 0;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
  height: auto !important;
}
.bl_MV #bg-movie {
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.bl_MVimg {
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: url(images/index/mvimg.jpg) no-repeat center center;
  background-size: cover;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  align-items: center;
  justify-content: center;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  z-index: -2;
}
.bl_MVimg p {
  font-size: 1.8rem;
  line-height: 2rem;
  letter-spacing: 0.1em;
  color: #111;
  font-weight: 300;
  margin: 20px 0 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bl_MVimg p {
    font-size: 1.4rem;
  }
}
.bl_MVimg .img01 {
  width: 135px;
  margin: 0 auto;
}
@media screen and (max-width: 1040px) {
  .bl_MVimg .img01 {
    width: 80px;
  }
}
.bl_MVimg .img02 {
  width: 80%;
  max-width: 458px;
  margin: 0 auto;
  padding: 0 0 160px;
}
@media screen and (max-width: 1040px) {
  .bl_MVimg .img02 {
    padding: 0 0 80px;
    max-width: 400px;
  }
}

.top-movie-box {
  padding-bottom: 13rem;
  position: unset;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1040px) {
  .top-movie-box {
    padding-bottom: 0;
  }
}
.top-movie-box_wrap {
  position: relative;
  width: 100%;
  z-index: 5;
  overflow: visible;
}
.top-movie-box_wrap:before {
  content: none;
  display: block;
  padding-top: 56.25%;
}
@media screen and (max-width: 767px) {
  .top-movie-box_wrap:before {
    padding-top: 120%;
  }
}
.top-movie-box .content-logo {
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-direction: column;
  padding-top: 12vw;
  margin-left: 12vw;
  max-width: -moz-max-content;
  max-width: max-content;
  opacity: 0;
  transition: 0.2s ease;
  transform: translateY(2rem);
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 1040px) {
  .top-movie-box .content-logo {
    padding-top: 22vw;
    margin-left: 0;
    max-width: 100%;
  }
}
.top-movie-box .content-logo.active {
  opacity: 1;
  transform: translateY(0);
}
.top-movie-box .content-logo .logo {
  width: 12.5rem;
}
@media screen and (max-width: 1040px) {
  .top-movie-box .content-logo .logo {
    width: 21vw;
  }
}
.top-movie-box .content-logo p {
  font-size: 5.8rem;
  font-family: "Shippori Antique", sans-serif;
  text-align: center;
}
@media screen and (max-width: 1040px) {
  .top-movie-box .content-logo p {
    font-size: 4.6rem;
  }
}
@media screen and (max-width: 500px) {
  .top-movie-box .content-logo p {
    font-size: 3.4rem;
  }
}
.top-movie-box .line {
  margin-top: 5rem;
  margin-left: 4.5vw;
}
@media screen and (max-width: 1040px) {
  .top-movie-box .line {
    margin-left: 3.5vw;
    margin-top: -15vw;
  }
}
.top-movie-box .line span {
  display: block;
  width: 0.2rem;
  height: 12rem;
  background: linear-gradient(to bottom, #92c29a, #7a8a7c);
}
@media screen and (max-width: 1040px) {
  .top-movie-box .line span {
    height: 24vw;
  }
}
.top-movie-box .txt {
  font-size: 1.2rem;
  font-weight: 600;
  font-family: "Encode Sans Expanded", sans-serif;
  margin-top: 2rem;
  margin-left: 4.5vw;
}
@media screen and (max-width: 1040px) {
  .top-movie-box .txt {
    margin-left: 3.5vw;
  }
}
.top-movie-box .img-pos-right {
  position: absolute;
  right: 0;
  top: 2rem;
  width: 51vw;
  max-width: -moz-max-content;
  max-width: max-content;
  opacity: 0;
  transition: 0.2s ease;
  transform: translateY(2rem);
}
@media screen and (max-width: 1040px) {
  .top-movie-box .img-pos-right {
    position: unset;
    max-width: 90rem;
    width: 100%;
    margin-left: auto;
    padding-left: 4.5vw;
    margin-top: 12vw;
  }
}
.top-movie-box .img-pos-right.active {
  opacity: 1;
  transform: translateY(0);
}
.top-movie-box_img {
  position: absolute;
  z-index: -1;
}
.top-movie-box_img .sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img .sp {
    display: block;
  }
  .top-movie-box_img .pc {
    display: none;
  }
}
.top-movie-box_img img {
  animation: floatY 4s ease-in-out infinite;
}
.top-movie-box_img-1 {
  left: 0;
  top: 16rem;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-1 {
    top: 37vw;
    width: 16vw;
  }
}
.top-movie-box_img-2 {
  left: 0;
  bottom: 7rem;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-2 {
    bottom: 55vw;
    width: 30vw;
  }
}
.top-movie-box_img-3 {
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-3 {
    top: 60vw;
    transform: none;
    width: 20vw;
  }
}
.top-movie-box_img-4 {
  bottom: 4.5rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-4 {
    transform: none;
    right: 0;
    left: auto;
    bottom: 0;
    width: 16.8vw;
  }
}
.top-movie-box_img-5 {
  top: 10rem;
  left: 50%;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-5 {
    right: 0;
    left: auto;
    width: 10vw;
    top: 15vw;
  }
}
.top-movie-box_img-6 {
  top: 25rem;
  right: 32rem;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-6 {
    display: none;
  }
}
.top-movie-box_img-7 {
  bottom: 22rem;
  left: 45rem;
}
@media screen and (max-width: 1040px) {
  .top-movie-box_img-7 {
    display: none;
  }
}
@keyframes floatY {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-2rem);
  }
  100% {
    transform: translateY(0);
  }
}

.bl_pixta {
  position: relative;
  margin-top: -6vw;
}
@media screen and (max-width: 1040px) {
  .bl_pixta {
    margin-top: 10vw;
  }
}
.bl_pixta__box {
  transform: rotate(349deg);
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.bl_pixta__top {
  white-space: nowrap;
  box-sizing: border-box;
  animation: marquee 20s linear infinite;
  display: flex;
  gap: 5rem;
}
.bl_pixta__top p {
  font-size: 7.2rem;
  color: #268937;
  font-weight: 600;
  font-family: "Encode Sans Expanded", sans-serif;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1040px) {
  .bl_pixta__top p {
    font-size: 5vw;
  }
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.bl_pixta__ft {
  margin-top: -9vw;
  position: relative;
  display: flex;
}
.bl_pixta__ft::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  border-top: 19vw solid #fff;
  border-right: 100vw solid transparent;
}
.bl_pixta__ft::before {
  position: absolute;
  content: "";
  bottom: 0;
  right: 0;
  border-bottom: 19vw solid #fff;
  border-left: 100vw solid transparent;
  z-index: 1;
}
.bl_pixta__ft p {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 7.2rem;
  color: #fff;
  font-family: "Shippori Antique", sans-serif;
  transform: translate(-50%, -50%);
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1040px) {
  .bl_pixta__ft p {
    font-size: 5vw;
  }
}
@media screen and (max-width: 1040px) {
  .bl_pixta__ft video {
    width: 100vw;
  }
}

/*========= LoadingのためのCSS ===============*/
#splash {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  text-align: center;
}
#splash #splash_text {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
}

.loader_cover {
  width: 100%;
  height: 50%;
  background-color: #e8e8e8;
  transition: all 0.4s cubic-bezier(0.04, 0.435, 0.315, 0.9);
  transform: scaleY(1);
  position: relative;
  z-index: 998;
  opacity: 1;
}
.loader_cover.loader_cover-up {
  transform-origin: center top;
}
.loader_cover.loader_cover-down {
  position: absolute;
  bottom: 0;
  transform-origin: center bottom;
}

.coveranime {
  opacity: 0;
}

.bl_topCompany {
  display: flex;
  gap: 4rem;
}
.bl_topCompany_wrap {
  margin-top: -4rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_wrap {
    padding-top: 15vw;
    margin-top: 15vw;
  }
  .bl_topCompany_wrap .el_ttl01 {
    flex-direction: column;
    align-items: normal;
    max-width: -moz-max-content;
    max-width: max-content;
    margin-left: auto;
  }
}
.bl_topCompany_wrap_img {
  position: absolute;
  z-index: -1;
}
.bl_topCompany_wrap_img .sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_wrap_img .sp {
    display: block;
  }
  .bl_topCompany_wrap_img .pc {
    display: none;
  }
}
.bl_topCompany_wrap_img-1 {
  left: 2rem;
  bottom: 5rem;
  width: 20rem;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_wrap_img-1 {
    left: 0;
    bottom: -20vw;
    width: 20vw;
  }
}
.bl_topCompany_wrap_img-2 {
  width: 10rem;
  bottom: 27rem;
  right: 0;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_wrap_img-2 {
    bottom: auto;
    width: 20vw;
    top: -18vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_topCompany_wrap .ly_topsecbox {
    padding: 60px 0 50px;
    background-size: 100% auto;
  }
}
.bl_topCompany_group {
  flex: 1;
}
.bl_topCompany_r {
  margin-top: 13rem;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_r {
    margin-top: 34vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_topCompany_r {
    margin-top: 30vw;
  }
}
@media screen and (max-width: 500px) {
  .bl_topCompany_r {
    margin-top: 20vw;
  }
}
.bl_topCompany_img {
  margin-left: -13rem;
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_img {
    margin: 0;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 40vw;
  }
}
.bl_topCompany_img img {
  transform: translateY(-11rem);
}
@media screen and (max-width: 1040px) {
  .bl_topCompany_img img {
    transform: none;
  }
}
.bl_topCompany_btnwrap {
  display: flex;
  justify-content: flex-end;
  margin-top: 6rem;
}

.bl_video {
  position: relative;
  z-index: 3;
  margin-top: 9rem;
}
.bl_video .ly__inner {
  max-width: 90rem;
}
@media screen and (max-width: 1040px) {
  .bl_video {
    margin-top: 13vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_video iframe {
    height: 50vw;
  }
}
.bl_video_content {
  position: relative;
  z-index: 1;
}
.bl_video_content::after {
  position: absolute;
  content: "";
  z-index: 2;
  width: 100%;
  height: 100%;
  background: url(images/index/video-bg.png);
  top: 0;
  left: 0;
  transition: 0.3s ease;
}
.bl_video_content.active::after {
  opacity: 0;
  z-index: -999;
}
.bl_video_content video {
  max-width: 100%;
}
.bl_video_txt {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  transition: 0.2s ease;
}
@media screen and (max-width: 1040px) {
  .bl_video_txt {
    gap: 5vw;
  }
}
.bl_video_txt.active {
  opacity: 0;
  z-index: -998;
}
.bl_video_txt img {
  width: 5rem;
  cursor: pointer;
}
@media screen and (max-width: 1040px) {
  .bl_video_txt img {
    width: 9vw;
  }
}
.bl_video_txt p {
  margin-top: 1rem;
  font-size: 3rem;
  font-family: "Shippori Antique", sans-serif;
}
@media screen and (max-width: 1040px) {
  .bl_video_txt p {
    font-size: 2.7vw;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .bl_video_txt p {
    font-size: 1.2rem;
  }
}
.bl_video_txt span {
  font-size: 1.4rem;
  font-family: "Encode Sans Expanded", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 1040px) {
  .bl_video_txt span {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_video_txt span {
    font-size: 1rem;
  }
}

.bl_topSerevice {
  background: url(images/index/service-bg.png);
  background-size: cover;
  padding: 27rem 0 2rem;
  margin-top: 12rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice {
    background: url(images/index/service-bg-sp.png);
    background-size: cover;
    padding: 40vw 0 24vw;
  }
}
@media screen and (max-width: 640px) {
  .bl_topSerevice .el_ttl01 {
    gap: 2rem;
  }
}
.bl_topSerevice_list {
  display: flex;
  flex-direction: column;
  gap: 20rem;
  margin-top: 20rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_list .bl_topSerevice_item:nth-child(2) {
    justify-content: flex-end;
  }
  .bl_topSerevice_list .bl_topSerevice_item:nth-child(2) .bl_topSerevice_item_left {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
.bl_topSerevice_item {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 12rem;
  justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item {
    gap: 5rem;
  }
}
.bl_topSerevice_item_left {
  flex: 1;
}
.bl_topSerevice_item_right {
  margin-right: -2rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_right {
    margin: 0;
    max-width: 33vw;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
  }
  .bl_topSerevice_item_right img {
    transform: translateY(-25%);
  }
}
.bl_topSerevice_item_right.v2 {
  margin-left: -2rem;
  margin-right: 0;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_right.v2 {
    left: 0;
    right: auto;
  }
}
.bl_topSerevice_item_title {
  font-size: 6.2rem;
  font-weight: 700;
  color: #268937;
  font-family: "Encode Sans Expanded", sans-serif;
}
.bl_topSerevice_item_title .sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_title {
    font-size: 4.2rem;
    max-width: 40rem;
  }
  .bl_topSerevice_item_title .sp {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .bl_topSerevice_item_title {
    font-size: 3.2rem;
  }
}
.bl_topSerevice_item_title.v2 {
  font-size: 5.2rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_title.v2 {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 767px) {
  .bl_topSerevice_item_title.v2 {
    font-size: 2.4rem;
  }
}
.bl_topSerevice_item_txt {
  text-align: right;
  color: #268937;
  font-size: 2rem;
  font-family: "Shippori Antique", sans-serif;
  margin-top: 10rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_txt {
    text-align: left;
    margin-top: 20vw;
  }
}
.bl_topSerevice_item_txt.v2 {
  margin-top: 4rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_txt.v2 {
    text-align: right;
    margin-top: 10vw;
  }
}
.bl_topSerevice_item_btn {
  margin-top: 8rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_btn {
    margin-top: 10vw;
    display: flex;
    justify-content: flex-end;
    width: 100%;
  }
}
.bl_topSerevice_item_btn.v2 {
  margin-top: 15rem;
}
@media screen and (max-width: 1040px) {
  .bl_topSerevice_item_btn.v2 {
    margin-top: 10vw;
  }
}
.bl_topSerevice_item_btn .btn-more {
  justify-content: space-between;
}

.bl_topNews {
  margin-top: 24rem;
}
@media screen and (max-width: 1040px) {
  .bl_topNews {
    margin-top: 0;
  }
}
@media screen and (max-width: 1040px) {
  .bl_topNews .ly__inner {
    width: 100%;
  }
}
.bl_topNews_wrap {
  display: flex;
  gap: 9rem;
}
@media screen and (max-width: 1040px) {
  .bl_topNews_wrap {
    flex-direction: column;
    gap: 3rem;
  }
  .bl_topNews_wrap .el_ttl01_column {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.bl_topNews_title {
  background: #f5f5f6;
  padding: 7rem 7rem 8rem 18rem;
  margin-left: calc(50% - 50vw);
}
@media screen and (max-width: 1040px) {
  .bl_topNews_title {
    margin: 0;
    padding: 14vw 4vw 4vw;
  }
}
.bl_topNews_title .el_ttl01_en {
  font-style: normal;
  font-size: 6rem;
}
@media screen and (max-width: 767px) {
  .bl_topNews_title .el_ttl01_en {
    font-size: 4rem;
    line-height: 1;
  }
}
.bl_topNews_btn {
  margin-top: 10rem;
}
.bl_topNews_btn.sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .bl_topNews_btn {
    margin-top: 10vw;
  }
  .bl_topNews_btn.sp {
    display: flex;
    justify-content: flex-end;
    margin: 0 2rem;
  }
  .bl_topNews_btn.pc {
    display: none;
  }
}
.bl_topNews_type {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 10rem;
  color: #999;
}
@media screen and (max-width: 1040px) {
  .bl_topNews_type {
    flex-direction: row;
    margin-top: 10vw;
    gap: 5vw 8vw;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.bl_topNews_type a {
  text-decoration: none;
}
.bl_topNews_post {
  flex: 1;
}
@media screen and (max-width: 1040px) {
  .bl_topNews_post {
    padding: 0 5vw;
  }
}
.bl_topNews_report {
  margin-top: 7rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.bl_topNews_report dl.bl_envlist {
  border: 1px solid #92c29a;
  background: #f6fbf7;
}
.bl_topNews_report dl.bl_envlist dt {
  width: 160px;
  padding: 0 0 0 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .bl_topNews_report dl.bl_envlist dt {
    width: 100%;
    flex: 0 0 100%;
    padding: 0;
  }
}
.bl_topNews_report dl.bl_envlist dd a {
  color: #000;
  text-decoration: none;
}
.bl_topNews dl {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  flex-direction: column;
  gap: 2.5rem;
  font-size: 1.6rem;
  line-height: 2.4rem;
  border-bottom: 1px solid #f2f2f2;
  padding: 14px 0;
}
@media screen and (max-width: 1040px) {
  .bl_topNews dl {
    padding: 5vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_topNews dl {
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    font-size: 1.5rem;
    line-height: 2.2rem;
  }
}
.bl_topNews dl.line {
  border-color: #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_topNews dl dt {
    flex: 0 0 100%;
  }
}
.bl_topNews dl dt span {
  display: inline-block;
}
.bl_topNews dl dt span.cat {
  font-size: 1.2rem;
  color: #999999;
}
.bl_topNews dl dt span.cat a {
  text-decoration: none;
  display: block;
}
.bl_topNews dl dt span.cat.report {
  background: #268937;
  border-color: #268937;
}
.bl_topNews dl dt span.cat.report:focus, .bl_topNews dl dt span.cat.report:hover, .bl_topNews dl dt span.cat.report:active {
  background: #fff;
  color: #268937;
}
.bl_topNews dl dt span.date {
  font-size: 1.4rem;
  margin-left: 2rem;
  color: #999999;
}
@media screen and (max-width: 767px) {
  .bl_topNews dl dd {
    margin: 10px 0 0;
  }
}
.bl_topNews dl dd a {
  color: #111;
  text-decoration: underline;
}
.bl_topNews dl dd a:focus, .bl_topNews dl dd a:hover, .bl_topNews dl dd a:active {
  color: #268937;
  text-decoration: none;
}
.bl_topNews dl dd p {
  padding: 0 0 15px;
  color: #666;
}
.bl_topNews dl dd p:last-child {
  padding: 0;
}
.bl_topNews dl.bl_envlist {
  border-color: #dfdfdf;
  color: #000;
}
.bl_topNews dl.bl_envlist dt {
  width: 160px;
  padding: 0 0 0 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .bl_topNews dl.bl_envlist dt {
    width: 100%;
    flex: 0 0 100%;
    padding: 0;
  }
}
.bl_topNews dl.bl_envlist dd a {
  color: #000;
}

.bl_topLocation_wrap {
  overflow: hidden;
  padding: 20rem 0;
  position: relative;
  margin-top: 20rem;
  background: #000;
}
@media screen and (max-width: 1040px) {
  .bl_topLocation_wrap {
    padding: 26vw 0;
    margin-top: 18vw;
  }
}
.bl_topLocation_wrap .el_ttl01_en,
.bl_topLocation_wrap .el_ttl01_jp {
  color: #fff;
}
.bl_topLocation_wrap .el_ttl01_en {
  font-size: 7.2rem;
}
@media screen and (max-width: 767px) {
  .bl_topLocation_wrap .el_ttl01_en {
    font-size: 4rem;
  }
}
.bl_topLocation_img {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  transition: 2s ease;
}
.bl_topLocation_img.active {
  opacity: 0 !important;
}
.bl_topLocation_img .sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .bl_topLocation_img .sp {
    display: block;
  }
  .bl_topLocation_img .pc {
    display: none;
  }
}
.bl_topLocation_btn {
  margin: 120px 0 0;
  max-width: 26rem;
}
@media screen and (max-width: 1040px) {
  .bl_topLocation_btn {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: 30vw;
    max-width: 100%;
  }
}

.ly__inner {
  width: 90%;
  max-width: 1040px;
  margin: 0 auto;
}

.bl_aside .ly__inner {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: 0 10rem;
  background: url(images/company/aside-bg.png);
  background-size: cover;
  padding: 7rem 8rem;
  border-radius: 1.2rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .bl_aside .ly__inner {
    padding: 3rem 4rem 4rem;
    gap: 2.5rem 5rem;
  }
}
.bl_aside ul li {
  box-sizing: border-box;
  border-bottom: 1px solid #fff;
}
.bl_aside ul li a {
  padding: 5rem 0 2rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  background-size: 8px 14px;
  font-size: 1.6rem;
  color: #fff;
  text-decoration: none;
  position: relative;
}
.bl_aside ul li a img {
  width: 2.5rem;
}
@media screen and (max-width: 767px) {
  .bl_aside ul li a {
    padding: 2.5rem 0 1rem;
  }
  .bl_aside ul li a img {
    width: 2rem;
  }
}
.bl_aside ul li:first-child a {
  padding: 0 0 2rem;
}
@media screen and (max-width: 767px) {
  .bl_aside ul li:first-child a {
    padding: 0 0 1rem;
  }
}

.c_box_wrap {
  background: #fff;
  padding-top: 8rem;
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
}
@media screen and (max-width: 767px) {
  .c_box_wrap {
    padding-top: 4rem;
  }
}

.bl_flexbox {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .bl_flexbox {
    gap: 3rem;
  }
}
.bl_flexbox_reverse {
  flex-direction: row-reverse;
}
.bl_flexbox_greeting .bl_flexbox_l {
  padding: 7rem 8rem 0;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_greeting .bl_flexbox_l {
    padding: 3rem 3rem 0;
  }
}
.bl_flexbox_greeting .bl_flexbox_r {
  text-align: center;
  position: relative;
}
.bl_flexbox_greeting .bl_flexbox_r .name {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  right: 13vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1040px) {
  .bl_flexbox_greeting .bl_flexbox_r .name.page-en {
    right: 9vw;
  }
}
@media screen and (max-width: 767px) {
  .bl_flexbox_greeting .bl_flexbox_r .name.page-en {
    right: 6vw;
  }
}
@media screen and (max-width: 500px) {
  .bl_flexbox_greeting .bl_flexbox_r .name.page-en {
    right: 3vw;
  }
}
@media screen and (max-width: 1040px) {
  .bl_flexbox_greeting .bl_flexbox_r .name {
    right: 11vw;
  }
}
.bl_flexbox_greeting .bl_flexbox_r .name .txt {
  color: #268937;
  font-size: 1.6rem;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .txt {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 500px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .txt {
    font-size: 1rem;
  }
}
@media screen and (max-width: 640px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .txt {
    font-size: 0.8rem;
  }
}
.bl_flexbox_greeting .bl_flexbox_r .name .des {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.bl_flexbox_greeting .bl_flexbox_r .name .des p {
  font-size: 2.8rem;
  font-weight: 500;
  color: #268937;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .des p {
    font-size: 1.8rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 500px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .des p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 640px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .des p {
    font-size: 1.2rem;
  }
}
.bl_flexbox_greeting .bl_flexbox_r .name .des span {
  font-size: 1rem;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 500px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .des span {
    font-size: 0.8rem;
  }
}
@media screen and (max-width: 640px) {
  .bl_flexbox_greeting .bl_flexbox_r .name .des span {
    font-size: 0.7rem;
  }
}
.bl_flexbox_greeting .bl_flexbox_r img {
  display: inline-block;
}
.bl_flexbox_partner {
  align-items: center;
}
.bl_flexbox_partner .bl_flexbox_l {
  text-align: center;
}
.bl_flexbox_partner .bl_flexbox_l img {
  display: inline-block;
  max-width: 380px;
  width: 100%;
}
.bl_flexbox_sales li {
  width: 31.7%;
}
.bl_flexbox_sale {
  flex-direction: row-reverse;
}
.bl_flexbox_sale .bl_flexbox_l {
  width: 50%;
}
.bl_flexbox_sale .bl_flexbox_r {
  width: 44.9%;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_sale .bl_flexbox_r {
    margin: 0 0 20px !important;
  }
}
.bl_flexbox_salesen {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
  gap: 2rem;
  margin-top: 7rem;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_salesen {
    margin-top: 5rem;
  }
}
.bl_flexbox_salesen li {
  background: #f6fbf7;
  border: 1px solid #99cfa3;
  border-radius: 1.2rem;
  padding-bottom: 2rem;
}
.bl_flexbox_salesen li img {
  width: 100%;
  border-radius: 1.2rem 1.2rem 0 0;
}
.bl_flexbox_salesen li a {
  text-decoration: none;
}
.bl_flexbox_salesen li a:focus, .bl_flexbox_salesen li a:hover, .bl_flexbox_salesen li a:active {
  opacity: 0.6 !important;
}
.bl_flexbox_sdgs {
  align-items: center;
  padding: 70px 50px 0;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_sdgs {
    padding: 70px 0 0;
  }
}
.bl_flexbox_sdgs .bl_flexbox_l {
  width: 22.34%;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_sdgs .bl_flexbox_l {
    width: 100%;
    text-align: center;
  }
  .bl_flexbox_sdgs .bl_flexbox_l img {
    max-width: 130px;
  }
}
.bl_flexbox_sdgs .bl_flexbox_r {
  width: 70.21%;
  font-size: 2rem;
  line-height: 3.6rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_sdgs .bl_flexbox_r {
    font-size: 1.5rem;
    line-height: 3.2rem;
    letter-spacing: 0;
  }
  .bl_flexbox_sdgs .bl_flexbox_r br {
    display: none;
  }
}
.bl_flexbox_envbox {
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.bl_flexbox_envbox dl {
  width: 50%;
  box-sizing: border-box;
  border-right: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  padding: 20px;
}
.bl_flexbox_envbox dl:nth-child(odd) {
  border-left: 1px solid #e9e9e9;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_envbox dl {
    width: 100%;
    border-left: 1px solid #e9e9e9;
  }
}
.bl_flexbox_activ .bl_activbox {
  width: 48%;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_activ .bl_activbox {
    width: 100%;
  }
  .bl_flexbox_activ .bl_activbox:nth-child(2) {
    margin: 40px 0 0;
  }
}
.bl_flexbox_iso {
  margin-top: 4rem;
  border: 1px solid #111;
  padding: 40px 45px;
  align-items: center;
  flex-direction: row;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_iso {
    padding: 20px;
  }
}
.bl_flexbox_iso .bl_flexbox_l {
  width: 104px;
  flex: 0 0 104px;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_iso .bl_flexbox_l {
    width: 100%;
    flex: 0 0 100%;
    margin: 0 0 20px;
    text-align: center;
    margin: 0;
  }
}
.bl_flexbox_iso .bl_flexbox_r {
  width: 84.375%;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_iso .bl_flexbox_r {
    width: 100%;
  }
}
.bl_flexbox_iso2 {
  margin: 80px 0 0px;
}
@media screen and (max-width: 767px) {
  .bl_flexbox_iso2 {
    margin: 50px 0 0px;
  }
}
@media screen and (max-width: 767px) {
  .bl_flexbox_spc {
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
  .bl_flexbox_spc .bl_flexbox_l,
  .bl_flexbox_spc .bl_flexbox_r {
    width: 100%;
  }
  .bl_flexbox_spc li {
    width: 100%;
    margin: 0 0 30px;
  }
  .bl_flexbox_spc li .img {
    text-align: center;
  }
  .bl_flexbox_spc li .img img {
    display: inline-block;
    max-width: 380px;
    width: 100%;
  }
}

.bl_philosophy {
  margin: 90px 0 0;
}
@media screen and (max-width: 767px) {
  .bl_philosophy {
    margin: 45px 0 0;
  }
}
.bl_philosophy li {
  min-height: 170px;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  align-items: center;
  background: #fff;
  font-size: 2rem;
  line-height: 3.6rem;
  padding: 0 20px 0 150px;
}
@media screen and (max-width: 767px) {
  .bl_philosophy li {
    padding: 100px 20px 20px;
    font-size: 1.8rem;
    line-height: 3rem;
  }
}
.bl_philosophy li:nth-child(1) {
  background: #fff url(images/company/02_02_icon01@2x.png) no-repeat 54px center;
  background-size: 63px 63px;
}
@media screen and (max-width: 767px) {
  .bl_philosophy li:nth-child(1) {
    background-position: center 20px;
  }
}
.bl_philosophy li:nth-child(2) {
  background: #fff url(images/company/02_02_icon02@2x.png) no-repeat 56px center;
  background-size: 60px 67px;
}
@media screen and (max-width: 767px) {
  .bl_philosophy li:nth-child(2) {
    background-position: center 23px;
  }
}
.bl_philosophy li:nth-child(3) {
  margin: 0;
  background: #fff url(images/company/02_02_icon03@2x.png) no-repeat 55px center;
  background-size: 64px 45px;
}
@media screen and (max-width: 767px) {
  .bl_philosophy li:nth-child(3) {
    background-position: center 30px;
  }
}
.bl_philosophy_list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: 2rem;
}
.bl_philosophy_list_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
  background: #f6fbf7;
  border: 1px solid #92c29a;
  border-radius: 1.2rem;
  padding: 1rem;
  padding: 5rem 1rem 4rem;
}
@media screen and (max-width: 767px) {
  .bl_philosophy_list_item {
    gap: 1.5rem;
    padding: 3rem 1rem;
  }
}
.bl_philosophy_list_item .img {
  min-height: 6.7rem;
  align-content: center;
  max-width: 6rem;
}
.bl_philosophy_list_item .txt {
  color: #268937;
  text-align: center;
  font-size: 1.8rem;
}

.bl_table table {
  font-size: 1.6rem;
  line-height: 3rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .bl_table table {
    display: block;
  }
  .bl_table table tbody {
    display: block;
  }
}
.bl_table table th {
  background: #f8faf8;
  padding: 15px 15px 15px 30px;
  border-bottom: 1px solid #e0e0e0;
  width: 220px;
  text-align: left;
  vertical-align: middle;
  color: #268937;
}
@media screen and (max-width: 767px) {
  .bl_table table th {
    display: block;
    width: 100%;
    border-bottom: 0px;
    padding: 10px 15px;
  }
}
.bl_table table td {
  padding: 15px 15px 15px 30px;
  border-bottom: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_table table td {
    display: block;
    width: 100%;
    padding: 10px 15px;
  }
}
.bl_table table tr:first-child th,
.bl_table table tr:first-child td {
  border-top: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_table table tr:first-child td {
    border-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .bl_table table tr {
    display: block;
  }
}
.bl_table01 {
  margin: 0 0 100px;
  background: #fff;
}
.bl_table01 td {
  width: 50%;
}
.bl_table01 td:first-child {
  border-right: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_table01 td {
    display: block;
    width: 100%;
    border-right: 0px;
  }
  .bl_table01 td:first-child {
    border-right: 0;
  }
}
.bl_table02 td {
  width: 50%;
}
.bl_table02 td:first-child {
  border-right: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_table02 td {
    display: block;
    width: 100%;
    border-right: 0px;
  }
  .bl_table02 td:first-child {
    border-right: 0;
  }
}

.bl_access {
  padding-top: 4rem;
  border-bottom: 1px solid #e0e0e0;
  background: #f6fbf7;
}
@media screen and (max-width: 1040px) {
  .bl_access {
    padding-top: 2rem;
  }
}
.bl_access .bl_flexbox {
  flex-direction: row;
  gap: 4rem;
}
.bl_access .bl_flexbox.page-en {
  align-items: center;
}
@media screen and (max-width: 1040px) {
  .bl_access .bl_flexbox.page-en {
    align-items: flex-start;
  }
}
@media screen and (max-width: 1040px) {
  .bl_access .bl_flexbox {
    flex-direction: column;
    align-items: flex-start;
  }
}
.bl_access_img img {
  height: 36rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1040px) {
  .bl_access_img img {
    height: auto;
  }
}
@media screen and (max-width: 1040px) {
  .bl_access_img {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.bl_access_r {
  flex: 1;
  padding-right: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .bl_access_r {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.bl_access_ttl {
  font-size: 1.8rem;
  font-weight: 500;
  padding: 0 0 25px;
  margin: 0 0 10px;
  border-bottom: 1px solid #268937;
}
.bl_access_box {
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
  background: #fff;
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 3.2rem;
  border-radius: 1.2rem;
  padding-bottom: 1rem;
}
.bl_access_box .label {
  padding: 0.5rem;
  border-bottom: 1px solid #268937;
  margin-bottom: 1rem;
}
.bl_access_box .label span {
  width: 100%;
  text-align: center;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 600;
  font-family: "Encode Sans Expanded", sans-serif;
  color: #268937;
}
.bl_access_box .car,
.bl_access_box .train {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #666;
  padding: 0 1rem;
  font-size: 1.3rem;
}
.bl_access_box .car .img-car,
.bl_access_box .car .img-train,
.bl_access_box .train .img-car,
.bl_access_box .train .img-train {
  background: #f7f7f7;
  padding: 1.5rem 1rem;
  border-radius: 0.6rem;
  display: flex;
}
.bl_access_box .car .txt,
.bl_access_box .train .txt {
  flex: 1;
  line-height: 1.2;
}
.bl_access_box .car img,
.bl_access_box .train img {
  width: 2rem;
}
.bl_access_box .car {
  margin-top: 1rem;
}
.bl_access_map {
  padding-bottom: 32rem;
  margin: 40px 0 0;
}
.bl_access_noline {
  border-bottom: 0px;
}

.bl_partner_wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
  gap: 4rem;
}
.bl_partner_box {
  border: 1px solid #268937;
  border-radius: 1.2rem;
  background: #fff;
  padding: 30px;
  min-height: 51px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .bl_partner_box {
    padding: 1.5rem;
    min-height: auto;
  }
}
.bl_partner_box:last-child {
  margin: 0;
}
.bl_partner_img {
  display: flex;
  justify-content: center;
  min-height: 10rem;
  align-items: center;
}
.bl_partner_ttl {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  line-height: 2.2rem;
  border-top: 1px solid #e8e8e8;
  text-align: center;
  padding: 4rem 0;
}
@media screen and (max-width: 767px) {
  .bl_partner_ttl {
    padding: 2rem 0;
  }
}

.bl_salesimg.pc_only {
  margin-top: 7rem;
  display: flex;
  justify-content: center;
}

.bl_salesbox .img {
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 767px) {
  .bl_salesbox .img {
    margin-bottom: 1rem;
  }
}
.bl_salesbox_ttl {
  font-size: 1.6rem;
  padding: 0 2rem;
  line-height: 1;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 767px) {
  .bl_salesbox_ttl {
    margin-bottom: 1rem;
    padding: 0 1rem;
  }
}
.bl_salesbox_txt {
  font-size: 1.3rem;
  color: #666;
  padding: 0 2rem;
}
@media screen and (max-width: 767px) {
  .bl_salesbox_txt {
    padding: 0 1rem;
  }
}
.bl_salesbox_list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
  gap: 2rem;
  margin-top: 7rem;
}
@media screen and (max-width: 767px) {
  .bl_salesbox_list {
    margin-top: 5rem;
    grid-template-columns: repeat(1, minmax(1rem, 1fr));
  }
}
.bl_salesbox_list_item {
  background: #f6fbf7;
  border: 1px solid #99cfa3;
  border-radius: 1rem;
  padding: 1.6rem 2.5rem;
}
@media screen and (max-width: 767px) {
  .bl_salesbox_list_item {
    padding: 1rem 2rem;
  }
}
.bl_salesbox_list_item a {
  text-decoration: none;
}

.bl_emsimg div {
  margin: 0 auto 15px;
  position: relative;
  width: 100%;
  max-width: 350px;
}
.bl_emsimg div img {
  position: relative;
}
.bl_emsimg div::before {
  content: "";
  width: 53px;
  height: 40px;
  background: url(images/service/sp_arrow.png) no-repeat left top;
  background-size: 53px auto;
  display: block;
  position: absolute;
  z-index: 3;
  left: 50%;
  margin-left: -26px;
  bottom: -22px;
}
.bl_emsimg div:last-child::before {
  content: none;
}

.bl_servicePolicy li {
  background: #fff;
  margin: 0 0 20px;
  padding: 0 50px 0 0;
  min-height: 170px;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .bl_servicePolicy li {
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    padding: 20px;
  }
  .bl_servicePolicy li .hp_fs16 {
    width: 100%;
  }
}
.bl_servicePolicy li .num {
  width: 154px;
  display: block;
  flex: 0 0 154px;
  text-align: center;
  color: #268937;
  font-family: Helvetica, Arial, "Helvetica Neue", Verdana, Roboto, sans-serif;
  font-size: 6rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .bl_servicePolicy li .num {
    width: 100%;
    flex: 0 0 100%;
  }
}
.bl_servicePolicy li:last-child {
  margin: 0;
}
.bl_servicePolicy_box {
  background: #f6fbf7;
  border: 1px solid #99cfa3;
  border-radius: 1rem;
  padding: 4rem;
}
.bl_servicePolicy_title {
  font-size: 2rem;
  color: #268937;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 4rem;
}

.bl_sdgs_img {
  padding: 4rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .bl_sdgs_img {
    padding: 3rem 2rem;
  }
}
.bl_sdgs_img img {
  width: 100%;
  max-width: 62rem;
  margin: 0 auto;
  display: block;
}
.bl_sdgs_img p {
  color: #1e8ec4;
  font-size: 2rem;
  line-height: 3.6rem;
  text-align: center;
  margin: 35px 0 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgs_img p {
    font-size: 1.5rem;
    line-height: 1.8rem;
    margin: 16px 0 0;
  }
}
.bl_sdgsbox {
  background: linear-gradient(#399a49, #268937);
  border-radius: 20px;
  position: relative;
  padding: 65px 0 0;
}
.bl_sdgsbox_wrap {
  margin: 67px auto 0;
  width: 90%;
  max-width: 1040px;
  padding: 0 50px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox_wrap {
    padding: 0;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox {
    border-radius: 0;
  }
}
.bl_sdgsbox::before {
  content: "";
  display: block;
  width: 385px;
  height: 368px;
  background: url(images/environmental/bglogo@2x.png) no-repeat right top;
  background-size: contain;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox::before {
    width: 180px;
    height: 176px;
  }
}
.bl_sdgsbox_inner {
  width: 59%;
  max-width: 560px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox_inner {
    width: 90%;
  }
}
.bl_sdgsbox .icon {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 64px;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox .icon {
    display: none;
  }
}
.bl_sdgsbox .icon::before {
  content: "";
  width: 20%;
  left: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  background: url(images/environmental/04_02_wit_icon01@2x.png) no-repeat center bottom;
  background-size: contain;
}
.bl_sdgsbox .icon::after {
  content: "";
  width: 20%;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  background: url(images/environmental/04_02_wit_icon02@2x.png) no-repeat center bottom;
  background-size: contain;
}
.bl_sdgsbox_ttl {
  text-align: center;
  color: #fff;
  font-size: 3rem;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox_ttl {
    font-size: 2.1rem;
  }
}
.bl_sdgsbox_label {
  border: 2px solid #fff;
  border-radius: 15px;
  padding: 13px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin: 40px 0 60px;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .bl_sdgsbox_label {
    font-size: 1.6rem;
    margin: 40px 0 40px;
    border-width: 1px;
    border-radius: 8px;
  }
}

.bl_envbox_ttl {
  background: #fff;
  font-size: 1.6rem;
  line-height: 6rem;
  border: 1px solid #e9e9e9;
  text-align: center;
  margin: 50px 0 0;
}
.bl_envbox dl dt {
  font-size: 1.6rem;
  line-height: 3.6rem;
  font-weight: 700;
}
.bl_envbox dl dd {
  font-size: 1.4rem;
  line-height: 2.8rem;
}

.bl_activ {
  margin: 90px 0 0;
}
.bl_activ_line {
  border-top: 1px solid #e9e9e9;
  margin: 110px 0 0;
  padding: 100px 0 0;
}
@media screen and (max-width: 767px) {
  .bl_activ_line {
    margin: 60px 0 0;
    padding: 50px 0 0;
  }
}
.bl_activ_box {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  background: #f6fbf7;
  padding: 4rem;
  border: 1px solid #92c29a;
  border-radius: 1.2rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_box {
    padding: 2rem;
  }
}
.bl_activ_list {
  display: flex;
  gap: 4rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_list {
    flex-direction: column;
  }
}
.bl_activ_list_item {
  background: #fff;
  padding-top: 3rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .bl_activ_list_item {
    padding-top: 1.5rem;
  }
}
.bl_activ_list_item_title {
  font-size: 2rem;
  font-weight: 700;
  color: #268937;
  padding: 0 3rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_list_item_title {
    padding: 0 1.5rem;
  }
}
.bl_activ_list_item .hp_fs16 {
  padding: 0 3rem;
  margin-top: 0.6rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_list_item .hp_fs16 {
    padding: 0 1.5rem;
  }
}
.bl_activ_list_item_img {
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_list_item_img {
    padding-top: 1.5rem;
  }
}
.bl_activ_post {
  display: flex;
  flex-direction: column;
  gap: 7.5rem;
}
@media screen and (max-width: 767px) {
  .bl_activ_post {
    gap: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .bl_activ {
    margin: 40px 0 0;
  }
}
.bl_activ dt {
  margin: 0 0 15px;
  font-size: 3rem;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .bl_activ dt {
    margin: 0 0 5px;
    font-size: 2.2rem;
  }
}
.bl_activ img {
  display: block;
  margin: 0 auto 28px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .bl_activ img {
    margin: 0 auto 15px;
  }
}

.bl_active {
  padding: 90px 0 0;
}
.bl_active dt {
  margin: 0 0 15px;
  font-size: 3rem;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .bl_active dt {
    margin: 0 0 5px;
    font-size: 2.2rem;
  }
}
.bl_active img {
  display: block;
  margin: 0 auto 28px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .bl_active img {
    margin: 0 auto 15px;
  }
}

.bl_topNewsList_wrap {
  margin: 0 0 70px;
  padding-top: 1px;
}
@media screen and (max-width: 767px) {
  .bl_topNewsList_wrap {
    margin: 0 0 30px;
  }
}

.bl_pagenav {
  margin: 6rem 0 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bl_pagenav {
    margin: 50px 0 0;
  }
}
.bl_pagenav .wp-pagenavi {
  display: inline-block;
  padding: 0 110px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .bl_pagenav .wp-pagenavi {
    padding: 0 56px;
  }
}
.bl_pagenav span,
.bl_pagenav a {
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  margin: 0 4px;
  padding: 13px 20px;
  min-height: 50px;
  min-width: 50px;
  vertical-align: top;
  border: 1px solid #268937;
  color: #268937;
  font-family: "Encode Sans Expanded", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .bl_pagenav span,
  .bl_pagenav a {
    padding: 7px 12px;
    font-size: 1.2rem;
    min-height: 36px;
    min-width: 36px;
  }
}
.bl_pagenav .pages {
  display: none;
}
.bl_pagenav .nextpostslink {
  font-size: 0;
  background: url(images/news/ic-right.png) no-repeat center center;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .bl_pagenav .nextpostslink {
    background-size: 10px;
  }
}
.bl_pagenav .previouspostslink {
  font-size: 0;
  background: url(images/news/ic-left.png) no-repeat center center;
  margin-right: 54px;
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .bl_pagenav .previouspostslink {
    background-size: 10px;
  }
}
.bl_pagenav span.current {
  border: 1px solid #268937;
  background: #268937;
  color: #fff;
}

.bl_newsPost {
  background: #fff;
  padding: 7rem 8rem 10rem;
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .bl_newsPost {
    margin-bottom: 5rem;
    padding: 3rem 2rem;
  }
}
.bl_newsPost_head .el_cat {
  display: inline-block;
}
.bl_newsPost_head .el_cat span {
  display: inline-block;
}
.bl_newsPost_head .el_cat span.cat {
  font-size: 1.2rem;
  color: #fff;
  width: 120px;
  text-align: center;
  padding: 2px 0;
  margin: 0 15px 0 0;
  border: 1px solid #666;
  border-radius: 3px;
  color: #666;
}
.bl_newsPost_head .el_cat span.cat a {
  text-decoration: none;
  display: block;
}
.bl_newsPost_head .el_cat span.cat.report {
  background: #268937;
  border-color: #268937;
}
.bl_newsPost_head .el_date {
  display: inline-block;
  color: #666;
}
.bl_newsPost_head h1 {
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  color: #000;
  margin-top: 2.5rem;
  padding-bottom: 4rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
@media screen and (max-width: 767px) {
  .bl_newsPost_head h1 {
    margin-top: 2rem;
    padding-bottom: 2.5rem;
  }
}

.bl_post_body {
  margin-top: 5.5rem;
  font-size: 1.6rem;
  line-height: 3.6rem;
}
.bl_post_body pre {
  white-space: normal;
}
@media screen and (max-width: 767px) {
  .bl_post_body {
    font-size: 1.5rem;
    line-height: 3.2rem;
    margin-top: 2.5rem;
  }
}
.bl_post_body .post-thumbnail {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .bl_post_body .post-thumbnail {
    margin-top: 2.5rem;
  }
}
.bl_post_body h1 {
  font-size: 32px;
  font-weight: 500;
  line-height: 32px;
  position: relative;
  padding: 0 0 21px;
  margin: 0 0 40px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bl_post_body h1 {
    font-size: 24px;
  }
}
.bl_post_body h1::before {
  content: "";
  width: 40px;
  height: 3px;
  background: #ccc;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -20px;
}
.bl_post_body h2 {
  font-size: 26px;
  font-weight: 500;
  color: #268937;
  line-height: 30px;
  margin: 0 0 18px;
}
@media screen and (max-width: 767px) {
  .bl_post_body h2 {
    font-size: 22px;
  }
}
.bl_post_body h3 {
  font-size: 22px;
  font-weight: 500;
  line-height: 31px;
  margin-bottom: 15px;
  color: #111;
}
@media screen and (max-width: 767px) {
  .bl_post_body h3 {
    font-size: 20px;
  }
}
.bl_post_body h4 {
  font-size: 18px;
  line-height: 31px;
  font-weight: 700;
  margin-bottom: 15px;
}
.bl_post_body h5 {
  font-size: 16px;
  line-height: 31px;
  font-weight: 700;
  margin-bottom: 15px;
}
.bl_post_body h6 {
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  margin-bottom: 15px;
}
.bl_post_body pre {
  margin-bottom: 15px;
}
.bl_post_body strong {
  font-weight: 700;
}
.bl_post_body em {
  font-style: italic;
}
.bl_post_body blockquote {
  position: relative;
  margin: 15px 0;
  padding: 1em 1em 1em 2.6em;
  font-size: 14px;
  border-left: 5px solid #CCC;
  border-radius: 2px;
}
.bl_post_body blockquote:after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "”";
  font-family: sans-serif;
  font-size: 6em;
  opacity: 0.1;
}
.bl_post_body img {
  width: auto;
  height: auto;
  max-width: 100%;
  border: none;
}
.bl_post_body ul {
  padding: 0 0 30px 1em;
}
.bl_post_body ul li {
  list-style-type: disc;
}
.bl_post_body ol {
  padding: 0 0 30px 1em;
}
.bl_post_body ol li {
  list-style-type: decimal;
}
.bl_post_body .aligncenter {
  display: block;
  margin: 0 auto 20px;
}
@media screen and (max-width: 767px) {
  .bl_post_body .aligncenter {
    float: none;
    margin: 0 0 15px;
  }
}
.bl_post_body .alignleft {
  float: left;
  margin: 5px 40px 15px 8px;
}
@media screen and (max-width: 767px) {
  .bl_post_body .alignleft {
    float: none;
    display: block;
    margin: 0 auto 15px;
  }
}
.bl_post_body .alignright {
  float: right;
  margin: 5px 8px 15px 40px;
}
@media screen and (max-width: 767px) {
  .bl_post_body .alignright {
    float: none;
    display: block;
    margin: 0 auto 15px;
  }
}
.bl_post_body table {
  font-size: 16px;
  line-height: 36px;
  margin: 20px 0 40px;
}
.bl_post_body th {
  width: 24%;
  border: 1px solid #CCC;
  background: #CCC;
  border-collapse: collapse;
  padding: 10px;
}
.bl_post_body td {
  background: #fff;
  padding: 10px;
  border: 1px solid #CCC;
  border-collapse: collapse;
}
.bl_post_body a {
  color: #268937;
  text-decoration: none;
  display: inline-block;
  border-bottom: 1px solid #268937;
}
.bl_post_body a:focus, .bl_post_body a:hover, .bl_post_body a:active {
  color: #000;
  border-color: #000;
}
.bl_post_body a.blank {
  margin-right: 32px;
  position: relative;
}
.bl_post_body a.blank::before {
  content: "";
  width: 18px;
  height: 18px;
  display: block;
  background: url(images/news/i-blank@2x.png) no-repeat center center;
  background-size: 18px 18px;
  position: absolute;
  right: -23px;
  top: 9px;
  transition: 0.25s;
}
.bl_post_body a.blank:focus::before, .bl_post_body a.blank:hover::before, .bl_post_body a.blank:active::before {
  background: url(images/news/i-blankon@2x.png) no-repeat center center;
  background-size: 18px 18px;
}
.bl_post_body .wp-caption {
  border: none;
  text-align: center;
  padding-top: 5px;
}
.bl_post_body .wp-caption-text {
  text-align: center;
}

.bl_post_bg {
  background: #f6fbf7;
  border: 1px solid #99cfa3;
  border-radius: 1.2rem;
  padding: 5rem 4rem;
}
.bl_post_bg.v2 {
  border-radius: 0 0 1.2rem 1.2rem;
}
.bl_post_bg .bl_table table th {
  background: #fff;
}
.bl_post_bg .bl_table table td,
.bl_post_bg th {
  color: #666;
}
.bl_post_bg .hp_fs16 {
  padding: 15px 15px 15px 30px;
  border-bottom: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .bl_post_bg .hp_fs16 {
    padding: 10px 15px;
  }
}
@media screen and (max-width: 767px) {
  .bl_post_bg {
    padding: 2rem;
  }
}

.bl_footlink {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  justify-content: space-between;
}
.bl_footlink li {
  width: 200px;
}
@media screen and (max-width: 767px) {
  .bl_footlink li {
    width: 140px;
  }
}
.bl_footlink li a {
  border: 1px solid #268937;
  display: block;
  padding: 13px 13px 13px 75px;
  font-size: 1.5rem;
  line-height: 2.2rem;
  letter-spacing: 0.2em;
  text-decoration: none;
  background: url(images/news/ic-prev@2x.png) no-repeat 40px center;
  background-size: 6px 12px;
}
.bl_footlink li a:focus, .bl_footlink li a:hover, .bl_footlink li a:active {
  color: #fff;
  background: #268937 url(images/news/ic-prevon@2x.png) no-repeat 40px center;
  background-size: 6px 12px;
}
@media screen and (max-width: 767px) {
  .bl_footlink li a {
    padding: 10px 5px 10px 10px;
    text-align: right;
    background: url(images/news/ic-prev@2x.png) no-repeat 15px center;
    background-size: 6px 12px;
  }
  .bl_footlink li a:focus, .bl_footlink li a:hover, .bl_footlink li a:active {
    background: #268937 url(images/news/ic-prevon@2x.png) no-repeat 15px center;
    background-size: 6px 12px;
  }
}
.bl_footlink li.bl_footlink_next a {
  padding: 13px 13px 13px 36px;
  background: url(images/news/ic-next.png) no-repeat 157px center;
  background-size: 6px 12px;
}
.bl_footlink li.bl_footlink_next a:focus, .bl_footlink li.bl_footlink_next a:hover, .bl_footlink li.bl_footlink_next a:active {
  background: #268937 url(images/news/ic-nexton@2x.png) no-repeat 157px center;
  background-size: 6px 12px;
}
@media screen and (max-width: 767px) {
  .bl_footlink li.bl_footlink_next a {
    padding: 10px 5px 10px 10px;
    text-align: left;
    background: url(images/news/ic-next.png) no-repeat 115px center;
    background-size: 6px 12px;
  }
  .bl_footlink li.bl_footlink_next a:focus, .bl_footlink li.bl_footlink_next a:hover, .bl_footlink li.bl_footlink_next a:active {
    background: #268937 url(images/news/ic-nexton@2x.png) no-repeat 115px center;
    background-size: 6px 12px;
  }
}
.bl_footlink.v2 {
  justify-content: center;
}
.bl_footlink_top {
  border: 1px solid #0f7020;
  display: block;
  padding: 1.8rem 0;
  max-width: 26rem;
  width: 100%;
  display: flex;
  justify-content: center;
  font-size: 1.5rem;
  text-decoration: none;
  color: #0f7020;
}
@media screen and (max-width: 767px) {
  .bl_footlink_top {
    padding: 1rem;
    max-width: 20rem;
  }
}

.bl_contact_wrap {
  padding-top: 90px !important;
}
@media screen and (max-width: 767px) {
  .bl_contact_wrap {
    padding-top: 50px !important;
  }
}

.bl_telbox {
  padding: 20px;
  background: #fff;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .bl_telbox {
    display: block;
  }
}
.bl_telbox .bl_flexbox_l {
  width: 53%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bl_telbox .bl_flexbox_l {
    width: 100%;
  }
}
.bl_telbox .bl_flexbox_l span {
  font-size: 4.2rem;
  line-height: 6rem;
  font-weight: 700;
  color: #000;
  letter-spacing: 0.1em;
  padding-left: 100px;
  background: url(images/contact/06_tel_icon@2x.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .bl_telbox .bl_flexbox_l span {
    font-size: 2.4rem;
    line-height: 3.6rem;
    padding-left: 50px;
    letter-spacing: 0.05em;
  }
}
.bl_telbox .bl_flexbox_r {
  width: 47%;
  padding: 28px 0 28px 60px;
  border-left: 1px solid #e9e9e9;
  font-size: 1.8rem;
  line-height: 3.6rem;
}
@media screen and (max-width: 767px) {
  .bl_telbox .bl_flexbox_r {
    width: 100%;
    border-left: 0px;
    padding: 10px 0 0;
    margin: 0;
    text-align: center;
    font-size: 1.6rem;
    line-height: 3rem;
  }
}

.bl_form {
  width: 100%;
  line-height: 4rem;
}
.bl_form_wrap {
  background: #fff;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .bl_form {
    display: block;
  }
}
.bl_form th {
  width: 32.3%;
  font-size: 1.8rem;
  font-weight: 700;
  color: #000;
  box-sizing: border-box;
  padding: 15px 35px;
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .bl_form th {
    display: block;
    width: 100%;
    padding: 15px 15px 0px;
    font-size: 1.6rem;
  }
}
.bl_form th .r {
  display: inline-block;
  background: #268937;
  color: #fff;
  line-height: 2rem;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  padding: 0 5px;
  margin: 0 0 0 10px;
  border-radius: 4px;
}
.bl_form td {
  font-size: 1.6rem;
  padding: 15px;
}
@media screen and (max-width: 767px) {
  .bl_form td {
    display: block;
    width: 100%;
    padding: 5px 15px 15px;
  }
  .bl_form td .sub {
    display: block;
    font-size: 1.2rem;
    line-height: 1.2rem;
    padding-top: 5px;
  }
}
.bl_form input[type=text],
.bl_form input[type=email],
.bl_form input[type=tel],
.bl_form textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
  background: #f6f6f6;
  border: 1px solid #eaeaea;
  border-radius: 4px;
}
.bl_form input[type=text]#zip,
.bl_form input[type=email]#zip,
.bl_form input[type=tel]#zip,
.bl_form textarea#zip {
  max-width: 200px;
}
@media screen and (max-width: 767px) {
  .bl_form input[type=text]#zip,
  .bl_form input[type=email]#zip,
  .bl_form input[type=tel]#zip,
  .bl_form textarea#zip {
    max-width: 140px;
  }
}
.bl_form select {
  width: 200px;
  box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
  background: #f6f6f6;
  border: 1px solid #eaeaea;
}
@media screen and (max-width: 767px) {
  .bl_form select {
    width: 140px;
  }
}
.bl_form .add {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
}
.bl_form .add:first-child {
  margin-bottom: 10px;
}
.bl_form .add .left {
  margin-right: 10px;
}
.bl_form .ppbox {
  height: 240px;
  overflow-y: scroll;
  font-size: 1.4rem;
  line-height: 2.4rem;
  padding: 10px;
  background: #f6f6f6;
  border: 1px solid #eaeaea;
  border-radius: 4px;
}
.bl_form .mwform-radio-field {
  margin: 0 0.5em;
}
.bl_form input[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: none;
}
.bl_form input[type=radio] + span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}
.bl_form input[type=radio] + span::after {
  content: "";
  position: absolute;
  z-index: 0;
  display: inline-block;
  width: 24px;
  height: 24px;
  border: 1px solid #eaeaea;
  background: #f6f6f6;
  border-radius: 50%;
  left: -6px;
  top: 7px;
}
.bl_form input[type=radio] + span::before {
  content: "";
  display: inline-block;
  margin-right: 15px;
  font-weight: 400;
  background: #f6f6f6;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  position: relative;
  z-index: 1;
}
.bl_form input[type=radio]:checked + span:before {
  background: #268937;
}
@media screen and (max-width: 767px) {
  .bl_form .mwform-checkbox-field {
    font-size: 1.4rem;
  }
}
.bl_form input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: none;
}
.bl_form input[type=checkbox] + span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  padding-left: 10px;
}
@media screen and (max-width: 767px) {
  .bl_form input[type=checkbox] + span {
    padding-left: 0;
  }
}
.bl_form input[type=checkbox] + span::after {
  content: "";
  position: absolute;
  z-index: 0;
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 1px solid #000;
  background: #fff;
  left: 10px;
  top: 12px;
}
@media screen and (max-width: 767px) {
  .bl_form input[type=checkbox] + span::after {
    left: 0;
  }
}
.bl_form input[type=checkbox] + span::before {
  content: "";
  display: inline-block;
  margin-right: 10px;
  width: 19px;
  height: 15px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .bl_form input[type=checkbox] + span::before {
    margin-right: 5px;
  }
}
.bl_form input[type=checkbox]:checked + span:before {
  background: url(images/contact/icheck@2x.png) no-repeat left top;
  background-size: contain;
}

.bl_form_btn {
  position: relative;
  padding: 0 100px;
  text-align: center;
  margin: 60px 0 0;
}
@media screen and (max-width: 767px) {
  .bl_form_btn {
    padding: 0;
    margin: 20px 0 0;
  }
}
.bl_form_btn li {
  display: inline-block;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .bl_form_btn li {
    display: block;
  }
}
.bl_form_btn li::before {
  content: none;
}
.bl_form_btn li input[type=reset] {
  cursor: pointer;
  border-bottom: 1px solid #111;
  transition: 0.25s;
  color: #333;
}
.bl_form_btn li input[type=reset]:focus, .bl_form_btn li input[type=reset]:hover, .bl_form_btn li input[type=reset]:active {
  border-bottom: 1px solid #fff;
}
.bl_form_btn li button.rbtn {
  cursor: pointer;
  border-bottom: 1px solid #111;
  transition: 0.25s;
  color: #111;
}
.bl_form_btn li button.rbtn:focus, .bl_form_btn li button.rbtn:hover, .bl_form_btn li button.rbtn:active {
  border-bottom: 1px solid #268937;
  color: #268937;
}
.bl_form_btn li.reset {
  position: absolute;
  left: 0;
  top: 20px;
}
@media screen and (max-width: 767px) {
  .bl_form_btn li.reset {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 20px;
    text-align: left;
  }
}
.bl_form_btn li.back {
  position: absolute;
  left: 0;
  top: 59px;
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_form_btn li.back {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 20px;
    text-align: left;
  }
}

.mw_wp_form_confirm .reset {
  display: none !important;
}
.mw_wp_form_confirm .back {
  display: block !important;
}

.bl_tel {
  background: #fff;
}
.bl_tel .bl_tlbox_bottom {
  background: #f6f6f6;
  text-align: center;
  padding: 18px 10px;
  margin: 20px 0 0;
}
.bl_tel .bl_tlbox_bottom span {
  background: url(images/contact/06_tel_icon@2x.png) no-repeat left center;
  background-size: 60px 60px;
  display: inline-block;
  padding-left: 85px;
  font-size: 1.8rem;
  line-height: 3.6rem;
}
@media screen and (max-width: 767px) {
  .bl_tel .bl_tlbox_bottom span {
    background-size: 36px 36px;
    display: inline-block;
    padding-left: 50px;
    font-size: 1.4rem;
    line-height: 3rem;
  }
}
@media screen and (max-width: 340px) {
  .bl_tel .bl_tlbox_bottom span {
    font-size: 1.2rem;
    line-height: 2.4rem;
  }
}
.bl_tel .bl_tlbox {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35rem, 1fr));
  gap: 2rem;
}
@media screen and (max-width: 1040px) {
  .bl_tel .bl_tlbox {
    grid-template-columns: repeat(1, minmax(1rem, 1fr));
  }
}
.bl_tel .bl_tlbox.v3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.bl_tel .bl_tlbox.v3 .bl_tlbox_item {
  padding: 1.5rem !important;
  align-items: center;
}
.bl_tel .bl_tlbox.v3 .bl_tlbox_item dt {
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .bl_tel .bl_tlbox.v3 {
    flex-direction: column;
  }
}
.bl_tel .bl_tlbox.v2 {
  justify-content: center;
  display: flex;
}
.bl_tel .bl_tlbox.v2 .bl_tlbox_item {
  max-width: 44rem;
  width: 100%;
}
@media screen and (max-width: 1040px) {
  .bl_tel .bl_tlbox.v2 .bl_tlbox_item {
    max-width: 100%;
  }
}
.bl_tel .bl_tlbox.v2 .bl_tlbox_item dt {
  flex: 1;
  max-width: 15rem;
  justify-content: center;
}
@media screen and (max-width: 1040px) {
  .bl_tel .bl_tlbox.v2 .bl_tlbox_item dt {
    max-width: 9.7rem;
  }
}
.bl_tel .bl_tlbox_item {
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 4rem;
  padding: 1.5rem 3rem !important;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  align-items: center;
  justify-content: center;
  -ms-justify-content: center;
  -webkit-justify-content: center;
}
@media screen and (max-width: 767px) {
  .bl_tel .bl_tlbox_item {
    letter-spacing: 0.05em;
  }
}
.bl_tel .bl_tlbox_item dt {
  font-size: 1.8rem;
}
.bl_tel .bl_tlbox_item dt br {
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_tel .bl_tlbox_item dt {
    line-height: 1.2;
    font-size: 1.6rem;
  }
  .bl_tel .bl_tlbox_item dt br {
    display: block;
  }
}
@media screen and (max-width: 500px) {
  .bl_tel .bl_tlbox_item dt {
    font-size: 1.4rem;
  }
}
.bl_tel .bl_tlbox_item dd {
  font-size: 2.4rem;
  border-left: 1px solid #e9e9e9;
  padding-left: 16px;
}
@media screen and (max-width: 1040px) {
  .bl_tel .bl_tlbox_item dd {
    font-size: 2.4rem;
    padding-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  .bl_tel .bl_tlbox_item dd {
    font-size: 2rem;
  }
}
@media screen and (max-width: 500px) {
  .bl_tel .bl_tlbox_item dd {
    font-size: 1.6rem;
  }
}
.bl_tel_en .bl_tlbox_item {
  letter-spacing: 0;
  display: block;
  padding: 0 60px;
}
@media screen and (max-width: 1040px) {
  .bl_tel_en .bl_tlbox_item {
    padding: 0 20px;
  }
}
.bl_tel_en .bl_tlbox_item dt {
  font-size: 1.6rem;
  flex: 0 0 100%;
}
.bl_tel_en .bl_tlbox_item dd {
  padding: 0;
  border-left: 0px;
}

.bl_sdgsb {
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb {
    margin-bottom: 3rem;
  }
}
.bl_sdgsb_box {
  background: #f6fbf7;
  padding: 4rem;
  border: 1px solid #92c29a;
  border-radius: 1.2rem;
}
.bl_sdgsb_box .el_ttl03 {
  border: 0 !important;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_box {
    padding: 2rem;
  }
}
.bl_sdgsb_ttl {
  gap: 3rem !important;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_ttl {
    align-items: flex-start;
    padding: 1rem;
    gap: 1.5rem !important;
  }
}
.bl_sdgsb_ttl dt {
  max-width: 148px;
}
.bl_sdgsb_ttl dt img {
  max-width: 13rem;
}
.bl_sdgsb_ttl dd {
  font-size: 2.5rem;
  font-weight: 700;
}
.bl_sdgsb_ttl dd span {
  display: inline-block;
  text-align: left;
}
@media screen and (max-width: 1040px) {
  .bl_sdgsb_ttl dd {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_ttl dd {
    font-size: 1.6rem;
    text-align: left;
    box-sizing: border-box;
  }
}
.bl_sdgsb_text {
  text-align: center;
  font-size: 24px;
  line-height: 36px;
  letter-spacing: 0.1em;
  font-weight: 700;
  padding: 30px 50px;
}
.bl_sdgsb_text .el_fcgreen {
  color: #268937;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_text {
    padding: 30px 10px;
    font-size: 22px;
  }
}
.bl_sdgsb_list {
  margin: 30px 40px 50px;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_list {
    margin: 30px 10px 50px;
  }
}
.bl_sdgsb_list li {
  margin: 0 10px;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_list li {
    margin: 0 5px;
  }
}
.bl_sdgsb_12 {
  border: 2px solid #c38531;
  background: url("images/sdgs/sdgs12-img.png") no-repeat center bottom #fff;
  background-size: 94%;
  margin-top: 4rem;
  text-align: center;
}
.bl_sdgsb_12 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_12 dl.bl_sdgsb_ttl {
    padding: 1rem;
  }
}
.bl_sdgsb_12 .bl_sdgsb_ttl {
  border-bottom: 2px solid #c38531;
}
.bl_sdgsb_12 .bl_sdgsb_ttl dd {
  color: #c38531;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_12 .bl_sdgsb_list {
    margin: 30px 20px 30px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: space-between;
  }
  .bl_sdgsb_12 .bl_sdgsb_list li {
    width: 48%;
    margin: 0 0 15px;
  }
}
.bl_sdgsb_07 {
  border: 2px solid #fabd00;
  text-align: center;
  background: #fff;
}
.bl_sdgsb_07 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_07 dl.bl_sdgsb_ttl {
    padding: 1rem;
  }
}
.bl_sdgsb_07 .bl_sdgsb_ttl {
  border-bottom: 2px solid #fabd00;
}
.bl_sdgsb_07 .bl_sdgsb_ttl dd {
  color: #fabd00;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_07 .bl_sdgsb_list {
    margin: 30px 20px 30px;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
  .bl_sdgsb_07 .bl_sdgsb_list li {
    width: 100%;
    margin: 0 0 15px;
  }
}
.bl_sdgsb_11 {
  border: 2px solid #f5a20b;
}
.bl_sdgsb_11 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_11 dl.bl_sdgsb_ttl {
    padding: 1rem;
  }
}
.bl_sdgsb_11 .bl_sdgsb_ttl dd {
  color: #f5a20b;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_11 .bl_sdgsb_ttl dd {
    padding: 10px;
  }
}
.bl_sdgsb_13 {
  border: 2px solid #407936;
}
.bl_sdgsb_13 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_13 dl.bl_sdgsb_ttl {
    padding: 1rem;
  }
}
.bl_sdgsb_13 .bl_sdgsb_ttl dd {
  color: #407936;
}
.bl_sdgsb_122 {
  border: 2px solid #28a838;
}
.bl_sdgsb_122 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_122 dl.bl_sdgsb_ttl {
    padding: 1rem;
  }
}
.bl_sdgsb_122 .bl_sdgsb_ttl dd {
  color: #28a838;
}
.bl_sdgsb_14 {
  border: 2px solid #1b973a;
  margin: 0;
}
.bl_sdgsb_14 dl.bl_sdgsb_ttl {
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_14 dl.bl_sdgsb_ttl {
    padding-top: 1rem;
  }
}
.bl_sdgsb_14 .bl_sdgsb_ttl dd {
  padding-top: 1rem;
}
.bl_sdgsb_14 .bl_sdgsb_ttl dd {
  color: #1b973a;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_14 .bl_sdgsb_ttl dd {
    padding: 0 1rem;
  }
}
.bl_sdgsb_14 .bl_sdgsb_ttl_txt {
  background: #268937;
  max-width: 14rem;
  min-height: 12.8rem;
  align-content: center;
}
.bl_sdgsb_14 .bl_sdgsb_ttl_txt p {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
}
.bl_sdgsb_14 .bl_sdgsb_ttl_txt p span {
  font-size: 2rem;
}
.bl_sdgsb_14 .bl_sdgsb_ttl_txt p small {
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_14 .bl_sdgsb_ttl_txt p {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 767px) {
  .bl_sdgsb_14 .bl_sdgsb_ttl_txt {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 0.5rem;
  }
}

.el_contact_bg {
  background: #fff;
  padding: 8rem 0 10rem;
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
}
@media screen and (max-width: 767px) {
  .el_contact_bg {
    padding: 4rem 0 6rem;
  }
}
.el_contact_mail .el_btn_green {
  border-radius: 0;
  font-size: 2rem;
  padding: 1.5rem;
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .el_contact_mail .el_btn_green {
    padding: 1rem;
    max-width: 30rem;
    width: 100%;
  }
}
.el_contact_mail_title {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .el_contact_mail_title {
    margin-top: 2.5rem;
  }
}
.el_contact_mail_btn {
  display: flex;
  justify-content: center;
}
.el_contact_mail_txt {
  padding-bottom: 4rem;
  border-bottom: 1px solid #e9e9e9;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .el_contact_mail_txt {
    padding-bottom: 2.5rem;
  }
}
.el_contact_tel {
  margin-top: 10rem;
}
.el_contact_tel .v2 .bl_tlbox.v2 .bl_tlbox_item {
  max-width: -moz-max-content;
  max-width: max-content;
  padding: 1.5rem 2.5rem !important;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .el_contact_tel .v2 .bl_tlbox.v2 .bl_tlbox_item {
    max-width: 100%;
    align-items: center;
    flex-direction: column;
  }
}
.el_contact_tel .v2 .bl_tlbox.v2 .bl_tlbox_item dt {
  min-width: 9rem;
  max-width: none;
  flex: none;
}
@media screen and (max-width: 767px) {
  .el_contact_tel {
    margin-top: 8rem;
  }
}
.el_contact_tel_group {
  background: #f6fbf7;
  border: 1px solid #92c29a;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 7rem;
  border-radius: 1.2rem;
}
@media screen and (max-width: 767px) {
  .el_contact_tel_group {
    padding: 2rem;
    margin-top: 4rem;
    border-radius: 0.8rem;
  }
}

/* ==========================================================================
  Programs
  ========================================================================== */
.js_boxLink {
  display: block;
  transition: 0.3s;
}
.js_boxLink:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.js_modalBox_bg {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 7;
  opacity: 0;
  transition: opacity 0.5s;
}
.js_modalBox_bg.is-open {
  width: 100%;
  height: 100%;
  opacity: 1;
}

.js_modalBox {
  position: fixed;
  display: none;
  z-index: 2008;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 764px;
  max-height: 90%;
  background: #fff;
  box-sizing: border-box;
  padding: 55px 25px 30px;
  border: 4px solid #d9d9d9;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.js_modalBox::-webkit-scrollbar {
  display: none;
}
.js_modalBox.js_modalBox__s {
  width: 60%;
  max-height: 60%;
}
@media screen and (max-width: 640px) {
  .js_modalBox.js_modalBox__s {
    width: 90%;
    max-height: 90%;
  }
}

.js_modalClose {
  position: fixed;
  top: 7px;
  right: 7px;
  width: 32px;
  height: 32px;
  background: #000;
  cursor: pointer;
}
.js_modalClose span::before,
.js_modalClose span::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 84%;
  height: 2px;
  margin: -1% 0 0 -42%;
  background: #fff;
  transform: rotate(45deg);
}
.js_modalClose span::after {
  transform: rotate(-45deg);
}

body.is-bodyopen .js_popout li {
  overflow: hidden;
}
body.is-bodyopen .js_popout li span {
  position: relative;
  animation: popanime 0.6s ease 0.4s forwards;
  bottom: -60px;
}
body.is-bodyopen .js_popout li:nth-child(2) span {
  animation-delay: 1s;
}

@keyframes popanime {
  from {
    bottom: -60px; /* 親要素外に配置させて見えなくしておく */
  }
  to {
    bottom: 0px; /* 下から0pxに指定 */
  }
}
.js_fadein {
  opacity: 0;
  transition: all 500ms;
  transform: translate(0, 0);
}
.js_fadein.js_fadein_l {
  transform: translate(-40px, 0);
}
.js_fadein.js_fadein_r {
  transform: translate(40px, 0);
}
.js_fadein.js_fadein_t {
  transform: translate(0, -40px);
}
.js_fadein.js_fadein_b {
  transform: translate(0, 40px);
}
.js_fadein.js_fadein_scale {
  transform: translate(0, 0) scale(0.9);
}
.js_fadein.js_fadein_scale.is-scrollin {
  transform: translate(0, 0) scale(1) !important;
}
.js_fadein.js_fadein_i {
  transition: 2s ease;
}
.js_fadein.is-scrollin {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

/* ==========================================================================
  Unique
  ========================================================================== */
/* ページタイトル
   ========================================================================== */
/* ==========================================================================
  Helpers
  ========================================================================== */
/* display
========================================================================== */
.hp_dn {
  display: none !important;
}

.hp_db {
  display: block !important;
}

.hp_di {
  display: inline !important;
}

.hp_dib {
  display: inline-block !important;
}

.hp_dtb {
  display: table !important;
}

.hp_ditb {
  display: inline-table !important;
}

.hp_dtbc {
  display: table-cell !important;
}

.hp_dtbr {
  display: table-row !important;
}

/* width
========================================================================== */
.hp_wd0p {
  width: 0% !important;
}

.hp_wd5p {
  width: 5% !important;
}

.hp_wd10p {
  width: 10% !important;
}

.hp_wd15p {
  width: 15% !important;
}

.hp_wd20p {
  width: 20% !important;
}

.hp_wd25p {
  width: 25% !important;
}

.hp_wd30p {
  width: 30% !important;
}

.hp_wd35p {
  width: 35% !important;
}

.hp_wd40p {
  width: 40% !important;
}

.hp_wd45p {
  width: 45% !important;
}

.hp_wd50p {
  width: 50% !important;
}

.hp_wd55p {
  width: 55% !important;
}

.hp_wd60p {
  width: 60% !important;
}

.hp_wd65p {
  width: 65% !important;
}

.hp_wd70p {
  width: 70% !important;
}

.hp_wd75p {
  width: 75% !important;
}

.hp_wd80p {
  width: 80% !important;
}

.hp_wd85p {
  width: 85% !important;
}

.hp_wd90p {
  width: 90% !important;
}

.hp_wd95p {
  width: 95% !important;
}

.hp_wd100p {
  width: 100% !important;
}

/* padding
========================================================================== */
.hp_p0 {
  padding: 0px !important;
}

.hp_p5 {
  padding: 5px !important;
}

.hp_p10 {
  padding: 10px !important;
}

.hp_p15 {
  padding: 15px !important;
}

.hp_p20 {
  padding: 20px !important;
}

.hp_p25 {
  padding: 25px !important;
}

.hp_p30 {
  padding: 30px !important;
}

.hp_p35 {
  padding: 35px !important;
}

.hp_p40 {
  padding: 40px !important;
}

.hp_p45 {
  padding: 45px !important;
}

.hp_p50 {
  padding: 50px !important;
}

.hp_p55 {
  padding: 55px !important;
}

.hp_p60 {
  padding: 60px !important;
}

.hp_p65 {
  padding: 65px !important;
}

.hp_p70 {
  padding: 70px !important;
}

.hp_p75 {
  padding: 75px !important;
}

.hp_p80 {
  padding: 80px !important;
}

.hp_p85 {
  padding: 85px !important;
}

.hp_p90 {
  padding: 90px !important;
}

.hp_p95 {
  padding: 95px !important;
}

.hp_p100 {
  padding: 100px !important;
}

/*
padding-top
*/
.hp_pt0 {
  padding-top: 0px !important;
}

.hp_pt5 {
  padding-top: 5px !important;
}

.hp_pt10 {
  padding-top: 10px !important;
}

.hp_pt15 {
  padding-top: 15px !important;
}

.hp_pt20 {
  padding-top: 20px !important;
}

.hp_pt25 {
  padding-top: 25px !important;
}

.hp_pt30 {
  padding-top: 30px !important;
}

.hp_pt35 {
  padding-top: 35px !important;
}

.hp_pt40 {
  padding-top: 40px !important;
}

.hp_pt45 {
  padding-top: 45px !important;
}

.hp_pt50 {
  padding-top: 50px !important;
}

.hp_pt55 {
  padding-top: 55px !important;
}

.hp_pt60 {
  padding-top: 60px !important;
}

.hp_pt65 {
  padding-top: 65px !important;
}

.hp_pt70 {
  padding-top: 70px !important;
}

.hp_pt75 {
  padding-top: 75px !important;
}

.hp_pt80 {
  padding-top: 80px !important;
}

.hp_pt85 {
  padding-top: 85px !important;
}

.hp_pt90 {
  padding-top: 90px !important;
}

.hp_pt95 {
  padding-top: 95px !important;
}

.hp_pt100 {
  padding-top: 100px !important;
}

/*
padding-right
*/
.hp_pr0 {
  padding-right: 0px !important;
}

.hp_pr5 {
  padding-right: 5px !important;
}

.hp_pr10 {
  padding-right: 10px !important;
}

.hp_pr15 {
  padding-right: 15px !important;
}

.hp_pr20 {
  padding-right: 20px !important;
}

.hp_pr25 {
  padding-right: 25px !important;
}

.hp_pr30 {
  padding-right: 30px !important;
}

.hp_pr35 {
  padding-right: 35px !important;
}

.hp_pr40 {
  padding-right: 40px !important;
}

.hp_pr45 {
  padding-right: 45px !important;
}

.hp_pr50 {
  padding-right: 50px !important;
}

.hp_pr55 {
  padding-right: 55px !important;
}

.hp_pr60 {
  padding-right: 60px !important;
}

.hp_pr65 {
  padding-right: 65px !important;
}

.hp_pr70 {
  padding-right: 70px !important;
}

.hp_pr75 {
  padding-right: 75px !important;
}

.hp_pr80 {
  padding-right: 80px !important;
}

.hp_pr85 {
  padding-right: 85px !important;
}

.hp_pr90 {
  padding-right: 90px !important;
}

.hp_pr95 {
  padding-right: 95px !important;
}

.hp_pr100 {
  padding-right: 100px !important;
}

/*
padding-bottom
*/
.hp_pb0 {
  padding-bottom: 0px !important;
}

.hp_pb5 {
  padding-bottom: 5px !important;
}

.hp_pb10 {
  padding-bottom: 10px !important;
}

.hp_pb15 {
  padding-bottom: 15px !important;
}

.hp_pb20 {
  padding-bottom: 20px !important;
}

.hp_pb25 {
  padding-bottom: 25px !important;
}

.hp_pb30 {
  padding-bottom: 30px !important;
}

.hp_pb35 {
  padding-bottom: 35px !important;
}

.hp_pb40 {
  padding-bottom: 40px !important;
}

.hp_pb45 {
  padding-bottom: 45px !important;
}

.hp_pb50 {
  padding-bottom: 50px !important;
}

.hp_pb55 {
  padding-bottom: 55px !important;
}

.hp_pb60 {
  padding-bottom: 60px !important;
}

.hp_pb65 {
  padding-bottom: 65px !important;
}

.hp_pb70 {
  padding-bottom: 70px !important;
}

.hp_pb75 {
  padding-bottom: 75px !important;
}

.hp_pb80 {
  padding-bottom: 80px !important;
}

.hp_pb85 {
  padding-bottom: 85px !important;
}

.hp_pb90 {
  padding-bottom: 90px !important;
}

.hp_pb95 {
  padding-bottom: 95px !important;
}

.hp_pb100 {
  padding-bottom: 100px !important;
}

/*
padding-left
*/
.hp_pl0 {
  padding-left: 0px !important;
}

.hp_pl5 {
  padding-left: 5px !important;
}

.hp_pl10 {
  padding-left: 10px !important;
}

.hp_pl15 {
  padding-left: 15px !important;
}

.hp_pl20 {
  padding-left: 20px !important;
}

.hp_pl25 {
  padding-left: 25px !important;
}

.hp_pl30 {
  padding-left: 30px !important;
}

.hp_pl35 {
  padding-left: 35px !important;
}

.hp_pl40 {
  padding-left: 40px !important;
}

.hp_pl45 {
  padding-left: 45px !important;
}

.hp_pl50 {
  padding-left: 50px !important;
}

.hp_pl55 {
  padding-left: 55px !important;
}

.hp_pl60 {
  padding-left: 60px !important;
}

.hp_pl65 {
  padding-left: 65px !important;
}

.hp_pl70 {
  padding-left: 70px !important;
}

.hp_pl75 {
  padding-left: 75px !important;
}

.hp_pl80 {
  padding-left: 80px !important;
}

.hp_pl85 {
  padding-left: 85px !important;
}

.hp_pl90 {
  padding-left: 90px !important;
}

.hp_pl95 {
  padding-left: 95px !important;
}

.hp_pl100 {
  padding-left: 100px !important;
}

/* margin
========================================================================== */
.hp_m0 {
  margin: 0px !important;
}

.hp_m5 {
  margin: 5px !important;
}

.hp_m10 {
  margin: 10px !important;
}

.hp_m15 {
  margin: 15px !important;
}

.hp_m20 {
  margin: 20px !important;
}

.hp_m25 {
  margin: 25px !important;
}

.hp_m30 {
  margin: 30px !important;
}

.hp_m35 {
  margin: 35px !important;
}

.hp_m40 {
  margin: 40px !important;
}

.hp_m45 {
  margin: 45px !important;
}

.hp_m50 {
  margin: 50px !important;
}

.hp_m55 {
  margin: 55px !important;
}

.hp_m60 {
  margin: 60px !important;
}

.hp_m65 {
  margin: 65px !important;
}

.hp_m70 {
  margin: 70px !important;
}

.hp_m75 {
  margin: 75px !important;
}

.hp_m80 {
  margin: 80px !important;
}

.hp_m85 {
  margin: 85px !important;
}

.hp_m90 {
  margin: 90px !important;
}

.hp_m95 {
  margin: 95px !important;
}

.hp_m100 {
  margin: 100px !important;
}

/*
margin-top
*/
.hp_MT5 {
  margin-top: -5px !important;
}

.hp_MT10 {
  margin-top: -10px !important;
}

.hp_MT15 {
  margin-top: -15px !important;
}

.hp_MT20 {
  margin-top: -20px !important;
}

.hp_MT25 {
  margin-top: -25px !important;
}

.hp_MT30 {
  margin-top: -30px !important;
}

.hp_MT35 {
  margin-top: -35px !important;
}

.hp_MT40 {
  margin-top: -40px !important;
}

.hp_MT45 {
  margin-top: -45px !important;
}

.hp_MT50 {
  margin-top: -50px !important;
}

.hp_MT55 {
  margin-top: -55px !important;
}

.hp_MT60 {
  margin-top: -60px !important;
}

.hp_MT65 {
  margin-top: -65px !important;
}

.hp_MT70 {
  margin-top: -70px !important;
}

.hp_MT75 {
  margin-top: -75px !important;
}

.hp_MT80 {
  margin-top: -80px !important;
}

.hp_MT85 {
  margin-top: -85px !important;
}

.hp_MT90 {
  margin-top: -90px !important;
}

.hp_MT95 {
  margin-top: -95px !important;
}

.hp_MT100 {
  margin-top: -100px !important;
}

.hp_mt0 {
  margin-top: 0px !important;
}

.hp_mt5 {
  margin-top: 5px !important;
}

.hp_mt10 {
  margin-top: 10px !important;
}

.hp_mt15 {
  margin-top: 15px !important;
}

.hp_mt20 {
  margin-top: 20px !important;
}

.hp_mt25 {
  margin-top: 25px !important;
}

.hp_mt30 {
  margin-top: 30px !important;
}

.hp_mt35 {
  margin-top: 35px !important;
}

.hp_mt40 {
  margin-top: 40px !important;
}

.hp_mt45 {
  margin-top: 45px !important;
}

.hp_mt50 {
  margin-top: 50px !important;
}

.hp_mt55 {
  margin-top: 55px !important;
}

.hp_mt60 {
  margin-top: 60px !important;
}

.hp_mt65 {
  margin-top: 65px !important;
}

.hp_mt70 {
  margin-top: 70px !important;
}

.hp_mt75 {
  margin-top: 75px !important;
}

.hp_mt80 {
  margin-top: 80px !important;
}

.hp_mt85 {
  margin-top: 85px !important;
}

.hp_mt90 {
  margin-top: 90px !important;
}

.hp_mt95 {
  margin-top: 95px !important;
}

.hp_mt100 {
  margin-top: 100px !important;
}

/*
margin-right
*/
.hp_MR5 {
  margin-right: -5px !important;
}

.hp_MR10 {
  margin-right: -10px !important;
}

.hp_MR15 {
  margin-right: -15px !important;
}

.hp_MR20 {
  margin-right: -20px !important;
}

.hp_MR25 {
  margin-right: -25px !important;
}

.hp_MR30 {
  margin-right: -30px !important;
}

.hp_MR35 {
  margin-right: -35px !important;
}

.hp_MR40 {
  margin-right: -40px !important;
}

.hp_MR45 {
  margin-right: -45px !important;
}

.hp_MR50 {
  margin-right: -50px !important;
}

.hp_MR55 {
  margin-right: -55px !important;
}

.hp_MR60 {
  margin-right: -60px !important;
}

.hp_MR65 {
  margin-right: -65px !important;
}

.hp_MR70 {
  margin-right: -70px !important;
}

.hp_MR75 {
  margin-right: -75px !important;
}

.hp_MR80 {
  margin-right: -80px !important;
}

.hp_MR85 {
  margin-right: -85px !important;
}

.hp_MR90 {
  margin-right: -90px !important;
}

.hp_MR95 {
  margin-right: -95px !important;
}

.hp_MR100 {
  margin-right: -100px !important;
}

.hp_mr0 {
  margin-right: 0px !important;
}

.hp_mr5 {
  margin-right: 5px !important;
}

.hp_mr10 {
  margin-right: 10px !important;
}

.hp_mr15 {
  margin-right: 15px !important;
}

.hp_mr20 {
  margin-right: 20px !important;
}

.hp_mr25 {
  margin-right: 25px !important;
}

.hp_mr30 {
  margin-right: 30px !important;
}

.hp_mr35 {
  margin-right: 35px !important;
}

.hp_mr40 {
  margin-right: 40px !important;
}

.hp_mr45 {
  margin-right: 45px !important;
}

.hp_mr50 {
  margin-right: 50px !important;
}

.hp_mr55 {
  margin-right: 55px !important;
}

.hp_mr60 {
  margin-right: 60px !important;
}

.hp_mr65 {
  margin-right: 65px !important;
}

.hp_mr70 {
  margin-right: 70px !important;
}

.hp_mr75 {
  margin-right: 75px !important;
}

.hp_mr80 {
  margin-right: 80px !important;
}

.hp_mr85 {
  margin-right: 85px !important;
}

.hp_mr90 {
  margin-right: 90px !important;
}

.hp_mr95 {
  margin-right: 95px !important;
}

.hp_mr100 {
  margin-right: 100px !important;
}

/*
margin-bottom
*/
.hp_MB5 {
  margin-bottom: -5px !important;
}

.hp_MB10 {
  margin-bottom: -10px !important;
}

.hp_MB15 {
  margin-bottom: -15px !important;
}

.hp_MB20 {
  margin-bottom: -20px !important;
}

.hp_MB25 {
  margin-bottom: -25px !important;
}

.hp_MB30 {
  margin-bottom: -30px !important;
}

.hp_MB35 {
  margin-bottom: -35px !important;
}

.hp_MB40 {
  margin-bottom: -40px !important;
}

.hp_MB45 {
  margin-bottom: -45px !important;
}

.hp_MB50 {
  margin-bottom: -50px !important;
}

.hp_MB55 {
  margin-bottom: -55px !important;
}

.hp_MB60 {
  margin-bottom: -60px !important;
}

.hp_MB65 {
  margin-bottom: -65px !important;
}

.hp_MB70 {
  margin-bottom: -70px !important;
}

.hp_MB75 {
  margin-bottom: -75px !important;
}

.hp_MB80 {
  margin-bottom: -80px !important;
}

.hp_MB85 {
  margin-bottom: -85px !important;
}

.hp_MB90 {
  margin-bottom: -90px !important;
}

.hp_MB95 {
  margin-bottom: -95px !important;
}

.hp_MB100 {
  margin-bottom: -100px !important;
}

.hp_mb0 {
  margin-bottom: 0px !important;
}

.hp_mb5 {
  margin-bottom: 5px !important;
}

.hp_mb10 {
  margin-bottom: 10px !important;
}

.hp_mb15 {
  margin-bottom: 15px !important;
}

.hp_mb20 {
  margin-bottom: 20px !important;
}

.hp_mb25 {
  margin-bottom: 25px !important;
}

.hp_mb30 {
  margin-bottom: 30px !important;
}

.hp_mb35 {
  margin-bottom: 35px !important;
}

.hp_mb40 {
  margin-bottom: 40px !important;
}

.hp_mb45 {
  margin-bottom: 45px !important;
}

.hp_mb50 {
  margin-bottom: 50px !important;
}

.hp_mb55 {
  margin-bottom: 55px !important;
}

.hp_mb60 {
  margin-bottom: 60px !important;
}

.hp_mb65 {
  margin-bottom: 65px !important;
}

.hp_mb70 {
  margin-bottom: 70px !important;
}

.hp_mb75 {
  margin-bottom: 75px !important;
}

.hp_mb80 {
  margin-bottom: 80px !important;
}

.hp_mb85 {
  margin-bottom: 85px !important;
}

.hp_mb90 {
  margin-bottom: 90px !important;
}

.hp_mb95 {
  margin-bottom: 95px !important;
}

.hp_mb100 {
  margin-bottom: 100px !important;
}

/*
margin-left
*/
.hp_ML5 {
  margin-left: -5px !important;
}

.hp_ML10 {
  margin-left: -10px !important;
}

.hp_ML15 {
  margin-left: -15px !important;
}

.hp_ML20 {
  margin-left: -20px !important;
}

.hp_ML25 {
  margin-left: -25px !important;
}

.hp_ML30 {
  margin-left: -30px !important;
}

.hp_ML35 {
  margin-left: -35px !important;
}

.hp_ML40 {
  margin-left: -40px !important;
}

.hp_ML45 {
  margin-left: -45px !important;
}

.hp_ML50 {
  margin-left: -50px !important;
}

.hp_ML55 {
  margin-left: -55px !important;
}

.hp_ML60 {
  margin-left: -60px !important;
}

.hp_ML65 {
  margin-left: -65px !important;
}

.hp_ML70 {
  margin-left: -70px !important;
}

.hp_ML75 {
  margin-left: -75px !important;
}

.hp_ML80 {
  margin-left: -80px !important;
}

.hp_ML85 {
  margin-left: -85px !important;
}

.hp_ML90 {
  margin-left: -90px !important;
}

.hp_ML95 {
  margin-left: -95px !important;
}

.hp_ML100 {
  margin-left: -100px !important;
}

.hp_ml0 {
  margin-left: 0px !important;
}

.hp_ml5 {
  margin-left: 5px !important;
}

.hp_ml10 {
  margin-left: 10px !important;
}

.hp_ml15 {
  margin-left: 15px !important;
}

.hp_ml20 {
  margin-left: 20px !important;
}

.hp_ml25 {
  margin-left: 25px !important;
}

.hp_ml30 {
  margin-left: 30px !important;
}

.hp_ml35 {
  margin-left: 35px !important;
}

.hp_ml40 {
  margin-left: 40px !important;
}

.hp_ml45 {
  margin-left: 45px !important;
}

.hp_ml50 {
  margin-left: 50px !important;
}

.hp_ml55 {
  margin-left: 55px !important;
}

.hp_ml60 {
  margin-left: 60px !important;
}

.hp_ml65 {
  margin-left: 65px !important;
}

.hp_ml70 {
  margin-left: 70px !important;
}

.hp_ml75 {
  margin-left: 75px !important;
}

.hp_ml80 {
  margin-left: 80px !important;
}

.hp_ml85 {
  margin-left: 85px !important;
}

.hp_ml90 {
  margin-left: 90px !important;
}

.hp_ml95 {
  margin-left: 95px !important;
}

.hp_ml100 {
  margin-left: 100px !important;
}

.hp_centering {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

/* Background
========================================================================== */
.hp_bgcCherryBlossom {
  background-color: #003f8e !important;
}

/* font
========================================================================== */
.hp_fwb {
  font-weight: bold !important;
}

.hp_fs16 {
  font-size: 1.6rem;
  line-height: 3.6rem;
}
@media screen and (max-width: 767px) {
  .hp_fs16 {
    font-size: 1.5rem;
    line-height: 3.2rem;
  }
}

.hp_fs24 {
  font-size: 2.4rem;
  line-height: 3.6rem;
}

.hp_fs12 {
  font-size: 1.2rem;
}

/* text-align
========================================================================== */
.hp_tal {
  text-align: left !important;
}

.hp_tac {
  text-align: center !important;
}

.hp_tar {
  text-align: right !important;
}

.hp_taj {
  text-align: justify !important;
}

/* vertical-align
========================================================================== */
.hp_vam {
  vertical-align: middle !important;
}

/* PC
========================================================================== */
@media screen and (max-width: 767px) {
  .pc_only {
    display: none !important;
  }
}

/* SP
========================================================================== */
.sp_only {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .sp_only {
    display: block !important;
  }
}

.hp_anker {
  margin-top: -130px;
  padding-top: 10rem;
  position: relative;
  z-index: -1;
}

.bg-mid {
  margin: 0;
  z-index: 1;
  background: url(images/news/bg-news.png);
  margin-left: -2rem;
  margin-right: -2rem;
}

.hp_blank {
  color: #268937;
  text-decoration: none;
  display: inline-block;
  border-bottom: 1px solid #268937;
  margin-right: 32px;
  position: relative;
}
.hp_blank::before {
  content: "";
  width: 18px;
  height: 18px;
  display: block;
  background: url(images/news/i-blank@2x.png) no-repeat center center;
  background-size: 18px 18px;
  position: absolute;
  right: -23px;
  top: 9px;
  transition: 0.25s;
}
.hp_blank:focus, .hp_blank:hover, .hp_blank:active {
  color: #000;
  border-color: #000;
}
.hp_blank:focus::before, .hp_blank:hover::before, .hp_blank:active::before {
  background: url(images/news/i-blankon@2x.png) no-repeat center center;
  background-size: 18px 18px;
}

.hp_anchor {
  position: relative;
  height: 0;
  top: -60px;
}

/* ==========================================================================
  common
  ========================================================================== */
@media screen and (max-width: 767px) {
  .el_breadCrumbs span, .el_breadCrumbs a {
    display: flex;
    align-items: center;
  }
}
.title-main {
  line-height: 1;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
}
.title-main h2 {
  font-size: 5rem;
  font-weight: 700;
  font-family: "Encode Sans Expanded", sans-serif;
}
.title-main p {
  font-size: 1.8rem;
  font-weight: 500;
}

.btn-more {
  display: flex;
  align-items: center;
  gap: 2rem;
  font-size: 2rem;
  font-weight: 600;
  font-family: "Encode Sans Expanded", sans-serif;
  color: #268937;
  padding: 0 1rem 1rem 0.5rem;
  border-bottom: 2px solid #268937;
  text-decoration: unset;
}
.btn-more .sp {
  display: none;
}
@media screen and (max-width: 1040px) {
  .btn-more {
    max-width: 60rem;
    width: 80%;
    justify-content: space-between;
  }
  .btn-more .pc {
    display: none;
  }
  .btn-more .sp {
    display: block;
  }
}
@media screen and (max-width: 500px) {
  .btn-more {
    font-size: 1.8rem;
  }
  .btn-more img {
    width: 50%;
  }
}

.btn-success {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  font-size: 1.6rem;
  color: #fff;
  padding: 2rem 0;
  max-width: 18rem;
  width: 100%;
  text-decoration: unset;
  background: #268937;
}
@media screen and (max-width: 767px) {
  .btn-success {
    padding: 0.8rem;
    max-width: 13rem;
    font-size: 1.4rem;
  }
  .btn-success img {
    width: 1.2rem;
  }
}

.el_wrap {
  background: #fff;
  padding: 7rem 8rem;
  box-shadow: 0px 0px 1rem rgba(0, 0, 0, 0.07);
}
@media screen and (max-width: 767px) {
  .el_wrap {
    padding: 3rem 2rem;
  }
}

.el_bg {
  background: url(images/news/bg-news.png);
  background-position: top;
  background-repeat: no-repeat;
  padding-top: 5rem;
}

.mt-5 {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .mt-5 {
    margin-top: 3rem;
  }
}

.mt-7 {
  margin-top: 7rem;
}
@media screen and (max-width: 767px) {
  .mt-7 {
    margin-top: 5rem;
  }
}

.mt-10 {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .mt-10 {
    margin-top: 8rem;
  }
}

.mt-20 {
  margin-top: 20rem;
}
@media screen and (max-width: 767px) {
  .mt-20 {
    margin-top: 10rem;
  }
}

.pt-10 {
  padding-top: 10rem !important;
}
@media screen and (max-width: 767px) {
  .pt-10 {
    padding-top: 6rem !important;
  }
}

.pb-8 {
  padding-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .pb-8 {
    padding-bottom: 6rem;
  }
}

.c-gray-666 {
  color: #666 !important;
}

.page-thanks {
  max-width: -moz-max-content !important;
  max-width: max-content !important;
}

.video_ytb iframe {
  width: 100%;
  height: 45rem;
}
@media screen and (max-width: 1040px) {
  .video_ytb iframe {
    height: 40rem;
  }
}
@media screen and (max-width: 767px) {
  .video_ytb iframe {
    height: 25rem;
  }
}
@media screen and (max-width: 500px) {
  .video_ytb iframe {
    height: 15rem;
  }
}/*# sourceMappingURL=main.css.map */