
/*//////////////////////////////////////////////////////////

Copyright (C) apricot-design All Rights Reserved.
------------------------------------------------------------
CSS information
 file name  :  reset.css
 style info :  リセットファイル
 admin info :  apricot-design

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

audio[controls], canvas, video {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

html {
  overflow-y: scroll;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {
  margin: 0;
  padding: 0;
}

body, button, input, select, textarea {
  font-size: 100%;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

pre, code, kbd, samp {
  font-family: monospace, monospace;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

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

small {
  font-size: 75%;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul, ol {
  margin: 0;
  padding: 0;
}

dd {
  margin: 0px;
}

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

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
  overflow: hidden;
}

figure, form {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  *margin-left: -7px;
}

button, input, select, textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle;
}

button, input {
  line-height: normal;
  *overflow: visible;
}

button {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}
input[type=checkbox], input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

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

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

li {
  list-style: none;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
* {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
*:before, *:after {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.ie6_error, .no_script {
  background: #F66;
  padding: 100px;
  text-align: center;
  font-size: 150%;
  color: #333;
}

.flt {
  float: left;
}

.flr {
  float: right;
}

.txt_l, td.txt_l, .txt_l td {
  text-align: left;
}

.txt_r, td.txt_r, .txt_r td {
  text-align: right;
}

.txt_c, td.txt_c, .txt_c td {
  text-align: center;
}

.valign_t, td.valign_t, .valign_t td {
  vertical-align: top;
}

.valign_m, td.valign_m, .valign_m td {
  vertical-align: middle;
}

.valign_b, td.valign_b, .valign_b td {
  vertical-align: bottom;
}

.clear {
  clear: both;
}

.clearfix {
  zoom: 1;
}
.clearfix:before {
  content: "";
  display: block;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.img_bd {
  border: solid 1px #E8E8E8;
}

.c_red {
  color: #FF3425;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*
0:セット
------------------------------------------------------------
*/
html {
  width: 100%;
}

body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  color: #323232;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  text-align: left;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
  }
}

.win body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
}

a {
  text-decoration: none;
  color: #323232;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
a:link, a:active, a:visited {
  text-decoration: none;
}

.opacity {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.opacity:hover {
  opacity: 0.5;
}

img {
  max-width: 100%;
  height: auto;
}
img[src$=".svg"] {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.pc {
  display: inherit;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: inherit;
  }
}

/*
//ベース
------------------------------------------------------------
*/
#container_wrap {
  overflow: hidden;
  min-width: 1180px;
}
@media screen and (max-width: 767px) {
  #container_wrap {
    min-width: 375px;
  }
}

#container {
  background: #fff;
}

.inner {
  width: 84%;
  margin: 0 auto;
  padding: 0 15px;
}
@media screen and (max-width: 1400px) {
  .inner {
    width: 96%;
  }
}
@media screen and (max-width: 767px) {
  .inner {
    width: 100%;
    max-width: 500px;
    padding: 0 5%;
  }
}
.inner.inner_s {
  max-width: 980px;
}
.inner::after {
  content: "";
  display: block;
  clear: both;
}

#main {
  float: right;
  width: 75%;
}
@media screen and (max-width: 767px) {
  #main {
    float: none;
    width: 100%;
    margin-bottom: 5%;
  }
}

#sub {
  float: left;
  width: 19%;
}
@media screen and (max-width: 767px) {
  #sub {
    float: none;
    width: 100%;
  }
}

#top_main {
  width: 100%;
  padding: 0;
  margin: 0 0 50px;
}

#top_left {
  width: 50%;
  float: left;
}

#top_right {
  width: 50%;
  float: right;
}

.section_wrap {
  padding: 6em 0;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .section_wrap {
    padding: 3.5em 0;
  }
}
.section_wrap.top_none {
  padding: 0 0 6em;
}
@media screen and (max-width: 767px) {
  .section_wrap.top_none {
    padding: 0 0 3.5em;
  }
}
.section_wrap.border_top {
  position: relative;
}
.section_wrap.border_top::before {
  content: "";
  width: 1px;
  height: 65px;
  border-right: 1px solid #3581EF;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .section_wrap.border_top::before {
    height: 35px;
  }
}

.section:not(:last-child) {
  margin: 0 0 5em;
}
@media screen and (max-width: 767px) {
  .section:not(:last-child) {
    margin: 0 0 3.5em;
  }
}

/*
//ヘッダー
------------------------------------------------------------
*/
header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4;
}
header::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #3581EF;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
header.is-scroll::before {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
header.is-scroll .header_logo {
  width: 90px;
}
@media screen and (max-width: 767px) {
  header.is-scroll .header_logo {
    width: 50px;
  }
}

.header_box {
  width: 84%;
  padding: 15px;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1400px) {
  .header_box {
    width: 96%;
  }
}
@media screen and (max-width: 767px) {
  .header_box {
    width: 100%;
    height: 60px;
  }
}

.header_logo {
  width: 160px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
@media screen and (max-width: 767px) {
  .header_logo {
    width: 50px;
  }
}

#header_right {
  padding: 0 50px 0 0;
}

@media screen and (max-width: 767px) {
  #gnavi {
    display: none;
  }
}
#gnavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
#gnavi ul li {
  margin: 0 2.5em 0 0;
}
@media screen and (max-width: 1180px) {
  #gnavi ul li {
    margin: 0 1em 0 0;
  }
}
#gnavi ul li.contact a {
  padding: 0.5em 2em;
  border: 1px solid #fff;
}
@media screen and (max-width: 1180px) {
  #gnavi ul li.contact a {
    padding: 0.5em 1.5em;
  }
}
@media screen and (min-width: 768px) {
  #gnavi ul li.contact a:hover {
    color: #3581EF;
    background: #fff;
  }
}
#gnavi ul li a {
  display: block;
  color: #fff;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  #gnavi ul li a:hover {
    -webkit-box-shadow: 0 -1px 0 #fff inset;
            box-shadow: 0 -1px 0 #fff inset;
  }
}

.menu-trigger {
  display: inline-block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  width: 40px;
  height: 40px;
  z-index: 6;
  border: none;
  border-radius: 0;
  background: none;
  text-align: center;
  outline: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .menu-trigger {
    right: 10px;
  }
}

.menu_line {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 40px;
  height: 1px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .menu_line {
    width: 35px;
  }
}
.menu_line::before, .menu_line::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.menu_line::before {
  top: -10px;
}
.menu_line::after {
  top: 10px;
}

.menu-trigger[aria-expanded=true] .menu_line {
  background: transparent;
}

.menu-trigger[aria-expanded=true] .menu_line::before,
.menu-trigger[aria-expanded=true] .menu_line::after {
  top: 0;
  background: #000;
}

.menu-trigger[aria-expanded=true] .menu_line::before {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.menu-trigger[aria-expanded=true] .menu_line::after {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.menu_hidden {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

#overlay {
  width: 100%;
  max-width: 600px;
  height: 100%;
  padding: 100px 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 5;
  background: #fff;
  overflow-y: scroll;
  opacity: 0;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  visibility: hidden;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
}
@media screen and (max-width: 767px) {
  #overlay {
    display: block;
    padding: 60px 15px;
  }
}
#overlay.active {
  height: 100%;
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.menu_box {
  text-align: center;
  padding: 0 15px;
  margin: 0 auto;
  width: 90%;
}
@media screen and (max-width: 767px) {
  .menu_box {
    width: 100%;
  }
}

.menu_navi {
  max-width: 600px;
  margin: 0 auto;
}
.menu_navi ul li {
  margin: 0 0 1.5em;
}
.menu_navi ul li a {
  display: inline-block;
  color: #3581EF;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .menu_navi ul li a:hover {
    color: #3581EF;
  }
}
.menu_navi ul li.contact {
  margin: 5em 0 0;
}
@media screen and (max-width: 767px) {
  .menu_navi ul li.contact {
    margin: 2em 0 0;
  }
}
.menu_navi ul li.contact a {
  display: block;
  padding: 1em;
  border: 2px solid #3581EF;
  max-width: 380px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .menu_navi ul li.contact a {
    border-width: 1px;
  }
}
@media screen and (min-width: 768px) {
  .menu_navi ul li.contact a:hover {
    color: #fff;
    background: #3581EF;
  }
  .menu_navi ul li.contact a:hover::before {
    right: 0;
    opacity: 0;
  }
}
.menu_navi ul li.contact a::before {
  content: "";
  width: 72px;
  height: 8px;
  background: url(../image/arrow_blue.svg) no-repeat center/contain;
  position: absolute;
  right: -36px;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .menu_navi ul li.contact a::before {
    width: 36px;
    height: 4px;
    right: -18px;
  }
}

