@charset "UTF-8";
/* 変数の定義
--------------------------------------------------*/
/* reset
--------------------------------------------------*/
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font: inherit;
}

body.lang-en body,
body.lang-en h1, body.lang-en h2, body.lang-en h3, body.lang-en h4,
body.lang-en ul, body.lang-en ol, body.lang-en dl, body.lang-en li, body.lang-en dt, body.lang-en dd,
body.lang-en p, body.lang-en div, body.lang-en span,
body.lang-en img, body.lang-en svg, body.lang-en a,
body.lang-en table, body.lang-en tr, body.lang-en th, body.lang-en td,
body.lang-en figure {
  word-break: keep-all;
}

body, p {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.4;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 769px) {
  body, p {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

body {
  word-break: keep-all;
}

h1, h2, h3, h4 {
  line-height: 1.2;
}
@media screen and (min-width: 769px) {
  h1, h2, h3, h4 {
    line-height: 1.4;
  }
}

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

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

a {
  text-decoration: none;
  opacity: 1;
  transition: 0.3s;
  cursor: pointer;
  word-break: break-all;
}

img {
  display: block;
  border-style: none;
  max-width: 100%;
  width: 100%;
  height: auto;
}

:focus {
  border-style: none;
  outline: none;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
  box-sizing: border-box;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

article {
  overflow-wrap: break-word;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 色の定義
--------------------------------------------------*/
/* テキストパーツ
--------------------------------------------------*/
/* フォントの定義
--------------------------------------------------*/
html {
  font-size: 10px;
}

body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, select, input, textarea {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  color: #1B2021;
}
@media screen and (max-width: 768px) {
  body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, select, input, textarea {
    font-size: 1.5rem;
  }
}

h1, h2, h3, h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.5;
  color: #1B2021;
}

h1, h2, h3 {
  font-weight: 900;
}

.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.zen-kaku-gothic-new-medium {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.zen-kaku-gothic-new-bold {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.montserrat {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.mon_600 {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

.mon_500 {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

/* 下層メインビジュアル
--------------------------------------------------*/
/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/*----------------------------------------*/
.header {
  width: 100%;
  height: 100px;
  z-index: 10000;
  position: fixed;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .header {
    position: static;
    width: 100%;
    height: auto;
  }
}

.pc_header {
  display: flex;
  position: fixed;
  z-index: 10000;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 96%;
  /* ナビゲーションを横並びに */
  /* 2階層目以降は横並びにしない */
  /* 2層目の設定 */
  /* hover したら表示 */
}
@media screen and (max-width: 768px) {
  .pc_header {
    display: none !important;
  }
}
.pc_header .header_logo {
  position: absolute;
  z-index: 10001;
}
.pc_header .header_logo img {
  width: 84px;
  height: 68px;
}
.pc_header nav {
  width: 100%;
  column-gap: 10px;
  justify-content: end;
}
.pc_header nav .global-list {
  display: flex;
  align-items: center;
  justify-content: end;
}
.pc_header nav .global-list .main_nav.current > .pc_link,
.pc_header nav .global-list .main_nav.current > a.pc_link,
.pc_header nav .global-list .has-child.current > .pc_link,
.pc_header nav .global-list .has-child.current > a.pc_link {
  color: #D01122;
}
.pc_header nav .global-list .main_nav.current > .pc_link .mon_500,
.pc_header nav .global-list .main_nav.current > a.pc_link .mon_500,
.pc_header nav .global-list .has-child.current > .pc_link .mon_500,
.pc_header nav .global-list .has-child.current > a.pc_link .mon_500 {
  color: #D01122;
}
.pc_header nav .global-list .main_nav.current.has-child > .pc_link.sub .arrow_down,
.pc_header nav .global-list .has-child.current.has-child > .pc_link.sub .arrow_down {
  opacity: 0;
}
.pc_header nav .global-list .main_nav.current.has-child > .pc_link.sub .arrow_down_red,
.pc_header nav .global-list .has-child.current.has-child > .pc_link.sub .arrow_down_red {
  opacity: 1;
}
.pc_header nav .global-list .pc_link {
  text-align: center;
  display: block;
  position: relative;
  margin: auto 20px;
}
.pc_header nav .global-list .pc_link.current {
  color: #D01122;
}
.pc_header nav .global-list .pc_link.current .mon_500 {
  color: #D01122;
}
@media screen and (max-width: 1199px) {
  .pc_header nav .global-list .pc_link {
    margin: auto 0.83vw;
    font-size: 1.25vw;
  }
}
.pc_header nav .global-list .pc_link .mon_500 {
  transition: 0.3s;
}
@media screen and (max-width: 1199px) {
  .pc_header nav .global-list .pc_link .mon_500 {
    font-size: 1.25vw;
  }
}
.pc_header nav .global-list .sub {
  padding: 0 22px 0 0;
}
.pc_header nav .global-list .sub .arrow_down,
.pc_header nav .global-list .sub .arrow_down_red {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 6px;
  width: 13px;
  height: 8px;
  transition: 0.3s;
}
.pc_header nav .global-list .sub .arrow_down {
  opacity: 1;
}
.pc_header nav .global-list .sub .arrow_down_red {
  opacity: 0;
}
.pc_header nav .global-list .has-child {
  transition: 0.3s;
}
.pc_header nav .global-list .has-child:hover .arrow_down {
  opacity: 0;
}
.pc_header nav .global-list .has-child:hover .arrow_down_red {
  opacity: 1;
}
.pc_header nav .global-list .blank {
  padding: 0 22px 0 0;
  margin: auto 40px auto 20px;
}
@media screen and (max-width: 1199px) {
  .pc_header nav .global-list .blank {
    margin: auto 0.83vw;
  }
}
.pc_header nav .global-list .blank .icon {
  position: absolute;
  width: 15px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 5px;
  opacity: 1;
  transition: 0.3s;
}
.pc_header nav .global-list .blank .hover_icon {
  position: absolute;
  width: 15px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 5px;
  opacity: 0;
  transition: 0.3s;
}
.pc_header nav .nav_contact.current .header_btn {
  background-color: #A8101C;
}
.pc_header nav .nav_contact.current .header_btn .circle {
  box-shadow: inset 4px 4px 8px #8f0e18, inset -4px -4px 8px #c11220;
  background-color: #A8101C;
}
.pc_header nav .header_btn {
  width: 200px;
  height: 60px;
  background-color: #D01122;
  color: #fff;
  display: flex;
  justify-content: start;
  align-items: center;
  border-radius: 30px;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .pc_header nav .header_btn {
    width: 180px;
  }
}
.pc_header nav .header_btn .txt {
  margin-left: 30px;
  color: #fff;
}
@media screen and (max-width: 1199px) {
  .pc_header nav .header_btn .txt {
    font-size: 1.25vw;
  }
}
.pc_header nav .header_btn .circle {
  position: absolute;
  right: 12px;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 150px;
  color: #fff;
  background: #D01122;
  box-shadow: 4px 4px 8px #912E2E, -4px -4px 8px #DB2E3E;
  transition: 0.3s;
}
.pc_header nav .header_btn .circle .mail_icon {
  width: 16px;
  height: 16px;
}
.pc_header nav .header_btn:hover {
  background-color: #A8101C;
}
.pc_header nav .header_btn:hover .circle {
  box-shadow: inset 4px 4px 8px #8f0e18, inset -4px -4px 8px #c11220;
  background-color: #A8101C;
}
.pc_header {
  /* ナビゲーションを横並びに */
}
.pc_header nav ul {
  position: relative;
  list-style: none;
  display: flex;
  justify-content: center;
}
.pc_header {
  /* 2階層目以降は横並びにしない */
}
.pc_header nav ul ul {
  display: block;
}
.pc_header nav ul .main_nav:hover {
  transition: 0.3s;
}
.pc_header nav ul .main_nav:hover a {
  color: #D01122;
  transition: 0.3s;
}
.pc_header nav ul .main_nav:hover .mon_500 {
  transition: 0.3s;
  color: #D01122;
}
.pc_header nav ul .main_nav:hover i {
  transition: 0.3s;
  color: #D01122;
}
.pc_header nav ul .main_nav:hover .icon {
  transition: 0.3s;
  color: #D01122;
}
.pc_header {
  /* 2層目の設定 */
}
.pc_header nav li.has-child .sub_content {
  position: absolute;
  left: 0;
  top: 40px;
  z-index: 4;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;
  padding: 50px 0;
}
.pc_header {
  /* hover したら表示 */
}
.pc_header nav li.has-child:hover > .sub_content {
  visibility: visible;
  opacity: 1;
  display: flex;
  transition: 0.3s;
}
.pc_header .sub_content_inner {
  padding: 50px;
  background-color: #fff;
  width: 100%;
  border-radius: 5px;
}
@media screen and (max-width: 1199px) {
  .pc_header .sub_content_inner {
    padding: 50px 5%;
  }
}
.pc_header .nav_title {
  font-size: 30px;
  display: flex;
  align-items: center;
  font-weight: 700;
}
.pc_header .nav_title .en {
  font-size: 16px;
  margin-left: 15px;
  color: #1B2021 !important;
}
.pc_header .ph_nav {
  margin-top: 20px;
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  column-gap: 2%;
  row-gap: 20px;
}
.pc_header .ph_nav li {
  width: 32%;
}
.pc_header .ph_nav li .large_link .nav_sol_img_wrap {
  position: relative;
}
.pc_header .ph_nav li .large_link .nav_sol_img_wrap .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
  border-radius: 5px;
  pointer-events: none;
  z-index: 2;
}
.pc_header .ph_nav li .large_link .nav_sol_img {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 5px;
}
.pc_header .ph_nav li .large_link .nav_sol_img img {
  transition: 0.4s;
}
.pc_header .ph_nav li .large_link .nav_sol_img img:hover {
  transform: scale(1.2, 1.2);
}
.pc_header .ph_nav li .large_link dd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}
.pc_header .ph_nav li .large_link dd p {
  font-size: 24px;
  font-weight: 600;
}
@media (max-width: 1600px) {
  .pc_header .ph_nav li .large_link dd p {
    font-size: 1.5vw;
  }
}
.pc_header .ph_nav li .large_link dd .arrow {
  transition: 0.3s;
  margin-right: 10px;
  display: inline-block;
  width: 20px;
  height: 8px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 8.1"><path fill="%231b2021" d="M20.5,4.5H.5c-.3,0-.5-.2-.5-.5s.2-.5.5-.5h20c.3,0,.5.2.5.5s-.2.5-.5.5Z"/><path fill="%231b2021" d="M20.5,4.5c-.1,0-.3,0-.4-.1l-3.5-3.5c-.2-.2-.2-.5,0-.7.2-.2.5-.2.7,0l3.5,3.5c.2.2.2.5,0,.7,0,0-.2.1-.4.1Z"/><path fill="%231b2021" d="M21,4c0,.1,0,.3-.1.4l-3.5,3.5c-.2.2-.5.2-.7,0-.2-.2-.2-.5,0-.7l3.5-3.5c.2-.2.5-.2.7,0,.1.1.1.2.1.3Z"/></svg>') no-repeat center/contain;
}
@media screen and (max-width: 1199px) {
  .pc_header .ph_nav li .large_link dd .arrow {
    width: 1.67vw;
  }
}
.pc_header .ph_nav li .large_link:hover .arrow {
  margin-right: 0;
}
.pc_header .ph_nav li .small_link_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.pc_header .ph_nav li .small_link_wrapper .small_link {
  width: calc(50% - 10px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #E0E0E0;
  padding: 10px 0;
  margin-top: 10px;
}
.pc_header .ph_nav li .small_link_wrapper .small_link span {
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width: 1199px) {
  .pc_header .ph_nav li .small_link_wrapper .small_link span {
    font-size: 1.33vw;
  }
}
.pc_header .ph_nav li .small_link_wrapper .small_link .s_arrow {
  width: 12px;
  margin-right: 10px;
  transition: 0.3s;
  height: 6px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 8.1"><path fill="%231b2021" d="M20.5,4.5H.5c-.3,0-.5-.2-.5-.5s.2-.5.5-.5h20c.3,0,.5.2.5.5s-.2.5-.5.5Z"/><path fill="%231b2021" d="M20.5,4.5c-.1,0-.3,0-.4-.1l-3.5-3.5c-.2-.2-.2-.5,0-.7.2-.2.5-.2.7,0l3.5,3.5c.2.2.2.5,0,.7,0,0-.2.1-.4.1Z"/><path fill="%231b2021" d="M21,4c0,.1,0,.3-.1.4l-3.5,3.5c-.2.2-.5.2-.7,0-.2-.2-.2-.5,0-.7l3.5-3.5c.2-.2.5-.2.7,0,.1.1.1.2.1.3Z"/></svg>') no-repeat center/contain;
}
@media screen and (max-width: 1199px) {
  .pc_header .ph_nav li .small_link_wrapper .small_link .s_arrow {
    font-size: 0.92vw;
    margin-right: 0;
  }
}
.pc_header .ph_nav li .small_link_wrapper .small_link:hover .s_arrow {
  margin-right: 0;
}

.nav_com li {
  border-bottom: 1px solid #E0E0E0;
  padding-bottom: 30px;
}
.nav_com .large_link:hover .arrow {
  position: absolute;
  right: 0;
}
.nav_com dl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
.nav_com dl .arrow {
  position: absolute;
  right: 10px;
  transition: 0.3s;
  width: 20px;
  height: 8px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 8.1"><path fill="%231b2021" d="M20.5,4.5H.5c-.3,0-.5-.2-.5-.5s.2-.5.5-.5h20c.3,0,.5.2.5.5s-.2.5-.5.5Z"/><path fill="%231b2021" d="M20.5,4.5c-.1,0-.3,0-.4-.1l-3.5-3.5c-.2-.2-.2-.5,0-.7.2-.2.5-.2.7,0l3.5,3.5c.2.2.2.5,0,.7,0,0-.2.1-.4.1Z"/><path fill="%231b2021" d="M21,4c0,.1,0,.3-.1.4l-3.5,3.5c-.2.2-.5.2-.7,0-.2-.2-.2-.5,0-.7l3.5-3.5c.2-.2.5-.2.7,0,.1.1.1.2.1.3Z"/></svg>') no-repeat center/contain;
  top: 50%;
}
@media screen and (max-width: 1199px) {
  .nav_com dl .arrow {
    width: 1.67vw;
  }
}
.nav_com dl .nav_com_img_wrap {
  position: relative;
}
.nav_com dl .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
  border-radius: 5px;
  pointer-events: none;
  z-index: 2;
}
.nav_com dl .nav_com_img {
  width: 100px;
  overflow: hidden;
  border-radius: 5px;
}
.nav_com dl .nav_com_img img {
  transition: 0.4s;
}
.nav_com dl .nav_com_img img:hover {
  transform: scale(1.2, 1.2);
}
.nav_com dl dd {
  margin-left: 20px;
  margin-top: 0;
  width: calc(100% - 100px);
  padding-right: 40px;
}

.nav_bg {
  display: none;
  background-color: #1B2021;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  opacity: 0.3;
  transition: 0.3s;
}

.pc_header {
  /* ホバー・フォーカス時の枠色 */
}
.pc_header .lang_nav_list {
  display: none !important;
  margin-left: 10px;
}
.pc_header .lang_nav_list .lang-item:last-of-type a {
  margin-bottom: 0;
}
.pc_header .lang_nav_list a {
  font-size: 11px;
  border: 1px solid #1B2021;
  border-radius: 15px;
  display: block;
  text-align: center;
  width: 60px;
  height: 18px;
  margin-bottom: 4px;
  background-color: #fff;
  transition: 0.3s;
}
.pc_header .lang_nav_list a:hover {
  color: #D01122;
}
.pc_header .lang_nav_list .selected {
  appearance: none;
  /* ネイティブの矢印を非表示 */
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  border: 1px solid #1B2021;
  border-radius: 4px;
  padding: 4px;
  font-size: 12px;
  color: #1B2021;
  cursor: pointer;
  width: 63px;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 8.8 4.4'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %231b2021; %7D %3C/style%3E%3C/defs%3E%3Cg id='_グループ_1031' data-name='グループ_1031'%3E%3Cpath id='_線_4' data-name='線_4' class='st0' d='M3.9,3.9c0-.1,0-.3.2-.4L7.9.1c.2-.2.5-.2.7,0,0,0,0,0,0,0,.2.2.2.5,0,.7,0,0,0,0,0,0l-3.9,3.4c-.2.2-.5.2-.7,0,0,0-.1-.2-.1-.3h0Z'/%3E%3Cpath id='_線_5' data-name='線_5' class='st0' d='M4.4,4.4c-.1,0-.2,0-.3-.1L.2.9C0,.7,0,.4.1.2c0,0,0,0,0,0C.3,0,.6,0,.8.1c0,0,0,0,0,0l3.9,3.4c.2.2.2.5,0,.7,0,.1-.2.2-.4.2Z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 7px 3px;
}
.pc_header .lang_nav_list .selected:hover,
.pc_header .lang_nav_list .selected:focus {
  border-color: #1B2021;
  outline: none;
}
.pc_header .lang_nav_list .selected {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.pc_header .lang_nav_list select option {
  text-transform: uppercase; /* JA / EN / KO に変換 */
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.pc_header .lang_nav_list {
  position: relative;
  font-family: sans-serif;
}
.pc_header .select-box {
  cursor: pointer;
}
.pc_header .select-box .selected {
  padding: 5px 10px;
  display: flex;
  align-items: center;
  gap: 5px;
}
.pc_header .select-box .options {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  z-index: 10;
  width: 80px;
}
.pc_header .select-box .option {
  padding: 5px 10px;
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}
.pc_header .select-box .option:hover {
  background-color: #eee;
}
.pc_header .select-box.active .options {
  display: block;
}
.pc_header .select-box img {
  width: 16px;
  height: auto;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/*---------------------------------------*/
.footer .link_bnr {
  background-color: #252C2D;
  padding: 80px 0;
}
@media screen and (max-width: 768px) {
  .footer .link_bnr {
    padding: 50px;
  }
}
.footer .link_bnr ul {
  width: 90%;
  margin: auto;
  display: flex;
  column-gap: 20px;
}
@media screen and (max-width: 768px) {
  .footer .link_bnr ul {
    display: block;
  }
}
.footer .link_bnr ul li {
  width: 25%;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .footer .link_bnr ul li {
    width: 100%;
    max-width: 300px;
    margin: auto auto 10px;
  }
  .footer .link_bnr ul li:last-of-type {
    margin: auto auto auto;
  }
}
.footer .link_bnr ul li a {
  transition: 0.3s;
}
.footer .link_bnr ul li a:hover {
  opacity: 0.6;
}
.footer .page_link_area {
  background-color: #1B2021;
}
.footer .page_link_area p, .footer .page_link_area a {
  color: #fff;
}
.footer .page_link_area a {
  transition: 0.3s;
}
.footer .page_link_area a:hover {
  opacity: 0.6;
}
.footer .page_link_area .page_link_area_inner {
  width: 90%;
  margin: auto;
  padding: 60px 0 30px;
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .page_link_area_inner {
    padding: 50px 0;
  }
}
.footer .page_link_area .footer_logo {
  width: 450px;
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .footer_logo {
    width: 90%;
    max-width: 320px;
  }
}
.footer .page_link_area .page_link {
  margin-top: 20px;
  display: flex;
  column-gap: 50px;
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .page_link {
    column-gap: 4.17vw;
  }
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .page_link {
    display: none;
  }
}
.footer .page_link_area .page_link .nav01, .footer .page_link_area .page_link .nav02, .footer .page_link_area .page_link .nav03, .footer .page_link_area .page_link .nav04 {
  width: 25%;
}
.footer .page_link_area .page_link .parent {
  font-size: 16px;
  padding: 20px 0;
  border-bottom: 1px solid #fff;
  display: block;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .page_link .parent {
    font-size: 1.33vw;
  }
}
.footer .page_link_area .page_link .parent .arrow {
  position: absolute;
  width: 17px;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
  transition: 0.3s;
}
.footer .page_link_area .page_link .parent .blank {
  position: absolute;
  width: 17px;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
.footer .page_link_area .page_link .parent:hover .arrow {
  right: 0;
}
.footer .page_link_area .page_link .nav01 .link_wrap {
  margin-top: 15px;
}
.footer .page_link_area .page_link .nav01 .link_wrap a {
  display: block;
}
.footer .page_link_area .page_link .nav01 .link_wrap .grand {
  color: #999999;
  margin-top: 10px;
  font-size: 14px;
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .page_link .nav01 .link_wrap .grand {
    font-size: 1.17vw;
  }
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .page_link .nav01 .link_wrap .child {
    font-size: 1.33vw;
  }
}
.footer .page_link_area .page_link .nav02 .parent + .parent {
  margin-top: 30px;
}
.footer .page_link_area .page_link .nav02 .link_wrap {
  margin-top: 15px;
}
.footer .page_link_area .page_link .nav02 a {
  display: block;
}
.footer .page_link_area .page_link .nav02 .child {
  margin-top: 15px;
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .page_link .nav02 .child {
    font-size: 1.33vw;
  }
}
.footer .page_link_area .page_link .nav03 .parent + .parent {
  margin-top: 30px;
}
.footer .page_link_area .small_link_marks {
  display: flex;
  flex-direction: row-reverse;
  align-items: end;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .small_link_marks {
    display: block;
  }
}
.footer .page_link_area .small_link_marks .small_link_list {
  margin-top: 80px;
  display: flex;
  column-gap: 20px;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .small_link_marks .small_link_list {
    display: block;
    margin-top: 0;
  }
}
.footer .page_link_area .small_link_marks .small_link_list a {
  font-size: 14px;
  padding: 8px 0;
  display: block;
}
@media screen and (max-width: 1199px) {
  .footer .page_link_area .small_link_marks .small_link_list a {
    font-size: 1.17vw;
  }
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .small_link_marks .small_link_list a {
    font-size: 14px;
  }
}
.footer .page_link_area .small_link_marks .marks {
  width: 300px;
}
@media screen and (max-width: 999px) {
  .footer .page_link_area .small_link_marks .marks {
    width: 30vw;
  }
}
@media screen and (max-width: 768px) {
  .footer .page_link_area .small_link_marks .marks {
    width: 90%;
    max-width: 300px;
    margin: 50px auto 40px;
  }
}
.footer .copy_wrap {
  background-color: #E70418;
  text-align: center;
  padding: 10px 0;
}
.footer .copy_wrap .copy {
  color: #fff;
  font-size: 12px;
  font-weight: 500;
}

/* 流用パーツ
--------------------------------------------------*/
article {
  word-break: break-all;
}

.lg_none {
  display: none;
}
@media screen and (max-width: 999px) {
  .lg_none {
    display: block;
  }
}

.sp_none {
  display: block;
}
@media screen and (max-width: 768px) {
  .sp_none {
    display: none;
  }
}

.sp_none_space {
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .sp_none_space {
    display: none;
  }
}

.pc_none {
  display: none;
}
@media screen and (max-width: 768px) {
  .pc_none {
    display: block;
  }
}

.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  .pc-view.blank {
    display: none;
  }
}

.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .sp-view {
    display: none;
  }
}

.pc-nav-view {
  display: block;
}
@media screen and (max-width: 999px) {
  .pc-nav-view {
    display: none;
  }
}

.lg_br {
  display: none;
}
@media screen and (max-width: 999px) {
  .lg_br {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .lg_br {
    display: none;
  }
}

.sm_br {
  display: none;
}
@media screen and (max-width: 413px) {
  .sm_br {
    display: block;
  }
}

.h2_wrap {
  text-align: center;
}

.h2_area {
  position: relative;
  display: inline-block;
}
.h2_area h2 {
  display: inline-block;
  font-size: 60px;
  text-align: center;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .h2_area h2 {
    font-size: 30px;
  }
}
.h2_area h2 .en_title {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  font-size: 22px;
}
@media screen and (max-width: 768px) {
  .h2_area h2 .en_title {
    font-size: 16px;
  }
}
.h2_area .treat {
  position: absolute;
  z-index: 1;
  width: 95px;
  height: 80px;
  top: 0px;
  left: -70px;
}
@media screen and (max-width: 768px) {
  .h2_area .treat {
    width: 50px;
    height: 42px;
    left: -30px;
    top: -5px;
  }
}

/* ボタン
--------------------------------------------------*/
.btn {
  width: 250px;
  height: 60px;
  background-color: #D01122;
  color: #fff;
  display: inline-flex;
  justify-content: start;
  align-items: center;
  border-radius: 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .btn {
    width: 100%;
    max-width: 400px;
  }
}
.btn .txt {
  margin-left: 30px;
  color: #fff;
  font-size: 14px;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.btn .txt_jp {
  margin-left: 30px;
  color: #fff;
  font-size: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .btn .txt_jp {
    font-size: 14px;
  }
}
.btn .circle {
  position: absolute;
  right: 12px;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 150px;
  color: #fff;
  background: #D01122;
  box-shadow: 4px 4px 8px #912E2E, -4px -4px 8px #DB2E3E;
  transition: 0.3s;
}
.btn .circle .arrow {
  width: 14px;
}
.btn:hover {
  background-color: #A8101C;
}
.btn:hover .circle {
  box-shadow: inset 4px 4px 8px #8f0e18, inset -4px -4px 8px #c11220;
  background-color: #A8101C;
}

.btn_wrapper {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .btn_wrapper {
    text-align: center;
  }
}

/* 下層
--------------------------------------------------*/
.page_underlay {
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .page_underlay {
    padding-top: 55px;
  }
}
.page_underlay .breadcrumbs {
  width: 80%;
  margin: 20px auto auto;
  text-align: right;
  display: block; /* テキストエリアをブロック要素として設定 */
  overflow: hidden; /* 溢れた部分を隠す */
  text-overflow: ellipsis; /* 溢れた部分に「...」を表示 */
  white-space: nowrap; /* テキストを一行に制限 */
  word-break: break-word; /* 長い単語や記号が正しく改行されるように設定 */
  overflow-wrap: break-word; /* 長い単語や記号が正しく改行されるように設定 */
}
@media screen and (max-width: 768px) {
  .page_underlay .breadcrumbs {
    width: 90%;
  }
}
.page_underlay .breadcrumbs span {
  line-height: 2;
}
.page_underlay .breadcrumbs a {
  border-bottom: 1px solid #1B2021;
  transition: 0.3s;
  line-height: 2;
}
.page_underlay .breadcrumbs a span {
  transition: 0.3s;
}
.page_underlay .breadcrumbs a:hover {
  border-bottom: 1px solid #D01122;
}
.page_underlay .breadcrumbs a:hover span {
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_underlay .breadcrumbs a {
    font-size: 14px;
  }
  .page_underlay .breadcrumbs span {
    font-size: 14px;
  }
}

.sec_underlay_kv {
  padding-top: 60px;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv {
    padding-top: 40px;
  }
}
.sec_underlay_kv .h2_wrap {
  text-align: center;
}
.sec_underlay_kv .h2_area {
  position: relative;
  display: inline-block;
}
.sec_underlay_kv .h2_area h2 {
  display: inline-block;
  font-size: 52px;
  text-align: center;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv .h2_area h2 {
    font-size: 22px;
  }
}
.sec_underlay_kv .h2_area h2 .en_title {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv .h2_area h2 .en_title {
    font-size: 14px;
  }
}
.sec_underlay_kv .h2_area .treat {
  position: absolute;
  z-index: 1;
  width: 95px;
  height: auto;
  top: -10px;
  left: -70px;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv .h2_area .treat {
    width: 50px;
    height: 42px;
    left: -30px;
    top: -5px;
  }
}
.sec_underlay_kv .underlay_kv_wrap {
  border-radius: 10px 0 0 10px;
  width: 95%;
  margin: 40px 0 auto auto;
}
.sec_underlay_kv .underlay_kv_wrap img {
  border-radius: 10px 0 0 10px;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}

/* 下層セクションタイトル h3
--------------------------------------------------*/
.under_h3_wrap {
  text-align: left;
}
.under_h3_wrap h3 {
  display: inline-block;
  font-size: 40px;
  position: relative;
  padding-left: 42px;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .under_h3_wrap h3 {
    line-height: 1.25;
    font-size: 22px;
    padding-left: 24px;
  }
}
.under_h3_wrap h3 .square {
  position: absolute;
  top: 16px;
  left: 0;
  width: 24px;
  height: 24px;
}
@media screen and (max-width: 768px) {
  .under_h3_wrap h3 .square {
    top: 8px;
    width: 14px;
    height: 14px;
  }
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

/*フェードイン*/
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 800ms ease-in-out;
  transition-delay: 0.03s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

/*フェードイン 左←右*/
.fadein-r {
  opacity: 0;
  transform: translate(50px, 0);
  transition: all 800ms ease-in-out;
  transition-delay: 0.03s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.fadein-r.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

/*フェードイン 左→右*/
.fadein-l {
  opacity: 0;
  transform: translate(-50px, 0);
  transition: all 800ms ease-in-out;
  transition-delay: 0.03s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.fadein-l.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

/*KV フェードイン*/
.kv-fadein-txt {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 800ms ease-in-out;
  transition-delay: 0.05s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.kv-fadein-txt.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.kv-fadein-r {
  opacity: 0;
  transform: translate(50px, 0);
  transition: all 1000ms ease-in-out;
  transition-delay: 0.1s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.kv-fadein-r.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.kv-fadein-l {
  opacity: 0;
  transform: translate(-50px, 0);
  transition: all 1000ms ease-in-out;
  transition-delay: 0.1s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.kv-fadein-l.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* TOP */
/* ------------------------------------- */
.page_top {
  overflow: hidden;
}

/* キービジュアル */
/* ------------------------------------- */
.sec_top_kv {
  position: relative;
}
.sec_top_kv .txt_wrap {
  position: absolute;
  bottom: 5vw;
  left: 5%;
  border-bottom: 1px solid #06123B;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .txt_wrap {
    bottom: 12vw;
  }
}
.sec_top_kv .txt_wrap .jp_catch {
  font-size: 3.75vw;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .txt_wrap .jp_catch {
    font-size: clamp(24px, 8.21vw, 32px);
  }
}
.sec_top_kv .txt_wrap .en_catch {
  font-size: 1.5vw;
  margin: 10px auto 20px;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .txt_wrap .en_catch {
    font-size: clamp(16px, 4.62vw, 20px);
  }
}
.sec_top_kv .txt_wrap .en_catch .t_red {
  color: #D01122;
  font-size: 1.5vw;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .txt_wrap .en_catch .t_red {
    font-size: clamp(16px, 4.62vw, 24px);
  }
}
.sec_top_kv .kv_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .kv_pc {
    display: none;
  }
}
.sec_top_kv .kv_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .sec_top_kv .kv_sp {
    display: block;
  }
}
.sec_top_kv .kv_sp_ph {
  min-height: 100vh; /* Fallback */
  min-height: calc(var(--vh, 1vh) * 100);
  background-image: url(../img/top/kv_sp_ph.webp);
  background-size: cover;
  background-position: top center;
  position: relative;
  overflow: hidden; /* スクロールの問題を防ぐ */
}
.sec_top_kv .kv_sp_bg {
  position: absolute;
  width: 100%; /* 幅を調整 */
  max-width: 450px;
  height: auto;
  bottom: 0;
}
.sec_top_kv .br_470 {
  display: none;
}
@media screen and (max-width: 469px) {
  .sec_top_kv .br_470 {
    display: block;
  }
}
.sec_top_kv .br_470_none {
  display: block;
}
@media screen and (max-width: 469px) {
  .sec_top_kv .br_470_none {
    display: none;
  }
}

/* 事業領域 */
/* ------------------------------------- */
.sec_top_solution_bg {
  background-color: #F4F4F4;
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: 120px;
}
@media screen and (max-width: 768px) {
  .sec_top_solution_bg {
    margin-top: 60px;
  }
}
.sec_top_solution_bg::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: -80%;
  background-color: #E0E0E0;
  transform: skewY(-60deg) scale(2);
  z-index: 2;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .sec_top_solution_bg::before {
    right: -280%;
    transform: skewY(-70deg) scale(2);
  }
}

.sec_top_solution {
  width: 90%;
  margin: auto;
  padding: 60px 0 120px;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 768px) {
  .sec_top_solution {
    padding: 60px 0;
  }
}
.sec_top_solution .social_infra {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra {
    margin-top: 30px;
  }
}
.sec_top_solution .social_infra .flex {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .flex {
    display: block;
  }
}
.sec_top_solution .social_infra .h3_wrap {
  text-align: left;
}
.sec_top_solution .social_infra .h3_wrap h3 {
  display: inline-block;
  font-size: clamp(36px, 2.57vw, 46px);
  font-weight: 900;
  position: relative;
  padding-left: 35px;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .h3_wrap h3 {
    line-height: 1.25;
    font-size: 24px;
    padding-left: 26px;
  }
}
.sec_top_solution .social_infra .h3_wrap h3 .square {
  position: absolute;
  top: 12px;
  left: 0;
  width: 24px;
  height: 24px;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .h3_wrap h3 .square {
    top: 6px;
    width: 18px;
    height: 18px;
  }
}
.sec_top_solution .social_infra .ex_txt {
  font-size: clamp(20px, 1.43vw, 36px);
  margin: 30px auto 40px;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .ex_txt {
    margin: 20px auto;
    font-size: 16px;
  }
}
.sec_top_solution .social_infra .infra_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  column-gap: 2%;
  row-gap: 40px;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .infra_list {
    display: block;
    margin-top: 30px;
  }
}
.sec_top_solution .social_infra .infra_list li {
  width: 32%;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .infra_list li {
    width: 100%;
    margin-bottom: 20px;
  }
}
.sec_top_solution .social_infra .infra_list li .link .link_txt {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
.sec_top_solution .social_infra .infra_list li .link .link_txt p {
  font-size: clamp(24px, 1.71vw, 36px);
}
@media screen and (max-width: 768px) {
  .sec_top_solution .social_infra .infra_list li .link .link_txt p {
    font-size: 16px;
  }
}
.sec_top_solution .social_infra .infra_list li .link .link_txt .arrow {
  transition: 0.3s;
  width: 20px;
  margin-right: 10px;
}
.sec_top_solution .social_infra .infra_list li .link .wrap {
  position: relative;
  display: inline-block;
  width: 100%;
}
.sec_top_solution .social_infra .infra_list li .link .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
  border-radius: 5px;
  pointer-events: none;
  z-index: 2;
}
.sec_top_solution .social_infra .infra_list li .link .img_wrap {
  overflow: hidden;
  border-radius: 5px;
}
.sec_top_solution .social_infra .infra_list li .link .img_wrap img {
  transition: 0.4s;
}
.sec_top_solution .social_infra .infra_list li .link:hover .arrow {
  margin-right: 0;
}
.sec_top_solution .social_infra .infra_list li .link:hover img {
  transform: scale(1.2, 1.2);
}
.sec_top_solution .lower {
  margin-top: 80px;
  display: flex;
  column-gap: 2%;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .lower {
    display: block;
    margin-top: 40px;
  }
}
.sec_top_solution .lower .block_Ai, .sec_top_solution .lower .mobile {
  width: 49%;
  display: flex;
  flex-direction: column;
}
.sec_top_solution .lower .block_Ai .ph, .sec_top_solution .lower .mobile .ph {
  border-radius: 10px;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 768px) {
  .sec_top_solution .lower .block_Ai, .sec_top_solution .lower .mobile {
    width: 100%;
  }
}
.sec_top_solution .lower .block_Ai .ex_txt, .sec_top_solution .lower .mobile .ex_txt {
  margin: 30px auto 30px 0;
  font-size: 20px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .lower .block_Ai .ex_txt, .sec_top_solution .lower .mobile .ex_txt {
    font-size: 16px;
    margin: 10px auto 20px 0;
  }
}
.sec_top_solution .lower .block_Ai .btn_wrapper, .sec_top_solution .lower .mobile .btn_wrapper {
  margin-top: auto;
}
@media screen and (max-width: 768px) {
  .sec_top_solution .lower .mobile {
    margin: 40px auto auto;
  }
}

/* ピックアップ */
/* ------------------------------------- */
.sec_pickup {
  padding: 110px 0 0;
}
@media screen and (max-width: 768px) {
  .sec_pickup {
    padding: 60px 0 0;
  }
}
.sec_pickup .h2_wrap {
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .sec_pickup .h2_wrap {
    margin-bottom: 20px;
  }
}
.sec_pickup .swiper-slide {
  width: 62.5%;
  max-width: 1000px;
}
@media screen and (max-width: 768px) {
  .sec_pickup .swiper-slide {
    width: 90%;
  }
}

.swiper_arrows {
  display: flex;
  justify-content: end;
  column-gap: 20px;
  width: 90%;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .swiper_arrows {
    column-gap: 10px;
  }
}
.swiper_arrows .swipe_next, .swiper_arrows .swipe_prev {
  position: static;
  transition: 0.3s;
}
.swiper_arrows .swipe_next:hover, .swiper_arrows .swipe_prev:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .swiper_arrows .swipe_next, .swiper_arrows .swipe_prev {
    width: 40px;
    height: 40px;
  }
}

/* ニュース */
/* ------------------------------------- */
.sec_top_news {
  padding-top: 60px;
  width: 90%;
  margin: auto;
}
.sec_top_news .news_list {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list {
    margin-top: 20px;
  }
}
.sec_top_news .news_list li {
  border-bottom: 1px solid #E0E0E0;
  align-items: center;
}
.sec_top_news .news_list li a {
  display: flex;
  align-items: center;
  padding: 30px 60px 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a {
    display: block;
    padding: 15px 0;
  }
}
.sec_top_news .news_list li a .date_label_wrap {
  display: flex;
  align-items: center;
}
.sec_top_news .news_list li a .date {
  width: 105px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a .date {
    width: 85px;
    font-size: 14px;
  }
}
.sec_top_news .news_list li a .label {
  color: #fff;
  background-color: #1B2021;
  width: 140px;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1px;
  height: 34px;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a .label {
    font-size: 14px;
    height: 24px;
    width: 120px;
  }
}
.sec_top_news .news_list li a .title {
  width: calc(100% - 105px - 140px);
  margin-left: 30px;
  font-weight: 500;
  padding-right: 90px;
}
@media screen and (max-width: 1199px) {
  .sec_top_news .news_list li a .title {
    padding-right: 4.17vw;
  }
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a .title {
    width: 100%;
    margin: 8px auto auto;
    padding-right: 30px;
    position: relative;
  }
}
.sec_top_news .news_list li a .arrow {
  position: absolute;
  width: 25px;
  right: 60px;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a .arrow {
    width: 14px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
}
.sec_top_news .news_list li a:hover {
  opacity: 0.6;
}
.sec_top_news .news_list li a:hover .arrow {
  right: 50px;
}
@media screen and (max-width: 768px) {
  .sec_top_news .news_list li a:hover .arrow {
    right: 0;
  }
}

/* 企業情報 */
/* ------------------------------------- */
.sec_company_bg {
  background-color: #F4F4F4;
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .sec_company_bg {
    margin-top: 80px;
  }
}
.sec_company_bg::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -80%;
  right: 0;
  background-color: #E0E0E0;
  transform: skewY(60deg) scale(2);
  z-index: 2;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .sec_company_bg::before {
    left: -180%;
  }
}

.sec_company {
  padding: 60px 0 120px;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 768px) {
  .sec_company {
    padding: 40px 0 60px;
  }
}
.sec_company .bnr_list {
  width: 90%;
  margin: 40px auto auto;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list {
    display: block;
  }
}
.sec_company .bnr_list li:nth-of-type(1), .sec_company .bnr_list li:nth-of-type(2) {
  width: 50%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li:nth-of-type(1), .sec_company .bnr_list li:nth-of-type(2) {
    width: 100%;
  }
}
.sec_company .bnr_list li:nth-of-type(1)::before, .sec_company .bnr_list li:nth-of-type(2)::before {
  content: "";
  height: 1px;
  width: 100%;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  z-index: 10;
}
.sec_company .bnr_list li:nth-of-type(1)::after {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #fff;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li:nth-of-type(1)::after {
    display: none;
  }
}
.sec_company .bnr_list li:nth-of-type(3), .sec_company .bnr_list li:nth-of-type(4), .sec_company .bnr_list li:nth-of-type(5) {
  width: 33.3333333333%;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li:nth-of-type(3), .sec_company .bnr_list li:nth-of-type(4), .sec_company .bnr_list li:nth-of-type(5) {
    width: 100%;
  }
}
.sec_company .bnr_list li:nth-of-type(3), .sec_company .bnr_list li:nth-of-type(4) {
  position: relative;
}
.sec_company .bnr_list li:nth-of-type(3)::after, .sec_company .bnr_list li:nth-of-type(4)::after {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #fff;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li:nth-of-type(3)::after, .sec_company .bnr_list li:nth-of-type(4)::after {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li:nth-of-type(3)::before, .sec_company .bnr_list li:nth-of-type(4)::before {
    content: "";
    height: 1px;
    width: 100%;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    z-index: 10;
  }
}
.sec_company .bnr_list li a {
  display: block;
  position: relative;
}
.sec_company .bnr_list li a .txt {
  position: absolute;
  left: 40px;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 26px;
  font-weight: 700;
}
@media screen and (max-width: 1199px) {
  .sec_company .bnr_list li a .txt {
    font-size: 2.17vw;
    left: 3.33vw;
  }
}
.sec_company .bnr_list li a .txt .mon_500 {
  color: #fff;
  font-size: 16px;
  display: block;
  margin-bottom: 5px;
}
@media screen and (max-width: 1199px) {
  .sec_company .bnr_list li a .txt .mon_500 {
    font-size: 1.33vw;
  }
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li a .txt {
    font-size: 20px;
  }
  .sec_company .bnr_list li a .txt .mon_500 {
    font-size: 12px;
  }
}
.sec_company .bnr_list li a .arrow {
  position: absolute;
  right: 40px;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
  transition: 0.3s;
}
@media screen and (max-width: 1199px) {
  .sec_company .bnr_list li a .arrow {
    width: 2.08vw;
    right: 3.33vw;
  }
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li a .arrow {
    width: 15px;
  }
}
.sec_company .bnr_list li a::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .sec_company .bnr_list li a::before {
    display: none;
  }
}
.sec_company .bnr_list li a:hover::before {
  opacity: 0;
}
.sec_company .bnr_list li a:hover .arrow {
  right: 30px;
}
@media screen and (max-width: 1199px) {
  .sec_company .bnr_list li a:hover .arrow {
    right: 2.5vw;
  }
}

/* 採用情報 */
/* ------------------------------------- */
.sec_recruit {
  margin: 100px auto 110px;
  width: 90%;
}
@media screen and (max-width: 768px) {
  .sec_recruit {
    margin: 60px auto 60px;
    width: 100%;
  }
}
.sec_recruit .flex {
  margin-top: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex {
    display: block;
    margin-top: 30px;
  }
}
.sec_recruit .flex .right {
  width: 45%;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .right {
    width: 100%;
    margin-top: 40px;
  }
}
.sec_recruit .flex .left {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left {
    width: 90%;
    margin: auto;
  }
}
.sec_recruit .flex .left .big_txt {
  font-size: 30px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left .big_txt {
    font-size: 24px;
  }
}
.sec_recruit .flex .left .s_txt {
  font-size: 18px;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left .s_txt {
    margin-top: 20px;
    font-size: 16px;
  }
}
.sec_recruit .flex .left .btn_wrapper {
  margin-top: 40px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left .btn_wrapper {
    text-align: center;
  }
}
.sec_recruit .flex .left .btn_wrapper .btn {
  width: 330px;
  height: 78px;
  border-radius: 40px;
}
.sec_recruit .flex .left .btn_wrapper .btn .circle {
  width: 52px;
  height: 52px;
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left .btn_wrapper .btn .circle {
    width: 40px;
    height: 40px;
  }
}
@media screen and (max-width: 768px) {
  .sec_recruit .flex .left .btn_wrapper .btn {
    height: 60px;
    width: 100%;
    max-width: 400px;
  }
}

/* お問い合わせ */
/* ------------------------------------- */
.sec_top_contact {
  position: relative;
  padding: 60px 0;
}
.sec_top_contact::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background-image: url(../img/top/top_contact.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 1;
}
.sec_top_contact .sec_top_contact_inner {
  position: relative;
  z-index: 2;
}
.sec_top_contact .sec_top_contact_inner .h2_wrap h2 {
  color: #fff;
  font-size: 80px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sec_top_contact .sec_top_contact_inner .h2_wrap h2 {
    font-size: 60px;
  }
}
.sec_top_contact .sec_top_contact_inner .h2_wrap .jp_txt {
  color: #fff;
  font-size: 20px;
  margin-top: 10px;
}
.sec_top_contact .sec_top_contact_inner .ex_txt {
  font-size: 20px;
  color: #fff;
  margin: 40px auto;
  text-align: center;
  width: 90%;
  word-break: break-all; /* 強制的にどこでも改行可能 */
  overflow-wrap: break-word;
}
@media screen and (max-width: 768px) {
  .sec_top_contact .sec_top_contact_inner .ex_txt {
    font-size: 16px;
    margin: 40px auto 20px;
  }
}
.sec_top_contact .sec_top_contact_inner .btn_wrapper {
  text-align: center;
}
.sec_top_contact .sec_top_contact_inner .btn_wrapper .btn {
  width: 400px;
  height: 100px;
  border-radius: 50px;
}
@media screen and (max-width: 768px) {
  .sec_top_contact .sec_top_contact_inner .btn_wrapper .btn {
    height: 60px;
    width: 90%;
    max-width: 350px;
  }
}
.sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .txt_jp {
  font-size: 20px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .txt_jp {
    font-size: 14px;
  }
}
.sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .circle {
  width: 67px;
  height: 67px;
}
.sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .circle .mail_icon {
  width: 20px;
  height: 20px;
}
@media screen and (max-width: 768px) {
  .sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .circle {
    width: 40px;
    height: 40px;
  }
  .sec_top_contact .sec_top_contact_inner .btn_wrapper .btn .circle i {
    font-size: 14px;
  }
}

.sec_top_kv .jp_catch, .sec_top_kv .en_catch {
  text-shadow: 0px 3px 5px rgba(153, 153, 153, 0.8);
}

h2 {
  text-shadow: 0px 3px 5px rgba(153, 153, 153, 0.8);
}

h3 {
  text-shadow: 0px 3px 5px rgba(153, 153, 153, 0.8);
}

/* 四角あしらいのCSSト------*/
@media screen and (min-width: 1400px) {
  .sec_top_solution .social_infra .h3_wrap h3 {
    padding-left: 2.5vw;
  }
  .sec_top_solution .social_infra .h3_wrap h3 .square {
    width: 2.14vw;
    top: 55%;
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 1400px) and (max-width: 999px) {
  .sec_top_solution .social_infra .h3_wrap h3 .square {
    position: absolute;
    top: 12px;
    left: 0;
    width: 24px;
    height: 24px;
  }
}
.lower .h3_wrap {
  text-align: left;
  margin-bottom: 30px;
}
.lower .h3_wrap h3 {
  display: inline-block;
  font-size: clamp(36px, 2.57vw, 46px);
  padding-left: 2.5vw;
  position: relative;
  line-height: 1.25;
}
@media screen and (max-width: 1199px) {
  .lower .h3_wrap h3 {
    padding-left: 35px;
  }
}
@media screen and (max-width: 768px) {
  .lower .h3_wrap h3 {
    font-size: 24px;
    padding-left: 26px;
    line-height: 1.25;
  }
}
.lower .h3_wrap h3 .square {
  position: absolute;
  left: 0;
  height: 24px;
  width: 2.14vw;
  top: 55%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1199px) {
  .lower .h3_wrap h3 .square {
    position: absolute;
    top: 12px;
    left: 0;
    width: 24px;
    height: 24px;
    transform: translateY(0);
  }
}
@media screen and (max-width: 768px) {
  .lower .h3_wrap h3 .square {
    top: 6px;
    width: 18px;
    height: 18px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 代表挨拶 */
/* ------------------------------------- */
.page_message .sec_message {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message {
    margin: 40px auto;
  }
}
.page_message .sec_message .message_catch {
  font-size: 40px;
  border-bottom: 1px solid #E0E0E0;
  padding: 20px 30px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .message_catch {
    font-size: 20px;
    padding: 10px 10px;
  }
}
.page_message .sec_message .wrapper {
  display: flex;
  justify-content: space-between;
  padding: 0 30px;
  margin: 60px auto auto;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .wrapper {
    display: block;
    padding: 0 10px;
    margin: 10px auto auto;
  }
}
.page_message .sec_message .wrapper .txt_wrapper {
  width: calc(100% - 430px);
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .wrapper .txt_wrapper {
    width: 100%;
  }
}
.page_message .sec_message .wrapper .txt_wrapper .txt {
  line-height: 1.8;
}
.page_message .sec_message .wrapper .profile {
  margin-left: 60px;
  width: 370px;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .wrapper .profile {
    width: 90%;
    max-width: 370px;
    margin: 20px auto auto;
  }
}
.page_message .sec_message .wrapper .profile img {
  border-radius: 10px;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
.page_message .sec_message .wrapper .name {
  text-align: right;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .wrapper .name {
    margin-top: 10px;
  }
}
.page_message .sec_company_bg {
  margin-top: 60px;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 会社概要 */
/* ------------------------------------- */
.page_outline {
  /* ページ内リンク */
  /* ------------------------------------- */
}
.page_outline .in_page_link {
  width: 80%;
  margin: 80px auto auto;
}
@media screen and (max-width: 768px) {
  .page_outline .in_page_link {
    width: 90%;
    margin: 10px auto auto;
  }
}
.page_outline .in_page_link ul {
  display: flex;
  column-gap: 20px;
}
@media screen and (max-width: 768px) {
  .page_outline .in_page_link ul {
    column-gap: 10px;
  }
}
.page_outline .in_page_link ul li {
  width: 33%;
  position: relative;
}
.page_outline .in_page_link ul li a {
  border-bottom: #1B2021 1px solid;
  padding: 15px 10px;
  width: 100%;
  display: block;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_outline .in_page_link ul li a {
    font-size: 12px;
    padding: 8px 5px;
  }
}
.page_outline .in_page_link ul li a:hover {
  opacity: 0.6;
}
.page_outline .in_page_link ul li a:hover + .arrow_down_red {
  top: 60%;
  opacity: 0.6;
}
.page_outline .in_page_link ul li .arrow_down_red {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #D01122;
  transition: 0.3s;
  width: 13px;
  height: 8px;
}
.page_outline {
  /* 会社概要 */
  /* ------------------------------------- */
}
.page_outline #company_profile {
  padding: 120px 0 0;
  width: 90%;
  max-width: 1000px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile {
    padding: 60px 0 0;
  }
}
.page_outline #company_profile .under_h3_wrap {
  text-align: center;
}
.page_outline #company_profile .info_table {
  margin-top: 40px;
}
.page_outline #company_profile .info_table dl {
  display: flex;
  padding: 24px 30px;
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table dl {
    display: block;
    padding: 15px 0;
  }
}
.page_outline #company_profile .info_table dl dt {
  width: 200px;
  font-weight: 700;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table dl dt {
    width: 100%;
  }
}
.page_outline #company_profile .info_table dl dd {
  width: calc(100% - 200px);
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table dl dd {
    width: 100%;
    line-height: 1.5;
    font-size: 15px;
    margin-top: 5px;
  }
}
.page_outline #company_profile .info_table .location .txt {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .txt {
    display: block;
  }
}
.page_outline #company_profile .info_table .location .map_link {
  transition: 0.3s;
  display: inline-block;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .map_link {
    margin-left: 0;
  }
}
.page_outline #company_profile .info_table .location .map_link:hover {
  opacity: 0.6;
}
.page_outline #company_profile .info_table .location .map_link .map_icon {
  width: 20px;
  height: 20px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .map_link .map_icon {
    width: 14px;
    height: 14px;
    margin-left: 5px;
  }
}
.page_outline #company_profile .info_table .location .tel_wrap {
  display: flex;
  margin-top: 10px;
}
.page_outline #company_profile .info_table .location .tel {
  margin-right: 40px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .tel {
    margin-right: 10px;
  }
}
.page_outline #company_profile .info_table .location .tel .tel_icon {
  margin-right: 6px;
  width: 14px;
  height: 14px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .tel .tel_icon {
    margin-right: 4px;
    width: 12px;
    height: 12px;
  }
}
.page_outline #company_profile .info_table .location .fax {
  display: flex;
  align-items: center;
}
.page_outline #company_profile .info_table .location .fax .fax_icon {
  margin-right: 6px;
  width: 14px;
  height: 14px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .location .fax .fax_icon {
    margin-right: 4px;
    width: 12px;
    height: 12px;
  }
}
.page_outline #company_profile .info_table .post_list li {
  display: flex;
}
.page_outline #company_profile .info_table .post_list li .post {
  width: 180px;
  font-size: 16px;
  line-height: 1.8;
}
.page_outline #company_profile .info_table .post_list li .name {
  width: calc(100% - 180px);
  font-size: 16px;
  line-height: 1.8;
}
.page_outline #company_profile .info_table .number a {
  color: #D01122;
  border-bottom: 1px solid #D01122;
  margin-left: 30px;
}
@media screen and (max-width: 768px) {
  .page_outline #company_profile .info_table .number a {
    margin-left: 5px;
  }
}
.page_outline {
  /* 拠点一覧 */
  /* ------------------------------------- */
}
.page_outline #list_of_locations {
  padding: 80px 0 0;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations {
    padding: 40px 0 0;
  }
}
.page_outline #list_of_locations .list_of_locations_bg {
  padding: 80px 0 100px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .list_of_locations_bg {
    padding: 60px 0 60px;
  }
}
.page_outline #list_of_locations .list_of_locations_bg::before {
  content: "";
  background-color: #F4F4F4;
  width: 95%;
  height: 100%;
  right: 0;
  top: 0;
  position: absolute;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .list_of_locations_bg::before {
    width: 100%;
  }
}
.page_outline #list_of_locations .list_of_locations_inner {
  position: relative;
  z-index: 2;
  width: 85%;
  margin: auto 5% auto 10%;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .list_of_locations_inner {
    width: 90%;
    margin: auto;
  }
}
.page_outline #list_of_locations .under_h3_wrap {
  text-align: center;
  position: relative;
  z-index: 2;
}
.page_outline #list_of_locations .honsya, .page_outline #list_of_locations .hokkaido, .page_outline #list_of_locations .osaka {
  padding-bottom: 60px;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya, .page_outline #list_of_locations .hokkaido, .page_outline #list_of_locations .osaka {
    padding-bottom: 20px;
  }
}
.page_outline #list_of_locations .honsya .jp, .page_outline #list_of_locations .hokkaido .jp, .page_outline #list_of_locations .osaka .jp {
  font-size: 30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .jp, .page_outline #list_of_locations .hokkaido .jp, .page_outline #list_of_locations .osaka .jp {
    font-size: 20px;
    margin-bottom: 8px;
    margin-top: 20px;
  }
}
.page_outline #list_of_locations .honsya .en, .page_outline #list_of_locations .hokkaido .en, .page_outline #list_of_locations .osaka .en {
  font-size: 25px;
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .en, .page_outline #list_of_locations .hokkaido .en, .page_outline #list_of_locations .osaka .en {
    font-size: 20px;
  }
}
.page_outline #list_of_locations .honsya .map_flex, .page_outline #list_of_locations .hokkaido .map_flex, .page_outline #list_of_locations .osaka .map_flex {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .map_flex, .page_outline #list_of_locations .hokkaido .map_flex, .page_outline #list_of_locations .osaka .map_flex {
    display: block;
  }
}
.page_outline #list_of_locations .honsya .map, .page_outline #list_of_locations .hokkaido .map, .page_outline #list_of_locations .osaka .map {
  width: 50%;
  height: 320px;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .map, .page_outline #list_of_locations .hokkaido .map, .page_outline #list_of_locations .osaka .map {
    width: 100%;
    height: 200px;
  }
}
.page_outline #list_of_locations .honsya .map iframe, .page_outline #list_of_locations .hokkaido .map iframe, .page_outline #list_of_locations .osaka .map iframe {
  width: 100%;
  height: 100%;
}
.page_outline #list_of_locations .honsya .info, .page_outline #list_of_locations .hokkaido .info, .page_outline #list_of_locations .osaka .info {
  width: calc(50% - 60px);
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .info, .page_outline #list_of_locations .hokkaido .info, .page_outline #list_of_locations .osaka .info {
    width: 100%;
  }
}
.page_outline #list_of_locations .honsya .info .adress_wrap, .page_outline #list_of_locations .hokkaido .info .adress_wrap, .page_outline #list_of_locations .osaka .info .adress_wrap {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .info .adress_wrap, .page_outline #list_of_locations .hokkaido .info .adress_wrap, .page_outline #list_of_locations .osaka .info .adress_wrap {
    margin: 10px auto 20px;
  }
}
.page_outline #list_of_locations .honsya .info .map_link, .page_outline #list_of_locations .honsya .info .bus_link, .page_outline #list_of_locations .hokkaido .info .map_link, .page_outline #list_of_locations .hokkaido .info .bus_link, .page_outline #list_of_locations .osaka .info .map_link, .page_outline #list_of_locations .osaka .info .bus_link {
  margin-top: 10px;
  position: relative;
  padding-right: 20px;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .info .map_link, .page_outline #list_of_locations .honsya .info .bus_link, .page_outline #list_of_locations .hokkaido .info .map_link, .page_outline #list_of_locations .hokkaido .info .bus_link, .page_outline #list_of_locations .osaka .info .map_link, .page_outline #list_of_locations .osaka .info .bus_link {
    display: flex;
  }
}
.page_outline #list_of_locations .honsya .info .map_link .link_txt, .page_outline #list_of_locations .honsya .info .bus_link .link_txt, .page_outline #list_of_locations .hokkaido .info .map_link .link_txt, .page_outline #list_of_locations .hokkaido .info .bus_link .link_txt, .page_outline #list_of_locations .osaka .info .map_link .link_txt, .page_outline #list_of_locations .osaka .info .bus_link .link_txt {
  border-bottom: 1px solid #D01122;
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .info .map_link .link_txt, .page_outline #list_of_locations .honsya .info .bus_link .link_txt, .page_outline #list_of_locations .hokkaido .info .map_link .link_txt, .page_outline #list_of_locations .hokkaido .info .bus_link .link_txt, .page_outline #list_of_locations .osaka .info .map_link .link_txt, .page_outline #list_of_locations .osaka .info .bus_link .link_txt {
    font-size: 12px;
  }
}
.page_outline #list_of_locations .honsya .info .map_link .blank_red, .page_outline #list_of_locations .honsya .info .bus_link .blank_red, .page_outline #list_of_locations .hokkaido .info .map_link .blank_red, .page_outline #list_of_locations .hokkaido .info .bus_link .blank_red, .page_outline #list_of_locations .osaka .info .map_link .blank_red, .page_outline #list_of_locations .osaka .info .bus_link .blank_red {
  width: 15px;
  transition: 0.3s;
  opacity: 1;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .info .map_link .blank_red, .page_outline #list_of_locations .honsya .info .bus_link .blank_red, .page_outline #list_of_locations .hokkaido .info .map_link .blank_red, .page_outline #list_of_locations .hokkaido .info .bus_link .blank_red, .page_outline #list_of_locations .osaka .info .map_link .blank_red, .page_outline #list_of_locations .osaka .info .bus_link .blank_red {
    width: 12px;
    position: static;
    transform: none;
    margin-left: 3px;
  }
}
.page_outline #list_of_locations .honsya .info .map_link:hover, .page_outline #list_of_locations .honsya .info .bus_link:hover, .page_outline #list_of_locations .hokkaido .info .map_link:hover, .page_outline #list_of_locations .hokkaido .info .bus_link:hover, .page_outline #list_of_locations .osaka .info .map_link:hover, .page_outline #list_of_locations .osaka .info .bus_link:hover {
  opacity: 0.6;
}
.page_outline #list_of_locations .honsya .info .map_link:hover .blank_red, .page_outline #list_of_locations .honsya .info .bus_link:hover .blank_red, .page_outline #list_of_locations .hokkaido .info .map_link:hover .blank_red, .page_outline #list_of_locations .hokkaido .info .bus_link:hover .blank_red, .page_outline #list_of_locations .osaka .info .map_link:hover .blank_red, .page_outline #list_of_locations .osaka .info .bus_link:hover .blank_red {
  opacity: 0.6;
}
.page_outline #list_of_locations .honsya .info .bus_link, .page_outline #list_of_locations .hokkaido .info .bus_link, .page_outline #list_of_locations .osaka .info .bus_link {
  margin-top: 0;
}
.page_outline #list_of_locations .honsya .info .train .title, .page_outline #list_of_locations .hokkaido .info .train .title, .page_outline #list_of_locations .osaka .info .train .title {
  border-bottom: 1px solid #1B2021;
  padding: 0 0 10px 0;
  display: flex;
  align-items: center;
}
.page_outline #list_of_locations .honsya .info .train .title .train_icon, .page_outline #list_of_locations .hokkaido .info .train .title .train_icon, .page_outline #list_of_locations .osaka .info .train .title .train_icon {
  margin-right: 6px;
  width: 14px;
  height: 16px;
}
.page_outline #list_of_locations .honsya .info .train .txt, .page_outline #list_of_locations .hokkaido .info .train .txt, .page_outline #list_of_locations .osaka .info .train .txt {
  margin: 10px auto;
}
.page_outline #list_of_locations .honsya .office_gallery, .page_outline #list_of_locations .hokkaido .office_gallery, .page_outline #list_of_locations .osaka .office_gallery {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .honsya .office_gallery, .page_outline #list_of_locations .hokkaido .office_gallery, .page_outline #list_of_locations .osaka .office_gallery {
    margin-top: 20px;
  }
}
.page_outline #list_of_locations .hokkaido, .page_outline #list_of_locations .osaka {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .page_outline #list_of_locations .hokkaido, .page_outline #list_of_locations .osaka {
    margin-top: 30px;
  }
}
.page_outline #list_of_locations .osaka {
  border-bottom: none;
  padding-bottom: 0;
}
.page_outline {
  /* モーダル ------------------------------------- */
}
.page_outline .screen {
  background-color: rgba(0, 0, 0, 0.25);
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 10000;
}
.page_outline .close_wrap {
  position: absolute;
  right: 0;
  bottom: 0;
}
.page_outline .close {
  cursor: pointer;
  right: 0;
  z-index: 10001;
  margin-left: 0;
  width: 16px;
  height: 16px;
  position: relative;
}
.page_outline .close::after, .page_outline .close::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px; /* 棒の幅（太さ） */
  height: 20px; /* 棒の高さ */
  border-radius: 1px;
  background: #fff;
}
.page_outline .close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.page_outline .close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.page_outline .close_note {
  position: absolute;
  left: 0;
  top: 0;
  color: #fff;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .page_outline .close_note {
    font-size: 16px;
  }
}
.page_outline {
  /*モーダルの高さ*/
}
.page_outline .showbox {
  width: 100%;
  background-color: #fff;
  display: none;
  position: fixed;
  margin: auto;
  z-index: 10001;
}
.page_outline .showbox .show_inner {
  width: 90%;
  max-width: 680px;
  background-color: #fff;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  margin: auto;
  left: 0;
  right: 0;
  z-index: 10001;
  text-align: center;
  overflow-y: hidden;
  height: auto;
  box-sizing: border-box;
  word-wrap: break-word;
  padding: 0 0 25px;
  background: transparent;
}
.page_outline .modal_wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 30px auto auto;
}
.page_outline .modal_wrap a {
  width: 33.3333333333%;
}
.page_outline .modal_wrap img {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 768px) {
  .page_outline .modal_wrap {
    margin: 10px auto auto;
  }
}
.page_outline {
  /* 沿革 */
  /* ------------------------------------- */
}
.page_outline #history {
  padding-top: 100px;
  width: 90%;
  max-width: 1000px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_outline #history {
    padding-top: 60px;
  }
}
.page_outline #history .under_h3_wrap {
  text-align: center;
}
.page_outline #history .history_list {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .page_outline #history .history_list {
    margin-top: 10px;
  }
}
.page_outline #history .history_list dl {
  border-bottom: 1px solid #E0E0E0;
  display: flex;
  align-items: center;
  padding: 24px 30px;
}
@media screen and (max-width: 768px) {
  .page_outline #history .history_list dl {
    display: block;
    padding: 15px 0px;
  }
}
.page_outline #history .history_list dl dt {
  font-size: 66px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #D01122;
  letter-spacing: 0;
  width: 220px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_outline #history .history_list dl dt {
    width: 100%;
    font-size: 30px;
    margin-bottom: 5px;
  }
}
.page_outline #history .history_list dl dd {
  width: calc(100% - 220px);
}
.page_outline #history .history_list dl dd .dd_inner {
  line-height: 1.5;
}
.page_outline #history .history_list dl dd .dd_inner .month {
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_outline #history .history_list dl dd {
    width: 100%;
  }
}
.page_outline #history .history_list dl:nth-of-type(7) .dd_inner {
  margin-top: 30px;
}
.page_outline #history .history_list dl:nth-of-type(7) .dd_inner:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .page_outline #history .history_list dl:nth-of-type(7) .dd_inner {
    margin-top: 10px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 経営理念・経営方針 */
