@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Baskervville:ital@0;1&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Stylesheet */
html {
  width: 100%;
  height: auto;
  font-size: 62.5%;
}
@media only screen and (max-width: 750px) {
  html {
    min-width: auto;
  }
}

body {
  width: 100%;
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", メイリオ, Meiryo, Osaka, sans-serif;
  font-size: 1.6rem;
  line-height: 3rem;
  font-weight: 300;
  color: #000;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  -webkit-text-size-adjust: 100%;
  position: relative;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  -webkit-transition: opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  outline: none;
}

div {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
  font-weight: normal;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, li {
  margin: 0;
  padding: 0;
  list-style: none;
}

a, a i {
  text-decoration: none;
  outline: none;
  color: #000;
  -webkit-transition: background 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), color 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: background 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), color 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}

a img {
  display: block;
  outline: none;
}

a:hover img {
  opacity: 1 !important;
}

a:focus, a:active, input, textarea {
  outline: none;
}

a:hover, a:hover img, a:hover {
  opacity: 0.8;
}

button {
  border: 0;
  outline: none;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  -webkit-transition: background 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), color 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: background 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), color 0.5s cubic-bezier(0.75, 0.3, 0.25, 1), opacity 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
button:hover {
  cursor: pointer;
  opacity: 0.8;
}

.link-sp {
  pointer-events: none;
}

.link-blue {
  color: #0b57a7;
  text-decoration: underline;
}

.anchor {
  display: block;
  position: relative;
  top: -80px;
  visibility: hidden;
}
@media only screen and (max-width: 834px) {
  .anchor {
    top: -60px;
  }
}

.NotoSerifJP {
  font-family: "Noto Serif JP", serif;
}

.Baskervville {
  font-family: "Baskervville", serif;
}

.fw200-extra-light {
  font-weight: 200;
}

.fw300-light {
  font-weight: 300;
}

.fw400-regular {
  font-weight: 400;
}

.fw500-medium {
  font-weight: 500;
}

.fw600-semi-bold {
  font-weight: 600;
}

.fw700-bold {
  font-weight: 700;
}

.fw900-black {
  font-weight: 900;
}

.bg-grey {
  background-color: #f8f8f8;
}

/* Header */
.full-header header .header {
  width: 100%;
  padding: 0 5%;
}
@media only screen and (max-width: 834px) {
  .full-header header .header {
    padding: 0 4%;
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 12;
  width: 100%;
}
header .header {
  width: 94%;
  height: 80px;
  margin: 0 auto;
  padding: 0 2%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  header .header {
    width: 100%;
    min-width: auto;
    height: 66px;
    padding: 0 4%;
  }
}
header .header .header-left {
  width: 20%;
  min-width: 155px;
}
@media only screen and (max-width: 1080px) {
  header .header .header-left {
    width: auto;
  }
}
header .header .header-left a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  header .header .header-left a .logo {
    width: 155px;
  }
}
header .header .header-left a .logo-anniversary {
  margin-left: 30px;
}
@media only screen and (max-width: 834px) {
  header .header .header-left a .logo-anniversary {
    width: 46px;
    margin-left: 20px;
  }
}
header .header .header-right {
  width: 80%;
  height: 100%;
}
@media only screen and (max-width: 1180px) {
  header .header .header-right {
    width: auto;
    height: auto;
    z-index: 12;
  }
}
header .header .header-right nav {
  height: 100%;
}
@media only screen and (max-width: 1180px) {
  header .header .header-right nav {
    display: none;
  }
}
header .header .header-right nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
}
header .header .header-right nav ul li + li {
  margin-left: 2.5%;
}
header .header .header-right nav ul li a {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .header .header-right nav ul li a:hover::after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
header .header .header-right nav ul li a::after {
  opacity: 0;
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 8;
  width: 0px;
  height: 2px;
  background-color: #0b57a7;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
header .header .header-right nav ul li a.active::after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
header .header .header-right nav ul li a span {
  margin-right: 6px;
}

.active-mn-01 .mn-01::after,
.active-mn-02 .mn-02::after,
.active-mn-03 .mn-03::after,
.active-mn-04 .mn-04::after,
.active-mn-05 .mn-05::after,
.active-mn-06 .mn-06::after,
.active-mn-07 .mn-07::after {
  opacity: 1 !important;
  width: 100% !important;
}

.dropdown-content-01.active,
.dropdown-content-03.active,
.dropdown-content-04.active,
.dropdown-content-05.active {
  opacity: 1 !important;
  visibility: visible !important;
}

.dropdown {
  opacity: 0;
  visibility: hidden;
  width: 94%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 11;
  margin-left: auto;
  margin-right: auto;
  padding-top: 80px;
  background-color: #3e3e3e;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 1180px) {
  .dropdown {
    display: none;
  }
}
.dropdown .left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 19%;
  padding: 10px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  font-weight: 400;
  text-align: center;
  color: #fff;
  background-color: #3e3e3e;
  white-space: nowrap;
}
@media only screen and (max-width: 1080px) {
  .dropdown .left {
    width: 20%;
  }
}
.dropdown .left a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 1px solid #616161;
}
.dropdown .left a:hover {
  opacity: 1;
  background-color: #fff;
}
.dropdown .left a:hover .ttl {
  color: #3e3e3e;
}
.dropdown .left a .ttl {
  color: #fff;
}
.dropdown .left a .ttl span {
  display: block;
  margin-top: 15px;
  font-size: 1.3rem;
  line-height: 1.3rem;
  text-transform: uppercase;
}
.dropdown .right {
  width: 81%;
  padding: 55px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1080px) {
  .dropdown .right {
    width: 80%;
  }
}
.dropdown .right ul.list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 40px;
}
@media only screen and (max-width: 1080px) {
  .dropdown .right ul.list {
    width: 80%;
  }
}
.dropdown .right ul.list.col4-v {
  width: 80%;
  max-width: 876px;
}
.dropdown .right ul.list.col4 {
  max-width: 1148px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -3%;
  margin-top: -2%;
}
@media only screen and (max-width: 1080px) {
  .dropdown .right ul.list.col4 {
    width: 100%;
  }
}
.dropdown .right ul.list.col4 li {
  width: 22%;
  margin-left: 3%;
  margin-top: 2%;
}
.dropdown .right ul.list.col4 li a {
  display: block;
}
.dropdown .right ul.list.col4 li a .cover img {
  width: 100%;
  height: auto;
}
.dropdown .right ul.list.col5 {
  max-width: 1080px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -2%;
  margin-top: -2%;
}
@media only screen and (max-width: 1080px) {
  .dropdown .right ul.list.col5 {
    width: 100%;
  }
}
.dropdown .right ul.list.col5 li {
  width: 18%;
  margin-left: 2%;
  margin-top: 2%;
}
.dropdown .right ul.list.col5 li a .cover img {
  width: 100%;
  height: auto;
}
.dropdown .right ul.list.col5 li.border a {
  width: 100%;
  display: table;
  padding: 7px 0;
  text-align: center;
  border: 1px solid #616161;
}
.dropdown .right ul.list.col5 li.border a:hover {
  opacity: 0.8;
}
.dropdown .right ul.list.col5 li.w60 {
  width: 58%;
}
.dropdown .right ul.list li + li {
  margin-left: 25px;
}
.dropdown .right ul.list li a {
  display: block;
  font-size: 1.3rem;
  line-height: 2rem;
  color: #fff;
}
.dropdown .right ul.list li a .cover {
  overflow: hidden;
  margin-bottom: 8px;
}
.dropdown .right ul.list li a .cover img {
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
.dropdown .right ul.list li a:hover {
  opacity: 1;
}
.dropdown .right ul.list li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.dropdown .right ul.dot {
  position: relative;
  padding-left: 40px;
  padding-right: 40px;
  width: 20%;
  min-width: 150px;
}
.dropdown .right ul.dot::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
  width: 1px;
  height: 88%;
  background-color: #616161;
}
.dropdown .right ul.dot li {
  margin-top: -10px;
  margin-left: 16px;
  list-style: disc;
  color: #fff;
}
.dropdown .right ul.dot li.topic {
  margin-top: 0;
  margin-bottom: 25px;
  margin-left: 0;
  list-style: none;
}
.dropdown .right ul.dot li.topic a .cover {
  margin-bottom: 7px;
}
.dropdown .right ul.dot li a {
  display: block;
  font-size: 1.3rem;
  line-height: 2rem;
  color: #fff;
}

.menu-responsive {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 11;
  background-color: #3e3e3e;
  width: 100%;
  height: 100%;
  padding-top: 66px;
  padding-bottom: 30px;
  padding-left: 4%;
  padding-right: 4%;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  overflow-y: auto;
}
.menu-responsive.active {
  opacity: 1;
  visibility: visible;
}
.menu-responsive nav ul {
  border-bottom: 1px solid #616161;
}
.menu-responsive nav ul li {
  border-top: 1px solid #616161;
}
.menu-responsive nav ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.6rem;
  line-height: 2.6rem;
  color: #fff;
  padding-left: 10px;
  padding-right: 20px;
  padding-top: 22px;
  padding-bottom: 22px;
  background-image: url("/assets/images/commons/menu-sp-arrow.svg");
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 8px 11px;
}
.menu-responsive nav ul li a span {
  margin-right: 5px;
}
.menu-responsive nav ul li a.toggle-btn {
  background-image: url("/assets/images/commons/menu-sp-toggle-open.svg");
  background-size: 12px;
}
.menu-responsive nav ul li a.toggle-btn.active {
  background-image: url("/assets/images/commons/menu-sp-toggle-close.svg");
}
.menu-responsive nav ul li .toggle-content {
  display: none;
  padding: 0 20px 20px 20px;
}
.menu-responsive nav ul li .toggle-content li a {
  font-size: 1.3rem;
  line-height: 1.3rem;
}
.menu-responsive .btn-box {
  margin-top: 60px;
}
.menu-responsive .btn-box .btn-close-menu {
  width: 100%;
  height: 52px;
  color: #616161;
  background-color: #fff;
}
.menu-responsive .btn-box .btn-close-menu span {
  margin-right: 8px;
}

.btn-burger {
  display: none;
}
@media only screen and (max-width: 1180px) {
  .btn-burger {
    display: block;
  }
}

.bar-icon {
  position: relative;
}
.bar-icon:hover {
  opacity: 1;
}
.bar-icon .bar1, .bar-icon .bar2, .bar-icon .bar3 {
  width: 35px;
  height: 3px;
  background-color: #0b57a7;
  margin: 9px 0;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.open .bar1 {
  background-color: #fff;
  -webkit-transform: rotate(-45deg) translate(-9px, 9px);
  transform: rotate(-45deg) translate(-9px, 9px);
}
.open .bar2 {
  opacity: 0;
  background-color: #fff;
}
.open .bar3 {
  background-color: #fff;
  -webkit-transform: rotate(45deg) translate(-7px, -8px);
  transform: rotate(45deg) translate(-7px, -8px);
}

/* Wrapper */
#wrapper {
  position: relative;
}
@media only screen and (max-width: 834px) {
  #wrapper {
    padding-top: 66px;
  }
}
#wrapper #mask {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.page-inner #wrapper {
  padding-top: 80px;
}
@media only screen and (max-width: 834px) {
  .page-inner #wrapper {
    padding-top: 66px;
  }
}

/* Main */
.content-1440 {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.content-1360 {
  width: 100%;
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
}

.content-1280 {
  width: 94%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-1280 {
    width: 88%;
  }
}
.content-1280 .txt-area {
  background-color: rgb(229, 228, 228);
  padding: 30px;
  margin: 20px;
}
.content-1280 .txt-area_inner {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.content-1280 .graph {
  margin-top: 50px;
}
.content-1280 .graph img {
  width: 800px;
  margin: 0 auto;
}

.content-1200 {
  width: 94%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-1200 {
    width: 88%;
  }
}

.content-1123 {
  width: 94%;
  max-width: 1123px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-1123 {
    width: 88%;
  }
}

.content-1080 {
  width: 94%;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-1080 {
    width: 88%;
  }
}

.content-1000 {
  width: 94%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-1000 {
    width: 88%;
  }
}

.content-800 {
  width: 94%;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  .content-800 {
    width: 88%;
  }
}

.pad60160 {
  padding-top: 60px;
  padding-bottom: 160px;
}
@media only screen and (max-width: 834px) {
  .pad60160 {
    padding-bottom: 60px;
  }
}

.pad80 {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media only screen and (max-width: 834px) {
  .pad80 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 750px) {
  .pad80 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

.pad80120 {
  padding-top: 80px;
  padding-bottom: 120px;
}
@media only screen and (max-width: 834px) {
  .pad80120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.pb100 {
  padding-bottom: 100px;
}
@media only screen and (max-width: 834px) {
  .pb100 {
    padding-bottom: 60px;
  }
}

.pb120 {
  padding-bottom: 120px !important;
}
@media only screen and (max-width: 834px) {
  .pb120 {
    padding-bottom: 60px !important;
  }
}

.pad100 {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 834px) {
  .pad100 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.pad100160 {
  padding-top: 100px;
  padding-bottom: 160px;
}
@media only screen and (max-width: 834px) {
  .pad100160 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.pad120 {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media only screen and (max-width: 834px) {
  .pad120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.pad12040 {
  padding-top: 120px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 834px) {
  .pad12040 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.pad120160 {
  padding-top: 120px;
  padding-bottom: 160px;
}
@media only screen and (max-width: 834px) {
  .pad120160 {
    padding-top: 60px;
    padding-bottom: 80px;
  }
}

.padb120 {
  padding-bottom: 120px;
}
@media only screen and (max-width: 834px) {
  .padb120 {
    padding-bottom: 60px;
  }
}

.pdt20-pc {
  padding-top: 20px;
}
@media only screen and (max-width: 834px) {
  .pdt20-pc {
    padding-top: 0;
  }
}

.txthead-box .fz56 {
  font-family: "Noto Serif JP", serif;
  font-size: 5.6rem;
  line-height: 6.6rem;
  color: #003d7e;
}
@media only screen and (max-width: 834px) {
  .txthead-box .fz56 {
    font-size: 3.6rem;
    line-height: 4.6rem;
  }
}
@media only screen and (max-width: 400px) {
  .txthead-box .fz56 {
    font-size: 3.3rem;
    line-height: 4.3rem;
  }
}
.txthead-box .fz56 span {
  font-size: 4rem;
  line-height: 4rem;
}
@media only screen and (max-width: 834px) {
  .txthead-box .fz56 span {
    font-size: 2.2rem;
    line-height: 2.2rem;
  }
}
@media only screen and (max-width: 400px) {
  .txthead-box .fz56 span {
    font-size: 2rem;
    line-height: 2rem;
  }
}
.txthead-box .fz32-en-underline {
  display: table;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  font-family: "Baskervville", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #003d7e;
  text-align: center;
  padding: 0 6px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 750px) {
  .txthead-box .fz32-en-underline {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
.txthead-box .fz32-en-underline::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 3px;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 16px;
  background-image: url("/assets/images/commons/txthead-bg-opacity.png");
  background-repeat: repeat;
  background-position: top center;
  background-size: 4px;
}
@media only screen and (max-width: 750px) {
  .txthead-box .fz32-en-underline::after {
    height: 8px;
  }
}
.txthead-box .fz32-en-underline.white {
  color: #fff;
}
.txthead-box .fz32-en-underline span {
  position: relative;
  z-index: 9;
}
.txthead-box .fz32-en-underline span.small {
  font-size: 2rem;
  line-height: 3rem;
}
@media only screen and (max-width: 750px) {
  .txthead-box .fz32-en-underline span.small {
    font-size: 1rem;
    line-height: 2rem;
  }
}
.txthead-box .en {
  font-family: "Baskervville", serif;
  color: #003d7e;
  margin-top: 10px;
}
@media only screen and (max-width: 834px) {
  .txthead-box .en {
    font-size: 1.3rem;
    line-height: 1.3rem;
    margin-top: 5px;
  }
}
.txthead-box.center {
  text-align: center;
}
.txthead-box.mb20 {
  margin-bottom: 20px;
}

.btn-box.mt30 {
  margin-top: 30px;
}
.btn-box.mt40 {
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  .btn-box.mt40 {
    margin-top: 30px;
  }
}

.btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 56px;
}
@media only screen and (max-width: 834px) {
  .btn {
    height: 42px;
  }
}
.btn.big {
  font-size: 2rem;
  line-height: 3rem;
  height: 72px;
}
@media only screen and (max-width: 834px) {
  .btn.big {
    font-size: 1.6rem;
    line-height: 2rem;
    height: 63px;
  }
}
.btn.blue {
  color: #fff;
  background-color: #0b57a7;
}
.btn.blue-light {
  color: #fff;
  background-color: #0078dd;
}
.btn.border-white {
  color: #fff;
  border: 2px solid rgba(255, 255, 255, 0.5);
}
.btn.btn-arrow-left-white {
  background-image: url("/assets/images/commons/arrow-left-white.svg");
  background-repeat: no-repeat;
  background-position: center left 16px;
  background-size: 6px 10px;
}
.btn.btn-arrow-right-white {
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 6px 10px;
}
.btn.btn-arrow-down-white {
  background-image: url("/assets/images/commons/arrow-down-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 10px 6px;
}
.btn.btn-arrow-center-up {
  background-image: url("/assets/images/commons/arrow-up-white.svg");
  background-repeat: no-repeat;
  background-position: center top 15px;
  background-size: 10px 6px;
  padding-top: 10px;
}
@media only screen and (max-width: 750px) {
  .btn.btn-arrow-center-up {
    background-position: center top 10px;
  }
}
.btn.btn-icon-left span {
  margin-right: 10px;
}
.btn.btn-line-left {
  position: relative;
}
.btn.btn-line-left::before {
  content: "";
  position: absolute;
  left: 30px;
  top: 0;
  bottom: 0;
  display: block;
  width: 50px;
  height: 1px;
  background-color: #fff;
  margin-top: auto;
  margin-bottom: auto;
}
@media only screen and (max-width: 750px) {
  .btn.btn-line-left::before {
    display: none;
    left: 20px;
    width: 35px;
  }
}
.btn.btn-100 {
  width: 100%;
}
.btn.btn-280 {
  width: 100%;
  max-width: 280px;
}
.btn.btn-400 {
  width: 100%;
  max-width: 400px;
}
.btn.center {
  margin-left: auto;
  margin-right: auto;
}
.btn.text-left {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.btn.active {
  pointer-events: none;
  opacity: 0.5;
}

/* MV */
#mv {
  overflow: hidden;
}
#mv .mv {
  position: relative;
}
#mv .mv .mv-ttl {
  position: absolute;
  top: 25%;
  left: 10%;
  z-index: 8;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-ttl {
    top: 11%;
    left: 5%;
  }
}
#mv .mv .mv-ttl h1 {
  font-family: "Noto Serif JP", serif;
  font-size: 5.6rem;
  line-height: 8.6rem;
  color: #fff;
  text-shadow: 0px 1px 6px rgba(0, 0, 0, 0.3);
  white-space: nowrap;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-ttl h1 {
    font-size: 3.8rem;
    line-height: 6rem;
  }
}
@media only screen and (max-width: 400px) {
  #mv .mv .mv-ttl h1 {
    font-size: 3.4rem;
    line-height: 5.6rem;
  }
}
#mv .mv .mv-ttl h1 span {
  margin-right: -20px;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-ttl h1 span {
    margin-right: -13px;
  }
}
#mv .mv .banner-smile {
  padding: 15px 0;
}
#mv .mv .mv-news {
  width: 55%;
  max-width: 880px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 8;
  background-image: url("/assets/images/top/mv-news-bg-pattern.jpg");
  background-repeat: repeat;
  background-position: top left;
  background-size: 4px;
  padding: 15px 15px 15px 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1440px) {
  #mv .mv .mv-news {
    width: 50%;
  }
}
@media only screen and (max-width: 1080px) {
  #mv .mv .mv-news {
    width: 100%;
    max-width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 1080px) {
  #mv .mv .mv-news {
    position: static;
    padding: 5% 5% 4% 5%;
  }
}
#mv .mv .mv-news .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#mv .mv .mv-news .ttl h2 {
  font-family: "Baskervville", serif;
  font-size: 2.2rem;
  line-height: 2.2rem;
  font-weight: bold;
  letter-spacing: 2px;
  color: #003d7e;
  margin-right: 25px;
  padding-right: 25px;
  position: relative;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-news .ttl h2 {
    margin-right: 10px;
    padding-right: 10px;
  }
}
#mv .mv .mv-news .ttl h2::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  height: 16px;
  margin: auto 0;
  background-color: #003d7e;
}
#mv .mv .mv-news .ttl .datetag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#mv .mv .mv-news .ttl .datetag .date {
  min-width: 110px;
  font-size: 1.6rem;
  line-height: 1.6rem;
}
#mv .mv .mv-news .ttl .datetag .tag {
  min-width: 80px;
  font-size: 1.3rem;
  line-height: 1.3rem;
  color: #fff;
  background-color: #1671b4;
  padding: 3px 12px 2px 12px;
}
#mv .mv .mv-news .content {
  width: 100%;
  padding-left: 25px;
}
#mv .mv .mv-news .content a {
  padding-right: 25px;
  background-image: url("/assets/images/commons/arrow-right-blue.svg");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 6px 10px;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-news .content {
    padding-left: 0;
    padding-right: 0;
    margin-top: 10px;
  }
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-news .content {
    background-position: right center;
  }
}
#mv .mv .mv-slick-rea {
  position: relative;
}
#mv .mv .mv-slick-rea .mv-banner {
  width: 42.5%;
  max-width: 764px;
  position: absolute;
  bottom: 15px;
  right: 15px;
  z-index: 8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media only screen and (max-width: 1440px) {
  #mv .mv .mv-slick-rea .mv-banner {
    width: 47.5%;
  }
}
@media only screen and (max-width: 1080px) {
  #mv .mv .mv-slick-rea .mv-banner {
    width: 100%;
    max-width: 600px;
  }
}
@media only screen and (max-width: 750px) {
  #mv .mv .mv-slick-rea .mv-banner {
    width: auto;
    max-width: auto;
    bottom: 6px;
    right: 6px;
  }
}
#mv .mv .mv-slick-rea .mv-banner .banner-smile {
  margin-right: 18px;
}
@media only screen and (max-width: 1366px) {
  #mv .mv .mv-slick-rea .mv-banner .banner-smile {
    max-width: 300px;
  }
}
#mv .mv .mv-slick-rea .mv-banner .banner-news a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 128px;
  height: 128px;
  padding-bottom: 10px;
  background-color: #fff;
  background-image: url("/assets/images/commons/arrow-down-blue.svg"), url("/assets/images/top/mv-news-bg.svg");
  background-repeat: no-repeat;
  background-position: bottom 30px center, center;
  background-size: 10px 6px, 128px;
  border-radius: 100%;
  font-size: 1.6rem;
  line-height: 1.6rem;
  font-weight: 600;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-slick-rea .mv-banner .banner-news a {
    width: 102px;
    height: 102px;
    font-size: 1rem;
    line-height: 1.2rem;
    background-position: bottom 24px center, center;
    background-size: 10px 6px, 102px;
  }
}
@media only screen and (max-width: 750px) {
  #mv .mv .mv-slick-rea .mv-banner .banner-news a {
    width: 74px;
    height: 74px;
    font-size: 0.8rem;
    line-height: 1rem;
    background-position: bottom 15px center, center;
    background-size: 10px 6px, 74px;
  }
}
#mv .mv .mv-slick-rea .mv-banner .banner-howto a {
  display: block;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-slick-rea .mv-banner .banner-howto {
    width: 170px;
  }
}
@media only screen and (max-width: 750px) {
  #mv .mv .mv-slick-rea .mv-banner .banner-howto {
    width: 120px;
  }
}
#mv .mv .mv-slick-rea .mv-slick .slick-slide > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#mv .mv .mv-slick-rea .mv-slick .item img {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 834px) {
  #mv .mv .mv-slick-rea .mv-slick .item img {
    height: auto;
  }
}

/* MV Inner */
#mv-inner .mv-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 220px;
}
@media only screen and (max-width: 750px) {
  #mv-inner .mv-inner {
    height: 160px;
  }
}
#mv-inner .mv-inner.h-auto {
  height: auto;
  padding-top: 80px;
}
@media only screen and (max-width: 750px) {
  #mv-inner .mv-inner.h-auto {
    padding-top: 40px;
  }
}
#mv-inner .mv-inner .text h1 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  font-weight: 600;
  text-align: center;
}
#mv-inner .mv-inner .text p {
  margin-top: 10px;
  font-family: "Baskervville", serif;
  font-size: 1.3rem;
  line-height: 1.3rem;
  color: #0b57a7;
  text-align: center;
  text-transform: uppercase;
}
#mv-inner.history {
  background-image: url("/assets/images/company/history/intro-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#mv-inner.history .mv-inner {
  display: block;
  background-image: url("/assets/images/company/history/intro-circle.png");
  background-repeat: no-repeat;
  background-position: top 100px center;
  background-size: 440px;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner {
    background-size: 58%;
    background-position: top 23% center;
  }
}
#mv-inner.history .mv-inner .text h1 {
  color: #fff;
}
#mv-inner.history .mv-inner .text p {
  color: #fff;
}
#mv-inner.history .mv-inner .text h2 {
  margin-top: 70px;
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 6.8rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .text h2 {
    margin-top: 6%;
    font-size: 3rem;
    line-height: 5rem;
  }
}
#mv-inner.history .mv-inner .button {
  margin-top: 200px;
  padding: 25px 0;
  background-color: rgba(0, 0, 0, 0.5);
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button {
    margin-top: 125px;
    padding: 15px 0;
  }
}
#mv-inner.history .mv-inner .button ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
#mv-inner.history .mv-inner .button ul li {
  width: 33.33%;
  padding: 0 8px;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button ul li {
    width: 50%;
    padding: 5px;
  }
}
#mv-inner.history .mv-inner .button ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 88px;
  padding-bottom: 14px;
  border: 1px solid #fff;
  background-image: url("/assets/images/commons/arrow-down-white.svg");
  background-repeat: no-repeat;
  background-position: center bottom 12px;
  background-size: 10px 7px;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button ul li a {
    height: 78px;
  }
}
#mv-inner.history .mv-inner .button ul li a p {
  font-size: 1.3rem;
  line-height: 2.2rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button ul li a p {
    font-size: 1rem;
    line-height: 2rem;
  }
}
#mv-inner.history .mv-inner .button ul li a p span {
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
}
@media only screen and (max-width: 750px) {
  #mv-inner.history .mv-inner .button ul li a p span {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}

/* Submn SP */
#submn-sp {
  display: none;
}
@media only screen and (max-width: 750px) {
  #submn-sp {
    display: block;
  }
}
#submn-sp .submn-sp {
  padding: 15px 4%;
  overflow: auto;
  -ms-overflow-style: none; /* for Internet Explorer, Edge */
  scrollbar-width: none; /* for Firefox */
  overflow-y: scroll;
}
#submn-sp .submn-sp::-webkit-scrollbar {
  display: none; /* for Chrome, Safari, and Opera */
}
#submn-sp .submn-sp ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#submn-sp .submn-sp ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#submn-sp .submn-sp ul li::after {
  content: "";
  display: inline-block;
  width: 8px;
}
#submn-sp .submn-sp ul li:last-child::after {
  width: 15px;
}
#submn-sp .submn-sp ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  font-size: 1.3rem;
  line-height: 1.3rem;
  white-space: nowrap;
  color: #0756aa;
  border: 1px solid #0756aa;
  background-color: #fff;
  border-radius: 28px;
}
#submn-sp .submn-sp ul li a.active {
  color: #fff;
  background-color: #0756aa;
}
#submn-sp .submn-sp ul li a span.icon {
  min-width: 12px;
  margin-right: 5px;
}

/* Breadcrumb */
#breadcrumb {
  position: relative;
  z-index: 8;
  padding: 12px 0;
  background-color: #f8f8f8;
}
#breadcrumb.short {
  display: table;
  margin-left: 3%;
}
@media only screen and (max-width: 1180px) {
  #breadcrumb.short {
    margin-left: 0;
    width: 100%;
  }
}
#breadcrumb.short .breadcrumb {
  width: auto;
}
@media only screen and (max-width: 1180px) {
  #breadcrumb.short .breadcrumb {
    width: 94%;
  }
}
@media only screen and (max-width: 834px) {
  #breadcrumb.short .breadcrumb {
    width: 100%;
  }
}
#breadcrumb .breadcrumb {
  width: 94%;
  margin: 0 auto;
  padding: 0 40px;
}
@media only screen and (max-width: 834px) {
  #breadcrumb .breadcrumb {
    width: 100%;
    min-width: auto;
    padding: 0 4%;
  }
}
@media only screen and (max-width: 750px) {
  #breadcrumb .breadcrumb {
    overflow: auto;
  }
}
#breadcrumb .breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 750px) {
  #breadcrumb .breadcrumb ul {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
#breadcrumb .breadcrumb ul li {
  font-size: 1.3rem;
  line-height: 2rem;
  position: relative;
}
#breadcrumb .breadcrumb ul li + li {
  margin-left: 15px;
  padding-left: 19px;
}
#breadcrumb .breadcrumb ul li + li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  z-index: 8;
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 100%;
  background-color: #939393;
}
#breadcrumb .breadcrumb ul li a {
  color: #808080;
}