.modal_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: rgba(0, 0, 0, 0.25);
  display: none;
}

/*
//フッター
------------------------------------------------------------
*/
.txt_introduction {
  font-size: 0.85em;
  line-height: 2.5;
  text-align: center;
}
@media screen and (max-width: 1400px) {
  .txt_introduction {
    font-size: 0.81em;
  }
}
@media screen and (max-width: 767px) {
  .txt_introduction {
    font-size: 0.75em;
    line-height: 1.8;
    text-align: left;
  }
}

.catch {
  padding: 1em;
}
.catch p {
  font-size: 0.85em;
  line-height: 2.5;
  text-align: center;
}
@media screen and (max-width: 1400px) {
  .catch p {
    font-size: 0.81em;
  }
}
@media screen and (max-width: 767px) {
  .catch p {
    font-size: 0.75em;
    line-height: 1.8;
    text-align: left;
  }
}

#footer {
  padding: 6em 0;
  background: #3581EF;
}
@media screen and (max-width: 767px) {
  #footer {
    padding: 3.5em 0;
  }
}

.footer_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
}

.footer_left {
  width: 500px;
}
@media screen and (max-width: 767px) {
  .footer_left {
    width: 100%;
    margin: 0 0 3em;
  }
}
.footer_left_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 2em;
}
@media screen and (max-width: 767px) {
  .footer_left_top {
    display: block;
    text-align: center;
  }
}
.footer_left_top .footer_logo {
  width: 158px;
  margin: 0 20px 0 0;
}
@media screen and (max-width: 767px) {
  .footer_left_top .footer_logo {
    width: 30%;
    max-width: 158px;
    margin: 0 auto 2em;
  }
}
.footer_left_top .footer_info_ttl {
  width: 254px;
  margin: 0 0 10px;
}
@media screen and (max-width: 767px) {
  .footer_left_top .footer_info_ttl {
    width: 60%;
    max-width: 254px;
    margin: 0 auto 10px;
  }
}
@media screen and (max-width: 767px) {
  .footer_left_top .footer_info_txt {
    font-size: 0.87em;
  }
}
.footer_left_bottom {
  font-size: 0.87em;
}
@media screen and (max-width: 767px) {
  .footer_left_bottom {
    font-size: 0.75em;
  }
}

.footer_right {
  width: calc(100% - 500px);
}
@media screen and (max-width: 767px) {
  .footer_right {
    width: 100%;
  }
}

.footer_navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .footer_navi {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .footer_navi > ul {
    width: 49%;
  }
}
.footer_navi > ul:not(:last-child) {
  margin: 0 6em 0 0;
}
@media screen and (max-width: 767px) {
  .footer_navi > ul:not(:last-child) {
    margin: 0;
  }
}
.footer_navi > ul > li {
  font-size: 0.87em;
  margin: 0 0 1.5em;
}
.footer_navi > ul > li a {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .footer_navi > ul > li a:hover {
    -webkit-box-shadow: 0 -1px 0 #fff inset;
            box-shadow: 0 -1px 0 #fff inset;
  }
}
.footer_navi > ul .child {
  margin: 1em 0 0 1em;
  padding: 0 0 0 1em;
  border-left: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .footer_navi > ul .child {
    margin: 1em 0 0 0.5em;
  }
}
.footer_navi > ul .child li {
  margin: 0.75em 0;
}
@media screen and (max-width: 767px) {
  .footer_navi > ul .child li {
    margin: 0.8em 0;
  }
}

.copy {
  padding: 1.75em 0;
  background: #4d4d4d;
  color: #fff;
  font-size: 0.81em;
  line-height: 1.5;
  text-align: center;
}

/*
5:side
------------------------------------------------------------
*/
.section_side {
  margin-bottom: 15%;
}
.section_side:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .section_side {
    margin-bottom: 10%;
  }
}

#searchform div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90%;
  margin: 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#searchform div input#search {
  border: 1px solid #333;
  padding: 0.5em;
  border-radius: 20px;
  margin-right: 5%;
  width: 100%;
}
#searchform div input#search_btn {
  border: none;
  background: none;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  padding: 0;
  background: url(https://kitayamasyouji7758.co.jp/2021/wp-content/themes/kitayama/images/icon_serch.svg) no-repeat center/100%;
  font-size: 0;
}

.list_cat {
  font-size: 0.8125em;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .list_cat {
    font-size: 1em;
  }
}
.list_cat li {
  margin-bottom: 1em;
}
.list_cat li:last-child {
  margin-bottom: 0;
}
.list_cat li a {
  position: relative;
  padding-left: 13px;
}
.list_cat li a:before {
  position: absolute;
  content: "";
  background: url(https://kitayamasyouji7758.co.jp/2021/wp-content/themes/kitayama/images/right_b.svg) no-repeat center/cover;
  width: 5px;
  height: 7px;
  left: 0;
  top: 7px;
}
.list_cat li a:hover {
  color: #9fa0a0;
}

.list_side li {
  margin-bottom: 7%;
}
.list_side li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .list_side li {
    font-size: 1em;
    margin-bottom: 5%;
  }
}
.list_side li p.date {
  margin-bottom: 0.5em;
  letter-spacing: 0.15em;
  font-size: 0.9375em;
}
.list_side li div.article_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.list_side li div.side_img {
  width: 50px;
  margin-right: 10px;
  height: 50px;
  overflow: hidden;
  border-radius: 5px;
  border: 2px solid #3D352F;
}
@media screen and (max-width: 767px) {
  .list_side li div.side_img {
    width: 100px;
    max-height: 100px;
  }
}
.list_side li div.side_img .wpp-thumbnail {
  width: 100%;
}
.list_side li div.side_desc {
  font-size: 0.8125em;
  width: calc(100% - 60px);
  line-height: 1.5;
}

/*
5:div
------------------------------------------------------------
*/
.left_col {
  float: left;
  width: 48%;
}

.right_col {
  float: right;
  width: 48%;
}

.leftBox {
  float: left;
}

.rightBox {
  float: right;
}

.box {
  padding: 2em;
  margin: 0 0 2em;
}
.box::after {
  content: "";
  display: block;
  clear: both;
}
.box .ate {
  border: 1px dotted #1d1d1d;
}