/* ------------------------------------- */
.page_vision .sec_management_policy {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy {
    margin: 40px auto auto;
  }
}
.page_vision .sec_management_policy .under_h3_wrap {
  text-align: center;
}
.page_vision .sec_management_policy .policy_list {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy .policy_list {
    margin-top: 20px;
  }
}
.page_vision .sec_management_policy .policy_list li {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy .policy_list li {
    display: block;
    margin-bottom: 30px;
  }
}
.page_vision .sec_management_policy .policy_list li .title_bg {
  background-color: #D01122;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 160px;
  padding: 0 10px;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy .policy_list li .title_bg {
    width: 100%;
    height: 50px;
  }
}
.page_vision .sec_management_policy .policy_list li .title_bg p {
  color: #fff;
  font-size: 30px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy .policy_list li .title_bg p {
    font-size: 18px;
  }
}
.page_vision .sec_management_policy .policy_list li .txt_wrap {
  margin-left: 40px;
  width: calc(100% - 200px);
}
.page_vision .sec_management_policy .policy_list li .txt_wrap p {
  font-size: 18px;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .page_vision .sec_management_policy .policy_list li .txt_wrap {
    width: 100%;
    margin-left: auto;
    margin-top: 10px;
  }
  .page_vision .sec_management_policy .policy_list li .txt_wrap p {
    font-size: 15px;
    line-height: 1.5;
  }
}
.page_vision .behavioral_guidelines {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines {
    margin: 60px auto auto;
  }
}
.page_vision .behavioral_guidelines .under_h3_wrap {
  text-align: center;
}
.page_vision .behavioral_guidelines .guidelines_list {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list {
    margin-top: 20px;
  }
}
.page_vision .behavioral_guidelines .guidelines_list li {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list li {
    margin-bottom: 10px;
  }
  .page_vision .behavioral_guidelines .guidelines_list li:last-of-type {
    margin-bottom: 0;
  }
}
.page_vision .behavioral_guidelines .guidelines_list li .title_wrap {
  border-bottom: 1px solid #E0E0E0;
  padding: 15px 20px;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list li .title_wrap {
    padding: 10px 0;
  }
}
.page_vision .behavioral_guidelines .guidelines_list li .title_wrap p {
  font-size: 30px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list li .title_wrap p {
    font-size: 18px;
  }
}
.page_vision .behavioral_guidelines .guidelines_list li .title_wrap p .mon_500 {
  color: #D01122;
  font-size: 16px;
  margin-left: 15px;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list li .title_wrap p .mon_500 {
    font-size: 14px;
    margin-left: 8px;
  }
}
.page_vision .behavioral_guidelines .guidelines_list li .txt_wrap {
  padding: 15px 20px;
}
.page_vision .behavioral_guidelines .guidelines_list li .txt_wrap p {
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .page_vision .behavioral_guidelines .guidelines_list li .txt_wrap {
    padding: 10px 0;
  }
}