/* Intro */
#intro {
  overflow: hidden;
  background: rgb(208, 236, 254);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgb(208, 236, 254)), color-stop(100%, rgb(255, 255, 255)));
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(208, 236, 254)), to(rgb(255, 255, 255)));
  background: linear-gradient(to bottom, rgb(208, 236, 254) 0%, rgb(255, 255, 255) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#d0ecfe", endColorstr="#ffffff", GradientType=0 );
}
#intro .intro-bg {
  background-image: url("/assets/images/top/intro-bg.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 1920px;
}
#intro .intro-bg .intro .content .ttl h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content .ttl h2 {
    font-size: 2.6rem;
    line-height: 4rem;
  }
}
#intro .intro-bg .intro .content p {
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content p {
    text-align: left;
    margin-top: 20px;
    margin-bottom: 25px;
  }
}
#intro .intro-bg .intro .content-slick {
  width: 100%;
  max-width: 1120px;
  margin-top: 7%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 750px) {
  #intro .intro-bg .intro .content-slick {
    width: 97%;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn {
  margin-bottom: 2px;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick-btn {
    display: none;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .slick-track {
  min-width: 1120px;
  -webkit-transform: translate3d(0, 0, 0) !important;
  transform: translate3d(0, 0, 0) !important;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item {
  position: relative;
  padding: 0 1px;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
  width: 0;
  height: 4px;
  background-color: #7fbeef;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 116px;
  padding: 0 0 0 24px;
  background-image: url("/assets/images/top/intro-btn-bg-repeat.png");
  background-repeat: repeat;
  background-position: top left;
  background-size: 4px;
}
@media only screen and (max-width: 1080px) {
  #intro .intro-bg .intro .content-slick .intro-slick-btn .item a {
    padding: 0 0 0 14px;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .no {
  position: relative;
  min-width: 70px;
  padding-right: 15px;
}
@media only screen and (max-width: 1080px) {
  #intro .intro-bg .intro .content-slick .intro-slick-btn .item a .no {
    min-width: 50px;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .no p img {
  width: auto;
  max-height: 40px;
  min-height: 40px;
}
@media only screen and (max-width: 1080px) {
  #intro .intro-bg .intro .content-slick .intro-slick-btn .item a .no p img {
    max-height: 30px;
    min-height: 30px;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .no::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 8;
  width: 1px;
  height: 36px;
  background-color: #003d7e;
  margin: auto 0;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .text {
  padding-left: 22px;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .text p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  line-height: 3.4rem;
  font-weight: 300;
  color: #0b57a7;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  #intro .intro-bg .intro .content-slick .intro-slick-btn .item a .text p {
    font-size: 1.8rem;
    line-height: 3rem;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .item a .text p span {
  font-size: 1.8rem;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .slick-current .item::before {
  width: 100%;
  -webkit-animation: bar 5000ms ease-in-out;
  animation: bar 5000ms ease-in-out;
}
#intro .intro-bg .intro .content-slick .intro-slick-btn .slick-slide[tabindex="-1"] .item::before {
  width: 100%;
}
#intro .intro-bg .intro .content-slick .intro-slick .slick-current .item::before {
  width: 100%;
  -webkit-animation: bar 5000ms ease-in-out;
  animation: bar 5000ms ease-in-out;
}
#intro .intro-bg .intro .content-slick .intro-slick .item {
  position: relative;
  display: none;
}
#intro .intro-bg .intro .content-slick .intro-slick .item::before {
  display: none;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
  width: 0;
  height: 4px;
  background-color: #7fbeef;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item::before {
    display: block;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  background-color: #fff;
  background-image: url("/assets/images/top/intro-box-bg.png");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 1120px;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box {
    display: block;
    background-position: top -200px right -75px;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .left {
  width: 38.66%;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .left {
    width: 100%;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .left img {
  width: auto;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .left img {
    width: 100%;
    height: auto;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right {
  width: 61.34%;
  padding: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right {
    width: 100%;
    padding: 7.5% 7.5%;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 6rem;
  color: #0b57a7;
  margin-bottom: 25px;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 2.6rem;
    line-height: 3.6rem;
    margin-bottom: 30px;
    overflow: hidden;
    white-space: nowrap;
  }
}
@media only screen and (max-width: 750px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 {
    font-size: 2.2rem;
    line-height: 3.2rem;
    white-space: normal;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 span {
  display: none;
  position: relative;
  padding-right: 25px;
  margin-top: 8px;
  margin-right: 25px;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 span {
    padding-right: 15px;
    margin-right: 20px;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 span::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  z-index: 8;
  width: 1px;
  height: 100%;
  background-color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 span {
    display: block;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text h3 span img {
  width: 30px;
  min-width: 30px;
  height: auto;
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text p + p {
  margin-top: 25px;
}
#intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .right .text .btn-box {
  margin-top: 30px;
}
@media only screen and (max-width: 834px) {
  #intro .intro-bg .intro .content-slick .intro-slick .item .intro-box .btn-box {
    padding: 5% 0;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .slick-arrow {
  content: "";
  position: absolute;
  top: 45%;
  width: 5%;
  max-width: 5%;
  min-width: 5%;
  height: 46px;
  background-color: #0b57a7;
  font-size: 0;
  line-height: 0;
  color: transparent;
  z-index: 8;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 6px 10px;
}
@media only screen and (max-width: 750px) {
  #intro .intro-bg .intro .content-slick .intro-slick .slick-arrow {
    width: 7%;
    max-width: 7%;
    min-width: 7%;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .slick-prev {
  left: -5%;
  background-image: url("/assets/images/commons/arrow-left-white.svg");
}
@media only screen and (max-width: 750px) {
  #intro .intro-bg .intro .content-slick .intro-slick .slick-prev {
    left: -7%;
  }
}
#intro .intro-bg .intro .content-slick .intro-slick .slick-next {
  right: -5%;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
}
@media only screen and (max-width: 750px) {
  #intro .intro-bg .intro .content-slick .intro-slick .slick-next {
    right: -7%;
  }
}

@-webkit-keyframes bar {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
@keyframes bar {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
/* Business */
@media only screen and (max-width: 834px) {
  #business .business {
    width: 88%;
  }
}
#business .business .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  text-align: center;
  color: #0b57a7;
  padding: 0 5%;
}
@media only screen and (max-width: 834px) {
  #business .business .content h3 {
    padding: 0;
    font-size: 2.6rem;
    line-height: 3.8rem;
  }
}
#business .business .content .flex {
  margin-top: 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 834px) {
  #business .business .content .flex {
    display: block;
    margin-top: 20px;
  }
}
#business .business .content .flex .text {
  padding-left: 5%;
  padding-right: 40px;
}
@media only screen and (max-width: 834px) {
  #business .business .content .flex .text {
    padding-left: 0;
    padding-right: 0;
  }
}
#business .business .content .flex .text p + p {
  margin-top: 30px;
}
@media only screen and (max-width: 834px) {
  #business .business .content .flex .text p + p {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 834px) {
  #business .business .content .flex .img {
    margin-top: 25px;
  }
}
#business .business .content .flex .img img {
  width: 100%;
  height: auto;
}

/* Service */
#service {
  background-image: url("/assets/images/top/servicebrand-bg-repeat.jpg");
  background-repeat: repeat-x;
  background-position: top center;
  background-size: 4px;
}
@media only screen and (max-width: 834px) {
  #service .service {
    width: 100%;
  }
}
#service .service .txthead-box h2 {
  color: #fff;
}
#service .service .txthead-box p {
  color: #fff;
}
#service .service .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  text-align: center;
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #service .service .content h3 {
    font-size: 2.6rem;
    line-height: 3.8rem;
  }
}
#service .service .content .service-logo {
  display: none;
  width: 92%;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #service .service .content .service-logo {
    display: block !important;
    width: 88%;
    margin-top: 25px;
    margin-left: auto;
    margin-right: auto;
  }
}
#service .service .content .service-logo ul li {
  padding: 0 2%;
}
#service .service .content .service-logo ul li a {
  display: block;
}
#service .service .content .service-logo ul li a:active {
  opacity: 1;
}
#service .service .content .service-logo ul li a:active img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#service .service .content .service-logo ul li a .cover {
  overflow: hidden;
}
#service .service .content .service-logo ul li a .cover img {
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#service .service .content .service-logo ul li a .arrow {
  padding: 7px 0;
  background-color: #505050;
}
#service .service .content .service-logo ul li a .arrow img {
  margin-left: auto;
  margin-right: auto;
}
#service .service .content ul.service-slick {
  margin-top: 35px;
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick {
    margin-top: 20px;
    padding: 0 5%;
  }
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick {
    padding: 0 7%;
  }
}
#service .service .content ul.service-slick li {
  width: 33.33%;
  min-height: 754px;
  margin: 0 1px;
  padding: 0 11%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick li {
    margin: 0;
    min-height: 650px;
    padding: 0 10%;
    background-position: bottom center;
  }
}
#service .service .content ul.service-slick li.item01 {
  background-image: url("/assets/images/top/servicebrand-content-01-bg.jpg") !important;
}
#service .service .content ul.service-slick li.item02 {
  background-image: url("/assets/images/top/servicebrand-content-02-bg.jpg") !important;
}
#service .service .content ul.service-slick li.item03 {
  background-image: url("/assets/images/top/servicebrand-content-03-bg.jpg") !important;
}
#service .service .content ul.service-slick li.item03 a .ttl {
  padding-right: 30px;
}
#service .service .content ul.service-slick li a {
  display: block;
}
#service .service .content ul.service-slick li a:hover {
  opacity: 1;
}
#service .service .content ul.service-slick li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#service .service .content ul.service-slick li a .cover {
  overflow: hidden;
}
#service .service .content ul.service-slick li a .cover img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#service .service .content ul.service-slick li a .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 54px;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 300;
  color: #fff;
  text-align: center;
  background-color: #505050;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 6px 10px;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  #service .service .content ul.service-slick li a .ttl {
    font-size: 1.6rem;
    line-height: 2rem;
  }
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick li a .ttl {
    font-size: 1.1rem;
    line-height: 1.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #service .service .content ul.service-slick li a .ttl {
    font-size: 1.6rem;
    line-height: 2rem;
  }
}
#service .service .content ul.service-slick li p {
  margin-top: 25px;
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick li p {
    margin-top: 20px;
  }
}
#service .service .content ul.service-slick .slick-arrow {
  content: "";
  position: absolute;
  top: 172px;
  width: 32px;
  max-width: 32px;
  min-width: 32px;
  height: 56px;
  background-color: #0b57a7;
  font-size: 0;
  line-height: 0;
  color: transparent;
  z-index: 8;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 6px 10px;
}
@media only screen and (max-width: 834px) {
  #service .service .content ul.service-slick .slick-arrow {
    top: 127px;
    width: 5%;
    max-width: 5%;
    min-width: 5%;
    height: 46px;
  }
}
@media only screen and (max-width: 750px) {
  #service .service .content ul.service-slick .slick-arrow {
    width: 7%;
    max-width: 7%;
    min-width: 7%;
  }
}
#service .service .content ul.service-slick .slick-prev {
  left: 0;
  background-image: url("/assets/images/commons/arrow-left-white.svg");
}
#service .service .content ul.service-slick .slick-next {
  right: 0;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
}

/* Solution */
#solution {
  overflow: hidden;
  position: relative;
}
#solution .solution .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  text-align: center;
  color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #solution .solution .content h3 {
    font-size: 2.6rem;
    line-height: 3.8rem;
  }
}
#solution .solution-rea {
  margin-top: 35px;
  position: relative;
}
#solution .solution-rea .solution-slick {
  max-width: 1320px;
  position: static;
}
#solution .solution-rea .solution-slick .slick-list {
  overflow: visible;
}
#solution .solution-rea .solution-slick .item {
  padding: 0 20px;
}
@media only screen and (max-width: 834px) {
  #solution .solution-rea .solution-slick .item {
    padding: 0 15px;
  }
}
#solution .solution-rea .solution-slick .item a {
  display: block;
}
#solution .solution-rea .solution-slick .item a:hover {
  opacity: 1;
}
#solution .solution-rea .solution-slick .item a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#solution .solution-rea .solution-slick .item a .cover {
  overflow: hidden;
}
#solution .solution-rea .solution-slick .item a .cover img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#solution .solution-rea .solution-slick .item a .brief {
  margin-top: 25px;
}
#solution .solution-rea .solution-slick .item a .brief .tag {
  display: table;
  color: #fff;
  padding: 6px 20px 5px 20px;
}
#solution .solution-rea .solution-slick .item a .brief .tag.blue {
  background-color: #2689eb;
}
#solution .solution-rea .solution-slick .item a .brief .tag.blue-light {
  background-color: #37a3e6;
}
#solution .solution-rea .solution-slick .item a .brief .tag.green {
  background-color: #3c6a36;
}
#solution .solution-rea .solution-slick .item a .brief .tag.orange {
  background-color: #D97D00;
}
#solution .solution-rea .solution-slick .item a .brief .tag p {
  display: table;
  font-size: 1.3rem;
  line-height: 1.3rem;
}
#solution .solution-rea .solution-slick .item a .brief h4 {
  font-weight: 600;
  margin-top: 15px;
  margin-bottom: 5px;
}
@media only screen and (max-width: 834px) {
  #solution .solution-rea .solution-slick .item a .brief h4 {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
#solution .solution-rea .solution-slick .slick-arrow {
  content: "";
  position: absolute;
  top: 172px;
  width: 32px;
  max-width: 32px;
  min-width: 32px;
  height: 56px;
  background-color: #0b57a7;
  font-size: 0;
  line-height: 0;
  color: transparent;
  z-index: 8;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 6px 10px;
}
@media only screen and (max-width: 834px) {
  #solution .solution-rea .solution-slick .slick-arrow {
    top: 127px;
    width: 5%;
    max-width: 5%;
    min-width: 5%;
    height: 46px;
  }
}
#solution .solution-rea .solution-slick .slick-prev {
  left: 0;
  background-image: url("/assets/images/commons/arrow-left-white.svg");
}
#solution .solution-rea .solution-slick .slick-next {
  right: 0;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
}

/* Sustain */
#sustain {
  background-image: url("/assets/images/top/sustain-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (max-width: 834px) {
  #sustain {
    background-image: url("/assets/images/top/sustain-bg-sp.jpg");
    background-position: top center;
  }
}
#sustain .sustain .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex {
    display: block;
  }
}
#sustain .sustain .flex .col-left {
  width: 45.32%;
  padding-top: 3%;
  padding-left: 6%;
  padding-right: 2%;
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex .col-left {
    padding-top: 0;
    padding-left: 5%;
    padding-right: 0;
  }
}
@media only screen and (max-width: 750px) {
  #sustain .sustain .flex .col-left {
    width: 100%;
  }
}
#sustain .sustain .flex .col-left .txthead-box h2 {
  color: #fff;
}
#sustain .sustain .flex .col-left .txthead-box p {
  color: #fff;
}
#sustain .sustain .flex .col-right {
  width: 54.68%;
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex .col-right {
    width: 100%;
    margin-top: 30px;
  }
}
#sustain .sustain .flex .col-right .box {
  padding: 4% 6% 5% 6%;
  background-color: rgba(255, 255, 255, 0.9);
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex .col-right .box {
    padding: 5%;
  }
}
#sustain .sustain .flex .col-right .box h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  color: #0b57a7;
  margin-bottom: 30px;
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex .col-right .box h3 {
    font-size: 2.6rem;
    line-height: 3.8rem;
    margin-bottom: 20px;
  }
}
#sustain .sustain .flex .col-right .box p + p {
  margin-top: 25px;
}
@media only screen and (max-width: 834px) {
  #sustain .sustain .flex .col-right .box p + p {
    margin-top: 15px;
  }
}

/* News */
#news-top .news .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  text-align: center;
  color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #news-top .news .content h3 {
    font-size: 2.6rem;
    line-height: 3.8rem;
  }
}
#news-top .news .content .news-list {
  width: 100%;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 35px;
}
#news-top .news .content .news-list ul li + li {
  margin-top: 8px;
}
#news-top .news .content .news-list ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url("/assets/images/commons/arrow-right-blue.svg"), url("/assets/images/commons/bg-repeat-grey.png");
  background-repeat: no-repeat, repeat;
  background-position: center right 16px, top left;
  background-size: 6px 10px, 4px;
  padding: 16px 40px 16px 20px;
}
@media only screen and (max-width: 834px) {
  #news-top .news .content .news-list ul li a {
    display: block;
    padding: 15px;
  }
}
#news-top .news .content .news-list ul li a .datetag {
  min-width: 225px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#news-top .news .content .news-list ul li a .datetag .date {
  min-width: 100px;
  font-size: 1.3rem;
  line-height: 1.3rem;
}
#news-top .news .content .news-list ul li a .datetag .tag {
  min-width: 120px;
  font-size: 1rem;
  line-height: 1rem;
  color: #fff;
  background-color: #1671b4;
  padding: 3px 12px 2px 12px;
  text-align: center;
}
#news-top .news .content .news-list ul li a .datetag .tag.blue {
  background-color: #1671b4;
}
#news-top .news .content .news-list ul li a .datetag .tag.grey {
  background-color: #808080;
}
#news-top .news .content .news-list ul li a .datetag .tag.yellow {
  background-color: #a57f00;
}
#news-top .news .content .news-list ul li a .datetag .tag.green {
  background-color: #4F9821;
}
#news-top .news .content .news-list ul li a .datetag .tag.orange {
  background-color: #DE6106;
}
#news-top .news .content .news-list ul li a .datetag .tag.cyan {
  background-color: #08A4B9;
}
#news-top .news .content .news-list ul li a .datetag .tag.purple {
  background-color: #5B57B7;
}
#news-top .news .content .news-list ul li a .datetag .tag.indigo {
  background-color: #08A4B9;
}
#news-top .news .content .news-list ul li a h2 {
  width: 100%;
  padding-left: 20px;
}
@media only screen and (max-width: 834px) {
  #news-top .news .content .news-list ul li a h2 {
    margin-top: 5px;
    padding-left: 0;
    padding-right: 20px;
  }
}
#news-top .news .content .news-list ul li a h2 span.new {
  display: inline-table;
  width: 40px;
  margin-left: 5px;
  padding: 3px 0 2px 0;
  font-size: 1rem;
  line-height: 1rem;
  color: #de0000;
  border: 1px solid #de0000;
  text-align: center;
}

/* Recruit */
#recruit {
  background-image: url("/assets/images/top/recruit-bg.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
}
@media only screen and (max-width: 834px) {
  #recruit {
    background-image: url("/assets/images/top/recruit-bg-sp.jpg");
    background-position: bottom center;
  }
}
#recruit .recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit {
    display: block;
    width: 100%;
  }
}
#recruit .recruit .col-left {
  width: 47.22%;
  padding-left: 5.2%;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-left {
    display: none;
  }
}
#recruit .recruit .col-left img {
  width: 100%;
  height: auto;
}
#recruit .recruit .col-right {
  width: 52.78%;
  padding-left: 5.2%;
  padding-right: 5.2%;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}
#recruit .recruit .col-right .txthead-box h2 {
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .txthead-box h2 {
    text-align: center;
  }
}
#recruit .recruit .col-right .txthead-box p {
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .txthead-box p {
    text-align: center;
  }
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .content {
    margin-top: 35px;
  }
}
#recruit .recruit .col-right .content .img-sp {
  display: none;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .content .img-sp {
    display: block;
  }
}
#recruit .recruit .col-right .content .img-sp img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .content .text {
    width: 88%;
    margin-left: auto;
    margin-right: auto;
  }
}
#recruit .recruit .col-right .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  color: #fff;
  margin-bottom: 30px;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .content h3 {
    font-size: 2.6rem;
    line-height: 3.8rem;
    text-align: center;
    margin-top: 25px;
    margin-bottom: 20px;
  }
}
#recruit .recruit .col-right .content p {
  color: #fff;
}
#recruit .recruit .col-right .content p + p {
  margin-top: 25px;
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .content p + p {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .btn-box {
    width: 88%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 834px) {
  #recruit .recruit .col-right .btn-box a {
    margin-left: auto;
    margin-right: auto;
  }
}

/* Contact */
#contact .contact .content {
  padding: 3%;
  background-image: url("/assets/images/commons/bg-repeat-grey.png");
  background-repeat: repeat;
  background-position: top left;
  background-size: 4px;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content {
    padding: 7.5% 2.5%;
  }
}
#contact .contact .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  line-height: 3.9rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content h3 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#contact .contact .content .row-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  max-width: 432px;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-tel {
    margin-top: 20px;
  }
}
#contact .contact .content .row-tel .left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 120px;
  min-width: 120px;
  min-height: 120px;
  border: 1px solid #0b57a7;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-tel .left {
    width: 60px;
    min-width: 60px;
    min-height: auto;
    background-color: #0b57a7;
  }
}
#contact .contact .content .row-tel .left p {
  color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-tel .left p {
    color: #fff;
  }
}
#contact .contact .content .row-tel .right {
  width: 100%;
  padding-left: 8px;
}
#contact .contact .content .row-tel .right ul {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
#contact .contact .content .row-tel .right ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 13px 0 13px 20px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-tel .right ul li {
    padding: 13px 13px 13px 13px;
  }
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-tel .right ul li + li {
    margin-top: 8px;
  }
}
#contact .contact .content .row-tel .right ul li span:first-child {
  width: 28px;
  margin-right: 13px;
}
#contact .contact .content .row-tel .right ul li span img {
  display: table;
  margin-left: auto;
  margin-right: auto;
}
#contact .contact .content .row-button {
  width: 100%;
  max-width: 580px;
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
}
#contact .contact .content .row-button ul li + li {
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  #contact .contact .content .row-button ul li + li {
    margin-top: 10px;
  }
}
#contact .contact .content .row-button ul li a.text-left span {
  margin-right: 20px;
}

/* Tag Search */
.tag-search {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  right: -480px;
  z-index: 12;
  width: 90%;
  max-width: 480px;
  height: 100vh;
  padding: 20px 40px;
  color: #fff;
  background-color: #3E3E3E;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
.tag-search.active {
  opacity: 1;
  visibility: visible;
  right: 0;
}
@media only screen and (max-width: 750px) {
  .tag-search {
    padding: 20px 30px;
  }
}
.tag-search .close-tag-search {
  display: table;
  margin-left: auto;
  font-size: 1.8rem;
  line-height: 2.8rem;
  color: #fff;
  position: relative;
  padding-right: 26px;
}
@media only screen and (max-width: 750px) {
  .tag-search .close-tag-search {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
.tag-search .close-tag-search::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 9;
  width: 16px;
  height: 2px;
  margin-top: auto;
  margin-bottom: auto;
  background-color: #fff;
}
.tag-search .content {
  margin-top: 30px;
}
@media only screen and (max-width: 750px) {
  .tag-search .content {
    margin-top: 20px;
  }
}
.tag-search .content .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
}
@media only screen and (max-width: 834px) {
  .tag-search .content .ttl {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }
}
@media only screen and (max-width: 750px) {
  .tag-search .content .ttl {
    font-size: 2rem;
    line-height: 3rem;
  }
}
.tag-search .content .ttl span {
  margin-right: 20px;
}
@media only screen and (max-width: 750px) {
  .tag-search .content .ttl span {
    margin-right: 15px;
  }
}
@media only screen and (max-width: 750px) {
  .tag-search .content .ttl span img {
    width: 20px;
    height: auto;
  }
}
.tag-search .content ul.tag-list {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 834px) {
  .tag-search .content ul.tag-list {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 750px) {
  .tag-search .content ul.tag-list {
    margin-top: 20px;
  }
}
.tag-search .content ul li {
  margin-right: 10px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 750px) {
  .tag-search .content ul li {
    margin-right: 5px;
    margin-bottom: 5px;
  }
}
.tag-search .content ul li a {
  display: block;
  padding: 8px 12px;
  font-size: 1.3rem;
  line-height: 1.8rem;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.15);
}

/* Menu Footer */
#menu-footer {
  padding: 30px 0;
}
#menu-footer .menu-footer {
  max-width: 1200px;
  overflow: auto;
  -ms-overflow-style: none; /* for Internet Explorer, Edge */
  scrollbar-width: none; /* for Firefox */
  overflow-y: scroll;
}
#menu-footer .menu-footer::-webkit-scrollbar {
  display: none; /* for Chrome, Safari, and Opera */
}
#menu-footer .menu-footer ul {
  min-width: 1180px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media only screen and (max-width: 750px) {
  #menu-footer .menu-footer ul {
    min-width: auto;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}
#menu-footer .menu-footer ul li {
  margin: 0 25px;
  white-space: nowrap;
}
@media only screen and (max-width: 750px) {
  #menu-footer .menu-footer ul li {
    margin: 0 20px;
  }
}
#menu-footer .menu-footer ul li a {
  position: relative;
  display: block;
  padding-bottom: 2px;
  white-space: nowrap;
  /*&::after {
  	opacity: 0;
  	content: '';
  	display: block;
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	z-index: 8;
  	width: 100%;
  	height: 2px;
  	background-color: $blue;
  }*/
}
#menu-footer .menu-footer ul li a:hover {
  opacity: 1;
}
#menu-footer .menu-footer ul li a:hover::after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
#menu-footer .menu-footer ul li a::after {
  opacity: 0;
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 8;
  width: 0px;
  height: 2px;
  background-color: #0b57a7;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.footer-recruit li {
  margin: 0 27px !important;
}

.active-mn-footer-recruit-01 .mn-footer-recruit-01,
.active-mn-footer-recruit-02 .mn-footer-recruit-02,
.active-mn-footer-recruit-03 .mn-footer-recruit-03,
.active-mn-footer-recruit-04 .mn-footer-recruit-04,
.active-mn-footer-recruit-05 .mn-footer-recruit-05,
.active-mn-footer-recruit-06 .mn-footer-recruit-06,
.active-mn-footer-recruit-07 .mn-footer-recruit-07,
.active-mn-footer-recruit-07 .mn-footer-recruit-08 {
  color: #0b57a7 !important;
}
.active-mn-footer-recruit-01 .mn-footer-recruit-01::after,
.active-mn-footer-recruit-02 .mn-footer-recruit-02::after,
.active-mn-footer-recruit-03 .mn-footer-recruit-03::after,
.active-mn-footer-recruit-04 .mn-footer-recruit-04::after,
.active-mn-footer-recruit-05 .mn-footer-recruit-05::after,
.active-mn-footer-recruit-06 .mn-footer-recruit-06::after,
.active-mn-footer-recruit-07 .mn-footer-recruit-07::after,
.active-mn-footer-recruit-07 .mn-footer-recruit-08::after {
  opacity: 1 !important;
  width: 100% !important;
  left: 0 !important;
  right: auto !important;
}

.active-mn-footer-business-01 .mn-footer-business-01,
.active-mn-footer-business-02 .mn-footer-business-02,
.active-mn-footer-business-03 .mn-footer-business-03,
.active-mn-footer-business-04 .mn-footer-business-04,
.active-mn-footer-business-05 .mn-footer-business-05,
.active-mn-footer-business-06 .mn-footer-business-06 {
  color: #0b57a7 !important;
}
.active-mn-footer-business-01 .mn-footer-business-01::after,
.active-mn-footer-business-02 .mn-footer-business-02::after,
.active-mn-footer-business-03 .mn-footer-business-03::after,
.active-mn-footer-business-04 .mn-footer-business-04::after,
.active-mn-footer-business-05 .mn-footer-business-05::after,
.active-mn-footer-business-06 .mn-footer-business-06::after {
  opacity: 1 !important;
}

.active-mn-footer-sustainability-02 .mn-footer-sustainability-02,
.active-mn-footer-sustainability-03 .mn-footer-sustainability-03,
.active-mn-footer-sustainability-04 .mn-footer-sustainability-04,
.active-mn-footer-sustainability-05 .mn-footer-sustainability-05,
.active-mn-footer-sustainability-06 .mn-footer-sustainability-06,
.active-mn-footer-sustainability-07 .mn-footer-sustainability-07,
.active-mn-footer-sustainability-08 .mn-footer-sustainability-08,
.active-mn-footer-sustainability-09 .mn-footer-sustainability-09,
.active-mn-footer-sustainability-10 .mn-footer-sustainability-10,
.active-mn-footer-sustainability-11 .mn-footer-sustainability-11 {
  color: #0b57a7 !important;
}
.active-mn-footer-sustainability-02 .mn-footer-sustainability-02::after,
.active-mn-footer-sustainability-03 .mn-footer-sustainability-03::after,
.active-mn-footer-sustainability-04 .mn-footer-sustainability-04::after,
.active-mn-footer-sustainability-05 .mn-footer-sustainability-05::after,
.active-mn-footer-sustainability-06 .mn-footer-sustainability-06::after,
.active-mn-footer-sustainability-07 .mn-footer-sustainability-07::after,
.active-mn-footer-sustainability-08 .mn-footer-sustainability-08::after,
.active-mn-footer-sustainability-09 .mn-footer-sustainability-09::after,
.active-mn-footer-sustainability-10 .mn-footer-sustainability-10::after,
.active-mn-footer-sustainability-11 .mn-footer-sustainability-11::after {
  opacity: 1 !important;
}

.active-mn-footer-about-02 .mn-footer-about-02,
.active-mn-footer-about-03 .mn-footer-about-03,
.active-mn-footer-about-04 .mn-footer-about-04,
.active-mn-footer-about-05 .mn-footer-about-05,
.active-mn-footer-about-06 .mn-footer-about-06,
.active-mn-footer-about-07 .mn-footer-about-07,
.active-mn-footer-about-08 .mn-footer-about-08,
.active-mn-footer-about-09 .mn-footer-about-09,
.active-mn-footer-about-10 .mn-footer-about-10,
.active-mn-footer-about-11 .mn-footer-about-11 {
  color: #0b57a7 !important;
}
.active-mn-footer-about-02 .mn-footer-about-02::after,
.active-mn-footer-about-03 .mn-footer-about-03::after,
.active-mn-footer-about-04 .mn-footer-about-04::after,
.active-mn-footer-about-05 .mn-footer-about-05::after,
.active-mn-footer-about-06 .mn-footer-about-06::after,
.active-mn-footer-about-07 .mn-footer-about-07::after,
.active-mn-footer-about-08 .mn-footer-about-08::after,
.active-mn-footer-about-09 .mn-footer-about-09::after,
.active-mn-footer-about-10 .mn-footer-about-10::after,
.active-mn-footer-about-11 .mn-footer-about-11::after {
  opacity: 1 !important;
}

/* Contact Footer */
#contact-footer {
  padding: 40px 0;
  background-image: url("/assets/images/commons/bg-repeat-grey.png");
  background-repeat: repeat;
  background-position: top left;
  background-size: 4px;
}
#contact-footer .contact-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer {
    display: block;
  }
}
#contact-footer .contact-footer .col-left {
  width: 30%;
  padding-right: 2%;
  color: #003d7e;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-left {
    width: 100%;
  }
}
#contact-footer .contact-footer .col-left .ttl {
  margin-bottom: 10px;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-left .ttl {
    margin-bottom: 20px;
  }
}
#contact-footer .contact-footer .col-left .ttl h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-left .ttl h2 {
    text-align: center;
  }
}
#contact-footer .contact-footer .col-left .ttl p {
  margin-top: 5px;
  font-family: "Baskervville", serif;
  font-size: 1.3rem;
  line-height: 2rem;
  letter-spacing: 1px;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-left .ttl p {
    text-align: center;
  }
}
#contact-footer .contact-footer .col-left p {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-left p {
    text-align: center;
  }
}
#contact-footer .contact-footer .col-right {
  width: 70%;
}
@media only screen and (max-width: 1080px) {
  #contact-footer .contact-footer .col-right {
    width: 100%;
    margin-top: 20px;
  }
}
#contact-footer .contact-footer .col-right ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
@media only screen and (max-width: 750px) {
  #contact-footer .contact-footer .col-right ul {
    display: block;
  }
}
#contact-footer .contact-footer .col-right ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 48%;
  padding: 16px 40px;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #contact-footer .contact-footer .col-right ul li {
    width: 100%;
    padding: 15px 15px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-footer .contact-footer .col-right ul li + li {
    margin-top: 3%;
  }
}
#contact-footer .contact-footer .col-right ul li .box {
  width: 100%;
}
#contact-footer .contact-footer .col-right ul li .box p {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #0b57a7;
  margin-bottom: 12px;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #contact-footer .contact-footer .col-right ul li .box p {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#contact-footer .contact-footer .col-right ul li .box.tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 56px;
}
@media only screen and (max-width: 750px) {
  #contact-footer .contact-footer .col-right ul li .box.tel a {
    height: 42px;
  }
}

/* Footer */
footer {
  padding-top: 80px;
  color: #fff;
  background-color: #3e3e3e;
}
@media only screen and (max-width: 834px) {
  footer {
    padding-top: 60px;
  }
}
footer .footer .sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 834px) {
  footer .footer .sitemap {
    display: none;
  }
}
footer .footer .sitemap ul {
  padding: 0 3% 2% 3%;
}
footer .footer .sitemap ul + ul {
  border-left: 1px solid #585858;
}
footer .footer .sitemap ul li + li {
  margin-top: 13px;
}
footer .footer .sitemap ul li a {
  display: table;
  color: #fff;
}
footer .footer .sitemap ul li ul {
  margin-top: 20px;
  padding: 0;
}
footer .footer .sitemap ul li ul li + li {
  margin-top: 10px;
}
footer .footer .sitemap ul li ul li a {
  font-size: 1.3rem;
  line-height: 1.6rem;
  color: #dddddd;
}
footer .footer .sitemap-sp {
  display: none;
}
@media only screen and (max-width: 834px) {
  footer .footer .sitemap-sp {
    display: block;
  }
}
footer .footer .sitemap-sp ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  overflow: hidden;
  position: relative;
}
footer .footer .sitemap-sp ul::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 8;
  width: 1px;
  height: 90%;
  background-color: #585858;
  margin: auto;
}
footer .footer .sitemap-sp ul li {
  width: 50%;
  margin: 5px 0;
}
footer .footer .sitemap-sp ul li:nth-child(even) {
  padding-left: 7.5%;
}
footer .footer .sitemap-sp ul li a {
  font-size: 1.6rem;
  line-height: 1.6rem;
  color: #fff;
}
@media only screen and (max-width: 750px) {
  footer .footer .sitemap-sp ul li a {
    font-size: 1.4rem;
    line-height: 1.4rem;
  }
}
footer .footer .sns {
  margin-top: 60px;
  margin-bottom: 80px;
}
@media only screen and (max-width: 834px) {
  footer .footer .sns {
    margin-top: 40px;
    margin-bottom: 60px;
  }
}
footer .footer .sns p {
  font-size: 1.3rem;
  line-height: 1.3rem;
  text-align: center;
  margin-bottom: 15px;
}
footer .footer .sns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
footer .footer .sns ul li {
  margin: 0 8px;
}
footer .footer .sns ul li a {
  display: block;
}
footer .copyright {
  padding: 15px 0;
  border-top: 1px solid #8c8c8c;
}
footer .copyright p {
  font-size: 1rem;
  line-height: 1.4rem;
  text-align: center;
  color: #fff;
}

.gototop {
  display: none;
  position: fixed;
  bottom: 25px;
  right: 25px;
  z-index: 12;
}

.show1180 {
  display: none !important;
}
@media only screen and (max-width: 1180px) {
  .show1180 {
    display: block !important;
  }
}

.show1080 {
  display: none !important;
}
@media only screen and (max-width: 1080px) {
  .show1080 {
    display: block !important;
  }
}

.show834 {
  display: none !important;
}
@media only screen and (max-width: 834px) {
  .show834 {
    display: block !important;
  }
}

.show750 {
  display: none !important;
}
@media only screen and (max-width: 750px) {
  .show750 {
    display: block !important;
  }
}

.show375 {
  display: none !important;
}
@media only screen and (max-width: 400px) {
  .show375 {
    display: block !important;
  }
}

@media only screen and (max-width: 1180px) {
  .hide1180 {
    display: none !important;
  }
}

@media only screen and (max-width: 1080px) {
  .hide1080 {
    display: none !important;
  }
}

@media only screen and (max-width: 834px) {
  .hide834 {
    display: none !important;
  }
}

@media only screen and (max-width: 750px) {
  .hide750 {
    display: none !important;
  }
}

@media only screen and (max-width: 400px) {
  .hide375 {
    display: none !important;
  }
}