.main_img_wrap.vegas-container,
.main_movie {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 1180px) {
  .main_img_wrap.vegas-container,
.main_movie {
    max-height: 800px;
  }
}
@media screen and (max-width: 767px) {
  .main_img_wrap.vegas-container,
.main_movie {
    height: 85vh;
  }
}
.main_img_wrap.vegas-container .movie,
.main_movie .movie {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.main_img_wrap.vegas-container .movie video,
.main_movie .movie video {
  min-height: 100%;
  min-height: 100vh;
  min-width: 100%;
  min-width: 100vw;
}
.main_img_wrap.vegas-container .movie img,
.main_movie .movie img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.main_img {
  height: 100vh;
  overflow: hidden;
  position: relative;
  /*.movie{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    &::before{
      content: '';
      width: 100%;
      height: 100%;
      background: url(../image/dot.png) rgba(0,0,0,0.2);
      position: absolute;
      top: 0;
      left: 0;
    }
    video{
      min-height: 100%;
      min-height: 100vh;
      min-width: 100%;
      min-width: 100vw;
    }
    img{
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }*/
}
@media screen and (max-width: 1180px) {
  .main_img {
    max-height: 800px;
  }
}
@media screen and (max-width: 767px) {
  .main_img {
    height: 85vh;
  }
}
.main_img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../image/dot.png) rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
}
.main_img .inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .main_img .inner {
    padding: 0 15px;
  }
}
.main_img_ttl {
  color: #fff;
  font-size: 4.5em;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .main_img_ttl {
    font-size: 2.25em;
  }
}
.main_img_ttl .en {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.75em;
  letter-spacing: 0.08em;
}
.main_img_ttl .txt_l {
  font-size: 1.2em;
}
.main_img a.scroll {
  display: block;
  padding: 0 0 35px;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  line-height: 1;
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .main_img a.scroll {
    font-size: 0.75em;
    padding: 0 0 50px 5px;
    right: 10px;
  }
}
.main_img a.scroll::before {
  content: "";
  width: 1px;
  height: 30px;
  border-left: 1px solid #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-animation: sdl 2.8s infinite;
          animation: sdl 2.8s infinite;
}
@media screen and (max-width: 767px) {
  .main_img a.scroll::before {
    height: 40px;
  }
}

@-webkit-keyframes sdl {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

@keyframes sdl {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.vegas-animation-zoom {
  -webkit-animation: zoom ease-out;
          animation: zoom ease-out;
}

@-webkit-keyframes zoom {
  0% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes zoom {
  0% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.map {
  position: relative;
}
.map::before {
  content: "";
  
  padding: 30% 0 0;
}
@media screen and (max-width: 767px) {
  .map::before {
    padding: 30% 0 0;
  }
}
.map > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section_txt {
  font-size: 0.9375em;
}
.section_txt p.date {
  font-size: 0.9375em;
}
@media screen and (max-width: 767px) {
  .section_txt p.date {
    font-size: 0.8em;
  }
}
.section_txt img {
  margin: 3% 0;
  display: block;
  max-height: 500px;
  width: auto;
}

/*
6:ul
------------------------------------------------------------
*/
.list_info.top {
  margin: 0 0 3em;
}
@media screen and (max-width: 767px) {
  .list_info.top {
    margin: 0 0 2em;
  }
}
.list_info.top li {
  border-bottom: 1px dashed #fff;
}
.list_info.top li a {
  max-width: 640px;
  margin: 0 auto;
  padding: 0;
  background: none;
  color: #fff;
}
.list_info li {
  padding: 0 0 1.5em;
  margin: 0 0 1.5em;
  border-bottom: 1px dashed #3581EF;
}
.list_info li a {
  padding: 0 155px;
  background: url(../image/arrow_next.svg) no-repeat center right 1em/8px 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #3581EF;
}
@media screen and (max-width: 767px) {
  .list_info li a {
    padding: 0 1.5em 0 0;
    background-position: right;
    background-size: 6px 10px;
  }
}
@media screen and (min-width: 768px) {
  .list_info li a:hover .ttl {
    text-decoration: underline;
  }
}
.list_info li a .date {
  width: 8em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .list_info li a .date {
    font-size: 0.87em;
  }
}
.list_info li a .ttl {
  width: calc(100% - 8em);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .list_info li a .ttl {
    width: 100%;
  }
}

.list_blog {
  display: -ms-grid;
  display: grid;
  grid-gap: 3em;
  -ms-grid-columns: 1fr 3em 1fr 3em 1fr;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 767px) {
  .list_blog {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .list_blog li:not(:last-child) {
    margin: 0 0 2em;
  }
}
.list_blog li a {
  display: block;
}
@media screen and (max-width: 767px) {
  .list_blog li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .list_blog li a .list_blog_img::after {
    content: "";
    width: 100%;
    height: 100%;
    background: #3581EF;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .list_blog li a:hover .list_blog_img::after {
    opacity: 0.2;
  }
}
.list_blog_img {
  margin: 0 0 1em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_blog_img {
    width: 33%;
    margin: 0;
  }
}
.list_blog_img::before {
  content: "";
  display: block;
  padding: 66% 0 0;
}
.list_blog_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .list_blog_desc {
    width: 63%;
  }
}
.list_blog_date {
  color: #3581EF;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.87em;
}
.list_blog_ttl {
  line-height: 1.6;
}

/*
7:dl
------------------------------------------------------------
*/
.dlist_bnr {
  background: #333;
  color: #fff;
  font-size: 1.125em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
}
@media screen and (max-width: 767px) {
  .dlist_bnr {
    font-size: 1em;
  }
}
.dlist_bnr dt {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .dlist_bnr dt {
    width: 100%;
  }
}
.dlist_bnr dt div.img_eye {
  height: 210px;
  background-position: center;
}
.dlist_bnr dd {
  text-align: center;
  width: 60%;
  padding: 3% 5%;
}
@media screen and (max-width: 767px) {
  .dlist_bnr dd {
    width: 100%;
    padding: 5%;
  }
}

.dlist_about {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
}
.dlist_about dt {
  width: 48%;
  margin-right: 4%;
}
.dlist_about dd {
  width: 48%;
}

/*
8:table
------------------------------------------------------------
*/
.table_company {
  width: 100%;
  border: 1px solid #3581EF;
}
.table_company tr:not(:last-child) th {
  border-bottom: 1px solid #fff;
}
.table_company tr:not(:last-child) td {
  border-bottom: 1px solid #3581EF;
}
.table_company th {
  width: 300px;
  padding: 1em;
  background-color: #d9e2e9;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .table_company th {
    display: block;
    width: 100%;
    padding: 0.75em;
    text-align: left;
    line-height: 1.5;
  }
}
.table_company td {
  padding: 1em;
}
@media screen and (max-width: 767px) {
  .table_company td {
    display: block;
    width: 100%;
    padding: 0.75em;
    line-height: 1.5;
  }
}

.table_history {
  width: 100%;
  border: 1px solid #323232;
}
.table_history tr:nth-child(odd) {
  background-color: #efefef;
}
.table_history th {
  width: 300px;
  padding: 1em;
  border-right: 1px solid #323232;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .table_history th {
    width: 8em;
    padding: 0.75em;
    font-size: 0.9em;
    line-height: 1.5;
  }
}
.table_history td {
  padding: 1em;
}
@media screen and (max-width: 767px) {
  .table_history td {
    padding: 1em;
    font-size: 0.9em;
    line-height: 1.5;
  }
}

/*
9:タイトル
------------------------------------------------------------
*/
.ttl_wrap {
  height: 350px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .ttl_wrap {
    height: 220px;
  }
}
.ttl_wrap.bg_ttl_01 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_02 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_03 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_04 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_05 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_06 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_07 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap.bg_ttl_08 {
  background: url(//cdn.xuansiwei.com/dongx4113/1649411798893/1892b6ce4376fc7ecbdc0168f714f156.jpeg?x-oss-process=style/small) no-repeat center/cover;
}
.ttl_wrap::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../image/dot.png) rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
}
.ttl_wrap::after {
  content: "";
  width: 1px;
  height: 65px;
  border-right: 1px solid #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .ttl_wrap::after {
    height: 35px;
  }
}
.ttl_wrap .ttl_top {
  position: relative;
  z-index: 1;
  margin: 1em 0 0;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 2.81em;
  line-height: 1.6;
  letter-spacing: 0.1em;
  text-align: center;
  text-shadow: 0 0 8px #000;
}
@media screen and (max-width: 767px) {
  .ttl_wrap .ttl_top {
    font-size: 2em;
    margin: 0.5em 0 0;
  }
}