.lang-en .page_vision .title_bg p {
  font-size: 22px !important;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 事業領域 */
/* ------------------------------------- */
.sec_underlay_kv_ver02 {
  margin-top: 60px;
}
.sec_underlay_kv_ver02 .kv_area_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-left: 5%;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap {
    display: block;
    margin-left: auto;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap {
  width: 40%;
}
@media screen and (max-width: 1199px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap {
    width: calc(50% - 40px);
  }
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap {
    width: 90%;
    margin: auto;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area h2 {
  font-size: clamp(24px, 3.71vw, 52px);
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area h2 {
    font-size: 24px;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area .en_title {
  font-size: clamp(14px, 1.29vw, 18px);
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area .en_title {
    font-size: 14px;
    margin-top: 6px;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area .treat {
  width: 6.79vw;
  max-width: 95px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .h2_area .treat {
    width: 50px;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .label {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 10px;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .label {
    margin: 20px auto 20px;
    justify-content: center;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .label li {
  padding: 3px 20px;
  color: #D01122;
  border: 1px solid #D01122;
  border-radius: 2px;
  font-size: clamp(12px, 1.14vw, 16px);
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .h2_wrap .label li {
    padding: 2px 10px;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .underlay_kv_wrap {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .sec_underlay_kv_ver02 .kv_area_wrap .underlay_kv_wrap {
    width: 95%;
    margin-left: 5%;
  }
}
.sec_underlay_kv_ver02 .kv_area_wrap .underlay_kv_wrap img {
  border-radius: 10px 0 0 10px;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}

.page_blockchain .sec_underlay_kv_ver02 .label {
  margin-left: 10%;
}
.page_blockchain .txt_storong {
  font-size: 40px;
  font-weight: 700;
  text-align: center;
  width: 90%;
  margin: 100px auto auto;
}
@media screen and (max-width: 1199px) {
  .page_blockchain .txt_storong {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  .page_blockchain .txt_storong {
    font-size: 18px;
    margin: 60px auto auto;
  }
}
.page_blockchain .business_list li:first-of-type {
  padding-top: 50px;
}
.page_blockchain .business_list li:nth-of-type(2) {
  display: block;
}
.page_blockchain .business_list li:nth-of-type(2) .txt_wrap {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page_blockchain .business_list li:nth-of-type(2) .txt_wrap .txt {
    margin-top: 10px;
  }
}
.page_blockchain .business_list li:nth-of-type(2) .img_wrap {
  width: 100%;
  max-width: 1000px;
  margin: 50px auto auto;
}
.page_blockchain .business_list li:nth-of-type(2) .img_wrap img {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 768px) {
  .page_blockchain .business_list li:nth-of-type(2) .img_wrap {
    margin: 20px auto auto;
  }
}
.page_blockchain .business_list h3 {
  font-size: 34px;
  letter-spacing: 0;
  margin-bottom: 40px;
}
.page_blockchain .business_list h3 .square {
  top: 10px;
}
@media screen and (max-width: 768px) {
  .page_blockchain .business_list h3 {
    font-size: 22px;
    margin-bottom: 20px;
  }
  .page_blockchain .business_list h3 .square {
    top: 6px;
  }
}

.page_mobile-application .kv_area_wrap .treat {
  left: clamp(10px, 2.86vw, 40px);
}
@media screen and (max-width: 768px) {
  .page_mobile-application .kv_area_wrap .treat {
    left: 10px;
  }
}

.page_infrastructure .kv_area_wrap .treat {
  left: clamp(-60px, -4.29vw, -20px);
}
@media screen and (max-width: 768px) {
  .page_infrastructure .kv_area_wrap .treat {
    left: -40px;
  }
}

.page_blockchain .kv_area_wrap .treat {
  left: clamp(-70px, -5vw, -40px);
}
@media screen and (max-width: 768px) {
  .page_blockchain .kv_area_wrap .treat {
    left: -30px;
  }
}

.sec_case_intro_txt {
  width: 95%;
  margin: 100px 0 auto auto;
  padding: 60px 0;
  background-color: #F4F4F4;
}
@media screen and (max-width: 768px) {
  .sec_case_intro_txt {
    width: 100%;
    margin: 20px 0 auto auto;
    padding: 40px 0;
  }
}
.sec_case_intro_txt .txt_wrap {
  width: 90%;
  margin: auto;
}
.sec_case_intro_txt .txt_wrap .title {
  border-bottom: #E0E0E0 solid 1px;
  font-size: 40px;
  padding: 0 30px 20px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .sec_case_intro_txt .txt_wrap .title {
    font-size: 20px;
    padding: 0 0 15px;
  }
}
.sec_case_intro_txt .txt_wrap .txt {
  padding: 20px 30px 0;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .sec_case_intro_txt .txt_wrap .txt {
    padding: 15px 0 0;
  }
}

.business_introduction .business_list li {
  display: flex;
  align-items: center;
  width: 90%;
  max-width: 1200px;
  margin: auto auto;
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li {
    display: block;
    margin: auto auto;
    padding-top: 60px;
  }
}
.business_introduction .business_list li .img_wrap {
  width: 50%;
  padding-right: 40px;
}
.business_introduction .business_list li .img_wrap img {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li .img_wrap {
    width: 100%;
    margin-top: 10px;
    padding-right: 0;
  }
}
.business_introduction .business_list li .img_wrap img {
  border-radius: 10px;
}
.business_introduction .business_list li:nth-child(even) {
  flex-direction: row-reverse;
}
.business_introduction .business_list li:nth-child(even) .img_wrap {
  padding-left: 40px;
  padding-right: 0;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li:nth-child(even) .img_wrap {
    padding-left: 0;
  }
}
.business_introduction .business_list li:nth-child(even) .img_wrap img {
  border-radius: 10px;
}
.business_introduction .business_list li .txt_wrap {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li .txt_wrap {
    width: 100%;
  }
}
.business_introduction .business_list li .txt_wrap .catch {
  font-size: 28px;
  color: #D01122;
  margin-top: 40px;
  position: relative;
  display: inline-block;
  padding-right: 90px;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li .txt_wrap .catch {
    font-size: 18px;
    padding-right: 0;
    margin-top: 20px;
  }
}
.business_introduction .business_list li .txt_wrap .catch::after {
  position: absolute;
  content: "";
  background-color: #D01122;
  height: 1px;
  width: 80px;
  right: 0;
  top: 50%;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li .txt_wrap .catch::after {
    display: none;
  }
}
.business_introduction .business_list li .txt_wrap .catch + .txt {
  margin-top: 20px;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .business_introduction .business_list li .txt_wrap .catch + .txt {
    margin-top: 20px;
  }
}
.business_introduction .business_list li .txt_wrap .btn_wrapper {
  margin-top: 20px;
}

.development_results {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto 120px;
}
@media screen and (max-width: 768px) {
  .development_results {
    margin: 60px auto 60px;
  }
}
.development_results .under_h3_wrap {
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .development_results .under_h3_wrap {
    margin-bottom: 20px;
  }
}
.development_results .list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2%;
  row-gap: 50px;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .development_results .list {
    display: block;
  }
}
.development_results .list > li {
  width: 32%;
}
@media screen and (max-width: 768px) {
  .development_results .list > li {
    width: 100%;
    margin-bottom: 20px;
  }
}
.development_results .list > li .img_wrap {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
  position: relative;
  overflow: hidden;
  border-radius: 7px;
  position: relative;
  z-index: 1;
}
.development_results .list > li .img_wrap .img_link {
  display: block;
  transition: 0.3s;
  width: 100%;
  padding-top: 61.842%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.development_results .list > li .img_wrap .img_link:hover {
  opacity: 0.6;
  transform: scale(1.1, 1.1);
}
.development_results .list > li .img_wrap .label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #D01122;
  color: #fff;
  width: 210px;
  height: 38px;
  font-size: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px 0 7px 0;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .development_results .list > li .img_wrap .label {
    height: 30px;
  }
}
.development_results .list > li .img_wrap .label:hover {
  color: #D01122;
  background-color: #fff;
}
.development_results .list > li .post_title {
  font-size: 24px;
  margin: 10px auto;
}
@media screen and (max-width: 768px) {
  .development_results .list > li .post_title {
    font-size: 18px;
  }
}
.development_results .list > li .tag_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  column-gap: 14px;
}
@media screen and (max-width: 768px) {
  .development_results .list > li .tag_list {
    column-gap: 8px;
  }
}
.development_results .list > li .tag_list li {
  color: #999999;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .development_results .list > li .tag_list li {
    font-size: 12px;
  }
}
.development_results .list > li .tag_list li span {
  color: #999999;
}
.development_results .no_post_txt {
  text-align: center;
  margin: 20px auto;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* ニュース */
/* ------------------------------------- */
/* ニュース一覧 */
/* ------------------------------------- */
.page_archive .sec_news_list {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto 120px;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list {
    margin: 40px auto 80px;
  }
}
.page_archive .sec_news_list .news_list {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list {
    margin-top: 20px;
  }
}
.page_archive .sec_news_list .news_list li {
  border-bottom: 1px solid #E0E0E0;
  align-items: center;
}
.page_archive .sec_news_list .news_list li a {
  display: flex;
  align-items: center;
  padding: 30px 60px 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a {
    display: block;
    padding: 15px 0;
  }
}
.page_archive .sec_news_list .news_list li a .date_label_wrap {
  display: flex;
  align-items: center;
}
.page_archive .sec_news_list .news_list li a .date {
  width: 105px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a .date {
    width: 85px;
    font-size: 14px;
  }
}
.page_archive .sec_news_list .news_list li a .label {
  color: #fff;
  background-color: #1B2021;
  width: 140px;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1px;
  height: 34px;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a .label {
    font-size: 14px;
    height: 24px;
    width: 120px;
  }
}
.page_archive .sec_news_list .news_list li a .title {
  width: calc(100% - 105px - 140px);
  margin-left: 30px;
  font-weight: 500;
  padding-right: 90px;
}
@media screen and (max-width: 1199px) {
  .page_archive .sec_news_list .news_list li a .title {
    padding-right: 4.17vw;
  }
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a .title {
    width: 100%;
    margin: 8px auto auto;
    padding-right: 30px;
    position: relative;
  }
}
.page_archive .sec_news_list .news_list li a .arrow {
  position: absolute;
  width: 25px;
  right: 60px;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a .arrow {
    width: 14px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
}
.page_archive .sec_news_list .news_list li a:hover {
  opacity: 0.6;
}
.page_archive .sec_news_list .news_list li a:hover .arrow {
  right: 50px;
}
@media screen and (max-width: 768px) {
  .page_archive .sec_news_list .news_list li a:hover .arrow {
    right: 0;
  }
}
.page_archive {
  /* ページャー */
}
.page_archive .wp-pagenavi {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_archive .wp-pagenavi {
    margin-top: 30px;
  }
}
.page_archive .wp-pagenavi .larger {
  background-color: #E0E0E0;
}
.page_archive .wp-pagenavi .current {
  color: #fff;
  background-color: #D01122;
}
.page_archive .wp-pagenavi a {
  color: #fff;
  background-color: #E0E0E0;
}
.page_archive .wp-pagenavi .extend {
  color: #1B2021;
  background-color: #fff;
  border: none;
}
.page_archive .wp-pagenavi a, .page_archive .wp-pagenavi span {
  width: 30px;
  height: 30px;
  padding: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 8px;
  border: none;
}
@media screen and (max-width: 768px) {
  .page_archive .wp-pagenavi a, .page_archive .wp-pagenavi span {
    width: 20px;
    height: 20px;
    font-size: 12px;
    margin-right: 5px;
  }
}
.page_archive .wp-pagenavi .last {
  margin-right: 0;
}
.page_archive .wp-pagenavi a {
  transition: 0.3s;
  border: none;
}
.page_archive .wp-pagenavi a:hover {
  color: #fff;
  background-color: #D01122;
}
.page_archive .wp-pagenavi a img {
  width: 10px;
  height: 10px;
}

/* 詳細 */
/* ------------------------------------- */
.page_single .sec_news_single {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto 120px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single {
    margin: 40px auto 80px;
  }
}
.page_single .sec_news_single .breadcrumbs {
  width: 100%;
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .breadcrumbs {
    padding: 0 0;
  }
}
.page_single .sec_news_single .date_label_wrap {
  display: flex;
  align-items: center;
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .date_label_wrap {
    padding: 0 0;
  }
}
.page_single .sec_news_single .date {
  width: 105px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .date {
    width: 85px;
    font-size: 14px;
  }
}
.page_single .sec_news_single .label {
  color: #fff;
  background-color: #1B2021;
  width: 140px;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1px;
  height: 34px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .label {
    font-size: 14px;
    height: 24px;
    width: 120px;
  }
}
.page_single .sec_news_single .title {
  width: 100%;
  font-size: 30px;
  font-weight: 700;
  padding: 20px 30px 30px;
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .title {
    font-size: 20px;
    width: 100%;
    padding: 20px 0 20px;
  }
}
.page_single .sec_news_single .content_area {
  padding: 0 30px;
  margin: 80px auto 120px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area {
    padding: 0 0;
    margin: 20px auto 60px;
  }
}
.page_single .sec_news_single .content_area img {
  width: auto;
  height: auto;
  margin: 20px auto;
}
.page_single .sec_news_single .content_area > p {
  margin: 10px auto;
  line-height: 1.8;
}
.page_single .sec_news_single .content_area > div {
  margin: 10px auto;
  line-height: 1.8;
}
.page_single .sec_news_single .content_area > span {
  margin: 10px auto;
  line-height: 1.8;
}
.page_single .sec_news_single .content_area a {
  transition: 0.3s;
  color: #D01122;
  border-bottom: 1px solid #D01122;
  line-height: 1.8;
}
.page_single .sec_news_single .content_area a:hover {
  opacity: 0.6;
}
.page_single .sec_news_single .content_area h1 {
  margin: 10px auto;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area h1 {
    font-size: 24px;
  }
}
.page_single .sec_news_single .content_area h2 {
  margin: 10px auto;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area h2 {
    font-size: 20px;
  }
}
.page_single .sec_news_single .content_area h3 {
  margin: 10px auto;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area h3 {
    font-size: 18px;
  }
}
.page_single .sec_news_single .content_area h4 {
  margin: 10px auto;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area h4 {
    font-size: 16px;
  }
}
.page_single .sec_news_single .content_area h5 {
  margin: 10px auto;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area h5 {
    font-size: 15px;
  }
}
.page_single .sec_news_single .content_area ul {
  padding: 0 20px;
  margin: 10px auto 20px;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area ul {
    padding: 0;
  }
}
.page_single .sec_news_single .content_area ul li {
  padding-left: 15px;
  position: relative;
  line-height: 1.8;
  margin-bottom: 5px;
}
.page_single .sec_news_single .content_area ul li::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  left: 0;
  top: 11px;
  border-radius: 50%;
  background-color: #1B2021;
}
.page_single .sec_news_single .content_area ul li ul {
  margin: 5px auto 10px;
  padding: 0 0 0 10px;
}
.page_single .sec_news_single .content_area ol {
  counter-reset: news-ol;
  padding-left: 0;
  margin: 10px auto 20px;
}
.page_single .sec_news_single .content_area ol li {
  counter-increment: news-ol;
  position: relative;
  padding-left: 1.8em;
  line-height: 1.8;
  margin-bottom: 5px;
  list-style: none;
}
.page_single .sec_news_single .content_area ol li::before {
  content: counter(news-ol) ".";
  position: absolute;
  left: 0;
  color: #1B2021;
  font-weight: 700;
}
.page_single .sec_news_single .content_area ol li ol {
  counter-reset: news-ol-nested;
  margin: 5px auto 10px;
  padding-left: 0;
}
.page_single .sec_news_single .content_area ol li ol li {
  counter-increment: news-ol-nested;
}
.page_single .sec_news_single .content_area ol li ol li::before {
  content: counter(news-ol-nested, lower-alpha) ".";
  font-weight: 500;
}
.page_single .sec_news_single .content_area blockquote {
  margin: 20px auto;
  padding: 20px 25px;
  background-color: #F4F4F4;
  border-left: 4px solid #D01122;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .page_single .sec_news_single .content_area blockquote {
    padding: 15px 20px;
  }
}
.page_single .sec_news_single .content_area blockquote p {
  margin: 0;
}
.page_single .sec_news_single .content_area blockquote p:not(:last-child) {
  margin-bottom: 10px;
}
.page_single .sec_news_single .content_area blockquote cite {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  color: #666;
  font-style: normal;
}
.page_single .sec_news_single .content_area blockquote cite::before {
  content: "— ";
}
.page_single .btn_wrapper {
  text-align: center;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* お問い合わせ 入力（共通） */
/* ------------------------------------- */
.page_contact .sec_contact_intro, .page_contact_confirm .sec_contact_intro, .page_contact_complete .sec_contact_intro {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto 50px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_contact_intro, .page_contact_confirm .sec_contact_intro, .page_contact_complete .sec_contact_intro {
    margin: 60px auto 40px;
  }
}
.page_contact .sec_contact_intro a, .page_contact_confirm .sec_contact_intro a, .page_contact_complete .sec_contact_intro a {
  transition: 0.3s;
}
.page_contact .sec_contact_intro a .border, .page_contact_confirm .sec_contact_intro a .border, .page_contact_complete .sec_contact_intro a .border {
  border-bottom: 1px solid #D01122;
  color: #D01122;
}
.page_contact .sec_contact_intro a img, .page_contact_confirm .sec_contact_intro a img, .page_contact_complete .sec_contact_intro a img {
  width: 15px;
  display: inline-block;
  margin: auto 2px;
}
.page_contact .sec_contact_intro a:hover, .page_contact_confirm .sec_contact_intro a:hover, .page_contact_complete .sec_contact_intro a:hover {
  opacity: 0.6;
}
.page_contact .sec_form, .page_contact_confirm .sec_form, .page_contact_complete .sec_form {
  width: 90%;
  max-width: 1000px;
  margin: auto auto 120px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form, .page_contact_confirm .sec_form, .page_contact_complete .sec_form {
    margin: auto auto 60px;
  }
}
.page_contact .sec_form .mw_wrapper .reference_mark, .page_contact_confirm .sec_form .mw_wrapper .reference_mark, .page_contact_complete .sec_form .mw_wrapper .reference_mark {
  color: #fff;
  background-color: #D01122;
  font-size: 12px;
  padding: 2px 10px;
  border-radius: 1px;
  margin-left: 10px;
}
.page_contact .sec_form .mw_wrapper .txt_error, .page_contact .sec_form .mw_wrapper .txt_yet, .page_contact_confirm .sec_form .mw_wrapper .txt_error, .page_contact_confirm .sec_form .mw_wrapper .txt_yet, .page_contact_complete .sec_form .mw_wrapper .txt_error, .page_contact_complete .sec_form .mw_wrapper .txt_yet {
  color: #D01122;
  text-align: center;
  margin: 30px auto;
  display: none;
}
.page_contact .sec_form .mw_wrapper .txt_error.active, .page_contact_confirm .sec_form .mw_wrapper .txt_error.active, .page_contact_complete .sec_form .mw_wrapper .txt_error.active {
  display: block;
}
.page_contact .sec_form .mw_wrapper .error, .page_contact_confirm .sec_form .mw_wrapper .error, .page_contact_complete .sec_form .mw_wrapper .error {
  color: #D01122;
  font-size: 12px;
}
.page_contact .sec_form .mw_wrapper dl, .page_contact_confirm .sec_form .mw_wrapper dl, .page_contact_complete .sec_form .mw_wrapper dl {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dl, .page_contact_confirm .sec_form .mw_wrapper dl, .page_contact_complete .sec_form .mw_wrapper dl {
    display: block;
    margin-bottom: 20px;
  }
}
.page_contact .sec_form .mw_wrapper dt, .page_contact_confirm .sec_form .mw_wrapper dt, .page_contact_complete .sec_form .mw_wrapper dt {
  width: 270px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dt, .page_contact_confirm .sec_form .mw_wrapper dt, .page_contact_complete .sec_form .mw_wrapper dt {
    width: 100%;
  }
}
.page_contact .sec_form .mw_wrapper dt p, .page_contact_confirm .sec_form .mw_wrapper dt p, .page_contact_complete .sec_form .mw_wrapper dt p {
  font-size: 16px;
  text-align: right;
  padding-top: 10px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dt p, .page_contact_confirm .sec_form .mw_wrapper dt p, .page_contact_complete .sec_form .mw_wrapper dt p {
    text-align: left;
    margin-bottom: 10px;
  }
}
.page_contact .sec_form .mw_wrapper dd, .page_contact_confirm .sec_form .mw_wrapper dd, .page_contact_complete .sec_form .mw_wrapper dd {
  width: calc(100% - 300px);
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dd, .page_contact_confirm .sec_form .mw_wrapper dd, .page_contact_complete .sec_form .mw_wrapper dd {
    width: 100%;
  }
}
.page_contact .sec_form .mw_wrapper dd input, .page_contact .sec_form .mw_wrapper dd select, .page_contact .sec_form .mw_wrapper dd textarea, .page_contact_confirm .sec_form .mw_wrapper dd input, .page_contact_confirm .sec_form .mw_wrapper dd select, .page_contact_confirm .sec_form .mw_wrapper dd textarea, .page_contact_complete .sec_form .mw_wrapper dd input, .page_contact_complete .sec_form .mw_wrapper dd select, .page_contact_complete .sec_form .mw_wrapper dd textarea {
  background-color: #F4F4F4;
  border-radius: 1px;
  width: 100%;
  padding: 10px 20px;
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dd input, .page_contact .sec_form .mw_wrapper dd select, .page_contact .sec_form .mw_wrapper dd textarea, .page_contact_confirm .sec_form .mw_wrapper dd input, .page_contact_confirm .sec_form .mw_wrapper dd select, .page_contact_confirm .sec_form .mw_wrapper dd textarea, .page_contact_complete .sec_form .mw_wrapper dd input, .page_contact_complete .sec_form .mw_wrapper dd select, .page_contact_complete .sec_form .mw_wrapper dd textarea {
    padding: 10px 10px;
  }
}
.page_contact .sec_form .mw_wrapper dd input::placeholder, .page_contact_confirm .sec_form .mw_wrapper dd input::placeholder, .page_contact_complete .sec_form .mw_wrapper dd input::placeholder {
  color: #999999;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dd input::placeholder, .page_contact_confirm .sec_form .mw_wrapper dd input::placeholder, .page_contact_complete .sec_form .mw_wrapper dd input::placeholder {
    font-size: 15px;
  }
}
.page_contact .sec_form .mw_wrapper .inquiry_type dd, .page_contact_confirm .sec_form .mw_wrapper .inquiry_type dd, .page_contact_complete .sec_form .mw_wrapper .inquiry_type dd {
  position: relative;
}
.page_contact .sec_form .mw_wrapper .inquiry_type dd select, .page_contact_confirm .sec_form .mw_wrapper .inquiry_type dd select, .page_contact_complete .sec_form .mw_wrapper .inquiry_type dd select {
  padding-right: 30px;
}
.page_contact .sec_form .mw_wrapper .inquiry_type dd .arrow, .page_contact_confirm .sec_form .mw_wrapper .inquiry_type dd .arrow, .page_contact_complete .sec_form .mw_wrapper .inquiry_type dd .arrow {
  position: absolute;
  top: 14px;
  right: 10px;
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .inquiry_type dd .arrow, .page_contact_confirm .sec_form .mw_wrapper .inquiry_type dd .arrow, .page_contact_complete .sec_form .mw_wrapper .inquiry_type dd .arrow {
    top: 16px;
  }
}
.page_contact .sec_form .mw_wrapper .post_code .p-country-name, .page_contact_confirm .sec_form .mw_wrapper .post_code .p-country-name, .page_contact_complete .sec_form .mw_wrapper .post_code .p-country-name {
  display: none;
}
.page_contact .sec_form .mw_wrapper .post_code dd, .page_contact_confirm .sec_form .mw_wrapper .post_code dd, .page_contact_complete .sec_form .mw_wrapper .post_code dd {
  display: flex;
  align-items: center;
  position: relative;
}
.page_contact .sec_form .mw_wrapper .post_code dd .error, .page_contact_confirm .sec_form .mw_wrapper .post_code dd .error, .page_contact_complete .sec_form .mw_wrapper .post_code dd .error {
  position: absolute;
  bottom: -20px;
}
.page_contact .sec_form .mw_wrapper .post_code dd .error:nth-child(2), .page_contact_confirm .sec_form .mw_wrapper .post_code dd .error:nth-child(2), .page_contact_complete .sec_form .mw_wrapper .post_code dd .error:nth-child(2) {
  opacity: 0;
}
.page_contact .sec_form .mw_wrapper .post_code dd input, .page_contact_confirm .sec_form .mw_wrapper .post_code dd input, .page_contact_complete .sec_form .mw_wrapper .post_code dd input {
  width: 110px;
}
.page_contact .sec_form .mw_wrapper .post_code dd .border, .page_contact_confirm .sec_form .mw_wrapper .post_code dd .border, .page_contact_complete .sec_form .mw_wrapper .post_code dd .border {
  height: 1px;
  width: 6px;
  background-color: #1B2021;
  margin: auto 6px;
}
.page_contact .sec_form .check, .page_contact_confirm .sec_form .check, .page_contact_complete .sec_form .check {
  align-items: center;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check, .page_contact_confirm .sec_form .check, .page_contact_complete .sec_form .check {
    display: block;
  }
}
.page_contact .sec_form .check .link, .page_contact_confirm .sec_form .check .link, .page_contact_complete .sec_form .check .link {
  transition: 0.3s;
  font-size: 16px;
}
.page_contact .sec_form .check .link .border, .page_contact_confirm .sec_form .check .link .border, .page_contact_complete .sec_form .check .link .border {
  border-bottom: 1px solid #D01122;
  color: #D01122;
}
.page_contact .sec_form .check .link .blank, .page_contact_confirm .sec_form .check .link .blank, .page_contact_complete .sec_form .check .link .blank {
  width: 15px;
  display: inline-block;
  margin: auto 2px;
}
.page_contact .sec_form .check .link:hover, .page_contact_confirm .sec_form .check .link:hover, .page_contact_complete .sec_form .check .link:hover {
  opacity: 0.6;
}
.page_contact .sec_form .check dt, .page_contact_confirm .sec_form .check dt, .page_contact_complete .sec_form .check dt {
  display: flex;
  align-items: center;
  justify-content: end;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check dt, .page_contact_confirm .sec_form .check dt, .page_contact_complete .sec_form .check dt {
    justify-content: center;
  }
}
.page_contact .sec_form .check dt .reference_mark, .page_contact_confirm .sec_form .check dt .reference_mark, .page_contact_complete .sec_form .check dt .reference_mark {
  height: 21.5px;
}
.page_contact .sec_form .check dt .txt, .page_contact_confirm .sec_form .check dt .txt, .page_contact_complete .sec_form .check dt .txt {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check dd, .page_contact_confirm .sec_form .check dd, .page_contact_complete .sec_form .check dd {
    text-align: center;
  }
}
.page_contact .sec_form .check input[type=checkbox].check, .page_contact_confirm .sec_form .check input[type=checkbox].check, .page_contact_complete .sec_form .check input[type=checkbox].check {
  display: none;
}
.page_contact .sec_form .check .privacy_wrapper label, .page_contact_confirm .sec_form .check .privacy_wrapper label, .page_contact_complete .sec_form .check .privacy_wrapper label {
  display: inline-block;
}
.page_contact .sec_form .check .check + span, .page_contact_confirm .sec_form .check .check + span, .page_contact_complete .sec_form .check .check + span {
  padding-left: 28px;
  display: inline-block;
  position: relative;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check .check + span, .page_contact_confirm .sec_form .check .check + span, .page_contact_complete .sec_form .check .check + span {
    padding-left: 24px;
    padding-top: 0;
  }
}
.page_contact .sec_form .check .check + span::after,
.page_contact .sec_form .check .check + span::before, .page_contact_confirm .sec_form .check .check + span::after,
.page_contact_confirm .sec_form .check .check + span::before, .page_contact_complete .sec_form .check .check + span::after,
.page_contact_complete .sec_form .check .check + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
}
.page_contact .sec_form .check .check + span::before, .page_contact_confirm .sec_form .check .check + span::before, .page_contact_complete .sec_form .check .check + span::before {
  background-color: #F4F4F4;
  border-radius: 1;
  left: 0;
  height: 18px;
  width: 18px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check .check + span::before, .page_contact_confirm .sec_form .check .check + span::before, .page_contact_complete .sec_form .check .check + span::before {
    height: 14px;
    width: 14px;
  }
}
.page_contact .sec_form .check .check + span::after, .page_contact_confirm .sec_form .check .check + span::after, .page_contact_complete .sec_form .check .check + span::after {
  border: none;
  border-right: 3px solid #D01122;
  border-bottom: 3px solid #D01122;
  height: 10px;
  left: 6px;
  opacity: 0;
  top: 2px;
  transform: rotate(45deg);
  width: 5px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .check .check + span::after, .page_contact_confirm .sec_form .check .check + span::after, .page_contact_complete .sec_form .check .check + span::after {
    height: 8px;
    left: 5px;
    opacity: 0;
    top: 1px;
    width: 3px;
  }
}
.page_contact .sec_form .check .check:checked + span::after, .page_contact_confirm .sec_form .check .check:checked + span::after, .page_contact_complete .sec_form .check .check:checked + span::after {
  opacity: 1;
}
.page_contact .sec_form .check .error, .page_contact_confirm .sec_form .check .error, .page_contact_complete .sec_form .check .error {
  text-align: left;
}
.page_contact .sec_form .check .open-area, .page_contact_confirm .sec_form .check .open-area, .page_contact_complete .sec_form .check .open-area {
  display: none;
}
.page_contact .btn_box_wrap, .page_contact_confirm .btn_box_wrap, .page_contact_complete .btn_box_wrap {
  display: flex;
  justify-content: center;
  column-gap: 20px;
  flex-direction: row-reverse;
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .page_contact .btn_box_wrap, .page_contact_confirm .btn_box_wrap, .page_contact_complete .btn_box_wrap {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
}
.page_contact .btn_box, .page_contact_confirm .btn_box, .page_contact_complete .btn_box {
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .page_contact .btn_box, .page_contact_confirm .btn_box, .page_contact_complete .btn_box {
    width: 100%;
    max-width: 400px;
    margin: auto;
  }
}
.page_contact .btn_box .circle, .page_contact_confirm .btn_box .circle, .page_contact_complete .btn_box .circle {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 150px;
  color: #fff;
  background: #D01122;
  box-shadow: 4px 4px 8px #912E2E, -4px -4px 8px #DB2E3E;
  transition: 0.3s;
}
.page_contact .btn_box .circle .arrow, .page_contact_confirm .btn_box .circle .arrow, .page_contact_complete .btn_box .circle .arrow {
  width: 14px;
}
.page_contact .btn_box:hover .btn, .page_contact_confirm .btn_box:hover .btn, .page_contact_complete .btn_box:hover .btn {
  background-color: #A8101C;
}
.page_contact .btn_box:hover .circle, .page_contact_confirm .btn_box:hover .circle, .page_contact_complete .btn_box:hover .circle {
  box-shadow: inset 4px 4px 8px #8f0e18, inset -4px -4px 8px #c11220;
  background-color: #A8101C;
}
.page_contact .btn, .page_contact_confirm .btn, .page_contact_complete .btn {
  padding: 0;
  width: 250px;
  height: 60px;
  background-color: #D01122;
  color: #fff;
  display: inline-flex;
  justify-content: start;
  align-items: center;
  border-radius: 30px;
  position: relative;
  color: #fff;
  font-size: 14px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align: left;
  padding-left: 30px;
}
@media screen and (max-width: 768px) {
  .page_contact .btn, .page_contact_confirm .btn, .page_contact_complete .btn {
    width: 100%;
    max-width: 400px;
  }
}
.page_contact .btn_back_wrap, .page_contact_confirm .btn_back_wrap, .page_contact_complete .btn_back_wrap {
  display: none;
}
.page_contact .btn_back_wrap .btn, .page_contact_confirm .btn_back_wrap .btn, .page_contact_complete .btn_back_wrap .btn {
  text-align: right;
  padding-left: 0;
  padding-right: 30px;
}
.page_contact .btn_back_wrap .circle, .page_contact_confirm .btn_back_wrap .circle, .page_contact_complete .btn_back_wrap .circle {
  right: auto;
  left: 12px;
}
.page_contact .btn_back_wrap .circle .arrow, .page_contact_confirm .btn_back_wrap .circle .arrow, .page_contact_complete .btn_back_wrap .circle .arrow {
  transform: rotate(180deg);
}
@media screen and (max-width: 768px) {
  .page_contact .btn_back_wrap, .page_contact_confirm .btn_back_wrap, .page_contact_complete .btn_back_wrap {
    margin-top: 20px;
  }
}
.page_contact .sec_top_contact, .page_contact_confirm .sec_top_contact, .page_contact_complete .sec_top_contact {
  display: none;
}

/* ------------------------------------- */
/* お問い合わせ 確認 */
/* ------------------------------------- */
.page_contact_confirm .sec_form .mw_wrapper .txt_yet {
  display: block;
}
.page_contact_confirm .sec_form .mw_wrapper dl dt {
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_contact_confirm .sec_form .mw_wrapper dl dt {
    padding-bottom: 0;
    margin-bottom: 15px;
  }
}
.page_contact_confirm .sec_form .mw_wrapper dl dt p {
  padding-top: 0;
}
.page_contact_confirm .sec_form .mw_wrapper dl dt .reference_mark {
  display: none;
}
.page_contact_confirm .sec_form .mw_wrapper dl dd {
  border-bottom: 1px solid #999999;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_contact_confirm .sec_form .mw_wrapper dl dd {
    padding-bottom: 15px;
  }
}
.page_contact_confirm .sec_form .mw_wrapper .inquiry_type .arrow {
  display: none;
}
.page_contact_confirm .sec_form .mw_wrapper .confirm_hide {
  display: none;
}
.page_contact_confirm .sec_form .mw_wrapper .btn_back_wrap {
  display: block;
}

/* ------------------------------------- */
/* お問い合わせ 完了 */
/* ------------------------------------- */
.page_contact_complete .complete_txt {
  text-align: center;
  margin: 60px auto 40px;
}
.page_contact_complete .btn_wrapper {
  text-align: center;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* お問い合わせ 入力（共通） */
/* ------------------------------------- */
.page_sitemap .h2_wrap {
  border-bottom: 1px solid #E0E0E0;
  width: 90%;
  max-width: 1200px;
  padding-bottom: 40px;
  margin: auto;
}
.page_sitemap .sec_sitemap_list {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto 120px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list {
    margin: 60px auto;
  }
}
.page_sitemap .sec_sitemap_list ul {
  border-top: 1px solid #E0E0E0;
}
.page_sitemap .sec_sitemap_list ul li {
  border-bottom: 1px solid #E0E0E0;
}
.page_sitemap .sec_sitemap_list ul li a {
  position: relative;
}
.page_sitemap .sec_sitemap_list ul li a .arrow, .page_sitemap .sec_sitemap_list ul li a .blank {
  position: absolute;
  width: 25px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li a .arrow, .page_sitemap .sec_sitemap_list ul li a .blank {
    width: 15px;
  }
}
.page_sitemap .sec_sitemap_list ul li a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li a:hover {
    opacity: 1;
  }
}
.page_sitemap .sec_sitemap_list ul li a:hover .arrow {
  right: -40px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li a:hover .arrow {
    right: 10px;
  }
}
.page_sitemap .sec_sitemap_list ul li .parent {
  font-size: 30px;
  padding: 20px 30px;
  display: block;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .parent {
    font-size: 20px;
    padding: 15px 25px 15px 0;
  }
}
.page_sitemap .sec_sitemap_list ul li .parent .arrow, .page_sitemap .sec_sitemap_list ul li .parent .blank {
  right: 30px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .parent .arrow, .page_sitemap .sec_sitemap_list ul li .parent .blank {
    right: 10px;
  }
}
.page_sitemap .sec_sitemap_list ul li .parent:hover .arrow {
  right: 20px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .parent:hover .arrow {
    right: 10px;
  }
}
.page_sitemap .sec_sitemap_list ul li .child_wrap {
  padding: 0 60px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .child_wrap {
    padding: 0 10px;
  }
}
.page_sitemap .sec_sitemap_list ul li .child {
  font-size: 24px;
  padding: 10px 0;
  display: block;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .child {
    font-size: 16px;
  }
}
.page_sitemap .sec_sitemap_list ul li .child .arrow {
  right: -30px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .child .arrow {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .child:hover .arrow {
    right: 0;
  }
}
.page_sitemap .sec_sitemap_list ul li .grandchild_wrap {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1%;
  row-gap: 15px;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .grandchild_wrap {
    display: block;
    margin-bottom: 0;
  }
}
.page_sitemap .sec_sitemap_list ul li .grandchild_wrap .grandchild {
  width: 32%;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li .grandchild_wrap .grandchild {
    font-size: 14px;
    width: 100%;
    display: inline-block;
    padding: 5px 0;
  }
}
.page_sitemap .sec_sitemap_list ul li:first-of-type {
  padding-bottom: 20px;
}
.page_sitemap .sec_sitemap_list ul li:first-of-type .parent {
  padding: 20px 30px 10px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li:first-of-type .parent {
    padding: 15px 25px 10px 0;
  }
}
.page_sitemap .sec_sitemap_list ul li:nth-of-type(3) {
  padding-bottom: 20px;
}
.page_sitemap .sec_sitemap_list ul li:nth-of-type(3) .parent {
  padding: 20px 30px 10px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap_list ul li:nth-of-type(3) .parent {
    padding: 15px 25px 10px 0;
  }
}
.page_sitemap .sec_top_contact {
  display: none;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 個人情報の取り扱いについて privacy */
/* ------------------------------------- */
.page_privacy .sec_underlay_kv .h2_area h2, .page_privacy_policy .sec_underlay_kv .h2_area h2, .page_service .sec_underlay_kv .h2_area h2 {
  font-size: 40px;
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_underlay_kv .h2_area h2, .page_privacy_policy .sec_underlay_kv .h2_area h2, .page_service .sec_underlay_kv .h2_area h2 {
    font-size: 18px;
  }
}
.page_privacy .link, .page_privacy_policy .link, .page_service .link {
  display: flex;
}
.page_privacy .link .link_txt, .page_privacy_policy .link .link_txt, .page_service .link .link_txt {
  border-bottom: 1px solid #D01122;
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_privacy .link .link_txt, .page_privacy_policy .link .link_txt, .page_service .link .link_txt {
    font-size: 12px;
  }
}
.page_privacy .link .blank_red, .page_privacy_policy .link .blank_red, .page_service .link .blank_red {
  width: 15px;
  transition: 0.3s;
  opacity: 1;
  margin-left: 5px;
}
@media screen and (max-width: 768px) {
  .page_privacy .link .blank_red, .page_privacy_policy .link .blank_red, .page_service .link .blank_red {
    margin-left: 3px;
    width: 12px;
  }
}
.page_privacy .link:hover, .page_privacy_policy .link:hover, .page_service .link:hover {
  opacity: 0.6;
}
.page_privacy .link:hover .blank_red, .page_privacy_policy .link:hover .blank_red, .page_service .link:hover .blank_red {
  opacity: 0.6;
}
.page_privacy .txt_right, .page_privacy_policy .txt_right, .page_service .txt_right {
  text-align: right;
  margin-top: 20px;
}
.page_privacy h3, .page_privacy_policy h3, .page_service h3 {
  margin-top: 60px;
  display: inline-block;
  font-size: 24px;
  position: relative;
  padding-left: 30px;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .page_privacy h3, .page_privacy_policy h3, .page_service h3 {
    line-height: 1.25;
    font-size: 18px;
    padding-left: 24px;
  }
}
.page_privacy h3 .square, .page_privacy_policy h3 .square, .page_service h3 .square {
  position: absolute;
  top: 7px;
  left: 0;
  width: 18px;
  height: 18px;
}
@media screen and (max-width: 768px) {
  .page_privacy h3 .square, .page_privacy_policy h3 .square, .page_service h3 .square {
    top: 6px;
    width: 14px;
    height: 14px;
  }
}
.page_privacy hr, .page_privacy_policy hr, .page_service hr {
  margin: 40px auto;
  height: 1px;
  background-color: #E0E0E0;
  border: none;
}
.page_privacy .sec_privacy_intro_txt, .page_privacy_policy .sec_privacy_intro_txt, .page_service .sec_privacy_intro_txt {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto 60px;
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_privacy_intro_txt, .page_privacy_policy .sec_privacy_intro_txt, .page_service .sec_privacy_intro_txt {
    margin: 40px auto 0;
  }
}
.page_privacy .sec_privacy_txt, .page_privacy_policy .sec_privacy_txt, .page_service .sec_privacy_txt {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto 100px;
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_privacy_txt, .page_privacy_policy .sec_privacy_txt, .page_service .sec_privacy_txt {
    margin: 0 auto 60px;
  }
}
.page_privacy .sec_privacy_txt .under_h3_wrap, .page_privacy_policy .sec_privacy_txt .under_h3_wrap, .page_service .sec_privacy_txt .under_h3_wrap {
  margin-bottom: 20px;
}
.page_privacy .sec_privacy_txt p, .page_privacy_policy .sec_privacy_txt p, .page_service .sec_privacy_txt p {
  margin-bottom: 20px;
}
.page_privacy .sec_privacy_txt .strong, .page_privacy_policy .sec_privacy_txt .strong, .page_service .sec_privacy_txt .strong {
  font-size: 18px;
  margin-bottom: 10px;
  font-weight: 700;
}
.page_privacy .sec_privacy_txt ul, .page_privacy_policy .sec_privacy_txt ul, .page_service .sec_privacy_txt ul {
  padding: 0 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_privacy_txt ul, .page_privacy_policy .sec_privacy_txt ul, .page_service .sec_privacy_txt ul {
    padding: 0;
  }
}
.page_privacy .sec_privacy_txt ul li, .page_privacy_policy .sec_privacy_txt ul li, .page_service .sec_privacy_txt ul li {
  padding-left: 15px;
  position: relative;
}
.page_privacy .sec_privacy_txt ul li::before, .page_privacy_policy .sec_privacy_txt ul li::before, .page_service .sec_privacy_txt ul li::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: 0;
  top: 8px;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 9px solid #D01122;
  border-right: 0;
}
.page_privacy .akawaku, .page_privacy_policy .akawaku, .page_service .akawaku {
  background-color: #F4F4F4;
  padding: 30px;
  width: 90%;
  margin: 40px auto 0;
}
@media screen and (max-width: 768px) {
  .page_privacy .akawaku, .page_privacy_policy .akawaku, .page_service .akawaku {
    width: 100%;
    padding: 20px;
  }
}
.page_privacy .akawaku .link, .page_privacy_policy .akawaku .link, .page_service .akawaku .link {
  display: block;
  margin: 10px auto 0;
}
.page_privacy .akawaku .link .link_txt, .page_privacy_policy .akawaku .link .link_txt, .page_service .akawaku .link .link_txt {
  border-bottom: 1px solid #D01122;
  color: #D01122;
}
@media screen and (max-width: 768px) {
  .page_privacy .akawaku .link .link_txt, .page_privacy_policy .akawaku .link .link_txt, .page_service .akawaku .link .link_txt {
    font-size: 16px;
  }
}

/* ------------------------------------- */
/* 個人情報保護方針 privacypolicy */
/* ------------------------------------- */
.page_privacy_policy h3 {
  margin-top: 0;
}
.page_privacy_policy .under_h3_wrap {
  margin-bottom: 20px;
}
.page_privacy_policy p {
  margin-bottom: 20px;
}
.page_privacy_policy .strong {
  font-size: 18px;
  margin-bottom: 10px;
  font-weight: 700;
}
.page_privacy_policy .sec_privacy_policy_intro_txt {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto 60px;
}
.page_privacy_policy .sec_privacy_policy_txt {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto 60px;
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex {
  display: flex;
  column-gap: 40px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex {
    display: block;
  }
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .mark {
  width: 140px;
  height: 100%;
  padding-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .mark {
    padding-top: 0;
    margin: auto;
  }
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .table dl {
  display: flex;
  border-bottom: 1px solid #DFDFDF;
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .table dl:last-of-type {
  border-bottom: none;
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .table dt {
  background-color: #F4F4F4;
  width: 100px;
  padding: 10px;
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .table dd {
  padding: 10px;
  width: calc(100% - 100px);
}
.page_privacy_policy .sec_privacy_policy_txt .chapter02 .flex .table .contact_txt {
  margin-top: 20px;
  display: inline-block;
}

/* ------------------------------------- */
/* サービス利用規約について service */
/* ------------------------------------- */
.page_service .under_h3_wrap {
  margin-bottom: 20px;
}
.page_service .sec_service_txt {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto 100px;
}
@media screen and (max-width: 768px) {
  .page_service .sec_service_txt {
    margin: 60px auto 60px;
  }
}
.page_service .txt {
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_service .txt {
    padding: 0 0;
  }
}
.page_service .txt_right {
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_service .txt_right {
    padding: 0 0;
  }
}
.page_service .num_list {
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_service .num_list {
    padding: 0 0;
  }
}
.page_service .num_list li {
  margin: 20px auto;
  text-indent: -0.75em;
  padding-left: 0.75em;
}
@media screen and (max-width: 768px) {
  .page_service .num_list li {
    margin: 10px auto;
  }
}
.page_service .num_list li .num {
  text-indent: -1.25em;
  padding-left: 1.25em;
  margin: 10px auto auto;
  padding: 0 60px;
}
.page_service .num_list li .num:first-of-type {
  margin: 20px auto auto;
}
.page_service .num_list li .num:last-of-type {
  margin: 10px auto 30px;
}
@media screen and (max-width: 768px) {
  .page_service .num_list li .num {
    padding: 0 20px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 開発実績一覧 */
/* ------------------------------------- */
.page_case .no_post_txt, .page_case_category .no_post_txt {
  text-align: center;
}
.page_case .flex, .page_case_category .flex {
  display: flex;
  width: 90%;
  max-width: 1400px;
  margin: 100px auto;
  column-gap: 60px;
}
@media screen and (max-width: 1199px) {
  .page_case .flex, .page_case_category .flex {
    column-gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .page_case .flex, .page_case_category .flex {
    display: block;
    margin: 60px auto;
  }
}
.page_case .sec_results_card_list, .page_case_category .sec_results_card_list {
  width: calc(100% - 390px);
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list, .page_case_category .sec_results_card_list {
    width: 100%;
  }
}
.page_case .sec_results_card_list .list, .page_case_category .sec_results_card_list .list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 40px;
  row-gap: 40px;
  margin-bottom: 50px;
}
@media screen and (max-width: 1199px) {
  .page_case .sec_results_card_list .list, .page_case_category .sec_results_card_list .list {
    display: block;
  }
}
.page_case .sec_results_card_list .list > li, .page_case_category .sec_results_card_list .list > li {
  width: calc(50% - 20px);
}
@media screen and (max-width: 1199px) {
  .page_case .sec_results_card_list .list > li, .page_case_category .sec_results_card_list .list > li {
    width: 100%;
    max-width: 455px;
    margin: 0 auto 20px;
  }
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list .list > li, .page_case_category .sec_results_card_list .list > li {
    width: 100%;
    margin-bottom: 20px;
  }
}
.page_case .sec_results_card_list .list > li .img_wrap, .page_case_category .sec_results_card_list .list > li .img_wrap {
  position: relative;
  overflow: hidden;
  border-radius: 7px;
  position: relative;
  z-index: 1;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
.page_case .sec_results_card_list .list > li .img_wrap .img_link, .page_case_category .sec_results_card_list .list > li .img_wrap .img_link {
  display: block;
  transition: 0.3s;
  width: 100%;
  padding-top: 61.842%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.page_case .sec_results_card_list .list > li .img_wrap .img_link:hover, .page_case_category .sec_results_card_list .list > li .img_wrap .img_link:hover {
  opacity: 0.6;
  transform: scale(1.1, 1.1);
}
.page_case .sec_results_card_list .list > li .img_wrap .label, .page_case_category .sec_results_card_list .list > li .img_wrap .label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #D01122;
  color: #fff;
  width: 210px;
  height: 38px;
  font-size: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px 0 7px 0;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list .list > li .img_wrap .label, .page_case_category .sec_results_card_list .list > li .img_wrap .label {
    height: 30px;
  }
}
.page_case .sec_results_card_list .list > li .img_wrap .label:hover, .page_case_category .sec_results_card_list .list > li .img_wrap .label:hover {
  color: #D01122;
  background-color: #fff;
}
.page_case .sec_results_card_list .list > li .post_title, .page_case_category .sec_results_card_list .list > li .post_title {
  font-size: 24px;
  margin: 10px auto;
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list .list > li .post_title, .page_case_category .sec_results_card_list .list > li .post_title {
    font-size: 18px;
  }
}
.page_case .sec_results_card_list .list > li .tag_list, .page_case_category .sec_results_card_list .list > li .tag_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  column-gap: 14px;
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list .list > li .tag_list, .page_case_category .sec_results_card_list .list > li .tag_list {
    column-gap: 8px;
  }
}
.page_case .sec_results_card_list .list > li .tag_list li, .page_case_category .sec_results_card_list .list > li .tag_list li {
  color: #999999;
  font-weight: 400;
}
.page_case .sec_results_card_list .list > li .tag_list li span, .page_case_category .sec_results_card_list .list > li .tag_list li span {
  color: #999999;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .page_case .sec_results_card_list .list > li .tag_list li, .page_case_category .sec_results_card_list .list > li .tag_list li {
    font-size: 12px;
  }
}
.page_case .sec_case_cat_list, .page_case_category .sec_case_cat_list {
  width: 390px;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .page_case .sec_case_cat_list, .page_case_category .sec_case_cat_list {
    width: 300px;
  }
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list, .page_case_category .sec_case_cat_list {
    width: 100%;
    max-width: 390px;
  }
}
.page_case .sec_case_cat_list h3, .page_case_category .sec_case_cat_list h3 {
  font-size: 26px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list h3, .page_case_category .sec_case_cat_list h3 {
    font-size: 18px;
  }
}
.page_case .sec_case_cat_list ul, .page_case_category .sec_case_cat_list ul {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list ul, .page_case_category .sec_case_cat_list ul {
    margin-top: 10px;
  }
}
.page_case .sec_case_cat_list ul li, .page_case_category .sec_case_cat_list ul li {
  border-bottom: 1px solid #E0E0E0;
}
.page_case .sec_case_cat_list ul li a, .page_case_category .sec_case_cat_list ul li a {
  transition: 0.3s;
  padding: 15px 30px;
  display: block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list ul li a, .page_case_category .sec_case_cat_list ul li a {
    padding: 10px 10px;
  }
}
.page_case .sec_case_cat_list ul li a .arrow, .page_case_category .sec_case_cat_list ul li a .arrow {
  position: absolute;
  width: 20px;
  right: 0;
  top: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list ul li a .arrow, .page_case_category .sec_case_cat_list ul li a .arrow {
    width: 14px;
  }
}
.page_case .sec_case_cat_list ul li a:hover, .page_case_category .sec_case_cat_list ul li a:hover {
  opacity: 0.6;
}
.page_case .sec_case_cat_list ul li a:hover .arrow, .page_case_category .sec_case_cat_list ul li a:hover .arrow {
  right: -10px;
}
@media screen and (max-width: 768px) {
  .page_case .sec_case_cat_list ul li a:hover, .page_case_category .sec_case_cat_list ul li a:hover {
    opacity: 1;
  }
  .page_case .sec_case_cat_list ul li a:hover .arrow, .page_case_category .sec_case_cat_list ul li a:hover .arrow {
    right: 0;
  }
}
.page_case, .page_case_category {
  /* ページャー */
}
.page_case .wp-pagenavi, .page_case_category .wp-pagenavi {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_case .wp-pagenavi, .page_case_category .wp-pagenavi {
    margin-top: 30px;
  }
}
.page_case .wp-pagenavi .larger, .page_case_category .wp-pagenavi .larger {
  background-color: #E0E0E0;
}
.page_case .wp-pagenavi .current, .page_case_category .wp-pagenavi .current {
  color: #fff;
  background-color: #D01122;
}
.page_case .wp-pagenavi a, .page_case_category .wp-pagenavi a {
  color: #fff;
  background-color: #E0E0E0;
}
.page_case .wp-pagenavi .extend, .page_case_category .wp-pagenavi .extend {
  color: #1B2021;
  background-color: #fff;
  border: none;
}
.page_case .wp-pagenavi a, .page_case .wp-pagenavi span, .page_case_category .wp-pagenavi a, .page_case_category .wp-pagenavi span {
  width: 30px;
  height: 30px;
  padding: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 8px;
  border: none;
}
@media screen and (max-width: 768px) {
  .page_case .wp-pagenavi a, .page_case .wp-pagenavi span, .page_case_category .wp-pagenavi a, .page_case_category .wp-pagenavi span {
    width: 20px;
    height: 20px;
    font-size: 12px;
    margin-right: 5px;
  }
}
.page_case .wp-pagenavi .last, .page_case_category .wp-pagenavi .last {
  margin-right: 0;
}
.page_case .wp-pagenavi a, .page_case_category .wp-pagenavi a {
  transition: 0.3s;
  border: none;
}
.page_case .wp-pagenavi a:hover, .page_case_category .wp-pagenavi a:hover {
  color: #fff;
  background-color: #D01122;
}
.page_case .wp-pagenavi a img, .page_case_category .wp-pagenavi a img {
  width: 10px;
  height: 10px;
}
.page_case .wp-pagenavi_wrap, .page_case_category .wp-pagenavi_wrap {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .page_case .wp-pagenavi_wrap, .page_case_category .wp-pagenavi_wrap {
    margin-bottom: 60px;
  }
}

/* ------------------------------------- */
/* 開発実績 カテゴリー 一覧 */
/* ------------------------------------- */
.page_case_category .sec_underlay_kv h2 {
  line-height: 1;
}
.page_case_category .sec_underlay_kv .txt_wrap {
  position: relative;
}
.page_case_category .sec_underlay_kv .big_txt {
  position: relative;
  display: inline-block;
  font-size: 52px;
  font-weight: 700;
  text-align: center;
  z-index: 2;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_case_category .sec_underlay_kv .big_txt {
    font-size: 22px;
  }
}
.page_case_category .sec_underlay_kv .treat {
  top: -15px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .page_case_category .sec_underlay_kv .treat {
    top: -10px;
  }
}
.page_case_category .sec_underlay_kv .category_name {
  font-size: 60%;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_case_category .sec_underlay_kv .category_name {
    font-size: 80%;
  }
}

/* ------------------------------------- */
/* 開発実績詳細 */
/* ------------------------------------- */
.page_case_singel .sec_underlay_kv_case_single .breadcrumbs {
  width: 90%;
  max-width: 1200px;
  margin: 20px auto auto;
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap {
  width: 90%;
  max-width: 1200px;
  margin: 30px auto auto;
  display: flex;
  justify-content: space-between;
  padding: 0 30px 40px;
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap {
    display: block;
    padding: 0 0 40px;
  }
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .thumbnail_wrap {
  border-radius: 7px;
  width: 50%;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .thumbnail_wrap {
    width: 100%;
  }
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .thumbnail {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
  border-radius: 7px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 61.754%;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .thumbnail {
    padding-top: 61.754%;
  }
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area {
  margin-top: 50px;
  width: 46%;
}
@media screen and (max-width: 1199px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area {
    margin-top: 2.5vw;
  }
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area {
    width: 100%;
    margin-top: 20px;
  }
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .label {
  background-color: #D01122;
  border: 1px solid #D01122;
  color: #fff;
  width: 208px;
  height: 36px;
  font-size: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1px;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .label {
    height: 30px;
  }
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .label:hover {
  color: #D01122;
  background-color: #fff;
}
.page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .post_title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 20px;
}
@media screen and (max-width: 1199px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .post_title {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_underlay_kv_case_single .kv_wrap .txt_area .post_title {
    font-size: 22px;
    margin-top: 10px;
  }
}
.page_case_singel .sec_technical_elements {
  width: 90%;
  max-width: 1200px;
  margin: 80px auto auto;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_technical_elements {
    margin: 40px auto auto;
    width: 100%;
  }
}
.page_case_singel .sec_technical_elements .sec_technical_elements_inner {
  padding: 40px 60px;
  background-color: #F4F4F4;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_technical_elements .sec_technical_elements_inner {
    padding: 20px 10px;
  }
}
.page_case_singel .sec_technical_elements .title {
  font-size: 24px;
  padding: 0 30px 20px;
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_technical_elements .title {
    font-size: 18px;
    padding: 0 20px 10px;
  }
}
.page_case_singel .sec_technical_elements .tag_list {
  padding: 20px 30px 0;
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_technical_elements .tag_list {
    padding: 10px 20px 0;
  }
}
.page_case_singel .sec_technical_elements .tag_list .t_red {
  color: #D01122;
}
.page_case_singel .sec_report {
  width: 90%;
  max-width: 1200px;
  padding: 0 30px 100px;
  margin: auto auto;
  border-bottom: 1px solid #E0E0E0;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report {
    padding: 0 0 60px;
  }
}
.page_case_singel .sec_report .block01, .page_case_singel .sec_report .block02, .page_case_singel .sec_report .block03, .page_case_singel .sec_report .block04, .page_case_singel .sec_report .block05 {
  margin: auto auto;
  padding: 0 30px 0;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block01, .page_case_singel .sec_report .block02, .page_case_singel .sec_report .block03, .page_case_singel .sec_report .block04, .page_case_singel .sec_report .block05 {
    margin: 40px auto auto;
    padding: 0 0 0;
  }
}
.page_case_singel .sec_report .report_wrap {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .report_wrap {
    margin: 40px auto auto;
  }
}
.page_case_singel .sec_report .heading {
  color: #D01122;
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .heading {
    font-size: 18px;
  }
}
.page_case_singel .sec_report .explanatory_text {
  font-size: 16px;
  line-height: 1.8;
}
.page_case_singel .sec_report .block01 .report_wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1199px) {
  .page_case_singel .sec_report .block01 .report_wrap {
    display: block;
  }
}
.page_case_singel .sec_report .block01 .report_wrap .txt_area {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block01 .report_wrap .txt_area {
    width: 100%;
  }
}
.page_case_singel .sec_report .block01 .report_wrap .img_area {
  width: 46%;
  min-width: 480px;
  margin-left: 40px;
}
.page_case_singel .sec_report .block01 .report_wrap .img_area img {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 1199px) {
  .page_case_singel .sec_report .block01 .report_wrap .img_area {
    margin: 20px auto auto;
    min-width: auto;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block01 .report_wrap .img_area {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block02 .txt_area, .page_case_singel .sec_report .block03 .txt_area, .page_case_singel .sec_report .block04 .txt_area, .page_case_singel .sec_report .block05 .txt_area {
    padding: 0 0;
  }
}
.page_case_singel .sec_report .block02 .img_area, .page_case_singel .sec_report .block03 .img_area, .page_case_singel .sec_report .block04 .img_area, .page_case_singel .sec_report .block05 .img_area {
  margin-top: 60px;
  display: flex;
  justify-content: center;
  column-gap: 4%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block02 .img_area, .page_case_singel .sec_report .block03 .img_area, .page_case_singel .sec_report .block04 .img_area, .page_case_singel .sec_report .block05 .img_area {
    margin-top: 20px;
    display: block;
  }
}
.page_case_singel .sec_report .block02 .img_area .image_wrap img, .page_case_singel .sec_report .block03 .img_area .image_wrap img, .page_case_singel .sec_report .block04 .img_area .image_wrap img, .page_case_singel .sec_report .block05 .img_area .image_wrap img {
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block02 .img_area .image_wrap, .page_case_singel .sec_report .block03 .img_area .image_wrap, .page_case_singel .sec_report .block04 .img_area .image_wrap, .page_case_singel .sec_report .block05 .img_area .image_wrap {
    margin-bottom: 10px;
  }
}
.page_case_singel .sec_report .block02 .img_area .movie_wrap, .page_case_singel .sec_report .block03 .img_area .movie_wrap, .page_case_singel .sec_report .block04 .img_area .movie_wrap, .page_case_singel .sec_report .block05 .img_area .movie_wrap {
  width: 100%;
  max-width: 50%;
  position: relative;
  height: 0;
  padding-bottom: 25.875%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .page_case_singel .sec_report .block02 .img_area .movie_wrap, .page_case_singel .sec_report .block03 .img_area .movie_wrap, .page_case_singel .sec_report .block04 .img_area .movie_wrap, .page_case_singel .sec_report .block05 .img_area .movie_wrap {
    width: 100%;
    max-width: none;
    margin-bottom: 10px;
    padding-top: 30.36%;
  }
}
.page_case_singel .sec_report .block02 .img_area .movie_wrap iframe, .page_case_singel .sec_report .block03 .img_area .movie_wrap iframe, .page_case_singel .sec_report .block04 .img_area .movie_wrap iframe, .page_case_singel .sec_report .block05 .img_area .movie_wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.page_case_singel .call_same_category {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto 120px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category {
    margin: 0 auto 60px;
  }
}
.page_case_singel .call_same_category .title {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  margin: 80px auto 50px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .title {
    margin: 40px auto;
    font-size: 22px;
  }
}
.page_case_singel .call_same_category .list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2%;
  row-gap: 50px;
}
@media screen and (max-width: 1199px) {
  .page_case_singel .call_same_category .list {
    display: block;
  }
}
.page_case_singel .call_same_category .list > li {
  width: 32%;
}
@media screen and (max-width: 1199px) {
  .page_case_singel .call_same_category .list > li {
    width: 100%;
    max-width: 455px;
    margin: 0 auto 20px;
  }
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .list > li {
    width: 100%;
    margin-bottom: 20px;
  }
}
.page_case_singel .call_same_category .list > li .img_wrap {
  position: relative;
  overflow: hidden;
  border-radius: 7px;
  box-shadow: 0px 0px 10px rgba(153, 153, 153, 0.6);
}
.page_case_singel .call_same_category .list > li .img_wrap .img_link {
  display: block;
  transition: 0.3s;
  width: 100%;
  padding-top: 61.842%;
  border-radius: 7px;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.page_case_singel .call_same_category .list > li .img_wrap .img_link:hover {
  opacity: 0.6;
  transform: scale(1.1, 1.1);
}
.page_case_singel .call_same_category .list > li .img_wrap .label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #D01122;
  color: #fff;
  width: 210px;
  height: 38px;
  font-size: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px 0 7px 0;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .list > li .img_wrap .label {
    height: 30px;
  }
}
.page_case_singel .call_same_category .list > li .img_wrap .label:hover {
  color: #D01122;
  background-color: #fff;
}
.page_case_singel .call_same_category .list > li .post_title {
  font-size: 24px;
  margin: 10px auto;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .list > li .post_title {
    font-size: 18px;
  }
}
.page_case_singel .call_same_category .list > li .tag_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  column-gap: 14px;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .list > li .tag_list {
    column-gap: 8px;
  }
}
.page_case_singel .call_same_category .list > li .tag_list li {
  color: #999999;
  font-weight: 400;
}
.page_case_singel .call_same_category .list > li .tag_list li span {
  color: #999999;
}
@media screen and (max-width: 768px) {
  .page_case_singel .call_same_category .list > li .tag_list li {
    font-size: 12px;
  }
}
.page_case_singel .call_same_category .btn_wrapper {
  margin-top: 60px;
  text-align: center;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* ISO/IEC規格に関する基本方針 */
/* ------------------------------------- */
.page_certifications .sec_underlay_kv .h2_wrap {
  border-bottom: 1px solid #E0E0E0;
  width: 80%;
  max-width: 1200px;
  padding-bottom: 40px;
  margin: auto;
}
@media screen and (max-width: 999px) {
  .page_certifications .sec_underlay_kv .h2_wrap h2 {
    font-size: 42px;
  }
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_underlay_kv .h2_wrap h2 {
    font-size: 24px;
  }
}
.page_certifications .in_page_link {
  width: 80%;
  margin: 80px auto auto;
}
@media screen and (max-width: 768px) {
  .page_certifications .in_page_link {
    width: 90%;
    margin: 10px auto auto;
  }
}
.page_certifications .in_page_link ul {
  display: flex;
  column-gap: 20px;
}
@media screen and (max-width: 768px) {
  .page_certifications .in_page_link ul {
    column-gap: 10px;
  }
}
@media screen and (max-width: 413px) {
  .page_certifications .in_page_link ul {
    flex-wrap: wrap;
  }
}
.page_certifications .in_page_link ul li {
  width: 33%;
  position: relative;
}
@media screen and (max-width: 413px) {
  .page_certifications .in_page_link ul li {
    width: calc(50% - 5px);
  }
}
.page_certifications .in_page_link ul li a {
  border-bottom: #1B2021 1px solid;
  padding: 15px 10px;
  width: 100%;
  display: block;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_certifications .in_page_link ul li a {
    font-size: 12px;
    padding: 8px 5px;
  }
}
.page_certifications .in_page_link ul li a:hover {
  opacity: 0.6;
}
.page_certifications .in_page_link ul li a:hover + .arrow_down_red {
  top: 60%;
  opacity: 0.6;
}
.page_certifications .in_page_link ul li .arrow_down_red {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #D01122;
  transition: 0.3s;
  width: 13px;
  height: 8px;
}
.page_certifications .sec_ISO27001_isms, .page_certifications .sec_ISO27017, .page_certifications .sec_ISO9001_qms, .page_certifications .sec_ISO14001_ems {
  width: 90%;
  max-width: 1200px;
  margin: auto;
  padding-top: 120px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms, .page_certifications .sec_ISO27017, .page_certifications .sec_ISO9001_qms, .page_certifications .sec_ISO14001_ems {
    padding-top: 80px;
  }
}
.page_certifications .sec_ISO27001_isms .under_h3_wrap, .page_certifications .sec_ISO27017 .under_h3_wrap, .page_certifications .sec_ISO9001_qms .under_h3_wrap, .page_certifications .sec_ISO14001_ems .under_h3_wrap {
  text-align: center;
}
.page_certifications .sec_ISO27001_isms .intro .intro_txt, .page_certifications .sec_ISO27017 .intro .intro_txt, .page_certifications .sec_ISO9001_qms .intro .intro_txt, .page_certifications .sec_ISO14001_ems .intro .intro_txt {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .intro_txt, .page_certifications .sec_ISO27017 .intro .intro_txt, .page_certifications .sec_ISO9001_qms .intro .intro_txt, .page_certifications .sec_ISO14001_ems .intro .intro_txt {
    margin-top: 20px;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex, .page_certifications .sec_ISO27017 .intro .table_flex, .page_certifications .sec_ISO9001_qms .intro .table_flex, .page_certifications .sec_ISO14001_ems .intro .table_flex {
  margin-top: 60px;
  display: flex;
  column-gap: 40px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex, .page_certifications .sec_ISO27017 .intro .table_flex, .page_certifications .sec_ISO9001_qms .intro .table_flex, .page_certifications .sec_ISO14001_ems .intro .table_flex {
    display: block;
    margin-top: 20px;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .mark, .page_certifications .sec_ISO27017 .intro .table_flex .mark, .page_certifications .sec_ISO9001_qms .intro .table_flex .mark, .page_certifications .sec_ISO14001_ems .intro .table_flex .mark {
  width: 140px;
  height: 100%;
  padding-top: 0;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex .mark, .page_certifications .sec_ISO27017 .intro .table_flex .mark, .page_certifications .sec_ISO9001_qms .intro .table_flex .mark, .page_certifications .sec_ISO14001_ems .intro .table_flex .mark {
    padding-top: 0;
    margin: auto auto 20px;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .table, .page_certifications .sec_ISO27017 .intro .table_flex .table, .page_certifications .sec_ISO9001_qms .intro .table_flex .table, .page_certifications .sec_ISO14001_ems .intro .table_flex .table {
  width: 70%;
  max-width: 780px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex .table, .page_certifications .sec_ISO27017 .intro .table_flex .table, .page_certifications .sec_ISO9001_qms .intro .table_flex .table, .page_certifications .sec_ISO14001_ems .intro .table_flex .table {
    width: 100%;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .table dl, .page_certifications .sec_ISO27017 .intro .table_flex .table dl, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dl, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dl {
  display: flex;
  border-bottom: 1px solid #1B2021;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex .table dl, .page_certifications .sec_ISO27017 .intro .table_flex .table dl, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dl, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dl {
    display: block;
    border-bottom: none;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .table dt, .page_certifications .sec_ISO27017 .intro .table_flex .table dt, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dt, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dt {
  background-color: #F4F4F4;
  width: 180px;
  padding: 15px 20px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex .table dt, .page_certifications .sec_ISO27017 .intro .table_flex .table dt, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dt, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dt {
    width: 100%;
    padding: 10px 10px;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .table dd, .page_certifications .sec_ISO27017 .intro .table_flex .table dd, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dd, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dd {
  padding: 15px 20px;
  width: calc(100% - 180px);
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .intro .table_flex .table dd, .page_certifications .sec_ISO27017 .intro .table_flex .table dd, .page_certifications .sec_ISO9001_qms .intro .table_flex .table dd, .page_certifications .sec_ISO14001_ems .intro .table_flex .table dd {
    width: 100%;
    padding: 10px 10px;
  }
}
.page_certifications .sec_ISO27001_isms .intro .table_flex .table .contact_txt, .page_certifications .sec_ISO27017 .intro .table_flex .table .contact_txt, .page_certifications .sec_ISO9001_qms .intro .table_flex .table .contact_txt, .page_certifications .sec_ISO14001_ems .intro .table_flex .table .contact_txt {
  margin-top: 20px;
  display: inline-block;
}
.page_certifications .sec_ISO27001_isms .txt, .page_certifications .sec_ISO27001_isms li, .page_certifications .sec_ISO27001_isms .txt_right, .page_certifications .sec_ISO27001_isms .intro_txt, .page_certifications .sec_ISO27001_isms .indent, .page_certifications .sec_ISO27017 .txt, .page_certifications .sec_ISO27017 li, .page_certifications .sec_ISO27017 .txt_right, .page_certifications .sec_ISO27017 .intro_txt, .page_certifications .sec_ISO27017 .indent, .page_certifications .sec_ISO9001_qms .txt, .page_certifications .sec_ISO9001_qms li, .page_certifications .sec_ISO9001_qms .txt_right, .page_certifications .sec_ISO9001_qms .intro_txt, .page_certifications .sec_ISO9001_qms .indent, .page_certifications .sec_ISO14001_ems .txt, .page_certifications .sec_ISO14001_ems li, .page_certifications .sec_ISO14001_ems .txt_right, .page_certifications .sec_ISO14001_ems .intro_txt, .page_certifications .sec_ISO14001_ems .indent {
  line-height: 1.8;
}
.page_certifications .sec_ISO27001_isms .paragraph, .page_certifications .sec_ISO27017 .paragraph, .page_certifications .sec_ISO9001_qms .paragraph, .page_certifications .sec_ISO14001_ems .paragraph {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph, .page_certifications .sec_ISO27017 .paragraph, .page_certifications .sec_ISO9001_qms .paragraph, .page_certifications .sec_ISO14001_ems .paragraph {
    margin-top: 40px;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph h4, .page_certifications .sec_ISO27017 .paragraph h4, .page_certifications .sec_ISO9001_qms .paragraph h4, .page_certifications .sec_ISO14001_ems .paragraph h4 {
  font-size: 30px;
  padding: 10px 30px;
  border-bottom: 1px solid #D01122;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph h4, .page_certifications .sec_ISO27017 .paragraph h4, .page_certifications .sec_ISO9001_qms .paragraph h4, .page_certifications .sec_ISO14001_ems .paragraph h4 {
    font-size: 20px;
    padding: 0 0 10px;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph .txt, .page_certifications .sec_ISO27017 .paragraph .txt, .page_certifications .sec_ISO9001_qms .paragraph .txt, .page_certifications .sec_ISO14001_ems .paragraph .txt {
  padding: 0 30px;
  margin: 30px auto;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph .txt, .page_certifications .sec_ISO27017 .paragraph .txt, .page_certifications .sec_ISO9001_qms .paragraph .txt, .page_certifications .sec_ISO14001_ems .paragraph .txt {
    padding: 0;
    margin: 10px auto;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph .num_list, .page_certifications .sec_ISO27017 .paragraph .num_list, .page_certifications .sec_ISO9001_qms .paragraph .num_list, .page_certifications .sec_ISO14001_ems .paragraph .num_list {
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph .num_list, .page_certifications .sec_ISO27017 .paragraph .num_list, .page_certifications .sec_ISO9001_qms .paragraph .num_list, .page_certifications .sec_ISO14001_ems .paragraph .num_list {
    padding: 0 0;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph .num_list li, .page_certifications .sec_ISO27017 .paragraph .num_list li, .page_certifications .sec_ISO9001_qms .paragraph .num_list li, .page_certifications .sec_ISO14001_ems .paragraph .num_list li {
  margin: 20px auto;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph .num_list li, .page_certifications .sec_ISO27017 .paragraph .num_list li, .page_certifications .sec_ISO9001_qms .paragraph .num_list li, .page_certifications .sec_ISO14001_ems .paragraph .num_list li {
    margin: 10px auto;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph h5, .page_certifications .sec_ISO27017 .paragraph h5, .page_certifications .sec_ISO9001_qms .paragraph h5, .page_certifications .sec_ISO14001_ems .paragraph h5 {
  color: #D01122;
  font-size: 20px;
  font-weight: 500;
  position: relative;
  margin: 30px auto 10px;
  padding: 0 30px 0 53px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph h5, .page_certifications .sec_ISO27017 .paragraph h5, .page_certifications .sec_ISO9001_qms .paragraph h5, .page_certifications .sec_ISO14001_ems .paragraph h5 {
    font-size: 16px;
    margin: 20px auto 10px;
    padding: 0 0 0 16px;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph h5::before, .page_certifications .sec_ISO27017 .paragraph h5::before, .page_certifications .sec_ISO9001_qms .paragraph h5::before, .page_certifications .sec_ISO14001_ems .paragraph h5::before {
  position: absolute;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background-color: #D01122;
  top: 12px;
  left: 30px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph h5::before, .page_certifications .sec_ISO27017 .paragraph h5::before, .page_certifications .sec_ISO9001_qms .paragraph h5::before, .page_certifications .sec_ISO14001_ems .paragraph h5::before {
    top: 8px;
    left: 0;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph .dots_list, .page_certifications .sec_ISO27017 .paragraph .dots_list, .page_certifications .sec_ISO9001_qms .paragraph .dots_list, .page_certifications .sec_ISO14001_ems .paragraph .dots_list {
  padding: 0 30px 0 53px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph .dots_list, .page_certifications .sec_ISO27017 .paragraph .dots_list, .page_certifications .sec_ISO9001_qms .paragraph .dots_list, .page_certifications .sec_ISO14001_ems .paragraph .dots_list {
    padding: 0 0 0 16px;
  }
}
.page_certifications .sec_ISO27001_isms .paragraph .dots_list li, .page_certifications .sec_ISO27017 .paragraph .dots_list li, .page_certifications .sec_ISO9001_qms .paragraph .dots_list li, .page_certifications .sec_ISO14001_ems .paragraph .dots_list li {
  text-indent: -1em;
  padding-left: 1em;
}
.page_certifications .sec_ISO27001_isms .paragraph .txt_right, .page_certifications .sec_ISO27017 .paragraph .txt_right, .page_certifications .sec_ISO9001_qms .paragraph .txt_right, .page_certifications .sec_ISO14001_ems .paragraph .txt_right {
  text-align: right;
  margin-top: 60px;
  padding: 0 30px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO27001_isms .paragraph .txt_right, .page_certifications .sec_ISO27017 .paragraph .txt_right, .page_certifications .sec_ISO9001_qms .paragraph .txt_right, .page_certifications .sec_ISO14001_ems .paragraph .txt_right {
    margin-top: 20px;
    padding: 0 0;
  }
}
.page_certifications .sec_ISO14001_ems {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .page_certifications .sec_ISO14001_ems {
    margin-bottom: 60px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
.sec_error_txt {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .sec_error_txt {
    margin: 40px auto 60px;
  }
}
.sec_error_txt .btn_wrapper {
  text-align: center;
  margin: 60px auto 0;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 健康経営 */
/* ------------------------------------- */
.page_health-management .under_h3_wrap {
  text-align: center;
}
.page_health-management .sec_basic_policy {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_basic_policy {
    margin: 60px auto auto;
  }
}
.page_health-management .txt_area {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_health-management .txt_area {
    margin-top: 20px;
  }
}
.page_health-management .sec_promotion_systemy, .page_health-management .sec_strategy_map {
  width: 90%;
  max-width: 1200px;
  margin: 100px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_systemy, .page_health-management .sec_strategy_map {
    margin: 60px auto auto;
  }
}
.page_health-management .sec_promotion_systemy .img_area, .page_health-management .sec_strategy_map .img_area {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_systemy .img_area, .page_health-management .sec_strategy_map .img_area {
    margin-top: 20px;
  }
}
.page_health-management .sec_promotion_status {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status {
    margin: 60px auto auto;
  }
}
.page_health-management .sec_promotion_status .table_wrap {
  margin-top: 40px;
  overflow-x: auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .table_wrap {
    margin-top: 20px;
  }
}
.page_health-management .sec_promotion_status .table_wrap .table {
  width: 100%;
  min-width: 600px;
  border-collapse: collapse;
}
.page_health-management .sec_promotion_status .table_wrap .table th, .page_health-management .sec_promotion_status .table_wrap .table td {
  padding: 15px 0;
}
.page_health-management .sec_promotion_status .table_wrap .table th p, .page_health-management .sec_promotion_status .table_wrap .table td p {
  display: block;
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .table_wrap .table th p, .page_health-management .sec_promotion_status .table_wrap .table td p {
    font-size: 12px;
  }
}
.page_health-management .sec_promotion_status .table_wrap .table th p .x80, .page_health-management .sec_promotion_status .table_wrap .table td p .x80 {
  font-size: 80%;
  margin-left: 4px;
}
.page_health-management .sec_promotion_status .table_wrap .table th, .page_health-management .sec_promotion_status .table_wrap .table td {
  border: 1px solid #999999;
}
.page_health-management .sec_promotion_status .table_wrap .table .heading th, .page_health-management .sec_promotion_status .table_wrap .table .heading td {
  padding: 10px 0;
}
.page_health-management .sec_promotion_status .table_wrap .table .heading th p, .page_health-management .sec_promotion_status .table_wrap .table .heading td p {
  color: #fff;
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .table_wrap .table .heading th p, .page_health-management .sec_promotion_status .table_wrap .table .heading td p {
    font-size: 12px;
  }
}
.page_health-management .sec_promotion_status .table_wrap .table .heading th {
  border-right: none;
  border-top: none;
  border-bottom: none;
  border-left: 1px solid #01B0BA;
}
.page_health-management .sec_promotion_status .table_wrap .table .heading td {
  border-right: none;
  border-top: none;
  border-bottom: none;
  border-left: 1px solid #fff;
}
.page_health-management .sec_promotion_status .table_wrap .table .heading .bg_blue {
  background-color: #01B0BA;
}
.page_health-management .sec_promotion_status .table_wrap .table .heading .bg_red {
  background-color: #D01122;
}
.page_health-management .sec_promotion_status .table_wrap .table th, .page_health-management .sec_promotion_status .table_wrap .table td {
  border: 1px solid #999999;
}
.page_health-management .sec_promotion_status .table_wrap .table th {
  width: 345px;
  min-width: 345px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .table_wrap .table th {
    width: 200px;
    min-width: 200px;
  }
}
.page_health-management .sec_promotion_status .table_wrap .table td {
  width: 130px;
  min-width: 130px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .table_wrap .table td {
    width: 80px;
    min-width: 80px;
  }
}
.page_health-management .sec_promotion_status .note_wrap {
  margin-top: 20px;
}
.page_health-management .sec_promotion_status .note_wrap p {
  font-size: 14px;
}
.page_health-management .sec_promotion_status .img_area {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_promotion_status .img_area {
    margin-top: 20px;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* ------------------------------------- */
/* 健康経営 */
/* ------------------------------------- */
.page_health-management .under_h3_wrap {
  text-align: center;
}
.page_health-management .sec_sdgs_logo {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_sdgs_logo {
    margin: 60px auto auto;
  }
}
.page_health-management .sec_sdgs_logo .txt_area {
  margin: 50px auto auto;
}
.page_health-management .sec_environment, .page_health-management .sec_social_human, .page_health-management .sec_working {
  width: 90%;
  max-width: 1000px;
  margin: 100px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment, .page_health-management .sec_social_human, .page_health-management .sec_working {
    margin: 60px auto auto;
  }
}
.page_health-management .sec_environment .under_h3_wrap, .page_health-management .sec_social_human .under_h3_wrap, .page_health-management .sec_working .under_h3_wrap {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .under_h3_wrap, .page_health-management .sec_social_human .under_h3_wrap, .page_health-management .sec_working .under_h3_wrap {
    margin-bottom: 20px;
  }
}
.page_health-management .sec_environment .attempt, .page_health-management .sec_social_human .attempt, .page_health-management .sec_working .attempt {
  background-color: #F4F4F4;
  padding: 40px;
  margin: 40px auto auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .attempt, .page_health-management .sec_social_human .attempt, .page_health-management .sec_working .attempt {
    padding: 20px;
    margin: 20px auto auto;
  }
}
.page_health-management .sec_environment .attempt h4, .page_health-management .sec_social_human .attempt h4, .page_health-management .sec_working .attempt h4 {
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #E0E0E0;
  padding: 0 20px 20px 20px;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .attempt h4, .page_health-management .sec_social_human .attempt h4, .page_health-management .sec_working .attempt h4 {
    padding: 0 0 15px 0;
    font-size: 18px;
  }
}
.page_health-management .sec_environment .attempt ul, .page_health-management .sec_social_human .attempt ul, .page_health-management .sec_working .attempt ul {
  padding: 20px 0 0 0;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .attempt ul, .page_health-management .sec_social_human .attempt ul, .page_health-management .sec_working .attempt ul {
    padding: 15px 0 0 0;
  }
}
.page_health-management .sec_environment .attempt ul li, .page_health-management .sec_social_human .attempt ul li, .page_health-management .sec_working .attempt ul li {
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .attempt ul li, .page_health-management .sec_social_human .attempt ul li, .page_health-management .sec_working .attempt ul li {
    font-size: 14px;
  }
}
.page_health-management .sec_environment .img_area {
  width: 380px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_environment .img_area {
    max-width: 380px;
    width: 74.5%;
  }
}
.page_health-management .sec_social_human .img_area {
  width: 510px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_social_human .img_area {
    max-width: 510px;
    width: 100%;
  }
}
.page_health-management .sec_working .img_area {
  width: 510px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_health-management .sec_working .img_area {
    max-width: 510px;
    width: 100%;
  }
}