.error-404 {
  margin: auto;
  text-align: center;
  padding: 120px 0 120px 0;
}
@media only screen and (max-width: 750px) {
  .error-404 {
    padding: 80px 0 80px 0;
  }
}
.error-404 .img-404 {
  max-width: 320px;
  width: 100;
  margin: auto;
  margin-bottom: 30px;
}
@media only screen and (max-width: 750px) {
  .error-404 .img-404 {
    max-width: 220px;
    margin-bottom: 20px;
  }
}
.error-404 h2 {
  font-family: "Baskervville", serif;
  font-size: 4rem;
  line-height: 2rem;
  letter-spacing: 1px;
  margin-bottom: 80px;
  color: #0b57a7;
  text-transform: uppercase;
}
@media only screen and (max-width: 750px) {
  .error-404 h2 {
    font-size: 3.2rem;
    margin-bottom: 40px;
  }
}
.error-404 a {
  max-width: 280px;
  width: 100%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.error-404 p {
  margin-bottom: 80px;
  padding: 0 30px;
}
@media only screen and (max-width: 750px) {
  .error-404 p {
    margin-bottom: 40px;
    text-align: left;
  }
}

.link_blank {
  position: relative;
}
.link_blank::after {
  content: "";
  position: absolute;
  background-image: url("/assets/images/commons/icon-link-white.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  width: 12px;
  height: 12px;
  right: -18px;
  top: 2px;
}

/* Company */
#company {
  background-image: url("/assets/images/company/bg-repeat.jpg");
  background-repeat: repeat-x;
  background-position: top left;
  background-size: 4px 516px;
}
@media only screen and (max-width: 750px) {
  #company {
    background-image: url("/assets/images/company/bg-repeat-sp.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
  }
}
#company .company h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 7.8rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #company .company h2 {
    font-size: 3rem;
    line-height: 4rem;
  }
}
#company .company .company-list {
  margin-top: 50px;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list {
    margin-top: 40px;
  }
}
#company .company .company-list ul.col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -3%;
  margin-top: -3%;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col2 {
    display: block;
    margin-left: 0;
    margin-top: 0;
  }
}
#company .company .company-list ul.col2 li {
  width: 47%;
  margin-left: 3%;
  margin-top: 3%;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col2 li + li {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col2 li {
    width: 100%;
    margin-left: 0;
  }
}
#company .company .company-list ul.col2 li a {
  display: block;
  position: relative;
  overflow: hidden;
}
#company .company .company-list ul.col2 li a:hover {
  opacity: 1;
}
#company .company .company-list ul.col2 li a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#company .company .company-list ul.col2 li a h2 {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: 8;
  margin-top: auto;
  margin-bottom: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 262px;
  height: 62px;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #fff;
  background-color: #0b57a7;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 7px 10px;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col2 li a h2 {
    width: 42%;
    height: 47px;
    font-size: 2rem;
    line-height: 3rem;
    background-position: center right 10px;
    background-size: 5px 8px;
  }
}
#company .company .company-list ul.col2 li a img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#company .company .company-list ul.col4 {
  padding-top: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -3%;
  margin-top: -3%;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col4 {
    padding-top: 20px;
    margin-left: -5%;
    margin-top: -5%;
  }
}
#company .company .company-list ul.col4 li {
  width: 22%;
  margin-left: 3%;
  margin-top: 3%;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col4 li {
    width: 45%;
    margin-left: 5%;
    margin-top: 5%;
  }
}
#company .company .company-list ul.col4 li:nth-child(1) a h2 {
  background-color: #5b57b7;
}
#company .company .company-list ul.col4 li:nth-child(2) a h2 {
  background-color: #de6106;
}
#company .company .company-list ul.col4 li:nth-child(3) a h2 {
  background-color: #a57f00;
}
#company .company .company-list ul.col4 li:nth-child(4) a h2 {
  background-color: #08a4b9;
}
#company .company .company-list ul.col4 li a {
  display: block;
}
#company .company .company-list ul.col4 li a:hover {
  opacity: 1;
}
#company .company .company-list ul.col4 li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#company .company .company-list ul.col4 li a .cover {
  overflow: hidden;
}
#company .company .company-list ul.col4 li a .cover img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#company .company .company-list ul.col4 li a h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 56px;
  font-size: 1.6rem;
  line-height: 2.6rem;
  color: #fff;
  text-align: center;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 7px 10px;
}
@media only screen and (max-width: 750px) {
  #company .company .company-list ul.col4 li a h2 {
    height: 46px;
    font-size: 1.5rem;
    line-height: 2.5rem;
    background-position: center right 10px;
    background-size: 5px 8px;
  }
}

/* Message */
#message .intro-bg {
  background-image: url("/assets/images/company/message/bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg {
    background-image: none;
  }
}
#message .intro-bg .intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro {
    display: block;
    width: 100%;
  }
}
#message .intro-bg .intro .img-sp {
  display: none;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .img-sp {
    display: block;
  }
}
#message .intro-bg .intro .text h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 7.8rem;
  color: #003d7e;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .text h2 {
    padding: 30px 6%;
    font-size: 3rem;
    line-height: 4rem;
  }
}
#message .intro-bg .intro .text p {
  font-family: "Noto Serif JP", serif;
  margin-top: 20px;
  padding-right: 32px;
  text-align: right;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .text p {
    padding-right: 6%;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-top: 10px;
    background-color: #e1e6ea;
  }
}
#message .intro-bg .intro .text p span {
  font-size: 2.4rem;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .text p span {
    font-size: 2rem;
  }
}
#message .intro-bg .intro .img {
  padding-top: 30px;
  min-width: 456px;
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .img {
    display: none;
  }
}
@media only screen and (max-width: 750px) {
  #message .intro-bg .intro .img img {
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}
#message .intro-text .row + .row {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row + .row {
    margin-top: 40px;
  }
}
#message .intro-text .row.right p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Serif JP", serif;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row.right p {
    display: table;
    margin-left: auto;
  }
}
#message .intro-text .row.right p span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 20px;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row.right p span {
    margin-left: auto;
    margin-top: 10px;
    padding: 0;
    max-width: 186px;
  }
}
#message .intro-text .row h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 6rem;
  color: #0b57a7;
  margin-bottom: 25px;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row h3 {
    display: block;
    font-size: 2.5rem;
    line-height: 4rem;
    margin-bottom: 15px;
  }
}
#message .intro-text .row h3 span {
  margin-right: 40px;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row h3 span {
    margin-right: 0;
    margin-top: 30px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row h3 span img {
    margin-left: auto;
    margin-right: auto;
  }
}
#message .intro-text .row p + p {
  margin-top: 20px;
}
@media only screen and (max-width: 750px) {
  #message .intro-text .row p + p {
    margin-top: 15px;
  }
}

/* Philosophy */
#philosophy .philosophy .txthead-box {
  margin-bottom: 20px;
}
#philosophy .philosophy .content h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 7.8rem;
  margin-bottom: 25px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy .content h3 {
    font-size: 3rem;
    line-height: 4rem;
    text-align: center;
    margin-bottom: 20px;
  }
}
#philosophy .philosophy .content p {
  font-size: 2rem;
  line-height: 4rem;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy .content p {
    font-size: 1.6rem;
    line-height: 3.2rem;
  }
}
#philosophy .philosophy .content p + p {
  margin-top: 20px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy .content p + p {
    margin-top: 15px;
  }
}
#philosophy .philosophy #our {
  background-image: url("/assets/images/company/philosophy/our-bg.jpg");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
  padding-bottom: 140px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #our {
    background-image: url("/assets/images/company/philosophy/our-bg-sp.jpg");
    padding-bottom: 260px;
  }
}
#philosophy .philosophy #our .our .content h4 {
  margin-top: 25px;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #our .our .content h4 {
    display: none;
    font-size: 2rem;
    line-height: 3rem;
  }
}
#philosophy .philosophy #mission {
  background-image: url("/assets/images/company/philosophy/mission-bg.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  padding-bottom: 520px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #mission {
    background-image: url("/assets/images/company/philosophy/mission-bg-sp.jpg");
    padding-bottom: 320px;
  }
}
#philosophy .philosophy #mission .mission .txthead-box h2 {
  color: #fff;
}
#philosophy .philosophy #mission .mission .content h3 {
  color: #fff;
  text-align: center;
}
#philosophy .philosophy #mission .mission .content p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  line-height: 4.8rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #mission .mission .content p {
    font-size: 1.8rem;
    line-height: 3.2rem;
    text-align: left;
  }
}
#philosophy .philosophy #vision {
  background-image: url("/assets/images/company/philosophy/vision-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-bottom: 140px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #vision {
    padding-bottom: 0;
    background-color: #f1fbfe;
    background-image: none;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #vision .vision {
    padding-bottom: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #vision .vision .content ul {
    margin-top: 5px;
    margin-bottom: 5px;
  }
}
#philosophy .philosophy #vision .vision .content ul li {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 4.4rem;
  color: #003d7e;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #vision .vision .content ul li + li {
    margin-top: 3px;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #vision .vision .content ul li {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#philosophy .philosophy #value {
  background-image: url("/assets/images/company/philosophy/value-bg.jpg");
  background-repeat: repeat-y;
  background-position: center;
  background-size: cover;
  padding-bottom: 150px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value {
    width: 100%;
  }
}
#philosophy .philosophy #value .value .txthead-box h2 {
  color: #fff;
}
#philosophy .philosophy #value .value .content h3 {
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content h3 {
    margin-bottom: 30px;
  }
}
#philosophy .philosophy #value .value .content .value-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul {
    display: block;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li {
  margin: 0 1px;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li + li {
    margin-top: 1px;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li:nth-child(1) .box-color {
  background-color: #a57f00;
}
#philosophy .philosophy #value .value .content .value-list ul li:nth-child(2) .box-color {
  background-color: #4f9821;
}
#philosophy .philosophy #value .value .content .value-list ul li:nth-child(3) .box-color {
  background-color: #de6106;
}
#philosophy .philosophy #value .value .content .value-list ul li:nth-child(4) .box-color {
  background-color: #08a4b9;
}
#philosophy .philosophy #value .value .content .value-list ul li:nth-child(5) .box-color {
  background-color: #5b57b7;
}
#philosophy .philosophy #value .value .content .value-list ul li .cover {
  position: relative;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li .cover {
    width: 40%;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li .cover span {
  position: absolute;
  bottom: -25px;
  left: 10px;
  z-index: 8;
  font-family: "Baskervville", serif;
  font-size: 12rem;
  line-height: 12rem;
  color: #003d7e;
}
@media only screen and (max-width: 834px) {
  #philosophy .philosophy #value .value .content .value-list ul li .cover span {
    font-size: 8rem;
    line-height: 8rem;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li .cover span {
    bottom: -9px;
    left: 5px;
    font-size: 6rem;
    line-height: 6rem;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li .cover img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text {
    width: 60%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li .text .box-white {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 15px;
  min-height: 110px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text .box-white {
    min-height: 150px;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text .box-white {
    min-height: auto;
    height: 100%;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li .text .box-white::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 8;
  width: 1px;
  height: 16px;
  background-color: #3e3e3e;
  margin-left: auto;
  margin-right: auto;
}
#philosophy .philosophy #value .value .content .value-list ul li .text .box-white p {
  text-align: center;
  line-height: 3.5rem;
}
@media only screen and (max-width: 1180px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text .box-white p {
    font-size: 1.6rem;
    line-height: 3rem;
  }
}
#philosophy .philosophy #value .value .content .value-list ul li .text .box-color {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 64px;
}
#philosophy .philosophy #value .value .content .value-list ul li .text .box-color h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 3.2rem;
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text .box-color h4 {
    font-size: 2.2rem;
    line-height: 2.2rem;
  }
}
@media only screen and (max-width: 750px) {
  #philosophy .philosophy #value .value .content .value-list ul li .text .box-color h4 {
    font-size: 2.4rem;
    line-height: 2.4rem;
  }
}

/* Outline */
#outline .outline {
  border-top: 1px solid #D1D1D1;
  position: relative;
}
#outline .outline::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  z-index: 8;
  display: block;
  width: 160px;
  height: 1px;
  background: #003d7e;
}
#outline .outline .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 33px;
  padding-bottom: 33px;
  border-bottom: 1px solid #D1D1D1;
  position: relative;
}
@media only screen and (max-width: 1080px) {
  #outline .outline .row {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 750px) {
  #outline .outline .row {
    display: block;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
#outline .outline .row::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  z-index: 8;
  display: block;
  width: 160px;
  height: 1px;
  background: #003d7e;
}
#outline .outline .row .topic {
  width: 100%;
  max-width: 160px;
  min-width: 160px;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .topic {
    max-width: 100%;
    min-width: 100%;
  }
}
#outline .outline .row .topic h2 {
  font-weight: 600;
}
#outline .outline .row .text {
  width: 100%;
  padding-left: 40px;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text {
    padding-left: 0;
    margin-top: 5px;
  }
}
#outline .outline .row .text ul li {
  position: relative;
  padding-left: 20px;
}
#outline .outline .row .text ul li + li {
  margin-top: 25px;
}
@media only screen and (max-width: 1080px) {
  #outline .outline .row .text ul li + li {
    margin-top: 15px;
  }
}
#outline .outline .row .text ul li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
}
#outline .outline .row .text .table-company {
  width: 100%;
  border-collapse: collapse;
}
#outline .outline .row .text .table-company td {
  border: 1px solid #D1D1D1;
  padding: 20px;
  vertical-align: middle;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .table-company td {
    padding: 10px;
  }
}
#outline .outline .row .text .table-company td:nth-child(1) {
  width: 40%;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .table-company td:nth-child(1) {
    width: 43%;
  }
}
#outline .outline .row .text .table-company td:nth-child(2) {
  width: 60%;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .table-company td:nth-child(2) {
    width: 57%;
  }
}
#outline .outline .row .text .text-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .text-img {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
#outline .outline .row .text .text-img img {
  margin-left: 20px;
  width: 100%;
  max-width: 280px;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .text-img img {
    max-width: inherit;
    margin-top: 20px;
    margin-left: 0px;
  }
}
#outline .outline .row .text .map {
  margin-top: 20px;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}
@media only screen and (max-width: 750px) {
  #outline .outline .row .text .map {
    margin-top: 10px;
    margin-bottom: 5px;
    padding-bottom: 76.25%;
  }
}
#outline .outline .row .text .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* History */
#history .row.content-01 {
  background-image: url("/assets/images/company/history/content-01-bg.png");
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100%;
}
#history .row.content-02 {
  background-image: url("/assets/images/company/history/content-02-bg.png");
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100%;
}
#history .row.content-03 {
  padding-bottom: 150px;
  background-image: url("/assets/images/company/history/content-03-bg-btm.png"), url("/assets/images/company/history/content-03-bg.png");
  background-repeat: no-repeat, repeat-y;
  background-position: bottom center, top center;
  background-size: 100%;
}
@media only screen and (max-width: 750px) {
  #history .row.content-03 {
    background-size: 190%, 100%;
  }
}
#history .row .content .ttl {
  width: 100%;
  min-height: 228px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
}
@media only screen and (max-width: 750px) {
  #history .row .content .ttl {
    min-height: 115px;
  }
}
#history .row .content .ttl .box h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 5.8rem;
  text-align: center;
  color: #003d7e;
}
@media only screen and (max-width: 750px) {
  #history .row .content .ttl .box h3 {
    font-size: 3rem;
    line-height: 4rem;
  }
}
#history .row .content .ttl .box p {
  margin-top: 5px;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  line-height: 2.8rem;
  text-align: center;
  color: #003d7e;
}
@media only screen and (max-width: 750px) {
  #history .row .content .ttl .box p {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
}
#history .row .content .detail {
  max-width: 1025px;
  padding: 75px 0 10px 0;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail {
    padding: 40px 0 10px 0;
  }
}
#history .row .content .detail .intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .intro {
    display: block;
  }
}
#history .row .content .detail .intro .img {
  width: 49%;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .intro .img {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}
#history .row .content .detail .intro .img p {
  font-size: 1.3rem;
  line-height: 2rem;
  margin-top: 5px;
  margin-left: 10px;
}
#history .row .content .detail .intro .text {
  width: 49%;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .intro .text {
    width: 100%;
    margin-top: 15px;
  }
}
#history .row .content .detail .intro .text h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 5rem;
  color: #0b57a7;
  margin-bottom: 20px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .intro .text h4 {
    font-size: 2.4rem;
    line-height: 4rem;
    margin-bottom: 10px;
  }
}
#history .row .content .detail .intro .text p {
  font-size: 1.8rem;
  line-height: 3.6rem;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .intro .text p {
    font-size: 1.5rem;
    line-height: 3rem;
  }
}
#history .row .content .detail .timeline {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  padding-top: 50px;
  padding-bottom: 65px;
  position: relative;
}
#history .row .content .detail .timeline::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 8;
  display: block;
  width: 4px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(11, 87, 167, 0)), color-stop(10%, rgb(11, 87, 167)), color-stop(90%, rgb(11, 87, 167)), color-stop(100%, rgba(11, 87, 167, 0)));
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(11, 87, 167, 0)), color-stop(10%, rgb(11, 87, 167)), color-stop(90%, rgb(11, 87, 167)), to(rgba(11, 87, 167, 0)));
  background: linear-gradient(to bottom, rgba(11, 87, 167, 0) 0%, rgb(11, 87, 167) 10%, rgb(11, 87, 167) 90%, rgba(11, 87, 167, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0b57a7", endColorstr="#0b57a7", GradientType=0 );
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline::after {
    right: inherit;
    width: 2px;
  }
}
#history .row .content .detail .timeline.last::after {
  background: rgba(11, 87, 167, 0);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(11, 87, 167, 0)), color-stop(3%, rgb(11, 87, 167)), color-stop(100%, rgb(11, 87, 167)));
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(11, 87, 167, 0)), color-stop(3%, rgb(11, 87, 167)), to(rgb(11, 87, 167)));
  background: linear-gradient(to bottom, rgba(11, 87, 167, 0) 0%, rgb(11, 87, 167) 3%, rgb(11, 87, 167) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0b57a7", endColorstr="#0b57a7", GradientType=0 );
}
#history .row .content .detail .timeline .content-year {
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year {
    width: 100%;
    margin-top: 0 !important;
  }
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year + .content-year {
    margin-top: 40px !important;
  }
}
#history .row .content .detail .timeline .content-year.year1973 {
  margin-top: -105px;
}
#history .row .content .detail .timeline .content-year.year1980 {
  margin-top: -240px;
}
#history .row .content .detail .timeline .content-year.year1982 {
  margin-top: -60px;
}
#history .row .content .detail .timeline .content-year.year1997 {
  margin-top: -45px;
}
#history .row .content .detail .timeline .content-year.year1997-02 {
  margin-top: -105px;
}
#history .row .content .detail .timeline .content-year.year2003 {
  margin-top: -330px;
}
#history .row .content .detail .timeline .content-year.year2011 {
  margin-top: -330px;
}
#history .row .content .detail .timeline .content-year.year2012 {
  margin-top: -100px;
}
#history .row .content .detail .timeline .content-year.year2015 {
  margin-top: 70px;
}
#history .row .content .detail .timeline .content-year.year2016 {
  margin-top: -310px;
}
@media only screen and (max-width: 834px) {
  #history .row .content .detail .timeline .content-year.year2016 {
    margin-top: -210px;
  }
}
#history .row .content .detail .timeline .content-year.year2017 {
  margin-top: -340px;
}
#history .row .content .detail .timeline .content-year.year2016-02 {
  margin-top: -400px;
}
#history .row .content .detail .timeline .content-year.year2020 {
  margin-top: -40px;
}
#history .row .content .detail .timeline .content-year.year2021 {
  margin-top: -1000px;
  padding-bottom: 550px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.year2021 {
    padding-bottom: 0;
  }
}
#history .row .content .detail .timeline .content-year.year2022 {
  margin-top: -370px;
  padding-bottom: 100px;
  /*padding-bottom: 220px;*/
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.year2022 {
    padding-bottom: 0;
  }
}
#history .row .content .detail .timeline .content-year.left {
  margin-right: auto;
  padding-right: 85px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.left {
    padding-left: 40px;
    padding-right: 0;
  }
}
#history .row .content .detail .timeline .content-year.left.pad {
  padding-left: 100px;
  padding-right: 45px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.left.pad {
    padding-left: 40px;
    padding-right: 0;
  }
}
#history .row .content .detail .timeline .content-year.left.pad::after {
  width: 59%;
}
@media only screen and (max-width: 834px) {
  #history .row .content .detail .timeline .content-year.left.pad::after {
    width: 49%;
  }
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.left.pad::after {
    width: 30px;
  }
}
#history .row .content .detail .timeline .content-year.left::before {
  content: "";
  position: absolute;
  top: 8px;
  right: -8px;
  z-index: 8;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.left::before {
    left: -3px;
    right: inherit;
    width: 9px;
    height: 9px;
  }
}
#history .row .content .detail .timeline .content-year.left::after {
  content: "";
  position: absolute;
  right: 0;
  top: 16px;
  z-index: 8;
  width: 82%;
  height: 1px;
  background-color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #history .row .content .detail .timeline .content-year.left::after {
    width: 76%;
  }
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.left::after {
    width: 30px;
    left: 0;
    right: inherit;
    top: 12px;
  }
}
#history .row .content .detail .timeline .content-year.right {
  margin-left: auto;
  padding-left: 85px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.right {
    padding-left: 40px;
  }
}
#history .row .content .detail .timeline .content-year.right.pad {
  padding-right: 100px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.right.pad {
    padding-right: 0;
  }
}
#history .row .content .detail .timeline .content-year.right::before {
  content: "";
  position: absolute;
  top: 8px;
  left: -8px;
  z-index: 8;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.right::before {
    width: 9px;
    height: 9px;
    left: -3px;
  }
}
#history .row .content .detail .timeline .content-year.right::after {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  z-index: 8;
  width: 70px;
  height: 1px;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year.right::after {
    width: 30px;
    top: 12px;
  }
}
#history .row .content .detail .timeline .content-year.center {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#history .row .content .detail .timeline .content-year.center p.year {
  text-align: center;
}
#history .row .content .detail .timeline .content-year.center h5 {
  font-size: 3.2rem;
  line-height: 4.2rem;
  text-align: center;
}
#history .row .content .detail .timeline .content-year.center .img {
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
}
#history .row .content .detail .timeline .content-year p.year {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 3rem;
  font-weight: 600;
  color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year p.year {
    font-size: 2.6rem;
    line-height: 2.6rem;
  }
}
#history .row .content .detail .timeline .content-year h5 {
  margin-top: 15px;
  margin-bottom: 15px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year h5 {
    font-size: 1.8rem;
    line-height: 2.8rem;
    margin-bottom: 10px;
  }
}
#history .row .content .detail .timeline .content-year .img {
  display: table;
  margin-top: 20px;
  padding: 5px;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .timeline .content-year .img {
    width: 70%;
  }
}
#history .row .content .detail .timeline .content-year .img.transparent {
  background-color: transparent;
  padding: 0;
}
#history .row .content .detail .timeline .content-year .img + h5 {
  margin-top: 30px;
}
#history .row .content .detail .year-last {
  position: relative;
  padding-top: 40px;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 0;
  }
}
#history .row .content .detail .year-last::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 8;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background-color: #0b57a7;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last::before {
    width: 9px;
    height: 9px;
    left: -3px;
    top: 8px;
    right: inherit;
  }
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last::after {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 30px;
    height: 1px;
    background-color: #0b57a7;
  }
}
#history .row .content .detail .year-last p.year {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 3rem;
  font-weight: 600;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last p.year {
    font-size: 2.6rem;
    line-height: 2.6rem;
    text-align: left;
    margin-top: -10px;
  }
}
#history .row .content .detail .year-last h5 {
  margin-top: 15px;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  text-align: center;
  color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last h5 {
    font-size: 1.8rem;
    line-height: 2.8rem;
    text-align: left;
  }
}
#history .row .content .detail .year-last .img {
  display: table;
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #history .row .content .detail .year-last .img {
    width: 70%;
  }
}

/* Certification */
#certification .certification h2 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 2.8rem;
  line-height: 3.8rem;
  color: #003d7e;
  font-weight: 600;
  text-align: center;
  margin-bottom: 60px;
}
@media only screen and (max-width: 1080px) {
  #certification .certification h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification h2 {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }
}
#certification .certification .box-white {
  padding: 40px;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white {
    padding: 30px 20px;
  }
}
#certification .certification .box-white + .box-white {
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white + .box-white {
    margin-top: 20px;
  }
}
#certification .certification .box-white h3 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  font-weight: 600;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1080px) {
  #certification .certification .box-white h3 {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white h3 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 20px;
  }
}
#certification .certification .box-white .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex {
    display: block;
  }
}
#certification .certification .box-white .flex .img {
  /*width: 50%;*/
  min-width: 207px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .img {
    width: 100%;
  }
}
#certification .certification .box-white .flex .img img {
  border: 1px solid #D1D1D1;
  margin-left: auto;
  margin-right: auto;
}
#certification .certification .box-white .flex .img.type2 {
  min-width: 290px;
}
@media only screen and (max-width: 834px) {
  #certification .certification .box-white .flex .img.type2 {
    min-width: 207px;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .img.type2 {
    display: none;
  }
}
#certification .certification .box-white .flex .img.type2 .box {
  padding: 10px;
  background-color: #F8F8F8;
}
#certification .certification .box-white .flex .img.type2 .box img {
  border: 0;
}
#certification .certification .box-white .flex .img.type2 .box + .box {
  margin-top: 10px;
}
#certification .certification .box-white .flex .text {
  /*width: 50%;*/
  width: 100%;
  padding-left: 25px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text {
    width: 100%;
    padding-left: 0;
    margin-top: 20px;
  }
}
#certification .certification .box-white .flex .text.type2 {
  padding-left: 0;
  margin-left: 40px;
}
@media only screen and (max-width: 834px) {
  #certification .certification .box-white .flex .text.type2 {
    margin-left: 25px;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text.type2 {
    margin-left: 0;
    margin-top: 0;
  }
}
#certification .certification .box-white .flex .text.type2 h3 {
  text-align: left;
  border-bottom: 2px solid #0b57a7;
  padding-bottom: 5px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text.type2 h3 + .img {
    margin-top: 20px;
  }
}
#certification .certification .box-white .flex .text.type2.w100 {
  margin-left: 0;
}
#certification .certification .box-white .flex .text.type2 .img {
  display: none;
  margin-bottom: 20px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text.type2 .img {
    display: block;
  }
}
#certification .certification .box-white .flex .text.type2 .img-b {
  display: table;
  margin-top: 30px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
}
#certification .certification .box-white .flex .text p + .table {
  margin-top: 20px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text p + .table {
    margin-top: 15px;
  }
}
#certification .certification .box-white .flex .text .table .tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text .table .tr + .tr {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text .table .tr {
    display: block;
  }
}
#certification .certification .box-white .flex .text .table .tr .td {
  width: 100%;
}
#certification .certification .box-white .flex .text .table .tr .td.topic {
  width: 165px;
  min-width: 165px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text .table .tr .td.topic {
    width: 100%;
    min-width: 100%;
  }
}
#certification .certification .box-white .flex .text .table .tr .td.topic p {
  white-space: nowrap;
}
#certification .certification .box-white .flex .text .table + p {
  margin-top: 25px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text .table + p {
    margin-top: 20px;
  }
}
#certification .certification .box-white .flex .text .download {
  margin-top: 30px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .flex .text .download {
    margin-top: 20px;
  }
}
#certification .certification .box-white .flex .text .download ul li {
  border-bottom: 1px solid #D1D1D1;
  padding-bottom: 5px;
}
#certification .certification .box-white .flex .text .download ul li + li {
  margin-top: 10px;
}
#certification .certification .box-white .flex .text .download ul li a {
  display: block;
  position: relative;
  padding-left: 12px;
}
#certification .certification .box-white .flex .text .download ul li a::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  z-index: 8;
  width: 4px;
  height: 4px;
  border-radius: 100%;
  background-color: #000;
  display: block;
}
#certification .certification .box-white .flex .text .download ul li a::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("/assets/images/commons/icon-pdf-red.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px;
  margin-bottom: -4px;
}
#certification .certification .box-white .flex + .flex {
  margin-top: 20px;
}
#certification .certification .box-white .flex + .flex .text {
  padding-top: 20px;
  border-top: 1px solid #D1D1D1;
}
#certification .certification .box-white .content {
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid #D1D1D1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content {
    margin-top: 20px;
    padding-top: 20px;
  }
}
#certification .certification .box-white .content.orange .ttl {
  background: rgb(216, 133, 34);
  background: linear-gradient(140deg, rgb(216, 133, 34) 0%, rgb(255, 172, 72) 100%);
}
#certification .certification .box-white .content.orange .ttl p {
  color: #fff;
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", メイリオ, Meiryo, Osaka, sans-serif;
  font-weight: bold;
}
#certification .certification .box-white .content.orange .text h4 {
  text-transform: uppercase;
  background: -webkit-gradient(linear, left top, right top, from(rgb(216, 133, 34)), to(rgb(255, 172, 72)));
  background: linear-gradient(90deg, rgb(216, 133, 34) 0%, rgb(255, 172, 72) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#certification .certification .box-white .content.green .ttl {
  background: rgb(26, 163, 88);
  background: linear-gradient(140deg, rgb(26, 163, 88) 0%, rgb(57, 229, 135) 100%);
}
#certification .certification .box-white .content.green .ttl p {
  color: #fff;
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", メイリオ, Meiryo, Osaka, sans-serif;
  font-weight: bold;
}
#certification .certification .box-white .content.green .text h4 {
  text-transform: uppercase;
  background: -webkit-gradient(linear, left top, right top, from(rgb(26, 163, 88)), to(rgb(57, 229, 135)));
  background: linear-gradient(90deg, rgb(26, 163, 88) 0%, rgb(57, 229, 135) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#certification .certification .box-white .content .ttl {
  width: 108px;
  min-width: 108px;
  height: 108px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 100%;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content .ttl {
    width: 68px;
    min-width: 68px;
    height: 68px;
  }
}
#certification .certification .box-white .content .ttl p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  text-align: center;
}
@media only screen and (max-width: 1080px) {
  #certification .certification .box-white .content .ttl p {
    font-size: 2rem;
    line-height: 3rem;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content .ttl p {
    font-size: 1.8rem;
    line-height: 2.4rem;
  }
}
#certification .certification .box-white .content .text {
  width: 100%;
  padding-left: 25px;
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content .text {
    padding-left: 15px;
  }
}
#certification .certification .box-white .content .text h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  margin-bottom: 15px;
}
@media only screen and (max-width: 1080px) {
  #certification .certification .box-white .content .text h4 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content .text h4 {
    margin-bottom: 5px;
  }
}
#certification .certification .box-white .content .text h5 {
  margin-top: 20px;
  margin-bottom: 5px;
  font-size: 1.8rem;
  line-height: 2.8rem;
  font-weight: 600;
  position: relative;
}
@media only screen and (max-width: 1080px) {
  #certification .certification .box-white .content .text h5 {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #certification .certification .box-white .content .text h5 {
    margin-top: 15px;
  }
}
#certification .certification .box-white .content .text h5 span {
  position: relative;
  z-index: 9;
  background-color: #fff;
  padding-right: 10px;
}
#certification .certification .box-white .content .text h5::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 1px;
  margin-top: auto;
  margin-bottom: auto;
  background-color: #000;
}

#organization {
  border-collapse: collapse;
  width: 100%;
}

#organization td, #customers th {
  border: 1px solid #D1D1D1;
  padding: 8px;
}

#organization th {
  padding: 8px 10px;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #0b57a7;
  text-align: left;
  background-color: #fcfcfc;
  border-top: none !important;
  border: 1px solid #D1D1D1;
}
@media only screen and (max-width: 750px) {
  #organization th {
    font-size: 1.8rem;
    line-height: 2.2rem;
  }
}

#organization .tt-c {
  text-align: center !important;
}

/* License */
#license .license h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 5.8rem;
  color: #003d7e;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1080px) {
  #license .license h2 {
    font-size: 3.8rem;
    line-height: 4.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #license .license h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
  }
}
#license .license .intro p {
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #license .license .intro p {
    text-align: left;
  }
}
#license .license .intro .img {
  display: table;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #ccc;
}
#license .license .box-white {
  margin-top: 80px;
  padding: 60px 40px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #license .license .box-white {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 750px) {
  #license .license .box-white {
    padding: 30px 20px;
  }
}
#license .license .box-white .ttl {
  margin-bottom: 50px;
}
@media only screen and (max-width: 1080px) {
  #license .license .box-white .ttl {
    margin-bottom: 30px;
  }
}
#license .license .box-white .ttl h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1080px) {
  #license .license .box-white .ttl h3 {
    font-size: 3rem;
    line-height: 4rem;
    margin-bottom: 5px;
  }
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .ttl h3 {
    font-size: 2.2rem;
    line-height: 3.2rem;
    margin-bottom: 0;
  }
}
#license .license .box-white .ttl p {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1080px) {
  #license .license .box-white .ttl p {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .ttl p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
#license .license .box-white .content .row + .row {
  margin-top: 70px;
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .content .row + .row {
    margin-top: 40px;
  }
}
#license .license .box-white .content .row h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #0b57a7;
  margin-bottom: 35px;
}
@media only screen and (max-width: 1080px) {
  #license .license .box-white .content .row h4 {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .content .row h4 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 25px;
  }
}
#license .license .box-white .content .row ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -15px;
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .content .row ul {
    display: block;
    margin-top: -10px;
  }
}
#license .license .box-white .content .row ul li {
  width: 48%;
  margin-top: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #D1D1D1;
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .content .row ul li {
    width: 100%;
    margin-top: 10px;
    padding-bottom: 10px;
  }
}
#license .license .box-white .content .row .box-grey {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 40px;
  padding: 40px;
  background-color: #ccc;
  font-size: 3.2rem;
  line-height: 3.2rem;
  color: #fff;
}
@media only screen and (max-width: 1080px) {
  #license .license .box-white .content .row .box-grey {
    font-size: 2.2rem;
    line-height: 2.2rem;
    padding: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #license .license .box-white .content .row .box-grey {
    margin-top: 30px;
  }
}