.ttl_main {
  color: #3581EF;
  font-size: 2em;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: center;
  margin: 0 0 1.5em;
}
@media screen and (max-width: 767px) {
  .ttl_main {
    font-size: 1.75em;
  }
}
.ttl_main.white {
  color: #fff;
}
.ttl_main.mb_none {
  margin: 0;
}
@media screen and (max-width: 767px) {
  .ttl_main.ttl_article {
    font-size: 1.28em;
  }
  .ttl_main.ttl_article .en {
    margin: 0.5em 0 0;
    font-size: 0.5em;
  }
}
.ttl_main .en {
  display: block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.43em;
  margin: 0.25em 0 0;
}

.ttl_border {
  color: #3581EF;
  font-size: 1.62em;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: center;
  padding: 60px 0 0;
  margin: 0 0 1em;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .ttl_border {
    font-size: 1.5em;
    padding: 40px 0 0;
  }
}
.ttl_border::before {
  content: "";
  width: 1px;
  height: 50px;
  border-right: 1px solid #3581EF;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .ttl_border::before {
    height: 35px;
  }
}
.ttl_border span {
  display: block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.5em;
  padding: 0 0 0.5em;
}
@media screen and (max-width: 767px) {
  .ttl_border span {
    padding: 0;
  }
}
.ttl_border.long {
  padding: 90px 0 0;
}
@media screen and (max-width: 767px) {
  .ttl_border.long {
    padding: 45px 0 0;
  }
}
.ttl_border.long::before {
  height: 80px;
}
@media screen and (max-width: 767px) {
  .ttl_border.long::before {
    height: 35px;
  }
}

.ttl_sub {
  color: #3581EF;
  font-size: 1.62em;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-align: center;
  margin: 0 0 1em;
}
@media screen and (max-width: 767px) {
  .ttl_sub {
    font-size: 1.5em;
  }
}
.ttl_sub span {
  display: block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.5em;
}

.txt_center {
  text-align: center;
}

/*
10：装飾
------------------------------------------------------------
*/
#loading {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

#loader-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  bottom: 0;
  right: 0;
  background: #3581EF;
  z-index: 10000;
}

.loading_logo {
  width: 500px;
  margin: 0 auto;
  -webkit-animation: shutter_contents 1.25s forwards;
          animation: shutter_contents 1.25s forwards;
}
@media screen and (max-width: 767px) {
  .loading_logo {
    width: 120px;
  }
}

.bg_blue {
  background: #3581EF;
}
.bg_blue.border_top::before {
  border-color: #fff;
}
.bg_lightblue {
  background: #d9e2e9;
}
.bg_white {
  background: #fff;
}
.bg_recruit {
  position: relative;
}
.bg_recruit::after {
  content: "";
  width: 77%;
  max-width: 1350px;
  height: 40%;
  background: #d9e2e9;
  position: absolute;
  bottom: 3em;
  right: 0;
}
@media screen and (max-width: 767px) {
  .bg_recruit::after {
    height: 70%;
    background: #f5f7f9;
    bottom: 2em;
  }
}
.bg_recruit .section {
  position: relative;
  z-index: 1;
}

.fade {
  opacity: 0;
}
.fade.animated {
  -webkit-animation: fade_up 1s forwards;
          animation: fade_up 1s forwards;
}
.fade_02.animated {
  -webkit-animation: fade_up 1s 0.2s forwards;
          animation: fade_up 1s 0.2s forwards;
}
.fade_03.animated {
  -webkit-animation: fade_up 1s 0.4s forwards;
          animation: fade_up 1s 0.4s forwards;
}
.fade.fade_left.animated {
  -webkit-animation: fade_left 1s forwards;
          animation: fade_left 1s forwards;
}
.fade.fade_left_02.animated {
  -webkit-animation: fade_left 1s 0.2s forwards;
          animation: fade_left 1s 0.2s forwards;
}
.fade.fade_right.animated {
  -webkit-animation: fade_right 1s forwards;
          animation: fade_right 1s forwards;
}

@-webkit-keyframes fade_up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fade_up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fade_left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes fade_left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes fade_right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fade_right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.big {
  opacity: 0;
  -webkit-transform: scale(1.08);
      -ms-transform: scale(1.08);
          transform: scale(1.08);
}
.big.animated {
  -webkit-animation: big 1s forwards;
          animation: big 1s forwards;
}

@-webkit-keyframes big {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes big {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.txt_up {
  opacity: 0;
}
.txt_up span {
  opacity: 0;
  display: inline-block;
  -webkit-transform: translateY(5px);
      -ms-transform: translateY(5px);
          transform: translateY(5px);
}
.txt_up span.animated {
  -webkit-animation: up 0.33s forwards;
          animation: up 0.33s forwards;
}

@-webkit-keyframes up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.shutter {
  position: relative;
}
.shutter_contents {
  display: inline-block;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.shutter::after {
  content: "";
  width: 100%;
  height: 100%;
  background: #3581EF;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
}
.shutter.animated .shutter_contents {
  -webkit-animation: shutter_contents 1.25s forwards;
          animation: shutter_contents 1.25s forwards;
}
.shutter.animated::after {
  -webkit-animation: shutter 1.25s forwards;
          animation: shutter 1.25s forwards;
}
.shutter_02.animated .shutter_contents {
  -webkit-animation: shutter_contents 1.25s 0.5s forwards;
          animation: shutter_contents 1.25s 0.5s forwards;
}
.shutter_02.animated::after {
  -webkit-animation: shutter 1.25s 0.5s forwards;
          animation: shutter 1.25s 0.5s forwards;
}
.shutter_03.animated . {
  -webkit-animation: shutter_contents 1.25s 1s forwards;
          animation: shutter_contents 1.25s 1s forwards;
}
.shutter_03.animated::after {
  -webkit-animation: shutter 1.25s 1s forwards;
          animation: shutter 1.25s 1s forwards;
}

@-webkit-keyframes shutter_contents {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  40.1% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}

@keyframes  {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  40.1% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes shutter {
  0% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  40% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  40.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
  }
  100% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
  }
}
@keyframes shutter {
  0% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  40% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  40.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
  }
  100% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
  }
}
/*
11:ボタン系
------------------------------------------------------------
*/
#page_top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 2;
  width: 40px;
  height: 40px;
  background: url(../image/page_top.svg) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  #page_top {
    width: 35px;
    height: 35px;
    bottom: 12px;
    right: 10px;
  }
}

a.button {
  display: block;
  padding: 1em;
  border: 2px solid #3581EF;
  max-width: 380px;
  color: #3581EF;
  font-size: 1.12em;
  font-weight: 700;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  a.button {
    font-size: 1.06em;
  }
}
a.button.center {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  a.button.center {
    margin: 0 12px;
  }
}
a.button.white {
  border-color: #fff;
  color: #fff;
}
a.button.white::before {
  background: url(../image/arrow_white.svg) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  a.button.white:hover {
    color: #3581EF;
    background: #fff;
  }
}
@media screen and (max-width: 767px) {
  a.button {
    border-width: 1px;
    margin: 0 12px;
  }
}
@media screen and (min-width: 768px) {
  a.button:hover {
    color: #fff;
    background: #3581EF;
  }
  a.button:hover::before {
    right: 0;
    opacity: 0;
  }
}
a.button::before {
  content: "";
  width: 72px;
  height: 8px;
  background: url(../image/arrow_blue.svg) no-repeat center/contain;
  position: absolute;
  right: -36px;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  a.button::before {
    width: 36px;
    height: 4px;
    right: -18px;
  }
}