/* Works */
.works-sort-content {
  margin-top: 40px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 834px) {
  .works-sort-content {
    margin-top: 20px;
  }
}
.works-sort-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 750px) {
  .works-sort-content ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.works-sort-content ul li {
  text-align: center;
}
.works-sort-content ul li a {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  border-bottom: 2px solid #ccc;
  padding: 0 20px;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  .works-sort-content ul li a {
    padding: 0 15px;
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 834px) {
  .works-sort-content ul li a {
    padding: 0 6px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 750px) {
  .works-sort-content ul li a {
    font-size: 1.2rem;
    padding: 0 15px;
  }
}
.works-sort-content ul li a:hover:after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
.works-sort-content ul li a:hover .arrow-down {
  opacity: 1;
}
.works-sort-content ul li a:after {
  opacity: 0;
  display: block;
  content: "";
  position: absolute;
  bottom: -2px;
  right: 0;
  z-index: 8;
  width: 0px;
  height: 2px;
  background-color: #0b57a7;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.works-sort-content ul li .active:after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
.works-sort-content ul li .active .arrow-down {
  opacity: 1;
}
.works-sort-content ul li:nth-child(1) a:after {
  background-color: #1671B4;
}
.works-sort-content ul li:nth-child(1) a:hover {
  color: #1671B4;
}
.works-sort-content ul li:nth-child(1) .active {
  color: #1671B4;
}
.works-sort-content ul li:nth-child(1) .active .arrow-down {
  border-top: 5px solid #1671B4;
}
.works-sort-content ul li:nth-child(2) a:after {
  background-color: #1671B4;
}
.works-sort-content ul li:nth-child(2) a:hover {
  color: #1671B4;
}
.works-sort-content ul li:nth-child(2) .active {
  color: #1671B4;
}
.works-sort-content ul li:nth-child(2) .active .arrow-down {
  border-top: 5px solid #1671B4;
}
.works-sort-content ul li:nth-child(3) a:after {
  background-color: #3C6A36;
}
.works-sort-content ul li:nth-child(3) a:hover {
  color: #3C6A36;
}
.works-sort-content ul li:nth-child(3) a:hover .arrow-down {
  border-top: 5px solid #3C6A36;
}
.works-sort-content ul li:nth-child(3) .active {
  color: #3C6A36;
}
.works-sort-content ul li:nth-child(3) .active .arrow-down {
  border-top: 5px solid #3C6A36;
}
.works-sort-content ul li:nth-child(4) a:after {
  background-color: #37A3E6;
}
.works-sort-content ul li:nth-child(4) a:after .arrow-down {
  border-top: 5px solid #37A3E6;
}
.works-sort-content ul li:nth-child(4) a:hover {
  color: #37A3E6;
}
.works-sort-content ul li:nth-child(4) a:hover .arrow-down {
  border-top: 5px solid #37A3E6;
}
.works-sort-content ul li:nth-child(4) .active {
  color: #37A3E6;
}
.works-sort-content ul li:nth-child(4) .active .arrow-down {
  border-top: 5px solid #37A3E6;
}
.works-sort-content ul li:nth-child(5) a:after {
  background-color: #DE6106;
}
.works-sort-content ul li:nth-child(5) a:hover {
  color: #DE6106;
}
.works-sort-content ul li:nth-child(5) a:hover .arrow-down {
  border-top: 5px solid #DE6106;
}
.works-sort-content ul li:nth-child(5) .active {
  color: #DE6106;
}
.works-sort-content ul li:nth-child(5) .active .arrow-down {
  border-top: 5px solid #DE6106;
}

.works-list {
  margin-top: 80px;
}
.works-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -80px;
  margin-left: -2%;
}
@media only screen and (max-width: 750px) {
  .works-list ul {
    margin-left: -3%;
  }
}
.works-list ul li {
  width: 31.33%;
  margin-top: 80px;
  margin-left: 2%;
}
@media only screen and (max-width: 750px) {
  .works-list ul li {
    width: 47%;
    margin-top: 40px;
    margin-left: 3%;
  }
}
.works-list ul li a {
  display: block;
}
.works-list ul li a .cover img {
  width: 100%;
  height: auto;
}
.works-list ul li a .brief {
  margin-top: 25px;
}
@media only screen and (max-width: 750px) {
  .works-list ul li a .brief {
    margin-top: 15px;
  }
}
.works-list ul li a .brief h2 {
  font-size: 1.8rem;
  line-height: 2.8rem;
  font-weight: 600;
  margin-top: 15px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 750px) {
  .works-list ul li a .brief h2 {
    font-size: 1.6rem;
    line-height: 2.6rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 750px) {
  .works-list ul li a .brief p {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
}

/* Business Inner */
#business-inner #business-intro {
  background-color: #e8f6ff;
}
#business-inner #business-intro h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 6.8rem;
  color: #003d7e;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-intro h2 {
    font-size: 3.8rem;
    line-height: 5.8rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-intro h2 {
    font-size: 2.8rem;
    line-height: 4.8rem;
  }
}
#business-inner #business-strength {
  background-image: url("/assets/images/business/business-strength-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength {
    background-position: left 20% center;
  }
}
#business-inner #business-strength .business-strength {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength {
    display: block;
  }
}
#business-inner #business-strength .business-strength .ttl {
  width: 45%;
  margin-top: 30px;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength .ttl {
    width: 100%;
    margin-top: 0;
    padding-left: 5%;
  }
}
#business-inner #business-strength .business-strength .ttl .txthead-box h3 {
  font-size: 4.8rem;
  line-height: 6.8rem;
  color: #fff;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-strength .business-strength .ttl .txthead-box h3 {
    font-size: 3.8rem;
    line-height: 5.8rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-strength .business-strength .ttl .txthead-box h3 {
    font-size: 2.8rem;
    line-height: 4.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength .ttl .txthead-box h3 {
    font-size: 3.6rem;
    line-height: 4.6rem;
  }
}
#business-inner #business-strength .business-strength .ttl .txthead-box p {
  color: #fff;
}
#business-inner #business-strength .business-strength .ttl .btn-box {
  margin-top: 30px;
}
#business-inner #business-strength .business-strength .content {
  width: 55%;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength .content {
    width: 100%;
    margin-top: 30px;
  }
}
#business-inner #business-strength .business-strength .content .box {
  padding: 40px 45px;
  background-color: #fff;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-strength .business-strength .content .box {
    padding: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength .content .box {
    padding: 5%;
  }
}
#business-inner #business-strength .business-strength .content .box h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 6rem;
  color: #0b57a7;
  margin-bottom: 25px;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-strength .business-strength .content .box h4 {
    font-size: 3rem;
    line-height: 5rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-strength .business-strength .content .box h4 {
    font-size: 2rem;
    line-height: 3.5rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-strength .business-strength .content .box h4 {
    font-size: 2.6rem;
    line-height: 3.6rem;
  }
}
#business-inner #business-sub {
  background-color: #d3edfe;
  background-image: url("/assets/images/business/business-sub-bg.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
}
#business-inner #business-sub .business-sub ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-sub .business-sub ul {
    display: block;
  }
}
#business-inner #business-sub .business-sub ul li {
  width: 31.33%;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-sub .business-sub ul li {
    width: 100%;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-sub .business-sub ul li + li {
    margin-top: 3%;
  }
}
#business-inner #business-sub .business-sub ul li a {
  display: block;
}
#business-inner #business-sub .business-sub ul li a:hover {
  opacity: 1;
}
#business-inner #business-sub .business-sub ul li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#business-inner #business-sub .business-sub ul li a .cover {
  overflow: hidden;
}
#business-inner #business-sub .business-sub ul li a .cover img {
  width: 100%;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#business-inner #business-sub .business-sub ul li a .link {
  display: block;
  padding: 15px 0;
  font-size: 2.4rem;
  line-height: 3.4rem;
  text-align: center;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 6px 10px;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-sub .business-sub ul li a .link {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-sub .business-sub ul li a .link {
    font-size: 1.3rem;
    line-height: 2rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-sub .business-sub ul li a .link {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#business-inner #business-sub .business-sub ul li a .link.blue {
  color: #fff;
  background-color: #2ca7df;
}
#business-inner #business-sub .business-sub ul li a .link.orange {
  color: #fff;
  background-color: #eb9911;
}
#business-inner #business-sub .business-sub ul li a .link.green {
  color: #fff;
  background-color: #4f9821;
}
#business-inner #business-sub .business-sub ul li a .brief {
  padding: 20px;
}
#business-inner #business-sub .btn-box {
  background-image: url("/assets/images/business/business-sub-bg-btm.png");
  background-repeat: repeat;
  background-position: top left;
  background-size: 4px;
}
#business-inner #business-service .business-service h3 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  color: #003d7e;
  text-align: center;
  margin-bottom: 25px;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-service .business-service h3 {
    margin-bottom: 15px;
  }
}
#business-inner #business-service .business-service h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #business-inner #business-service .business-service h4 {
    font-size: 2.6rem;
    line-height: 3.8rem;
  }
}
#business-inner #business-service .business-service ul {
  margin-top: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #business-inner #business-service .business-service ul {
    margin-top: 30px;
    display: block;
  }
}
#business-inner #business-service .business-service ul li {
  width: 33.33%;
  padding: 0 20px;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-service .business-service ul li {
    padding: 0 15px;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-service .business-service ul li {
    padding: 0 10px;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-service .business-service ul li {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-service .business-service ul li + li {
    margin-top: 20px;
  }
}
#business-inner #business-service .business-service ul li a {
  display: block;
}
#business-inner #business-service .business-service ul li a:hover {
  opacity: 1;
}
#business-inner #business-service .business-service ul li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#business-inner #business-service .business-service ul li a .cover {
  overflow: hidden;
}
#business-inner #business-service .business-service ul li a .cover img {
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#business-inner #business-service .business-service ul li a .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 54px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 300;
  color: #fff;
  text-align: center;
  background-color: #505050;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-position: center right 16px;
  background-size: 6px 10px;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  #business-inner #business-service .business-service ul li a .ttl {
    font-size: 1.4rem;
    line-height: 1.8rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-inner #business-service .business-service ul li a .ttl {
    font-size: 1.1rem;
    line-height: 1.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-inner #business-service .business-service ul li a .ttl {
    font-size: 1.6rem;
    line-height: 2rem;
  }
}

/* Strength */
#strength #intro {
  position: relative;
  background: rgb(75, 164, 247);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgb(75, 164, 247)), color-stop(100%, rgb(115, 222, 253)));
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(75, 164, 247)), to(rgb(115, 222, 253)));
  background: linear-gradient(to bottom, rgb(75, 164, 247) 0%, rgb(115, 222, 253) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#4ba4f7", endColorstr="#73defd", GradientType=0 );
}
#strength #intro::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  background-image: url("/assets/images/business/strength/intro-bg-top.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100%;
}
#strength #intro::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("/assets/images/business/strength/intro-bg-btm.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
}
#strength #intro .intro {
  position: relative;
  z-index: 9;
}
#strength #intro .intro .img {
  display: table;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #strength #intro .intro .img {
    width: 80%;
  }
}
#strength #intro .intro .content h2 {
  color: #fff;
}
#strength #intro .intro .content .sub-col ul li:nth-child(1) .ttl h3 {
  color: #fff;
  background-color: #003d7e;
}
#strength #intro .intro .content .sub-col ul li:nth-child(2) .ttl h3 {
  color: #fff;
  background-color: #3372b5;
}
#strength #intro .intro .content .sub-col ul li:nth-child(3) .ttl h3 {
  color: #fff;
  background-color: #2689eb;
}
#strength #reno {
  background-image: url("/assets/images/business/strength/reno-bg.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
#strength #reno .reno .row-ttl {
  display: table;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 10px;
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  text-align: center;
  color: #003d7e;
  position: relative;
  border-bottom: 8px solid #eca228;
}
#strength #reno .reno .row-ttl::before {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  z-index: 8;
  width: 33.33%;
  height: 8px;
  background-color: #30b2c3;
}
#strength #reno .reno .row-ttl::after {
  content: "";
  position: absolute;
  bottom: -8px;
  right: 0;
  z-index: 8;
  width: 33.33%;
  height: 8px;
  background-color: #5fa136;
}
#strength #reno .reno .content h2 {
  color: #0b57a7;
  margin-bottom: 15px;
}
#strength #reno .reno .content > p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  line-height: 4.8rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #strength #reno .reno .content > p {
    font-size: 2rem;
    line-height: 4rem;
  }
}
@media only screen and (max-width: 750px) {
  #strength #reno .reno .content > p {
    font-size: 1.8rem;
    line-height: 3.8rem;
  }
}
#strength #reno .reno .content .sub-col {
  margin-top: 100px;
}
#strength #reno .reno .content .sub-col ul li:nth-child(1) .ttl h3 {
  color: #fff;
  background-color: #1babbe;
}
#strength #reno .reno .content .sub-col ul li:nth-child(2) .ttl h3 {
  color: #fff;
  background-color: #eb9911;
}
#strength #reno .reno .content .sub-col ul li:nth-child(3) .ttl h3 {
  color: #fff;
  background-color: #4f9821;
}
#strength #reno .reno .content .sub-col ul li .ttl {
  position: relative;
}
#strength #reno .reno .content .sub-col ul li .ttl .icon {
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
  z-index: 8;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
#strength #reno .reno .content .sub-col ul li .ttl .icon img {
  margin: 0 auto;
}
@media only screen and (max-width: 750px) {
  #strength #reno .reno .content .sub-col ul li + li {
    margin-top: 80px;
  }
}
#strength #proposal {
  background-image: url("/assets/images/business/strength/proposal-bg-btm.jpg"), url("/assets/images/business/strength/proposal-bg-top.jpg");
  background-repeat: no-repeat;
  background-position: bottom center, top center;
  background-size: 100%;
  background-color: #fafafa;
}
#strength #proposal .proposal .row-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  color: #003d7e;
  text-align: center;
}
#strength #proposal .proposal .row-ttl span {
  margin-right: 25px;
}
@media only screen and (max-width: 750px) {
  #strength #proposal .proposal .row-ttl span {
    width: 100px;
    margin-right: 15px;
  }
}
#strength #proposal .proposal .content h2 {
  color: #0b57a7;
  margin-top: 60px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 750px) {
  #strength #proposal .proposal .content h2 {
    margin-top: 40px;
  }
}
#strength #proposal .proposal .content > p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  line-height: 4.8rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #strength #proposal .proposal .content > p {
    font-size: 2rem;
    line-height: 4rem;
  }
}
@media only screen and (max-width: 750px) {
  #strength #proposal .proposal .content > p {
    font-size: 1.8rem;
    line-height: 3.8rem;
  }
}
#strength #proposal .proposal .content .sub-col {
  margin-top: 70px;
}
@media only screen and (max-width: 750px) {
  #strength #proposal .proposal .content .sub-col {
    margin-top: 40px;
  }
}
#strength #proposal .proposal .content .sub-col ul li .ttl h3 {
  color: #fff;
  background-color: #0b57a7;
}
#strength .content h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  text-align: center;
  margin-top: 70px;
  margin-bottom: 70px;
}
@media only screen and (max-width: 1180px) {
  #strength .content h2 {
    font-size: 3rem;
    line-height: 4.5rem;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content h2 {
    font-size: 2.4rem;
    line-height: 3.8rem;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
#strength .content .sub-col ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul {
    display: block;
  }
}
#strength .content .sub-col ul li {
  width: 31.33%;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li {
    width: 100%;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li + li {
    margin-top: 3%;
  }
}
#strength .content .sub-col ul li .ttl h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 72px;
  font-size: 2.4rem;
  line-height: 3.4rem;
  font-weight: 600;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #strength .content .sub-col ul li .ttl h3 {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 834px) {
  #strength .content .sub-col ul li .ttl h3 {
    font-size: 1.3rem;
    line-height: 2.3rem;
    height: 62px;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li .ttl h3 {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#strength .content .sub-col ul li .cover {
  position: relative;
}
#strength .content .sub-col ul li .cover .abs {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#strength .content .sub-col ul li .cover .abs p {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 4.4rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  color: #0b57a7;
  letter-spacing: -1px;
}
@media only screen and (max-width: 1180px) {
  #strength .content .sub-col ul li .cover .abs p {
    font-size: 1.8rem;
    line-height: 3.2rem;
  }
}
#strength .content .sub-col ul li .cover .abs p span {
  padding: 8px 0;
  background-color: #fff;
}
#strength .content .sub-col ul li .cover .abs p span strong {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
#strength .content .sub-col ul li .cover .abs p span strong sub {
  vertical-align: sub;
  font-size: 1.4rem;
}
#strength .content .sub-col ul li .cover img {
  width: 100%;
  min-height: 270px;
  height: auto;
}
@media only screen and (max-width: 1180px) {
  #strength .content .sub-col ul li .cover img {
    -o-object-fit: cover;
    object-fit: cover;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li .cover img {
    min-height: auto;
  }
}
#strength .content .sub-col ul li .text {
  padding: 35px 30px;
}
@media only screen and (max-width: 834px) {
  #strength .content .sub-col ul li .text {
    padding: 30px 25px;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li .text {
    padding: 25px 20px;
  }
}
#strength .content .sub-col ul li .text p + p {
  margin-top: 30px;
}
@media only screen and (max-width: 834px) {
  #strength .content .sub-col ul li .text p + p {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #strength .content .sub-col ul li .text p + p {
    margin-top: 10px;
  }
}
#strength .content .sub-col ul li .text p span.blue {
  color: #0b57a7;
  font-weight: bold;
  font-size: 18px;
}

.banner-link-business {
  width: 100%;
  max-width: 500px;
  margin: auto;
}
@media only screen and (max-width: 750px) {
  .banner-link-business {
    width: 88%;
  }
}
.banner-link-business a {
  background-color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-grid-column-align: center;
      justify-self: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  margin-top: -40px !important;
  margin-bottom: 40px;
}
@media only screen and (max-width: 750px) {
  .banner-link-business a {
    margin-top: -20px !important;
    margin-bottom: 40px;
  }
}
.banner-link-business a::after {
  content: "";
  position: absolute;
  background-image: url("/assets/images/commons/popup-arrow-next.svg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  width: 18px;
  height: 15px;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 750px) {
  .banner-link-business a::after {
    width: 20px;
    height: 17px;
    right: 7px;
  }
}
.banner-link-business a img {
  margin-right: 30px;
  max-width: 160px;
  max-height: 85px;
}
@media only screen and (max-width: 750px) {
  .banner-link-business a img {
    margin-right: 15px;
    max-width: 130px;
  }
}

#business-layout #intro {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#business-layout #intro .intro .box {
  width: 55%;
  padding: 40px 45px;
  background-color: rgba(255, 255, 255, 0.9);
}
@media only screen and (max-width: 1180px) {
  #business-layout #intro .intro .box {
    width: 65%;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #intro .intro .box {
    width: 100%;
    padding: 25px 30px;
  }
}
#business-layout #intro .intro .box .text h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 6rem;
  color: #0b57a7;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1180px) {
  #business-layout #intro .intro .box .text h2 {
    font-size: 3rem;
    line-height: 5rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-layout #intro .intro .box .text h2 {
    font-size: 2.4rem;
    line-height: 4.4rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #intro .intro .box .text h2 {
    font-size: 2rem;
    line-height: 4rem;
    margin-bottom: 10px;
  }
}
#business-layout #navi {
  padding: 35px 0;
}
@media only screen and (max-width: 750px) {
  #business-layout #navi {
    padding: 7% 0;
  }
}
#business-layout #navi .navi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#business-layout #navi .navi ul li {
  width: 19%;
  min-width: 240px;
  margin: 0.5%;
}
@media only screen and (max-width: 750px) {
  #business-layout #navi .navi ul li {
    width: 100%;
    margin: 0;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #navi .navi ul li + li {
    margin-top: 2%;
  }
}
#business-layout #navi .navi ul li a {
  width: 100%;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.5rem;
  line-height: 2.6rem;
  color: #fff;
  background-image: url("/assets/images/commons/arrow-down-white.svg");
  background-repeat: no-repeat;
  background-position: center right 14px;
  background-size: 10px 8px;
}
#business-layout #des .row {
  background-color: #f8f8f8;
}
#business-layout #des .row:nth-child(even) {
  background-color: #fff;
}
#business-layout #des .row:nth-child(even) .des .flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#business-layout #des .row:nth-child(even) .des .flex .text {
  padding-right: 0;
  padding-left: 4%;
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row:nth-child(even) .des .flex .text {
    padding-left: 0;
  }
}
#business-layout #des .row:nth-child(even) .des .flex .text .box .box-white {
  background-color: #f8f8f8;
}
#business-layout #des .row .des .ttl h3 {
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 70px;
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .ttl h3 {
    font-size: 2.4rem;
    line-height: 3.4rem;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .ttl h3 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 30px;
  }
}
#business-layout #des .row .des .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex {
    display: block;
  }
}
#business-layout #des .row .des .flex .img {
  width: 48.5%;
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .flex .img {
    width: 48%;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex .img {
    width: 100%;
  }
}
#business-layout #des .row .des .flex .img img {
  width: 100%;
  height: auto;
}
#business-layout #des .row .des .flex .text {
  width: 48.5%;
  padding-right: 4%;
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .flex .text {
    width: 48%;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex .text {
    width: 90%;
    padding-right: 0;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}
#business-layout #des .row .des .flex .text h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 6rem;
  color: #0b57a7;
  margin-bottom: 25px;
}
@media only screen and (max-width: 1180px) {
  #business-layout #des .row .des .flex .text h4 {
    font-size: 3rem;
    line-height: 5rem;
  }
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .flex .text h4 {
    font-size: 2.6rem;
    line-height: 4.6rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex .text h4 {
    font-size: 2.2rem;
    line-height: 3.8rem;
    margin-bottom: 10px;
  }
}
#business-layout #des .row .des .flex .text .box {
  margin-top: 30px;
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex .text .box {
    margin-top: 20px;
  }
}
#business-layout #des .row .des .flex .text .box h5 {
  display: table;
  padding: 2px 22px;
  font-size: 1.3rem;
  line-height: 2rem;
  color: #fff;
}
#business-layout #des .row .des .flex .text .box .box-white {
  padding: 25px 30px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .flex .text .box .box-white {
    padding: 20px 25px;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .flex .text .box .box-white {
    padding: 15px 20px;
  }
}
#business-layout #des .row .des .related-sites {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
#business-layout #des .row .des .related-sites ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .related-sites ul {
    margin-top: -3%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#business-layout #des .row .des .related-sites ul li {
  width: 20%;
  padding: 0.75%;
}
@media only screen and (max-width: 834px) {
  #business-layout #des .row .des .related-sites ul li {
    width: 33.33%;
    padding: 1.33%;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #des .row .des .related-sites ul li {
    width: 48.5%;
    margin-top: 3%;
    padding: 0;
  }
}
#business-layout #des .row .des .related-sites ul li a {
  display: block;
  border: 1px solid #C3C3C3;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#business-layout #des .row .des .related-sites ul li a:hover {
  border-color: #0b57a7;
}
#business-layout #listing .listing .ttl {
  margin-bottom: 40px;
}
#business-layout #listing .listing .ttl h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1180px) {
  #business-layout #listing .listing .ttl h3 {
    font-size: 2.8rem;
    line-height: 3.8rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #listing .listing .ttl h3 {
    font-size: 2.4rem;
    line-height: 3.4rem;
    margin-bottom: 10px;
  }
}
#business-layout #listing .listing .ttl p {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #business-layout #listing .listing .ttl p {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #listing .listing .ttl p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
#business-layout #listing .listing ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 750px) {
  #business-layout #listing .listing ul {
    display: block;
  }
}
#business-layout #listing .listing ul li {
  width: 25%;
  padding: 0 20px;
}
@media only screen and (max-width: 1180px) {
  #business-layout #listing .listing ul li {
    padding: 0 15px;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #listing .listing ul li {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (max-width: 750px) {
  #business-layout #listing .listing ul li + li {
    margin-top: 40px;
  }
}
#business-layout #listing .listing ul li a {
  display: block;
}
#business-layout #listing .listing ul li a:hover {
  opacity: 1;
}
#business-layout #listing .listing ul li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#business-layout #listing .listing ul li a .cover {
  overflow: hidden;
}
#business-layout #listing .listing ul li a .cover img {
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#business-layout #listing .listing ul li a .brief {
  margin-top: 20px;
}
#business-layout #listing .listing ul li a .brief h4 {
  font-size: 1.8rem;
  line-height: 2.8rem;
  font-weight: 600;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1180px) {
  #business-layout #listing .listing ul li a .brief h4 {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
#business-layout #listing .listing .btn-box a {
  color: #fff;
}

.equipment #mv-inner .mv-inner .text p {
  color: #2ca7df;
}
.equipment #business-layout #intro {
  background-image: url("/assets/images/business/equipment/intro-bg.jpg");
}
.equipment #business-layout #navi .navi ul li a {
  background-color: #2ca7df;
}
.equipment #business-layout #des .row .des .ttl h3 {
  color: #2ca7df;
}
.equipment #business-layout #des .row .des .flex .text .box h5 {
  background-color: #2ca7df;
}
.equipment #business-layout #listing {
  background-color: #e3f4fc;
}
.equipment #business-layout #listing .listing .btn-box a {
  background-color: #2ca7df;
}

.architecture #mv-inner .mv-inner .text p {
  color: #eb9911;
}
.architecture #business-layout #intro {
  background-image: url("/assets/images/business/architecture/intro-bg.jpg");
}
.architecture #business-layout #intro .intro .box {
  margin-left: auto;
}
.architecture #business-layout #navi .navi ul li a {
  background-color: #eb9911;
}
.architecture #business-layout #des .row .des .ttl h3 {
  color: #eb9911;
}
.architecture #business-layout #des .row .des .flex .text .box h5 {
  background-color: #eb9911;
}
.architecture #business-layout #listing {
  background-color: #fff5e4;
}
.architecture #business-layout #listing .listing .btn-box a {
  background-color: #eb9911;
}

.decarbonization #mv-inner .mv-inner .text p {
  color: #509922;
}
.decarbonization #business-layout #intro {
  background-image: url("/assets/images/business/decarbonization/intro-bg.jpg");
}
.decarbonization #business-layout #navi .navi ul li a {
  background-color: #509922;
}
.decarbonization #business-layout #des .row .des .ttl h3 {
  color: #509922;
}
.decarbonization #business-layout #des .row .des .flex .text .box h5 {
  background-color: #509922;
}
.decarbonization #business-layout #listing {
  background-color: #e8f2e2;
}
.decarbonization #business-layout #listing .listing .btn-box a {
  background-color: #509922;
}

.maintenance #mv-inner .mv-inner .text p {
  color: #a57f00;
}
.maintenance #business-layout #intro {
  background-image: url("/assets/images/business/maintenance/intro-bg.jpg");
}
.maintenance #business-layout #intro .intro .box {
  margin-left: auto;
}
.maintenance #business-layout #navi .navi ul li a {
  background-color: #a57f00;
}
.maintenance #business-layout #des .row .des .ttl h3 {
  color: #a57f00;
}
.maintenance #business-layout #des .row .des .flex .text .box h5 {
  background-color: #a57f00;
}

.real-estate #mv-inner .mv-inner .text p {
  color: #a57f00;
}
.real-estate #business-layout #intro {
  background-image: url("/assets/images/business/real_estate/intro-bg.jpg");
}
.real-estate #business-layout #intro .intro .box {
  margin-left: auto;
}
.real-estate #business-layout #navi .navi ul li a {
  background-color: #a57f00;
}
.real-estate #business-layout #des .row .des .ttl h3 {
  color: #a57f00;
}
.real-estate #business-layout #des .row .des .flex .text .box h5 {
  background-color: #a57f00;
}

#pagenation .pagenation {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #pagenation .pagenation {
    margin-top: 40px;
  }
}
#pagenation .pagenation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#pagenation .pagenation ul li {
  width: 48px;
  height: 48px;
  margin: 0 8px;
}
#pagenation .pagenation ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #0B57A7;
  border: 1px solid #0B57A7;
  color: #fff;
}
#pagenation .pagenation ul li .active {
  background-color: #fff;
  border: 1px solid #0B57A7;
  color: #0B57A7;
}
#pagenation .pagenation ul li .dod {
  background-color: transparent;
  border: 1px solid transparent;
}
#pagenation .pagenation ul li .dod span {
  margin-top: -10px;
  color: #0B57A7;
  font-size: 2rem;
  letter-spacing: 3px;
}

#news {
  background-color: #f8f8f8;
}
#news .news {
  position: relative;
  padding: 70px 0;
}
#news .news .btn-search {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 8;
}
#news .news .btn-search a {
  padding: 10px 15px;
  color: #fff;
  background-color: #505050;
}
#news .news .tag {
  display: table;
  color: #fff;
  padding: 0px 20px 0px 20px;
  font-size: 1.3rem;
  min-width: 125px;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #news .news .tag {
    font-size: 1rem;
    line-height: 1.6rem;
    padding: 3px 8px;
    min-width: auto;
  }
}
#news .news .tag p {
  height: 27px;
}
@media only screen and (max-width: 750px) {
  #news .news .tag p {
    height: auto;
  }
}
#news .news .tag.blue {
  background-color: #1671B4;
}
#news .news .tag.cyan {
  background-color: #37A3E6;
}
#news .news .tag.navyblue {
  background-color: #0b57a7;
}
#news .news .tag.grey {
  background-color: #808080;
}
#news .news .tag.brown {
  background-color: #A57F00;
}
#news .news .tag.green {
  background-color: #4F9821;
}
#news .news .tag.green-dark {
  background-color: #3C6A36;
}
#news .news .tag.indigo {
  background-color: #08A4B9;
}
#news .news .tag.pure {
  background-color: #5B57B7;
}
#news .news .tag.orange {
  background-color: #DE6106;
}
#news .news .tag.black {
  background-color: #505050;
}
#news .news .tag.yellow {
  background-color: #A57F00;
}
#news .news .list-col-4 {
  margin-top: 40px;
}
#news .news .list-col-4 > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -3%;
  margin-top: 40px;
}
#news .news .list-col-4 > ul li {
  width: 21.97%;
  margin-left: 3%;
  margin-top: 3%;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #news .news .list-col-4 > ul li {
    width: 47%;
  }
}
#news .news .list-col-4 > ul li .images-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#news .news .list-col-4 > ul li .images-date .date {
  min-width: 85px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 25px 5px;
  background-color: #505050;
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #news .news .list-col-4 > ul li .images-date .date {
    min-width: 55px;
    padding: 15px 5px;
    line-height: 1;
  }
}
#news .news .list-col-4 > ul li .images-date .date p {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-family: "EB Garamond", serif;
}
#news .news .list-col-4 > ul li .images-date .date .year {
  font-size: 2rem;
}
@media only screen and (max-width: 834px) {
  #news .news .list-col-4 > ul li .images-date .date .year {
    font-size: 1.6rem;
  }
}
#news .news .list-col-4 > ul li .images-date .date .day-month {
  font-size: 3.2rem;
}
@media only screen and (max-width: 834px) {
  #news .news .list-col-4 > ul li .images-date .date .day-month {
    font-size: 2rem;
  }
}
#news .news .list-col-4 > ul li .detail {
  padding: 25px 20px 60px 20px;
}
@media only screen and (max-width: 834px) {
  #news .news .list-col-4 > ul li .detail {
    padding: 25px 15px 40px 15px;
  }
}
#news .news .list-col-4 > ul li .detail > p {
  margin-top: 15px;
}
@media only screen and (max-width: 834px) {
  #news .news .list-col-4 > ul li .detail > p {
    font-size: 1.4rem;
    line-height: 1.6;
  }
}
#news .news span.new {
  display: inline-table;
  width: 40px;
  margin-left: 5px;
  padding: 3px 0 2px 0;
  font-size: 1rem;
  line-height: 1rem;
  color: #de0000;
  border: 1px solid #de0000;
  text-align: center;
}
#news .news span.pdf {
  display: inline-table;
  width: 40px;
  margin-left: 5px;
  padding: 3px 0 2px 0;
  text-align: center;
}
#news .news span.link {
  display: inline-table;
  width: 40px;
  margin-left: 5px;
  padding: 3px 0 2px 0;
  text-align: center;
}

.page-inner #news .news .tag {
  max-width: -webkit-fit-content !important;
  max-width: -moz-fit-content !important;
  max-width: fit-content !important;
}