/*
12:その他パーツ
------------------------------------------------------------
*/
#list_breadcrumb {
  font-size: 0.87em;
  padding: 1em 0;
  margin: 0;
}

.alignleft {
  float: left;
  padding: 0 15px 15px 0;
}

.alignright {
  float: right;
  padding: 0 0 15px 15px;
}

.aligncenter {
  display: block;
  margin: 0 auto 20px;
}

.photo_l {
  float: left;
  padding: 0 15px 15px 0;
}

.photoR {
  float: right;
  padding: 0 0 15px 15px;
}

/*
13:コンタクトフォーム
------------------------------------------------------------
*/
.table_contact {
  width: 100%;
  font-size: 1.12em;
  margin: 0 0 3em;
}
@media screen and (max-width: 767px) {
  .table_contact {
    font-size: 1em;
    margin: 0 0 1.5em;
  }
}
.table_contact tr th {
  padding: 1em;
  color: #3581EF;
  text-align: left;
  vertical-align: top;
  width: 30%;
}
@media screen and (max-width: 767px) {
  .table_contact tr th {
    width: 100%;
    display: block;
    padding: 0 0 0.5em;
  }
}
.table_contact tr th span {
  display: inline-block;
  padding: 0 0.5em;
  margin: 0 0 0 0.5em;
  background: #3581EF;
  color: #fff;
  font-size: 0.8em;
}
.table_contact tr td {
  width: 70%;
  padding: 1em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .table_contact tr td {
    width: 100%;
    display: block;
    padding: 0 0 1.5em;
  }
}

input[type=text], input[type=email], input[type=tel], textarea, select {
  width: 100%;
  padding: 10px;
  border-radius: 0;
  border: none;
  font-family: inherit;
}

textarea {
  height: 12em;
}

input.input_s {
  width: 10em;
}

span.mwform-tel-field input {
  width: 25% !important;
}

.submit_wrap {
  text-align: center;
}

.submit, .back {
  max-width: 320px;
  width: 47%;
  margin: 0 1%;
  padding: 1em 0;
  display: inline-block;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  border: 2px solid #3581EF;
  color: #3581EF;
  background: #fff;
  font-family: inherit;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .submit, .back {
    border-width: 1px;
  }
}

.back {
  color: #000;
  background: #e7e7e7;
}

@media screen and (min-width: 768px) {
  .submit:hover, .back:hover {
    color: #fff;
    background: #3581EF;
  }
}

@media screen and (min-width: 768px) {
  .txt_thanks {
    text-align: center;
  }
}

/*
14:ワードプレス
------------------------------------------------------------
*/
.wp-pagenavi {
  margin: 3em 0 0;
  text-align: center;
}
.wp-pagenavi a {
  display: inline-block;
  padding: 0 0.5em;
  margin: 0 0.5em 0.5em 0;
}
.wp-pagenavi a:hover {
  color: #3581EF;
}
.wp-pagenavi span {
  display: inline-block;
  padding: 0 0.5em;
  margin: 0 0.5em 0.5em 0;
}
.wp-pagenavi span.current {
  color: #3581EF;
}

/*
15:マージン・パディング
------------------------------------------------------------
*/
.mb_05 {
  margin: 0 0 0.5em;
}
.mb_10 {
  margin: 0 0 1em;
}
.mb_15 {
  margin: 0 0 1.5em;
}
.mb_20 {
  margin: 0 0 2em;
}

/*
16:Pagination
------------------------------------------------------------
*/
ul.list_pagination {
  width: 100%;
  margin: 5em auto 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px dotted #3581EF;
  border-bottom: 1px dotted #3581EF;
  font-size: 0.875em;
  padding: 2em 0;
}
ul.list_pagination li {
  width: 33.33%;
}
ul.list_pagination li.prev a {
  padding: 0 0 0 23px;
  background: url(../image/arrow_prev.svg) no-repeat left/8px 12px;
}
@media screen and (max-width: 767px) {
  ul.list_pagination li.prev a {
    padding: 0 0 0 15px;
    background-size: 6px 10px;
  }
}
@media screen and (min-width: 768px) {
  ul.list_pagination li.prev a:hover {
    padding: 0 0 0 20px;
  }
}
ul.list_pagination li.middle {
  text-align: center;
}
ul.list_pagination li.next {
  text-align: right;
}
ul.list_pagination li.next a {
  padding: 0 23px 0 0;
  background: url(../image/arrow_next.svg) no-repeat right/8px 12px;
}
@media screen and (max-width: 767px) {
  ul.list_pagination li.next a {
    padding: 0 15px 0 0;
    background-size: 6px 10px;
  }
}
@media screen and (min-width: 768px) {
  ul.list_pagination li.next a:hover {
    padding: 0 20px 0 0;
  }
}
ul.list_pagination li a {
  display: inline-block;
  color: #3581EF;
}

/*
-----------------------------------------*/
.section_top {
  background: url(../image/bg_01.jpg) no-repeat center/cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .section_top {
    display: block;
    position: relative;
  }
}
.section_top_img {
  width: 870px;
}
@media screen and (max-width: 1400px) {
  .section_top_img {
    width: 62%;
  }
}
@media screen and (max-width: 767px) {
  .section_top_img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .section_top_img img {
    opacity: 0.15;
  }
}
.section_top_contents {
  width: calc(100% - 800px);
  max-width: 1000px;
  margin: 7em 0 6em -70px;
}
@media screen and (max-width: 1400px) {
  .section_top_contents {
    width: 43%;
    margin: 7em 0 6em -5%;
  }
}
@media screen and (max-width: 767px) {
  .section_top_contents {
    width: 100%;
    margin: 0;
    padding: 3em 15px;
  }
}
.section_top_ttl {
  color: #3581EF;
  font-size: 1.37em;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 1.25em;
}
@media screen and (max-width: 767px) {
  .section_top_ttl {
    font-size: 1em;
  }
}
.section_top_ttl .txt_l {
  display: block;
  font-size: 3em;
}
@media screen and (max-width: 767px) {
  .section_top_ttl .txt_l {
    font-size: 2.25em;
  }
}
.section_top_ttl .txt_l span {
  font-size: 1.07em;
}
.section_top_txt {
  line-height: 2;
  margin: 0 0 2em;
}
@media screen and (max-width: 767px) {
  .section_top_txt {
    margin: 0 0 1.5em;
  }
}

.list_movie {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 -3% 0 0;
}
@media screen and (max-width: 767px) {
  .list_movie {
    display: block;
    margin: 0;
  }
}
.list_movie li {
  width: 30.33%;
  margin: 0 3% 0 0;
}
@media screen and (max-width: 767px) {
  .list_movie li {
    width: 100%;
    margin: 0 auto;
  }
  .list_movie li:not(:last-child) {
    margin: 0 auto 3em;
  }
}

.movie_wrap {
  max-width: 800px;
  margin: 0 auto;
  line-height: 0;
  position: relative;
}
.movie_wrap::before {
  content: "";
  width: 180%;
  height: 100%;
  background: #d9e2e9;
  position: absolute;
  top: -6em;
  left: 15%;
}
@media screen and (max-width: 767px) {
  .movie_wrap::before {
    top: -10%;
    left: 10%;
  }
}

.movie_embed {
  background: #000;
  position: relative;
}
.movie_embed::before {
  content: "";
  display: block;
  padding: 56.25% 0 0;
}
.movie_embed iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.section_top_business::after {
  content: "";
  width: 84%;
  height: 50%;
  background: #d0d0d0;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .section_top_business::after {
    width: 90%;
    height: 75%;
  }
}
.section_top_business .inner {
  position: relative;
  z-index: 1;
}