.list-sort-content {
  margin-top: 40px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 834px) {
  .list-sort-content {
    margin-top: 20px;
  }
}
.list-sort-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 750px) {
  .list-sort-content ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.list-sort-content ul li {
  text-align: center;
}
.list-sort-content ul li a {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  border-bottom: 2px solid #ccc;
  padding: 0 20px;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  .list-sort-content ul li a {
    padding: 0 15px;
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 834px) {
  .list-sort-content ul li a {
    padding: 0 6px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 750px) {
  .list-sort-content ul li a {
    font-size: 1.2rem;
    padding: 0 15px;
  }
}
.list-sort-content ul li a:hover:after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
.list-sort-content ul li a:hover .arrow-down {
  opacity: 1;
}
.list-sort-content ul li a:after {
  opacity: 0;
  display: block;
  content: "";
  position: absolute;
  bottom: -2px;
  right: 0;
  z-index: 8;
  width: 0px;
  height: 2px;
  background-color: #0b57a7;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.list-sort-content ul li .active:after {
  opacity: 1;
  width: 100%;
  left: 0;
  right: auto;
}
.list-sort-content ul li .active .arrow-down {
  opacity: 1;
}
.list-sort-content ul li:nth-child(1) a:after {
  background-color: #1671B4;
}
.list-sort-content ul li:nth-child(1) a:hover {
  color: #1671B4;
}
.list-sort-content ul li:nth-child(1) .active {
  color: #1671B4;
}
.list-sort-content ul li:nth-child(1) .active .arrow-down {
  border-top: 5px solid #1671B4;
}
.list-sort-content ul li:nth-child(2) a:after {
  background-color: #1671B4;
}
.list-sort-content ul li:nth-child(2) a:hover {
  color: #1671B4;
}
.list-sort-content ul li:nth-child(2) .active {
  color: #1671B4;
}
.list-sort-content ul li:nth-child(2) .active .arrow-down {
  border-top: 5px solid #1671B4;
}
.list-sort-content ul li:nth-child(3) a:after {
  background-color: #5B57B7;
}
.list-sort-content ul li:nth-child(3) a:hover {
  color: #5B57B7;
}
.list-sort-content ul li:nth-child(3) a:hover .arrow-down {
  border-top: 5px solid #5B57B7;
}
.list-sort-content ul li:nth-child(3) .active {
  color: #5B57B7;
}
.list-sort-content ul li:nth-child(3) .active .arrow-down {
  border-top: 5px solid #5B57B7;
}
.list-sort-content ul li:nth-child(4) a:after {
  background-color: #4F9821;
}
.list-sort-content ul li:nth-child(4) a:after .arrow-down {
  border-top: 5px solid #4F9821;
}
.list-sort-content ul li:nth-child(4) a:hover {
  color: #4F9821;
}
.list-sort-content ul li:nth-child(4) a:hover .arrow-down {
  border-top: 5px solid #4F9821;
}
.list-sort-content ul li:nth-child(4) .active {
  color: #4F9821;
}
.list-sort-content ul li:nth-child(4) .active .arrow-down {
  border-top: 5px solid #4F9821;
}
.list-sort-content ul li:nth-child(5) a:after {
  background-color: #A57F00;
}
.list-sort-content ul li:nth-child(5) a:hover {
  color: #A57F00;
}
.list-sort-content ul li:nth-child(5) a:hover .arrow-down {
  border-top: 5px solid #A57F00;
}
.list-sort-content ul li:nth-child(5) .active {
  color: #A57F00;
}
.list-sort-content ul li:nth-child(5) .active .arrow-down {
  border-top: 5px solid #A57F00;
}
.list-sort-content ul li:nth-child(6) a:after {
  background-color: #DE6106;
}
.list-sort-content ul li:nth-child(6) a:hover {
  color: #DE6106;
}
.list-sort-content ul li:nth-child(6) a:hover .arrow-down {
  border-top: 5px solid #DE6106;
}
.list-sort-content ul li:nth-child(6) .active {
  color: #DE6106;
}
.list-sort-content ul li:nth-child(6) .active .arrow-down {
  border-top: 5px solid #DE6106;
}
.list-sort-content ul li:nth-child(7) a:after {
  background-color: #08A4B9;
}
.list-sort-content ul li:nth-child(7) a:hover {
  color: #08A4B9;
}
.list-sort-content ul li:nth-child(7) a:hover .arrow-down {
  border-top: 5px solid #08A4B9;
}
.list-sort-content ul li:nth-child(7) .active {
  color: #08A4B9;
}
.list-sort-content ul li:nth-child(7) .active .arrow-down {
  border-top: 5px solid #08A4B9;
}
.list-sort-content ul li:nth-child(8) a:after {
  background-color: #808080;
}
.list-sort-content ul li:nth-child(8) a:hover {
  color: #808080;
}
.list-sort-content ul li:nth-child(8) a:hover .arrow-down {
  border-top: 5px solid #808080;
}
.list-sort-content ul li:nth-child(8) .active {
  color: #808080;
}
.list-sort-content ul li:nth-child(8) .active .arrow-down {
  border-top: 5px solid #808080;
}

.arrow-down {
  opacity: 0;
  position: absolute;
  bottom: -7px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #0b57a7;
  webkit-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.detail-new {
  background-color: #fff !important;
  padding-top: 0 !important;
}
.detail-new .news {
  padding-top: 0 !important;
}
.detail-new .img-center img {
  margin-left: auto;
  margin-right: auto;
}
.detail-new .title-head {
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  padding: 40px 0;
}
@media only screen and (max-width: 750px) {
  .detail-new .title-head {
    padding: 20px 0;
  }
}
.detail-new .title-head .tag-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.detail-new .title-head .tag-date .date {
  margin-left: 10px;
}
.detail-new .title-head .title {
  margin-top: 20px;
}
@media only screen and (max-width: 750px) {
  .detail-new .title-head .title {
    margin-top: 20px;
  }
}
.detail-new .title-head .title h1, .detail-new .title-head .title h2, .detail-new .title-head .title h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5.5rem;
  color: #0b57a7;
  text-align: left;
}
@media only screen and (max-width: 750px) {
  .detail-new .title-head .title h1, .detail-new .title-head .title h2, .detail-new .title-head .title h3 {
    font-size: 2.6rem;
    line-height: 4rem;
  }
}
.detail-new .title-head .category {
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  .detail-new .title-head .category {
    margin-top: 20px;
  }
}
.detail-new .title-head .category ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.detail-new .title-head .category ul li {
  margin: 0 5px;
}
.detail-new .title-head .category ul li a {
  border-radius: 30px;
  color: #0b57a7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0px 20px;
  background-color: #f5f5f5;
  font-size: 1.3rem;
}
.detail-new .content {
  margin-top: 50px;
}
@media only screen and (max-width: 750px) {
  .detail-new .content {
    margin-top: 40px;
  }
}
.detail-new .content .txt-link {
  color: #0b57a7;
  text-decoration: underline;
}
.detail-new .content .title-section h3 {
  font-size: 2.4rem !important;
  text-align: left !important;
  line-height: 3rem !important;
}
.detail-new .content .title-section + p {
  margin-top: 40px;
}
.detail-new .content .detail {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .detail {
    margin-top: 40px;
  }
}
.detail-new .content .detail .title-detail h1, .detail-new .content .detail .title-detail h2, .detail-new .content .detail .title-detail h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 5.5rem;
  color: #0b57a7;
  text-align: left !important;
}
.detail-new .content .detail .sub-title-detail {
  margin-top: 20px;
}
.detail-new .content .detail .sub-title-detail p a {
  color: #0b57a7;
  text-decoration: underline;
}
.detail-new .content .detail .sub-title-detail .right-txt {
  text-align: right;
}
.detail-new .content .col-2 {
  margin-top: 40px;
}
.detail-new .content .col-2 > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-2 > ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.detail-new .content .col-2 > ul li {
  width: 48%;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-2 > ul li {
    width: 100%;
  }
}
.detail-new .content .col-2 > ul li .img {
  margin-bottom: 10px;
}
.detail-new .content .col-2 > ul li .img img {
  width: 100%;
}
.detail-new .content .col-2 > ul li .link a {
  color: #0b57a7;
  text-decoration: underline;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-2 > ul li + li {
    margin-top: 20px;
  }
}
.detail-new .content .col-2 + .col-2 {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-2 + .col-2 {
    margin-top: 20px;
  }
}
.detail-new .content .col-3 {
  margin-top: 40px;
}
.detail-new .content .col-3 > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-3 > ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.detail-new .content .col-3 > ul li {
  width: 31.333%;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-3 > ul li {
    width: 100%;
  }
}
.detail-new .content .col-3 > ul li .img {
  margin-bottom: 10px;
}
.detail-new .content .col-3 > ul li .img img {
  width: 100%;
}
.detail-new .content .col-3 > ul li .link a {
  color: #0b57a7;
  text-decoration: underline;
}
@media only screen and (max-width: 750px) {
  .detail-new .content .col-3 > ul li + li {
    margin-top: 20px;
  }
}
.detail-new .content .txt {
  margin-top: 20px;
}
.detail-new .content .txt .line-yellow {
  background: url("/assets/images/news/line-yellow.jpg");
  background-repeat: repeat-x;
  background-position: bottom;
}
.detail-new .content .txt .list-txt > ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.detail-new .content .txt .list-txt > ul li span {
  margin-right: 5px;
}
.detail-new .content .txt .list-txt + .list-txt {
  margin-top: 20px;
}
.detail-new .content .head-list {
  margin-bottom: 5px;
}
.detail-new .content .head-list h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem !important;
  line-height: 3.8rem !important;
  color: #0b57a7;
  text-align: left !important;
}
.detail-new .content .under-line {
  text-decoration: underline;
}
.detail-new .content .iframe {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
.detail-new .content .iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.detail-new .tag {
  max-width: -webkit-fit-content !important;
  max-width: -moz-fit-content !important;
  max-width: fit-content !important;
}
.detail-new .img-full-banner {
  margin-top: 50px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.detail-new .img-full-banner a {
  color: #0b57a7;
  text-decoration: underline;
}
.detail-new .txt {
  margin-top: 50px !important;
}
.detail-new .txt p + p {
  margin-top: 40px;
}
.detail-new .txt p a {
  color: #0B57A7;
  text-decoration: underline;
}

@media only screen and (max-width: 750px) {
  .column-sp-rev ul {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
}

#sustainability #banner {
  height: 520px;
  background: url("/assets/images/sustainability/banner01.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 5%;
}
@media only screen and (max-width: 834px) {
  #sustainability #banner {
    height: 320px;
  }
}
#sustainability #banner .text-banner h2 {
  font-size: 4.8rem;
  line-height: 77px;
  text-align: center;
  color: #fff;
  font-family: "Noto Serif JP", serif;
}
@media only screen and (max-width: 834px) {
  #sustainability #banner .text-banner h2 {
    font-size: 3.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability #banner .text-banner h2 {
    font-size: 2.4rem;
    line-height: 40px;
  }
}
#sustainability .sustainability {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #sustainability .sustainability {
    margin-top: 40px;
  }
}
#sustainability .sustainability .txt-detail {
  max-width: 800px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#sustainability .sustainability .col-2 {
  margin-top: 60px;
}
@media only screen and (max-width: 750px) {
  #sustainability .sustainability .col-2 {
    margin-top: 40px;
  }
}
#sustainability .sustainability .col-2 > ul {
  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-top: -20px;
}
#sustainability .sustainability .col-2 > ul li {
  width: 48.5%;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #sustainability .sustainability .col-2 > ul li {
    width: 100%;
    margin-top: 20px;
  }
}
#sustainability .sustainability .col-2 > ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#sustainability .sustainability .col-2 > ul li a .tabs-list-link {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 440px;
  width: 100%;
  padding: 10px;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  background: url("/assets/images/sustainability/arrow-right.png") #0b57a7;
  background-position: right 0.5em center;
  background-repeat: no-repeat;
}
#sustainability .sustainability .col-2 > ul li a .tabs-list-link .tabs-list {
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 834px) {
  #sustainability .sustainability .col-2 > ul li a .tabs-list-link {
    max-width: 280px;
    font-size: 1.6rem;
  }
}
#sustainability .sustainability .col-3 {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #sustainability .sustainability .col-3 {
    margin-top: 40px;
  }
}
#sustainability .sustainability .col-3 > ul {
  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-top: -40px;
}
#sustainability .sustainability .col-3 > ul li {
  width: 31.4%;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #sustainability .sustainability .col-3 > ul li {
    width: 100%;
  }
}
#sustainability .sustainability .col-3 > ul li a {
  position: relative;
  display: block;
}
#sustainability .sustainability .col-3 > ul li a .image img {
  width: 100%;
}
#sustainability .sustainability .col-3 > ul li a .txt-list {
  width: 100%;
  padding: 10px;
  text-align: center;
  color: #fff;
  background: url("/assets/images/sustainability/arrow-right.png");
  background-position: right 1em center;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 834px) {
  #sustainability .sustainability .col-3 > ul li a .txt-list {
    font-size: 1.3rem;
  }
}
#sustainability .sustainability .col-3 .tab-green {
  background-color: #6abf92;
}
#sustainability .sustainability .col-3 .tab-lemon {
  background-color: #51b203;
}
#sustainability .sustainability .col-3 .tab-blue {
  background-color: #0598d9;
}
#sustainability .sustainability .col-3 .tab-orange {
  background-color: #ff8201;
}

#new-sustainability #banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 520px;
  background: url("/assets/images/sustainability/new_organization/banner.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 5%;
}
@media only screen and (max-width: 834px) {
  #new-sustainability #banner {
    height: 320px;
  }
}
#new-sustainability #banner .text-banner h2 {
  display: table;
  margin: 0 auto;
  padding: 10px 50px;
  font-family: "Noto Serif JP", serif;
  font-size: 4.8rem;
  line-height: 7.8rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #new-sustainability #banner .text-banner h2 {
    font-size: 3.6rem;
    line-height: 5.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #new-sustainability #banner .text-banner h2 {
    font-size: 2.4rem;
    line-height: 4.4rem;
  }
}
#new-sustainability .sustainability {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability {
    margin-top: 40px;
  }
}
#new-sustainability .sustainability .txt-detail {
  max-width: 800px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#new-sustainability .sustainability .txt-area {
  margin-left: auto;
  margin-right: auto;
  background-color: #f6f6f6;
}
#new-sustainability .sustainability .col-2 {
  margin-top: 60px;
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability .col-2 {
    margin-top: 40px;
  }
}
#new-sustainability .sustainability .col-2 > ul {
  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-top: -20px;
}
#new-sustainability .sustainability .col-2 > ul li {
  width: 48.5%;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability .col-2 > ul li {
    width: 100%;
    margin-top: 20px;
  }
}
#new-sustainability .sustainability .col-2 > ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#new-sustainability .sustainability .col-2 > ul li a .tabs-list-link {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 440px;
  width: 100%;
  padding: 10px;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  background: url("/assets/images/sustainability/arrow-right.png") #0b57a7;
  background-position: right 0.5em center;
  background-repeat: no-repeat;
}
#new-sustainability .sustainability .col-2 > ul li a .tabs-list-link .tabs-list {
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 834px) {
  #new-sustainability .sustainability .col-2 > ul li a .tabs-list-link {
    max-width: 280px;
    font-size: 1.6rem;
  }
}
#new-sustainability .sustainability .col-3 {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability .col-3 {
    margin-top: 40px;
  }
}
#new-sustainability .sustainability .col-3 > ul {
  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-top: -40px;
}
#new-sustainability .sustainability .col-3 > ul li {
  width: 31.4%;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability .col-3 > ul li {
    width: 100%;
  }
}
#new-sustainability .sustainability .col-3 > ul li a {
  position: relative;
  display: block;
}
#new-sustainability .sustainability .col-3 > ul li a .image img {
  width: 100%;
}
#new-sustainability .sustainability .col-3 > ul li a .txt-list {
  width: 100%;
  padding: 10px;
  text-align: center;
  color: #fff;
  background: url("/assets/images/sustainability/arrow-right.png");
  background-position: right 1em center;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 834px) {
  #new-sustainability .sustainability .col-3 > ul li a .txt-list {
    font-size: 1.3rem;
  }
}
#new-sustainability .sustainability .col-3 .tab-green {
  background-color: #6abf92;
}
#new-sustainability .sustainability .col-3 .tab-blue {
  background-color: #0598d9;
}
#new-sustainability .sustainability .col-3 .tab-orange {
  background-color: #ff8201;
}
#new-sustainability .sustainability .flow {
  width: 100%;
  max-width: 1024px;
  margin-top: 75px;
  margin-left: auto;
  margin-right: auto;
  padding: 65px;
  background-color: #e6f3f9;
}
@media only screen and (max-width: 834px) {
  #new-sustainability .sustainability .flow {
    margin-top: 50px;
    padding: 35px;
  }
}
@media only screen and (max-width: 750px) {
  #new-sustainability .sustainability .flow {
    margin-top: 40px;
    padding: 25px;
  }
}
#new-sustainability .sustainability .flow img {
  display: table;
  margin-left: auto;
  margin-right: auto;
}
#new-sustainability .flow-row {
  margin-top: 75px;
}
@media only screen and (max-width: 834px) {
  #new-sustainability .flow-row {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 750px) {
  #new-sustainability .flow-row {
    margin-top: 40px;
  }
}
#new-sustainability .flow-row .flow-box {
  width: 92%;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  padding: 65px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #new-sustainability .flow-row .flow-box {
    padding: 35px;
  }
}
@media only screen and (max-width: 750px) {
  #new-sustainability .flow-row .flow-box {
    padding: 25px;
  }
}
#new-sustainability .flow-row .flow-box img {
  display: table;
  margin-left: auto;
  margin-right: auto;
}

#sustainability-organization #banner {
  height: 456px;
  background: url("/assets/images/sustainability/banner02.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 4%;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization #banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: auto;
    padding: 8% 4%;
  }
}
#sustainability-organization #banner .text-banner {
  margin-left: auto;
  background: rgba(255, 255, 255, 0.9);
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  padding: 40px;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization #banner .text-banner {
    padding: 25px;
  }
}
#sustainability-organization #banner .text-banner h2 {
  font-size: 4rem;
  line-height: 1;
  color: #0b57a7;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 40px;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization #banner .text-banner h2 {
    font-size: 2.6rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability-organization #banner .text-banner p br {
    display: none;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .title-content-left h4 {
  font-size: 3.2rem;
  line-height: 45px;
  color: #0b57a7;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 20px;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .title-content-left h4 {
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .content-new-lifestyle {
  padding-top: 120px;
}
@media only screen and (max-width: 834px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .content-new-lifestyle {
    padding-top: 60px;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 40px;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left {
  width: 46.8%;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left {
    width: 100%;
    margin-top: 20px;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left .box-grey {
  background-color: #f8f8f8;
  padding: 20px 30px;
  margin-top: 40px;
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left .box-grey h5 {
  font-size: 1.8rem;
  font-weight: bold;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left .box-grey h5 {
    font-size: 1.6rem;
  }
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-left .box-grey ul li h5 {
  margin-top: 20px;
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-right {
  width: 50%;
}
#sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-right .txt-img p {
  text-align: right;
  font-size: 1.3rem;
}
@media only screen and (max-width: 750px) {
  #sustainability-organization .sustainability-organization #content-new-lifestyle .col-2 .content-right {
    width: 100%;
  }
}

.title-content {
  text-align: center;
}
.title-content h3 {
  font-size: 2.8rem;
  color: #003d7e;
  font-weight: bold;
}
@media only screen and (max-width: 750px) {
  .title-content h3 {
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
.title-content p {
  margin-top: 30px;
}

#content-list-member {
  background-color: #f8f8f8;
}
#content-list-member .content-list-member {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media only screen and (max-width: 834px) {
  #content-list-member .content-list-member {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
#content-list-member .box-white {
  padding: 40px 40px;
  background-color: #fff;
  margin-top: 40px;
  max-width: 1024px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white {
    padding: 30px 20px;
    margin-top: 20px;
  }
}
#content-list-member .box-white .ttl {
  margin-bottom: 50px;
}
@media only screen and (max-width: 1080px) {
  #content-list-member .box-white .ttl {
    margin-bottom: 30px;
  }
}
#content-list-member .box-white .ttl h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1080px) {
  #content-list-member .box-white .ttl h3 {
    font-size: 3rem;
    line-height: 4rem;
    margin-bottom: 5px;
  }
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .ttl h3 {
    font-size: 2.2rem;
    line-height: 3.2rem;
    margin-bottom: 0;
  }
}
#content-list-member .box-white .ttl p {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1080px) {
  #content-list-member .box-white .ttl p {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .ttl p {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
}
#content-list-member .box-white .content .row + .row {
  margin-top: 70px;
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .content .row + .row {
    margin-top: 40px;
  }
}
#content-list-member .box-white .content .row h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  line-height: 4.2rem;
  color: #0b57a7;
  margin-bottom: 35px;
}
@media only screen and (max-width: 1080px) {
  #content-list-member .box-white .content .row h4 {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .content .row h4 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 25px;
  }
}
#content-list-member .box-white .content .row ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -15px;
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .content .row ul {
    display: block;
    margin-top: -10px;
  }
}
#content-list-member .box-white .content .row ul li {
  width: 48%;
  padding-top: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #D1D1D1;
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .content .row ul li {
    width: 100%;
    margin-top: 10px;
    padding-bottom: 10px;
  }
}
#content-list-member .box-white .content .row .box-grey {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 40px;
  padding: 40px;
  background-color: #e4e4e4;
  font-size: 3.2rem;
  line-height: 3.2rem;
  color: #fff;
}
@media only screen and (max-width: 1080px) {
  #content-list-member .box-white .content .row .box-grey {
    font-size: 2.2rem;
    line-height: 2.2rem;
    padding: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #content-list-member .box-white .content .row .box-grey {
    margin-top: 30px;
  }
}

#scroll-down .scroll-down ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#scroll-down .scroll-down ul li {
  margin: 0 8px;
  max-width: 280px;
  width: 100%;
}
#scroll-down .scroll-down ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 40px;
  color: #fff;
  background: url("/assets/images/sustainability/arrow-down.png") #0b57a7;
  background-repeat: no-repeat;
  background-position: center right 1em;
}
@media only screen and (max-width: 750px) {
  #scroll-down .scroll-down ul li a {
    font-size: 1.3rem;
  }
}

#sustainability-local-contribution .sustainability-local-contribution {
  margin-top: 80px;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution {
    margin-top: 40px;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section {
  padding: 120px 0;
}
@media only screen and (max-width: 834px) {
  #sustainability-local-contribution .sustainability-local-contribution .section {
    padding: 80px 0;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section {
    padding: 40px 0;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-left {
  width: 49%;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-left {
    width: 100%;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-left img {
  width: 100%;
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right {
  width: 48%;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right {
    width: 100%;
    margin-top: 40px;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt {
  margin-top: 10px;
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt h2 {
  font-size: 3.2rem;
  line-height: 50px;
  color: #0b57a7;
  font-family: "Noto Serif JP", serif;
}
@media only screen and (max-width: 834px) {
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt h2 {
    font-size: 2.4rem;
    line-height: 1.6;
  }
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt h2 br {
    display: none;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt h2 {
    font-size: 2.2rem;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .section .col-2 ul li .content-right .txt p {
  margin-top: 10px;
}
#sustainability-local-contribution .sustainability-local-contribution .section:nth-child(odd) {
  background-color: #f8f8f8;
}
#sustainability-local-contribution .sustainability-local-contribution .section:nth-child(even) .col-2 ul li {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .section:nth-child(even) .col-2 ul li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 834px) {
  #sustainability-local-contribution .sustainability-local-contribution .category {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .category {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag {
  display: table;
  color: #fff;
  padding: 0px 10px 0px 10px;
  font-size: 1.6rem;
  width: 160px;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #sustainability-local-contribution .sustainability-local-contribution .category .tag {
    padding: 0px 5px 0px 5px;
    font-size: 1.3rem;
    width: 95px;
  }
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .category .tag {
    margin-right: 16px;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag + .tag {
  margin-left: 16px;
}
@media only screen and (max-width: 750px) {
  #sustainability-local-contribution .sustainability-local-contribution .category .tag + .tag {
    margin-left: 0;
  }
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.blue {
  background-color: #1671B4;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.grey {
  background-color: #808080;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.brown {
  background-color: #A57F00;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.green {
  background-color: #4F9821;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.indigo {
  background-color: #08A4B9;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.pure {
  background-color: #5B57B7;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.orange {
  background-color: #DE6106;
}
#sustainability-local-contribution .sustainability-local-contribution .category .tag.black {
  background-color: #505050;
}
#sustainability-local-contribution #content-list-member {
  background-color: #fff;
}
#sustainability-local-contribution #content-list-member .content-list-member {
  padding-bottom: 0;
}
#sustainability-local-contribution #content-list-member .box-white {
  background-color: #f8f8f8;
}
#sustainability-local-contribution #content-list-member .box-white .content .row ul li {
  background: url("/assets/images/sustainability/arrow-right-blue.png");
  background-repeat: no-repeat;
  background-position: center right 1em;
  padding-right: 2em;
}
@media only screen and (max-width: 834px) {
  #sustainability-local-contribution #content-list-member .box-white .content .row ul li {
    padding-right: 30px;
  }
}

#recruit_inner {
  background-color: #fff;
}
#recruit_inner .content-1220 {
  width: 92%;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .content-1220 {
    width: 88%;
  }
}
#recruit_inner .main-mv {
  position: relative;
  height: 700px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv {
    height: 450px;
  }
}
#recruit_inner .main-mv .text-mv {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 90px;
  z-index: 8;
  width: 90%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .main-mv .text-mv {
    bottom: 120px;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv .text-mv {
    bottom: 40px;
  }
}
#recruit_inner .main-mv .text-mv .text-mv-content {
  position: relative;
  width: 100%;
}
#recruit_inner .main-mv .text-mv .text-mv-content .tt-work-together {
  position: absolute;
  bottom: 4%;
  right: 29%;
  z-index: 8;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt-work-together {
    bottom: 47%;
    right: inherit;
    left: 0;
    width: 77%;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt-work-together {
    width: 100%;
    bottom: 65%;
  }
}
#recruit_inner .main-mv .text-mv .text-mv-content .tt_mv h1 {
  font-family: "Noto Serif JP", serif;
  font-size: 5.2rem;
  line-height: 7.7rem;
  color: #fff;
  text-align: right;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv h1 {
    font-size: 4rem;
    line-height: 5.5rem;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv h1 {
    font-size: 3.6rem;
    line-height: 5.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv h1 {
    font-size: 2.3rem;
    line-height: 3.6rem;
  }
}
#recruit_inner .main-mv .text-mv .text-mv-content .tt_mv p {
  display: table;
  margin-top: 10px;
  margin-left: auto;
  margin-right: 35px;
  padding: 2px 10px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.2rem;
  line-height: 3.2rem;
  font-weight: 500;
  color: #fff;
  background-color: #000;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv p {
    font-size: 2rem;
    line-height: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv p {
    font-size: 1.6rem;
    line-height: 2.6rem;
    margin-right: 10px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .main-mv .text-mv .text-mv-content .tt_mv p {
    margin-right: 0;
    font-size: 1.1rem;
    line-height: 2rem;
    margin-top: 5px;
    padding: 0px 5px;
    white-space: nowrap;
  }
}
#recruit_inner .main-mv .banner-smile {
  position: absolute;
  right: 18.5%;
  bottom: -25px;
  z-index: 9;
}
@media only screen and (max-width: 1440px) {
  #recruit_inner .main-mv .banner-smile {
    right: 8%;
  }
}
@media only screen and (max-width: 1366px) {
  #recruit_inner .main-mv .banner-smile {
    right: 7.5%;
  }
}
#recruit_inner .main-mv .banner-smile a {
  display: table;
  margin-left: auto;
}
#recruit_inner .main-mv .mv-slick-recruit {
  margin-top: -144px;
  width: 100%;
  /*height: 700px;*/
  position: relative;
  z-index: 0;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .main-mv .mv-slick-recruit {
    margin-top: 0px;
    /*height: inherit;*/
  }
}
#recruit_inner .main-mv .mv-slick-recruit .item {
  height: 700px;
  width: 100%;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .main-mv .mv-slick-recruit .item {
    height: 450px;
  }
}
#recruit_inner .main-mv .mv-slick-recruit .item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  overflow: hidden;
}
#recruit_inner #mv-recruit .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  left: 50px;
  bottom: 50px;
  z-index: 4;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #mv-recruit .slick-dots {
    left: 0;
    /*transform: translateX(-50%);*/
    bottom: 20px;
  }
}
#recruit_inner #mv-recruit .slick-dots li button {
  font-size: 0;
  width: 73px;
  height: 4px;
  background-color: rgba(255, 255, 255, 0.5);
  margin: 0 5px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #mv-recruit .slick-dots li button {
    width: 50px;
    height: 3px;
  }
}
#recruit_inner #mv-recruit .slick-dots li.slick-active button {
  width: 73px;
  height: 4px;
  background-color: rgb(255, 255, 255);
}
@media only screen and (max-width: 834px) {
  #recruit_inner #mv-recruit .slick-dots li.slick-active button {
    width: 50px;
    height: 3px;
  }
}
#recruit_inner .message {
  padding: 100px 0 320px;
  background: url("/assets/images/recruit/bg_blue.png");
  background-size: 100%;
  background-position: top left;
  text-align: center;
  color: #0b57a7;
  font-size: 20px;
  line-height: 2.5;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .message {
    padding: 50px 0 120px;
    font-size: 18px;
    line-height: 2;
    text-align: left;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .message p {
    width: 88%;
    margin: auto;
  }
}
#recruit_inner .message span {
  font-size: 32px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .message span {
    font-size: 22px;
    line-height: 1.6;
  }
}
#recruit_inner .message .img-smail {
  max-width: 518px;
  width: 100%;
  margin: auto;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .message .img-smail {
    max-width: inherit;
    width: 61%;
    margin: auto;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .message .img-smail {
    margin-top: 10px;
  }
}
#recruit_inner .message .banner-smile {
  width: 88%;
  max-width: 718px;
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #recruit_inner .message .banner-smile {
    margin-top: 30px;
  }
}
#recruit_inner .message .banner-smile a {
  display: block;
}
#recruit_inner .box-w {
  background-color: #fff;
  margin-top: -240px;
  margin-bottom: 120px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .box-w {
    margin-top: -90px;
    margin-bottom: 60px;
  }
}
#recruit_inner .box-w .message-text {
  text-align: left;
  max-width: 707px;
  width: 100%;
  padding-top: 140px;
  margin-left: 30%;
  /*margin-left: 340px;*/
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .box-w .message-text {
    padding-top: 30px;
    max-width: 707px;
    width: 66%;
    margin-left: 28%;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .box-w .message-text {
    width: 80%;
    margin-left: 20%;
    padding-right: 3%;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .box-w .message-text {
    width: 75%;
    margin-left: 25%;
    padding-right: 5%;
  }
}
#recruit_inner .box-w .message-text span {
  color: #0b57a7;
}
#recruit_inner .box-w .mmessage-img {
  max-width: 900px;
  width: 100%;
  margin: auto;
  margin-top: 50px;
  position: relative;
}
#recruit_inner .box-w .ttl_mmessage-black {
  position: absolute;
  left: 54px;
  top: -367px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .box-w .ttl_mmessage-black {
    width: 10%;
    left: 34px;
    top: -337px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .box-w .ttl_mmessage-black {
    width: 100%;
    left: 0px;
    top: -347px;
    max-width: 65px;
  }
}
@media only screen and (max-width: 550px) {
  #recruit_inner .box-w .ttl_mmessage-black {
    top: -586px;
  }
}
#recruit_inner .box-w .tt_mmessage {
  position: absolute;
  right: -170px;
  bottom: 20px;
}
@media only screen and (max-width: 1242px) {
  #recruit_inner .box-w .tt_mmessage {
    right: -110px;
  }
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .box-w .tt_mmessage {
    right: 4px;
    bottom: -22px;
    width: 40%;
  }
}
#recruit_inner .our-job .tt_our-job {
  margin: auto;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .our-job .tt_our-job {
    width: 40%;
  }
}
#recruit_inner .our-job h2 {
  text-align: center;
  font-size: 30px;
  margin-top: 10px;
  margin-bottom: 60px;
  font-family: "Noto Serif JP", serif;
  color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .our-job h2 {
    margin-bottom: 40px;
    font-size: 26px;
  }
}
#recruit_inner .our-job .our-job-list {
  width: 100%;
}
#recruit_inner .our-job .our-job-list ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 750px) {
  #recruit_inner .our-job .our-job-list ul {
    display: block;
  }
}
#recruit_inner .our-job .our-job-list ul li {
  width: 33.33%;
  background-color: #0263c5;
}
@media only screen and (max-width: 750px) {
  #recruit_inner .our-job .our-job-list ul li {
    width: 100%;
  }
}
#recruit_inner .our-job .our-job-list ul li:nth-child(even) {
  background-color: #037cf7;
}
#recruit_inner .our-job .our-job-list ul li a {
  display: block;
  color: #fff;
}
#recruit_inner .our-job .our-job-list ul li a:hover .cover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#recruit_inner .our-job .our-job-list ul li a .cover {
  overflow: hidden;
}
#recruit_inner .our-job .our-job-list ul li a .cover img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.75, 0.3, 0.25, 1);
}
#recruit_inner .our-job .our-job-list ul li a .brief {
  padding: 50px 15%;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .our-job .our-job-list ul li a .brief {
    padding: 30px 10%;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .our-job .our-job-list ul li a .brief {
    padding: 10%;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .our-job .our-job-list ul li a .brief {
    padding: 7.5%;
  }
}
#recruit_inner .our-job .our-job-list ul li a .brief h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  margin-bottom: 20px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .our-job .our-job-list ul li a .brief h3 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .our-job .our-job-list ul li a .brief p {
    min-height: 60px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .our-job .our-job-list ul li a .brief p {
    min-height: auto;
  }
}
#recruit_inner .our-job .our-job-list ul li a .brief .btn-box {
  margin-top: 45px;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .our-job .our-job-list ul li a .brief .btn-box {
    margin-top: 30px;
  }
}
#recruit_inner .our-job .our-job-list ul li a .brief .btn-box .btn {
  width: 100%;
  height: 57px;
  border: 1px solid #fff;
  position: relative;
}
#recruit_inner .our-job .our-job-list ul li a .brief .btn-box .btn::after {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  #recruit_inner .our-job .our-job-list ul li a .brief .btn-box .btn::after {
    width: 30px;
    left: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .our-job .our-job-list ul li a .brief .btn-box .btn::after {
    width: 50px;
    left: 40px;
  }
}
#recruit_inner #recruit-crosstalk {
  background-image: url("/assets/images/recruit/cross-talk-bg.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box {
  margin-bottom: 50px;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box {
    margin-bottom: 30px;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box h2 {
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box h2 {
    margin-bottom: 5px;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box p {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box p {
    font-size: 2.6rem;
    line-height: 3.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .txthead-box p {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content > p {
  text-align: center;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list {
  margin-top: 50px;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list {
    margin-top: 30px;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul {
  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-top: -3%;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul {
    margin-top: -2%;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul {
    display: block;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li {
  position: relative;
  width: 48.4375%;
  margin-top: 3%;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li {
    width: 49%;
    margin-top: 2%;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li {
    width: 100%;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li.hover-opacity a:hover {
  opacity: 0.8;
  border: 8px solid rgba(255, 255, 255, 0);
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a {
  display: block;
  position: relative;
  border: 8px solid rgba(1, 120, 246, 0);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a:hover {
  opacity: 1;
  border: 8px solid rgb(1, 120, 246);
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .tag {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 8;
  min-width: 120px;
  font-size: 1.4rem;
  line-height: 2.4rem;
  color: #fff;
  text-align: center;
  padding: 4px 5px;
  background-color: #0178f6;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .tag {
    position: static;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 30px;
  z-index: 8;
  margin-left: auto;
  margin-right: auto;
  width: 88%;
  max-width: 425px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text {
    position: static;
    width: 100%;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px 0;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white {
    display: block;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name {
  font-size: 1.5rem;
  line-height: 2.5rem;
  color: #0b57a7;
  text-align: center;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name.left {
  text-align: right;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name.left {
    text-align: center;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name.right {
  text-align: left;
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name.right {
    text-align: center;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .name span {
  font-size: 0.9rem;
  line-height: 0.9rem;
  display: block;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .icon {
  margin: 0 14px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .icon {
    width: 20px;
    margin: 0 10px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text .box-white .icon {
    margin: 10px auto;
  }
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .text h2 {
  padding: 1px 20px;
  font-family: "Noto Serif JP", serif;
  font-size: 1.3rem;
  line-height: 2.3rem;
  color: #fff;
  background-color: #000;
  text-align: center;
}
#recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .img img {
  width: auto;
  min-height: 310px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 834px) {
  #recruit_inner #recruit-crosstalk .recruit-crosstalk .content .recruit-crosstalk-list ul li a .img img {
    width: 100%;
    height: auto;
    min-height: 175px;
  }
}
#recruit_inner .text-1 {
  position: absolute !important;
  width: 33%;
  left: 65px;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .text-1 {
    position: inherit !important;
    left: inherit !important;
    padding: 0 20px;
  }
}
#recruit_inner .text-2 {
  position: absolute !important;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .text-2 {
    position: inherit !important;
    right: initial !important;
    padding: 0 20px;
  }
}
#recruit_inner .text-3 {
  position: absolute !important;
  right: 65px;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .text-3 {
    position: inherit !important;
    right: initial !important;
    padding: 0 20px;
  }
}
#recruit_inner .job-link.link-1:hover {
  position: absolute !important;
  z-index: 1 !important;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .job-link.link-1:hover {
    position: inherit !important;
  }
}
#recruit_inner .job-link.link-2:hover {
  position: absolute !important;
  z-index: 3 !important;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .job-link.link-2:hover {
    position: inherit !important;
  }
}
#recruit_inner .job-link.link-3:hover {
  position: absolute !important;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .job-link.link-3:hover {
    position: inherit !important;
  }
}
#recruit_inner .cross-talk {
  width: 100%;
  background-color: #f6f6f6;
}
#recruit_inner .cross-talk .dis-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .dis-center {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
#recruit_inner .cross-talk .cross-talk_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 600px;
  width: 100%;
  margin-right: 90px;
  text-align: center;
  height: initial;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .cross-talk_cont {
    max-width: initial;
    margin-right: 0px;
    margin-bottom: 40px;
    margin-top: 60px;
    text-align: left;
  }
}
@media only screen and (max-width: 834px) and (max-width: 834px) {
  #recruit_inner .cross-talk .cross-talk_cont p {
    margin: auto;
    width: 90%;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .cross-talk_cont img {
    width: 40%;
  }
}
#recruit_inner .cross-talk .cross-talk_cont h2 {
  font-size: 30px;
  margin-top: 10px;
  margin-bottom: 60px;
  font-family: "Noto Serif JP", serif;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .cross-talk_cont h2 {
    font-size: 26px;
    margin-top: 10px;
    margin-bottom: 30px;
  }
}
#recruit_inner .cross-talk .cross-talk_img {
  margin-bottom: 0;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .cross-talk_img {
    /*margin-bottom: -160px;*/
    width: 80%;
  }
}
#recruit_inner .cross-talk .btn-cross-talk {
  margin: auto;
  margin-top: 60px;
  width: 350px;
  height: 56px;
  background-color: #0b57a7 !important;
  color: #fff;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .cross-talk .btn-cross-talk {
    height: 46px;
    margin-top: 30px;
  }
}
#recruit_inner .cross-talk .btn-cross-talk::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
#recruit_inner main {
  height: 750px;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-perspective: 2px;
  perspective: 2px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner main {
    height: 1050px;
    overflow-y: hidden;
  }
}
#recruit_inner main div {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  position: relative;
  height: 750px;
  /*height: 100vh;*/
  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;
  color: white;
}
@media only screen and (max-width: 834px) {
  #recruit_inner main div {
    height: initial;
  }
}
#recruit_inner .no-parallax {
  background-color: #111;
  z-index: 999;
  height: 100px;
}
#recruit_inner .parallax::after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateZ(-1px) scale(1.5);
  transform: translateZ(-1px) scale(1.5);
  background-size: 100%;
  z-index: -1;
}
#recruit_inner .bg::after {
  background: url("/assets/images/recruit/cross-talk_bg.png");
  background-size: cover;
}
#recruit_inner .banner_meetup {
  padding: 100px 0;
  background-color: #f6f6f6;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .banner_meetup {
    padding: 30px 0;
  }
}
#recruit_inner .banner_meetup img {
  width: 100%;
  max-width: 1220px;
  margin: auto;
}
#recruit_inner .career-up {
  color: #fff;
  padding: 0px 0 200px 0;
  background-color: #f6f6f6;
  margin-bottom: 130px;
  /*@media only screen and (max-width: 500px) {
     padding: 0px 0 200px 0;
  }*/
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up {
    padding: 0px 0 65% 0;
    color: initial;
    margin: auto;
  }
  #recruit_inner .career-up p {
    margin: auto;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .career-up {
    padding: 0px 0 70% 0;
  }
}
#recruit_inner .career-up .career-up__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: -webkit-gradient(linear, left top, right top, from(#f6f6f6), color-stop(34%, #f6f6f6), color-stop(34%, #0b57a7), to(#0b57a7));
  background: linear-gradient(to right, #f6f6f6 0%, #f6f6f6 34%, #0b57a7 34%, #0b57a7 100%);
  /*justify-content: flex-start;*/
  height: 480px;
  /*@media only screen and (max-width: 580px) {
  	height: 400px;
  }
  @media only screen and (max-width: 440px) {
  	height: 280px;
  }*/
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .career-up__cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 240px;
  }
}
#recruit_inner .career-up .career-up__cont .career_text {
  margin-top: 160px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .career-up__cont .career_text {
    margin-top: initial;
    padding-top: 60px;
    width: 70%;
    margin-left: 20px;
  }
}
#recruit_inner .career-up .tt_career-up {
  margin: auto;
  position: relative;
  left: 0%;
  top: 0%;
  -webkit-transform: translate(-54%, 120%);
  transform: translate(-54%, 120%);
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .tt_career-up {
    -webkit-transform: translate(-15%, 120%);
    transform: translate(-15%, 120%);
    width: 40%;
  }
}
#recruit_inner .career-up .career_main-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin-bottom: -90px;
  margin-top: 130px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .career_main-img {
    margin-top: 80px;
    max-width: 680px;
    /*flex-direction: column;*/
  }
}
#recruit_inner .career-up .career_main-img .career-up_img {
  margin-right: 50px;
  width: 100%;
  max-width: 700px;
  height: auto;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .career_main-img .career-up_img {
    margin-right: 20px;
  }
}
#recruit_inner .career-up .career_main-img .ttl_career-black {
  width: 66px;
  height: 394px;
  margin-right: 35px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .career-up .career_main-img .ttl_career-black {
    width: 13%;
    height: auto;
  }
}
#recruit_inner .welfare {
  margin-top: 140px;
  background: url("/assets/images/recruit/bg_blue.png");
  background-repeat: repeat-y;
  background-size: 70%;
  background-position: top left;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .welfare {
    margin-top: 50px;
  }
}
#recruit_inner .welfare .welfare_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  margin-top: 90px;
  padding-bottom: 100px;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_list {
    /*flex-direction: column;*/
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 50px;
    padding-bottom: 20px;
  }
}
#recruit_inner .welfare .welfare_list li {
  max-width: 222px;
  width: 100%;
  background-color: #e5eaf0;
  margin: 0 2px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_list li {
    max-width: 350px;
    width: 45%;
    margin: auto;
    margin-bottom: 40px;
  }
}
#recruit_inner .welfare .welfare_list li .welfare_ico {
  max-width: 59px;
  width: 100%;
  height: auto;
  margin: auto;
  margin-top: -15px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_list li .welfare_ico {
    max-width: 45px;
  }
}
#recruit_inner .welfare .welfare_list li .welfare_item {
  text-align: center;
  overflow: hidden;
  border-bottom: 3px solid #0b57a7;
}
#recruit_inner .welfare .welfare_list li .welfare_item h3 {
  color: #0b57a7;
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  margin: 30px 0 15px 0;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .welfare .welfare_list li .welfare_item h3 {
    font-size: 2vw;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_list li .welfare_item h3 {
    font-size: 3.5vw;
    margin: 10px 0 15px 0;
  }
}
#recruit_inner .welfare .welfare_list li .welfare_item p {
  color: #c9cbce;
  font-size: 30px;
  font-family: "Noto Serif JP", serif;
  line-height: 0.8;
}
@media only screen and (max-width: 1180px) {
  #recruit_inner .welfare .welfare_list li .welfare_item p {
    font-size: 3vw;
  }
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_list li .welfare_item p {
    font-size: 5.5vw;
  }
}
#recruit_inner .welfare .company-event h3 {
  color: #0b57a7;
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .company-event h3 {
    font-size: 20px;
    margin-bottom: 20px;
    text-align: center !important;
  }
}
#recruit_inner .welfare .company-event img {
  width: 100%;
}
#recruit_inner .welfare .company-event .full-banner {
  background: -webkit-gradient(linear, left top, right top, from(#ffffff), color-stop(34%, #ffffff), color-stop(34%, #0b57a7), to(#0b57a7));
  background: linear-gradient(to right, #ffffff 0%, #ffffff 34%, #0b57a7 34%, #0b57a7 100%);
}
#recruit_inner .welfare .company-event .txt-event {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
#recruit_inner .welfare .company-event .txt-event .tt_company-event {
  margin-top: -30px;
  max-width: 484px;
  width: 100%;
  padding-bottom: 20px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .company-event .txt-event .tt_company-event {
    width: 60%;
    margin-right: -22px;
    margin-top: -16px;
  }
}
#recruit_inner .welfare .welfare_cont {
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_cont {
    text-align: left;
  }
}
#recruit_inner .welfare .welfare_cont .tt_welfare {
  margin: auto;
  position: relative;
  top: -8px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_cont .tt_welfare {
    width: 40%;
  }
}
#recruit_inner .welfare .welfare_cont h2 {
  color: #04468b;
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  margin-bottom: 50px;
  margin-top: 10px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .welfare .welfare_cont h2 {
    font-size: 26px;
    margin-bottom: 20px;
    margin-top: 0px;
    text-align: center !important;
  }
}
#recruit_inner .banner_blog {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  padding: 100px 0;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .banner_blog {
    padding: 30px 0;
  }
}
#recruit_inner .guideline {
  position: relative;
  z-index: 8;
  background-color: #0f1113;
  height: 420px;
  background: url("/assets/images/recruit/bg-img_guideline.png") no-repeat;
  background-size: cover;
  background-position: center;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-weight: bold;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline {
    height: 300px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 750px) {
  #recruit_inner .guideline {
    height: 270px;
    margin-bottom: 20px;
  }
}
#recruit_inner .guideline h3 {
  font-size: 30px;
  font-weight: normal;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline h3 {
    font-size: 26px;
  }
}
#recruit_inner .guideline .banner-smail {
  max-width: 343px;
  width: 100%;
  margin: 10px 0;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline .banner-smail {
    max-width: 180px;
  }
}
#recruit_inner .guideline .tt_guideline {
  max-width: 264px;
  width: 100%;
  margin-top: 45px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline .tt_guideline {
    width: 40%;
    max-width: 200px;
    margin-top: 35px;
  }
}
#recruit_inner .guideline .guideline_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin: auto;
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline .guideline_btn {
    width: 90%;
    margin-top: 20px;
  }
}
#recruit_inner .guideline .guideline_btn a {
  width: 50%;
  height: 120px;
  background-color: #0b57a7;
  color: #fff;
  font-size: 24px;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}
#recruit_inner .guideline .guideline_btn a::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline .guideline_btn a::before {
    left: 10px;
    width: 30px;
  }
}
#recruit_inner .guideline .guideline_btn a:nth-child(2) {
  background-color: #04468b;
}
@media only screen and (max-width: 834px) {
  #recruit_inner .guideline .guideline_btn a {
    margin: auto;
    height: 60px;
    font-size: 18px;
  }
}

.recruit_contact {
  background-color: #0f1113;
  width: 100%;
  min-height: 120px;
  font-size: 16px;
  font-family: "Noto Serif JP", serif;
}
.recruit_contact p {
  color: #fff !important;
}
.recruit_contact.contact-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.recruit_contact .right-arrow {
  width: 15px !important;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  position: absolute;
  right: 30px;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  .recruit_contact .right-arrow {
    right: 0px;
    width: 10px !important;
  }
}
.recruit_contact .text-con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: 96%;
  margin: auto;
  position: relative;
}
@media only screen and (max-width: 834px) {
  .recruit_contact .text-con {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.recruit_contact .text-con .tt_contact {
  margin-right: 20px;
}
@media only screen and (max-width: 834px) {
  .recruit_contact .text-con .tt_contact {
    margin-right: 20px;
    margin-bottom: 10px;
    width: 35%;
  }
}

.dis-column_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
}

.pad50 {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 834px) {
  .pad50 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
@media only screen and (max-width: 750px) {
  .pad50 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.btn-blue_350 {
  margin-top: 45px;
  max-width: 350px;
  width: 100%;
  height: 56px;
  background-color: #0b57a7;
  border: 1px solid #fff;
  color: #fff;
  position: relative;
}
@media only screen and (max-width: 834px) {
  .btn-blue_350 {
    height: 46px;
    margin-top: 20px;
  }
}
.btn-blue_350::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  .btn-blue_350.btn-sp::before {
    width: 30px !important;
    left: 20px !important;
  }
}

.btn-white_350 {
  margin: auto;
  margin-top: 40px;
  max-width: 350px;
  width: 100%;
  height: 56px;
  background-color: #0b57a7 !important;
  color: #fff;
  position: relative;
}
@media only screen and (max-width: 834px) {
  .btn-white_350 {
    height: 46px;
    margin-top: 20px;
  }
}
.btn-white_350::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  .btn-white_350 .btn-sp::before {
    width: 20px;
    left: 20px;
  }
}

@media only screen and (max-width: 834px) {
  #recruit_inner #recruit .recruit .col-left {
    display: block !important;
    width: 100% !important;
  }
}

.recruit_toppage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
.recruit_toppage .tt_smile {
  margin: auto;
}
@media only screen and (max-width: 834px) {
  .recruit_toppage .tt_smile {
    width: 40%;
  }
}
.recruit_toppage h3 {
  font-size: 30px !important;
  margin-bottom: 50px !important;
}
@media only screen and (max-width: 834px) {
  .recruit_toppage h3 {
    font-size: 26px !important;
    margin-bottom: 30px !important;
    margin-top: 10px !important;
  }
}
.recruit_toppage .w430 {
  text-align: center;
  max-width: 433px;
  width: 100%;
  margin: auto;
}
@media only screen and (max-width: 834px) {
  .recruit_toppage .w430 {
    text-align: left;
  }
}
.recruit_toppage .btn {
  margin: auto;
  margin-top: 60px;
  width: 100%;
  max-width: 350px;
  height: 56px;
  background-color: #0b57a7 !important;
  color: #fff;
  position: relative;
}
@media only screen and (max-width: 834px) {
  .recruit_toppage .btn {
    margin-bottom: 30px;
    margin-top: 30px;
    width: 100%;
    max-width: 350px;
    height: 46px;
  }
}
.recruit_toppage .btn::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}

.padb160-sp30 {
  padding-bottom: 160px;
}
@media only screen and (max-width: 834px) {
  .padb160-sp30 {
    padding-bottom: 30px;
  }
}

#mv-inner-recruit {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (max-width: 1450px) {
  #mv-inner-recruit.w100 {
    background-size: 114% !important;
    background-position: top -20px;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk {
    background-image: none !important;
    background-color: #fff;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.crosstalk-top {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.crosstalk-top .text {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: -15px !important;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.crosstalk-top .text h1 {
    color: #fff !important;
  }
}
#mv-inner-recruit.crosstalk .mv-inner-recruit.facility {
  position: relative;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text {
    margin-top: -50px;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text h1 {
    font-size: 2.4rem;
    line-height: 3.4rem;
    color: #0178f6;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text p.black {
    margin-top: 20px;
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text .flex {
    display: block;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text .flex p {
    width: 100% !important;
    font-size: 1.8rem;
    line-height: 2.8rem;
    text-align: left !important;
    color: #000;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text .flex p + p {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit.crosstalk .mv-inner-recruit.facility .text .flex p span {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
#mv-inner-recruit .mv-inner-recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  height: 58vh;
  max-height: 520px;
  min-height: 320px;
  padding-bottom: 85px;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit {
    height: 320px;
    min-height: 320px;
    padding-bottom: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility {
  width: 100%;
  height: 79vh;
  max-height: 706px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility {
    display: block;
    height: auto;
    min-height: auto;
    padding-bottom: 30px;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}
@media only screen and (max-width: 1450px) {
  #mv-inner-recruit .mv-inner-recruit.facility.h100 {
    height: 100% !important;
    padding-top: 28%;
  }
}
@media only screen and (max-width: 1160px) {
  #mv-inner-recruit .mv-inner-recruit.facility.h100 {
    padding-top: 25%;
  }
}
@media only screen and (max-width: 900px) {
  #mv-inner-recruit .mv-inner-recruit.facility.h100 {
    padding-top: 16%;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility.h100 {
    padding-top: 0;
    height: auto !important;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility .text {
  width: 100%;
}
#mv-inner-recruit .mv-inner-recruit.facility .text h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text h1 {
    display: block;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility .text h1 .text-img {
  margin-bottom: -10px;
  margin-right: 20px;
}
#mv-inner-recruit .mv-inner-recruit.facility .text p.black {
  width: 100%;
  max-width: 740px;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
  padding: 3px 20px;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #fff;
  background-color: #000;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text p.black {
    width: 88%;
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex {
  width: 100%;
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 8;
  display: block;
  width: 2px;
  height: 100%;
  background-color: #fff;
  margin: 0 auto;
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex.col3::after {
  left: 33.33%;
  right: inherit;
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex.col3::before {
  content: "";
  position: absolute;
  left: 66.66%;
  top: 0;
  z-index: 8;
  display: block;
  width: 2px;
  height: 100%;
  background-color: #fff;
  margin: 0 auto;
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex.col3 p {
  width: 33.33%;
  text-align: left !important;
  white-space: nowrap;
}
@media only screen and (max-width: 1180px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text .flex.col3 p {
    white-space: normal;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex p {
  width: 50%;
  padding: 0 40px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.6rem;
  color: #fff;
}
@media only screen and (max-width: 834px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text .flex p {
    font-size: 2rem;
    line-height: 3rem;
  }
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text .flex p {
    font-size: 1.2rem;
    line-height: 2.2rem;
    padding: 0 20px;
  }
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex p:first-child {
  text-align: right;
}
#mv-inner-recruit .mv-inner-recruit.facility .text .flex p span {
  font-size: 2rem;
  line-height: 3.2rem;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit.facility .text .flex p span {
    font-size: 1rem;
    line-height: 2rem;
  }
}
#mv-inner-recruit .mv-inner-recruit .text h1 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit .text h1 {
    font-size: 3rem;
    line-height: 4rem;
  }
}
#mv-inner-recruit .mv-inner-recruit .text h1 span {
  font-size: 3rem;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit .text h1 span {
    font-size: 2rem;
  }
}
#mv-inner-recruit .mv-inner-recruit .text h1 .text-img {
  margin-bottom: 15px;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit .text h1 .text-img {
    margin-bottom: 5px;
  }
}
#mv-inner-recruit .mv-inner-recruit .text h1 .text-img img {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #mv-inner-recruit .mv-inner-recruit .text h1 .text-img img {
    width: auto;
    height: 80px;
    margin-left: auto;
    margin-right: auto;
  }
}

#cm {
  background-image: url("/assets/images/commons/bg-blue-line-repear.gif");
  background-repeat: repeat;
  background-position: top center;
  background-size: 1440px 1890px;
}
#cm #cm-intro {
  padding-bottom: 180px;
}
@media only screen and (max-width: 834px) {
  #cm #cm-intro {
    padding-bottom: 160px;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-intro {
    padding-bottom: 100px;
  }
}
#cm #cm-intro .cm-intro {
  max-width: 900px;
}
#cm #cm-intro .cm-intro h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 750px) {
  #cm #cm-intro .cm-intro h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
    margin-bottom: 20px;
  }
}
#cm #cm-intro .cm-intro p {
  text-align: center;
}
#cm #cm-content .row {
  padding-bottom: 50px;
  background-color: #0b57a7;
}
#cm #cm-content .row + .row {
  margin-top: 200px;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row + .row {
    margin-top: 100px;
  }
}
#cm #cm-content .row:nth-child(even) .cm-content .box-white .flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  padding-left: 40px;
  padding-right: 18.5%;
}
@media only screen and (max-width: 1366px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text {
    padding-right: 11%;
  }
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text {
    padding-left: 4%;
    padding-right: 6%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text {
    width: 100%;
    padding-left: 12%;
    padding-right: 12%;
  }
}
#cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text .des {
  padding-left: 0;
  padding-right: 50px;
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .flex .text .des {
    padding-right: 6%;
  }
}
#cm #cm-content .row:nth-child(even) .cm-content .box-white .text-en {
  right: 0;
  left: 10%;
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .text-en {
    left: 5%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row:nth-child(even) .cm-content .box-white .text-en {
    left: 0;
    margin-left: auto;
    margin-right: auto;
  }
}
#cm #cm-content .row .cm-content {
  position: relative;
}
#cm #cm-content .row .cm-content .box-white {
  position: relative;
  display: inline-block;
  margin-top: -50px;
  padding-bottom: 60px;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white {
    margin-top: -30px;
  }
}
#cm #cm-content .row .cm-content .box-white::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 8;
  width: 100%;
  max-width: 1200px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row .cm-content .box-white::after {
    width: 94%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white::after {
    width: 88%;
  }
}
#cm #cm-content .row .cm-content .box-white .flex {
  position: relative;
  z-index: 9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex {
    display: block;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .text {
  width: 58%;
  padding-left: 18.5%;
  padding-right: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1366px) {
  #cm #cm-content .row .cm-content .box-white .flex .text {
    padding-left: 11%;
  }
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row .cm-content .box-white .flex .text {
    padding-left: 6%;
    padding-right: 4%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex .text {
    width: 100%;
    padding-left: 12%;
    padding-right: 12%;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .text .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 66px;
  min-width: 66px;
  background-color: #000;
  margin-top: -40px;
  padding-top: 40px;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex .text .ttl {
    width: 50px;
    min-width: 50px;
    margin-top: -30px;
    padding-top: 30px;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .text .ttl h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  line-height: 3.8rem;
  letter-spacing: 4px;
  color: #fff;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex .text .ttl h3 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .text .des {
  width: 100%;
  padding-top: 50px;
  padding-left: 50px;
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row .cm-content .box-white .flex .text .des {
    padding-left: 6%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex .text .des {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 8%;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .img {
  width: 42%;
  margin-top: -40px;
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .flex .img {
    width: 100%;
    margin-top: 0;
  }
}
#cm #cm-content .row .cm-content .box-white .flex .img img {
  -o-object-fit: cover;
  object-fit: cover;
  width: auto;
  height: 100%;
}
#cm #cm-content .row .cm-content .box-white .text-en {
  position: absolute;
  bottom: 0;
  right: 10%;
  z-index: 9;
}
@media only screen and (max-width: 1180px) {
  #cm #cm-content .row .cm-content .box-white .text-en {
    right: 5%;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .text-en {
    right: 0;
    left: 0;
  }
}
@media only screen and (max-width: 750px) {
  #cm #cm-content .row .cm-content .box-white .text-en img {
    margin-left: auto;
    margin-right: auto;
  }
}

#cons {
  padding-bottom: 0;
  border-bottom: 100px solid #fff;
  background-image: url("/assets/images/commons/bg-blue-line-repear.gif");
  background-repeat: repeat;
  background-position: top center;
  background-size: 1440px 1890px;
}
@media only screen and (max-width: 834px) {
  #cons {
    border-bottom: 60px solid #fff;
  }
}
@media only screen and (max-width: 750px) {
  #cons {
    border-bottom: 50px solid #fff;
  }
}
#cons #cons-intro .cons-intro h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-intro .cons-intro h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
    margin-bottom: 20px;
  }
}
#cons #cons-intro .cons-intro p {
  text-align: center;
}
#cons #cons-intro .cons-intro .cons-btn {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 150px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-intro .cons-intro .cons-btn {
    padding-bottom: 50px;
  }
}
#cons #cons-intro .cons-intro .cons-btn ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 834px) {
  #cons #cons-intro .cons-intro .cons-btn ul {
    display: block;
  }
}
#cons #cons-intro .cons-intro .cons-btn ul li {
  width: 100%;
  max-width: 260px;
  min-width: 260px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-intro .cons-intro .cons-btn ul li {
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 834px) {
  #cons #cons-intro .cons-intro .cons-btn ul li + li {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-intro .cons-intro .cons-btn ul li + li {
    margin-top: 25px;
  }
}
#cons #cons-intro .cons-intro .cons-btn ul li a {
  position: relative;
  display: block;
  padding-bottom: 45px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
  text-align: center;
  background-image: url("/assets/images/commons/arrow-down-cons-btn.svg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 27px 15px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-intro .cons-intro .cons-btn ul li a {
    padding-bottom: 35px;
    font-size: 2rem;
    line-height: 3rem;
    background-size: 18px 10px;
  }
}
#cons #cons-intro .cons-intro .cons-btn ul li a span {
  display: block;
  margin-bottom: -5px;
}
#cons #cons-intro .cons-intro .cons-btn ul li a span img {
  margin: 0 auto;
}
#cons #cons-intro .cons-intro .cons-btn ul li a::after {
  content: "";
  position: absolute;
  bottom: 30px;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 5px;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #cons #cons-intro .cons-intro .cons-btn ul li a::after {
    height: 3px;
    bottom: 25px;
  }
}
#cons #cons-content {
  padding-bottom: 150px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content {
    padding-bottom: 50px;
  }
}
#cons #cons-content .row:nth-child(even) .mv::after {
  left: 0;
  right: inherit;
}
#cons #cons-content .row:nth-child(even) .mv .img {
  margin-left: auto;
}
#cons #cons-content .row .mv {
  position: relative;
}
#cons #cons-content .row .mv::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: -50px;
  z-index: 8;
  width: 81.5%;
  height: 100%;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .mv::after {
    top: -10%;
  }
}
#cons #cons-content .row .mv .ttl {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  width: 88%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
}
#cons #cons-content .row .mv .ttl h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .mv .ttl h3 {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }
}
#cons #cons-content .row .mv .ttl h3 span {
  display: table;
  margin: 0 auto;
}
#cons #cons-content .row .mv .img {
  position: relative;
  width: 100%;
  max-width: 97%;
  z-index: 9;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .mv .img {
    max-width: 94%;
  }
}
#cons #cons-content .row .mv .img img {
  width: auto;
  min-height: 300px;
  -o-object-fit: cover;
  object-fit: cover;
}
#cons #cons-content .row .content {
  padding-top: 50px;
  padding-bottom: 150px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content {
    padding-top: 7%;
    padding-bottom: 100px;
  }
}
#cons #cons-content .row .content.business {
  position: relative;
}
#cons #cons-content .row .content.business::after {
  content: "";
  display: block;
  clear: both;
}
#cons #cons-content .row .content.business .box {
  padding: 40px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box {
    padding: 20px 30px;
  }
}
#cons #cons-content .row .content.business .box + .box {
  margin-top: 20px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.business .box + .box {
    margin-top: 10px;
  }
}
#cons #cons-content .row .content.business .box.w50 {
  width: 49%;
  float: left;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box.w50 {
    width: 100%;
    float: none;
  }
}
#cons #cons-content .row .content.business .box.w50 + .w50 {
  margin-left: 2%;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box.w50 + .w50 {
    margin-left: 0;
  }
}
#cons #cons-content .row .content.business .box.w50 .box-content {
  max-width: 290px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box.w50 .box-content {
    max-width: 900px;
  }
}
#cons #cons-content .row .content.business .box .box-content {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box .box-content {
    display: block;
  }
}
#cons #cons-content .row .content.business .box .box-content .ttl {
  width: 38%;
  min-width: 250px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box .box-content .ttl {
    width: 100%;
    min-width: auto;
  }
}
#cons #cons-content .row .content.business .box .box-content .ttl.w100 {
  width: 100%;
}
#cons #cons-content .row .content.business .box .box-content .ttl h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
  position: relative;
  padding-left: 95px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box .box-content .ttl h4 {
    font-size: 2rem;
    line-height: 3rem;
    padding-left: 45px;
  }
}
#cons #cons-content .row .content.business .box .box-content .ttl h4::before {
  content: "";
  position: absolute;
  top: 18px;
  left: 0;
  width: 80px;
  height: 2px;
  background-color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.business .box .box-content .ttl h4::before {
    width: 30px;
    top: 15px;
  }
}
#cons #cons-content .row .content.business .box .box-content .text {
  width: 62%;
  padding-left: 40px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.business .box .box-content .text {
    width: 100%;
    padding-left: 0;
    margin-top: 10px;
  }
}
#cons #cons-content .row .content.business .box .box-content .text ul li {
  position: relative;
  padding-left: 16px;
}
#cons #cons-content .row .content.business .box .box-content .text ul li + li {
  margin-top: 3px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.business .box .box-content .text ul li + li {
    margin-top: 0;
  }
}
#cons #cons-content .row .content.business .box .box-content .text ul li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  z-index: 8;
  width: 11px;
  height: 11px;
  border-radius: 100%;
  background-color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.business .box .box-content .text ul li::before {
    width: 6px;
    height: 6px;
    top: 12px;
  }
}
#cons #cons-content .row .content.goals ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.goals ul {
    display: block;
  }
}
#cons #cons-content .row .content.goals ul li {
  width: 31.33%;
  margin: 0 1%;
  padding: 55px 50px 45px 50px;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.goals ul li + li {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.goals ul li {
    padding: 35px 30px 25px 30px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.goals ul li {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 30px 25px;
  }
}
#cons #cons-content .row .content.goals ul li .icon {
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 35px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.goals ul li .icon {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.goals ul li .icon {
    margin-bottom: 15px;
  }
}
#cons #cons-content .row .content.goals ul li .icon img {
  height: 77px;
  min-height: 77px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.goals ul li .icon img {
    height: 50px;
    min-height: 50px;
  }
}
#cons #cons-content .row .content.commitment.addition .box + .box {
  margin-top: 20px;
}
#cons #cons-content .row .content.commitment .box {
  padding: 50px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.commitment .box {
    padding: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.commitment .box {
    padding: 20px 25px;
  }
}
#cons #cons-content .row .content.commitment .box + .box {
  margin-top: 50px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.commitment .box + .box {
    margin-top: 20px;
  }
}
#cons #cons-content .row .content.commitment .box .box-content h4 {
  display: table;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 5px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
  border-bottom: 1px solid #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.commitment .box .box-content h4 {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#cons #cons-content .row .content.commitment .box .box-content p {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-content .row .content.commitment .box .box-content p {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-content .row .content.commitment .box .box-content p {
    margin-top: 15px;
  }
}
#cons #cons-thumb {
  position: relative;
  background-color: #66ceff;
  padding-bottom: 50px;
}
#cons #cons-thumb .cons-thumb {
  position: relative;
  z-index: 9;
}
#cons #cons-thumb .cons-thumb ul {
  margin-top: -145px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul {
    margin-top: 0;
    display: inline;
  }
}
#cons #cons-thumb .cons-thumb ul.col1 {
  width: 100%;
}
#cons #cons-thumb .cons-thumb ul.col1 li {
  width: 100%;
}
#cons #cons-thumb .cons-thumb ul.col1 li .abs {
  padding-top: 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#cons #cons-thumb .cons-thumb ul.col1 li .abs .box {
  max-width: 440px;
}
#cons #cons-thumb .cons-thumb ul li {
  width: 33.33%;
  position: relative;
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul li {
    width: 100%;
  }
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul li:first-child {
    display: inline-block;
    margin-top: -50px;
    margin-bottom: -10px;
  }
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul li + li {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-thumb .cons-thumb ul li + li {
    margin-top: 10px;
  }
}
#cons #cons-thumb .cons-thumb ul li .abs {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  padding-top: 57%;
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul li .abs {
    padding-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
#cons #cons-thumb .cons-thumb ul li .abs .box {
  width: 100%;
  padding: 0 40px;
}
#cons #cons-thumb .cons-thumb ul li .abs .box .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  line-height: 3.6rem;
  padding: 2px 0 5px 0;
  color: #fff;
  text-align: center;
  background-color: #000;
}
@media only screen and (max-width: 750px) {
  #cons #cons-thumb .cons-thumb ul li .abs .box .ttl {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#cons #cons-thumb .cons-thumb ul li .abs .box .btn-box {
  margin-top: 30px;
}
@media only screen and (max-width: 750px) {
  #cons #cons-thumb .cons-thumb ul li .abs .box .btn-box {
    margin-top: 15px;
  }
}
#cons #cons-thumb .cons-thumb ul li .abs .box .btn-box a {
  height: auto;
  padding: 12px 0 12px 90px;
}
@media only screen and (max-width: 834px) {
  #cons #cons-thumb .cons-thumb ul li .abs .box .btn-box a {
    padding: 12px 0 12px 0;
  }
}
@media only screen and (max-width: 750px) {
  #cons #cons-thumb .cons-thumb ul li .abs .box .btn-box a {
    padding: 12px 0 12px 52px;
  }
}
#cons #cons-thumb .cons-thumb ul li .abs .box .btn-box a::before {
  display: block !important;
}
#cons #cons-thumb .cons-thumb ul li .cover img {
  width: 100%;
  min-height: 440px;
  max-height: 500px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 750px) {
  #cons #cons-thumb .cons-thumb ul li .cover img {
    max-height: auto;
  }
}