.top_business {
  width: 92%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 3em auto;
  padding: 0 0 0 15px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1400px) {
  .top_business {
    width: 98%;
  }
}
@media screen and (max-width: 767px) {
  .top_business {
    width: 100%;
    display: block;
    padding: 0 5%;
    margin: 0 0 2em;
  }
}
.top_business_link {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .top_business_link {
    width: 100%;
  }
}
.top_business_link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  padding: 3em 0;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top_business_link a {
    padding: 3em 0;
  }
}
@media screen and (min-width: 768px) {
  .top_business_link a:hover::before {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .top_business_link a:hover::after {
    background: url(../image/dot.png), rgba(0, 0, 0, 0.33);
  }
}
.top_business_link a::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(//cdn.xuansiwei.com/wangk12232/1758694323651/1_r__1702-1276_c__768c97_.jpg?x-oss-process=style/small) no-repeat center/cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .top_business_link a::before {
    -webkit-transform: scale(1.001);
        -ms-transform: scale(1.001);
            transform: scale(1.001);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
}
.top_business_link a::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../image/dot.png), rgba(0, 0, 0, 0.25);
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .top_business_link a::after {
    background: url(../image/dot.png), rgba(0, 0, 0, 0.33);
  }
}
@media screen and (min-width: 768px) {
  .top_business_link a::after {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
}
.top_business_link a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 260px;
  height: 160px;
  /* border: 1px solid #fff; */
  color: #fff;
  font-size: 1.62em;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .top_business_link a span {
    height: 100px;
    font-size: 1.5em;
  }
}
.top_business_desc {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .top_business_desc {
    width: 100%;
    margin: 1em 0 0;
  }
}
.top_business .list_top_scrap li {
  min-height: 180px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #3581EF;
  padding: 1.5em 2em;
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap li {
    display: block;
    padding: 1.5em 1em;
  }
}
.top_business .list_top_scrap li:not(:last-child) {
  margin: 0 0 1.5em;
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap li:not(:last-child) {
    margin: 0 0 1em;
  }
}
.top_business .list_top_scrap_img {
  width: 108px;
  margin: 0 22px 0 0;
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap_img {
    width: 18%;
    margin: 0 auto 15px;
  }
}
.top_business .list_top_scrap_desc {
  width: calc(100% - 130px);
  max-width: 420px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap_desc {
    width: 100%;
  }
}
.top_business .list_top_scrap_ttl {
  font-size: 1.37em;
  font-weight: 700;
  margin: 0 0 0.25em;
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap_ttl {
    font-size: 1.18em;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .top_business .list_top_scrap_txt {
    font-size: 0.93em;
  }
}

.list_link_business {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 4em;
}
@media screen and (max-width: 767px) {
  .list_link_business {
    margin: 0 0 2em;
  }
}
.list_link_business li {
  width: 30.33%;
}
@media screen and (max-width: 767px) {
  .list_link_business li {
    width: 100%;
    margin: 0 0 1em;
  }
}
.list_link_business li .top_business_link {
  width: 100%;
}
.list_link_business li .top_business_link a.link_01::before {
  background: url(//cdn.xuansiwei.com/wangk12232/1758346590673/zizhizhengshuyiji_r__3124-2160_c__cfb134_.jpg?x-oss-process=style/small) no-repeat center/contain;
}
.list_link_business li .top_business_link a.link_02::before {
  background: url(//cdn.xuansiwei.com/wangk12232/1758349040335/zaishengziyuanhuishoufuwuqiyezizhizhengshu_r__2400-1697_c__f3ece0_.jpg?x-oss-process=style/small) no-repeat center/contain;
}
.list_link_business li .top_business_link a.link_03::before {
  background: url(//cdn.xuansiwei.com/wangk12232/1758349027197/5f89f1840d4205eecdeaaab12eb32cb4_r__3167-2160_c__eff4f3_.jpg?x-oss-process=style/small) no-repeat center/contain;
}

.list_banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 -4%;
}
@media screen and (max-width: 767px) {
  .list_banner {
    margin: 0 0 -1em;
  }
}
.list_banner li {
  width: 48%;
  margin: 0 0 4%;
}
@media screen and (max-width: 767px) {
  .list_banner li {
    width: 90%;
    margin: 0 auto 1em;
  }
}
.list_banner li a {
  display: block;
}
@media screen and (min-width: 768px) {
  .list_banner li a:hover {
    opacity: 0.8;
  }
}

.section_contact {
  padding: 4em 0;
  margin: 4em 0 0;
  background: url(../image/bg_02.jpg) no-repeat center/cover;
}
@media screen and (max-width: 767px) {
  .section_contact {
    padding: 3em 0;
    margin: 3em 0 0;
    background: url(../image/bg_02_sp.jpg) no-repeat center/cover;
  }
}
.section_contact .box_contact {
  padding: 4em;
  margin: -8em 0 0;
  background: #3581EF;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .section_contact .box_contact {
    padding: 2em 15px;
    margin: -6em 0 0;
  }
}
.section_contact .box_contact_ttl {
  font-size: 1.87em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .section_contact .box_contact_ttl {
    font-size: 1.6em;
  }
}
.section_contact .box_contact_txt {
  margin: 0 0 0.5em;
}
@media screen and (max-width: 767px) {
  .section_contact .box_contact_txt {
    font-size: 0.87em;
  }
}
.section_contact .box_contact_tel a {
  display: inline-block;
  padding: 8px 0 0 56px;
  background: url(../image/icon_tel.svg) no-repeat left/46px 46px;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 3.12em;
  line-height: 1.1;
}

@media screen and (min-width: 768px) {
  .section_contact .box_contact_tel a {
    pointer-events: none;
  }
}
@media screen and (max-width: 767px) {
  .section_contact .box_contact_tel a {
    padding: 4px 0 0 28px;
    background-size: 23px 23px;
    font-size: 2.25em;
  }
}
.section_contact .box_contact_time {
  margin: 0 0 1.5em;
}
@media screen and (max-width: 767px) {
  .section_contact .box_contact_time {
    font-size: 0.87em;
  }
}

/*business
-----------------------------------------*/
.list_business > li {
  padding: 7.5em 0 0;
  margin: 0 0 6em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_business > li {
    padding: 5.5em 0 0;
    margin: 0 0 3em;
  }
}
.list_business > li::before {
  content: "";
  width: 53%;
  height: 370px;
  background: #d9e2e9;
  position: absolute;
  top: 0;
  right: -11%;
}
@media screen and (max-width: 767px) {
  .list_business > li::before {
    width: 60%;
    height: 80%;
    background: #f5f7f9;
    top: 1em;
  }
}
.list_business > li:nth-child(even)::before {
  left: -13%;
  right: auto;
}
.list_business > li:nth-child(even) .list_business_number {
  left: auto;
  right: 0;
}
@media screen and (max-width: 767px) {
  .list_business > li:nth-child(even) .list_business_number {
    right: -5px;
  }
}
.list_business > li:nth-child(even) .list_business_contents {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.list_business_number {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .list_business_number {
    width: 115px;
    left: -5px;
    z-index: 2;
  }
}
.list_business_contents {
  max-width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  position: relative;
  z-index: 1;
}
.list_business_img {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .list_business_img {
    width: 100%;
    margin: 0 0 1.5em;
  }
}
.list_business_desc {
  width: 47%;
}
@media screen and (max-width: 767px) {
  .list_business_desc {
    width: 100%;
  }
}
.list_business_ttl {
  color: #3581EF;
  font-size: 1.62em;
  font-weight: 700;
  margin: 0.5em 0;
}
@media screen and (max-width: 767px) {
  .list_business_ttl {
    font-size: 1.5em;
    margin: 0 0 0.5em;
  }
}
.list_business_txt {
  line-height: 2;
}
.list_business_button {
  margin: 1em 0 0;
}
@media screen and (max-width: 767px) {
  .list_business_button {
    margin: 0.75em 0 0;
    text-align: right;
  }
}
.list_business_button.right {
  text-align: right;
}
.list_business a.more {
  display: inline-block;
  color: #3581EF;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.12em;
  padding: 0 92px 0 0;
  background: url(../image/arrow_blue.svg) no-repeat center right 10px/72px 8px;
}
@media screen and (max-width: 767px) {
  .list_business a.more {
    padding: 0 82px 0 0;
    background-position: center right;
  }
}
@media screen and (min-width: 768px) {
  .list_business a.more:hover {
    background-position: center right;
  }
}
.list_business .scrap_contents {
  max-width: 1180px;
  margin: 3em auto 0;
  position: relative;
}
.list_business .scrap_contents_ttl {
  width: 31.33%;
  margin: 0 auto;
  padding: 0.25em;
  background: #3581EF;
  color: #fff;
  font-size: 1.37em;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents_ttl {
    width: 100%;
    color: #3581EF;
    background: #fff;
  }
}
.list_business .scrap_contents .list_scrap_contents {
  padding: 80px 0 0;
  background: url(../image/branch.png) no-repeat top/100% 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents .list_scrap_contents {
    padding: 0;
    background: none;
    display: block;
  }
}
.list_business .scrap_contents .list_scrap_contents li {
  width: 31.33%;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents .list_scrap_contents li {
    width: 100%;
    margin: 1.5em 0 0;
  }
}
.list_business .scrap_contents .list_scrap_contents li .scrap_contents_ttl {
  width: 100%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents .list_scrap_contents li .scrap_contents_ttl {
    width: 80%;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 1.18em;
  }
}
.list_business .scrap_contents .list_scrap_contents li a.bg {
  display: block;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .list_business .scrap_contents .list_scrap_contents li a.bg::after {
    -webkit-transform: scale(1.001);
        -ms-transform: scale(1.001);
            transform: scale(1.001);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
  }
  .list_business .scrap_contents .list_scrap_contents li a.bg:hover::after {
    -webkit-transform: scale(1.04);
        -ms-transform: scale(1.04);
            transform: scale(1.04);
  }
}
.list_business .scrap_contents .list_scrap_contents li a.bg::after {
  content: "";
  display: block;
  padding: 66% 0 0;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents .list_scrap_contents li a.bg::after {
    padding: 33% 0 0;
  }
}
.list_business .scrap_contents .list_scrap_contents li a.bg.bg_01::after {
  background: url(//cdn.xuansiwei.com/wangk12232/1758346590673/zizhizhengshuyiji_r__3124-2160_c__cfb134_.jpg?x-oss-process=style/small) no-repeat center/contain;
}
.list_business .scrap_contents .list_scrap_contents li a.bg.bg_02::after {
  background: url(//cdn.xuansiwei.com/wangk12232/1758349040335/zaishengziyuanhuishoufuwuqiyezizhizhengshu_r__2400-1697_c__f3ece0_.jpg?x-oss-process=style/small) no-repeat center/contain;
}
.list_business .scrap_contents .list_scrap_contents li a.bg.bg_03::after {
  background: url(//cdn.xuansiwei.com/wangk12232/1758349027197/5f89f1840d4205eecdeaaab12eb32cb4_r__3167-2160_c__eff4f3_.jpg?x-oss-process=style/small) no-repeat center/contain;
}
.list_business .scrap_contents .list_scrap_contents li .no_link {
  overflow: hidden;
  position: relative;
}
.list_business .scrap_contents .list_scrap_contents li .no_link::after {
  content: "";
  display: block;
  padding: 66% 0 0;
}
@media screen and (max-width: 767px) {
  .list_business .scrap_contents .list_scrap_contents li .no_link::after {
    padding: 33% 0 0;
  }
}
.list_business .scrap_contents .list_scrap_contents li .no_link.bg_03::after {
  background: url(../image/business_img_01-03.jpg) no-repeat center/cover;
}

/*私たちにできること
-----------------------------------------*/
.top_about {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top_about_ttl {
  width: 515px;
  margin: 0 0 2em;
}
@media screen and (max-width: 767px) {
  .top_about_ttl {
    width: 100%;
  }
}
.top_about_ttl p {
  color: #3581EF;
  font-size: 4em;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .top_about_ttl p {
    font-size: 2.25em;
    text-align: center;
    text-indent: -1em;
    padding: 0 0 0 1em;
  }
}
.top_about_ttl p .en {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.75em;
  letter-spacing: 0.08em;
}
.top_about_ttl p .txt_l {
  font-size: 1.2em;
}
.top_about_img {
  width: calc(100% - 515px);
  margin: 0 0 2em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_about_img {
    width: 70%;
    margin: 0 auto 2em;
  }
}
.top_about_desc {
  width: 100%;
  line-height: 2.2;
}
@media screen and (max-width: 767px) {
  .top_about_desc {
    line-height: 2;
  }
}

.about_img_02 {
  margin: 3em 0 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .about_img_02 {
    margin: 2em 0 0;
  }
}

/*会社案内
-----------------------------------------*/
.message {
  position: relative;
}
.message::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #d9e2e9;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .message::before {
    width: 85%;
    height: 100%;
    background: #f5f7f9;
    top: 1em;
  }
}
.message::after {
  content: "Message";
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 10em;
  line-height: 1;
  letter-spacing: 0.08em;
  position: absolute;
  bottom: 1%;
  left: 1%;
  opacity: 0.25;
}
@media screen and (max-width: 767px) {
  .message::after {
    font-size: 5em;
    bottom: auto;
    top: -0.5%;
    left: -0.5%;
    opacity: 0.66;
  }
}
.message_wrap {
  position: relative;
  z-index: 1;
}
.message_img {
  width: 46%;
  position: absolute;
  bottom: 0;
  right: -15%;
}
@media screen and (max-width: 1400px) {
  .message_img {
    right: -10%;
  }
}
@media screen and (max-width: 767px) {
  .message_img {
    width: 100%;
    position: relative;
    right: 0;
    margin: 0 0 1em;
  }
}
.message_txt {
  line-height: 2.2;
  padding: 0 0 5em;
}
@media screen and (max-width: 767px) {
  .message_txt {
    line-height: 2;
    padding: 0;
  }
}
.message_name {
  margin: 1em 40% 0 0;
  color: #3581EF;
  font-weight: 700;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .message_name {
    margin: 1em 0 0;
  }
}
.message_name span {
  font-size: 1.37em;
}

.client_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.client_wrap_box {
  width: 48%;
  padding: 0 1em 3em;
  background-color: #d9e2e9;
}
@media screen and (max-width: 767px) {
  .client_wrap_box {
    width: 100%;
  }
  .client_wrap_box:not(:last-child) {
    margin: 0 0 1em;
  }
}
.client_wrap ul li {
  text-align: center;
}
.client_wrap ul li:not(:last-child) {
  margin: 0 0 1em;
}
@media screen and (max-width: 767px) {
  .client_wrap ul li:not(:last-child) {
    margin: 0 0 0.75em;
  }
}

/*事業所案内
-----------------------------------------*/
.list_office li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.list_office li:not(:last-child) {
  margin: 0 0 3.5em;
}
.list_office_img {
  width: 48%;
}
@media screen and (max-width: 767px) {
  .list_office_img {
    width: 100%;
    margin: 0 0 1.5em;
  }
}
.list_office_desc {
  width: 47%;
}
@media screen and (max-width: 767px) {
  .list_office_desc {
    width: 100%;
  }
}
.list_office_ttl {
  color: #3581EF;
  font-size: 1.62em;
  font-weight: 700;
  padding: 0 0 0.75em;
  margin: 0 0 1em;
  border-bottom: 1px solid #3581EF;
}
@media screen and (max-width: 767px) {
  .list_office_ttl {
    font-size: 1.5em;
    padding: 0 0 0.5em;
    margin: 0 0 0.75em;
  }
}
.list_office_txt {
  margin: 0 0 1em;
}
.list_office_map {
  display: inline-block;
  padding: 0 20px 0 0;
  background: url(../image/icon_external.svg) no-repeat right/16px 16px;
  color: #3581EF;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .list_office_map:hover {
    text-decoration: underline;
  }
}

/*事業
-----------------------------------------*/
.list_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.list_link li {
  width: 31%;
}
@media screen and (max-width: 767px) {
  .list_link li {
    width: 100%;
  }
  .list_link li:not(:last-child) {
    margin: 0 0 0.5em;
  }
}
.list_link li a {
  display: block;
  padding: 0.25em;
  background: url(../image/arrow_down.svg) no-repeat center right 1em/15px 9px #3581EF;
  color: #fff;
  font-size: 1.37em;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .list_link li a {
    font-size: 1.12em;
    background-size: 10px 5px;
  }
}

.business_intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin: 3em 0 5em;
}
@media screen and (max-width: 767px) {
  .business_intro {
    margin: 2em 0 3em;
  }
}
.business_intro_img {
  width: 46%;
}
@media screen and (max-width: 767px) {
  .business_intro_img {
    width: 100%;
    margin: 0 0 1em;
  }
}
.business_intro_desc {
  width: 50%;
  line-height: 2.2;
}
@media screen and (max-width: 767px) {
  .business_intro_desc {
    width: 100%;
    line-height: 2;
  }
}

.box_recycle {
  background: #fff;
  padding: 5em;
}
@media screen and (max-width: 767px) {
  .box_recycle {
    padding: 2em 1em;
  }
}
.box_recycle:not(:last-child) {
  margin: 0 0 5em;
}
@media screen and (max-width: 767px) {
  .box_recycle:not(:last-child) {
    margin: 0 0 2em;
  }
}
.box_recycle_top {
  max-width: 980px;
  margin: 0 auto 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .box_recycle_top {
    margin: 0 0 1.5em;
  }
}
.box_recycle_top_left {
  width: 300px;
  border-right: 1px solid #3581EF;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .box_recycle_top_left {
    width: 100%;
    border-right: none;
    margin: 0 0 1em;
  }
  .box_recycle_top_left img {
    width: 40%;
  }
}
.box_recycle_top_right {
  width: calc(100% - 300px);
  padding: 0 0 0 3em;
}
@media screen and (max-width: 767px) {
  .box_recycle_top_right {
    width: 100%;
    padding: 0;
  }
}

.list_recycle_img {
  max-width: 980px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.list_recycle_img li {
  width: 33%;
}

.dlist_trade {
  background: #fff;
  margin: 1em 0 0;
  padding: 2em 3em;
}
@media screen and (max-width: 767px) {
  .dlist_trade {
    padding: 1em;
  }
}
.dlist_trade dt {
  color: #3581EF;
  font-weight: 700;
  text-align: center;
}

.trading_country {
  text-align: center;
}

.business_slide {
  max-width: 980px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .business_slide {
    padding: 0 12px;
  }
}
.business_slide_box {
  margin: 0 2px;
}
.business_slide_desc {
  margin: 0 0 0 15px;
}
.business_slide_ttl {
  color: #3581EF;
  font-size: 1.12em;
  font-weight: 700;
  line-height: 1.5;
  padding: 10px 0 0 45px;
  position: relative;
}
.business_slide_ttl::before {
  content: "";
  width: 40px;
  height: 25px;
  border-left: 1px solid #3581EF;
  border-bottom: 1px solid #3581EF;
  position: absolute;
  top: 0;
  left: 0;
}
.business_slide_ttl .txt_s {
  font-size: 0.8em;
}
.business_slide_txt {
  font-size: 0.87em;
  line-height: 1.5;
  margin: 0.5em 0 0;
}
.business_slide .slick-prev {
  background: url(../image/icon_prev.png) no-repeat center/contain;
  left: -40px;
}
@media screen and (max-width: 767px) {
  .business_slide .slick-prev {
    left: -5px;
  }
}
.business_slide .slick-next {
  background: url(../image/icon_next.png) no-repeat center/contain;
  right: -40px;
}
@media screen and (max-width: 767px) {
  .business_slide .slick-next {
    right: -5px;
  }
}

.slick-prev,
.slick-next {
  position: absolute;
  z-index: 1;
  display: block;
  width: 26px;
  height: 80px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
@media screen and (max-width: 767px) {
  .slick-prev,
.slick-next {
    width: 13px;
    height: 40px;
  }
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  color: transparent;
}

/*採用情報
-----------------------------------------*/
.top_recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 3.5em;
}
@media screen and (max-width: 767px) {
  .top_recruit {
    margin: 0 0 2em;
  }
}
.top_recruit_img {
  width: 55%;
}
@media screen and (max-width: 767px) {
  .top_recruit_img {
    width: 100%;
    margin: 0 0 1em;
  }
}
.top_recruit_txt {
  width: 40%;
  line-height: 2.2;
}
@media screen and (max-width: 767px) {
  .top_recruit_txt {
    width: 100%;
    padding: 0 15px;
    line-height: 2;
  }
}

.box_recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 2em 0;
  margin: 0 0 3em;
  background: #3581EF;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .box_recruit {
    padding: 0 1em 1.5em;
  }
}
.box_recruit_ttl {
  width: 420px;
  font-size: 1.62em;
  font-weight: 700;
  padding: 0 0 0 220px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .box_recruit_ttl {
    width: 100%;
    font-size: 1.5em;
    text-align: center;
    padding: 45px 0 0;
    margin: 0 0 0.5em;
  }
}
.box_recruit_ttl::before {
  content: "";
  width: 190px;
  height: 1px;
  border-top: 1px solid #fff;
  position: absolute;
  left: 0;
  top: 50%;
}
@media screen and (max-width: 767px) {
  .box_recruit_ttl::before {
    width: 1px;
    height: 35px;
    border-top: none;
    border-left: 1px solid #fff;
    top: 0;
    right: 0;
    margin: 0 auto;
  }
}
.box_recruit .list_recruit {
  width: calc(100% - 470px);
}
@media screen and (max-width: 767px) {
  .box_recruit .list_recruit {
    width: 100%;
  }
}
.box_recruit .list_recruit li {
  font-size: 1.12em;
}
@media screen and (max-width: 767px) {
  .box_recruit .list_recruit li {
    font-size: 1em;
    text-align: center;
  }
}
.box_recruit .list_recruit li:not(:last-child) {
  margin: 0 0 0.5em;
}
.box_recruit .list_recruit li::before {
  content: "・";
}

.txt_apply {
  color: #3581EF;
  font-size: 1.62em;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .txt_apply {
    font-size: 1.28em;
  }
}

/*お知らせ
-----------------------------------------*/
.article {
  max-width: 750px;
  margin: 0 auto;
}
.article img {
  margin: 15px auto;
}
@media screen and (max-width: 767px) {
  .article img {
    margin: 10px auto;
  }
}
.article a {
  color: #3581EF;
  text-decoration: underline;
}

/*プライバシーポリシー
-----------------------------------------*/
.ttl_policy {
  font-size: 1.12em;
  font-weight: 700;
  margin: 0 0 0.25em;
}