#crosstalk {
  background-image: url("/assets/images/recruit/crosstalk/bg.jpg");
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100%;
}
#crosstalk .crosstalk .row {
  position: relative;
}
#crosstalk .crosstalk .row + .row {
  margin-top: 60px;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row + .row {
    margin-top: 30px;
  }
}
#crosstalk .crosstalk .row.hover-opacity a:hover {
  opacity: 0.8;
  border: 8px solid rgba(255, 255, 255, 0);
}
#crosstalk .crosstalk .row a {
  display: block;
  position: relative;
  border: 8px solid rgba(1, 120, 246, 0);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
#crosstalk .crosstalk .row a:hover {
  opacity: 1;
  border: 8px solid rgb(1, 120, 246);
}
#crosstalk .crosstalk .row a .tag {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 8;
  min-width: 200px;
  font-size: 2.2rem;
  line-height: 3.2rem;
  color: #fff;
  text-align: center;
  padding: 9px 18px;
  background-color: #0178f6;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .tag {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
@media only screen and (max-width: 750px) {
  #crosstalk .crosstalk .row a .tag {
    position: static;
  }
}
#crosstalk .crosstalk .row a .text {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 40px;
  z-index: 8;
  margin-left: auto;
  margin-right: auto;
  width: 88%;
  max-width: 915px;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .text {
    position: static;
    width: 100%;
  }
}
#crosstalk .crosstalk .row a .text .box-white {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 0;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #crosstalk .crosstalk .row a .text .box-white {
    display: block;
  }
}
#crosstalk .crosstalk .row a .text .box-white .name {
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .text .box-white .name {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#crosstalk .crosstalk .row a .text .box-white .name.left {
  text-align: right;
}
@media only screen and (max-width: 750px) {
  #crosstalk .crosstalk .row a .text .box-white .name.left {
    text-align: center;
  }
}
#crosstalk .crosstalk .row a .text .box-white .name.right {
  text-align: left;
}
@media only screen and (max-width: 750px) {
  #crosstalk .crosstalk .row a .text .box-white .name.right {
    text-align: center;
  }
}
#crosstalk .crosstalk .row a .text .box-white .name span {
  font-size: 1.4rem;
  line-height: 2.4rem;
  display: block;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .text .box-white .name span {
    font-size: 1.2rem;
    line-height: 2.2rem;
  }
}
#crosstalk .crosstalk .row a .text .box-white .icon {
  margin: 0 30px;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .text .box-white .icon {
    width: 25px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 750px) {
  #crosstalk .crosstalk .row a .text .box-white .icon {
    margin: 10px auto;
  }
}
#crosstalk .crosstalk .row a .text h2 {
  padding: 5px 20px;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 3rem;
  color: #fff;
  background-color: #000;
  text-align: center;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .text h2 {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
#crosstalk .crosstalk .row a .img img {
  width: auto;
  min-height: 490px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 834px) {
  #crosstalk .crosstalk .row a .img img {
    min-height: auto;
  }
}

#facility #facility-intro {
  background-image: url("/assets/images/recruit/crosstalk/facility_renovation/intro-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#facility #facility-intro .facility-intro {
  max-width: 740px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro {
    display: block;
  }
}
#facility #facility-intro .facility-intro::before {
  content: "";
  position: absolute;
  top: 17%;
  left: 0;
  right: 0;
  z-index: 8;
  width: 127px;
  height: 127px;
  margin-left: auto;
  margin-right: auto;
  background-image: url("/assets/images/recruit/crosstalk/icon-x.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro::before {
    display: none;
  }
}
#facility #facility-intro .facility-intro.col3 {
  max-width: 1080px;
}
#facility #facility-intro .facility-intro.col3::before {
  left: 27.1%;
  right: inherit;
}
#facility #facility-intro .facility-intro.col3::after {
  content: "";
  position: absolute;
  top: 17%;
  left: 61.2%;
  z-index: 8;
  width: 127px;
  height: 127px;
  background-image: url("/assets/images/recruit/crosstalk/icon-x.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro.col3::after {
    display: none;
  }
}
#facility #facility-intro .facility-intro.col3 .col {
  width: 31.8%;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro.col3 .col {
    width: 100%;
  }
}
#facility #facility-intro .facility-intro .col {
  width: 48.5%;
  color: #fff;
  background-color: #0b57a7;
  position: relative;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col {
    width: 100%;
  }
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col + .col {
    margin-top: 60px;
  }
}
#facility #facility-intro .facility-intro .col + .col::before {
  display: none;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col + .col::before {
    display: block;
    content: "";
    position: absolute;
    top: -70px;
    left: 0;
    right: 0;
    z-index: 8;
    width: 80px;
    height: 80px;
    margin-left: auto;
    margin-right: auto;
    background-image: url("/assets/images/recruit/crosstalk/icon-x.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
  }
}
#facility #facility-intro .facility-intro .col .brief {
  position: relative;
  padding: 40px 35px 30px 35px;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col .brief {
    padding: 40px 35px;
  }
}
#facility #facility-intro .facility-intro .col .brief.pt25 {
  padding-top: 25px;
}
#facility #facility-intro .facility-intro .col .brief h2 {
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  z-index: 8;
  width: 170px;
  height: 40px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2.2rem;
  line-height: 3.2rem;
  font-weight: 600;
  text-align: center;
  color: #0b57a7;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col .brief h2 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#facility #facility-intro .facility-intro .col .brief h3 {
  font-size: 2.2rem;
  line-height: 3.2rem;
  margin-bottom: 10px;
}
@media only screen and (max-width: 750px) {
  #facility #facility-intro .facility-intro .col .brief h3 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#facility #facility-intro .facility-intro .col .brief h3 span {
  display: block;
  font-size: 1.4rem;
  line-height: 2.4rem;
}
#facility #facility-intro .facility-intro .col .brief p {
  font-size: 1.4rem;
  line-height: 2.4rem;
}
#facility #facility-intro .facility-intro .col .brief ul {
  margin-top: 10px;
  margin-left: 5px;
}
#facility #facility-intro .facility-intro .col .brief ul li {
  font-size: 1.4rem;
  line-height: 2.4rem;
  position: relative;
  padding-left: 10px;
}
#facility #facility-intro .facility-intro .col .brief ul li::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  z-index: 8;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 100%;
}

#facility-content {
  background-image: url("/assets/images/commons/bg-blue-line-repear.gif");
  background-repeat: repeat;
  background-position: top center;
  background-size: 1440px 1890px;
}
#facility-content .row {
  padding-bottom: 0;
}
#facility-content .row:nth-child(even) .facility-content::before {
  left: inherit;
  right: 0;
}
#facility-content .row:nth-child(even) .facility-content::after {
  left: 0;
  right: inherit;
}
#facility-content .row:nth-child(even) .facility-content .content .flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#facility-content .row:nth-child(even) .facility-content .content .flex .text {
  padding-left: 0;
  padding-right: 40px;
}
@media only screen and (max-width: 750px) {
  #facility-content .row:nth-child(even) .facility-content .content .flex .text {
    padding-right: 0;
  }
}
#facility-content .row .ttl {
  margin-bottom: 35px;
}
#facility-content .row .ttl h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  font-weight: 600;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .ttl h2 {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }
}
#facility-content .row .ttl h2 span {
  display: block;
  margin-bottom: -10px;
}
#facility-content .row .ttl h2 span img {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .ttl h2 span img {
    width: auto;
    height: 50px;
  }
}
#facility-content .row .facility-content {
  position: relative;
  padding-top: 110px;
  padding-bottom: 90px;
}
@media only screen and (max-width: 834px) {
  #facility-content .row .facility-content {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
#facility-content .row .facility-content.long-img::before {
  height: 132vh;
}
@media only screen and (max-width: 1180px) {
  #facility-content .row .facility-content.long-img::before {
    height: 130vh;
  }
}
@media only screen and (max-width: 834px) {
  #facility-content .row .facility-content.long-img::before {
    height: 68vh;
  }
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content.long-img::before {
    height: 86vh;
  }
}
#facility-content .row .facility-content::before {
  content: "";
  display: block;
  position: absolute;
  top: 210px;
  left: 0;
  z-index: 8;
  width: 39%;
  height: 88vh;
  background-color: #0b57a7;
}
@media only screen and (max-width: 1180px) {
  #facility-content .row .facility-content::before {
    height: 98vh;
  }
}
@media only screen and (max-width: 834px) {
  #facility-content .row .facility-content::before {
    top: 120px;
    height: 40vh;
  }
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content::before {
    top: 60px;
    height: 57vh;
  }
}
#facility-content .row .facility-content::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 7;
  width: 71%;
  height: 100%;
  background-color: #fff;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content::after {
    width: 100%;
  }
}
#facility-content .row .facility-content .content {
  position: relative;
  z-index: 9;
}
#facility-content .row .facility-content .content .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content .content .flex {
    display: block;
  }
}
#facility-content .row .facility-content .content .flex .img {
  width: 50%;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content .content .flex .img {
    width: 100%;
  }
}
#facility-content .row .facility-content .content .flex .text {
  width: 50%;
  padding-left: 40px;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content .content .flex .text {
    width: 100%;
    padding-left: 0;
    margin-top: 60px;
  }
}
#facility-content .row .facility-content .content .flex .text p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#facility-content .row .facility-content .content .flex .text p + p {
  margin-top: 35px;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content .content .flex .text p + p {
    margin-top: 20px;
  }
}
#facility-content .row .facility-content .content .flex .text p span {
  width: 70px;
  min-width: 70px;
  font-weight: 600;
  color: #0b57a7;
}
#facility-content .row .facility-content-btm {
  margin-top: 100px;
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content-btm {
    margin-top: 60px;
  }
}
#facility-content .row .facility-content-btm.no-photo .ttl {
  margin-top: 0;
  padding-top: 35px;
}
#facility-content .row .facility-content-btm .ttl {
  margin-top: -235px;
  margin-bottom: 0;
  padding-top: 260px;
  padding-bottom: 35px;
  background-color: #0b57a7;
}
@media only screen and (max-width: 834px) {
  #facility-content .row .facility-content-btm .ttl {
    margin-top: -160px;
    padding-top: 185px;
  }
}
@media only screen and (max-width: 750px) {
  #facility-content .row .facility-content-btm .ttl {
    margin-top: -60px;
    padding-top: 85px;
  }
}
#facility-content .row .facility-content-btm .ttl h2 {
  color: #fff;
}
#facility-content .row .facility-content-btm .bg-grey {
  padding-top: 0;
}
#facility-content .row .facility-content-btm .bg-grey .content {
  background-color: #fff;
}
#facility-content .row .facility-content-btm .bg-grey .content .text {
  width: 88%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
#facility-content .row .facility-content-btm .bg-grey .content .text p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#facility-content .row .facility-content-btm .bg-grey .content .text p + p {
  margin-top: 35px;
}
#facility-content .row .facility-content-btm .bg-grey .content .text p span {
  width: 70px;
  min-width: 70px;
  font-weight: 600;
  color: #0b57a7;
}

#other {
  background-color: #0178f6;
}
#other .img img {
  width: 100%;
  height: auto;
}
#other .other {
  padding-top: 60px;
  padding-bottom: 80px;
}
#other .other .ttl {
  position: relative;
  margin-bottom: 45px;
}
#other .other .ttl h2 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #fff;
  text-align: center;
}
#other .other .ttl img {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 750px) {
  #other .other .ttl img {
    width: auto;
    height: 50px;
  }
}
#other .other .content .other-list {
  position: relative;
  padding: 0 75px;
}
@media only screen and (max-width: 834px) {
  #other .other .content .other-list {
    padding: 0 50px;
  }
}
#other .other .content .other-list .arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 8;
  display: table;
  margin-top: auto;
  margin-bottom: auto;
}
#other .other .content .other-list .arrow.left {
  left: 0;
}
#other .other .content .other-list .arrow.right {
  right: 0;
}
#other .other .content .other-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 750px) {
  #other .other .content .other-list ul {
    display: block;
  }
}
#other .other .content .other-list ul li.menu {
  width: 50px;
  min-width: 50px;
  margin: 0 50px;
}
@media only screen and (max-width: 834px) {
  #other .other .content .other-list ul li.menu {
    width: 30px;
    min-width: 30px;
    margin: 0 25px;
  }
}
@media only screen and (max-width: 750px) {
  #other .other .content .other-list ul li.menu {
    margin: 25px auto;
  }
}

.welfare-page .btn-text-welfare {
  white-space: nowrap;
  margin-left: -10px;
}
.welfare-page .bg-welfare {
  background-color: #FFF;
  padding: 0 20px;
}
.welfare-page .pad50 {
  padding-top: 50px;
}
.welfare-page .cons-btn {
  padding-bottom: 100px !important;
}
@media only screen and (max-width: 750px) {
  .welfare-page .cons-btn {
    padding-bottom: 50px !important;
  }
}
.welfare-page .cons-intro {
  margin-top: 100px;
}
@media only screen and (max-width: 750px) {
  .welfare-page .cons-intro {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 750px) {
  .ta-sp-left {
    text-align: left !important;
  }
}

.equipment-con .cons-intro {
  text-align: center;
  padding: 140px 0 60px 0;
}
@media only screen and (max-width: 750px) {
  .equipment-con .cons-intro {
    padding: 80px 0 30px 0;
  }
}
.equipment-con .cons-intro h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}

.welfare-list {
  margin-top: 100px;
  margin-bottom: 100px;
}
@media only screen and (max-width: 750px) {
  .welfare-list {
    margin-top: 50px;
    margin-bottom: 50px;
  }
}
.welfare-list .welfare-img img {
  width: 100%;
}
.welfare-list.equipment-list img {
  margin-bottom: 30px;
}
.welfare-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: flex-start;
  -ms-flex-pack: flex-start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 1% -1%;
}
@media only screen and (max-width: 750px) {
  .welfare-list ul {
    display: block;
  }
}
.welfare-list ul li {
  width: 23%;
  margin: 2% 1%;
  background-color: #e5eaf0;
  border-bottom: 3px solid #0b57a7;
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li + li {
    margin-top: 30px;
  }
}
.welfare-list ul li.video-list {
  width: 48% !important;
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li.video-list {
    width: 100% !important;
  }
}
.welfare-list ul li.video-list .icon {
  margin-top: -50px !important;
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li.video-list .icon {
    margin-top: -40px !important;
  }
}
.welfare-list ul li.video-list .video-play {
  background-color: #000;
  position: relative;
}
.welfare-list ul li.video-list .video-play .video-img {
  opacity: 0.8;
}
.welfare-list ul li.video-list .video-play .ico_play {
  opacity: 1 !important;
  width: 45px;
  height: 58px;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.welfare-list ul li .text h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  line-height: 2.3rem;
  color: #0b57a7;
  text-align: center;
  padding: 0px 20px 20px 20px;
}
.welfare-list ul li .text p {
  padding: 0px 40px 40px 40px;
}
@media only screen and (max-width: 834px) {
  .welfare-list ul li .text p {
    padding: 0px 30px 30px 30px;
  }
}
.welfare-list ul li .icon {
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
  margin-top: -25px;
  position: relative;
}
@media only screen and (max-width: 834px) {
  .welfare-list ul li .icon {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li .icon {
    margin-bottom: 10px;
  }
}
.welfare-list ul li .icon img {
  height: 77px;
  min-height: 77px;
}
@media only screen and (max-width: 750px) {
  .welfare-list ul li .icon img {
    height: 50px;
    min-height: 50px;
  }
}

.company-event {
  background-color: #FFF;
  padding-top: 100px;
  margin-bottom: -100px;
}
@media only screen and (max-width: 750px) {
  .company-event {
    padding-top: 50px;
  }
}
.company-event h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  line-height: 4rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 834px) {
  .company-event h2 {
    margin-bottom: 20px;
    text-align: center !important;
  }
}
.company-event img {
  width: 100%;
}
.company-event .full-banner {
  background: -webkit-gradient(linear, left top, right top, from(#ffffff), color-stop(34%, #ffffff), color-stop(34%, #0b57a7), to(#0b57a7));
  background: linear-gradient(to right, #ffffff 0%, #ffffff 34%, #0b57a7 34%, #0b57a7 100%);
}
.company-event .txt-event {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.company-event .txt-event .tt_company-event {
  margin-top: -30px;
  max-width: 484px;
  width: 100%;
  padding-bottom: 20px;
}
@media only screen and (max-width: 834px) {
  .company-event .txt-event .tt_company-event {
    width: 60%;
    margin-right: -22px;
    margin-top: -16px;
  }
}

.guideline-welfare {
  position: relative;
  z-index: 8;
  background-color: #0f1113;
  height: 420px;
  background: url("/assets/images/recruit/bg-img_guideline.png") no-repeat;
  background-size: cover;
  background-position: center;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-weight: bold;
  padding-top: 40px;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare {
    height: 300px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 750px) {
  .guideline-welfare {
    height: 270px;
    margin-bottom: 20px;
    padding-top: 10px;
  }
}
.guideline-welfare h3 {
  font-size: 30px;
  font-weight: normal;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare h3 {
    font-size: 26px;
  }
}
.guideline-welfare .banner-smail {
  max-width: 343px;
  width: 100%;
  margin: auto;
  padding: 10px 0;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare .banner-smail {
    max-width: 150px;
  }
}
.guideline-welfare .tt_guideline {
  max-width: 264px;
  width: 100%;
  margin: auto;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare .tt_guideline {
    width: 40%;
    max-width: 200px;
    margin-top: 35px;
  }
}
.guideline-welfare .guideline_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin: auto;
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare .guideline_btn {
    width: 90%;
    margin-top: 20px;
  }
}
.guideline-welfare .guideline_btn a {
  width: 50%;
  height: 120px;
  background-color: #0b57a7;
  color: #fff;
  font-size: 24px;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}
.guideline-welfare .guideline_btn a::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 1px;
  background-color: #fff;
  left: 40px;
  top: 50;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 834px) {
  .guideline-welfare .guideline_btn a::before {
    left: 10px;
    width: 30px;
  }
}
.guideline-welfare .guideline_btn a:nth-child(2) {
  background-color: #04468b;
}
@media only screen and (max-width: 834px) {
  .guideline-welfare .guideline_btn a {
    margin: auto;
    height: 60px;
    font-size: 18px;
  }
}

/**
* popup video,
*/
.grtyoutube-popup {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99999;
}

.grtyoutube-popup-content {
  position: relative;
  max-width: 970px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  -webkit-transition: padding 0.3s ease;
  transition: padding 0.3s ease;
  top: 50%;
  left: 0%;
  -webkit-transform: translate(0%, -26%);
          transform: translate(0%, -26%);
}

.grtyoutube-popup-close {
  position: absolute;
  top: -30px;
  right: 0;
  color: #FFF;
  font-size: 25px;
  width: 17px;
  height: 17px;
  cursor: pointer;
}

.grtyoutube-iframe {
  width: 100%;
  height: 480px;
  background-color: #FFF;
  -webkit-box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
          box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}

@media (max-width: 767px) {
  .grtyoutube-iframe {
    width: 100%;
    height: 350px;
  }
}
.grtyoutube-dark-theme {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.75);
  z-index: 1000000;
  cursor: pointer;
  opacity: 1;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-name: modal-video;
          animation-name: modal-video;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

.grtyoutube-popup-close {
  position: absolute;
  z-index: 2;
  top: -40px;
  right: -40px;
  display: inline-block;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border: none;
  background: transparent;
  cursor: pointer;
}

.grtyoutube-popup-close:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.grtyoutube-popup-close:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.grtyoutube-popup-close:before, .grtyoutube-popup-close:after {
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  background: #0b57a7;
  border-radius: 5px;
  margin-top: -6px;
}

@media only screen and (max-width: 1079px) {
  ._brightcove_modal .modal-video-inner .grtyoutube-popup-close {
    right: 0px;
  }
  ._brightcove_modal .modal-video-wrapper {
    width: 90%;
    margin: auto;
  }
}
@media only screen and (max-width: 719px) {
  ._brightcove_modal .modal-video-wrapper {
    width: 100%;
  }
  ._brightcove_modal .modal-video-inner .grtyoutube-popup-close {
    right: 10px;
  }
}
@media only screen and (max-width: 1079px) {
  :not(._brightcove_modal) .grtyoutube-popup-close {
    right: 2px;
  }
}
.youtube-link, .youtube-link-dark {
  cursor: pointer;
  margin-bottom: 8px;
  display: inline-block;
  font-size: 16px;
  color: #fdffe4;
  text-decoration: none;
}

.keyvisual_video ._ttl .play {
  display: block;
  width: 80px;
  height: 80px;
  font-size: 0rem;
  margin: auto auto 8px auto;
  background: #4d4d4d;
  border-radius: 40px;
  margin-top: 12px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}

.keyvisual_video ._ttl .play:hover {
  background-color: #0066cc;
}

.keyvisual_video ._ttl .play:after {
  content: " ";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 25px 0 25px 38px;
  position: absolute;
  top: 15px;
  left: 25px;
}

.custom-popup-class .mfp-container {
  padding-top: 40px;
  padding-bottom: 40px;
  position: fixed !important;
}

/* This adds max-width to popup content */
.custom-popup-class .mfp-content {
  width: 100%;
  max-width: 700px;
}

/* This makes "#popup-with-something-01" scale down proportionally */
#popup-with-something-01,
#popup-with-something-02 {
  width: 100%;
  height: 0;
  overflow: hidden;
  /* This is scale ratio */
  padding-top: 56.25%;
}

/* This shifts close button outside of the container */
#popup-with-something-01 .mfp-close,
#popup-with-something-02 .mfp-close {
  position: absolute;
  z-index: 2;
  top: -40px !important;
  right: -40px !important;
  display: inline-block;
  width: 40px !important;
  height: 40px !important;
  overflow: hidden;
  border: none;
  background: transparent;
  cursor: pointer;
  background-image: none !important;
}
@media only screen and (max-width: 750px) {
  #popup-with-something-01 .mfp-close,
  #popup-with-something-02 .mfp-close {
    top: -30px !important;
    right: -20px !important;
    width: 20px !important;
    height: 30px !important;
  }
}

#popup-with-something-01 .mfp-close:before,
#popup-with-something-02 .mfp-close:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#popup-with-something-01 .mfp-close:after,
#popup-with-something-02 .mfp-close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#popup-with-something-01 .mfp-close:before, #popup-with-something-01 .mfp-close:after,
#popup-with-something-02 .mfp-close:before, #popup-with-something-02 .mfp-close:after {
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  background: #0b57a7;
  border-radius: 5px;
  margin-top: -6px;
}

/* This is an element itself */
.some-element {
  position: absolute;
  top: -3px;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFF;
  -webkit-box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}

#contact-inner .contact-inner {
  max-width: 1024px;
}
#contact-inner .contact-inner .intro .box {
  padding-top: 65px;
  padding-bottom: 80px;
  background-image: url("/assets/images/contact/bg-box-top.png"), url("/assets/images/contact/bg-box-btm.png");
  background-repeat: no-repeat;
  background-position: top left, bottom right;
  background-size: 144px 413px;
  background-color: #fff;
}
@media only screen and (max-width: 834px) {
  #contact-inner .contact-inner .intro .box {
    padding-bottom: 65px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box {
    padding: 40px 30px;
  }
}
#contact-inner .contact-inner .intro .box h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 5rem;
  color: #0b57a7;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1180px) {
  #contact-inner .contact-inner .intro .box h2 {
    font-size: 3.6rem;
    line-height: 4.6rem;
  }
}
@media only screen and (max-width: 834px) {
  #contact-inner .contact-inner .intro .box h2 {
    font-size: 3rem;
    line-height: 4rem;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
    margin-bottom: 20px;
  }
}
#contact-inner .contact-inner .intro .box p {
  text-align: center;
}
#contact-inner .contact-inner .intro .box .btn-box {
  margin-top: 35px;
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box .btn-box {
    margin-top: 25px;
  }
}
#contact-inner .contact-inner .intro .box .btn-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box .btn-box ul {
    display: block;
  }
}
#contact-inner .contact-inner .intro .box .btn-box ul li {
  width: 100%;
  margin: 0 18px;
  max-width: 280px;
}
@media only screen and (max-width: 834px) {
  #contact-inner .contact-inner .intro .box .btn-box ul li {
    margin: 0 10px;
    max-width: 260px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box .btn-box ul li {
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .intro .box .btn-box ul li + li {
    margin-top: 10px;
  }
}
#contact-inner .contact-inner .row {
  margin-top: 40px;
}
@media only screen and (max-width: 1180px) {
  #contact-inner .contact-inner .row {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .row {
    margin-top: 15px;
  }
}
#contact-inner .contact-inner .row .box {
  padding: 80px;
  background-color: #fff;
}
@media only screen and (max-width: 1180px) {
  #contact-inner .contact-inner .row .box {
    padding: 65px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .row .box {
    padding: 40px 4%;
  }
}
#contact-inner .contact-inner .row .box h3 {
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  color: #003d7e;
  text-align: center;
  margin-bottom: 35px;
}
@media only screen and (max-width: 1180px) {
  #contact-inner .contact-inner .row .box h3 {
    font-size: 2.4rem;
    line-height: 3.4rem;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 834px) {
  #contact-inner .contact-inner .row .box h3 {
    margin-bottom: 25px;
  }
}
@media only screen and (max-width: 750px) {
  #contact-inner .contact-inner .row .box h3 {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 20px;
  }
}
#contact-inner .contact-inner .row .box .Contact__form {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
#contact-inner .contact-inner .row .box .contact-no {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mrktform .mktoForm .mktoFieldWrap,
.mrktform .mktoForm .mktoFormCol {
  width: 100%;
}

.mrktform .mktoForm .mktoOffset {
  display: none;
}

.mrktform .mktoForm .mktoLabel {
  width: 100% !important;
}

.mrktform form {
  width: 100% !important;
}

.mrktform input[type=text],
.mrktform input[type=tel],
.mrktform input[type=email],
.mrktform textarea {
  width: 100% !important;
}

.mrktform .mktoButtonRow,
.mrktform .mktoButtonWrap {
  display: table;
  margin: 0 auto !important;
}

.mrktform strong,
.mrktform .mktoForm .mktoRequiredField label.mktoLabel {
  font-weight: normal !important;
}

.mrktform input[type=checkbox] {
  display: initial !important;
  height: auto !important;
  width: auto !important;
  padding: auto !important;
}

.mrktform {
  max-width: 600px;
  margin: 0 auto;
}

.mrktform input[type=text],
.mrktform input[type=tel],
.mrktform input[type=email],
.mrktform textarea {
  font-size: 16px;
  border-radius: 0;
  background-color: #fff;
  border: 1px solid #ccc;
}

.mrktform input[type=text],
.mrktform input[type=tel],
.mrktform input[type=email] {
  height: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 5px;
  line-height: 40px;
}

.mrktform textarea {
  height: 150px !important;
}

.mrktform label {
  font-size: 16px;
  cursor: pointer;
}

.mrktform .mktoForm .mktoLabel {
  font-size: 16px;
  margin-bottom: 5px;
}

#policy {
  padding-top: 0;
}
#policy .policy .row + .row {
  margin-top: 40px;
}
#policy .policy .row h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  line-height: 3.4rem;
  color: #0b57a7;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1180px) {
  #policy .policy .row h2 {
    font-size: 2rem;
    line-height: 3rem;
  }
}
#policy .policy .row p + p {
  margin-top: 20px;
}
#policy .policy .row p a {
  color: #0b57a7;
  text-decoration: underline;
}

.page-showa-smile #wrapper {
  padding-top: 0 !important;
}
.page-showa-smile header {
  display: none;
}
.page-showa-smile .dropdown {
  display: none;
}
.page-showa-smile .submn-sp {
  display: none;
}
.page-showa-smile footer {
  display: none;
}

#showa-smile-intro {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100vh;
  background-color: #fff;
}
#showa-smile-intro.show {
  display: block;
}
#showa-smile-intro .showa-smile-intro {
  position: relative;
  width: 100%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#showa-smile-intro .showa-smile-intro .box {
  position: absolute;
  display: none;
}
#showa-smile-intro .showa-smile-intro .box .no {
  font-size: 2.8rem;
  line-height: 3.8rem;
  font-weight: 600;
  color: #003d7e;
  text-align: center;
}
@media only screen and (max-width: 1366px) {
  #showa-smile-intro .showa-smile-intro .box .no {
    font-size: 2.6rem;
    line-height: 3.6rem;
  }
}
@media only screen and (max-width: 1180px) {
  #showa-smile-intro .showa-smile-intro .box .no {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
#showa-smile-intro .showa-smile-intro .box .name {
  margin-top: 35px;
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  line-height: 8rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1366px) {
  #showa-smile-intro .showa-smile-intro .box .name {
    font-size: 3.6rem;
    line-height: 7.6rem;
    margin-top: 30px;
  }
}
@media only screen and (max-width: 1180px) {
  #showa-smile-intro .showa-smile-intro .box .name {
    margin-top: 25px;
    font-size: 2.6rem;
    line-height: 6.6rem;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile-intro .showa-smile-intro .box .name {
    margin-top: 15px;
    font-size: 1rem;
    line-height: 3rem;
  }
}
#showa-smile-intro .showa-smile-intro .box .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: 4.5rem;
  line-height: 5.5rem;
  color: #0b57a7;
  text-align: center;
}
@media only screen and (max-width: 1366px) {
  #showa-smile-intro .showa-smile-intro .box .ttl {
    font-size: 4rem;
    line-height: 5rem;
  }
}
@media only screen and (max-width: 1180px) {
  #showa-smile-intro .showa-smile-intro .box .ttl {
    margin-top: 25px;
    font-size: 3rem;
    line-height: 4rem;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile-intro .showa-smile-intro .box .ttl {
    margin-top: 15px;
    font-size: 2rem;
    line-height: 3rem;
  }
}
#showa-smile-intro .showa-smile-intro .box.box-001 .name {
  -webkit-transform: scale(1.01);
  transform: scale(1.01);
}
#showa-smile-intro .showa-smile-intro .box.box-002 .name {
  -webkit-transform: scale(1.02);
  transform: scale(1.02);
}
#showa-smile-intro .showa-smile-intro .box.box-003 .name {
  -webkit-transform: scale(1.03);
  transform: scale(1.03);
}
#showa-smile-intro .showa-smile-intro .box.box-004 .name {
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}
#showa-smile-intro .showa-smile-intro .box.box-005 .name {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#showa-smile-intro .showa-smile-intro .box.box-006 .name {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}
#showa-smile-intro .showa-smile-intro .box.box-007 .name {
  -webkit-transform: scale(1.07);
  transform: scale(1.07);
}
#showa-smile-intro .showa-smile-intro .box.box-008 .name {
  -webkit-transform: scale(1.08);
  transform: scale(1.08);
}
#showa-smile-intro .showa-smile-intro .box.box-009 .name {
  -webkit-transform: scale(1.09);
  transform: scale(1.09);
}
#showa-smile-intro .showa-smile-intro .box.box-010 .name {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#showa-smile-intro .showa-smile-intro .box.box-011 .name {
  -webkit-transform: scale(1.11);
  transform: scale(1.11);
}
#showa-smile-intro .showa-smile-intro .box.box-012 .name {
  -webkit-transform: scale(1.12);
  transform: scale(1.12);
}
#showa-smile-intro .showa-smile-intro .box.box-013 .name {
  -webkit-transform: scale(1.13);
  transform: scale(1.13);
}
#showa-smile-intro .showa-smile-intro .box.box-014 .name {
  -webkit-transform: scale(1.14);
  transform: scale(1.14);
}
#showa-smile-intro .showa-smile-intro .box.box-015 .name {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}
#showa-smile-intro .showa-smile-intro .box.box-016 .name {
  -webkit-transform: scale(1.16);
  transform: scale(1.16);
}
#showa-smile-intro .showa-smile-intro .box.box-017 .name {
  -webkit-transform: scale(1.17);
  transform: scale(1.17);
}
#showa-smile-intro .showa-smile-intro .box.box-018 .name {
  -webkit-transform: scale(1.18);
  transform: scale(1.18);
}
#showa-smile-intro .showa-smile-intro .box.box-019 .name {
  -webkit-transform: scale(1.19);
  transform: scale(1.19);
}
#showa-smile-intro .showa-smile-intro .box.box-020 .name {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}
#showa-smile-intro .showa-smile-intro .box.box-021 .name {
  -webkit-transform: scale(1.21);
  transform: scale(1.21);
}
#showa-smile-intro .showa-smile-intro .box.box-022 .name {
  -webkit-transform: scale(1.22);
  transform: scale(1.22);
}
#showa-smile-intro .showa-smile-intro .box.box-023 .name {
  -webkit-transform: scale(1.23);
  transform: scale(1.23);
}
#showa-smile-intro .showa-smile-intro .box.box-024 .name {
  -webkit-transform: scale(1.24);
  transform: scale(1.24);
}
#showa-smile-intro .showa-smile-intro .box.box-025 .name {
  -webkit-transform: scale(1.25);
  transform: scale(1.25);
}
#showa-smile-intro .showa-smile-intro .box.box-026 .name {
  -webkit-transform: scale(1.26);
  transform: scale(1.26);
}
#showa-smile-intro .showa-smile-intro .box.box-027 .name {
  -webkit-transform: scale(1.27);
  transform: scale(1.27);
}
#showa-smile-intro .showa-smile-intro .box.box-028 .name {
  -webkit-transform: scale(1.28);
  transform: scale(1.28);
}
#showa-smile-intro .showa-smile-intro .box.box-029 .name {
  -webkit-transform: scale(1.29);
  transform: scale(1.29);
}
#showa-smile-intro .showa-smile-intro .box.box-030 .name {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}
#showa-smile-intro .showa-smile-intro .box.box-031 .name {
  -webkit-transform: scale(1.31);
  transform: scale(1.31);
}
#showa-smile-intro .showa-smile-intro .box.box-032 .name {
  -webkit-transform: scale(1.32);
  transform: scale(1.32);
}
#showa-smile-intro .showa-smile-intro .box.box-033 .name {
  -webkit-transform: scale(1.33);
  transform: scale(1.33);
}
#showa-smile-intro .showa-smile-intro .box.box-034 .name {
  -webkit-transform: scale(1.34);
  transform: scale(1.34);
}
#showa-smile-intro .showa-smile-intro .box.box-035 .name {
  -webkit-transform: scale(1.35);
  transform: scale(1.35);
}
#showa-smile-intro .showa-smile-intro .box.box-036 .name {
  -webkit-transform: scale(1.36);
  transform: scale(1.36);
}
#showa-smile-intro .showa-smile-intro .box.box-037 .name {
  -webkit-transform: scale(1.37);
  transform: scale(1.37);
}
#showa-smile-intro .showa-smile-intro .box.box-038 .name {
  -webkit-transform: scale(1.38);
  transform: scale(1.38);
}
#showa-smile-intro .showa-smile-intro .box.box-039 .name {
  -webkit-transform: scale(1.39);
  transform: scale(1.39);
}
#showa-smile-intro .showa-smile-intro .box.box-040 .name {
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
}
#showa-smile-intro .showa-smile-intro .box.box-041 .name {
  -webkit-transform: scale(1.41);
  transform: scale(1.41);
}
#showa-smile-intro .showa-smile-intro .box.box-042 .name {
  -webkit-transform: scale(1.42);
  transform: scale(1.42);
}
#showa-smile-intro .showa-smile-intro .box.box-043 .name {
  -webkit-transform: scale(1.43);
  transform: scale(1.43);
}
#showa-smile-intro .showa-smile-intro .box.box-044 .name {
  -webkit-transform: scale(1.44);
  transform: scale(1.44);
}
#showa-smile-intro .showa-smile-intro .box.box-045 .name {
  -webkit-transform: scale(1.45);
  transform: scale(1.45);
}
#showa-smile-intro .showa-smile-intro .box.box-046 .name {
  -webkit-transform: scale(1.46);
  transform: scale(1.46);
}
#showa-smile-intro .showa-smile-intro .box.box-047 .name {
  -webkit-transform: scale(1.47);
  transform: scale(1.47);
}
#showa-smile-intro .showa-smile-intro .box.box-048 .name {
  -webkit-transform: scale(1.48);
  transform: scale(1.48);
}
#showa-smile-intro .showa-smile-intro .box.box-049 .name {
  -webkit-transform: scale(1.49);
  transform: scale(1.49);
}
#showa-smile-intro .showa-smile-intro .box.box-050 .name {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}
#showa-smile-intro .showa-smile-intro .box.box-051 .name {
  -webkit-transform: scale(1.51);
  transform: scale(1.51);
}
#showa-smile-intro .showa-smile-intro .box.box-052 .name {
  -webkit-transform: scale(1.52);
  transform: scale(1.52);
}
#showa-smile-intro .showa-smile-intro .box.box-053 .name {
  -webkit-transform: scale(1.53);
  transform: scale(1.53);
}
#showa-smile-intro .showa-smile-intro .box.box-054 .name {
  -webkit-transform: scale(1.54);
  transform: scale(1.54);
}
#showa-smile-intro .showa-smile-intro .box.box-055 .name {
  -webkit-transform: scale(1.55);
  transform: scale(1.55);
}
#showa-smile-intro .showa-smile-intro .box.box-056 .name {
  -webkit-transform: scale(1.56);
  transform: scale(1.56);
}
#showa-smile-intro .showa-smile-intro .box.box-057 .name {
  -webkit-transform: scale(1.57);
  transform: scale(1.57);
}
#showa-smile-intro .showa-smile-intro .box.box-058 .name {
  -webkit-transform: scale(1.58);
  transform: scale(1.58);
}
#showa-smile-intro .showa-smile-intro .box.box-059 .name {
  -webkit-transform: scale(1.59);
  transform: scale(1.59);
}
#showa-smile-intro .showa-smile-intro .box.box-060 .name {
  -webkit-transform: scale(1.6);
  transform: scale(1.6);
}
#showa-smile-intro .showa-smile-intro .box.box-061 .name {
  -webkit-transform: scale(1.61);
  transform: scale(1.61);
}
#showa-smile-intro .showa-smile-intro .box.box-062 .name {
  -webkit-transform: scale(1.62);
  transform: scale(1.62);
}
#showa-smile-intro .showa-smile-intro .box.box-063 .name {
  -webkit-transform: scale(1.63);
  transform: scale(1.63);
}
#showa-smile-intro .showa-smile-intro .box.box-064 .name {
  -webkit-transform: scale(1.64);
  transform: scale(1.64);
}
#showa-smile-intro .showa-smile-intro .box.box-065 .name {
  -webkit-transform: scale(1.65);
  transform: scale(1.65);
}
#showa-smile-intro .showa-smile-intro .box.box-066 .name {
  -webkit-transform: scale(1.66);
  transform: scale(1.66);
}
#showa-smile-intro .showa-smile-intro .box.box-067 .name {
  -webkit-transform: scale(1.67);
  transform: scale(1.67);
}
#showa-smile-intro .showa-smile-intro .box.box-068 .name {
  -webkit-transform: scale(1.68);
  transform: scale(1.68);
}
#showa-smile-intro .showa-smile-intro .box.box-069 .name {
  -webkit-transform: scale(1.69);
  transform: scale(1.69);
}
#showa-smile-intro .showa-smile-intro .box.box-070 .name {
  -webkit-transform: scale(1.7);
  transform: scale(1.7);
}
#showa-smile-intro .showa-smile-intro .box.box-071 .name {
  -webkit-transform: scale(1.71);
  transform: scale(1.71);
}
#showa-smile-intro .showa-smile-intro .box.box-072 .name {
  -webkit-transform: scale(1.72);
  transform: scale(1.72);
}
#showa-smile-intro .showa-smile-intro .box.box-073 .name {
  -webkit-transform: scale(1.73);
  transform: scale(1.73);
}
#showa-smile-intro .showa-smile-intro .box.box-074 .name {
  -webkit-transform: scale(1.74);
  transform: scale(1.74);
}
#showa-smile-intro .showa-smile-intro .box.box-075 .name {
  -webkit-transform: scale(1.75);
  transform: scale(1.75);
}
#showa-smile-intro .showa-smile-intro .box.box-076 .name {
  -webkit-transform: scale(1.76);
  transform: scale(1.76);
}
#showa-smile-intro .showa-smile-intro .box.box-077 .name {
  -webkit-transform: scale(1.77);
  transform: scale(1.77);
}
#showa-smile-intro .showa-smile-intro .box.box-078 .name {
  -webkit-transform: scale(1.78);
  transform: scale(1.78);
}
#showa-smile-intro .showa-smile-intro .box.box-079 .name {
  -webkit-transform: scale(1.79);
  transform: scale(1.79);
}
#showa-smile-intro .showa-smile-intro .box.box-080 .name {
  -webkit-transform: scale(1.8);
  transform: scale(1.8);
}
#showa-smile-intro .showa-smile-intro .box.box-081 .name {
  -webkit-transform: scale(1.81);
  transform: scale(1.81);
}
#showa-smile-intro .showa-smile-intro .box.box-082 .name {
  -webkit-transform: scale(1.82);
  transform: scale(1.82);
}
#showa-smile-intro .showa-smile-intro .box.box-083 .name {
  -webkit-transform: scale(1.83);
  transform: scale(1.83);
}
#showa-smile-intro .showa-smile-intro .box.box-084 .name {
  -webkit-transform: scale(1.84);
  transform: scale(1.84);
}
#showa-smile-intro .showa-smile-intro .box.box-085 .name {
  -webkit-transform: scale(1.85);
  transform: scale(1.85);
}
#showa-smile-intro .showa-smile-intro .box.box-086 .name {
  -webkit-transform: scale(1.86);
  transform: scale(1.86);
}
#showa-smile-intro .showa-smile-intro .box.box-087 .name {
  -webkit-transform: scale(1.87);
  transform: scale(1.87);
}
#showa-smile-intro .showa-smile-intro .box.box-088 .name {
  -webkit-transform: scale(1.88);
  transform: scale(1.88);
}
#showa-smile-intro .showa-smile-intro .box.box-089 .name {
  -webkit-transform: scale(1.89);
  transform: scale(1.89);
}
#showa-smile-intro .showa-smile-intro .box.box-090 .name {
  -webkit-transform: scale(1.9);
  transform: scale(1.9);
}
#showa-smile-intro .showa-smile-intro .box.box-091 .name {
  -webkit-transform: scale(1.91);
  transform: scale(1.91);
}
#showa-smile-intro .showa-smile-intro .box.box-092 .name {
  -webkit-transform: scale(1.92);
  transform: scale(1.92);
}
#showa-smile-intro .showa-smile-intro .box.box-093 .name {
  -webkit-transform: scale(1.93);
  transform: scale(1.93);
}
#showa-smile-intro .showa-smile-intro .box.box-094 .name {
  -webkit-transform: scale(1.94);
  transform: scale(1.94);
}
#showa-smile-intro .showa-smile-intro .box.box-095 .name {
  -webkit-transform: scale(1.95);
  transform: scale(1.95);
}
#showa-smile-intro .showa-smile-intro .box.box-096 .name {
  -webkit-transform: scale(1.96);
  transform: scale(1.96);
}
#showa-smile-intro .showa-smile-intro .box.box-097 .name {
  -webkit-transform: scale(1.97);
  transform: scale(1.97);
}
#showa-smile-intro .showa-smile-intro .box.box-098 .name {
  -webkit-transform: scale(1.98);
  transform: scale(1.98);
}
#showa-smile-intro .showa-smile-intro .box.box-099 .name {
  -webkit-transform: scale(1.99);
  transform: scale(1.99);
}
#showa-smile-intro .showa-smile-intro .box.box-100 .name {
  -webkit-transform: scale(2);
  transform: scale(2);
}
#showa-smile-intro .showa-smile-intro .box.box-101 .name {
  -webkit-transform: scale(2.01);
  transform: scale(2.01);
}

#showa-smile .showa-smile {
  padding: 75px 0;
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 1440px) {
  #showa-smile .showa-smile {
    padding-left: 5.5%;
    padding-right: 5.5%;
  }
}
@media only screen and (max-width: 1280px) {
  #showa-smile .showa-smile {
    padding-left: 3%;
    padding-right: 3%;
  }
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile {
    padding-top: 3%;
    padding-bottom: 3%;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-top: 6%;
  }
}
#showa-smile .showa-smile .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top {
    display: block;
  }
}
#showa-smile .showa-smile .top .left {
  width: 43.23%;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top .left {
    width: 100%;
  }
}
#showa-smile .showa-smile .top .left .logo {
  min-width: 155px;
}
@media only screen and (max-width: 1080px) {
  #showa-smile .showa-smile .top .left .logo {
    width: auto;
  }
}
#showa-smile .showa-smile .top .left .logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top .left .logo a .logo {
    width: 155px;
  }
}
#showa-smile .showa-smile .top .left .logo a .logo-anniversary {
  margin-left: 30px;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top .left .logo a .logo-anniversary {
    width: 46px;
    margin-left: 20px;
  }
}
#showa-smile .showa-smile .top .left .content {
  margin-top: 90px;
}
@media only screen and (max-width: 1080px) {
  #showa-smile .showa-smile .top .left .content {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content {
    margin-top: 25px;
  }
}
#showa-smile .showa-smile .top .left .content .ttl img {
  width: 77.5%;
  max-width: 482px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .ttl img {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .ttl {
    margin-top: 25px;
  }
}
#showa-smile .showa-smile .top .left .content .employee-list {
  margin-top: 25px;
}
#showa-smile .showa-smile .top .left .content .text {
  margin-top: 30px;
  font-family: "Noto Serif JP", serif;
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .text {
    margin-top: 20px;
  }
}
#showa-smile .showa-smile .top .left .content .text h2 {
  font-size: 4rem;
  line-height: 5rem;
  color: #0b57a7;
}
@media only screen and (max-width: 1440px) {
  #showa-smile .showa-smile .top .left .content .text h2 {
    font-size: 3.4rem;
    line-height: 4.4rem;
  }
}
@media only screen and (max-width: 1080px) {
  #showa-smile .showa-smile .top .left .content .text h2 {
    font-size: 3rem;
    line-height: 4rem;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .text h2 {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
#showa-smile .showa-smile .top .left .content .text p {
  margin-top: 20px;
  font-size: 1.8rem;
  line-height: 3rem;
  color: #0b57a7;
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .text p {
    margin-top: 15px;
    font-size: 1.3rem;
    line-height: 2.5rem;
  }
}
#showa-smile .showa-smile .top .left .content .btn-box {
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .left .content .btn-box {
    margin-top: 20px;
  }
}
#showa-smile .showa-smile .top .left .content .btn-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#showa-smile .showa-smile .top .left .content .btn-box ul li {
  width: 100%;
  max-width: 240px;
}
#showa-smile .showa-smile .top .left .content .btn-box ul li + li {
  margin-left: 15px;
}
#showa-smile .showa-smile .top .right {
  width: 52.77%;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top .right {
    width: 100%;
    margin-top: 40px;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .right {
    margin-top: 25px;
  }
}
#showa-smile .showa-smile .top .right .btn-box {
  margin-top: 40px;
}
@media only screen and (max-width: 834px) {
  #showa-smile .showa-smile .top .right .btn-box {
    width: 100%;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .showa-smile .top .right .btn-box {
    margin-top: 25px;
  }
}
#showa-smile .showa-smile .top .right .btn-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#showa-smile .showa-smile .top .right .btn-box ul li {
  width: 100%;
  max-width: 240px;
}
#showa-smile .showa-smile .top .right .btn-box ul li + li {
  margin-left: 15px;
}
#showa-smile .showa-smile .top .employee-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#showa-smile .showa-smile .top .employee-list ul li {
  width: 12.5%;
}
#showa-smile .showa-smile .top .employee-list ul li a {
  display: block;
}
#showa-smile .reason {
  position: relative;
  padding: 20px 0;
}
@media only screen and (max-width: 1440px) {
  #showa-smile .reason {
    padding: 3%;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason {
    padding-top: 6%;
  }
}
#showa-smile .reason .content {
  position: relative;
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content {
    margin-top: 20px;
  }
}
#showa-smile .reason .content .circle {
  position: absolute;
  top: 15%;
  left: 0;
  right: 0;
  z-index: 8;
  margin-left: auto;
  margin-right: auto;
  width: 43.19%;
  display: table;
}
#showa-smile .reason .content .circle .circle-button {
  z-index: -1;
  pointer-events: auto !important;
}
#showa-smile .reason .content .circle .rea {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#showa-smile .reason .content .circle .rea h1 {
  width: 32.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .circle {
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
  }
}
#showa-smile .reason .content #txt-content1 {
  z-index: 9;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
#showa-smile .reason .content #txt-content1 a {
  pointer-events: none;
}
#showa-smile .reason .content #txt-content1.active {
  visibility: visible;
  opacity: 1;
  z-index: 11 !important;
}
#showa-smile .reason .content #txt-content1.active a {
  pointer-events: auto;
}
#showa-smile .reason .content #txt-content2 {
  z-index: 9;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
#showa-smile .reason .content #txt-content2 a {
  pointer-events: none;
}
#showa-smile .reason .content #txt-content2.active {
  visibility: visible;
  opacity: 1;
  z-index: 11 !important;
}
#showa-smile .reason .content #txt-content2.active a {
  pointer-events: auto;
}
#showa-smile .reason .content .txt-01 a, #showa-smile .reason .content .txt-01 div {
  position: absolute;
  z-index: 8;
}
#showa-smile .reason .content .txt-01 a img, #showa-smile .reason .content .txt-01 div img {
  width: 100%;
  height: auto;
}
#showa-smile .reason .content .txt-01 a.name-01, #showa-smile .reason .content .txt-01 div.name-01 {
  width: 16.18%;
  top: 3.3%;
  left: 7.5%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-01, #showa-smile .reason .content .txt-01 div.name-01 {
    width: 33.18%;
    top: 4.3%;
  }
}
#showa-smile .reason .content .txt-01 a.name-02, #showa-smile .reason .content .txt-01 div.name-02 {
  width: 6.73%;
  top: 1.4%;
  left: 31.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-02, #showa-smile .reason .content .txt-01 div.name-02 {
    width: 15.94%;
    top: 11.4%;
    left: 50%;
  }
}
#showa-smile .reason .content .txt-01 a.name-03, #showa-smile .reason .content .txt-01 div.name-03 {
  width: 26.38%;
  top: 12.6%;
  left: 2.1%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-03, #showa-smile .reason .content .txt-01 div.name-03 {
    width: 40%;
  }
}
#showa-smile .reason .content .txt-01 a.name-04, #showa-smile .reason .content .txt-01 div.name-04 {
  width: 9.72%;
  top: 22.3%;
  left: 14.7%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-04, #showa-smile .reason .content .txt-01 div.name-04 {
    width: 17%;
    top: 20.3%;
    left: 4%;
  }
}
#showa-smile .reason .content .txt-01 a.name-05, #showa-smile .reason .content .txt-01 div.name-05 {
  width: 11.94%;
  top: 45.4%;
  left: 2.1%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-05, #showa-smile .reason .content .txt-01 div.name-05 {
    width: 22.08%;
    top: 53.4%;
  }
}
#showa-smile .reason .content .txt-01 a.name-06, #showa-smile .reason .content .txt-01 div.name-06 {
  width: 16.73%;
  top: 60.2%;
  left: 3.1%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-06, #showa-smile .reason .content .txt-01 div.name-06 {
    width: 30.83%;
    top: 66.2%;
    left: 10%;
  }
}
#showa-smile .reason .content .txt-01 a.name-07, #showa-smile .reason .content .txt-01 div.name-07 {
  width: 24.93%;
  top: 73.5%;
  left: 6%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-07, #showa-smile .reason .content .txt-01 div.name-07 {
    width: 42.15%;
  }
}
#showa-smile .reason .content .txt-01 a.name-08, #showa-smile .reason .content .txt-01 div.name-08 {
  width: 45.68%;
  top: 86%;
  left: 14.5%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-08, #showa-smile .reason .content .txt-01 div.name-08 {
    width: 50.97%;
    top: 92.5%;
    left: 7.5%;
  }
}
#showa-smile .reason .content .txt-01 a.name-09, #showa-smile .reason .content .txt-01 div.name-09 {
  width: 13.54%;
  top: 2.2%;
  left: 51.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-09, #showa-smile .reason .content .txt-01 div.name-09 {
    width: 27.5%;
  }
}
#showa-smile .reason .content .txt-01 a.name-10, #showa-smile .reason .content .txt-01 div.name-10 {
  width: 4.58%;
  top: 2%;
  left: 84.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-10, #showa-smile .reason .content .txt-01 div.name-10 {
    width: 10%;
    top: 10%;
    left: 74.8%;
  }
}
#showa-smile .reason .content .txt-01 a.name-11, #showa-smile .reason .content .txt-01 div.name-11 {
  width: 3.68%;
  top: 5.6%;
  left: 93.2%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-11, #showa-smile .reason .content .txt-01 div.name-11 {
    width: 6%;
    top: 3%;
    left: 91%;
  }
}
#showa-smile .reason .content .txt-01 a.name-12, #showa-smile .reason .content .txt-01 div.name-12 {
  width: 20.13%;
  top: 16.4%;
  left: 61.9%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-12, #showa-smile .reason .content .txt-01 div.name-12 {
    width: 39%;
    top: 32.4%;
    left: 29%;
  }
}
#showa-smile .reason .content .txt-01 a.name-13, #showa-smile .reason .content .txt-01 div.name-13 {
  width: 6.52%;
  top: 25.6%;
  left: 74.7%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-13, #showa-smile .reason .content .txt-01 div.name-13 {
    width: 9.95%;
    top: 57.6%;
    left: 73.7%;
  }
}
#showa-smile .reason .content .txt-01 a.name-14, #showa-smile .reason .content .txt-01 div.name-14 {
  width: 18.95%;
  top: 51.2%;
  left: 78.1%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-14, #showa-smile .reason .content .txt-01 div.name-14 {
    width: 23%;
    top: 49.2%;
    left: 76.1%;
  }
}
#showa-smile .reason .content .txt-01 a.name-15, #showa-smile .reason .content .txt-01 div.name-15 {
  width: 2.01%;
  top: 64.2%;
  left: 85.9%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-15, #showa-smile .reason .content .txt-01 div.name-15 {
    width: 4%;
    top: 66.2%;
    left: 60.9%;
  }
}
#showa-smile .reason .content .txt-01 a.name-16, #showa-smile .reason .content .txt-01 div.name-16 {
  width: 4.16%;
  top: 61.9%;
  left: 93.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-16, #showa-smile .reason .content .txt-01 div.name-16 {
    width: 9%;
    left: 91%;
  }
}
#showa-smile .reason .content .txt-01 a.name-17, #showa-smile .reason .content .txt-01 div.name-17 {
  width: 14.58%;
  top: 81.6%;
  left: 66.9%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-01 a.name-17, #showa-smile .reason .content .txt-01 div.name-17 {
    width: 31.11%;
    top: 83%;
    left: 15.9%;
  }
}
#showa-smile .reason .content .txt-02 a, #showa-smile .reason .content .txt-02 div {
  position: absolute;
  z-index: 8;
}
#showa-smile .reason .content .txt-02 a img, #showa-smile .reason .content .txt-02 div img {
  width: 100%;
  height: auto;
}
#showa-smile .reason .content .txt-02 a.name-01, #showa-smile .reason .content .txt-02 div.name-01 {
  width: 3.42%;
  top: 6.64%;
  left: 1.8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-01, #showa-smile .reason .content .txt-02 div.name-01 {
    width: 5%;
    top: 3%;
    left: 1%;
  }
}
#showa-smile .reason .content .txt-02 a.name-02, #showa-smile .reason .content .txt-02 div.name-02 {
  width: 12.63%;
  top: 10%;
  left: 8%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-02, #showa-smile .reason .content .txt-02 div.name-02 {
    width: 22%;
    top: 8%;
    left: 12%;
  }
}
#showa-smile .reason .content .txt-02 a.name-03, #showa-smile .reason .content .txt-02 div.name-03 {
  width: 6.59%;
  top: 3%;
  left: 24%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-03, #showa-smile .reason .content .txt-02 div.name-03 {
    width: 10%;
    top: 16%;
    left: 28%;
  }
}
#showa-smile .reason .content .txt-02 a.name-04, #showa-smile .reason .content .txt-02 div.name-04 {
  width: 16.87%;
  top: 3%;
  left: 35%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-04, #showa-smile .reason .content .txt-02 div.name-04 {
    width: 23%;
    top: 1%;
  }
}
#showa-smile .reason .content .txt-02 a.name-05, #showa-smile .reason .content .txt-02 div.name-05 {
  width: 4.72%;
  top: 27%;
  left: 13%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-05, #showa-smile .reason .content .txt-02 div.name-05 {
    width: 10%;
    top: 37%;
    left: 11%;
  }
}
#showa-smile .reason .content .txt-02 a.name-06, #showa-smile .reason .content .txt-02 div.name-06 {
  width: 16.11%;
  top: 58%;
  left: 10%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-06, #showa-smile .reason .content .txt-02 div.name-06 {
    width: 30%;
    top: 64%;
    left: 3%;
  }
}
#showa-smile .reason .content .txt-02 a.name-07, #showa-smile .reason .content .txt-02 div.name-07 {
  width: 20.69%;
  top: 71%;
  left: 5%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-07, #showa-smile .reason .content .txt-02 div.name-07 {
    width: 30%;
    top: 72%;
    left: 14%;
  }
}
#showa-smile .reason .content .txt-02 a.name-08, #showa-smile .reason .content .txt-02 div.name-08 {
  width: 32.08%;
  top: 88%;
  left: 29%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-08, #showa-smile .reason .content .txt-02 div.name-08 {
    width: 40%;
    top: 90%;
    left: 6%;
  }
}
#showa-smile .reason .content .txt-02 a.name-09, #showa-smile .reason .content .txt-02 div.name-09 {
  width: 13.47%;
  top: 5%;
  left: 58%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-09, #showa-smile .reason .content .txt-02 div.name-09 {
    width: 21%;
    top: 2%;
    left: 73%;
  }
}
#showa-smile .reason .content .txt-02 a.name-10, #showa-smile .reason .content .txt-02 div.name-10 {
  width: 9.72%;
  top: 4%;
  left: 75%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-10, #showa-smile .reason .content .txt-02 div.name-10 {
    width: 13%;
    top: 8%;
    left: 60%;
  }
}
#showa-smile .reason .content .txt-02 a.name-11, #showa-smile .reason .content .txt-02 div.name-11 {
  width: 4.58%;
  top: 5%;
  left: 92%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-11, #showa-smile .reason .content .txt-02 div.name-11 {
    width: 10%;
    top: 14%;
    left: 87%;
  }
}
#showa-smile .reason .content .txt-02 a.name-12, #showa-smile .reason .content .txt-02 div.name-12 {
  width: 14.02%;
  top: 32%;
  left: 77%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-12, #showa-smile .reason .content .txt-02 div.name-12 {
    width: 30%;
    top: 24%;
    left: 50%;
  }
}
#showa-smile .reason .content .txt-02 a.name-13, #showa-smile .reason .content .txt-02 div.name-13 {
  width: 6.8%;
  top: 48%;
  left: 75%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-13, #showa-smile .reason .content .txt-02 div.name-13 {
    width: 12%;
    top: 44%;
    left: 82%;
  }
}
#showa-smile .reason .content .txt-02 a.name-14, #showa-smile .reason .content .txt-02 div.name-14 {
  width: 11.25%;
  top: 50%;
  left: 86%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-14, #showa-smile .reason .content .txt-02 div.name-14 {
    width: 20%;
    top: 69%;
    left: 48%;
  }
}
#showa-smile .reason .content .txt-02 a.name-15, #showa-smile .reason .content .txt-02 div.name-15 {
  width: 3.68%;
  top: 68%;
  left: 92%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-15, #showa-smile .reason .content .txt-02 div.name-15 {
    width: 9%;
    top: 67%;
    left: 86%;
  }
}
#showa-smile .reason .content .txt-02 a.name-16, #showa-smile .reason .content .txt-02 div.name-16 {
  width: 14.51%;
  top: 83%;
  left: 69%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-16, #showa-smile .reason .content .txt-02 div.name-16 {
    width: 26%;
    left: 50%;
  }
}
#showa-smile .reason .content .txt-02 a.name-17, #showa-smile .reason .content .txt-02 div.name-17 {
  width: 19.4%;
  top: 93%;
  left: 75%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .content .txt-02 a.name-17, #showa-smile .reason .content .txt-02 div.name-17 {
    width: 30%;
    left: 64%;
  }
}
#showa-smile .reason .circle-button-sp {
  display: none;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .circle-button-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
#showa-smile .reason .circle-button-sp .circle-button {
  position: static;
  margin: 0 1.5%;
  color: #fff !important;
  background-color: #000 !important;
}
#showa-smile .reason .circle-button {
  visibility: hidden;
  opacity: 0;
  pointer-events: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: -1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}
@media only screen and (max-width: 834px) {
  #showa-smile .reason .circle-button {
    padding: 10px 35px;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .circle-button {
    margin-top: auto;
    top: auto;
    visibility: visible;
    opacity: 0.5;
    z-index: 9;
    padding: 10px 35px;
    font-size: 1.4rem;
    line-height: 1.4rem;
    background-repeat: no-repeat;
    background-size: 6px 10px;
  }
}
#showa-smile .reason .circle-button.prev {
  left: -60px;
  background-image: url("/assets/images/commons/arrow-left-white.svg");
  background-position: center left 16px;
}
#showa-smile .reason .circle-button.next {
  right: -60px;
  background-image: url("/assets/images/commons/arrow-right-white.svg");
  background-position: center right 16px;
}
#showa-smile .reason .circle-button.active {
  visibility: visible;
  opacity: 1;
}
#showa-smile .reason .employee-list {
  margin-top: 40px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .employee-list {
    margin-top: 20px;
  }
}
#showa-smile .reason .employee-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#showa-smile .reason .employee-list ul li {
  width: 12.5%;
}
@media only screen and (max-width: 750px) {
  #showa-smile .reason .employee-list ul li {
    width: 25%;
  }
}
#showa-smile .reason .employee-list ul li a {
  display: block;
}
#showa-smile .reason .employee-list ul li a img {
  width: 100%;
  height: auto;
}
#showa-smile .box-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo {
    display: block;
  }
}
#showa-smile .box-logo .logo {
  bottom: 0;
  left: 0;
  z-index: 8;
  min-width: 155px;
}
@media only screen and (max-width: 1080px) {
  #showa-smile .box-logo .logo {
    width: auto;
  }
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo .logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
#showa-smile .box-logo .logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  #showa-smile .box-logo .logo a .logo {
    width: 155px;
  }
}
#showa-smile .box-logo .logo a .logo-anniversary {
  margin-left: 30px;
}
@media only screen and (max-width: 834px) {
  #showa-smile .box-logo .logo a .logo-anniversary {
    width: 46px;
    margin-left: 20px;
  }
}
#showa-smile .box-logo .logo a.back {
  font-size: 1.4rem;
  line-height: 1.4rem;
  color: #0b57a7;
}
#showa-smile .box-logo .btn-box {
  position: relative;
  z-index: 9;
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo .btn-box {
    margin-top: 25px;
  }
}
#showa-smile .box-logo .btn-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo .btn-box ul {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
#showa-smile .box-logo .btn-box ul li {
  width: 280px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo .btn-box ul li {
    width: 48.5%;
  }
}
#showa-smile .box-logo .btn-box ul li.back {
  width: auto;
  margin-right: 20px;
}
#showa-smile .box-logo .btn-box ul li.back a {
  white-space: nowrap;
  color: #0b57a7;
}
#showa-smile .box-logo .btn-box ul li + li {
  margin-left: 15px;
}
@media only screen and (max-width: 750px) {
  #showa-smile .box-logo .btn-box ul li + li {
    margin-left: 0;
  }
}