@charset "UTF-8";
/*----------------------------------------------------
    ブラウザ設定初期化
----------------------------------------------------*/
html {
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, p, th, td {
  margin: 0;
  padding: 0; }

address, caption, th {
  font-style: normal; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit; }

caption, th {
  text-align: left; }

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

object, embed {
  vertical-align: top; }

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

img {
  border: 0;
  line-height: 0;
  vertical-align: bottom; }

li {
  list-style-type: none; }

/*----------------------------------------------------
    HTML5 elements for lte IE8
----------------------------------------------------*/
article, footer, header, nav, section {
  display: block; }

/*----------------------------------------------------
    全要素にbox-sizingを設定(bootstrap対策)
----------------------------------------------------*/
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

* {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }
  *:before, *:after {
    -webkit-box-sizing: inherit;
            box-sizing: inherit; }

/*----------------------------------------------------
    タブのサイズを指定
----------------------------------------------------*/
:root {
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4; }

/*----------------------------------------------------
    基本設定、リンクカラーなど
----------------------------------------------------*/
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

b, strong {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold; }

hr {
  overflow: visible;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0; }

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

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

/*----------------------------------------------------
    フォームのノーマライズ
----------------------------------------------------*/
button, input, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  color: inherit; }

button, input {
  overflow: visible; }

button, select {
  text-transform: none; }

button, [type="button"], [type="reset"], [type="submit"] {
  cursor: pointer;
  -webkit-appearance: button; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

button[disabled], html input[disabled] {
  cursor: default; }

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

input {
  overflow: visible;
  line-height: normal; }

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

/*----------------------------------------------------
    背景色、リンクカラーなど要素に対してのスタイル指定
----------------------------------------------------*/
/*  body
----------------------------------------------------*/
body {
  background-color: #fff; }

/*  body min-width
----------------------------------------------------*/
body {
  min-width: 100%; }

/*  a
----------------------------------------------------*/
a {
  color: #243d5a; }

a:link, a:visited {
  text-decoration: underline; }

a:hover, a:active {
  outline: 0;
  text-decoration: none; }

/*  img
----------------------------------------------------*/
img {
  max-width: 100%;
  height: auto; }

/*  h1 - h6
----------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold; }

blockquote {
  margin: 1em 2em;
  border: 1px solid #dbdbdb;
  background-color: #f4f4f4;
  padding: 1em; }

/*----------------------------------------------------
    フォント指定
----------------------------------------------------*/
/*  游明朝
----------------------------------------------------*/
@font-face {
  font-family: "Yu Mincho", "YuMincho";
  src: local("Yu Mincho Bold");
  font-weight: bold; }

/*  Helvetica Neue
----------------------------------------------------*/
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100; }

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200; }

body {
  line-height: 1.71;
  font-size: 16px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  color: #333; }

body.ie8 {
  font-family: 'メイリオ', sans-serif; }

/*----------------------------------------------------
    #pageWrap
----------------------------------------------------*/
#pageWrap {
  padding-top: 0; }

/*----------------------------------------------------
    .header
----------------------------------------------------*/
.header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 300;
  width: 100%;
  height: 100px; }
  .header__wrap {
    position: relative;
    width: 100%;
    height: 100%; }

/*  .header > .hdLogo
----------------------------------------------------*/
.hdLogo {
  position: absolute;
  top: 30px;
  left: 20px; }
  .hdLogo a {
    display: inline-block;
    height: 100%; }
  .hdLogo img {
    width: auto;
    height: 100%; }

/*----------------------------------------------------
    .footer__wrap
------------------------------------------------------*/
.footer__wrap--type01 {
  padding-top: 80px;
  padding-bottom: 72px;
  background: url(/img/bg_pattern01.png) repeat 0 0; }

.footer__wrap--type02 {
  padding-top: 55px;
  padding-bottom: 60px;
  background-color: #11263b; }

.footer__wrap--type03 {
  padding-top: 35px;
  padding-bottom: 35px;
  background-color: #11263b; }

/*----------------------------------------------------
    .footer__copy
----------------------------------------------------*/
.footer__copy {
  margin-bottom: 18px;
  line-height: 1.4;
  text-align: center;
  font-size: 13px;
  color: #FFF; }
  .footer__copy img {
    margin-bottom: 25px; }

/*----------------------------------------------------
    .footer__copyright
----------------------------------------------------*/
.footer__copyright {
  text-align: center;
  letter-spacing: 0.1em;
  font-weight: normal;
  font-size: 10px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF; }

/*----------------------------------------------------
    .footer__container
----------------------------------------------------*/
.footer__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 1200px;
  margin-right: auto;
  margin-left: auto; }

/*----------------------------------------------------
    .footer__info
----------------------------------------------------*/
.footer__info {
  width: 254px; }

/*----------------------------------------------------
    .footer__logo
----------------------------------------------------*/
.footer__logo {
  width: 254px;
  margin-bottom: 20px;
  line-height: 1;
  font-size: 10px; }
  .footer__logo a {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear; }
    .footer__logo a:hover, .footer__logo a:focus {
      filter: alpha(opacity=70);
      opacity: 0.7; }

/*----------------------------------------------------
    .footer__address
----------------------------------------------------*/
.footer__address {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  font-size: 12px;
  color: #243d5a; }

/*----------------------------------------------------
    .spNav
------------------------------------------------------*/
.spNav {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  height: 100%; }
  .spNav .spNav__wrap {
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: -321px;
    z-index: -1;
    width: 321px;
    height: calc(100% - 100px);
    margin-top: 100px;
    background-color: rgba(22, 41, 61, 0.95);
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease; }
    .spNav .spNav__wrap.is-open {
      -webkit-transform: translateX(-320px);
          -ms-transform: translateX(-320px);
              transform: translateX(-320px); }
    .spNav .spNav__wrap .spNav__inner {
      padding: 0; }

/*  .spNav > #gNavSpButtonBg.gNavSp__bg
----------------------------------------------------*/
.gNavSp__bg {
  position: fixed;
  top: 0;
  right: -321px;
  width: 321px;
  height: 100px;
  border-bottom: 1px solid #435362;
  background-color: rgba(22, 41, 61, 0.95);
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease; }
  .gNavSp__bg.is-open {
    -webkit-transform: translateX(-320px);
        -ms-transform: translateX(-320px);
            transform: translateX(-320px); }

/*  .spNav > #gNavSpButton.gNavSp__btn
----------------------------------------------------*/
.gNavSp__btn {
  position: absolute;
  top: 20px;
  right: 60px;
  z-index: 201;
  width: 60px;
  height: 60px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .gNavSp__btn button {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    background-color: transparent;
    text-indent: 100%;
    white-space: nowrap;
    -webkit-transition: all 0.4s linear;
    transition: all 0.4s linear; }
    .gNavSp__btn button span {
      display: inline-block;
      position: absolute;
      left: 4px;
      width: 49px;
      height: 2px;
      background-color: #11263b;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      .gNavSp__btn button span:nth-of-type(1) {
        top: 17px; }
      .gNavSp__btn button span:nth-of-type(2) {
        top: 29px; }
      .gNavSp__btn button span:nth-of-type(3) {
        bottom: 17px; }
    .gNavSp__btn button.is-open {
      left: inherit;
      background-color: transparent; }
      .gNavSp__btn button.is-open span {
        background-color: #FFF; }
        .gNavSp__btn button.is-open span:nth-of-type(1) {
          -webkit-transform: translateY(12px) rotate(-45deg);
              -ms-transform: translateY(12px) rotate(-45deg);
                  transform: translateY(12px) rotate(-45deg); }
        .gNavSp__btn button.is-open span:nth-of-type(2) {
          opacity: 0; }
        .gNavSp__btn button.is-open span:nth-of-type(3) {
          -webkit-transform: translateY(-12px) rotate(45deg);
              -ms-transform: translateY(-12px) rotate(45deg);
                  transform: translateY(-12px) rotate(45deg); }

.is-active .gNavSp__btn {
  visibility: visible;
  opacity: 1; }

/*  .spNav > .spNav--type01
----------------------------------------------------*/
.spNav__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .spNav__container li.spNav__item--lv01 {
    position: relative;
    width: 100%;
    border-bottom: 1px solid #435362; }
    .spNav__container li.spNav__item--lv01 a {
      display: block;
      position: relative;
      width: 100%;
      padding: 20px 0 20px 35px;
      background: url(/img/icn_arrow01.svg) no-repeat left 15px center;
      background-size: 10px 8px;
      line-height: 1;
      line-height: 20px;
      font-size: 18px;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      .spNav__container li.spNav__item--lv01 a:link, .spNav__container li.spNav__item--lv01 a:visited, .spNav__container li.spNav__item--lv01 a:active, .spNav__container li.spNav__item--lv01 a:focus {
        text-decoration: none;
        color: #FFF; }
      .spNav__container li.spNav__item--lv01 a:hover {
        background-color: #16293d; }
    .spNav__container li.spNav__item--lv01.is-sub_exist a {
      width: calc(100% - 60px); }
    .spNav__container li.spNav__item--lv01.is-sub_exist button {
      overflow: hidden;
      position: absolute;
      top: 0;
      right: 0;
      width: 60px;
      height: 61px;
      padding: 0;
      border: none;
      border-bottom: 1px solid #435362;
      border-left: 1px solid #435362;
      background: transparent url(/img/icn_arrow02.svg) no-repeat center center;
      background-size: 8px 16px;
      text-indent: 100%;
      white-space: nowrap;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      .spNav__container li.spNav__item--lv01.is-sub_exist button:hover {
        background-color: #16293d; }
      .spNav__container li.spNav__item--lv01.is-sub_exist button.is-open {
        border-bottom: none;
        background: transparent url(/img/icn_arrow03.svg) no-repeat center center;
        background-size: 16px 8px; }
        .spNav__container li.spNav__item--lv01.is-sub_exist button.is-open:hover {
          background-color: #16293d; }
    .spNav__container li.spNav__item--lv01 .spNav__itemWrap {
      overflow: hidden;
      width: 100%;
      -webkit-transition: height 0.35s ease-out;
      transition: height 0.35s ease-out; }
      .spNav__container li.spNav__item--lv01 .spNav__itemWrap.is-open {
        border-top: 1px dashed #435362; }
      .spNav__container li.spNav__item--lv01 .spNav__itemWrap .spNav__item--lv02 li {
        border-bottom: 1px dashed #435362; }
        .spNav__container li.spNav__item--lv01 .spNav__itemWrap .spNav__item--lv02 li:nth-last-child(1) {
          border-bottom: none; }
        .spNav__container li.spNav__item--lv01 .spNav__itemWrap .spNav__item--lv02 li a {
          width: 100%;
          padding-right: 20px;
          padding-left: 50px;
          background: none;
          text-indent: -1em;
          -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear; }
          .spNav__container li.spNav__item--lv01 .spNav__itemWrap .spNav__item--lv02 li a:hover {
            background-color: #16293d; }
          .spNav__container li.spNav__item--lv01 .spNav__itemWrap .spNav__item--lv02 li a:before {
            content: "・"; }

/*----------------------------------------------------
    .fNav--type01
----------------------------------------------------*/

.fNav--type01 .fNav__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.fNav--type01 .fNav__item:first-child {
  width: 146px; }

.fNav--type01 .fNav__item:not(:first-child) {
  margin-left: 24px; }

.fNav--type01 .fNav__menu a {
  line-height: 1.4;
  font-size: 14px; }
  .fNav--type01 .fNav__menu a:link, .fNav--type01 .fNav__menu a:visited, .fNav--type01 .fNav__menu a:hover, .fNav--type01 .fNav__menu a:active, .fNav--type01 .fNav__menu a:focus {
    color: #243d5a; }
  .fNav--type01 .fNav__menu a:link, .fNav--type01 .fNav__menu a:visited {
    text-decoration: none; }
  .fNav--type01 .fNav__menu a:hover, .fNav--type01 .fNav__menu a:active {
    text-decoration: underline; }

.fNav--type01 .fNav__menu--lv01 {
  position: relative;
  margin-bottom: 3px;
  padding-left: 1em; }
  .fNav--type01 .fNav__menu--lv01 > a {
    padding-left: 16px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%228%22%3E%3Cpath%20d%3D%22M9.85%204L.15.15%205.22%204%20.15%207.85z%22%20fill%3D%22%23243d5a%22%2F%3E%3C%2Fsvg%3E") no-repeat 0 50%; }
  .fNav--type01 .fNav__menu--lv01:not(:first-child) {
    margin-left: 0; }

.fNav--type01 .fNav__menu--lv02 {
  margin-bottom: 8px;
  margin-left: 1em; }
  .fNav--type01 .fNav__menu--lv02 li {
    position: relative;
    padding-left: 1em; }
    .fNav--type01 .fNav__menu--lv02 li:before {
      content: "";
      display: block;
      position: absolute;
      top: 0.6em;
      left: calc(0.6em - 2px);
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background-color: #243d5a; }

/*----------------------------------------------------
    .fNav--type02
----------------------------------------------------*/
.fNav--type02 {
  position: relative;
  width: 1200px;
  height: 70px;
  margin-right: auto;
  margin-left: auto; }
  .fNav--type02 a {
    display: block; }
  .fNav--type02 .fNav__wrap {
    overflow: hidden;
    position: relative;
    width: calc(1200px - 60px * 2);
    height: 100%;
    margin-right: auto;
    margin-left: auto; }
  .fNav--type02 .fNav__container {
    position: relative;
    width: 2000px; }
  .fNav--type02 .fNav__item {
    float: left;
    width: 255px;
    height: 70px;
    margin-right: 20px; }
    .fNav--type02 .fNav__item a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      display: block; }
      .fNav--type02 .fNav__item a:hover, .fNav--type02 .fNav__item a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
  .fNav--type02 .fNav__controls {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1200px;
    height: 0;
    margin-right: auto;
    margin-left: auto;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
    .fNav--type02 .fNav__controls button {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      overflow: hidden;
      position: absolute;
      top: 35px;
      width: 42px;
      height: 42px;
      padding: 0;
      border: 0;
      background-color: transparent;
      background-position: 0 50%;
      background-repeat: no-repeat;
      background-size: 100% auto;
      text-indent: 100%;
      white-space: nowrap;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .fNav--type02 .fNav__controls button:hover, .fNav--type02 .fNav__controls button:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
    .fNav--type02 .fNav__controls .fNav__controls--prev {
      left: 5px;
      background-image: url(/img/icn_prev01.svg); }
    .fNav--type02 .fNav__controls .fNav__controls--next {
      right: 5px;
      background-image: url(/img/icn_next01.svg); }

/*----------------------------------------------------
    .pNav
----------------------------------------------------*/
.pNav {
  clear: both;
  width: 100%;
  margin-bottom: 30px;
  padding-top: 18px;
  padding-bottom: 17px;
  border-top: 1px solid #16293d; }
  .pNav__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    margin-top: -20px; }
    .pNav__container + .pNav__container {
      margin-top: 0; }
    .pNav__container li {
      position: relative;
      width: 33%;
      max-width: 250px;
      margin-top: 20px;
      line-height: 1.25;
      font-size: 14px; }
      .pNav__container li a {
        color: #333; }
        .pNav__container li a:link, .pNav__container li a:visited {
          text-decoration: none; }
        .pNav__container li a:hover, .pNav__container li a:active {
          text-decoration: underline; }
        .pNav__container li a span {
          display: block;
          position: absolute;
          top: 26px;
          width: 100%;
          line-height: 1.53;
          text-decoration: underline;
          font-size: 12px; }
      .pNav__container li:nth-child(1) a {
        padding-left: 26px;
        background: url(/img/icn_prev03.svg) no-repeat left top 6px;
        background-size: 22px 5px; }
      .pNav__container li:nth-child(2) {
        text-align: center; }
      .pNav__container li:nth-child(3) {
        text-align: right; }
        .pNav__container li:nth-child(3) a {
          padding-right: 26px;
          background: url(/img/icn_next03.svg) no-repeat right top 6px;
          background-size: 22px 5px; }

/*----------------------------------------------------
    .oNav
------------------------------------------------------*/
.oNav {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  height: 100%;
  padding-top: 100px; }
  .oNav__wrap {
    display: block;
    overflow-y: scroll;
    position: fixed;
    top: 100px;
    left: -340px;
    width: 340px;
    height: calc(100% - 100px);
    background-color: rgba(196, 61, 94, 0.95);
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease; }
    .oNav__wrap.is-open {
      -webkit-transform: translateX(340px);
          -ms-transform: translateX(340px);
              transform: translateX(340px); }
  .oNav onav__inner {
    position: relative; }

/*  .oNav > .oNav__button
----------------------------------------------------*/
.oNav__button--type01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 201;
  width: 100px;
  height: 100px; }
  .oNav__button--type01 button {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    background-color: rgba(196, 61, 94, 0.95); }
    .oNav__button--type01 button span {
      display: inline-block;
      position: absolute;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #fff;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
      .oNav__button--type01 button span:nth-of-type(1) {
        top: 16px;
        left: 26px; }
      .oNav__button--type01 button span:nth-of-type(2) {
        top: 36px;
        left: 26px; }
      .oNav__button--type01 button span:nth-of-type(3) {
        top: 56px;
        left: 26px; }
      .oNav__button--type01 button span:nth-of-type(4) {
        top: 16px;
        left: 46px; }
      .oNav__button--type01 button span:nth-of-type(5) {
        top: 36px;
        left: 46px; }
      .oNav__button--type01 button span:nth-of-type(6) {
        top: 56px;
        left: 46px; }
      .oNav__button--type01 button span:nth-of-type(7) {
        top: 16px;
        left: 66px; }
      .oNav__button--type01 button span:nth-of-type(8) {
        top: 36px;
        left: 66px; }
      .oNav__button--type01 button span:nth-of-type(9) {
        top: 56px;
        left: 66px; }
    .oNav__button--type01 button .oNav__label {
      overflow: hidden;
      position: absolute;
      top: 74px;
      left: 50%;
      width: 50px;
      height: 10px;
      background: url(/img/btn_menu01.png) no-repeat 0 0;
      background-size: 100% auto;
      text-indent: 100%;
      white-space: nowrap;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      -webkit-transition: background-position 0.2s linear;
      transition: background-position 0.2s linear; }
    .oNav__button--type01 button.is-open span:nth-of-type(2) {
      top: 46px;
      left: 36px; }
    .oNav__button--type01 button.is-open span:nth-of-type(4) {
      top: 26px;
      left: 36px; }
    .oNav__button--type01 button.is-open span:nth-of-type(6) {
      top: 46px;
      left: 56px; }
    .oNav__button--type01 button.is-open span:nth-of-type(8) {
      top: 26px;
      left: 56px; }
    .oNav__button--type01 button.is-open .oNav__label {
      background-position: 0 100%; }
  .is-active .oNav__button--type01 {
    visibility: visible;
    opacity: 1; }

/*  .oNav > .oNav__button
----------------------------------------------------*/
.oNav__button--type02 {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  width: 60px;
  height: 60px;
  padding: 0;
  border: 0;
  border-left: 1px dotted #c43d5e;
  background-color: transparent;
  cursor: pointer; }
  .js-accordionTriggerLv01 .oNav__button--type02 {
    top: 10px;
    border-left: 0; }
  .oNav__button--type02 span {
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #c43d5e;
    -webkit-transition: top 0.2s linear;
    transition: top 0.2s linear; }
    .oNav__button--type02 span:nth-child(1) {
      top: 28px;
      left: 21px; }
    .oNav__button--type02 span:nth-child(2) {
      top: 28px;
      left: 28px; }
    .oNav__button--type02 span:nth-child(3) {
      top: 28px;
      left: 35px; }
    .oNav__button--type02 span:nth-child(4) {
      top: 21px;
      left: 28px; }
    .oNav__button--type02 span:nth-child(5) {
      top: 35px;
      left: 28px; }
  .oNav__button--type02.is-open span:nth-child(4) {
    top: 28px; }
  .oNav__button--type02.is-open span:nth-child(5) {
    top: 28px; }

/*  .oNav > .oNav__container--type01
----------------------------------------------------*/
.oNav__container--type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 20px auto;
  padding-right: 10px;
  padding-left: 10px; }
  .oNav__container--type01 .oNav__item {
    width: calc(100% / 2 - (10px * (2 - 1) / 2));
    text-align: center; }
  .oNav__container--type01 .oNav__itemButton {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    display: block;
    position: relative;
    width: 100%;
    height: 60px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 40px;
    border-radius: 4px;
    background-color: #fff;
    line-height: 1.25;
    font-size: 14px;
    color: #FFF; }
    .oNav__container--type01 .oNav__itemButton:hover, .oNav__container--type01 .oNav__itemButton:focus {
      filter: alpha(opacity=70);
      opacity: 0.7; }
    .oNav__container--type01 .oNav__itemButton:before {
      content: "";
      display: block;
      position: absolute;
      top: 7px;
      left: 50%;
      width: 26px;
      height: 26px;
      line-height: 1;
      font-size: 26px;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
    .oNav__container--type01 .oNav__itemButton span {
      display: block;
      position: absolute;
      bottom: 5px;
      width: 100%;
      text-align: center; }
    .oNav__container--type01 .oNav__itemButton--search {
      padding-right: 0;
      padding-bottom: 0;
      padding-left: 0;
      border: 0;
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif; }
      .oNav__container--type01 .oNav__itemButton--search:before {
        background: url(/img/icn_search01.svg) no-repeat 0 0; }
    .oNav__container--type01 .oNav__itemButton--sitemap:link, .oNav__container--type01 .oNav__itemButton--sitemap:visited, .oNav__container--type01 .oNav__itemButton--sitemap:hover, .oNav__container--type01 .oNav__itemButton--sitemap:active, .oNav__container--type01 .oNav__itemButton--sitemap:focus {
      color: #FFF; }
    .oNav__container--type01 .oNav__itemButton--sitemap:link, .oNav__container--type01 .oNav__itemButton--sitemap:visited, .oNav__container--type01 .oNav__itemButton--sitemap:hover, .oNav__container--type01 .oNav__itemButton--sitemap:active, .oNav__container--type01 .oNav__itemButton--sitemap:focus {
      text-decoration: none; }
    .oNav__container--type01 .oNav__itemButton--sitemap:before {
      background: url(/img/icn_set01.svg) no-repeat 50% -2em; }

/*  .oNav > .oNav__container--type02
----------------------------------------------------*/
.oNav__container--type02 {
  overflow: hidden;
  width: calc(100% - 10px * 2);
  margin: 20px auto;
  border-top: 1px solid #c43d5e;
  border-radius: 5px;
  background-color: #fff; }
  .oNav__container--type02 a {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold; }
    .oNav__container--type02 a:link, .oNav__container--type02 a:visited {
      text-decoration: none; }
    .oNav__container--type02 a:hover, .oNav__container--type02 a:active {
      text-decoration: underline; }
    .oNav__container--type02 a:link, .oNav__container--type02 a:visited, .oNav__container--type02 a:hover, .oNav__container--type02 a:active, .oNav__container--type02 a:focus {
      color: #FFF; }
  .oNav__container--type02 .oNav__itemWrap {
    overflow: hidden;
    -webkit-transition: height 0.35s ease-out;
    transition: height 0.35s ease-out; }
  .oNav__container--type02 .oNav__item--lv01 {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    position: relative;
    color: #FFF; }
    .oNav__container--type02 .oNav__item--lv01 .oNav__trigger--type01 {
      display: block;
      position: relative;
      padding-left: 58px;
      border-bottom: 1px solid #c43d5e;
      line-height: 80px;
      font-size: 22px;
      cursor: pointer; }
      .oNav__container--type02 .oNav__item--lv01 .oNav__trigger--type01:before, .oNav__container--type02 .oNav__item--lv01 .oNav__trigger--type01:after {
        content: "";
        display: block; }
      .oNav__container--type02 .oNav__item--lv01 .oNav__trigger--type01:before {
        position: absolute;
        top: 50%;
        left: 20px;
        width: 30px;
        height: 26px;
        background: url(/img/icn_set01.svg) no-repeat 50% -6em;
        line-height: 1;
        font-size: 26px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
    .oNav__container--type02 .oNav__item--lv01 > .oNav__itemButton {
      top: 10px;
      border-left: 0; }
  .oNav__container--type02 .oNav__item--lv02 {
    position: relative;
    border-bottom: 1px solid #c43d5e; }
    .oNav__container--type02 .oNav__item--lv02 > a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      display: block;
      position: relative;
      padding-left: 34px;
      background: url("") no-repeat 15px 50%;
      line-height: 60px; }
      .oNav__container--type02 .oNav__item--lv02 > a:link, .oNav__container--type02 .oNav__item--lv02 > a:visited, .oNav__container--type02 .oNav__item--lv02 > a:hover, .oNav__container--type02 .oNav__item--lv02 > a:active, .oNav__container--type02 .oNav__item--lv02 > a:focus {
        text-decoration: none; }
      .oNav__container--type02 .oNav__item--lv02 > a:hover, .oNav__container--type02 .oNav__item--lv02 > a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
  .oNav__container--type02 .oNav__item--lv03 {
    padding-right: 10px;
    padding-left: 10px;
    border-top: 1px dotted #c43d5e; }
    .oNav__container--type02 .oNav__item--lv03 li:last-child a {
      border-bottom: 0; }
    .oNav__container--type02 .oNav__item--lv03 a {
      display: block;
      position: relative;
      padding: 20px 24px;
      border-bottom: 1px dotted #c43d5e;
      line-height: 1.25; }
      .oNav__container--type02 .oNav__item--lv03 a:link, .oNav__container--type02 .oNav__item--lv03 a:visited, .oNav__container--type02 .oNav__item--lv03 a:hover, .oNav__container--type02 .oNav__item--lv03 a:active, .oNav__container--type02 .oNav__item--lv03 a:focus {
        text-decoration: none; }
      .oNav__container--type02 .oNav__item--lv03 a:hover:after {
        opacity: 0.2; }
      .oNav__container--type02 .oNav__item--lv03 a:after {
        content: "";
        opacity: 0;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear; }
      .oNav__container--type02 .oNav__item--lv03 a:before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 10px;
        width: 6px;
        height: 1px;
        background-color: #c43d5e;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }

/*  .oNav > .oNav__container--type03
----------------------------------------------------*/
.oNav__container--type03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  height: 60px;
  margin: 20px auto;
  padding-right: 10px;
  padding-left: 10px; }
  .oNav__container--type03 .oNav__item {
    width: calc(100% / 2 - (10px * (2 - 1) / 2)); }
    .oNav__container--type03 .oNav__item a {
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
      font-weight: bold;
      display: block;
      position: relative;
      height: 100%;
      padding-top: 35px;
      border: 2px solid #fff;
      border-radius: 5px;
      text-align: center;
      font-size: 14px;
      color: #fff;
      -webkit-transition: background-color 0.2s linear;
      transition: background-color 0.2s linear; }
      .oNav__container--type03 .oNav__item a:link, .oNav__container--type03 .oNav__item a:visited, .oNav__container--type03 .oNav__item a:hover, .oNav__container--type03 .oNav__item a:active, .oNav__container--type03 .oNav__item a:focus {
        text-decoration: none; }
      .oNav__container--type03 .oNav__item a:link, .oNav__container--type03 .oNav__item a:visited, .oNav__container--type03 .oNav__item a:hover, .oNav__container--type03 .oNav__item a:active, .oNav__container--type03 .oNav__item a:focus {
        color: #fff; }
      .oNav__container--type03 .oNav__item a:before {
        content: "";
        display: inline-block;
        position: absolute;
        top: 8px;
        left: 50%;
        width: 30px;
        height: 26px;
        margin-right: 5px;
        margin-bottom: 4px;
        line-height: 1;
        vertical-align: middle;
        font-size: 26px;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%); }
    .oNav__container--type03 .oNav__item--type01 a {
      background-color: #243d5a; }
      .oNav__container--type03 .oNav__item--type01 a:hover, .oNav__container--type03 .oNav__item--type01 a:focus {
        background-color: #305177; }
      .oNav__container--type03 .oNav__item--type01 a:before {
        background: url(/img/icn_set01.svg) no-repeat 50% 0; }
    .oNav__container--type03 .oNav__item--type02 a {
      background-color: #d35353; }
      .oNav__container--type03 .oNav__item--type02 a:hover, .oNav__container--type03 .oNav__item--type02 a:focus {
        background-color: #db7373; }
      .oNav__container--type03 .oNav__item--type02 a:before {
        background: url(/img/icn_set01.svg) no-repeat 50% -1em; }

/*  .oNav > .oNav__container--type04
----------------------------------------------------*/
.oNav__container--type04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  margin: 20px auto;
  padding-right: 10px;
  padding-left: 10px;
  border-radius: 4px; }
  .oNav__container--type04 .oNav__item {
    width: calc(100% / 3); }
    .oNav__container--type04 .oNav__item + .oNav__item {
      border-left: 1px solid #c43d5e; }
    .oNav__container--type04 .oNav__item:first-child a {
      border-radius: 5px 0 0 5px; }
    .oNav__container--type04 .oNav__item:last-child a {
      border-radius: 0 5px 5px 0; }
    .oNav__container--type04 .oNav__item--type01 a:before {
      background-position: 50% -3em; }
    .oNav__container--type04 .oNav__item--type02 a:before {
      background-position: 50% -4em; }
    .oNav__container--type04 .oNav__item--type03 a:before {
      background-position: 50% -5em; }
  .oNav__container--type04 a {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    display: block;
    position: relative;
    padding: 37px 10px 7px;
    background-color: #fff;
    line-height: 1.25;
    text-align: center;
    font-size: 12px; }
    .oNav__container--type04 a:link, .oNav__container--type04 a:visited, .oNav__container--type04 a:hover, .oNav__container--type04 a:active, .oNav__container--type04 a:focus {
      text-decoration: none; }
    .oNav__container--type04 a:link, .oNav__container--type04 a:visited, .oNav__container--type04 a:hover, .oNav__container--type04 a:active, .oNav__container--type04 a:focus {
      color: #FFF; }
    .oNav__container--type04 a:hover, .oNav__container--type04 a:focus {
      filter: alpha(opacity=70);
      opacity: 0.7; }
    .oNav__container--type04 a:before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 6px;
      left: 50%;
      width: 30px;
      height: 26px;
      background-image: url(/img/icn_set01.svg);
      background-repeat: no-repeat;
      line-height: 1;
      font-size: 26px;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }

/*  .oNav > .oNav__container--type05
----------------------------------------------------*/
.oNav__container--type05 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: calc(100% - 10px * 2);
  margin: 20px auto;
  padding: 10px;
  border-radius: 4px;
  background-color: #fff; }
  .oNav__container--type05 li {
    width: 40px;
    height: 40px; }
  .oNav__container--type05 a {
    line-height: 1;
    font-size: 40px; }

/*----------------------------------------------------
    .sNav
------------------------------------------------------*/
.sNav {
  width: 240px; }
  .sNav__head {
    padding-bottom: 10px;
    border-bottom: 2px solid #16293d;
    letter-spacing: 0.2em;
    font-weight: normal;
    font-size: 16px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d; }
  .sNav__select {
    margin-bottom: 30px;
    padding-top: 20px; }
    .sNav__select select {
      width: 100%; }
  .sNav__container--type01 {
    margin-bottom: 30px; }
    .sNav__container--type01 .sNav__item {
      padding: 5px 0;
      border-bottom: 1px solid #d4d7d8; }
      .sNav__container--type01 .sNav__item a {
        display: block;
        padding-left: 1em;
        background: url(/img/icn_arrow05.svg) no-repeat left 2px top 10px;
        background-size: 10px 8px; }
  .sNav__container--type02 {
    margin-bottom: 30px;
    padding-top: 10px; }
    .sNav__container--type02 .sNav__item {
      padding: 5px 0; }
      .sNav__container--type02 .sNav__item a {
        display: block;
        padding-left: 1em;
        text-indent: -1em; }
        .sNav__container--type02 .sNav__item a:before {
          content: "・"; }
  .sNav__container--type03 {
    margin-bottom: 30px; }
    .sNav__container--type03 .sNav__item {
      border-bottom: 1px solid #d4d7d8;
      font-size: 14px; }
      .sNav__container--type03 .sNav__item > a {
        padding: 11px 60px 11px 20px;
        line-height: 18px;
        position: relative;
        cursor: pointer; }
        .sNav__container--type03 .sNav__item > a:after {
          -webkit-transition: all .200s;
          transition: all .200s;
          position: absolute;
          top: 0;
          right: 20px;
          width: 10px;
          height: 40px;
          content: "";
          display: block;
          padding-left: 1em;
          background: url(/img/icn_arrow05.svg) no-repeat right top 17px;
          background-size: 10px 8px; }
        .sNav__container--type03 .sNav__item > a.active:after {
          -webkit-transform: rotate(90deg);
              -ms-transform: rotate(90deg);
                  transform: rotate(90deg); }
    .sNav__container--type03__sub {
      background: rgba(60, 60, 60, 0.05);
      max-height: 0;
      overflow: hidden;
      padding: 0 20px;
      -webkit-transition: all .400s;
      transition: all .400s; }
      .sNav__container--type03__sub.active {
        max-height: 100vh; }
      .sNav__container--type03__sub .sNav_subitem:nth-child(1) {
        padding-top: 10px; }
      .sNav__container--type03__sub .sNav_subitem:nth-last-child(1) {
        padding-bottom: 10px; }
      .sNav__container--type03__sub .sNav_subitem > a {
        padding: 5px 0; }
  .sNav a {
    display: block; }
    .sNav a:link, .sNav a:visited {
      text-decoration: none; }
    .sNav a:hover, .sNav a:active {
      text-decoration: underline; }

/*----------------------------------------------------
    .contents
----------------------------------------------------*/
/*----------------------------------------------------
    base64 SVG
----------------------------------------------------*/
/*----------------------------------------------------
    Page Top
----------------------------------------------------*/
.pageTop__wrap {
  padding-top: 120px; }
  .page-home .pageTop__wrap {
    padding-top: 0; }

/*  .secPageTop > #pageTop
----------------------------------------------------*/
#pageTop {
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  visibility: hidden;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 100;
  width: 66px;
  height: 66px;
  border-radius: 0;
  background: #17293D url("/img/icn_arrow06.svg") no-repeat 50% 50%;
  background-size: 20px 10px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  #pageTop.is-active {
    visibility: visible;
    opacity: 1; }
  #pageTop.is-inactive {
    visibility: hidden;
    opacity: 0; }
  #pageTop:hover {
    background-color: rgba(23, 41, 61, 0.4); }

/*====================================================

  セクションスタイル

====================================================*/
/*----------------------------------------------------
    .c-main
----------------------------------------------------*/
.c-main--type01 {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 80px 0; }

.c-main--type03 {
  width: calc(100% - 240px - 30px); }

/*----------------------------------------------------
    .c-sub
----------------------------------------------------*/
.c-sub--type01 {
  width: 240px;
  margin-top: 100px; }

/*====================================================

  見出しスタイル

====================================================*/
/*----------------------------------------------------
    .c-head--base01
----------------------------------------------------*/
.c-head--base01 {
  font-weight: normal; }

/*----------------------------------------------------
    .c-head--type01
----------------------------------------------------*/
.c-head--type01 {
  margin-bottom: 40px;
  line-height: 1.25;
  text-align: center; }
  .c-head--type01 .c-head__main {
    font-size: 38px;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: normal;
    color: #16293d; }
  .c-head--type01 .c-head__sub {
    font-size: 14px; }

/*----------------------------------------------------
    .c-head--type02
----------------------------------------------------*/
/*----------------------------------------------------
    .c-head--type03
----------------------------------------------------*/
.c-head--type03 {
  font-size: 32px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  position: relative;
  margin-bottom: 30px;
  padding: 14px 0;
  line-height: 1.25; }
  .c-head--type03:before, .c-head--type03:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 3px; }
  .c-head--type03:before {
    z-index: 2;
    width: 280px;
    background-color: #16293d; }
  .c-head--type03:after {
    width: 100%;
    background-position: 0 0;
    background-repeat: repeat; }

/*----------------------------------------------------
    .c-head--type04
----------------------------------------------------*/
.c-head--type04 {
  font-size: 16px;
  margin-bottom: 20px;
  padding: 3px 12px 3px 18px;
  border-left: 5px solid #16293d;
  line-height: 1.25;
  letter-spacing: 0.2em;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

/*----------------------------------------------------
    .c-head--type05
----------------------------------------------------*/
.c-head--type05 {
  font-size: 22px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  margin-bottom: 15px;
  padding-bottom: 8px;
  border-bottom: 1px dotted #16293d;
  line-height: 1.25; }

/*----------------------------------------------------
    .c-head--type06
----------------------------------------------------*/
.c-head--type06 {
  font-size: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 5px 0;
  border-top: 1px solid #16293d;
  border-bottom: 1px solid #16293d;
  line-height: 30px;
  font-size: 20px;
  color: #333; }

/*----------------------------------------------------
    .c-head--type07
----------------------------------------------------*/
.c-head--type07 {
  font-size: 24px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 13px;
  text-align: center;
  color: #11263b; }
  .c-head--type07:after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    width: 160px;
    height: 0;
    border-bottom: 3px double #f4ed6c;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

/*----------------------------------------------------
    .c-head--type08
----------------------------------------------------*/
.c-head--type08 {
  margin-bottom: 20px; }
  .c-head--type08 .p-coursePicText__head {
    width: 100%; }
  .c-head--type08 .p-coursePicText__headWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%; }
  .c-head--type08 .p-coursePicText__headNumber, .c-head--type08 .p-coursePicText__headText {
    display: block; }
  .c-head--type08 .p-coursePicText__headNumber {
    width: 54px;
    height: 54px; }
  .c-head--type08 .p-coursePicText__headText {
    font-size: 24px;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    width: calc(100% - 54px - 10px);
    line-height: 2.6;
    font-size: 22px;
    color: #11263b; }

/*====================================================

  テキストスタイル

====================================================*/
/*----------------------------------------------------
    .c-notes
----------------------------------------------------*/
/*  common
----------------------------------------------------*/
.c-notes--common, .c-notes--type01, .c-notes--type02, .c-notes--type03 {
  position: relative; }
  .c-notes--common span, .c-notes--type01 span, .c-notes--type02 span, .c-notes--type03 span {
    position: absolute;
    top: 0;
    left: 0; }

/*  Type01 - 03
----------------------------------------------------*/
.c-notes--type01 {
  padding-left: 1.5em; }

.c-notes--type02 {
  padding-left: 2.25em; }

.c-notes--type03 {
  padding-left: 1em; }

/*  Type04
----------------------------------------------------*/
.c-notes--type04 {
  color: #e60012; }

/*----------------------------------------------------
    .c-marker
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-marker--type01 {
  padding-right: 3px;
  padding-left: 3px;
  background-color: #be3fff;
  color: #fff; }

/*  type02
----------------------------------------------------*/
.c-marker--type02 {
  padding-right: 3px;
  padding-left: 3px;
  background-color: #d35353;
  color: #fff; }

/*----------------------------------------------------
    .c-caption
----------------------------------------------------*/
/*  Type01
----------------------------------------------------*/
.c-caption--type01 {
  display: inline-block;
  margin-top: 8px;
  line-height: 1.25;
  font-size: 14px; }

/*  Type02
----------------------------------------------------*/
.c-caption--type02 {
  display: inline-block;
  line-height: 1.25;
  font-size: 14px; }

/*----------------------------------------------------
    .c-text--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-color--type01
----------------------------------------------------*/
.c-color--red01 {
  color: #e60012 !important; }
  .c-color--red01 a {
    color: #e60012 !important; }

/*----------------------------------------------------
    .c-wrap
----------------------------------------------------*/
.c-wrap {
  padding-top: 60px;
  padding-bottom: 60px; }
  .c-wrap--type01 {
    width: 1200px;
    margin-right: auto;
    margin-left: auto; }
  .c-wrap__inner {
    width: 1200px;
    margin-right: auto;
    margin-left: auto; }

/*====================================================

  セクションスタイル

====================================================*/
/*----------------------------------------------------
    .c-section
----------------------------------------------------*/
.c-section {
  margin-top: 60px; }
  .c-section:first-child {
    margin-top: 0; }
  .c-section--type01 {
    border-bottom: 1px solid #16293d; }
    .c-section--type01:last-child {
      border-bottom: 0; }
  h1 + .c-section, h2 + .c-section, h3 + .c-section, h4 + .c-section, h5 + .c-section, h6 + .c-section {
    margin-top: 30px; }

/*====================================================

  ブロックスタイル

====================================================*/
/*----------------------------------------------------
    .c-block
----------------------------------------------------*/
.c-block--type01 {
  margin-top: 60px; }
  .c-block--type01:first-child {
    margin-top: 0; }

.c-block--type02 {
  margin-top: 30px; }
  .c-block--type02:first-child {
    margin-top: 0; }

/*====================================================

  インデックススタイル

====================================================*/
/*----------------------------------------------------
    .c-index--type01
----------------------------------------------------*/
.c-index--type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: -30px; }
  .c-index--type01:after {
    content: "";
    display: block;
    width: calc(100% / 3 - 20px); }
  .c-index--type01 .c-index__item {
    position: relative;
    width: calc(100% / 3 - 20px);
    margin-top: 30px; }
    .c-index--type01 .c-index__item:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 5px;
      background-position: 0 0;
      background-repeat: repeat-x; }
    .c-index--type01 .c-index__item a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      display: block;
      width: 100%;
      height: 100%;
      color: #fff; }
      .c-index--type01 .c-index__item a:hover, .c-index--type01 .c-index__item a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
      .c-index--type01 .c-index__item a:link, .c-index--type01 .c-index__item a:visited, .c-index--type01 .c-index__item a:hover, .c-index--type01 .c-index__item a:active, .c-index--type01 .c-index__item a:focus {
        text-decoration: none; }
    .c-index--type01 .c-index__item img {
      width: 100%; }
  .c-index--type01 .c-index__textWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    min-height: 60px;
    padding: 2px 42px 2px 10px;
    background: #c43d5e url(/img/icn_arrow07.svg) no-repeat right 8px center;
    background-color: #c43d5e; }
  .c-index--type01 .c-index__text {
    display: block; }

/*----------------------------------------------------
    .c-index--type02
----------------------------------------------------*/
/*====================================================

  ページャースタイル

====================================================*/
/*----------------------------------------------------
    .c-pager
----------------------------------------------------*/
.c-pager__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: 60px; }

.c-pager__item {
  margin-right: 5px;
  margin-bottom: 10px;
  margin-left: 5px; }
  .c-pager__item + .c-pager__item {
    margin-top: 0 !important; }
  .c-pager__item:before {
    display: none !important; }
  .c-pager__item a, .c-pager__item span {
    display: block;
    padding: 8px 10px;
    border: 1px solid #11263b;
    background-color: #11263b;
    line-height: 1;
    font-size: 16px;
    color: #FFF; }
  .c-pager__item a {
    -webkit-transition: background-color 0.2s linear, color 0.2s linear;
    transition: background-color 0.2s linear, color 0.2s linear; }
    .c-pager__item a:link, .c-pager__item a:visited, .c-pager__item a:hover, .c-pager__item a:active, .c-pager__item a:focus {
      text-decoration: none; }
    .c-pager__item a:hover, .c-pager__item a:focus {
      background-color: #FFF;
      color: #11263b; }
  .c-pager__item span.is-disable {
    border-color: #999;
    background-color: #999; }
  .c-pager__item.is-current span {
    background-color: #FFF;
    color: #11263b; }

.c-pager__abbr span {
  border-color: transparent;
  background-color: transparent;
  color: #11263b; }

/*  .c-pager--type01
----------------------------------------------------*/
/*====================================================

  カラム(列)スタイル

====================================================*/
/*----------------------------------------------------
    .c-columns
----------------------------------------------------*/
.c-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .c-columns .c-col__item--center {
    -ms-flex-item-align: center;
        align-self: center; }

/*----------------------------------------------------
    .c-columns.c-col1
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-col1--type01 {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto; }
  .c-col1--type01 img {
    width: 100%;
    height: auto;
    -ms-flex-negative: 0;
        flex-shrink: 0; }

/*  type02
----------------------------------------------------*/
.c-col1--type02 {
  width: 50%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto; }
  .c-col1--type02 img {
    width: 100%;
    height: auto;
    -ms-flex-negative: 0;
        flex-shrink: 0; }

/*----------------------------------------------------
    .c-columns.c-col2
----------------------------------------------------*/
/*  common01
----------------------------------------------------*/
.c-col2--common01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .c-col2--common01 .c-columns__item a {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear; }
    .c-col2--common01 .c-columns__item a:hover, .c-col2--common01 .c-columns__item a:focus {
      filter: alpha(opacity=70);
      opacity: 0.7; }

/*  type01
----------------------------------------------------*/
.c-col2--type01 {
  margin-top: -40px; }
  .c-col2--type01 .c-columns__item {
    width: calc(100% / 2 - 20px);
    margin-top: 40px; }

/*  type02
----------------------------------------------------*/
.c-col2--type02 {
  margin-top: -30px; }
  .c-col2--type02 .c-columns__item {
    width: calc(100% / 2 - 15px);
    margin-top: 30px; }

/*  news01
----------------------------------------------------*/
.c-col2--news01 .c-columns__main {
  width: calc(100% - 240px - 60px); }

.c-col2--news01 .c-columns__sub {
  width: 240px; }

/*----------------------------------------------------
    .c-columns.c-col3
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-col3--type01 {
  margin-top: -30px; }
  .c-col3--type01:after {
    content: "";
    display: block;
    width: calc(100% / 3 - 20px); }
  .c-col3--type01 .c-columns__item {
    width: calc(100% / 3 - 20px);
    margin-top: 30px; }

/*  type02
----------------------------------------------------*/
.c-col3--type02 {
  margin-top: -30px; }
  .c-col3--type02:after {
    content: "";
    display: block;
    width: calc(100% / 3 - 20px); }
  .c-col3--type02 .c-columns__item {
    width: calc(100% / 3 - 20px);
    margin-top: 30px; }

/*----------------------------------------------------
    .c-columns.c-col4
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-col4--type01 {
  margin-top: -20px; }
  .c-col4--type01:before, .c-col4--type01:after {
    content: "";
    display: block;
    width: calc(100% / 4 - 15px); }
  .c-col4--type01:before {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .c-col4--type01 .c-columns__item {
    width: calc(100% / 4 - 15px);
    margin-top: 20px; }
  .c-col4--type01 .c-columns__text {
    margin-top: 5px;
    text-align: center; }
  .c-col4--type01 .c-picture--zoom {
    text-align: center;
    color: #333; }
    .c-col4--type01 .c-picture--zoom:link, .c-col4--type01 .c-picture--zoom:visited, .c-col4--type01 .c-picture--zoom:hover, .c-col4--type01 .c-picture--zoom:active, .c-col4--type01 .c-picture--zoom:focus {
      text-decoration: none; }

/*  type02
----------------------------------------------------*/
.c-col4--type02 {
  margin-top: -60px; }
  .c-col4--type02:before, .c-col4--type02:after {
    content: "";
    display: block;
    width: 210px; }
  .c-col4--type02:before {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .c-col4--type02 .c-columns__item {
    width: 210px;
    margin-top: 60px; }
    .c-col4--type02 .c-columns__item:nth-child(-n+2) {
      margin-top: 0; }

/*====================================================

  カラム(列)スタイル

====================================================*/
/*----------------------------------------------------
    .c-banner
----------------------------------------------------*/
.c-banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .c-banner .c-col__item--center {
    -ms-flex-item-align: center;
        align-self: center; }

/*----------------------------------------------------
    .c-banner--type01
----------------------------------------------------*/
.c-banner--type01 {
  margin-bottom: 120px; }
  .c-banner--type01 .c-banner__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .c-banner--type01 .c-banner__item {
    width: 50%; }
    .c-banner--type01 .c-banner__item a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
      .c-banner--type01 .c-banner__item a:hover, .c-banner--type01 .c-banner__item a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }

/*----------------------------------------------------
    .c-banner--type02
----------------------------------------------------*/
.c-banner--type02 {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .c-banner--type02 .c-banner__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-top: -30px; }
  .c-banner--type02 .c-banner__item {
    width: calc(100% / 3 - (30px * (3 - 1) / 3));
    margin-top: 30px;
    margin-left: 30px; }
    .c-banner--type02 .c-banner__item:nth-child(3n+1) {
      margin-left: 0; }
    .c-banner--type02 .c-banner__item a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
      .c-banner--type02 .c-banner__item a:hover, .c-banner--type02 .c-banner__item a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }

/*====================================================

  ボタンスタイル

====================================================*/
/*----------------------------------------------------
    .c-button
----------------------------------------------------*/
.c-button--type01 {
  display: block;
  width: 200px;
  height: 40px;
  border: 1px solid #c4c4c4;
  background: url(/img/icn_next03.svg) no-repeat right 10px top 15px;
  background-size: 22px 5px;
  line-height: 40px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type01:link, .c-button--type01:visited, .c-button--type01:hover, .c-button--type01:active, .c-button--type01:focus {
    text-decoration: none; }
  .c-button--type01:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }

.c-button--type02 {
  display: block;
  width: 180px;
  height: 40px;
  border: 1px solid #c4c4c4;
  background: url(/img/icn_next03.svg) no-repeat right 10px top 15px;
  background-size: 22px 5px;
  line-height: 40px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type02:link, .c-button--type02:visited, .c-button--type02:hover, .c-button--type02:active, .c-button--type02:focus {
    text-decoration: none; }
  .c-button--type02:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }

.c-button--type03 {
  display: block;
  width: 350px;
  border: 1px solid #c4c4c4;
  background: url(/img/icn_next03.svg) no-repeat right 13px center;
  background-size: 22px 5px;
  text-align: center;
  font-size: 14px;
  line-height: 18px;
  padding: 13px 40px 13px 20px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type03:link, .c-button--type03:visited, .c-button--type03:hover, .c-button--type03:active, .c-button--type03:focus {
    text-decoration: none; }
  .c-button--type03:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }

.c-button--type04 {
  display: block;
  width: 300px;
  height: 40px;
  border: 1px solid #c4c4c4;
  background: url(/img/icn_next03.svg) no-repeat right 10px top 15px;
  background-size: 22px 5px;
  line-height: 40px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type04:link, .c-button--type04:visited, .c-button--type04:hover, .c-button--type04:active, .c-button--type04:focus {
    text-decoration: none; }
  .c-button--type04.white {
    background-color: #FFF; }
  .c-button--type04.disabled {
    opacity: 0.5; }
  .c-button--type04.prev {
    background-image: url(/img/icn_prev03.svg);
    background-position: left 10px top 15px; }
  .c-button--type04:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }
    .c-button--type04:hover.disabled {
      background-color: inherit;
      background-image: url(/img/icn_next03.svg);
      color: inherit; }
    .c-button--type04:hover.prev {
      background-image: url(/img/icn_prev04.svg); }

.c-button--type05 {
  display: block;
  width: 300px;
  height: 40px;
  border: 1px solid #c4c4c4;
  background: rgba(255, 255, 255, 0.8) url(/img/icn_next03.svg) no-repeat right 10px top 15px;
  background-size: 22px 5px;
  line-height: 40px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type05:link, .c-button--type05:visited, .c-button--type05:hover, .c-button--type05:active, .c-button--type05:focus {
    text-decoration: none; }
  .c-button--type05:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }

.c-button--type06 {
  display: block;
  width: 280px;
  height: 60px;
  border: 1px solid #c4c4c4;
  background: #FFF url(/img/icn_next03.svg) no-repeat right 10px top 25px;
  background-size: 22px 5px;
  line-height: 58px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type06:link, .c-button--type06:visited, .c-button--type06:hover, .c-button--type06:active, .c-button--type06:focus {
    text-decoration: none; }
  .c-button--type06:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg);
    color: #FFF; }

.c-button--type07 {
  display: block;
  width: 160px;
  height: 34px;
  border: 1px solid #c4c4c4;
  line-height: 32px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type07:link, .c-button--type07:visited, .c-button--type07:hover, .c-button--type07:active, .c-button--type07:focus {
    text-decoration: none; }
  .c-button--type07:hover {
    background-color: #14283C;
    color: #FFF; }

.c-button--type08 {
  display: block;
  width: 400px;
  height: 52px;
  border: 1px solid #c4c4c4;
  background: #1f1a1a url(/img/icn_next04.svg) no-repeat right 10px top 20px;
  background-size: 22px 5px;
  color: #FFF;
  line-height: 52px;
  text-align: center;
  font-size: 14px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }
  .c-button--type08:link, .c-button--type08:visited, .c-button--type08:hover, .c-button--type08:active, .c-button--type08:focus {
    text-decoration: none; }
  .c-button--type08:nth-child(2) {
    margin-left: 40px; }
  .c-button--type08:hover {
    background-color: #14283C;
    background-image: url(/img/icn_next04.svg); }

/*====================================================

  画像とテキストのカラム(列)スタイル

====================================================*/
/*----------------------------------------------------
    .c-pic-text
----------------------------------------------------*/
.c-pic-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  clear: both; }
  .c-pic-text .c-col__item--center {
    -ms-flex-item-align: center;
        align-self: center; }
  .c-pic-text__picture {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: center; }
    .c-pic-text__picture--type01 {
      width: 420px;
      margin-bottom: 60px; }
    .c-pic-text__picture--type02 {
      width: 200px; }
    .c-pic-text__picture--type03 {
      width: 500px; }
  .c-pic-text__text {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
    .c-pic-text__text--type01 {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .c-pic-text__text--type02 {
      width: calc(100% - 200px - 30px); }
    .c-pic-text__text--type03 {
      width: calc(100% - 500px - 30px); }

/*----------------------------------------------------
    .c-pic-text--picLeft01
----------------------------------------------------*/
.c-pic-text--picLeft01 .c-pic-text__picture {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  margin-right: 30px; }

.c-pic-text--picLeft01 .c-pic-text__text {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

/*----------------------------------------------------
    .c-pic-text--picRight01
----------------------------------------------------*/
.c-pic-text--picRight01 .c-pic-text__picture {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-left: 60px; }

.c-pic-text--picRight01 .c-pic-text__text {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

/*====================================================

  リストスタイル

====================================================*/
/*----------------------------------------------------
    Default ul, ol
----------------------------------------------------*/
ul:not([class]) {
  margin-bottom: 20px;
  padding-left: 14px; }
  ul:not([class]) li {
    list-style-type: none;
    position: relative;
    padding-left: 1em; }
    ul:not([class]) li:before {
      content: "";
      position: absolute;
      top: 0.5em;
      left: 0;
      width: 8px;
      height: 8px;
      border: 1px solid #c43d5e;
      border-radius: 50%; }
    ul:not([class]) li + li {
      margin-top: 10px; }

ol:not([class]) {
  margin-bottom: 20px;
  padding-left: 20px; }
  ol:not([class]) li {
    list-style-type: decimal; }
    ol:not([class]) li + li {
      margin-top: 6px; }

table ul:not([class]), table ul.c-ul--col2, table ol:not([class]) {
  margin-bottom: 0;
  margin-left: 0; }

/*----------------------------------------------------
    .c-ul--type01
----------------------------------------------------*/
.c-ul--type01 li {
  list-style-type: none;
  position: relative;
  padding-left: 1em; }
  .c-ul--type01 li:before {
    content: "";
    position: absolute;
    top: 0.5em;
    left: 0;
    width: 6px;
    height: 9px;
    background: url(/img/icn_arrow05.svg) no-repeat 0 0; }
  .c-ul--type01 li + li {
    margin-top: 12px; }

/*----------------------------------------------------
    .c-ul--type02
----------------------------------------------------*/
.c-ul--type02 li {
  display: inline-block;
  list-style-type: none;
  position: relative;
  margin-top: 5px;
  margin-right: 30px;
  margin-bottom: 5px;
  padding-left: 1em; }
  .c-ul--type02 li:before {
    content: "";
    position: absolute;
    top: 0.5em;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-position: 0 0;
    background-repeat: repeat; }
  .c-ul--type02 li:last-child {
    margin-right: 0; }

.c-ul--type02.c-listmark--cat01 li:before {
  background-image: url(/img/bg_pattern_cat01-03.svg); }

.c-ul--type02.c-listmark--cat02 li:before {
  background-image: url(/img/bg_pattern_cat02-03.svg); }

.c-ul--type02.c-listmark--cat03 li:before {
  background-image: url(/img/bg_pattern_cat03-03.svg); }

.c-ul--type02.c-listmark--cat04 li:before {
  background-image: url(/img/bg_pattern_cat04-03.svg); }

.c-ul--type02.c-listmark--cat05 li:before {
  background-image: url(/img/bg_pattern_cat05-03.svg); }

.c-ul--type02.c-listmark--cat06 li:before {
  background-image: url(/img/bg_pattern_cat06-03.svg); }

.c-ul--type02.c-listmark--cat07 li:before {
  background-image: url(/img/bg_pattern_cat07-03.svg); }

.c-ul--type02.c-listmark--cat08 li:before {
  background-image: url(/img/bg_pattern_cat08-03.svg); }

/*----------------------------------------------------
    .c-dl--type01
----------------------------------------------------*/
.c-dl--type01 dd + dt {
  margin-top: 1em; }

/*====================================================

  リンクスタイル

====================================================*/
/*----------------------------------------------------
    .c-link--type01
----------------------------------------------------*/
.c-link--type01 a {
  display: block;
  width: 300px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  border: 1px solid #c43d5e;
  background-color: #fff;
  text-align: center;
  line-height: 1.25;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  color: #c43d5e;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear; }
  .c-link--type01 a:link, .c-link--type01 a:visited, .c-link--type01 a:hover, .c-link--type01 a:active, .c-link--type01 a:focus {
    text-decoration: none; }
  .c-link--type01 a:hover {
    background-color: #faedf0; }
  .c-link--type01 a:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 9px;
    background: url(/img/icn_square01.png) no-repeat 0 0;
    background-size: 100% auto;
    vertical-align: middle; }

/*----------------------------------------------------
    .c-link--type02
----------------------------------------------------*/
.c-link--type02 {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  font-size: 18px;
  display: block;
  width: 100%;
  padding: 20px 52px 20px 20px;
  border: 1px solid #c43d5e;
  background: #243d5a url(/img/icn_arrow06.svg) no-repeat right 20px center;
  line-height: 1.25;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  color: #c43d5e; }
  .c-link--type02:link, .c-link--type02:visited, .c-link--type02:hover, .c-link--type02:active, .c-link--type02:focus {
    text-decoration: none; }
  .c-link--type02:hover, .c-link--type02:focus {
    filter: alpha(opacity=70);
    opacity: 0.7; }

/*----------------------------------------------------
    .c-link--type03
----------------------------------------------------*/
.c-link--type03 {
  display: block;
  padding-top: 11px;
  padding-bottom: 11px;
  border-bottom: 2px solid #379a8b;
  background-color: #4fc1ab;
  line-height: 1.25;
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  color: #fff;
  -webkit-transition: background-color 0.2s linear, border-color 0.2s linear;
  transition: background-color 0.2s linear, border-color 0.2s linear; }
  .c-link--type03:link, .c-link--type03:visited, .c-link--type03:hover, .c-link--type03:active, .c-link--type03:focus {
    text-decoration: none; }
  .c-link--type03:hover {
    background-color: #92d8cd;
    border-color: #75cebd; }
  .c-link--type03:after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    background: url(/img/icn_arrow08.svg) no-repeat 0 0;
    background-size: 100% auto;
    vertical-align: middle; }
  .p-courseTheme--cat01 .c-link--type03 {
    border-bottom: 2px solid #379a8b;
    background-color: #4fc1ab; }
    .p-courseTheme--cat01 .c-link--type03:hover {
      background-color: #92d8cd;
      border-color: #88d5c6; }
  .p-courseTheme--cat02 .c-link--type03 {
    border-bottom: 2px solid #cb5e3b;
    background-color: #ef7154; }
    .p-courseTheme--cat02 .c-link--type03:hover {
      background-color: #ebc1b4;
      border-color: #f6ab9a; }
  .p-courseTheme--cat03 .c-link--type03 {
    border-bottom: 2px solid #cba917;
    background-color: #eac93d; }
    .p-courseTheme--cat03 .c-link--type03:hover {
      background-color: #f2de89;
      border-color: #f1dc82; }
  .p-courseTheme--cat04 .c-link--type03 {
    border-bottom: 2px solid #3886c0;
    background-color: #50a3d6; }
    .p-courseTheme--cat04 .c-link--type03:hover {
      background-color: #abcde6;
      border-color: #8ec4e5; }
  .p-courseTheme--cat05 .c-link--type03 {
    border-bottom: 2px solid #bb2e2e;
    background-color: #ce4545; }
    .p-courseTheme--cat05 .c-link--type03:hover {
      background-color: #e79b9b;
      border-color: #de8282; }
  .p-courseTheme--cat06 .c-link--type03 {
    border-bottom: 2px solid #847842;
    background-color: #9e915c; }
    .p-courseTheme--cat06 .c-link--type03:hover {
      background-color: #cac095;
      border-color: #bbb28b; }
  .p-courseTheme--cat07 .c-link--type03 {
    border-bottom: 2px solid #63ba75;
    background-color: #82ce8b; }
    .p-courseTheme--cat07 .c-link--type03:hover {
      background-color: #cde9d3;
      border-color: #b9e4be; }
  .p-courseTheme--cat08 .c-link--type03 {
    border-bottom: 2px solid #9c67c1;
    background-color: #b98add; }
    .p-courseTheme--cat08 .c-link--type03:hover {
      background-color: #e3d4ed;
      border-color: #dcc5ee; }
  .c-link--type03.c-link--pdf:after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    background: url(/img/icn_pdf01.svg) no-repeat 0 0;
    background-size: auto 100%;
    vertical-align: middle; }

/*----------------------------------------------------
    .c-link--type04
----------------------------------------------------*/
.c-link--type04 {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
  width: 100%;
  padding: 20px;
  background: #c43d5e url(/img/icn_arrow09.svg) no-repeat right 20px center;
  line-height: 1.25;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  font-size: 18px;
  color: #fff; }
  .c-link--type04:link, .c-link--type04:visited, .c-link--type04:hover, .c-link--type04:active, .c-link--type04:focus {
    text-decoration: none; }
  .c-link--type04:hover, .c-link--type04:focus {
    filter: alpha(opacity=70);
    opacity: 0.7; }
  .c-link--type04.c-link--cat01 {
    background-color: #379a8b; }
  .c-link--type04.c-link--cat02 {
    background-color: #cb5e3b; }
  .c-link--type04.c-link--cat03 {
    background-color: #cba917; }
  .c-link--type04.c-link--cat04 {
    background-color: #3886c0; }
  .c-link--type04.c-link--cat05 {
    background-color: #bb2e2e; }
  .c-link--type04.c-link--cat06 {
    background-color: #847842; }
  .c-link--type04.c-link--cat07 {
    background-color: #63ba75; }
  .c-link--type04.c-link--cat08 {
    background-color: #9c67c1; }

/*----------------------------------------------------
    .c-link--type05
----------------------------------------------------*/
.c-link--type05 {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  font-size: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  position: relative;
  display: block;
  padding: 36px 34px 36px 59px;
  background: #6cd3a5 url(/img/icn_arrow07.svg) no-repeat right 10px center;
  line-height: 1.4;
  color: #fff; }
  .c-link--type05:link, .c-link--type05:visited, .c-link--type05:hover, .c-link--type05:active, .c-link--type05:focus {
    text-decoration: none; }
  .c-link--type05:hover, .c-link--type05:focus {
    filter: alpha(opacity=70);
    opacity: 0.7; }
  .c-link--type05:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 20px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

/*----------------------------------------------------
    .c-linkWrap
----------------------------------------------------*/
/*  typeXX
----------------------------------------------------*/
.c-linkWrap--type01 {
  width: 320px; }

.c-linkWrap--type02 {
  width: 300px;
  margin-right: auto;
  margin-left: auto; }

.c-linkWrap--type03 {
  width: 300px; }

.c-linkWrap--type04 {
  padding: 50px; }

.c-linkWrap--type05 {
  width: 490px; }

/*----------------------------------------------------
    .c-link--sns01
----------------------------------------------------*/
.c-link--sns01 {
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  display: block;
  position: relative;
  width: 100%;
  height: 100%; }
  .c-link--sns01:before, .c-link--sns01:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 100%;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url(/img/btn_sns01.svg);
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear; }
  .c-link--sns01:before {
    z-index: 2; }
  .c-link--sns01:after {
    opacity: 0;
    z-index: 1; }
  .c-link--sns01:hover:before {
    opacity: 0; }
  .c-link--sns01:hover:after {
    opacity: 1; }

.c-link--line:before {
  background-position: 0 -4em; }

.c-link--line:after {
  background-position: 0 -5em; }

.c-link--fb:before {
  background-position: 0 0; }

.c-link--fb:after {
  background-position: 0 -1em; }

.c-link--tw:before {
  background-position: 0 -8em; }

.c-link--tw:after {
  background-position: 0 -9em; }

.c-link--ig:before {
  background-position: 0 -2em; }

.c-link--ig:after {
  background-position: 0 -3em; }

.c-link--rss:before {
  background-position: 0 -6em; }

.c-link--rss:after {
  background-position: 0 -7em; }

/*====================================================

  テーブルスタイル

====================================================*/
/*----------------------------------------------------
    Default Table
----------------------------------------------------*/
table:not([class]) {
  width: 100%; }
  table:not([class]) th, table:not([class]) td {
    padding: 5px 8px; }
  table:not([class]) th {
    font-weight: bold; }

/*----------------------------------------------------
    .c-table--base (for @extend)
----------------------------------------------------*/
.c-table--base, .c-table--type01 {
  width: 100%; }
  .c-table--base tr th, .c-table--base tr td, .c-table--type01 tr th, .c-table--type01 tr td {
    padding: 14px 20px;
    border-bottom: 1px solid #d4d4d4;
    vertical-align: middle;
    font-size: 14px; }
  .c-table--base tr th, .c-table--type01 tr th {
    font-weight: normal; }
  .c-table--base tr:nth-last-child(1) th, .c-table--base tr:nth-last-child(1) td, .c-table--type01 tr:nth-last-child(1) th, .c-table--type01 tr:nth-last-child(1) td {
    border-bottom: none; }
  .c-table--base ul, .c-table--type01 ul {
    margin-left: 0;
    padding-left: 0; }

/*----------------------------------------------------
    .c-table--type01
----------------------------------------------------*/
.c-table--type01 {
  width: 100%; }
  .c-table--type01 tr th, .c-table--type01 tr td {
    padding-right: 0;
    padding-left: 0;
    font-weight: normal;
    color: #243d5a; }
  .c-table--type01 tr th {
    width: 90px;
    white-space: nowrap; }
  .c-table--type01 .c-cell--category {
    width: 120px;
    font-size: 12px; }
    .c-table--type01 .c-cell--category .c-cell__label {
      display: inline-block;
      width: 120px;
      text-align: center;
      color: #FFF; }
  .c-table--type01 .c-cell--title {
    padding-left: 18px; }
    .c-table--type01 .c-cell--title a:link, .c-table--type01 .c-cell--title a:visited, .c-table--type01 .c-cell--title a:hover, .c-table--type01 .c-cell--title a:active, .c-table--type01 .c-cell--title a:focus {
      color: #243d5a; }
    .c-table--type01 .c-cell--title a:link, .c-table--type01 .c-cell--title a:visited {
      text-decoration: none; }
    .c-table--type01 .c-cell--title a:hover, .c-table--type01 .c-cell--title a:active {
      text-decoration: underline; }

/*----------------------------------------------------
    .c-tableWrap
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/

/*  type01
----------------------------------------------------*/

/*----------------------------------------------------
    .c-th
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-th--type01 th {
  width: 160px; }

/*----------------------------------------------------
    .c-cell
----------------------------------------------------*/
/*  fixed
----------------------------------------------------*/
.c-cell--fixed {
  table-layout: fixed; }

/*====================================================

  フォームスタイル

====================================================*/
/*----------------------------------------------------
    .c-form
----------------------------------------------------*/
.c-form input[type=text], .c-form textarea {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 5px;
  border: 1px solid #939393;
  border-radius: 0;
  -webkit-appearance: none; }

/*  .c-form--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-form__wrap--type01
----------------------------------------------------*/
.c-form__table {
  width: 100%; }
  .c-form__table th {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: normal; }

/*----------------------------------------------------
    .c-form__wrap
----------------------------------------------------*/
/*  .c-input__wrap--type01
----------------------------------------------------*/
.c-input__wrap--type01 .c-input--type01 {
  margin-left: 20px; }

.c-input__wrap--type01 .c-input--type02 {
  width: 6em;
  margin-bottom: 10px; }

.c-input__wrap--type01 .c-input--type03 {
  margin-left: 20px; }

.c-input__wrap--type01 .c-input--type04 {
  width: 4em;
  margin-right: 10px;
  margin-left: 10px;
  background-color: #fff; }

.c-input__wrap--type01 .c-input--type06 {
  width: 5em;
  margin-bottom: 20px;
  margin-left: 20px;
  background-color: #fff; }
  .c-input__wrap--type01 .c-input--type06:last-child {
    margin-left: 10px; }

/*  .c-input__wrap--type02
----------------------------------------------------*/
.c-input__wrap--type02 {
  display: inline-block;
  width: 350px; }

/*----------------------------------------------------
    .c-input
----------------------------------------------------*/
/*  .c-input--type01
----------------------------------------------------*/
.c-input--type01 {
  width: 320px;
  margin-right: 10px;
  margin-bottom: 10px;
  background-color: #fff; }
  .c-input--type01:focus {
    outline: 2px #c43d5e solid; }

/*  .c-input--type02:例無し
----------------------------------------------------*/
.c-input--type02 {
  width: 320px;
  margin-right: 10px;
  background-color: #fff; }
  .c-input--type02:focus {
    outline: 2px #c43d5e solid; }

/*  .c-input--type03:郵便番号など
----------------------------------------------------*/
.c-input--type03 {
  width: 10em;
  margin-right: 10px;
  margin-bottom: 10px;
  background-color: #fff; }
  .c-input--type03:focus {
    outline: 2px #c43d5e solid; }

/*  .c-input--type04:西暦など
----------------------------------------------------*/
.c-input--type04 {
  width: 4em;
  margin-right: 10px;
  background-color: #fff; }
  .c-input--type04:focus {
    outline: 2px #c43d5e solid; }

/*  .c-input--type05:年齢、月日など
----------------------------------------------------*/
.c-input--type05 {
  width: 2em;
  background-color: #fff; }
  .c-input--type05:focus {
    outline: 2px #c43d5e solid; }

/*  .c-input--type06:郵便番号2分割
----------------------------------------------------*/
.c-input--type06 {
  width: 5em;
  margin-right: 10px;
  margin-bottom: 10px;
  background-color: #fff; }
  .c-input--type06:focus {
    outline: 2px #c43d5e solid; }

/*----------------------------------------------------
    .c-fromLabel
----------------------------------------------------*/
/*  .c-fromLabel--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-textarea
----------------------------------------------------*/
/*  .c-textarea--type01
----------------------------------------------------*/
.c-textarea--type01 {
  width: 100%;
  background-color: #fff; }
  .c-textarea--type01:focus {
    outline: 2px #c43d5e solid; }

/*----------------------------------------------------
    .c-select
----------------------------------------------------*/
/*  .c-select--type01
----------------------------------------------------*/
.c-select--type01 {
  width: 320px;
  margin-right: 10px;
  padding: 8px;
  padding-top: 5px;
  background-color: #fff; }
  .c-select--type01 option {
    background-color: #fff; }
  .c-select--type01:focus {
    outline: 2px #c43d5e solid; }

.c-select--type02 {
  width: auto;
  background-color: #fff; }
  .c-select--type02:focus {
    outline: 2px #c43d5e solid; }

.c-select--type03 {
  width: 180px;
  margin-right: 10px;
  padding: 6.5px;
  background-color: #fff;
  vertical-align: middle; }
  .c-select--type03 option {
    background-color: #fff; }
  .c-select--type03:focus {
    outline: 2px #c43d5e solid; }

.c-select--type04 {
  width: 180px;
  margin-right: 10px;
  padding: 6.5px;
  background-color: #fff;
  vertical-align: top; }
  .c-select--type04 option {
    background-color: #fff; }
  .c-select--type04:focus {
    outline: 2px #c43d5e solid; }

/*----------------------------------------------------
    .c-radio
----------------------------------------------------*/
/*  .c-radio--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-tmp
----------------------------------------------------*/
/*  .c-tmp--type01
----------------------------------------------------*/

/*----------------------------------------------------
    .c-form__agree
----------------------------------------------------*/
.c-form__agree {
  padding: 30px;
  background-color: #f9f9f9;
  text-align: center; }

/*----------------------------------------------------
    .c-form__consent
----------------------------------------------------*/
.c-form__consentCheck {
  margin-bottom: 20px; }
  .c-form__consentCheck input {
    margin-right: 10px; }

.c-form__consentText {
  margin-top: 5px;
  margin-bottom: 20px;
  font-size: 14px; }

/*----------------------------------------------------
    .c-form__submit
----------------------------------------------------*/
.c-form__submit {
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  border: 0; }
  .c-form__submit:disabled {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    background-color: #ccc;
    font-weight: bold;
    font-size: 18px;
    color: #727272; }
  .c-form__submit--type01 {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: bold;
    width: 320px;
    padding: 16px;
    background-color: #243d5a;
    font-size: 18px;
    color: #fff; }
  .c-form__submit--type02 {
    width: 320px;
    padding: 16px;
    background-color: #939393;
    color: #fff; }

/*----------------------------------------------------
    .c-form__submitSelect
----------------------------------------------------*/
/*----------------------------------------------------
    .c-form__text--error
----------------------------------------------------*/
.c-form__error--type01 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  color: #c43d5e; }

/*----------------------------------------------------
    .c-form__message
----------------------------------------------------*/
.c-form__message {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  color: #c43d5e; }

/*----------------------------------------------------
    .c-inputText
----------------------------------------------------*/
/*  .c-inputText--type01
----------------------------------------------------*/
.c-inputText--type01 {
  font-size: 22px; }
  .c-inputText--type01:focus {
    outline: 2px #c43d5e solid; }

/*----------------------------------------------------
    .c-form__link
----------------------------------------------------*/
.c-form__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .c-form__link--type01, .c-form__link--type02 {
    margin: 30px 30px 0 30px; }
    .c-form__link--type01 input, .c-form__link--type02 input {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
      font-weight: bold;
      display: block;
      width: 400px;
      height: 60px;
      padding-top: 16px;
      padding-bottom: 21px;
      font-size: 18px; }
      .c-form__link--type01 input:link, .c-form__link--type01 input:visited, .c-form__link--type01 input:hover, .c-form__link--type01 input:active, .c-form__link--type01 input:focus, .c-form__link--type02 input:link, .c-form__link--type02 input:visited, .c-form__link--type02 input:hover, .c-form__link--type02 input:active, .c-form__link--type02 input:focus {
        text-decoration: none; }
      .c-form__link--type01 input:hover, .c-form__link--type01 input:focus, .c-form__link--type02 input:hover, .c-form__link--type02 input:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
  .c-form__link--type01 input {
    border: 1px solid #243d5a;
    background-color: #fff;
    color: #243d5a; }
  .c-form__link--type02 input {
    border: none;
    background-color: #243d5a;
    color: #fff; }

/*====================================================

  背景スタイル

====================================================*/
/*----------------------------------------------------
    .c-bg
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-bg--type01 {
  background-color: #f4f4f4; }

/*----------------------------------------------------
    .c-pattern
----------------------------------------------------*/
/*====================================================

  カルーセルスタイル

====================================================*/
/*----------------------------------------------------
    .c-carousel
----------------------------------------------------*/
.c-carousel {
  position: relative;
  width: 100%;
  margin-right: auto;
  margin-left: auto; }
  .c-carousel a {
    display: block; }
    .c-carousel a:link, .c-carousel a:visited {
      text-decoration: none; }
    .c-carousel a:hover, .c-carousel a:active {
      text-decoration: underline; }
  .c-carousel .c-carousel__wrap {
    overflow: hidden;
    position: relative;
    width: calc(100% - 30px * 2);
    margin-right: auto;
    margin-left: auto; }
  .c-carousel .c-carousel__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    position: relative;
    width: 100%; }
  .c-carousel .c-carousel__item a {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    display: block;
    position: relative;
    margin-right: auto;
    margin-left: auto;
    color: #333; }
    .c-carousel .c-carousel__item a:hover, .c-carousel .c-carousel__item a:focus {
      filter: alpha(opacity=70);
      opacity: 0.7; }
    .c-carousel .c-carousel__item a:link, .c-carousel .c-carousel__item a:visited, .c-carousel .c-carousel__item a:hover, .c-carousel .c-carousel__item a:active, .c-carousel .c-carousel__item a:focus {
      text-decoration: none; }
    .c-carousel .c-carousel__item a img {
      width: 100%;
      height: auto; }
  .c-carousel .c-carousel__controls {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
    .c-carousel .c-carousel__controls button {
      overflow: hidden;
      position: absolute;
      top: 67px;
      width: 13px;
      height: 26px;
      padding: 0;
      border: 0;
      background-color: transparent;
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: 100% auto;
      text-indent: 100%;
      white-space: nowrap; }
    .c-carousel .c-carousel__controls .c-carousel__controls--prev {
      left: 0;
      background-image: url(/img/icn_arrow04.svg); }
    .c-carousel .c-carousel__controls .c-carousel__controls--next {
      right: 0;
      background-image: url(/img/icn_arrow05.svg); }
  .c-carousel .c-carousel__item {
    width: 260px;
    margin-right: 30px;
    margin-left: 30px; }
  .c-carousel .c-carousel__picture {
    margin-bottom: 10px; }
  .c-carousel--type01 .c-carousel__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
    .c-carousel--type01 .c-carousel__text .c-carousel__date {
      line-height: 1.25;
      font-size: 13px; }
    .c-carousel--type01 .c-carousel__text .c-carousel__category {
      line-height: 1.25;
      text-align: right;
      font-size: 13px; }
    .c-carousel--type01 .c-carousel__text .c-carousel__title {
      width: 100%;
      padding-top: 15px; }
  .c-carousel--type02 .c-carousel__controls button {
    top: calc(130px - 26px / 2); }
  .c-carousel--type02 .c-carousel__picture {
    margin-bottom: 10px; }
  .c-carousel--type02 .c-carousel__text {
    text-align: center; }
    .c-carousel--type02 .c-carousel__text .c-carousel__date {
      line-height: 1.25;
      font-size: 12px; }
    .c-carousel--type02 .c-carousel__text .c-carousel__title {
      width: 100%;
      padding-top: 15px; }

/*----------------------------------------------------
    .p-mv
----------------------------------------------------*/
.p-mv {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100vh; }
  .p-mv__container {
    position: relative;
    z-index: 10;
    height: 100%; }
  .p-mv__item {
    position: absolute;
    top: 0;
    width: 50%;
    height: 100%; }
    .p-mv__item--type01 {
      left: 0;
      background-color: #11263b; }
    .p-mv__item--type02 {
      right: 0; }
  .p-mv__wrap {
    position: absolute;
    top: 50%; }
    .p-mv__wrap--type01 {
      left: 50%;
      width: 410px;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .p-mv__wrap--type02 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      top: auto;
      z-index: 3;
      width: 100%;
      height: 100%;
      background: url(/img/bg_home01.svg) no-repeat top 50px right 50px;
      background-size: 496px 575px; }

/*----------------------------------------------------
    .js-element: Loading Effect Elements
----------------------------------------------------*/
/*  .js-mvElement__box
----------------------------------------------------*/
.js-mvElement__box {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 100vh;
  background-color: #000;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: all 1s cubic-bezier(0.63, 0, 0, 1);
  transition: all 1s cubic-bezier(0.63, 0, 0, 1); }
  .is-phase01 .js-mvElement__box {
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .is-phase02 .js-mvElement__box {
    display: none; }

/*  .js-mvElement__logo
----------------------------------------------------*/
.js-mvElement__logo {
  display: block;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 50;
  width: 192px;
  height: 192px;
  background: url(/img/favicon-192.png) no-repeat 0 0;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: opacity 0.8s linear;
  transition: opacity 0.8s linear; }
  .is-loading-start .js-mvElement__logo {
    opacity: 1; }
  .is-loading-end .js-mvElement__logo {
    opacity: 0; }

/*  .p-mv__copy
----------------------------------------------------*/
.p-mv__wrap--type01 .p-mv__copy {
  opacity: 0;
  position: absolute; }

.p-mv__copy--type01, .p-mv__copy--type02 {
  -webkit-transition: all 0.8s ease 0.1s;
  transition: all 0.8s ease 0.1s; }

.p-mv__copy--type01 {
  top: -170px;
  left: 50%;
  width: 250px;
  height: 250px;
  margin-left: -125px;
  letter-spacing: 0.28em;
  font-weight: normal;
  font-size: 48px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  -webkit-transform: translateX(-40px);
      -ms-transform: translateX(-40px);
          transform: translateX(-40px); }

.p-mv__copy--type02 {
  top: 85px;
  left: 50%;
  width: 300px;
  margin-left: -125px;
  letter-spacing: 0.15em;
  font-size: 16px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  -webkit-transform: translateX(-40px);
      -ms-transform: translateX(-40px);
          transform: translateX(-40px);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s; }

.p-mv__copy--type03 {
  top: 20px;
  left: 50%;
  width: 250px;
  height: 38px;
  margin-left: -125px;
  text-align: right;
  -webkit-transition: opacity 0.2s linear 0.2s;
  transition: opacity 0.2s linear 0.2s; }

.p-mv__copy--type04 {
  width: calc(21px * 22);
  line-height: 2.33;
  text-align: justify;
  font-size: 18px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #11263b; }
  .p-mv__copy--type04 .p-mv__copy__item {
    position: relative;
    text-align: center; }
  .p-mv__copy--type04 .p-mv__copy__wrap {
    display: block;
    letter-spacing: 0.15em;
    font-style: normal;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-mv__copy--type04 .p-mv__copy__wrap:nth-child(2), .p-mv__copy--type04 .p-mv__copy__wrap:nth-child(3), .p-mv__copy--type04 .p-mv__copy__wrap:nth-child(5) {
      margin-bottom: 1em; }
    .p-mv__copy--type04 .p-mv__copy__wrap span {
      opacity: 0;
      -webkit-transition: all 2s ease;
      transition: all 2s ease; }

/*  .p-mv.is-phasXX
----------------------------------------------------*/
.p-mv.is-phase02 .p-mv__copy--type01, .p-mv.is-phase02 .p-mv__copy--type02 {
  opacity: 1;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.p-mv.is-phase03 .p-mv__copy--type04 .js-anime-start {
  opacity: 1; }

.p-mv.is-phase04 .p-mv__copy--type03 {
  opacity: 1; }

.p-mv.is-phase04 .p-mv__news {
  opacity: 1; }

/*----------------------------------------------------
    .p-mv__news
----------------------------------------------------*/
.p-mv__news {
  opacity: 0;
  position: absolute;
  right: 0;
  bottom: 40px;
  z-index: 15;
  width: 45%;
  font-size: 14px;
  -webkit-transition: opacity 0.8s linear 0.4s;
  transition: opacity 0.8s linear 0.4s; }
  .p-mv__news td {
    vertical-align: middle; }
  .p-mv__news a:link, .p-mv__news a:visited, .p-mv__news a:hover, .p-mv__news a:active, .p-mv__news a:focus {
    color: #243d5a; }
  .p-mv__news a:link, .p-mv__news a:visited {
    text-decoration: none; }
  .p-mv__news a:hover, .p-mv__news a:active {
    text-decoration: underline; }

/*  .p-mv__news__date
----------------------------------------------------*/
.p-mv__news__date {
  width: 4em;
  padding-right: 5px;
  white-space: nowrap; }

/*  .p-mv__news__category
----------------------------------------------------*/
.p-mv__news__category--type01 {
  width: 2em;
  white-space: nowrap; }
  .p-mv__news__category--type01 .p-mv__news__label {
    background-color: #11263b; }

.p-mv__news__category--type02 .p-mv__news__label {
  background-color: #243d5a; }

.p-mv__news__category .p-mv__news__label {
  display: block;
  padding-right: 5px;
  padding-left: 5px;
  text-align: center;
  font-size: 12px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF; }

/*  .p-mv__news__title
----------------------------------------------------*/
.p-mv__news__title {
  padding-right: 20px;
  padding-left: 15px; }
  .p-mv__news__title a {
    display: block;
    overflow: hidden;
    width: 400px;
    white-space: nowrap;
    text-overflow: ellipsis; }

/*----------------------------------------------------
    .c-categoryHead
----------------------------------------------------*/
.c-categoryHead {
  width: 100%; }
  .c-categoryHead__outer {
    position: relative;
    height: 440px;
    padding-top: 100px;
    background-position: 100% 50%;
    background-repeat: no-repeat;
    background-size: 50%;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease; }
    .c-categoryHead__outer:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      z-index: 0;
      width: 50%;
      height: 100%;
      background-color: #11263b; }
  .c-categoryHead__image__outer {
    position: relative;
    width: 100%;
    padding-left: 100px; }
  .c-categoryHead__image__inner {
    width: 100%;
    height: 300px; }
    .page-corporate_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_corporate_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-genuine_care_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_genuine_care_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-service_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_service_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-facilities_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_facilities_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-network_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_network_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-recruit_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_recruit_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-news_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_news_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-otokomae_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_otokomae_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-contact_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_contact_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-privacy_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_privacy_index01.jpg) no-repeat center center;
      background-size: cover; }
    .page-magazine_index .c-categoryHead__image__inner {
      background: url(/img/pic_head_magazine_index01.jpg) no-repeat center center;
      background-size: cover; }
  .c-categoryHead__inner {
    position: absolute;
    top: 180px;
    left: 50%;
    width: 300px;
    height: 140px;
    margin-left: -150px;
    background-image: url(/img/bg_pattern02.png); }
  .c-categoryHead__head {
    width: 300px;
    height: 140px;
    padding: 30px 20px;
    background: url(/img/bg_head01.svg) no-repeat center center;
    line-height: 1.25;
    text-align: center;
    letter-spacing: 0.2em;
    color: #142333; }
    .c-categoryHead__head .c-categoryHead__title {
      margin-bottom: 15px;
      font-weight: normal;
      font-size: 32px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .c-categoryHead__head .c-categoryHead__sub {
      font-weight: normal;
      font-size: 16px;
      font-family: "EB Garamond", serif; }
    .c-categoryHead__head--type02 {
      padding: 20px 20px; }
      .c-categoryHead__head--type02 .c-categoryHead__title {
        margin-bottom: 5px;
        line-height: 1.18; }
  .c-categoryHead .c-categoryHead__desc {
    padding: 75px 100px;
    text-align: center; }

/*----------------------------------------------------
    .c-pageHead
----------------------------------------------------*/
.c-pageHead {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding: 70px 0 100px; }
  .c-pageHead.pb50 {
    padding-bottom: 50px; }
  .c-pageHead__lead {
    line-height: 2;
    font-size: 16px; }
    .c-pageHead__lead.mb40 {
      margin-bottom: 40px; }
  .c-pageHead--type01 .c-pageHead__lead {
    text-align: center; }
  .c-pageHead--type02 .c-pageHead__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 1200px;
    margin-right: auto;
    margin-left: auto; }
    .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__title {
      width: 300px;
      color: #16293d; }
      .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__title .c-pageHead__title__main {
        display: block;
        margin-bottom: 6px;
        line-height: 1.2;
        letter-spacing: 0.05em;
        font-weight: normal;
        font-size: 32px;
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
      .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__title .c-pageHead__title__sub {
        display: block;
        padding-left: 5px;
        letter-spacing: 0.2em;
        font-weight: normal;
        font-size: 12px;
        font-family: "EB Garamond", serif; }
    .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__lead {
      padding-left: 40px;
      border-left: 1px solid #16293d;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
  .c-pageHead--type03 .c-pageHead__title {
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: 0.2em;
    font-weight: normal;
    font-size: 40px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
  .c-pageHead--type03 .c-pageHead__lead {
    text-align: center; }
  .c-pageHead--type04 {
    width: 100%;
    padding: 0; }
    .c-pageHead--type04 .c-pageHead__wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title {
        color: #16293d;
        padding-right: 20px; }
        .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title__main {
          display: block;
          margin-bottom: 15px;
          line-height: 1.2;
          letter-spacing: 0.14em;
          font-weight: normal;
          font-size: 32px;
          font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
          .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title__main small {
            font-size: 26px; }
        .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title__sub {
          display: block;
          padding-left: 5px;
          letter-spacing: 0.2em;
          font-weight: normal;
          font-size: 12px;
          font-family: "EB Garamond", serif; }
      .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__lead {
        padding-left: 30px;
        border-left: 1px solid #16293d;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
      .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons {
        width: 100px;
        margin-left: 20px; }
        .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label {
          display: block;
          width: 100px;
          font-size: 12px;
          height: 20px;
          line-height: 20px;
          text-align: center;
          margin-bottom: 12px;
          background: #666;
          color: #FFF;
          text-decoration: none; }
          .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label:nth-last-child(1) {
            margin-bottom: 0; }

/*----------------------------------------------------
    base64 SVG
----------------------------------------------------*/
/*----------------------------------------------------
    .topicPath
----------------------------------------------------*/
.topicPath__container {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.topicPath__item {
  position: relative;
  padding: 13px 0;
  line-height: 1.25;
  line-height: 14px;
  text-shadow: 1px 1px 1px #11263b;
  font-size: 12px;
  color: #FFF; }
  .topicPath__item:after {
    content: "＞";
    display: inline-block;
    width: 10px;
    height: 14px;
    margin-right: 10px;
    margin-left: 10px;
    line-height: 14px;
    vertical-align: middle;
    color: #FFF; }
  .topicPath__item:last-child {
    padding-right: 0; }
    .topicPath__item:last-child:after {
      display: none; }
  .topicPath__item a {
    color: #FFF; }
    .topicPath__item a:link, .topicPath__item a:visited {
      text-decoration: none; }
    .topicPath__item a:hover, .topicPath__item a:active {
      text-decoration: underline; }

/*====================================================
 *
 *
 *   Object:searchBox
 *
 *
====================================================*/
/*====================================================

  検索ボックス

====================================================*/
/*----------------------------------------------------
    Trigger Elements
----------------------------------------------------*/
/*  .header > .hdSearch
----------------------------------------------------*/
.hdSearch {
  height: 30px;
  margin-right: 18px;
  line-height: 30px; }
  .hdSearch__button {
    overflow: hidden;
    text-indent: 200%;
    white-space: nowrap;
    position: relative;
    width: 20px;
    height: 30px;
    padding: 0;
    border: 0;
    background-color: transparent;
    line-height: 30px; }
    .hdSearch__button:after {
      content: "";
      display: block;
      position: absolute;
      top: 5px;
      left: 0;
      width: 20px;
      height: 20px;
      background: url(/img/icn_search01.svg) no-repeat 0 0;
      background-size: 100% auto;
      line-height: 1;
      font-size: 10px; }

/*  .spNav > .spNav--type01
----------------------------------------------------*/
/*----------------------------------------------------
    Search Elements
----------------------------------------------------*/
/*  .c-site-search
----------------------------------------------------*/
.c-site-search {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 210;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.92);
  -webkit-transition: visibility 0.2s linear, opacity 0.2s linear;
  transition: visibility 0.2s linear, opacity 0.2s linear; }
  .c-site-search.is-active {
    visibility: visible;
    opacity: 1; }
  .c-site-search__container {
    position: relative;
    width: 1200px;
    margin-right: auto;
    margin-left: auto; }
  .c-site-search__item:first-child {
    margin-top: 240px; }
  .c-site-search__item .c-head--type01 {
    margin-bottom: 0; }
  .c-site-search__button {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    padding: 0;
    border: 0;
    background: transparent url(/img/btn_close01.svg) no-repeat 50% 50%;
    text-indent: 100%;
    white-space: nowrap; }
  .c-site-search__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 20px auto 0;
    border-radius: 4px;
    font-size: 13px; }
    .c-site-search__form .c-site-search__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      width: calc(100% - 100px); }
  .c-site-search__input {
    width: 1200px;
    padding: 18px 18px 18px 88px;
    border: 1px solid #c43d5e;
    background-color: #8ba39f;
    background-image: url("//www.google.com/cse/static/images/2x/googlelogo_lightgrey_46x16dp.png");
    background-position: 18px 50%;
    background-repeat: no-repeat;
    background-size: auto 24px;
    line-height: 1;
    font-size: 22px; }
    .c-site-search__input:focus, .c-site-search__input.is-active {
      padding-left: 18px;
      background: #8ba39f !important; }
  .c-site-search__submit {
    margin: 20px auto 0;
    padding: 15px 35px;
    border: 0;
    background-color: #c43d5e;
    line-height: 1;
    text-align: center;
    text-indent: 1em;
    letter-spacing: 1em;
    font-weight: bold;
    font-size: 24px;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    color: #fff;
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear; }
    .c-site-search__submit:hover {
      opacity: 0.8; }
    .c-site-search__submit:after {
      content: "";
      display: inline-block;
      width: 24px;
      height: 24px;
      background: url(/img/icn_search01.svg) no-repeat 0 100%;
      vertical-align: middle;
      font-size: 24px; }
  .c-site-search .c-gsc__image {
    display: none; }

/*====================================================

  Q&A

====================================================*/
/*----------------------------------------------------
    .c-qa
----------------------------------------------------*/
/*  container
----------------------------------------------------*/
.c-qa__container {
  margin-top: 60px;
  padding: 20px;
  background-color: #f5ffe6; }
  .c-qa__container:first-child {
    margin-top: 0; }

.c-qa__answer, .c-qa__question {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .c-qa__answer img, .c-qa__question img {
    margin-right: 15px; }

.c-qa__question {
  padding-bottom: 15px;
  border-bottom: 1px dotted #243d5a;
  font-size: 24px; }

.c-qa__answer {
  padding-top: 15px; }

/*====================================================

  新着情報

====================================================*/
/*----------------------------------------------------
    .page-news
----------------------------------------------------*/
.page-news .c-head--type03 {
  margin-top: calc(100px - 14px); }

/*----------------------------------------------------
    .c-news
----------------------------------------------------*/
/*  .c-news__headInfo
----------------------------------------------------*/
.c-news__headInfo {
  margin-bottom: 20px;
  padding-bottom: 12px; }
  .c-news__headInfo .c-news__date {
    display: block;
    margin-bottom: 5px;
    padding-left: 0; }
  .c-news__headInfo .c-news__headBox {
    position: relative; }
    .c-news__headInfo .c-news__headBox .c-head--type02 {
      margin-bottom: 2px;
      padding: 8px 138px 8px 10px;
      background: #16293d;
      line-height: 32px;
      text-align: left;
      font-weight: normal;
      font-size: 18px;
      color: #FFF; }
    .c-news__headInfo .c-news__headBox .c-news__label {
      position: absolute;
      top: 8px;
      right: 8px;
      border: 1px solid #A2A9B1; }
  .c-news__headInfo .c-news__tags {
    padding-top: 10px;
    text-align: right;
    font-size: 14px; }
    .c-news__headInfo .c-news__tags a:link, .c-news__headInfo .c-news__tags a:visited {
      text-decoration: none; }
    .c-news__headInfo .c-news__tags a:hover, .c-news__headInfo .c-news__tags a:active {
      text-decoration: underline; }
  .c-news__headInfo .c-news__category {
    margin-left: 20px; }

/*  .c-news__list
----------------------------------------------------*/
.c-news__list {
  border-collapse: separate;
  width: calc(100% - 10px);
  border-top: 1px solid #d4d7d8; }
  .c-news__list th, .c-news__list td {
    margin-bottom: 0;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #d4d7d8;
    vertical-align: top; }
  .c-news__list th {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: normal; }

.c-news__date {
  width: 140px;
  padding-left: 18px;
  line-height: 29px;
  letter-spacing: 0.15em; }

.c-news__title {
  padding-right: 10px;
  padding-left: 20px; }
  .c-news__title a {
    color: #333; }
    .c-news__title a:link, .c-news__title a:visited {
      text-decoration: none; }
    .c-news__title a:hover, .c-news__title a:active {
      text-decoration: underline; }

.c-news__category {
  width: 130px; }
  .page-news-detail .c-news__category {
    width: auto;
    margin-bottom: 12px; }

.c-news__label {
  display: inline-block;
  width: 130px;
  background-color: #6c6359;
  line-height: 28px;
  text-align: center;
  font-size: 13px;
  color: #fff; }
  .page-news-detail .c-news__label + .c-news__label {
    margin-top: 0;
    margin-left: 3px; }
  .c-news__label--cat00 {
    background-color: #c43d5e; }
  .c-news__label--cat01 {
    background-color: #558ec8; }
  .c-news__label--cat02 {
    background-color: #6db267; }
  .c-news__label--cat03 {
    background-color: #d6b351; }
  .c-news__label--cat04 {
    background-color: #db899c; }
  .c-news__label--blog {
    background-color: #814964; }
  .c-news__label--topics {
    background-color: #243d5a; }
  .c-news__label--media {
    background-color: #586e8d; }
  .c-news__label--recruit {
    background-color: #6a6385; }
  .c-news__label--event {
    background-color: #617a6a; }
  .c-news__label--recruit_blog {
    background-color: #573E6D; }
  .c-news__label--pt_ot_st_blog {
    background-color: #43676B; }
  .c-news__label--udonken_blog {
    background-color: #815731; }
  .c-news__label--president_blog {
    background-color: #9E3D3F; }

/*----------------------------------------------------
    .c-news__info
----------------------------------------------------*/
.c-news__info {
  margin-top: 70px;
  padding: 30px 26px;
  background-color: #fff; }
  .c-news__info .c-news__head {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: normal;
    margin-bottom: 30px; }
  .c-news__info .c-news__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .c-news__info .c-news__linkWrap + .c-news__linkWrap {
    margin-left: 80px; }
  .c-news__info .c-news__linkWrap li {
    position: relative;
    padding-left: 1em; }
    .c-news__info .c-news__linkWrap li:before {
      content: "";
      display: block;
      position: absolute;
      top: 0.7em;
      left: 4px;
      width: 4px;
      height: 4px;
      background-color: #333;
      border-radius: 50%; }
    .c-news__info .c-news__linkWrap li + li {
      margin-top: 12px; }
  .c-news__info .c-news__linkWrap a:link, .c-news__info .c-news__linkWrap a:visited {
    text-decoration: none; }
  .c-news__info .c-news__linkWrap a:hover, .c-news__info .c-news__linkWrap a:active {
    text-decoration: underline; }
  .c-news__info .c-news__linkWrap a:link, .c-news__info .c-news__linkWrap a:visited, .c-news__info .c-news__linkWrap a:hover, .c-news__info .c-news__linkWrap a:active, .c-news__info .c-news__linkWrap a:focus {
    color: #333; }

/*----------------------------------------------------
    .c-news--home
----------------------------------------------------*/
.c-news--home {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 0; }
  .c-news--home .c-news__indexWrap {
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch; }
  .c-news--home .c-news__index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 30px; }
    .c-news--home .c-news__index li {
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
      font-weight: bold;
      position: relative;
      width: calc(100% / 5 - (20px * 5 / 4));
      height: 30px;
      background-color: #939393;
      line-height: 1.25;
      text-align: center;
      white-space: normal;
      font-size: 14px;
      -webkit-transition: background-color 0.2s linear, border-bottom-color 0.2s linear;
      transition: background-color 0.2s linear, border-bottom-color 0.2s linear; }
      .c-news--home .c-news__index li + li {
        margin-left: 2px; }
      .c-news--home .c-news__index li:after {
        content: "";
        display: block;
        opacity: 0;
        position: absolute;
        bottom: -5px;
        left: 50%;
        z-index: 2;
        width: 0;
        height: 0;
        border-width: 5px 5px 0 5px;
        border-style: solid;
        border-color: #939393 transparent transparent;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        -webkit-transition: opacity 0.4s linear;
        transition: opacity 0.4s linear; }
      .c-news--home .c-news__index li.is-active:after {
        opacity: 1; }
      .c-news--home .c-news__index li.is-active.cat00 {
        background-color: #c43d5e; }
        .c-news--home .c-news__index li.is-active.cat00:after {
          border-color: #c43d5e transparent transparent; }
      .c-news--home .c-news__index li:hover.cat00 {
        border-bottom-color: #d0647e;
        background-color: #d0647e; }
      .c-news--home .c-news__index li.is-active.cat01 {
        background-color: #558ec8; }
        .c-news--home .c-news__index li.is-active.cat01:after {
          border-color: #558ec8 transparent transparent; }
      .c-news--home .c-news__index li:hover.cat01 {
        border-bottom-color: #7ca8d4;
        background-color: #7ca8d4; }
      .c-news--home .c-news__index li.is-active.cat02 {
        background-color: #6db267; }
        .c-news--home .c-news__index li.is-active.cat02:after {
          border-color: #6db267 transparent transparent; }
      .c-news--home .c-news__index li:hover.cat02 {
        border-bottom-color: #8ec389;
        background-color: #8ec389; }
      .c-news--home .c-news__index li.is-active.cat03 {
        background-color: #d6b351; }
        .c-news--home .c-news__index li.is-active.cat03:after {
          border-color: #d6b351 transparent transparent; }
      .c-news--home .c-news__index li:hover.cat03 {
        border-bottom-color: #e0c57a;
        background-color: #e0c57a; }
      .c-news--home .c-news__index li.is-active.cat04 {
        background-color: #db899c; }
        .c-news--home .c-news__index li.is-active.cat04:after {
          border-color: #db899c transparent transparent; }
      .c-news--home .c-news__index li:hover.cat04 {
        border-bottom-color: #e7b0bd;
        background-color: #e7b0bd; }
    .c-news--home .c-news__index a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      height: 100%;
      line-height: 1;
      font-size: 14px;
      color: #fff; }
      .c-news--home .c-news__index a:link, .c-news--home .c-news__index a:visited, .c-news--home .c-news__index a:hover, .c-news--home .c-news__index a:active, .c-news--home .c-news__index a:focus {
        text-decoration: none; }
  .c-news--home .c-news__container {
    overflow: hidden;
    position: relative;
    height: 375px; }
    .c-news--home .c-news__container.is-active .c-news__item {
      position: absolute;
      top: 0;
      left: 0; }
      .c-news--home .c-news__container.is-active .c-news__item.is-current {
        opacity: 1;
        z-index: 2; }
  .c-news--home .c-news__item {
    overflow: auto;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear; }
  .c-news--home .c-link--type01 {
    margin-top: 40px; }

/*----------------------------------------------------
    .page-news-detail
----------------------------------------------------*/
.page-news-detail .c-columns__main .c-news__box {
  clear: both;
  margin-bottom: 40px; }
  .page-news-detail .c-columns__main .c-news__box--type01 {
    margin-bottom: 30px; }
  .page-news-detail .c-columns__main .c-news__box--type02 {
    margin-bottom: 60px; }
  .page-news-detail .c-columns__main .c-news__box--type03 {
    margin-bottom: 80px; }
  .page-news-detail .c-columns__main .c-news__box:after {
    content: "";
    display: block;
    clear: both; }

.page-news-detail .c-columns__main a:link, .page-news-detail .c-columns__main a:visited {
  text-decoration: none; }

.page-news-detail .c-columns__main a:hover, .page-news-detail .c-columns__main a:active {
  text-decoration: underline; }

.page-news-detail .c-columns__main a img {
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear; }

.page-news-detail .c-columns__main a:hover img {
  opacity: 0.7; }

.page-news-detail .c-columns__main p {
  margin-bottom: 1.8em;
  line-height: 1.86; }

.page-news-detail .c-columns__main img {
  margin-right: 5px;
  margin-bottom: 0.5em; }

.page-news-detail .c-columns__main .alignleft {
  float: left;
  width: 420px;
  margin: 0 60px 30px 0; }

.page-news-detail .c-columns__main .alignright {
  float: right;
  width: 420px;
  margin: 0 0 30px 60px; }

.page-news-detail .c-columns__main .aligncenter {
  text-align: center; }

/*====================================================

  SNS関連

====================================================*/
/*----------------------------------------------------
    .c-sns--type01
----------------------------------------------------*/
.c-sns--type01 .c-section {
  margin-top: 0; }

.c-sns--type01 .c-sns__head--type01 {
  margin-bottom: 10px;
  text-align: center; }
  .c-sns--type01 .c-sns__head--type01 img {
    width: 222px; }

.c-sns--type01 .c-sns__head--type02 {
  padding: 10px 18px;
  line-height: 1.25;
  font-size: 22px;
  color: #fff; }

.c-sns--type01 .c-sns__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.c-sns--type01 .c-sns__item {
  width: calc(100% / 2 - (30px / 2 - 1px)); }

.c-sns--type01 .c-sns__wrap {
  overflow: auto;
  height: 494px;
  border: 1px solid #939393;
  border-top: 0; }

.c-sns--type01 .c-sns__facebook .c-sns__head--type02 {
  background-color: #4267b2; }

.c-sns--type01 .c-sns__instagram .c-sns__head--type02 {
  background-color: #e58383; }

.c-sns--type01 .c-sns__instagram .c-sns__wrap {
  padding: 12px; }

/*====================================================

  Google マップ

====================================================*/
/*----------------------------------------------------
    .c-googleMap
----------------------------------------------------*/
.c-googleMap__canvas {
  height: 100%;
  background-color: #fff; }

/*====================================================

  Google カレンダー

====================================================*/
/*----------------------------------------------------
    .c-calendar--type01
------------------------------------------------------*/
.c-calendar--type01 .c-calender__wrap {
  margin: 2.0833% auto; }

.c-calendar--type01 iframe {
  max-width: 100%; }

/*====================================================

  Google カスタム検索：検索ボックス

====================================================*/
/*----------------------------------------------------
    .c-gsc__image
------------------------------------------------------*/
/*====================================================

  Google カスタム検索：検索結果ページ

====================================================*/
/*----------------------------------------------------
    .gsc-control-cse
----------------------------------------------------*/
.gsc-control-cse table {
  font-size: 100%; }

.gsc-control-cse th, .gsc-control-cse td {
  border: none; }

.gsc-control-cse tr:nth-child(1) th, .gsc-control-cse tr:nth-child(1) td {
  border-top: none; }

.gsc-control-cse .gsc-result {
  font-size: 100%; }
  .gsc-control-cse .gsc-result .gs-title {
    height: auto; }
  .gsc-control-cse .gsc-result .gsc-table-result {
    font-size: 100%; }

/*====================================================

  Instagram

====================================================*/
/*----------------------------------------------------
    .c-instagram
----------------------------------------------------*/
.c-instagram__container {
  margin-top: -12px;
  margin-right: -6px;
  margin-left: -6px; }
  .c-instagram__container:after {
    content: "";
    display: block;
    clear: both; }

.c-instagram__item {
  overflow: hidden;
  position: relative;
  float: left;
  margin-top: 12px;
  margin-right: 6px;
  margin-left: 6px; }
  .c-instagram__item.is-inactive {
    position: relative;
    background-color: #fff; }
    .c-instagram__item.is-inactive:before, .c-instagram__item.is-inactive:after {
      content: "";
      display: block;
      opacity: 0;
      position: absolute;
      top: 65%;
      left: 50%;
      width: 30px;
      height: 30px;
      margin-top: -15px;
      margin-left: -15px;
      border: 1px solid #aaa;
      border-radius: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .c-instagram__item.is-inactive:before {
      -webkit-animation: loading--type01 1s  ease-out 0s infinite normal none;
              animation: loading--type01 1s  ease-out 0s infinite normal none; }
    .c-instagram__item.is-inactive:after {
      -webkit-animation: loading--type02 1s  ease-out 0.5s infinite normal none;
              animation: loading--type02 1s  ease-out 0.5s infinite normal none; }
    .c-instagram__item.is-inactive span {
      font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
      font-weight: bold;
      position: absolute;
      top: 30%;
      left: 50%;
      font-size: 14px;
      color: #939393;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
  .c-instagram__item img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: none;
    height: auto;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear; }
  .c-instagram__item--overwidth img {
    width: 100%;
    height: auto; }
  .c-instagram__item--overheight img {
    width: auto;
    height: 100%; }
  .c-instagram__item a {
    display: block;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .c-instagram__item a:before {
      content: "";
      display: block;
      opacity: 0;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      width: 100%;
      height: 100%;
      background-color: #fff;
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
    .c-instagram__item a:hover:before {
      opacity: 0.3; }

.c-instagram--type01 .c-instagram__item {
  width: 246px;
  height: 246px; }

.c-instagram--type02 .c-instagram__item {
  width: 108px;
  height: 108px; }
  .c-instagram--type02 .c-instagram__item.is-inactive {
    border: 1px solid #8ba39f; }
  .c-instagram--type02 .c-instagram__item.is-inactive {
    border: 1px solid #8ba39f; }

/*====================================================

  Fancybox

====================================================*/
/*----------------------------------------------------
    trigger:.c-picture--zoom
------------------------------------------------------*/
.c-picture--zoom {
  display: block;
  position: relative;
  width: 100%;
  height: 100%; }
  .c-picture--zoom:after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 20px;
    height: 20px;
    background: url(/img/icn_zoom01.svg) no-repeat 0 0; }

/*----------------------------------------------------
    .fancybox-overlay
------------------------------------------------------*/
.fancybox-overlay {
  background: rgba(255, 255, 255, 0.9) !important; }

/*----------------------------------------------------
    .fancybox-title-outside-wrap
------------------------------------------------------*/
.fancybox-title.fancybox-title-outside-wrap {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Bold", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  letter-spacing: 0.15em;
  font-weight: normal;
  font-size: 20px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #333; }

/*----------------------------------------------------
    .fancybox-wrap, .fancybox-skin
----------------------------------------------------*/
.fancybox-opened.fancybox-wrap .fancybox-skin.fc-custom__wrap {
  -webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.15);
  border-radius: 0; }

/*----------------------------------------------------
    .fc-custom
----------------------------------------------------*/
.fc-custom__wrap .fancybox-inner {
  border: 1px solid #cecdca; }

.fc-custom__close {
  position: absolute;
  top: -80px;
  right: 0;
  width: 50px;
  height: 50px;
  background: url(/img/btn_close01.svg) no-repeat 0 0; }

.fc-custom__nav {
  display: block;
  overflow: hidden;
  position: absolute;
  top: 50%;
  width: 60px;
  height: 60px;
  background-position: 0 0;
  background-repeat: no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.fc-custom__next {
  right: -110px;
  background-image: url(/img/btn_next01.svg); }

.fc-custom__prev {
  left: -110px;
  background-image: url(/img/btn_prev01.svg); }

/*====================================================

  アンカーターゲット

====================================================*/
/*----------------------------------------------------
    .c-anchor--type01
----------------------------------------------------*/
.c-anchor--type01 {
  margin-top: -100px;
  padding-top: 100px; }

/*====================================================

  ラベルスタイル

====================================================*/
/*----------------------------------------------------
    .c-label
----------------------------------------------------*/
.c-label {
  display: inline-block;
  padding-right: 10px;
  padding-left: 10px;
  line-height: 2.3;
  color: #fff; }

/*====================================================

  ブロック・ボックススタイル

====================================================*/
/*----------------------------------------------------
    .c-block--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-box--type01
----------------------------------------------------*/
/*====================================================

  画像スタイル

====================================================*/
/*----------------------------------------------------
    .c-picture--type01
----------------------------------------------------*/
.c-picture--type01 {
  max-width: 100%;
  height: auto;
  text-align: center; }

/*====================================================

  アイコンスタイル

====================================================*/
/*----------------------------------------------------
    .c-icon
----------------------------------------------------*/
/*  common base
----------------------------------------------------*/
.c-icon--commonBase:after, .c-icon--mail:after, .c-icon--pdf:after, .c-icon--word:after, .c-icon--excel:after, .c-icon--link:after {
  display: inline-block;
  margin-left: 6px; }

/*  mail
----------------------------------------------------*/
.c-icon--mail:after {
  content: url(/img/icn_mail01.svg); }

/*  pdf
----------------------------------------------------*/
.c-icon--pdf:after {
  content: url(/img/icn_pdf01.svg); }

/*  word
----------------------------------------------------*/
.c-icon--word:after {
  content: url(/img/icn_word01.svg); }

/*  excel
----------------------------------------------------*/
.c-icon--excel:after {
  content: url(/img/icn_excel01.svg); }

/*  link
----------------------------------------------------*/
.c-icon--link:after {
  content: url(/img/icn_link01.svg); }

/*====================================================

  ボタンスタイル

====================================================*/
/*----------------------------------------------------
    .c-button--type01
----------------------------------------------------*/
/*====================================================

  concrete5 リセット

====================================================*/
/*----------------------------------------------------
    .ccm-panel-add-block-set(ブロックメニュー)
----------------------------------------------------*/
.ccm-panel-add-block-set li {
  padding-left: 0; }
  .ccm-panel-add-block-set li:before {
    content: none; }

/*====================================================

  TinyMCE

====================================================*/
.imgColumnsJustify, .imgColumnsCenter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.imgColumnsJustify {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.imgColumnsCenter {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

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

.alignleft {
  float: left;
  margin: 0.5em 1em 0.5em 0; }

.alignright {
  float: right;
  margin: 0.5em 0 0.5em 1em; }

/*====================================================

  アニメーションキーフレーム

====================================================*/
/*----------------------------------------------------
    loading
----------------------------------------------------*/
@-webkit-keyframes loading--type01 {
  0% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  0.5% {
    opacity: 1;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(2);
            transform: scale(2); } }
@keyframes loading--type01 {
  0% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  0.5% {
    opacity: 1;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(2);
            transform: scale(2); } }

@-webkit-keyframes loading--type02 {
  0% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  0.5% {
    opacity: 1;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(2);
            transform: scale(2); } }

@keyframes loading--type02 {
  0% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  0.5% {
    opacity: 1;
    background-color: #fff;
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    opacity: 0;
    background-color: #fff;
    -webkit-transform: scale(2);
            transform: scale(2); } }

/*====================================================

  home:トップページ

====================================================*/
.page-home {
  background: url(/img/bg_pattern02.png) repeat 0 0; }

/*----------------------------------------------------
    .p-home
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.p-home--type01 {
  position: relative; }
  .p-home--type01:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 50%;
    height: 367px;
    background-color: #11263b; }
  .p-home--type01 .p-home__wrap {
    position: relative;
    width: 1200px;
    margin-right: auto;
    margin-left: auto; }
  .p-home--type01 .p-head--type01 {
    padding-top: 90px;
    padding-bottom: 60px; }
    .p-home--type01 .p-head--type01 .p-head__main, .p-home--type01 .p-head--type01 .p-head__sub {
      color: #FFF; }
  .p-home--type01 .p-home__col--type01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-top: -30px; }
    .p-home--type01 .p-home__col--type01 .p-home__item {
      width: 270px;
      margin-top: 40px;
      font-size: 16px; }
      .p-home--type01 .p-home__col--type01 .p-home__item__img {
        background: url(/img/bg_pattern04.png); }
      .p-home--type01 .p-home__col--type01 .p-home__item a:link, .p-home--type01 .p-home__col--type01 .p-home__item a:visited {
        text-decoration: none; }
      .p-home--type01 .p-home__col--type01 .p-home__item a:hover, .p-home--type01 .p-home__col--type01 .p-home__item a:active {
        text-decoration: underline; }
      .p-home--type01 .p-home__col--type01 .p-home__item a img {
        -webkit-transition: all 0.2s linear;
        transition: all 0.2s linear; }
      .p-home--type01 .p-home__col--type01 .p-home__item a:hover img {
        opacity: 0.7; }
  .p-home--type01 .p-home__link {
    position: absolute;
    top: 150px;
    right: 20px;
    font-size: 14px; }
    .p-home--type01 .p-home__link a {
      display: block;
      padding-right: 65px;
      line-height: 1;
      font-family: "EB Garamond", serif; }
      .p-home--type01 .p-home__link a:link, .p-home--type01 .p-home__link a:visited, .p-home--type01 .p-home__link a.hover, .p-home--type01 .p-home__link a:active, .p-home--type01 .p-home__link a:focus {
        color: #243d5a; }
      .p-home--type01 .p-home__link a:link, .p-home--type01 .p-home__link a:visited {
        text-decoration: none; }
      .p-home--type01 .p-home__link a.hover, .p-home--type01 .p-home__link a:active {
        text-decoration: underline; }
      .p-home--type01 .p-home__link a:after {
        content: "";
        display: block;
        position: absolute;
        right: 0;
        bottom: 50%;
        width: 61px;
        height: 6px;
        background: url(/img/icn_next02.svg) no-repeat 0 0;
        -webkit-transform: translateY(10%);
            -ms-transform: translateY(10%);
                transform: translateY(10%); }

/*  type02
----------------------------------------------------*/
.p-home--type02 {
  padding-top: 88px;
  padding-bottom: 140px; }
  .p-home--type02 .p-home__wrap {
    width: 1400px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 100px; }
    .p-home--type02 .p-home__wrap p {
      letter-spacing: 0.15em; }

/*  type03
----------------------------------------------------*/
.p-home--type03 {
  overflow: hidden;
  position: relative;
  z-index: 10;
  width: 100%;
  height: 370px;
  margin-top: -200px;
  margin-bottom: 17.6%;
  -webkit-transform: skewY(-9deg);
      -ms-transform: skewY(-9deg);
          transform: skewY(-9deg);
  -webkit-transform-origin: top right;
      -ms-transform-origin: top right;
          transform-origin: top right; }
  .p-home--type03 .p-home__inner {
    -webkit-transform: skewY(9deg);
        -ms-transform: skewY(9deg);
            transform: skewY(9deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right; }
  .p-home--type03 img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    max-width: inherit;
    height: 50vw;
    margin-top: -24px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }

/*  type04
----------------------------------------------------*/
.p-home--type04 {
  position: relative;
  z-index: 15;
  margin-top: -500px;
  margin-bottom: 150px; }
  .p-home--type04 .p-home__wrap {
    position: absolute;
    top: -300px;
    right: calc((100% - 1200px)/2);
    width: 436px;
    padding: 30px;
    background: url(/img/bg_pattern04.png); }
    .p-home--type04 .p-home__wrap .p-home__text {
      padding: 20px; }
      .p-home--type04 .p-home__wrap .p-home__text .p-head--type01 {
        margin-bottom: 30px; }
      .p-home--type04 .p-home__wrap .p-home__text p {
        line-height: 2;
        font-size: 16px; }
  .p-home--type04 .p-home__head--type01 {
    padding-top: 0; }
  .p-home--type04 .p-home__btn {
    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; }

/*  type05
----------------------------------------------------*/
.p-home--type05 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 10;
  width: 100%;
  -webkit-transform: skewY(-9deg);
      -ms-transform: skewY(-9deg);
          transform: skewY(-9deg);
  -webkit-transform-origin: top right;
      -ms-transform-origin: top right;
          transform-origin: top right; }
  .p-home--type05 .p-home__wrap {
    width: 50%; }
  .p-home--type05 .p-home__item {
    overflow: hidden;
    height: 25vw; }
  .p-home--type05 .p-home__item--type01 .p-home__inner {
    background-image: url(/img/pic_home02.jpg);
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    .p-home--type05 .p-home__item--type01 .p-home__inner:hover {
      opacity: 0.7; }
  .p-home--type05 .p-home__item--type02 .p-home__inner {
    background-image: url(/img/pic_home03.jpg);
    background-position: 0 -30px;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    .p-home--type05 .p-home__item--type02 .p-home__inner:hover {
      opacity: 0.7; }
  .p-home--type05 .p-home__inner {
    display: block;
    position: relative;
    height: 150%;
    background-position: 0 50%;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-transform: skewY(9deg);
        -ms-transform: skewY(9deg);
            transform: skewY(9deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right; }
    .p-home--type05 .p-home__inner img {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }

/*  type06
----------------------------------------------------*/
.p-home--type06 {
  padding-top: 255px;
  padding-bottom: 60px;
  background: url(/img/bg_pattern03.png); }
  .p-home--type06 .p-home__wrap {
    position: relative;
    width: 1178px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 30px;
    background-image: url(/img/bg_news01.png);
    background-position: top center;
    background-repeat: repeat-x;
    background-size: 3px 11px; }
    .p-home--type06 .p-home__wrap:before, .p-home--type06 .p-home__wrap:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      width: 11px;
      height: 74px;
      background-size: contain; }
    .p-home--type06 .p-home__wrap:before {
      left: -11px;
      background-image: url(/img/bg_news02.png); }
    .p-home--type06 .p-home__wrap:after {
      right: -11px;
      background-image: url(/img/bg_news03.png); }
  .p-home--type06 .p-home__head {
    position: relative;
    margin-bottom: 60px; }
    .p-home--type06 .p-home__head .p-head--type04 {
      position: absolute;
      top: 70px;
      left: 80px;
      width: 34px;
      height: 140px; }
      .p-home--type06 .p-home__head .p-head--type04 .p-head__main {
        margin-bottom: 0; }
  .p-home--type06 .p-home__link {
    position: absolute;
    top: -24px;
    right: 0;
    font-size: 14px; }
    .p-home--type06 .p-home__link a {
      display: block;
      padding-right: 65px;
      line-height: 1;
      font-family: "EB Garamond", serif; }
      .p-home--type06 .p-home__link a:link, .p-home--type06 .p-home__link a:visited, .p-home--type06 .p-home__link a.hover, .p-home--type06 .p-home__link a:active, .p-home--type06 .p-home__link a:focus {
        color: #243d5a; }
      .p-home--type06 .p-home__link a:link, .p-home--type06 .p-home__link a:visited {
        text-decoration: none; }
      .p-home--type06 .p-home__link a.hover, .p-home--type06 .p-home__link a:active {
        text-decoration: underline; }
      .p-home--type06 .p-home__link a:after {
        content: "";
        display: block;
        position: absolute;
        right: 0;
        bottom: 50%;
        width: 61px;
        height: 6px;
        background: url(/img/icn_next02.svg) no-repeat 0 0;
        -webkit-transform: translateY(10%);
            -ms-transform: translateY(10%);
                transform: translateY(10%); }
  .p-home--type06 .c-table--type01 {
    width: 900px;
    margin-left: 190px; }

/*  type07
----------------------------------------------------*/
.p-home--type07 {
  position: relative;
  top: -100px;
  z-index: 5;
  height: 350px;
  background: url(/img/bg_home02.svg) no-repeat left 10% center;
  background-size: 851px 286px; }

/*  type08
----------------------------------------------------*/
.p-home--type08 {
  position: relative;
  padding-top: 80px;
  margin-bottom: 30px; }
  .p-home--type08:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 50%;
    height: calc(100% + 30px);
    background-color: #11263b; }
  .p-home--type08 .p-home__wrap {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;
    padding: 40px;
    background-color: rgba(255, 255, 255, 0.8);
    line-height: 1.875; }
  .p-home--type08 .p-home__head {
    margin-bottom: 16px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 20px;
    font-weight: normal;
    text-align: center;
    color: #16293d; }
    .p-home--type08 .p-home__head .p-home__br--type01 {
      display: none; }
    .p-home--type08 .p-home__head .p-home__br--type02 {
      display: none; }

/*----------------------------------------------------
    .p-head
----------------------------------------------------*/
/*  Type01
----------------------------------------------------*/
.p-home__col--type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: -30px; }
  .p-home__col--type01 .p-home__item {
    width: 270px;
    margin-top: 50px; }

/*  Type02
----------------------------------------------------*/
.p-home__col--type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  position: relative;
  z-index: 100;
  margin-top: -30px; }
  .p-home__col--type02 .p-home__item {
    margin-top: 30px; }
    .p-home__col--type02 .p-home__item:nth-child(1) {
      width: 400px;
      line-height: 2;
      font-size: 16px; }
    .p-home__col--type02 .p-home__item:nth-child(2) {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
  .p-home__col--type02 .p-head--type01 {
    padding-bottom: 30px; }
  .p-home__col--type02 .p-home__btn {
    padding-top: 50px; }

/*----------------------------------------------------
    .p-head
----------------------------------------------------*/
/*  Type01
----------------------------------------------------*/

.p-head--type01 .p-head__main {
  display: block;
  margin-bottom: 25px;
  line-height: 1.3;
  letter-spacing: 0.10em;
  font-weight: normal;
  font-size: 56px;
  font-family: "EB Garamond", serif;
  color: #333; }

.p-head--type01 .p-head__sub {
  display: block;
  letter-spacing: 0.2em;
  font-weight: normal;
  font-size: 18px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

.p-home--type02 .p-head--type01 .p-head__sub, .p-home--type04 .p-head--type01 .p-head__sub {
  color: #333; }

/*  Type02
----------------------------------------------------*/
.p-head--type02 {
  position: relative;
  margin-bottom: 20px;
  padding-top: 30px;
  padding-bottom: 22px;
  letter-spacing: 0.2em;
  font-weight: normal;
  font-size: 18px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #11263b; }

.p-head--type02:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 40px;
  height: 1px;
  background-color: #d03138; }

/*  Type03
----------------------------------------------------*/
.p-head--type03 {
  margin-bottom: 20px;
  padding-top: 30px;
  padding-bottom: 22px;
  font-style: italic;
  font-size: 56px;
  font-family: "Muli", sans-serif; }

/*  Type04
----------------------------------------------------*/
.p-head--type04 {
  letter-spacing: 0.2em;
  font-weight: normal;
  font-size: 24px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl; }
  .p-head--type04 .p-head__main {
    margin-bottom: 0; }

.p-head--type04 .p-head__main {
  display: block;
  margin-bottom: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

.p-head--type04 .p-head__sub {
  display: block;
  letter-spacing: 0.5em;
  font-weight: normal;
  font-size: 12px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #243d5a; }

.p-home--type02 .p-head--type04 .p-head__sub, .p-home--type04 .p-head--type04 .p-head__sub {
  color: #333; }

/*  Color01
----------------------------------------------------*/
.p-head--color01 {
  color: #fff; }

/*----------------------------------------------------
    .gNav
----------------------------------------------------*/
/*  トップページは、ドロワーボタンが白いが、スクロールで紺色に変更する
----------------------------------------------------*/

/*====================================================

  service:04.サービス

====================================================*/
.page-service {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-service #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-service
----------------------------------------------------*/
.p-service .p-service__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url(/img/bg_pattern04.png); }

.p-service--type01 .p-service__desc, .p-service--type03 .p-service__desc {
  padding: 40px 0 20px 65px; }

.p-service--type02 .p-service__wrap, .p-service--type04 .p-service__wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.p-service--type02 .p-service__desc, .p-service--type04 .p-service__desc {
  padding: 40px 65px 20px 0; }

/*  p-service__img
----------------------------------------------------*/
.p-service__img {
  width: 60%;
  height: 500px; }
  .p-service__img--type01 {
    background: url(/img/pic_service_img01.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-service__img--type02 {
    background: url(/img/pic_service_img02.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-service__img--type03 {
    background: url(/img/pic_service_img03.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-service__img--type04 {
    background: url(/img/pic_service_img04.jpg) no-repeat 50% 50%;
    background-size: cover; }

/*  p-service__desc
----------------------------------------------------*/
.p-service__desc {
  position: relative;
  width: 470px; }

/*  p-service__head
----------------------------------------------------*/
.p-service__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  position: relative;
  margin-bottom: 20px; }
  .p-service__head .p-service__head__main {
    display: block;
    position: absolute;
    top: 0;
    left: 30px;
    height: 250px;
    margin-left: 5px;
    line-height: 1.2;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 40px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }
  .p-service__head .p-service__head__sub {
    display: block;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 12px;
    font-family: "EB Garamond", serif;
    color: #16293d;
    -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
            writing-mode: vertical-lr; }

/*  p-service__body
----------------------------------------------------*/
.p-service__body {
  position: absolute;
  bottom: 58px;
  left: 0;
  width: 100%; }
  .p-service__body--type01, .p-service__body--type03 {
    padding-left: 65px; }
  .p-service__body--type02, .p-service__body--type04 {
    padding-right: 65px; }
  .p-service__body p {
    margin-bottom: 30px;
    font-size: 16px; }

/*====================================================

  service-top:04-XX.サービストップ

====================================================*/
/*  サムネイルリスト：type01
----------------------------------------------------*/
.p-service-top__list--type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 1200px;
  margin: 0 auto;
  padding: 0 50px; }
  .p-service-top__list--type01 .p-service-top__item {
    width: 510px;
    margin-bottom: 70px; }
    .p-service-top__list--type01 .p-service-top__item:nth-child(2n+1) {
      margin-right: 80px; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title:link, .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title:visited {
      text-decoration: none; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title:hover, .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title:active {
      text-decoration: underline; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title img {
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title:hover img {
      opacity: 0.7; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title .p-service-top__item__img {
      margin-bottom: 20px; }
    .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title span {
      display: block;
      margin-bottom: 20px;
      padding-left: 1em;
      background: url(/img/icn_arrow04.svg) no-repeat left top 10px;
      background-size: 10px 8px;
      letter-spacing: 0.15em;
      font-weight: normal;
      font-size: 18px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-service-top__list--type01 .p-service-top__item p {
      font-size: 16px; }

/*  サムネイルリスト：type02
----------------------------------------------------*/
.p-service-top__list--type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 1400px;
  margin: 0 auto;
  padding: 80px 100px 0;
  background: url(/img/bg_pattern04.png); }
  .p-service-top__list--type02.full {
    width: 100%;
    padding: 80px calc((100% - 1200px)/2) 0;
    margin-bottom: 120px; }
  .p-service-top__list--type02:after {
    content: "";
    display: block;
    width: 31%; }
  .p-service-top__list--type02 .p-service-top__item {
    width: 360px;
    margin-bottom: 80px; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title:link, .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title:visited {
      text-decoration: none; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title:hover, .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title:active {
      text-decoration: underline; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title img {
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title:hover img {
      opacity: 0.7; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title .p-service-top__item__img {
      margin-bottom: 15px; }
      .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title .p-service-top__item__img img {
        width: 100%; }
    .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title span {
      display: block;
      margin-bottom: 20px;
      padding-left: 1em;
      background: url(/img/icn_arrow04.svg) no-repeat left top 10px;
      background-size: 10px 8px;
      letter-spacing: 0.15em;
      font-weight: normal;
      font-size: 18px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

/*====================================================

  service-sub:04-XX.サービスサブページ

====================================================*/
/*  ページタイトル・カテゴリーチップ部分
----------------------------------------------------*/
.c-pageHead--type04 {
  padding-bottom: 40px; }
  .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label--service01 {
    background-color: #e1711b; }
  .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label--service02 {
    background-color: #5f8e3a; }
  .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label--service03 {
    background-color: #546fa1; }
  .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label--service04 {
    background-color: #d0646e; }

/*  画像
----------------------------------------------------*/
.p-service-sub__img--type01 {
  margin-bottom: 50px;
  line-height: 0; }
  .p-service-sub__img--type01 img {
    width: 100%; }

.p-service-sub__img--type02 {
  line-height: 0;
  width: 600px;
  margin: 0 auto 60px; }
  .p-service-sub__img--type02 img {
    width: 100%; }

/*  概要文
----------------------------------------------------*/
.p-service-sub__lead {
  margin-bottom: 80px; }
  .p-service-sub__lead--type01 {
    margin-bottom: 50px; }
  .p-service-sub__lead p {
    line-height: 2;
    margin-bottom: 1em; }
    .p-service-sub__lead p:nth-last-child(1) {
      margin-bottom: 0; }

/*  見出し
----------------------------------------------------*/
.p-service-sub__title--type01 {
  font-size: 24px;
  color: #16293d;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 20px; }

.p-service-sub__title--type02 {
  font-size: 20px;
  color: #16293d;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 20px; }

.p-service-sub__title--type03 {
  font-size: 20px;
  color: #16293d;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 30px;
  border-bottom: 1px solid #16293d;
  padding-bottom: 10px; }

.p-service-sub__title--type04 {
  font-size: 20px;
  color: #16293d;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .p-service-sub__title--type04 i {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    margin-right: 20px;
    text-align: center;
    font-style: normal;
    background: url(../img/icn_ol01.svg) no-repeat center center;
    font-size: 16px; }

.p-service-sub__title--type05 {
  font-size: 18px;
  color: #FFF;
  background: #16293d;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  line-height: 24px;
  padding: 12px;
  margin-bottom: 40px; }

.p-service-sub__title--type06 {
  font-size: 20px;
  color: #FFF;
  background: #627984;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  line-height: 24px;
  text-align: center;
  padding: 9px;
  margin-bottom: 40px; }

/*  サービス内容
----------------------------------------------------*/
.p-service-sub__service {
  background: #FFF;
  padding: 40px 40px 1px;
  margin-bottom: 120px; }
  .p-service-sub__service__title--type01 {
    font-size: 32px;
    text-align: center;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 42px; }
  .p-service-sub__service__title--type02 {
    padding-left: 60px;
    font-size: 24px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 22px; }
  .p-service-sub__service dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    line-height: 30px;
    margin-bottom: 30px; }
    .p-service-sub__service dl dt {
      width: 100px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      font-size: 18px;
      color: #16293d;
      margin-bottom: 20px; }
    .p-service-sub__service dl dd {
      width: calc(100% - 100px);
      margin-bottom: 20px; }
  .p-service-sub__service ol {
    counter-reset: item;
    list-style-type: none;
    padding: 0;
    margin-bottom: 50px; }
    .p-service-sub__service ol li {
      list-style: none;
      min-height: 40px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 16px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      font-size: 18px;
      color: #16293d; }
      .p-service-sub__service ol li:nth-last-child(1) {
        margin-bottom: 0; }
      .p-service-sub__service ol li:before {
        display: block;
        width: 40px;
        height: 40px;
        line-height: 40px;
        margin-right: 20px;
        counter-increment: item;
        content: counter(item);
        text-align: center;
        background: url(../img/icn_ol01.svg) no-repeat center center; }
      .p-service-sub__service ol li span {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }

/*  施設
----------------------------------------------------*/
.p-service-sub__facilities {
  background: #FFF;
  padding: 40px 40px 30px;
  margin-bottom: 60px;
  margin-top: 80px; }
  .p-service-sub__facilities--mt0 {
    margin-top: 0; }
  .p-service-sub__facilities__title--type01 {
    font-size: 24px;
    text-align: center;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 42px; }
  .p-service-sub__facilities__list {
    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;
    width: 85%;
    margin: 0 auto; }
    .p-service-sub__facilities__list a, .p-service-sub__facilities__list span {
      margin: 0;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      font-weight: bold;
      text-decoration: none;
      position: relative;
      padding-left: 17px;
      margin-bottom: 10px;
      width: 45%;
      color: #142333; }
      .p-service-sub__facilities__list a:before, .p-service-sub__facilities__list span:before {
        content: "";
        position: absolute;
        top: 10px;
        left: 0;
        width: 10px;
        height: 10px;
        background: url(../img/icn_arrow04.svg) no-repeat center center; }
    .p-service-sub__facilities__list--center {
      display: block;
      text-align: center; }
      .p-service-sub__facilities__list--center a {
        width: inherit; }
        .p-service-sub__facilities__list--center a:before {
          content: "";
          position: absolute;
          top: 8px;
          left: 0;
          width: 10px;
          height: 10px;
          background: url(../img/icn_arrow04.svg) no-repeat center center; }

/*  1カラムボックス
----------------------------------------------------*/
.p-service-sub__col1 {
  margin-bottom: 50px; }
  .p-service-sub__col1--mbs {
    margin-bottom: 20px; }
  .p-service-sub__col1 p {
    line-height: 2.0;
    margin-bottom: 20px; }

/*  2カラムボックス
----------------------------------------------------*/
.p-service-sub__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 60px; }
  .p-service-sub__col2--type01__desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-right: 45px; }
    .p-service-sub__col2--type01__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-service-sub__col2--type01__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-service-sub__col2--type01__img {
    width: 270px; }
    .p-service-sub__col2--type01__img img {
      width: 100%; }
  .p-service-sub__col2--type01--invert .p-service-sub__col2--type01__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding-right: 0;
    padding-left: 45px; }
  .p-service-sub__col2--type01--invert .p-service-sub__col2--type01__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0; }
  .p-service-sub__col2--type02__desc {
    width: calc(50% - 30px);
    margin-right: 60px; }
    .p-service-sub__col2--type02__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-service-sub__col2--type02__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-service-sub__col2--type02__img {
    width: calc(50% - 30px); }
    .p-service-sub__col2--type02__img img {
      width: 100%; }
  .p-service-sub__col2--type03__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: calc(50% - 30px);
    margin-left: 60px; }
    .p-service-sub__col2--type03__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-service-sub__col2--type03__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-service-sub__col2--type03__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: calc(50% - 30px); }
    .p-service-sub__col2--type03__img img {
      width: 100%; }
  .p-service-sub__col2--type04 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    .p-service-sub__col2--type04__img {
      width: calc(50% - 30px);
      margin-bottom: 40px; }
      .p-service-sub__col2--type04__img:nth-last-child(1), .p-service-sub__col2--type04__img:nth-last-child(2) {
        margin-bottom: 0; }
      .p-service-sub__col2--type04__img img {
        width: 100%; }
      .p-service-sub__col2--type04__img__caption {
        padding: 10px 0;
        text-align: center; }
      .p-service-sub__col2--type04__img__desc {
        font-size: 15px; }
  .p-service-sub__col2--type05 {
    display: block;
    margin-bottom: 80px; }
    .p-service-sub__col2--type05__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-service-sub__col2--type05__desc .c-button--type03 {
      margin: 40px 0 20px; }
    .p-service-sub__col2--type05__desc__dl dd {
      margin-bottom: 1em; }
      .p-service-sub__col2--type05__desc__dl dd:nth-last-child(1) {
        margin-bottom: 0; }
    .p-service-sub__col2--type05__img {
      float: right;
      width: calc(50% - 30px);
      margin: 0 0 20px 60px; }
      .p-service-sub__col2--type05__img img {
        width: 100%; }
    .p-service-sub__col2--type05:after {
      clear: both; }

/*  3カラムボックス
----------------------------------------------------*/
.p-service-sub__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 60px; }
  .p-service-sub__col3--type01 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    .p-service-sub__col3--type01__img {
      width: calc(33.3% - 30px);
      margin-bottom: 40px; }
      .p-service-sub__col3--type01__img:nth-last-child(1), .p-service-sub__col3--type01__img:nth-last-child(2) {
        margin-bottom: 0; }
      .p-service-sub__col3--type01__img img {
        width: 100%; }
      .p-service-sub__col3--type01__img__caption {
        padding: 10px 0;
        text-align: center; }
      .p-service-sub__col3--type01__img__desc {
        font-size: 15px; }

/*  保育園のたんぽぽについての円リスト
----------------------------------------------------*/
.p-service-sub__circlelist {
  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-bottom: 50px; }
  .p-service-sub__circlelist li {
    text-align: center;
    line-height: 1.3; }
    .p-service-sub__circlelist li p {
      line-height: 1.6;
      width: 160px;
      height: 160px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center;
      background: #fff102;
      border-radius: 80px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #16293d;
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 10px; }
    .p-service-sub__circlelist li span {
      font-weight: bold;
      font-size: 15px; }

/*  ショートステイの金額表エリア
----------------------------------------------------*/
.p-service-sub__guide__dlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 60px; }
  .p-service-sub__guide__dlist dt {
    width: 100px; }
  .p-service-sub__guide__dlist dd {
    width: calc(100% - 100px); }

.p-service-sub__guide > p {
  margin-bottom: 20px; }

.p-service-sub__guide .p-service-sub__pricebox {
  background: rgba(60, 106, 83, 0.1);
  padding: 50px; }
  .p-service-sub__guide .p-service-sub__pricebox__table {
    width: 100%;
    border-top: 1px solid #16293d;
    border-left: 1px solid #16293d; }
    .p-service-sub__guide .p-service-sub__pricebox__table th, .p-service-sub__guide .p-service-sub__pricebox__table td {
      border-right: 1px solid #16293d;
      border-bottom: 1px solid #16293d;
      text-align: center;
      line-height: 20px;
      padding: 10px; }
    .p-service-sub__guide .p-service-sub__pricebox__table thead th {
      background: #acc6cc; }
    .p-service-sub__guide .p-service-sub__pricebox__table tbody th {
      background: #d8e3e7; }
    .p-service-sub__guide .p-service-sub__pricebox__table tbody td {
      background: #FFF; }
    .p-service-sub__guide .p-service-sub__pricebox__table--type01 th, .p-service-sub__guide .p-service-sub__pricebox__table--type01 td {
      width: 20%; }
    .p-service-sub__guide .p-service-sub__pricebox__table--type02 th, .p-service-sub__guide .p-service-sub__pricebox__table--type02 td {
      width: 16.66%; }
  .p-service-sub__guide .p-service-sub__pricebox__plus--type01 {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    height: 80px;
    background: url(../img/icn_plus01.svg) no-repeat center center;
    background-size: 50px 50px;
    margin: 0; }
  .p-service-sub__guide .p-service-sub__pricebox__plus--type02 {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    height: 40px;
    width: 30px;
    background: url(../img/icn_plus02.svg) no-repeat center center;
    background-size: 30px 30px;
    margin: 0; }
  .p-service-sub__guide .p-service-sub__pricebox__add {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .p-service-sub__guide .p-service-sub__pricebox__add__item {
      width: calc((100% - 80px)/3);
      font-size: 18px;
      line-height: 26px;
      font-weight: bold;
      background: #eff5f2;
      border-radius: 5px;
      height: 100px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      text-align: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }

/*  ボタンエリア
----------------------------------------------------*/
.p-service-sub__btn .c-button--type01 {
  margin: 0 auto; }

/*  健康づくり（会員制）の補足エリア
----------------------------------------------------*/
.p-service__remarks {
  padding-left: 1em;
  text-indent: -1em; }
  .p-service__remarks:before {
    content: "※"; }

/*====================================================

  news:08.お知らせ

====================================================*/
.page-news {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-news #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-news
----------------------------------------------------*/
/*====================================================

  facilities:06.施設一覧

====================================================*/
.page-facilities {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-facilities #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-facilities
----------------------------------------------------*/
.page-facilities .c-section__wrap {
  width: 1200px;
  margin: 0 auto 70px;
  padding: 60px 0 0;
  background: url(/img/bg_pattern04.png); }

.page-facilities .c-section {
  margin-top: 0;
  padding: 0 60px 60px; }

/*  .p-facilities__map__wrap
----------------------------------------------------*/
.p-facilities__map__wrap {
  position: relative;
  height: 600px; }

.p-facilities__map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/*  .p-facilities__map__wrap
----------------------------------------------------*/
.p-facilities__area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .p-facilities__area li {
    margin-right: 30px; }
    .p-facilities__area li:nth-last-child(1) {
      margin-right: 0; }
    .p-facilities__area li a {
      display: block;
      padding-left: 16px;
      background: url(/img/icn_arrow05.svg) no-repeat left center;
      background-size: 10px 8px;
      line-height: 20px; }
      .p-facilities__area li a:link, .p-facilities__area li a:visited {
        text-decoration: none; }
      .p-facilities__area li a:hover, .p-facilities__area li a:active {
        text-decoration: underline; }

/*  .c-head--type02
----------------------------------------------------*/
.c-head--type02 {
  margin-bottom: 60px;
  padding-top: 40px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.2em;
  font-weight: normal; }
  .c-head--type02__main {
    display: block;
    margin-bottom: 10px;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
  .c-head--type02__sub {
    display: block;
    font-size: 12px;
    font-family: "EB Garamond", serif; }

/*  .p-facilities__container
----------------------------------------------------*/
.p-facilities__container {
  margin-bottom: 100px; }
  .p-facilities__container:nth-last-child(1) {
    margin-bottom: 0; }

.c-section:nth-last-child(1) .p-facilities__container:nth-last-child(1) {
  margin-bottom: 0; }

/*  .p-facilities__item
----------------------------------------------------*/
.p-facilities__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-bottom: 20px; }
  .p-facilities__item__img {
    width: 360px;
    margin-right: 60px; }
  .p-facilities__item__info {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .p-facilities__item__info__head {
      margin-bottom: 20px;
      line-height: 1.5;
      font-weight: normal;
      font-size: 28px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-facilities__item__info p {
      margin-bottom: 20px; }
      .p-facilities__item__info p .type01 {
        display: inline-block;
        width: 220px;
        margin-top: 10px; }
    .p-facilities__item__info__btn {
      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;
      width: calc(100% - 40px); }
      .p-facilities__item__info__btn .c-button--type02 {
        width: 48%; }

/*  .p-facilities__item__service
----------------------------------------------------*/
.p-facilities__item__service__head {
  margin-bottom: 10px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

.p-facilities__item__service__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 20px 10px 10px 20px;
  background: rgba(60, 106, 83, 0.05); }
  .p-facilities__item__service__wrap li {
    margin-right: 10px;
    margin-bottom: 10px;
    padding: 9px 10px;
    border-radius: 3px;
    background: #16293d;
    line-height: 1.25;
    font-size: 12px;
    color: #FFF; }
    .p-facilities__item__service__wrap li a {
      color: #FFF;
      text-decoration: none; }

/*====================================================

  network:05.創心會ネットワーク

====================================================*/
.page-network {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-network #pageWrap {
    background-image: url(/img/bg_home02.svg);
    background-position: top -60px right -160px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 286px; }
  .page-network .c-section {
    margin-top: 0; }

/*----------------------------------------------------
    .p-network
----------------------------------------------------*/
/*  .p-network__map
----------------------------------------------------*/
.p-network__map__inner {
  position: relative;
  width: 1200px;
  margin: 0 auto; }
  .p-network__map__inner .p-network__marker {
    display: block;
    position: absolute;
    width: 34px;
    height: 39px;
    background: url(/img/icn_mapmarker01.png) no-repeat center center; }
    .p-network__map__inner .p-network__marker--type01 {
      top: 182px;
      left: 649px; }
    .p-network__map__inner .p-network__marker--type02 {
      top: 77px;
      left: 237px; }
    .p-network__map__inner .p-network__marker--type03 {
      top: 71px;
      left: 781px; }
    .p-network__map__inner .p-network__marker--type04 {
      top: 144px;
      left: 509px; }
    .p-network__map__inner .p-network__marker--type05 {
      top: 113px;
      left: 662px; }

.p-network__map__lead {
  width: 1200px;
  margin: 0 auto;
  padding: 40px 0 60px;
  text-align: center; }

/*  .p-network__container
----------------------------------------------------*/
.p-network__container {
  padding: 60px 0 100px;
  background: url(/img/bg_home03.svg) no-repeat right -20px top 120px;
  background-size: 850px 286px; }
  .p-network__container:nth-child(2n+1) {
    background-image: url(/img/bg_home03.svg), url(/img/bg_pattern05.png);
    background-position: right -20px top 120px, center;
    background-repeat: no-repeat, repeat;
    background-size: 850px 286px, 344px 344px; }

/*  .p-network__head
----------------------------------------------------*/
.p-network__head {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 10px;
  text-align: center;
  font-weight: normal;
  font-size: 28px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
  .p-network__head:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    left: 50%;
    width: 40px;
    height: 2px;
    margin-left: -20px;
    background-color: #16293d; }

/*  .p-network__item
----------------------------------------------------*/
.p-network__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 1200px;
  margin: 0 auto;
  margin-bottom: 20px;
  padding: 0 60px; }
  .p-network__item__img {
    width: 560px;
    margin-right: 60px; }
  .p-network__item__info {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .p-network__item__info__head {
      margin-bottom: 20px;
      line-height: 1.5;
      font-weight: normal;
      font-size: 24px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-network__item__info p {
      margin-bottom: 20px; }
    .p-network__item__info__btn {
      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;
      width: calc(100% - 40px); }
      .p-network__item__info__btn .c-button--type02 {
        width: 48%; }

/*====================================================

  rehacare:11.リハケア道

====================================================*/
.page-rehacare {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-rehacare .footer__wrap--type02 {
    background: #1f1a1a; }

/*----------------------------------------------------
    .p-rehacare
----------------------------------------------------*/
.p-rehacare__head {
  position: relative;
  width: 100%; }
  .p-rehacare__head__logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1200px;
    height: 100%;
    margin-top: -160px;
    margin-left: -600px; }
  .p-rehacare__head__img img {
    width: 100%;
    max-width: inherit; }
  .p-rehacare__head__img--type02 {
    display: none; }

.p-rehacare__main {
  position: relative;
  z-index: 1;
  width: 1200px;
  margin: -260px auto 0;
  padding: 60px 0 200px;
  text-align: center; }
  .p-rehacare__main p {
    color: #000;
    margin-bottom: 1em;
    text-shadow: 0px 0px 5px #FFFFFF; }
  .p-rehacare__main .p-rehacare__main__btn {
    width: 320px;
    margin: 40px auto 0; }
    .p-rehacare__main .p-rehacare__main__btn .c-button--type01 {
      width: 100%; }

.p-rehacare__main__desc--type01 {
  background: url(../img/icn_rehacare01.svg) no-repeat top center;
  background-size: 60px 60px;
  padding-top: 90px; }

.p-rehacare__main__desc__head {
  font-size: 34px;
  font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 10px; }

.p-rehacare__main__desc__lead {
  font-size: 26px;
  font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  margin-bottom: 10px; }

/*  ボタンエリア
----------------------------------------------------*/
.p-rehacare__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .p-rehacare__btns .prev {
    margin-right: 28px; }

/*  セクション１：本物ケア宣言
----------------------------------------------------*/
.p-rehacare__sec01 {
  margin-top: -200px;
  padding: 120px 20px 260px;
  background: url(../img/bg_rehacare01.png) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec01 .text-center {
    text-align: center;
    margin-bottom: 60px; }
  .p-rehacare__sec01__wrap {
    background: url(../img/bg_rehacare01_01.png) no-repeat;
    background-position: top -230px left 20px; }
  .p-rehacare__sec01__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec01__head01 {
    text-align: center;
    font-size: 79px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 20px;
    line-height: 1; }
    .p-rehacare__sec01__head01 small {
      font-size: 40px; }
  .p-rehacare__sec01__head02 {
    text-align: center;
    font-size: 34px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 70px;
    line-height: 1; }
  .p-rehacare__sec01__head03 {
    text-align: center;
    font-size: 22px;
    margin-bottom: 70px;
    line-height: 1; }
  .p-rehacare__sec01__ul {
    width: 840px;
    margin: 0 auto 70px;
    border-top: 1px solid #000; }
    .p-rehacare__sec01__ul li {
      padding: 10px 0;
      font-size: 20px;
      text-align: center;
      font-weight: bold;
      border-bottom: 1px solid #000; }

/*  セクション２：創業の原点
----------------------------------------------------*/
.p-rehacare__sec02 {
  margin-top: -200px;
  padding: 120px 20px 260px;
  background: url(../img/bg_rehacare02.png) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec02 .text-center {
    text-align: center;
    margin-bottom: 60px; }
  .p-rehacare__sec02 .text-bold {
    font-weight: bold; }
  .p-rehacare__sec02__wrap {
    background: url(../img/bg_rehacare02_01.png) no-repeat;
    background-position: top -120px right 20px; }
  .p-rehacare__sec02__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec02__head01 {
    text-align: center;
    font-size: 79px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 20px;
    line-height: 1; }
    .p-rehacare__sec02__head01 small {
      font-size: 40px; }
  .p-rehacare__sec02__head02 {
    text-align: center;
    font-size: 22px;
    margin-bottom: 70px;
    line-height: 1; }
  .p-rehacare__sec02__head03 {
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    text-align: center;
    font-size: 24px;
    margin-bottom: 70px;
    line-height: 1.5; }

/*  セクション３：創心流リハケア理論
----------------------------------------------------*/
.p-rehacare__sec03 {
  margin-top: -200px;
  padding: 120px 20px 260px;
  background: url(../img/bg_rehacare03.png) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec03 .text-center {
    text-align: center;
    margin-bottom: 60px; }
  .p-rehacare__sec03 .text-bold {
    font-weight: bold; }
  .p-rehacare__sec03__wrap {
    background: url(../img/bg_rehacare03_01.png) no-repeat;
    background-position: top -20px right -220px; }
  .p-rehacare__sec03__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec03__head01 {
    text-align: center;
    font-size: 79px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 40px;
    line-height: 1; }
    .p-rehacare__sec03__head01 small {
      font-size: 40px; }
  .p-rehacare__sec03__fig {
    width: 840px;
    margin: 0 auto 70px; }
    .p-rehacare__sec03__fig img {
      width: 100%; }
  .p-rehacare__sec03__2col {
    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-bottom: 30px; }
    .p-rehacare__sec03__2col .item {
      width: 47%;
      margin-bottom: 40px; }
      .p-rehacare__sec03__2col .item__inner {
        padding: 0 20px; }
      .p-rehacare__sec03__2col .item .title {
        background: #627984;
        color: #FFF;
        text-align: center;
        line-height: 40px;
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 30px; }
      .p-rehacare__sec03__2col .item .ul li {
        font-size: 18px;
        line-height: 1.7;
        text-indent: -1em;
        padding-left: 1em; }
      .p-rehacare__sec03__2col .item .ul.cols {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .p-rehacare__sec03__2col .item .ul.cols li {
          width: 50%; }

/*  セクション４：本物ケア学会
----------------------------------------------------*/
.p-rehacare__sec04 {
  margin-top: -200px;
  padding: 120px 20px 260px;
  background: url(../img/bg_rehacare04.png) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec04 .text-center {
    text-align: center;
    margin-bottom: 60px; }
  .p-rehacare__sec04 .text-bold {
    font-weight: bold; }
  .p-rehacare__sec04__wrap {
    background: url(../img/bg_rehacare04_01.png) no-repeat;
    background-position: top 30px left -120px; }
  .p-rehacare__sec04__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec04__head01 {
    text-align: center;
    font-size: 79px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 40px;
    line-height: 1; }
    .p-rehacare__sec04__head01 small {
      font-size: 40px; }
  .p-rehacare__sec04__pic_list {
    margin-bottom: 60px;
    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; }
    .p-rehacare__sec04__pic_list li {
      width: calc(33.33% - 25px); }
      .p-rehacare__sec04__pic_list li img {
        width: 100%; }

/*  セクション5：社内資格
----------------------------------------------------*/
.p-rehacare__sec05 {
  margin-top: -200px;
  padding: 120px 20px 30px;
  background: url(../img/bg_rehacare05.png) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec05 .text-center {
    text-align: center;
    margin-bottom: 60px; }
  .p-rehacare__sec05 .text-bold {
    font-weight: bold; }
  .p-rehacare__sec05__wrap {
    background: url(../img/bg_rehacare05_01.png) no-repeat;
    background-position: bottom -00px right -120px; }
  .p-rehacare__sec05__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec05__head01 {
    text-align: center;
    font-size: 79px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 40px;
    line-height: 1; }
    .p-rehacare__sec05__head01 small {
      font-size: 40px; }
  .p-rehacare__sec05__head02 {
    text-align: center;
    font-size: 40px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 20px;
    line-height: 1; }
  .p-rehacare__sec05__fig {
    width: 840px;
    margin: 0 auto 70px; }
    .p-rehacare__sec05__fig img {
      width: 100%; }
  .p-rehacare__sec05__2col {
    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-bottom: 30px; }
    .p-rehacare__sec05__2col .item {
      width: 47%;
      margin-bottom: 40px; }
      .p-rehacare__sec05__2col .item__inner {
        padding: 0 20px; }
      .p-rehacare__sec05__2col .item .img {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        margin-bottom: 50px; }
        .p-rehacare__sec05__2col .item .img img {
          width: 100%;
          max-width: 280px; }
      .p-rehacare__sec05__2col .item .title {
        background: #627984;
        color: #FFF;
        text-align: center;
        line-height: 40px;
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 30px; }
      .p-rehacare__sec05__2col .item .ul li {
        text-indent: -1em;
        padding-left: 1em; }
      .p-rehacare__sec05__2col .item .ul.cols {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .p-rehacare__sec05__2col .item .ul.cols li {
          width: 50%; }

/*  セクション5：社内資格
----------------------------------------------------*/
.p-rehacare__sec06 {
  padding: 100px 20px 70px;
  background: url(../img/bg_rehacare06.jpg) no-repeat top center;
  background-size: cover; }
  .p-rehacare__sec06__inner {
    width: 1200px;
    margin: 0 auto; }
  .p-rehacare__sec06__head01 {
    text-align: center;
    font-size: 26px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 60px;
    line-height: 1; }
  .p-rehacare__sec06__page_list {
    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; }
    .p-rehacare__sec06__page_list li {
      width: calc(25% - 25px);
      border-top: 1px solid #000000;
      border-bottom: 1px solid #000000;
      margin-bottom: 25px; }
      .p-rehacare__sec06__page_list li a {
        padding: 15px 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        width: 100%;
        height: 100%;
        color: #333;
        text-decoration: none;
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear; }
        .p-rehacare__sec06__page_list li a:hover, .p-rehacare__sec06__page_list li a:focus {
          filter: alpha(opacity=70);
          opacity: 0.7; }
        .p-rehacare__sec06__page_list li a .img {
          width: 60px;
          margin-right: 10px; }
        .p-rehacare__sec06__page_list li a .box {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1; }
          .p-rehacare__sec06__page_list li a .box .title {
            font-weight: bold; }
          .p-rehacare__sec06__page_list li a .box .desc {
            font-size: 13px; }
      .p-rehacare__sec06__page_list li.top_link {
        border: none;
        background: rgba(60, 106, 83, 0.1);
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear; }
        .p-rehacare__sec06__page_list li.top_link:hover, .p-rehacare__sec06__page_list li.top_link:focus {
          filter: alpha(opacity=70);
          opacity: 0.7; }
        .p-rehacare__sec06__page_list li.top_link a {
          padding: 20px; }
          .p-rehacare__sec06__page_list li.top_link a p {
            position: relative;
            padding-left: 20px;
            line-height: 1.5;
            font-weight: bold; }
            .p-rehacare__sec06__page_list li.top_link a p:before {
              position: absolute;
              left: 0;
              top: 50%;
              content: "";
              background: url(../img/icn_arrow05.svg) no-repeat left center;
              width: 10px;
              height: 10px;
              display: block;
              margin-top: -5px; }

/*----------------------------------------------------
    .gNav
----------------------------------------------------*/
/*  トップページは、ドロワーボタンが白いが、スクロールで紺色に変更する
----------------------------------------------------*/
.page-rehacare .gNavSp__btn button span {
  background-color: #FFF; }

.page-rehacare .gNavSp__btn button.is-scroll span {
  background-color: #11263b; }

/*====================================================

  corporate:02.創心會について

====================================================*/
.page-corporate {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-corporate #pageWrap {
    background-image: url(/img/bg_page01.svg);
    background-position: top -60px right -160px;
    background-repeat: no-repeat;
    background-size: 850px 850px; }
    .page-corporate #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-service
----------------------------------------------------*/
.p-corporate .p-corporate__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url(/img/bg_pattern04.png); }

.p-corporate--type01 .p-corporate__desc, .p-corporate--type03 .p-corporate__desc {
  padding: 40px 0 20px 65px; }

.p-corporate--type02 .p-corporate__wrap, .p-corporate--type04 .p-corporate__wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.p-corporate--type02 .p-corporate__desc, .p-corporate--type04 .p-corporate__desc {
  padding: 40px 65px 20px 0; }

/*  p-corporate__img
----------------------------------------------------*/
.p-corporate__img {
  width: 60%;
  height: 500px; }
  .p-corporate__img--type01 {
    background: url(/img/pic_corporate_img01.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-corporate__img--type02 {
    background: url(/img/pic_corporate_img02.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-corporate__img--type03 {
    background: url(/img/pic_corporate_img03.jpg) no-repeat 50% 50%;
    background-size: cover; }

/*  p-corporate__desc
----------------------------------------------------*/
.p-corporate__desc {
  position: relative;
  width: 470px; }

/*  p-corporate__head
----------------------------------------------------*/
.p-corporate__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  position: relative;
  margin-bottom: 20px; }
  .p-corporate__head .p-corporate__head__main {
    display: block;
    position: absolute;
    top: 0;
    left: 30px;
    height: 250px;
    margin-left: 5px;
    line-height: 1.2;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 40px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }
  .p-corporate__head .p-corporate__head__sub {
    display: block;
    width: 2em;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 12px;
    font-family: "EB Garamond", serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }

/*  p-corporate__body
----------------------------------------------------*/
.p-corporate__body {
  position: absolute;
  bottom: 58px;
  left: 0;
  width: 100%; }
  .p-corporate__body--type01, .p-corporate__body--type03 {
    padding-left: 65px; }
  .p-corporate__body--type02, .p-corporate__body--type04 {
    padding-right: 65px; }
  .p-corporate__body p {
    margin-bottom: 30px;
    font-size: 16px; }

/*  p-corporate-top__header
----------------------------------------------------*/
.p-corporate-top__header--type01 {
  padding: 80px 20px;
  text-align: center; }
  .p-corporate-top__header--type01 .p-corporate-top__head {
    font-size: 24px;
    font-family: "EB Garamond", serif;
    color: #16293d; }

/*  p-corporate-top__list
----------------------------------------------------*/
.p-corporate-top__list {
  margin-bottom: 50px; }

/*====================================================

  service-sub:02-XX.創心會についてサブページ

====================================================*/
.p-corporate-sub {
  /*  サブページコンテンツラッパー：社長挨拶
----------------------------------------------------*/
  /*  サブページヘッダー：社長挨拶
----------------------------------------------------*/
  /*  サブページコンテンツ：社長挨拶
----------------------------------------------------*/ }
  .p-corporate-sub__wrap--type01 {
    width: 1200px;
    margin: 0 auto;
    padding: 80px 0 120px; }
    .p-corporate-sub__wrap--type01.pb0 {
      padding-bottom: 0; }
    .p-corporate-sub__wrap--type01.pb50 {
      padding-bottom: 50px; }
    .p-corporate-sub__wrap--type01.pt0 {
      padding-top: 0; }
  .p-corporate-sub__wrap--type02 {
    padding: 0;
    padding-left: calc((100% - 1200px)/2); }
  .p-corporate-sub__wrap--type03 {
    padding: 0 0 120px;
    padding-right: calc((100% - 1200px)/2); }
  .p-corporate-sub__wrap--type04 {
    padding-bottom: 20px;
    width: 1200px;
    margin: 0 auto; }
  .p-corporate-sub__wrap--type05 {
    background: #16293d;
    padding: 80px 20px; }
  .p-corporate-sub__wrap--type06 {
    background: url(/img/bg_pattern04.png); }
  .p-corporate-sub__header--type01 {
    width: 100%;
    text-align: center; }
  .p-corporate-sub__header--type02 {
    width: 100%;
    text-align: center; }
  .p-corporate-sub__head--type01 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-corporate-sub__head--type01:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #16293d; }
  .p-corporate-sub__head--type02 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #FFF;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-corporate-sub__head--type02:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #FFF; }
  .p-corporate-sub__head--type03 {
    margin: 0 auto;
    font-size: 38px;
    font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 80px; }
  .p-corporate-sub__img--type01 {
    margin-bottom: 80px; }
    .p-corporate-sub__img--type01 img {
      width: 100%; }
  .p-corporate-sub__ul--type01 {
    width: 900px;
    margin: 0 auto; }
    .p-corporate-sub__ul--type01 li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-bottom: 20px; }
      .p-corporate-sub__ul--type01 li:nth-last-child(1) {
        margin-bottom: 0; }
      .p-corporate-sub__ul--type01 li span {
        margin-top: 8px;
        width: 120px;
        line-height: 30px;
        color: #FFF;
        font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
        .p-corporate-sub__ul--type01 li span:before {
          content: "／";
          margin-right: 0.4em; }
        .p-corporate-sub__ul--type01 li span:after {
          content: "／";
          margin-left: 0.4em; }
      .p-corporate-sub__ul--type01 li p {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        font-size: 28px;
        color: #FFF;
        font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
  .p-corporate-sub__contents {
    /*  サブページコンテンツ：原点と経営目標
----------------------------------------------------*/
    /*  サブページコンテンツ：経営理念
----------------------------------------------------*/
    /*  サブページコンテンツ：会社概要
----------------------------------------------------*/
    /*  サブページコンテンツ：介護職員等特定処遇改善加算
----------------------------------------------------*/
    /*  サブページコンテンツ：沿革
----------------------------------------------------*/ }
    .p-corporate-sub__contents__greeting__img {
      float: right;
      margin-left: 60px;
      margin-bottom: 40px; }
    .p-corporate-sub__contents__greeting__head {
      font-size: 22px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #16293d;
      margin-bottom: 20px; }
    .p-corporate-sub__contents__greeting > p {
      line-height: 2;
      margin-bottom: 1.5em; }
    .p-corporate-sub__contents__greeting__signature {
      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; }
      .p-corporate-sub__contents__greeting__signature small {
        font-size: 20px;
        font-weight: bold;
        margin-right: 1em;
        font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
      .p-corporate-sub__contents__greeting__signature p {
        font-size: 30px;
        font-weight: bold;
        font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-corporate-sub__contents__origin__img {
      float: right;
      margin-left: 80px;
      margin-bottom: 40px; }
      .p-corporate-sub__contents__origin__img.left {
        float: left;
        margin-left: 0;
        margin-right: 80px; }
    .p-corporate-sub__contents__origin > p {
      line-height: 2;
      margin-bottom: 1.5em; }
      .p-corporate-sub__contents__origin > p .big {
        font-size: 24px; }
    .p-corporate-sub__contents__philosophy__head {
      text-align: center;
      margin-bottom: 30px;
      font-size: 24px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #16293d; }
    .p-corporate-sub__contents__philosophy > p {
      line-height: 2;
      margin-bottom: 1.5em; }
    .p-corporate-sub__contents__company__ul__2col--type01 li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-corporate-sub__contents__company__ul__2col--type01 li span {
        width: 7em; }
      .p-corporate-sub__contents__company__ul__2col--type01 li p {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
    .p-corporate-sub__contents__company__ul__2col--type02 {
      margin-bottom: 0.5em; }
      .p-corporate-sub__contents__company__ul__2col--type02 li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .p-corporate-sub__contents__company__ul__2col--type02 li span {
          width: 9em; }
        .p-corporate-sub__contents__company__ul__2col--type02 li p {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1; }
        .p-corporate-sub__contents__company__ul__2col--type02 li:nth-last-child(1) p {
          margin-bottom: 0; }
    .p-corporate-sub__contents__company__ul__3col {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-corporate-sub__contents__company__ul__3col li {
        width: 27%; }
        .p-corporate-sub__contents__company__ul__3col li:before {
          content: "・"; }
    .p-corporate-sub__contents__company__ul__4col {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-corporate-sub__contents__company__ul__4col li {
        width: 22%; }
        .p-corporate-sub__contents__company__ul__4col li:before {
          content: "・"; }
    .p-corporate-sub__contents__company table {
      border-top: 1px solid #d4d7d8; }
      .p-corporate-sub__contents__company table tr th, .p-corporate-sub__contents__company table tr td {
        padding: 10px;
        border-bottom: 1px solid #d4d7d8; }
      .p-corporate-sub__contents__company table tr th {
        font-weight: normal;
        vertical-align: top;
        width: 220px; }
      .p-corporate-sub__contents__company table tr td > p {
        margin-bottom: 0.5em; }
    .p-corporate-sub__contents__addition table {
      border-top: 1px solid #d4d7d8; }
      .p-corporate-sub__contents__addition table tr th, .p-corporate-sub__contents__addition table tr td {
        padding: 10px;
        border-bottom: 1px solid #d4d7d8; }
      .p-corporate-sub__contents__addition table tr th {
        font-weight: normal;
        vertical-align: top;
        width: 120px; }
      .p-corporate-sub__contents__addition table tr td > p {
        margin-bottom: 0.5em; }
      .p-corporate-sub__contents__addition table tr td a {
        text-decoration: none;
        color: inherit; }
        .p-corporate-sub__contents__addition table tr td a:hover {
          text-decoration: underline; }
    .p-corporate-sub__contents__history__head--type01 {
      font-size: 21px;
      margin-bottom: 0.3em; }
      .p-corporate-sub__contents__history__head--type01:before {
        content: "■";
        margin-right: 0.3em; }
    .p-corporate-sub__contents__history__head--type02 {
      font-size: 21px;
      margin-bottom: 0.3em; }
      .p-corporate-sub__contents__history__head--type02:before {
        content: "【";
        margin-right: 0.3em; }
      .p-corporate-sub__contents__history__head--type02:after {
        content: "】";
        margin-left: 0.3em; }
    .p-corporate-sub__contents__history__th__2col {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-corporate-sub__contents__history__th__2col span {
        width: 2em; }
      .p-corporate-sub__contents__history__th__2col p {
        width: 2.5em;
        text-align: right; }
    .p-corporate-sub__contents__history table {
      border-top: 1px solid #d4d7d8;
      margin-bottom: 80px; }
      .p-corporate-sub__contents__history table:nth-last-child(1) {
        margin-bottom: 0; }
      .p-corporate-sub__contents__history table tr th, .p-corporate-sub__contents__history table tr td {
        padding: 10px;
        border-bottom: 1px solid #d4d7d8;
        vertical-align: top; }
      .p-corporate-sub__contents__history table tr th {
        font-weight: normal;
        width: 140px; }
      .p-corporate-sub__contents__history table tr td.month {
        width: 70px;
        text-align: right;
        border-left: 1px solid #d4d7d8; }
      .p-corporate-sub__contents__history table tr td.type {
        width: 250px; }
      .p-corporate-sub__contents__history table tr.nobdr td {
        border-bottom: none; }

.p-corporate-sub__list__header {
  width: 100%;
  margin: -28px 0 60px;
  text-align: center; }
  .p-corporate-sub__list__header .p-corporate-sub__list__head {
    font-size: 24px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d; }

.p-corporate-sub__goal--type01 {
  font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  text-align: center;
  font-size: 28px;
  margin-bottom: 0.8em; }

.p-corporate-sub__goal--type02 {
  font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  text-align: center;
  font-size: 34px; }

.p-corporate-sub__wrap__2col .p-service-top__list--type02 {
  width: 1100px;
  padding: 80px 0 0; }
  .p-corporate-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
    width: 510px;
    margin-bottom: 80px; }

/*====================================================

  genuine_care:02.創心會について

====================================================*/
.page-genuine_care {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-genuine_care #pageWrap {
    background-image: url(/img/bg_page01.svg);
    background-position: top -60px right -160px;
    background-repeat: no-repeat;
    background-size: 850px 850px; }
    .page-genuine_care #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-service
----------------------------------------------------*/
.p-genuine_care .p-genuine_care__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url(/img/bg_pattern04.png); }

.p-genuine_care--type01 .p-genuine_care__desc, .p-genuine_care--type03 .p-genuine_care__desc {
  padding: 40px 0 20px 65px; }

.p-genuine_care--type02 .p-genuine_care__wrap, .p-genuine_care--type04 .p-genuine_care__wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.p-genuine_care--type02 .p-genuine_care__desc, .p-genuine_care--type04 .p-genuine_care__desc {
  padding: 40px 65px 20px 0; }

/*  p-genuine_care__img
----------------------------------------------------*/
.p-genuine_care__img {
  width: 60%;
  height: 500px; }
  .p-genuine_care__img--type01 {
    background: url(/img/pic_genuine_care_img01.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-genuine_care__img--type02 {
    background: url(/img/pic_genuine_care_img02.jpg) no-repeat 50% 50%;
    background-size: cover; }
  .p-genuine_care__img--type03 {
    background: url(/img/pic_genuine_care_img03.jpg) no-repeat 50% 50%;
    background-size: cover; }

/*  p-genuine_care__desc
----------------------------------------------------*/
.p-genuine_care__desc {
  position: relative;
  width: 470px; }

/*  p-genuine_care__head
----------------------------------------------------*/
.p-genuine_care__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  position: relative;
  margin-bottom: 20px; }
  .p-genuine_care__head .p-genuine_care__head__main {
    display: block;
    position: absolute;
    top: 0;
    left: 30px;
    height: 250px;
    margin-left: 5px;
    line-height: 1.2;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 40px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }
  .p-genuine_care__head .p-genuine_care__head__sub {
    display: block;
    width: 2em;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 12px;
    font-family: "EB Garamond", serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }

/*  p-genuine_care__body
----------------------------------------------------*/
.p-genuine_care__body {
  position: absolute;
  bottom: 58px;
  left: 0;
  width: 100%; }
  .p-genuine_care__body--type01, .p-genuine_care__body--type03 {
    padding-left: 65px; }
  .p-genuine_care__body--type02, .p-genuine_care__body--type04 {
    padding-right: 65px; }
  .p-genuine_care__body p {
    margin-bottom: 30px;
    font-size: 16px; }

/*  p-genuine_care__rehacare
----------------------------------------------------*/
.p-genuine_care__rehacare {
  margin-bottom: 120px;
  height: 500px;
  width: 100%;
  background: url(../img/pic_rehacare_img03.jpg) no-repeat center center;
  background-size: cover; }
  .p-genuine_care__rehacare__inner {
    margin: 0 auto;
    width: 1200px;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .p-genuine_care__rehacare__logo {
    width: 720px;
    height: 190px;
    background: url(../img/logo_rehacare01.png) no-repeat center center;
    background-size: 347px 190px;
    margin-bottom: 30px; }
  .p-genuine_care__rehacare__desc {
    text-align: center;
    width: 720px;
    color: #FFF;
    font-weight: bold;
    text-shadow: 0px 0px 5px #000000;
    margin-bottom: 50px; }
  .p-genuine_care__rehacare__btn {
    width: 720px; }
    .p-genuine_care__rehacare__btn .c-button--type05 {
      margin: 0 auto; }

/*====================================================

  genuine_care-sub:03-XX.本物ケアサブページ

====================================================*/
.p-genuine_care-sub {
  /*  サブページコンテンツラッパー
----------------------------------------------------*/
  /*  サブページヘッダー
----------------------------------------------------*/ }
  .p-genuine_care-sub__wrap--type01 {
    width: 1200px;
    margin: 0 auto;
    padding: 80px 0 120px; }
    .p-genuine_care-sub__wrap--type01.pb0 {
      padding-bottom: 0; }
    .p-genuine_care-sub__wrap--type01.pb50 {
      padding-bottom: 50px; }
    .p-genuine_care-sub__wrap--type01.pt0 {
      padding-top: 0; }
  .p-genuine_care-sub__wrap--type02 {
    padding: 0;
    padding-left: calc((100% - 1200px)/2); }
  .p-genuine_care-sub__wrap--type03 {
    padding: 0 0 120px;
    padding-right: calc((100% - 1200px)/2); }
  .p-genuine_care-sub__wrap--type04 {
    padding-bottom: 20px;
    width: 1200px;
    margin: 0 auto; }
  .p-genuine_care-sub__wrap--type05 {
    background: #16293d;
    padding: 80px 20px; }
  .p-genuine_care-sub__wrap--type06 {
    background: url(/img/bg_pattern04.png); }
  .p-genuine_care-sub__header--type01 {
    width: 100%;
    text-align: center; }
  .p-genuine_care-sub__header--type02 {
    width: 100%;
    text-align: center; }
  .p-genuine_care-sub__head--type01 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-genuine_care-sub__head--type01:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #16293d; }
  .p-genuine_care-sub__head--type02 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #FFF;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-genuine_care-sub__head--type02:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #FFF; }
  .p-genuine_care-sub__head--type03 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    background: #16293d;
    color: #FFF;
    text-align: center;
    font-size: 24px;
    line-height: 30px;
    padding: 15px;
    margin-bottom: 50px; }
  .p-genuine_care-sub__head--type04 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    text-align: center;
    font-size: 24px;
    line-height: 30px;
    padding: 15px;
    margin-bottom: 60px; }
    .p-genuine_care-sub__head--type04 span {
      font-size: 34px; }
  .p-genuine_care-sub__head--type05 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 24px;
    color: #16293d;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 30px;
    border-bottom: 1px solid #16293d;
    padding-bottom: 10px; }
    .p-genuine_care-sub__head--type05 span {
      font-size: 20px;
      margin-right: 5px; }
    .p-genuine_care-sub__head--type05 i {
      margin-top: 5px;
      height: 35px;
      width: 35px;
      line-height: 30px;
      background: #16293d;
      border-radius: 17.5px;
      text-align: center;
      font-size: 20px;
      color: #FFF;
      font-style: normal;
      margin-right: 15px; }
  .p-genuine_care-sub__head--type06 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 18px;
    color: #16293d;
    text-align: center; }
  .p-genuine_care-sub__head--type07 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 38px;
    color: #16293d;
    margin-bottom: 50px;
    text-align: center; }
  .p-genuine_care-sub__lead--type01 {
    text-align: left;
    margin-bottom: 80px; }
    .p-genuine_care-sub__lead--type01.center {
      text-align: center; }
  .p-genuine_care-sub__lead--type02 {
    text-align: left;
    margin-bottom: 1.5em; }
  .p-genuine_care-sub__lead--type03 {
    text-align: left;
    margin-bottom: 50px; }
  .p-genuine_care-sub__img--type01 {
    margin-bottom: 80px; }
    .p-genuine_care-sub__img--type01 img {
      width: 100%; }
  .p-genuine_care-sub__img--type02 {
    width: 1000px;
    margin: 0 auto 60px; }
    .p-genuine_care-sub__img--type02 img {
      width: 100%; }
  .p-genuine_care-sub__img__caption {
    margin: 1em 0;
    text-align: center; }
  .p-genuine_care-sub__ul--type01 {
    margin-bottom: 40px; }
    .p-genuine_care-sub__ul--type01 li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-genuine_care-sub__ul--type01 li:before {
        content: "・"; }
      .p-genuine_care-sub__ul--type01 li.arrow:before {
        content: "→"; }
  .p-genuine_care-sub__ul--type02 {
    margin-bottom: 40px; }
    .p-genuine_care-sub__ul--type02 li {
      text-indent: -1em;
      padding-left: 1em;
      line-height: 2; }
      .p-genuine_care-sub__ul--type02 li:before {
        content: "";
        width: 1em;
        height: 1em;
        display: inline-block;
        background: url(../img/icn_arrow05.svg) no-repeat left top 5px;
        background-size: 10px 8.3px; }
  .p-genuine_care-sub__btn_area--type01 {
    margin: 40px 0 80px; }
    .p-genuine_care-sub__btn_area--type01 .c-button--type04 {
      margin: 0 auto; }

.p-genuine_care-sub__list__header {
  width: 100%;
  margin: -28px 0 60px;
  text-align: center; }
  .p-genuine_care-sub__list__header .p-genuine_care-sub__list__head {
    font-size: 24px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d; }

.p-genuine_care-sub__goal__title {
  font-family: "正楷書CB1", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  text-align: center;
  font-size: 28px;
  margin-bottom: 0.8em; }

.p-genuine_care-sub__goal__lead {
  text-align: center;
  color: #FFF; }

.p-genuine_care-sub__wrap__2col .p-service-top__list--type02 {
  width: 1100px;
  padding: 80px 0 0; }
  .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
    width: 510px;
    margin-bottom: 80px; }

/*  2カラムボックス
----------------------------------------------------*/
.p-genuine_care-sub__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 80px; }
  .p-genuine_care-sub__col2:nth-last-child(1) {
    margin-bottom: 0; }
  .p-genuine_care-sub__col2--type01__desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-right: 45px; }
    .p-genuine_care-sub__col2--type01__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-genuine_care-sub__col2--type01__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-genuine_care-sub__col2--type01__img {
    width: 270px; }
    .p-genuine_care-sub__col2--type01__img img {
      width: 100%; }
  .p-genuine_care-sub__col2--type01--invert .p-genuine_care-sub__col2--type01__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding-right: 0;
    padding-left: 45px; }
  .p-genuine_care-sub__col2--type01--invert .p-genuine_care-sub__col2--type01__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0; }
  .p-genuine_care-sub__col2--type02__desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: 80px; }
    .p-genuine_care-sub__col2--type02__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-genuine_care-sub__col2--type02__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-genuine_care-sub__col2--type02__ul {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-bottom: 20px;
    margin-right: 80px; }
    .p-genuine_care-sub__col2--type02__ul li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-genuine_care-sub__col2--type02__ul li:before {
        content: "・"; }
  .p-genuine_care-sub__col2--type02__img {
    width: calc(50% - 30px);
    max-width: 500px; }
    .p-genuine_care-sub__col2--type02__img img {
      width: 100%; }
  .p-genuine_care-sub__col2--type03__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-left: 80px; }
    .p-genuine_care-sub__col2--type03__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-genuine_care-sub__col2--type03__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-genuine_care-sub__col2--type03__ul {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-bottom: 20px;
    margin-left: 80px; }
    .p-genuine_care-sub__col2--type03__ul li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-genuine_care-sub__col2--type03__ul li:before {
        content: "・"; }
  .p-genuine_care-sub__col2--type03__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: calc(50% - 30px);
    max-width: 500px; }
    .p-genuine_care-sub__col2--type03__img img {
      width: 100%; }
  .p-genuine_care-sub__col2--type04 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    .p-genuine_care-sub__col2--type04__img {
      width: calc(50% - 30px);
      margin-bottom: 40px; }
      .p-genuine_care-sub__col2--type04__img:nth-last-child(1), .p-genuine_care-sub__col2--type04__img:nth-last-child(2) {
        margin-bottom: 0; }
      .p-genuine_care-sub__col2--type04__img img {
        width: 100%; }
      .p-genuine_care-sub__col2--type04__img__caption {
        padding: 10px 0;
        text-align: center; }
      .p-genuine_care-sub__col2--type04__img__desc {
        font-size: 15px; }
  .p-genuine_care-sub__col2--type05 {
    display: block;
    margin-bottom: 80px; }
    .p-genuine_care-sub__col2--type05__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-genuine_care-sub__col2--type05__desc .c-button--type03 {
      margin: 40px 0 20px; }
    .p-genuine_care-sub__col2--type05__desc__dl dd {
      margin-bottom: 1em; }
      .p-genuine_care-sub__col2--type05__desc__dl dd:nth-last-child(1) {
        margin-bottom: 0; }
    .p-genuine_care-sub__col2--type05__img {
      float: right;
      width: calc(50% - 30px);
      margin: 0 0 20px 60px; }
      .p-genuine_care-sub__col2--type05__img img {
        width: 100%; }
    .p-genuine_care-sub__col2--type05:after {
      clear: both; }

/*  3カラムボックス
----------------------------------------------------*/
.p-genuine_care-sub__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px; }
  .p-genuine_care-sub__col3--type01 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    .p-genuine_care-sub__col3--type01__img {
      width: calc(33.3% - 30px); }
      .p-genuine_care-sub__col3--type01__img:nth-last-child(1), .p-genuine_care-sub__col3--type01__img:nth-last-child(2) {
        margin-bottom: 0; }
      .p-genuine_care-sub__col3--type01__img img {
        width: 100%; }
      .p-genuine_care-sub__col3--type01__img__caption {
        padding: 10px 0;
        text-align: center; }
      .p-genuine_care-sub__col3--type01__img__desc {
        font-size: 15px; }

/*====================================================

  recruit:07.採用情報

====================================================*/
.page-recruit {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-recruit #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }
    .page-recruit #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

/*  page-recruit__menu
----------------------------------------------------*/
.page-recruit__menu {
  overflow: hidden;
  position: relative;
  z-index: 10;
  width: 100%;
  height: 40vw;
  margin-top: 0;
  -webkit-transform: skewY(-4deg);
      -ms-transform: skewY(-4deg);
          transform: skewY(-4deg);
  -webkit-transform-origin: top right;
      -ms-transform-origin: top right;
          transform-origin: top right;
  background: #FFF; }
  .page-recruit__menu__inner {
    -webkit-transform: skewY(4deg);
        -ms-transform: skewY(4deg);
            transform: skewY(4deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
    position: relative; }
  .page-recruit__menu__desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .page-recruit__menu__desc.sp {
      margin-top: -120px;
      display: none;
      padding: 120px 20px 40px;
      background: #FFF; }
    .page-recruit__menu__desc.pc {
      position: absolute;
      height: 40vw;
      top: 0;
      left: 0;
      padding: 120px calc((100% - 1200px)/2) 0; }
    .page-recruit__menu__desc p {
      width: 560px;
      margin-bottom: 30px; }
    .page-recruit__menu__desc--type02.pc {
      left: inherit;
      right: 0;
      padding-top: 60px; }
    .page-recruit__menu__desc--type02.sp {
      margin-bottom: 40px; }
  .page-recruit__menu__head--type01 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 42px; }
  .page-recruit__menu__head--type02 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 24px;
    margin-bottom: 20px; }
  .page-recruit__menu img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    max-width: inherit;
    height: 45vw;
    margin-top: 0;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }
    .page-recruit__menu img.sp {
      display: none; }
  .page-recruit__menu--type02 {
    margin-bottom: 12.6%; }
    .page-recruit__menu--type02 img {
      margin-top: 30px; }

/*  page-recruit__adoption
----------------------------------------------------*/
.page-recruit__adoption {
  width: 1200px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 120px; }
  .page-recruit__adoption__box {
    width: calc(50% - 30px);
    background: #FFF;
    padding: 40px; }
    .page-recruit__adoption__box p {
      margin-bottom: 40px; }
    .page-recruit__adoption__box .c-button--type01 {
      margin: 0 auto; }
  .page-recruit__adoption__head {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    font-size: 24px;
    margin-bottom: 40px;
    text-align: center; }
  .page-recruit__adoption__img {
    margin-bottom: 40px; }
    .page-recruit__adoption__img img {
      width: 100%; }

/*====================================================

  recruit-top:07-XX.採用情報トップ

====================================================*/
/*  サムネイルリスト：type01
----------------------------------------------------*/
.p-recruit-top__list--type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 1200px;
  margin: 0 auto;
  padding: 0 50px; }
  .p-recruit-top__list--type01 .p-recruit-top__item {
    width: 510px;
    margin-bottom: 70px; }
    .p-recruit-top__list--type01 .p-recruit-top__item:nth-child(2n+1) {
      margin-right: 80px; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title:link, .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title:visited {
      text-decoration: none; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title:hover, .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title:active {
      text-decoration: underline; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title img {
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title:hover img {
      opacity: 0.7; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title .p-recruit-top__item__img {
      margin-bottom: 20px; }
    .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title span {
      display: block;
      margin-bottom: 20px;
      padding-left: 1em;
      background: url(/img/icn_arrow04.svg) no-repeat left top 10px;
      background-size: 10px 8px;
      letter-spacing: 0.15em;
      font-weight: normal;
      font-size: 18px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }
    .p-recruit-top__list--type01 .p-recruit-top__item p {
      font-size: 16px; }

/*  サムネイルリスト：type02
----------------------------------------------------*/
.p-recruit-top__list--type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 1400px;
  margin: 0 auto 100px;
  padding: 80px 100px 0;
  background: url(/img/bg_pattern04.png); }
  .p-recruit-top__list--type02:after {
    content: "";
    display: block;
    width: 31%; }
  .p-recruit-top__list--type02 .p-recruit-top__item {
    width: 360px;
    margin-bottom: 80px; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title:link, .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title:visited {
      text-decoration: none; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title:hover, .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title:active {
      text-decoration: underline; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title img {
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title:hover img {
      opacity: 0.7; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title .p-recruit-top__item__img {
      margin-bottom: 15px; }
      .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title .p-recruit-top__item__img img {
        width: 100%; }
    .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title span {
      display: block;
      margin-bottom: 20px;
      padding-left: 1em;
      background: url(/img/icn_arrow04.svg) no-repeat left top 10px;
      background-size: 10px 8px;
      letter-spacing: 0.15em;
      font-weight: normal;
      font-size: 18px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif; }

/*  SNSエリア
----------------------------------------------------*/
.p-recruit-top__sns {
  background: url(../img/bg_pattern05.png);
  padding: 80px 20px; }
  .p-recruit-top__sns__inner {
    width: 1080px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .p-recruit-top__sns__fb, .p-recruit-top__sns__tw {
    width: 500px; }

/*====================================================

  recruit-sub:07-XX.採用情報サブページ

====================================================*/
.p-recruit-sub {
  /*  サブページコンテンツラッパー
----------------------------------------------------*/
  /*  サブページヘッダー
----------------------------------------------------*/ }
  .p-recruit-sub__wrap--type01 {
    width: 1200px;
    margin: 0 auto;
    padding: 80px 0 120px; }
    .p-recruit-sub__wrap--type01.pb0 {
      padding-bottom: 0; }
    .p-recruit-sub__wrap--type01.pb50 {
      padding-bottom: 50px; }
    .p-recruit-sub__wrap--type01.pt0 {
      padding-top: 0; }
  .p-recruit-sub__wrap--type02 {
    padding: 0;
    padding-left: calc((100% - 1200px)/2); }
  .p-recruit-sub__wrap--type03 {
    padding: 0 0 120px;
    padding-right: calc((100% - 1200px)/2); }
  .p-recruit-sub__wrap--type04 {
    padding-bottom: 20px;
    width: 1200px;
    margin: 0 auto; }
  .p-recruit-sub__wrap--type05 {
    background: #16293d;
    padding: 80px 20px; }
  .p-recruit-sub__wrap--type06 {
    background: url(/img/bg_pattern04.png); }
  .p-recruit-sub__header--type01 {
    width: 100%;
    text-align: center; }
  .p-recruit-sub__header--type02 {
    width: 100%;
    text-align: center; }
  .p-recruit-sub__head--type01 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-recruit-sub__head--type01 br {
      display: none; }
    .p-recruit-sub__head--type01 small {
      font-size: 24px;
      line-height: 1;
      display: block; }
    .p-recruit-sub__head--type01:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #16293d; }
    .p-recruit-sub__head--type01.nobdr {
      padding-bottom: 0; }
      .p-recruit-sub__head--type01.nobdr:after {
        display: none; }
    .p-recruit-sub__head--type01.mb80 {
      margin-bottom: 88px; }
  .p-recruit-sub__head--type02 {
    margin: 0 auto;
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #FFF;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 10px; }
    .p-recruit-sub__head--type02:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -20px;
      width: 40px;
      height: 1px;
      border-bottom: 1px solid #FFF; }
  .p-recruit-sub__head--type03 {
    padding: 10px;
    margin-bottom: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: #16293d; }
    .p-recruit-sub__head--type03 p {
      margin-top: -5px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #FFF;
      text-align: center;
      font-size: 24px;
      line-height: 30px; }
    .p-recruit-sub__head--type03 span {
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #FFF;
      font-size: 16px;
      display: block;
      margin-right: 20px;
      line-height: 36px;
      height: 40px;
      width: 40px;
      text-align: center;
      background: url(../img/icn_ol02.svg) no-repeat center center; }
  .p-recruit-sub__head--type04 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    text-align: center;
    font-size: 24px;
    line-height: 30px;
    padding: 15px;
    margin-bottom: 60px; }
    .p-recruit-sub__head--type04 span {
      font-size: 34px; }
  .p-recruit-sub__head--type05 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 24px;
    color: #16293d;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 30px;
    border-bottom: 1px solid #16293d;
    padding-bottom: 10px; }
    .p-recruit-sub__head--type05 span {
      font-size: 20px;
      margin-right: 5px; }
    .p-recruit-sub__head--type05 i {
      margin-top: 5px;
      height: 35px;
      width: 35px;
      line-height: 30px;
      background: #16293d;
      border-radius: 17.5px;
      text-align: center;
      font-size: 20px;
      color: #FFF;
      font-style: normal;
      margin-right: 15px; }
  .p-recruit-sub__head--type06 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 18px;
    color: #16293d;
    text-align: center; }
  .p-recruit-sub__head--type07 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 20px;
    color: #16293d;
    margin-bottom: 10px; }
  .p-recruit-sub__lead--type01 {
    line-height: 2;
    text-align: left;
    margin-bottom: 80px; }
    .p-recruit-sub__lead--type01.center {
      text-align: center; }
  .p-recruit-sub__lead--type02 {
    line-height: 2;
    text-align: left;
    margin-bottom: 1.5em; }
  .p-recruit-sub__lead--type03 {
    line-height: 2;
    text-align: left;
    margin-bottom: 40px; }
    .p-recruit-sub__lead--type03.pc_center {
      text-align: center; }
  .p-recruit-sub__img--type01 {
    margin-bottom: 80px; }
    .p-recruit-sub__img--type01 img {
      width: 100%; }
  .p-recruit-sub__img--type02 {
    width: 1000px;
    margin: 0 auto 60px; }
    .p-recruit-sub__img--type02 img {
      width: 100%; }
  .p-recruit-sub__img__caption {
    margin: 1em 0;
    text-align: center; }
  .p-recruit-sub__ul--type01 {
    margin-bottom: 40px; }
    .p-recruit-sub__ul--type01 li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-recruit-sub__ul--type01 li:before {
        content: "・"; }
      .p-recruit-sub__ul--type01 li.arrow:before {
        content: "→"; }
  .p-recruit-sub__ul--type02 {
    margin-bottom: 40px; }
    .p-recruit-sub__ul--type02 li {
      text-indent: -1em;
      padding-left: 1em;
      line-height: 2; }
      .p-recruit-sub__ul--type02 li:before {
        content: "";
        width: 1em;
        height: 1em;
        display: inline-block;
        background: url(../img/icn_arrow05.svg) no-repeat left top 5px;
        background-size: 10px 8.3px; }
  .p-recruit-sub__btn_area--type01 {
    margin: 40px 0 80px; }
    .p-recruit-sub__btn_area--type01 .c-button--type04 {
      margin: 0 auto; }

/*  パートナー
----------------------------------------------------*/
.p-recruit-sub__partner__head--type01 {
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 24px;
  color: #16293d;
  text-align: center;
  font-weight: bold; }
  .p-recruit-sub__partner__head--type01 br {
    display: none; }

.p-recruit-sub__partner__head--type02 {
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 32px;
  color: #16293d;
  text-align: center;
  font-weight: bold;
  margin-bottom: 50px; }

.p-recruit-sub__partner__img {
  width: 812px;
  margin: 0 auto 60px; }
  .p-recruit-sub__partner__img img {
    width: 100%; }
    .p-recruit-sub__partner__img img.sp {
      display: none; }

/*  パートナーとしての関わり
----------------------------------------------------*/
.p-recruit-sub__relation {
  background: rgba(60, 106, 83, 0.1);
  padding: 40px; }
  .p-recruit-sub__relation__head {
    text-align: center;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 24px;
    color: #16293d;
    margin-bottom: 40px; }
  .p-recruit-sub__relation__2col {
    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; }
  .p-recruit-sub__relation__col {
    width: calc(50% - 20px); }
    .p-recruit-sub__relation__col ul {
      min-height: 56px; }
      .p-recruit-sub__relation__col ul li {
        text-indent: -1em;
        padding-left: 1em; }
        .p-recruit-sub__relation__col ul li:before {
          content: "・"; }
  .p-recruit-sub__relation__arrow {
    overflow: hidden;
    text-indent: 200%;
    white-space: nowrap;
    width: 100%;
    height: 52px;
    background: url(../img/icn_arrow07.svg) no-repeat center center;
    background-size: 50px 12px; }
  .p-recruit-sub__relation__point {
    background: #FFF;
    padding: 12px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 108px; }
    .p-recruit-sub__relation__point .icon {
      width: 70px;
      height: 70px;
      margin-right: 20px;
      background: #627984;
      border-radius: 35px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      line-height: 1;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #FFF; }
      .p-recruit-sub__relation__point .icon span {
        font-size: 13px; }
      .p-recruit-sub__relation__point .icon i {
        font-size: 20px;
        font-style: normal; }
    .p-recruit-sub__relation__point .desc {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }

/*  こころノート
----------------------------------------------------*/
.p-recruit-sub__note {
  margin: 50px 0 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .p-recruit-sub__note__img {
    width: 165px;
    margin-right: 40px; }
  .p-recruit-sub__note__desc br {
    display: none; }
  .p-recruit-sub__note__head {
    font-size: 20px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 10px; }

/*  あっぱれ制度
----------------------------------------------------*/
.p-recruit-sub__appare__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px; }
  .p-recruit-sub__appare__box:nth-last-child(1) {
    margin-bottom: 0; }

.p-recruit-sub__appare__img {
  width: 200px;
  margin-right: 40px; }
  .p-recruit-sub__appare__img img {
    width: 100%; }

.p-recruit-sub__appare__desc {
  line-height: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  .p-recruit-sub__appare__desc .c-button--type04 {
    margin-top: 20px; }

.p-recruit-sub__appare__head {
  font-size: 20px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #16293d;
  margin-bottom: 10px; }

/*  先輩社員からのメッセージ
----------------------------------------------------*/
.p-recruit-sub__message {
  padding: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url(../img/bg_pattern04.png);
  margin-bottom: 80px; }
  .p-recruit-sub__message.mb0 {
    margin-bottom: 0; }
  .p-recruit-sub__message.mb130 {
    margin-bottom: 130px; }
  .p-recruit-sub__message__img {
    margin-right: 50px; }
    .p-recruit-sub__message__img img {
      width: 100%; }
  .p-recruit-sub__message__desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .p-recruit-sub__message__name {
    font-size: 32px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 10px; }
  .p-recruit-sub__message__grad {
    line-height: 2;
    margin-bottom: 30px; }
  .p-recruit-sub__message__copy {
    font-size: 24px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 15px; }
  .p-recruit-sub__message__answer li {
    margin-bottom: 50px; }
    .p-recruit-sub__message__answer li:nth-last-child(1) {
      margin-bottom: 0; }
    .p-recruit-sub__message__answer li span {
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      display: block;
      width: 60px;
      height: 60px;
      background: #16293d;
      color: #FFF;
      float: left;
      margin-right: 15px;
      line-height: 55px;
      font-size: 24px;
      text-align: center; }

/*  ベテランにきいてみよう！
----------------------------------------------------*/
.p-recruit-sub__question {
  padding: 50px;
  margin-bottom: 80px;
  border: 1px solid #16293d; }
  .p-recruit-sub__question__ol {
    counter-reset: num;
    list-style-type: none; }
    .p-recruit-sub__question__ol li {
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      font-size: 21px;
      line-height: 2; }
      .p-recruit-sub__question__ol li:before {
        font-size: 29px;
        counter-increment: num;
        content: "Q" counter(num) ".";
        padding-right: 0.5em; }

/*  説明会情報
----------------------------------------------------*/
.p-recruit-sub__date {
  background: rgba(60, 106, 83, 0.1);
  padding: 60px;
  text-align: center;
  margin-bottom: 50px; }
  .p-recruit-sub__date br {
    display: none; }
  .p-recruit-sub__date__head--type01 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 40px;
    color: #ea1c24;
    line-height: 1.4; }
  .p-recruit-sub__date__head--type02 {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 24px;
    color: #16293d;
    line-height: 1.4; }
  .p-recruit-sub__date__head--type03 {
    display: block;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 24px;
    color: #ea1c24;
    margin-bottom: 20px; }
    .p-recruit-sub__date__head--type03 br {
      display: none; }

/*  マイナビエリア
----------------------------------------------------*/
.p-recruit-sub__mynavi {
  width: 600px;
  margin: 0 auto 80px;
  text-align: center; }
  .p-recruit-sub__mynavi.mb0 {
    margin-bottom: 0; }
  .p-recruit-sub__mynavi__head {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 28px;
    color: #16293d;
    margin-bottom: 20px; }
    .p-recruit-sub__mynavi__head br {
      display: none; }
  .p-recruit-sub__mynavi__bnr {
    width: 300px;
    margin: 0 auto 30px; }
    .p-recruit-sub__mynavi__bnr img {
      width: 100%; }
    .p-recruit-sub__mynavi__bnr a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
      .p-recruit-sub__mynavi__bnr a:hover, .p-recruit-sub__mynavi__bnr a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
  .p-recruit-sub__mynavi__notice {
    text-align: left; }
    .p-recruit-sub__mynavi__notice li {
      text-indent: -1em;
      padding-left: 1em;
      line-height: 1.8; }
      .p-recruit-sub__mynavi__notice li:before {
        content: "※"; }

/*  連絡先
----------------------------------------------------*/
.p-recruit-sub__contact {
  background: url(../img/bg_pattern04.png);
  padding: 30px;
  text-align: center;
  margin-bottom: 50px; }
  .p-recruit-sub__contact__head {
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 24px;
    color: #16293d;
    margin-bottom: 10px; }
  .p-recruit-sub__contact__tel {
    letter-spacing: 0.2em;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 32px;
    color: #16293d;
    margin: 5px 0 15px; }
    .p-recruit-sub__contact__tel span {
      letter-spacing: 0.08em; }

/*  募集要項
----------------------------------------------------*/
.p-recruit-sub__table {
  margin-bottom: 80px; }
  .p-recruit-sub__table table {
    border-top: 1px solid #d4d7d8; }
    .p-recruit-sub__table table tr th, .p-recruit-sub__table table tr td {
      padding: 10px;
      border-bottom: 1px solid #d4d7d8; }
    .p-recruit-sub__table table tr th {
      font-weight: normal;
      vertical-align: top;
      width: 220px; }
    .p-recruit-sub__table table tr td > p {
      line-height: 1.8; }
      .p-recruit-sub__table table tr td > p.point {
        text-indent: -1em;
        padding-left: 1em; }
        .p-recruit-sub__table table tr td > p.point:before {
          content: "・"; }
      .p-recruit-sub__table table tr td > p.kome {
        text-indent: -1em;
        padding-left: 1em; }
        .p-recruit-sub__table table tr td > p.kome:before {
          content: "※"; }
      .p-recruit-sub__table table tr td > p.square {
        text-indent: -1em;
        padding-left: 1em; }
        .p-recruit-sub__table table tr td > p.square:before {
          content: "■"; }
      .p-recruit-sub__table table tr td > p.mt10 {
        margin-top: 8px; }

/*  応募・選考の流れ
----------------------------------------------------*/
.p-recruit-sub__flow {
  background: rgba(60, 106, 83, 0.1);
  padding: 58px 40px 40px;
  position: relative;
  margin-bottom: 88px; }
  .p-recruit-sub__flow:before {
    position: absolute;
    content: "";
    top: 100%;
    left: 50%;
    margin-left: -35px;
    border: 35px solid transparent;
    border-top: 30px solid rgba(60, 106, 83, 0.1); }
  .p-recruit-sub__flow.last {
    margin-bottom: 100px; }
    .p-recruit-sub__flow.last:before {
      display: none; }
  .p-recruit-sub__flow__step {
    position: absolute;
    left: 50%;
    top: -38px;
    display: block;
    width: 76px;
    height: 76px;
    margin-left: -38px;
    background: #627984;
    border-radius: 38px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 13px;
    color: #FFF;
    text-align: center;
    line-height: 71px; }
    .p-recruit-sub__flow__step i {
      margin-left: 0.1em;
      font-style: normal;
      font-size: 20px; }
  .p-recruit-sub__flow__head {
    text-align: center;
    font-size: 24px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    margin-bottom: 30px; }
  .p-recruit-sub__flow__btns {
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .p-recruit-sub__flow__btns .btn_mynavi {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      width: 200px;
      margin-right: 30px; }
      .p-recruit-sub__flow__btns .btn_mynavi:hover, .p-recruit-sub__flow__btns .btn_mynavi:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }

/*  2カラムボックス
----------------------------------------------------*/
.p-recruit-sub__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 80px; }
  .p-recruit-sub__col2:nth-last-child(1) {
    margin-bottom: 0; }
  .p-recruit-sub__col2--type01__dl {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-right: 60px; }
    .p-recruit-sub__col2--type01__dl dt {
      font-weight: bold;
      margin-bottom: 1em;
      padding-left: 40px;
      text-indent: -40px; }
      .p-recruit-sub__col2--type01__dl dt:before {
        text-indent: 0;
        display: inline-block;
        width: 40px;
        font-size: 24px;
        content: "Q.";
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        color: #16293d;
        font-weight: bold; }
    .p-recruit-sub__col2--type01__dl dd {
      line-height: 2;
      padding-left: 40px;
      text-indent: -40px; }
      .p-recruit-sub__col2--type01__dl dd:before {
        text-indent: 0;
        display: inline-block;
        width: 40px;
        font-size: 24px;
        content: "A.";
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        color: #16293d;
        font-weight: bold; }
  .p-recruit-sub__col2--type01__img {
    width: calc(33.3% - 30px); }
    .p-recruit-sub__col2--type01__img img {
      width: 100%; }
  .p-recruit-sub__col2--type01__caption {
    margin-top: 15px;
    text-align: center; }
  .p-recruit-sub__col2--type01--invert .p-recruit-sub__col2--type01__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding-right: 0;
    padding-left: 45px; }
  .p-recruit-sub__col2--type01--invert .p-recruit-sub__col2--type01__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0; }
  .p-recruit-sub__col2--type02__desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: 80px; }
    .p-recruit-sub__col2--type02__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-recruit-sub__col2--type02__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-recruit-sub__col2--type02__ul {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-bottom: 20px;
    margin-right: 80px; }
    .p-recruit-sub__col2--type02__ul li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-recruit-sub__col2--type02__ul li:before {
        content: "・"; }
  .p-recruit-sub__col2--type02__img {
    width: calc(50% - 30px);
    max-width: 500px; }
    .p-recruit-sub__col2--type02__img img {
      width: 100%; }
  .p-recruit-sub__col2--type03__desc {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-left: 80px; }
    .p-recruit-sub__col2--type03__desc p {
      line-height: 2.0;
      margin-bottom: 20px; }
    .p-recruit-sub__col2--type03__desc .c-button--type03 {
      margin: 40px 0 20px; }
  .p-recruit-sub__col2--type03__ul {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-bottom: 20px;
    margin-left: 80px; }
    .p-recruit-sub__col2--type03__ul li {
      text-indent: -1em;
      padding-left: 1em; }
      .p-recruit-sub__col2--type03__ul li:before {
        content: "・"; }
  .p-recruit-sub__col2--type03__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: calc(50% - 30px);
    max-width: 500px; }
    .p-recruit-sub__col2--type03__img img {
      width: 100%; }
  .p-recruit-sub__col2--type04 {
    margin-bottom: 40px; }
    .p-recruit-sub__col2--type04__desc {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      padding-right: 50px;
      line-height: 2; }
    .p-recruit-sub__col2--type04__img {
      width: 500px; }
      .p-recruit-sub__col2--type04__img img {
        width: 100%; }

/*  3カラムボックス
----------------------------------------------------*/
.p-recruit-sub__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px; }
  .p-recruit-sub__col3--type01 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; }
    .p-recruit-sub__col3--type01__img {
      width: calc(33.3% - 30px); }
      .p-recruit-sub__col3--type01__img:nth-last-child(1), .p-recruit-sub__col3--type01__img:nth-last-child(2) {
        margin-bottom: 0; }
      .p-recruit-sub__col3--type01__img img {
        width: 100%; }
      .p-recruit-sub__col3--type01__img__caption {
        padding: 10px 0;
        text-align: center; }
      .p-recruit-sub__col3--type01__img__desc {
        font-size: 15px; }

/*====================================================

  otokomae:13.男前グランプリ

====================================================*/
.page-otokomae {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-otokomae #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }
    .page-otokomae #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

.p-otokomae-index__list {
  width: 1200px;
  margin: 0 auto 120px;
  padding: 60px 0;
  background: url(../img/bg_pattern04.png); }
  .p-otokomae-index__list__head {
    font-size: 20px;
    margin-bottom: 30px;
    text-align: center;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d; }
  .p-otokomae-index__list__item {
    width: 850px;
    margin: 0 auto 20px; }
  .p-otokomae-index__list__bnr {
    margin-bottom: 20px; }
    .p-otokomae-index__list__bnr a {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
      .p-otokomae-index__list__bnr a:hover, .p-otokomae-index__list__bnr a:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
  .p-otokomae-index__list__btn .c-button--type07 {
    margin-left: auto;
    margin-right: 0; }

/*====================================================

  privacy:13.プライバシーポリシー

====================================================*/
.page-privacy {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-privacy #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }
    .page-privacy #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

.p-privacy-index__policy {
  width: 1200px;
  margin: 0 auto 120px;
  padding: 60px 0; }
  .p-privacy-index__policy__ol {
    counter-reset: num;
    list-style-type: none; }
    .p-privacy-index__policy__ol li {
      text-indent: -0.8em;
      padding-left: 2em;
      margin-bottom: 50px; }
      .p-privacy-index__policy__ol li:before {
        counter-increment: num;
        content: counter(num) "."; }
  .p-privacy-index__policy__signature {
    text-align: right;
    margin-bottom: 100px; }
  .p-privacy-index__policy__contact {
    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; }
    .p-privacy-index__policy__contact__head {
      line-height: 1;
      font-size: 22px;
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      color: #16293d;
      text-align: center; }
  .p-privacy-index__policy__tel, .p-privacy-index__policy__mail {
    width: 570px;
    height: 300px;
    background: url(../img/bg_pattern04.png);
    padding: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -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;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .p-privacy-index__policy__tel .center, .p-privacy-index__policy__mail .center {
      margin: 25px 0;
      width: 100%;
      text-align: center; }
  .p-privacy-index__policy__tel .tel {
    letter-spacing: 0.2em;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 36px;
    color: #16293d; }
    .p-privacy-index__policy__tel .tel span {
      font-size: 22px;
      letter-spacing: 0.08em; }
  .p-privacy-index__policy__tel .fax {
    letter-spacing: 0.2em;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 30px;
    color: #16293d; }
    .p-privacy-index__policy__tel .fax span {
      font-size: 22px;
      letter-spacing: 0.08em; }

/*====================================================

  contact:10.プライバシーポリシー

====================================================*/
.page-contact {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-contact #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }
    .page-contact #pageWrap.sub {
      background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
      background-position: top -60px right -160px, top 1970px left 60px;
      background-repeat: no-repeat, no-repeat;
      background-size: 850px 850px, 850px 286px; }

.p-contact-index.pt80 {
  padding-top: 80px; }

.p-contact-index .c-pageHead {
  padding-bottom: 80px; }

.p-contact-index__box {
  background: url(../img/bg_pattern04.png);
  width: 1200px;
  margin: 0 auto 100px;
  padding: 60px; }
  .p-contact-index__box .hissu {
    color: #ff0000; }

.p-contact-index__head {
  line-height: 1;
  padding: 16px;
  font-size: 24px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #FFF;
  background: #16293d;
  text-align: center;
  margin-bottom: 60px; }
  .p-contact-index__head--type02 {
    color: #16293d;
    font-size: 34px;
    text-align: center;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    margin-bottom: 60px; }
    .p-contact-index__head--type02 br {
      display: none; }

.p-contact-index__lead {
  text-align: center;
  margin-bottom: 60px; }

.p-contact-index__tel {
  text-align: center; }
  .p-contact-index__tel .tel {
    line-height: 1;
    margin-bottom: 20px;
    letter-spacing: 0.2em;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 50px;
    color: #16293d; }
    .p-contact-index__tel .tel span {
      font-size: 26px;
      letter-spacing: 0.08em; }
  .p-contact-index__tel .fax {
    letter-spacing: 0.2em;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 38px;
    color: #16293d; }
    .p-contact-index__tel .fax span {
      font-size: 26px;
      letter-spacing: 0.08em; }

.p-contact-index__form {
  margin-bottom: 80px;
  width: 100%;
  border-top: 1px solid #d4d7d8; }
  .p-contact-index__form tr th, .p-contact-index__form tr td {
    padding: 15px 0;
    border-bottom: 1px solid #d4d7d8; }
  .p-contact-index__form tr th {
    width: 280px;
    font-weight: normal; }
  .p-contact-index__form input[type="text"],
  .p-contact-index__form input[type="email"] {
    height: 32px;
    width: 550px;
    border: 1px solid #808080;
    padding: 5px; }
    .p-contact-index__form input[type="text"].tel,
    .p-contact-index__form input[type="email"].tel {
      width: 340px; }
  .p-contact-index__form textarea {
    width: 100%;
    padding: 5px;
    height: 165px; }
  .p-contact-index__form label {
    margin-right: 20px; }
    .p-contact-index__form label:nth-last-child(1) {
      margin-right: 0; }
  .p-contact-index__form .service {
    margin-top: 10px; }
  .p-contact-index__form .cols li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 10px; }
    .p-contact-index__form .cols li p {
      margin-right: 20px; }
  .p-contact-index__form__box {
    padding: 40px;
    background: rgba(60, 106, 83, 0.05); }
    .p-contact-index__form__box p {
      text-align: center; }
    .p-contact-index__form__box .c-button--type04 {
      margin: 20px auto; }
  .p-contact-index__form__chk {
    padding-top: 10px;
    text-align: center; }
  .p-contact-index__form__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .p-contact-index__form__btns .prev {
      margin-right: 28px; }

/*====================================================

  magazine:??.広報誌

====================================================*/
.page-magazine {
  background: url(/img/bg_pattern02.png) repeat 0 0; }
  .page-magazine #pageWrap {
    background-image: url(/img/bg_page01.svg), url(/img/bg_home02.svg);
    background-position: top -60px right -160px, top 1970px left 60px;
    background-repeat: no-repeat, no-repeat;
    background-size: 850px 850px, 850px 286px; }

/*----------------------------------------------------
    .p-magazine
----------------------------------------------------*/
.p-magazine .p-magazine__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url(/img/bg_pattern04.png); }

.p-magazine--type01 .p-magazine__desc, .p-magazine--type03 .p-magazine__desc {
  padding: 40px 0 20px 65px; }

.p-magazine--type02 .p-magazine__wrap, .p-magazine--type04 .p-magazine__wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.p-magazine--type02 .p-magazine__desc, .p-magazine--type04 .p-magazine__desc {
  padding: 40px 65px 20px 0; }

/*  p-magazine__head
----------------------------------------------------*/
.p-magazine__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  position: relative;
  margin-bottom: 20px; }
  .p-magazine__head .p-magazine__head__main {
    display: block;
    position: absolute;
    top: 0;
    left: 30px;
    height: 250px;
    margin-left: 5px;
    line-height: 1.2;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 40px;
    font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #16293d;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }
  .p-magazine__head .p-magazine__head__sub {
    display: block;
    letter-spacing: 0.15em;
    font-weight: normal;
    font-size: 12px;
    font-family: "EB Garamond", serif;
    color: #16293d;
    -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
            writing-mode: vertical-lr; }

/*  p-magazine-index__list
----------------------------------------------------*/
.p-magazine-index__list {
  width: 1200px;
  margin: 0 auto 120px;
  padding: 60px 80px 80px;
  background: url(../img/bg_pattern04.png); }
  .p-magazine-index__list_in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: -60px; }
  .p-magazine-index__list_lead {
    text-align: center;
    margin-bottom: 60px; }
    .p-magazine-index__list_lead--red {
      color: #FF0000; }
  .p-magazine-index__list__item {
    width: calc( (100% - 240px)/4);
    margin-right: 80px;
    margin-bottom: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-decoration: none !important; }
    .p-magazine-index__list__item:hover {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear; }
      .p-magazine-index__list__item:hover:hover, .p-magazine-index__list__item:hover:focus {
        filter: alpha(opacity=70);
        opacity: 0.7; }
    .p-magazine-index__list__item:nth-child(4n) {
      margin-right: 0; }
  .p-magazine-index__list__head {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    color: #000;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
    font-weight: 500; }
  .p-magazine-index__list__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    border: 1px solid #dcdcdc;
    margin-bottom: 10px; }
    .p-magazine-index__list__img img {
      width: 100%; }
  .p-magazine-index__list__btn .c-button--type07 {
    margin-left: auto;
    margin-right: 0; }
  .p-magazine-index__list .c-pager {
    margin-bottom: 60px; }

/*  p-magazine-index__adobereader
----------------------------------------------------*/
.p-magazine-index__adobereader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(60, 106, 83, 0.05);
  padding: 20px 30px; }
  .p-magazine-index__adobereader a {
    display: block;
    width: 158px;
    height: 40px;
    margin-right: 30px; }
  .p-magazine-index__adobereader__desc {
    font-size: 15px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    color: #000; }

/*----------------------------------------------------
    float
----------------------------------------------------*/
.fll {
  float: left !important; }

img.fll {
  margin: 0 10px 10px 0 !important; }

.flr {
  float: right !important; }

img.flr {
  margin: 0 0 10px 10px !important; }

.clb {
  clear: both !important; }

/*----------------------------------------------------
    table
----------------------------------------------------*/
.tlf {
  table-layout: fixed !important; }

.tac-t th, .tac-t td {
  text-align: center !important; }

/*----------------------------------------------------
    boder-radius
----------------------------------------------------*/
.bdrs9 img {
  border-radius: 9px !important; }

.bdrs9 {
  border-radius: 9px !important; }

.bdrs4 img {
  border-radius: 4px !important; }

.bdrs4 {
  border-radius: 4px !important; }

/*----------------------------------------------------
    text
----------------------------------------------------*/
.tac {
  text-align: center !important; }

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

.tal {
  text-align: left !important; }

.bold, .fwb {
  font-weight: bold !important; }

.fwn {
  font-weight: normal !important; }

.ti, .ti p {
  text-indent: 1em !important; }

.ttu {
  text-transform: uppercase !important; }

.ttl {
  text-transform: lowercase !important; }

.whsnw {
  white-space: nowrap !important; }

.whsn {
  white-space: normal !important; }

.ti1em {
  text-indent: 1em !important; }

.vam {
  vertical-align: middle !important; }

.lh21 {
  line-height: 2.1 !important; }

.lh24 {
  line-height: 2.4 !important; }

.ls1em {
  letter-spacing: 1em !important; }

/*----------------------------------------------------
    font size
----------------------------------------------------*/
.fz10 {
  font-size: 10px !important; }

.fz11 {
  font-size: 11px !important; }

.fz12 {
  font-size: 12px !important; }

.fz13 {
  font-size: 13px !important; }

.fz14 {
  font-size: 14px !important; }

.fz15 {
  font-size: 15px !important; }

.fz16 {
  font-size: 16px !important; }

.fz17 {
  font-size: 17px !important; }

.fz18 {
  font-size: 18px !important; }

.fz19 {
  font-size: 19px !important; }

.fz20 {
  font-size: 20px !important; }

.fz21 {
  font-size: 21px !important; }

.fz22 {
  font-size: 22px !important; }

.fz23 {
  font-size: 23px !important; }

.fz24 {
  font-size: 24px !important; }

.fz25 {
  font-size: 25px !important; }

.fz26 {
  font-size: 26px !important; }

.fz27 {
  font-size: 27px !important; }

.fz28 {
  font-size: 28px !important; }

.fz29 {
  font-size: 29px !important; }

.fz30 {
  font-size: 30px !important; }

.fz42 {
  font-size: 42px !important; }

.fz46 {
  font-size: 46px !important; }

.fz50 {
  font-size: 50px !important; }

.fz52 {
  font-size: 52px !important; }

/*----------------------------------------------------
    b
----------------------------------------------------*/
.c-b--type01 {
  color: #e60012;
  font-weight: normal; }

/*----------------------------------------------------
    font color
----------------------------------------------------*/
.c-color--type01 {
  color: #c43d5e; }

/*----------------------------------------------------
    br
----------------------------------------------------*/
.br--largeOver {
  display: none; }

.br--large {
  display: none; }

.br--medium {
  display: none; }

.br--tablet {
  display: none; }

.br--small {
  display: none; }

.br--xsmall {
  display: none; }

.br--vp320 {
  display: none; }

/*----------------------------------------------------
    width, height
----------------------------------------------------*/
.w120 {
  width: 120px !important; }

.w160 {
  width: 160px !important; }

.w180 {
  width: 180px !important; }

.w240 {
  width: 240px !important; }

.w300 {
  width: 300px !important; }

.w340 {
  width: 340px !important; }

.w50p {
  width: 50% !important; }

.w100p {
  width: 100% !important; }

/*----------------------------------------------------
    margin, padding
----------------------------------------------------*/
/*  margin
----------------------------------------------------*/
.mt15 {
  margin-top: 15px !important; }

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

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

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

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

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

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

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

.mt120 {
  margin-top: 120px !important; }

.mb120 {
  margin-bottom: 120px !important; }

.mt1em, .mt1em__p p {
  margin-top: 1em !important; }

.mt2em, .mt2em__p p {
  margin-top: 2em !important; }

.mt3em, .mt3em__p p {
  margin-top: 3em !important; }

.mt1em__p p:first-child,
.mt2em__p p:first-child,
.mt3em__p p:first-child {
  margin-top: 0 !important; }

.mb1em, .mb1em__p p {
  margin-bottom: 1em !important; }

.mb2em, .mb2em__p p {
  margin-bottom: 2em !important; }

.mb3em, .mb3em__p p {
  margin-bottom: 3em !important; }

.mb1em__p p:last-child,
.mb2em__p p:last-child,
.mb3em__p p:last-child {
  margin-bottom: 0 !important; }

/*  padding
----------------------------------------------------*/
.pt15 {
  padding-top: 15px !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.pt120 {
  padding-top: 120px !important; }

.pb120 {
  padding-bottom: 120px !important; }

.pl120 {
  padding-left: 120px !important; }

/*----------------------------------------------------
    CSS ロールオーバー
----------------------------------------------------*/
.ro {
  display: inline-block;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear; }
  .ro:hover {
    filter: alpha(opacity=80);
    opacity: 0.8; }

.ro:hover img {
  filter: alpha(opacity=80);
  opacity: 0.8; }

.rot {
  display: inline-block;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear; }
  .rot:hover, .rot:focus {
    filter: alpha(opacity=70);
    opacity: 0.7; }

/*----------------------------------------------------
    micro clearfix
----------------------------------------------------*/
.cf:before, .cf:after {
  display: table;
  content: " "; }

.cf:after {
  clear: both; }

.cf {
  *zoom: 1; }

@media screen and (max-width: 480px) {
  body {
    font-size: 14px !important; }
        .pNav__container li {
          width: 31%; }
          .pNav__container li a {
            display: block;
            font-size: 13px; }
            .pNav__container li a:link, .pNav__container li a:visited, .pNav__container li a:hover, .pNav__container li a:active, .pNav__container li a:focus {
              text-decoration: none; }
            .pNav__container li a span {
              display: none; }
          .pNav__container li:nth-child(1) a {
            width: 100%;
            padding: 10px 3px;
            background: #16293d;
            text-align: center;
            color: #FFF; }
          .pNav__container li:nth-child(2) a {
            width: 100%;
            padding: 10px 3px;
            background: #16293d;
            text-align: center;
            color: #FFF; }
            .pNav__container li:nth-child(3) a {
              width: 100%;
              padding: 10px 3px;
              background: #16293d;
              text-align: center;
              color: #FFF; }
      .c-head--type01 .c-head__main {
        font-size: 31px; }
      .c-head--type01 .c-head__sub {
        font-size: 11px; }
    .c-head--type03 {
      font-size: 26px; }
    .c-head--type03 {
      margin-bottom: 20px;
      font-size: 26px; }
    .c-head--type04 {
      font-size: 13px; }
    .c-head--type04 {
      margin-bottom: 20px; }
    .c-head--type05 {
      font-size: 18px; }
    .c-head--type06 {
      font-size: 16px; }
    .c-head--type07 {
      font-size: 20px; }
      .c-head--type08 .p-coursePicText__headText {
        font-size: 20px; }
    .c-section {
      margin-top: 45px; }
      .c-index--type01:after {
        width: 100%; }
      .c-index--type01 .c-index__item {
        width: 100%; }
      .c-col3--type02 .c-columns__item {
        width: 100%; }
      .c-banner--type02 .c-banner__container {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        margin-top: -10px; }
      .c-banner--type02 .c-banner__item {
        width: calc(100% / 2 - (15px * (2 - 1) / 2));
        margin-top: 15px;
        margin-left: 15px; }
        .c-banner--type02 .c-banner__item:nth-child(3n+1) {
          margin-left: 15px; }
        .c-banner--type02 .c-banner__item:nth-child(2n+1) {
          margin-left: 0; }
        .c-pic-text__picture--type01 {
          width: 100%; }
        .c-pic-text__picture--type02 {
          width: 100%; }
        .c-pic-text__picture--type03 {
          width: 100%; }
    .c-link--type02 {
      font-size: 15px; }
    .c-link--type05 {
      font-size: 16px; }
    .c-link--type05 {
      padding-top: 18px;
      padding-bottom: 18px; }
  .c-tmp--type01 {
    width: 100%; }
      .c-form__link--type01, .c-form__link--type02 {
        width: 80%; }
        .c-form__link--type01 input, .c-form__link--type02 input {
          width: 100%; }
    .p-mv__copy--type02 {
      width: 100%;
      left: 0;
      text-align: center;
      margin-left: 0; }
      .c-qa__answer img, .c-qa__question img {
        width: 36px; }
    .c-qa__question {
      font-size: 18px; }
    .page-news-detail .c-news__headInfo {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
      .page-news-detail .c-news__category {
        width: 100%; }
      .page-news-detail .c-news__category + .c-news__category {
        margin-left: 0; }
    .page-news-detail .c-news__label {
      margin-right: 3px; }
      .page-news-detail .c-news__label + .c-news__label {
        margin-left: 0; }
      .page-news-detail .c-news__label + .c-news__label {
        margin-top: 3px; }
    .page-news-detail .c-columns__main img {
      width: 100%; }
  .page-news-detail .c-columns__main .alignleft, .page-news-detail .c-columns__main .alignright {
    width: 100%; }
      .c-instagram__item.is-inactive {
        padding-top: calc(100% / 2 - 12px); }
    .c-instagram--type01 .c-instagram__item {
      width: calc(100% / 2 - 10px); }
    .c-instagram--type02 .c-instagram__item {
      width: calc(100% / 3 - 8px);
      height: 100%;
      padding-top: calc(100% / 3 - 8px); }
      .c-instagram--type02 .c-instagram__item.is-inactive {
        padding-top: calc(100% / 3 - 8px); }
    .p-network__map__inner {
      width: 300px; }
      .p-network__map__inner .p-network__marker--type01 {
        top: 30px;
        left: 141px; }
      .p-network__map__inner .p-network__marker--type02 {
        top: 0;
        left: 47px; }
      .p-network__map__inner .p-network__marker--type03 {
        top: -4px;
        left: 184px; }
      .p-network__map__inner .p-network__marker--type04 {
        top: 13px;
        left: 106px; }
      .p-network__map__inner .p-network__marker--type05 {
        top: 3px;
        left: 154px; }
    .br--xsmall {
      display: inline-block !important; }
  .mt15md {
    margin-top: 15px !important; }
  .mb15md {
    margin-bottom: 15px !important; }
  .mt30md {
    margin-top: 30px !important; }
  .mb30md {
    margin-bottom: 30px !important; }
  .mt40md {
    margin-top: 40px !important; }
  .mb40md {
    margin-bottom: 40px !important; }
  .mt60md {
    margin-top: 60px !important; }
  .mb60md {
    margin-bottom: 60px !important; }
  .mt120md {
    margin-top: 120px !important; }
  .mb120md {
    margin-bottom: 120px !important; }
  .mt15sm {
    margin-top: 15px !important; }
  .mb15sm {
    margin-bottom: 15px !important; }
  .mt30sm {
    margin-top: 30px !important; }
  .mb30sm {
    margin-bottom: 30px !important; }
  .mt40sm {
    margin-top: 40px !important; }
  .mb40sm {
    margin-bottom: 40px !important; }
  .mt60sm {
    margin-top: 60px !important; }
  .mb60sm {
    margin-bottom: 60px !important; }
  .mt120sm {
    margin-top: 120px !important; }
  .mb120sm {
    margin-bottom: 120px !important; }
  .mt15xs {
    margin-top: 15px !important; }
  .mb15xs {
    margin-bottom: 15px !important; }
  .mt30xs {
    margin-top: 30px !important; }
  .mb30xs {
    margin-bottom: 30px !important; }
  .mt40xs {
    margin-top: 40px !important; }
  .mb40xs {
    margin-bottom: 40px !important; }
  .mt60xs {
    margin-top: 60px !important; }
  .mb60xs {
    margin-bottom: 60px !important; }
  .mt120xs {
    margin-top: 120px !important; }
  .mb120xs {
    margin-bottom: 120px !important; } }

@media screen and (max-width: 374px) {
  body {
    font-size: 13px !important; }
      .c-banner--type02 .c-banner__item {
        width: calc(100% - 40px);
        margin-right: 0;
        margin-left: 0; }
        .c-banner--type02 .c-banner__item:nth-child(3n+1) {
          margin-left: 0; } }

@media screen and (max-width: 600px) {
    .header {
      height: 60px; }
    .hdLogo {
      top: 20px; }
      .hdLogo a {
        height: 36px; }
    .footer__info {
      margin-bottom: 0; }
    .footer__logo {
      width: 155px;
      margin-bottom: 20px;
      text-align: center; }
      .spNav .spNav__wrap {
        right: calc(-100% + 19px);
        width: calc(100% - 19px);
        height: calc(100% - 70px);
        margin-top: 70px; }
        .spNav .spNav__wrap.is-open {
          border-left: 1px solid #FFF;
          -webkit-transform: translateX(-100%);
              -ms-transform: translateX(-100%);
                  transform: translateX(-100%); }
    .gNavSp__bg {
      right: calc(-100% + 19px);
      width: calc(100% - 19px);
      height: 70px; }
      .gNavSp__bg.is-open {
        border-left: 1px solid #FFF;
        -webkit-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
                transform: translateX(-100%); }
    .gNavSp__btn {
      top: 6px;
      right: 10px; }
        .spNav__container li.spNav__item--lv01 a {
          padding: 16px 0 16px 35px;
          line-height: 16px;
          font-size: 13px; }
        .spNav__container li.spNav__item--lv01.is-sub_exist a {
          width: calc(100% - 48px); }
        .spNav__container li.spNav__item--lv01.is-sub_exist button {
          width: 48px;
          height: 49px;
          background-size: 6px 12px; }
          .spNav__container li.spNav__item--lv01.is-sub_exist button.is-open {
            background-size: 12px 6px; }
    .oNav {
      padding-top: 60px; }
      .oNav__wrap {
        top: 60px;
        height: calc(100% - 60px); }
    .oNav__button--type01 {
      width: 60px;
      height: 60px; }
        .oNav__button--type01 button span {
          width: 6px;
          height: 6px; }
          .oNav__button--type01 button span:nth-of-type(1) {
            top: 9px;
            left: 15px; }
          .oNav__button--type01 button span:nth-of-type(2) {
            top: 21px;
            left: 15px; }
          .oNav__button--type01 button span:nth-of-type(3) {
            top: 33px;
            left: 15px; }
          .oNav__button--type01 button span:nth-of-type(4) {
            top: 9px;
            left: 27px; }
          .oNav__button--type01 button span:nth-of-type(5) {
            top: 21px;
            left: 27px; }
          .oNav__button--type01 button span:nth-of-type(6) {
            top: 33px;
            left: 27px; }
          .oNav__button--type01 button span:nth-of-type(7) {
            top: 9px;
            left: 39px; }
          .oNav__button--type01 button span:nth-of-type(8) {
            top: 21px;
            left: 39px; }
          .oNav__button--type01 button span:nth-of-type(9) {
            top: 33px;
            left: 39px; }
        .oNav__button--type01 button .oNav__label {
          top: 46px;
          width: 30px;
          height: 6px; }
      .oNav__button--type01 button.is-open span:nth-of-type(2) {
        top: 27px;
        left: 21px; }
      .oNav__button--type01 button.is-open span:nth-of-type(4) {
        top: 15px;
        left: 21px; }
      .oNav__button--type01 button.is-open span:nth-of-type(6) {
        top: 27px;
        left: 33px; }
      .oNav__button--type01 button.is-open span:nth-of-type(8) {
        top: 15px;
        left: 33px; }
        .sNav__container--type01 .sNav__item {
          padding: 8px 0; }
          .sNav__container--type01 .sNav__item a {
            background-position: left top 6px;
            font-size: 14px; }
        .sNav__container--type02 .sNav__item {
          padding: 8px 0; }
          .sNav__container--type02 .sNav__item a {
            background-position: left top 6px;
            font-size: 14px; }
          .sNav__container--type03 .sNav__item > a {
            background-position: right 2px top 17px;
            font-size: 14px; }
    .pageTop__wrap {
      padding-top: 60px; }
    #pageTop {
      width: 44px;
      height: 44px; }
    .c-main--type01 {
      padding: 40px 0; }
      .c-head--type01 .c-head__main {
        font-size: 33px; }
      .c-head--type01 .c-head__sub {
        font-size: 12px; }
    .c-head--type03 {
      font-size: 28px; }
    .c-head--type03 {
      font-size: 28px; }
    .c-head--type04 {
      font-size: 14px; }
    .c-head--type05 {
      font-size: 19px; }
    .c-head--type06 {
      font-size: 18px; }
    .c-head--type06 {
      margin-bottom: 20px; }
    .c-head--type07 {
      font-size: 21px; }
      .c-head--type08 .p-coursePicText__headText {
        font-size: 21px; }
    .c-section {
      margin-top: 50px; }
      .c-index--type01:after {
        width: calc(100% / 2 - 10px); }
      .c-index--type01 .c-index__item {
        width: calc(100% / 2 - 10px); }
    .c-col1--type01 {
      width: 100%;
      max-width: 100%; }
    .c-col1--type02 {
      width: 75%;
      max-width: 100%; }
    .c-col2--type01 {
      margin-top: -20px; }
      .c-col2--type01 .c-columns__item {
        width: calc(100% / 2 - 10px);
        margin-top: 20px; }
    .c-col2--type02 {
      margin-top: -15px; }
      .c-col2--type02 .c-columns__item {
        width: calc(100% / 2 - 10px);
        margin-top: 10px; }
      .c-col3--type01 .c-columns__item {
        width: 100%; }
    .c-col3--type02 {
      margin-top: -20px; }
      .c-col3--type02:after {
        display: none; }
      .c-col3--type02 .c-columns__item {
        width: calc(100% / 2 - 10px);
        margin-top: 20px; }
      .c-col4--type01 .c-columns__item {
        width: calc(100% / 2 - 10px);
        margin-top: 20px; }
    .c-col4--type02 {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-top: -30px; }
      .c-col4--type02 .c-columns__item {
        width: 100%;
        margin-top: 30px; }
    .c-banner--type01 {
      margin-bottom: 60px; }
      .c-banner--type01 .c-banner__item {
        width: 100%; }
      .c-banner--type02 .c-banner__container {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
      .c-banner--type02 .c-banner__item {
        width: calc(100% / 2 - (20px * (2 - 1) / 2)); }
        .c-banner--type02 .c-banner__item:nth-child(3n+1) {
          margin-left: 20px; }
        .c-banner--type02 .c-banner__item:nth-child(2n+1) {
          margin-left: 0; }
    .c-button--type01 {
      width: 100%; }
    .c-button--type02 {
      width: 100%; }
      .c-button--type02:nth-child(1) {
        margin-bottom: 10px; }
    .c-button--type04 {
      width: 100%; }
    .c-button--type05 {
      width: 100%;
      background-image: url(/img/icn_next04.svg);
      background-color: #000;
      color: #FFF; }
    .c-button--type06 {
      width: 100%;
      height: 40px;
      line-height: 38px;
      background-position: right 10px top 15px; }
    .c-button--type07 {
      width: 100%; }
    .c-button--type08 {
      width: 100%; }
    .c-pic-text {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      width: 100%; }
      .c-pic-text__picture {
        text-align: center; }
        .c-pic-text__picture--type01 {
          width: 75%;
          margin-right: auto;
          margin-bottom: 30px;
          margin-left: auto; }
        .c-pic-text__picture--type02 {
          width: 75%;
          margin-right: auto;
          margin-left: auto; }
        .c-pic-text__picture--type03 {
          width: 75%;
          margin-right: auto;
          margin-left: auto; }
        .c-pic-text__text--type01 {
          width: 100%; }
        .c-pic-text__text--type02 {
          width: 100%; }
        .c-pic-text__text--type03 {
          width: 100%; }
    .c-pic-text--picLeft01 .c-pic-text__picture {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      margin-right: auto; }
    .c-pic-text--picLeft01 .c-pic-text__picture.c-pic-text__picture--type03 {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      margin-right: auto; }
    .c-pic-text--picLeft01 .c-pic-text__text {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
    .c-pic-text--picRight01 .c-pic-text__picture {
      margin-left: auto; }
    .c-link--type02 {
      font-size: 16px; }
    .c-link--type04 {
      width: 100%;
      padding-right: 40px; }
    .c-link--type05 {
      font-size: 18px; }
    .c-link--type05 {
      padding-top: 20px;
      padding-bottom: 20px; }
    .c-linkWrap--type01 {
      width: 100%; }
    .c-linkWrap--type02 {
      width: 100%; }
    .c-linkWrap--type03 {
      width: 100%; }
    .c-linkWrap--type05 {
      width: 100%; }
    .c-table--type01 {
      display: block; }
      .c-table--type01 tbody, .c-table--type01 tr {
        display: block; }
      .c-table--type01 tr th, .c-table--type01 tr td {
        display: inline-block;
        padding: 0;
        border-bottom: none;
        line-height: 22px; }
      .c-table--type01 tr th {
        width: 80px;
        padding-top: 10px; }
      .c-table--type01 .c-cell--category {
        padding-top: 10px; }
      .c-table--type01 .c-cell--title {
        display: block;
        width: 100%;
        padding: 10px 0;
        border-bottom: 1px solid #d4d4d4; }
      .c-table--type01 .c-cell--title a {
        display: block;
        overflow: hidden;
        width: 100%;
        white-space: nowrap;
        text-overflow: ellipsis; }
  .c-tableWrap--type01 {
    overflow: auto;
    width: 100%; }
    .c-tableWrap--type01 table {
      width: 1000px; }
  .c-tableWrap--type02 {
    overflow: auto;
    width: 100%; }
    .c-tableWrap--type02 table {
      width: 100%; }
    .c-form__agree {
      margin-top: 30px;
      padding: 30px 10px; }
      .c-form__submit--type01 {
        width: 100%; }
      .c-form__submit--type02 {
        width: 100%; }
      .c-carousel .c-carousel__wrap {
        width: 220px; }
      .c-carousel .c-carousel__item {
        width: 220px;
        margin-right: 0;
        margin-left: 0; }
      .c-carousel--type02 .c-carousel__controls button {
        top: 41px;
        top: calc(130px - 52px / 2);
        width: 26px;
        height: 52px;
        background-position: 50% 50%;
        background-size: 50% auto; }
    .p-mv {
      width: 100%;
      height: 200vh; }
      .p-mv__item {
        width: 100%;
        height: 50%; }
        .p-mv__item--type02 {
          top: 50%; }
        .p-mv__wrap--type01 {
          left: 0;
          width: 100%;
          -webkit-transform: translate(0, 0);
              -ms-transform: translate(0, 0);
                  transform: translate(0, 0); }
    .js-mvElement__box {
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0); }
      .is-phase01 .js-mvElement__box {
        -webkit-transform: translateY(-100%);
            -ms-transform: translateY(-100%);
                transform: translateY(-100%); }
    .js-mvElement__logo {
      top: 25%; }
    .p-mv__copy--type01 {
      position: relative;
      width: calc(100% - 20px);
      height: 0; }
    .p-mv__copy--type02 {
      width: auto; }
        .p-mv__copy--type04 .p-mv__copy__wrap span {
          font-size: 16px;
          letter-spacing: 0; }
    .p-mv__news {
      display: block;
      top: 50%;
      right: auto;
      bottom: auto;
      left: 0;
      width: 100%;
      height: 50px;
      margin-top: -70px;
      padding: 0 20px; }
      .p-mv__news tbody, .p-mv__news tr {
        display: block; }
      .p-mv__news td {
        color: #FFF; }
      .p-mv__news a:link, .p-mv__news a:visited, .p-mv__news a:hover, .p-mv__news a:active, .p-mv__news a:focus {
        color: #FFF; }
      .p-mv__news__category--type01 .p-mv__news__label {
        background-color: #FFF; }
    .p-mv__news__category .p-mv__news__label {
      border-radius: 0;
      color: #11263b; }
      .c-categoryHead__outer {
        height: 290px;
        padding-top: 70px; }
        .c-categoryHead__outer:before {
          width: calc(100% - 80px); }
      .c-categoryHead__image__inner {
        height: 200px; }
      .c-categoryHead__inner {
        top: 120px;
        width: 240px;
        height: 100px;
        margin-left: -120px; }
      .c-categoryHead__head {
        width: 240px;
        height: 100px;
        padding: 20px 15px;
        letter-spacing: 0.1em; }
        .c-categoryHead__head .c-categoryHead__title {
          margin-bottom: 10px;
          font-size: 28px; }
      .c-categoryHead__head {
        font-size: 14px; }
        .c-categoryHead__head--type02 {
          padding: 12px; }
          .c-categoryHead__head--type02 .c-categoryHead__title {
            margin-bottom: 3px;
            line-height: 1.05; }
      .c-pageHead.pb50 {
        padding: 40px 0; }
    .c-pageHead {
      padding: 60px 0; }
      .c-pageHead__lead {
        font-size: 14px; }
      .c-pageHead--type01 .c-pageHead__lead {
        text-align: left; }
        .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__title {
          width: 100%;
          margin-bottom: 20px; }
        .c-pageHead--type02 .c-pageHead__wrap .c-pageHead__lead {
          padding-left: 20px;
          font-size: 14px; }
      .c-pageHead--type03 .c-pageHead__title {
        margin-bottom: 15px;
        line-height: 1.2;
        font-size: 25px; }
      .c-pageHead--type04 {
        padding: 20px 0 60px; }
            .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title__main {
              font-size: 30px; }
              .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title__main small {
                font-size: 24px; }
    .topicPath__container {
      display: none; }
      .c-site-search__input {
        padding: 9px 9px 9px 78px;
        background-size: auto 20px; }
    .c-qa__container {
      margin-top: 30px; }
      .c-qa__answer img, .c-qa__question img {
        width: 42px; }
    .c-qa__question {
      font-size: 22px; }
      .c-news__headInfo .c-news__date {
        font-size: 13px; }
        .c-news__headInfo .c-news__headBox .c-head--type02 {
          padding: 8px 10px;
          font-size: 15px; }
        .c-news__headInfo .c-news__headBox .c-news__label {
          top: -30px;
          right: 0; }
      .c-news__headInfo .c-news__tags {
        font-size: 11px; }
      .c-news__headInfo .c-news__category {
        margin-left: 0; }
      .c-news__list th {
        display: inline-block;
        padding-bottom: 8px;
        border: 0; }
    .c-news__list td {
      padding-top: 0;
      padding-left: 0; }
    .c-news__date {
      width: 100px;
      padding-left: 0; }
    .c-news__title {
      display: block; }
      .page-news-detail .c-news__category + .c-news__category {
        margin-left: 20px; }
    .c-news__label {
      margin-right: 3px;
      margin-left: 0;
      padding-right: 10px;
      padding-left: 10px;
      line-height: 20px;
      font-size: 12px; }
      .c-news__label:last-child {
        margin-right: 0; }
    .c-news__info .c-news__linkWrap {
      width: 100%;
      margin-right: 0;
      margin-left: 0; }
      .c-news__info .c-news__linkWrap + .c-news__linkWrap {
        margin-top: 12px; }
      .c-news--home .c-news__index {
        margin-bottom: 15px; }
        .c-news--home .c-news__index li {
          width: 120px;
          -ms-flex-negative: 0;
              flex-shrink: 0; }
          .c-news--home .c-news__index li + li {
            margin-left: 10px; }
      .c-news--home .c-news__container {
        height: 325px; }
    .page-news-detail .c-columns__main .c-news__box {
      margin-bottom: 30px; }
    .page-news-detail .c-columns__main .alignleft {
      float: none;
      margin-right: 0; }
    .page-news-detail .c-columns__main .alignright {
      float: none;
      margin-left: 0; }
  .page-news-detail .c-columns__main .alignleft, .page-news-detail .c-columns__main .alignright {
    width: 75%;
    margin-right: auto;
    margin-left: auto; }
    .c-sns--type01 .c-sns__container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
    .c-sns--type01 .c-sns__item {
      width: 500px;
      margin-right: auto;
      margin-left: auto; }
  .c-sns--type01 .c-sns__instagram {
    margin-top: 30px; }
      .c-instagram__item.is-inactive {
        padding-top: calc(100% / 3 - 12px); }
    .c-instagram--type02 .c-instagram__item {
      width: calc(100% / 4 - 9px);
      height: 100%;
      padding-top: calc(100% / 4 - 9px); }
      .c-instagram--type02 .c-instagram__item.is-inactive {
        padding-top: calc(100% / 4 - 9px); }
      .p-home--type01:after {
        width: 100%;
        background-color: inherit; }
        .p-home--type01 .p-head--type01 .p-head__main, .p-home--type01 .p-head--type01 .p-head__sub {
          color: #11263b; }
      .p-home--type01 .p-home__col--type01 {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .p-home--type01 .p-home__col--type01 .p-home__item {
          width: 100%;
          font-size: 14px; }
          .p-home--type01 .p-home__col--type01 .p-home__item:nth-child(2n) {
            margin-left: 0; }
          .p-home--type01 .p-home__col--type01 .p-home__item img {
            width: 100%;
            height: auto; }
      .p-home--type01 .p-home__link {
        top: inherit;
        right: 0;
        bottom: -40px; }
    .p-home--type02 {
      padding-top: 110px; }
    .p-home--type03 {
      height: 180px; }
      .p-home--type03 img {
        height: 80vw; }
      .p-home--type04 .p-home__wrap {
        position: inherit;
        top: inherit;
        right: inherit;
        left: inherit;
        width: calc(100% - 40px);
        margin: -40px auto 50px;
        padding: 20px; }
        .p-home--type04 .p-home__wrap .p-home__text {
          margin-bottom: 10px;
          padding: 0; }
          .p-home--type04 .p-home__wrap .p-home__text .p-head--type01 {
            margin-bottom: 10px; }
          .p-home--type04 .p-home__wrap .p-home__text p {
            line-height: 1.8;
            font-size: 14px; }
      .p-home--type05 .p-home__wrap {
        width: 100%; }
      .p-home--type05 .p-home__item {
        height: 50vw; }
      .p-home--type05 .p-home__item--type01 .p-home__inner img {
        width: 50%; }
      .p-home--type05 .p-home__item--type02 .p-home__inner img {
        width: 60%; }
    .p-home--type06 {
      padding-top: 150px; }
        .p-home--type06 .p-home__wrap:before, .p-home--type06 .p-home__wrap:after {
          height: 42px; }
        .p-home--type06 .p-home__wrap:before {
          background-image: url(/img/bg_news04.png); }
        .p-home--type06 .p-home__wrap:after {
          background-image: url(/img/bg_news05.png); }
      .p-home--type06 .p-home__link {
        top: inherit;
        bottom: -20px; }
      .p-home--type08:after {
        display: none; }
      .p-home__col--type01 .p-home__item {
        width: 100%; }
        .p-home__col--type01 .p-home__item img {
          width: 100%;
          height: auto; }
      .p-home__col--type02 .p-home__item {
        width: 100%; }
        .p-home__col--type02 .p-home__item img {
          width: 100%;
          height: auto; }
      .p-home__col--type02 .p-home__btn {
        padding-top: 20px; }
    .p-head--type01 .p-head__main {
      margin-bottom: 0;
      font-size: 40px; }
  .page-home .gNavSp__btn button span {
    background-color: #FFF; }
  .page-home .gNavSp__btn button.is-scroll span {
    background-color: #11263b; }
      .page-service #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
    .p-service__img {
      width: 100%;
      height: 220px; }
    .p-service__desc {
      width: 100%;
      margin-bottom: 20px; }
      .p-service__head .p-service__head__main {
        font-size: 24px; }
    .p-service__body {
      position: inherit;
      bottom: inherit;
      left: inherit; }
      .p-service__body--type01, .p-service__body--type03 {
        padding: 0; }
      .p-service__body--type02, .p-service__body--type04 {
        padding: 0; }
      .p-service__body p {
        font-size: 14px; }
        .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title .p-service-top__item__img {
          margin-bottom: 10px; }
        .p-service-top__list--type01 .p-service-top__item .p-service-top__item__title span {
          margin-bottom: 10px;
          background-position: left top 6px;
          font-size: 14px; }
        .p-service-top__list--type01 .p-service-top__item p {
          font-size: 14px; }
        .p-service-top__list--type02 .p-service-top__item .p-service-top__item__title span {
          margin-bottom: 10px;
          background-position: left top 6px;
          font-size: 14px; }
      .p-service-top__list--type02 .p-service-top__item p {
        font-size: 12px; }
    .p-service-sub__img--type01 {
      margin-bottom: 30px; }
    .p-service-sub__lead {
      margin-bottom: 40px; }
    .p-service-sub__title--type01 {
      font-size: 20px; }
    .p-service-sub__title--type03 {
      margin-bottom: 20px; }
    .p-service-sub__title--type04 {
      margin-bottom: 20px; }
    .p-service-sub__title--type05 {
      margin-bottom: 20px; }
    .p-service-sub__title--type06 {
      font-size: 18px;
      line-height: 22px;
      padding: 6px;
      margin-bottom: 20px; }
    .p-service-sub__service {
      padding: 20px 20px 1px;
      margin-bottom: 50px; }
      .p-service-sub__service__title--type01 {
        font-size: 28px;
        margin-bottom: 22px; }
      .p-service-sub__service__title--type02 {
        padding-left: 50px;
        font-size: 20px; }
      .p-service-sub__service dl {
        margin-bottom: 10px; }
      .p-service-sub__service ol {
        margin-bottom: 30px; }
          .p-service-sub__service ol li:before {
            font-size: 16px; }
          .p-service-sub__service ol li span {
            font-size: 16px; }
    .p-service-sub__facilities {
      padding: 20px;
      margin-bottom: 40px;
      margin-top: 40px; }
      .p-service-sub__facilities__title--type01 {
        margin-bottom: 22px; }
      .p-service-sub__facilities__list {
        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; }
        .p-service-sub__facilities__list a, .p-service-sub__facilities__list span {
          width: inherit;
          margin-bottom: 10px; }
          .p-service-sub__facilities__list a:before, .p-service-sub__facilities__list span:before {
            top: 7px; }
        .p-service-sub__facilities__list--center {
          text-align: left; }
          .p-service-sub__facilities__list--center a:before {
            top: 3px; }
    .p-service-sub__col1 {
      margin-bottom: 30px; }
      .p-service-sub__col2--type01__desc {
        padding-right: 0; }
        .p-service-sub__col2--type01__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-service-sub__col2--type01__img {
        width: 100%; }
      .p-service-sub__col2--type01--invert .p-service-sub__col2--type01__desc {
        padding-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
      .p-service-sub__col2--type01--invert .p-service-sub__col2--type01__img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-service-sub__col2--type02__desc {
        width: 100%;
        margin-right: 0; }
        .p-service-sub__col2--type02__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-service-sub__col2--type02__img {
        width: 100%; }
      .p-service-sub__col2--type03__desc {
        width: 100%;
        margin-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
        .p-service-sub__col2--type03__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-service-sub__col2--type03__img {
        width: 100%;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-service-sub__col2--type04 {
        margin-bottom: 30px; }
        .p-service-sub__col2--type04__img {
          width: 100%;
          margin-bottom: 20px; }
          .p-service-sub__col2--type04__img:nth-last-child(1), .p-service-sub__col2--type04__img:nth-last-child(2) {
            margin-bottom: 20px; }
          .p-service-sub__col2--type04__img__desc {
            font-size: 14px; }
      .p-service-sub__col2--type05 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-bottom: 30px; }
        .p-service-sub__col2--type05__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-service-sub__col2--type05__desc__dl {
        margin-bottom: 30px; }
      .p-service-sub__col2--type05__desc {
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
        .p-service-sub__col2--type05__img {
          margin: 0;
          width: 100%;
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1; }
      .p-service-sub__col3--type01 {
        margin-bottom: 30px; }
        .p-service-sub__col3--type01__img {
          width: 100%;
          margin-bottom: 20px; }
          .p-service-sub__col3--type01__img:nth-last-child(1), .p-service-sub__col3--type01__img:nth-last-child(2) {
            margin-bottom: 20px; }
          .p-service-sub__col3--type01__img__desc {
            font-size: 14px; }
        .p-service-sub__circlelist li p {
          width: 150px;
          height: 150px;
          border-radius: 75px; }
      .page-news #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
      .page-facilities #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
    .page-facilities .c-section {
      margin-top: 0;
      padding: 0 20px 30px; }
    .p-facilities__map__wrap {
      height: 300px; }
    .c-head--type02 {
      margin-bottom: 35px;
      padding-top: 35px; }
      .c-head--type02__main {
        font-size: 28px; }
    .p-facilities__container {
      margin-bottom: 40px; }
    .p-facilities__item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
      .p-facilities__item__img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px; }
        .p-facilities__item__img img {
          width: 100%;
          max-width: inherit; }
        .p-facilities__item__info__head {
          font-size: 24px; }
      .page-network #pageWrap {
        background-position: top -60px center;
        background-size: 300px 140px; }
    .p-network__map__lead {
      text-align: left; }
    .p-network__container {
      padding: 30px 0 40px; }
    .p-network__head {
      margin-bottom: 20px;
      font-size: 25px; }
    .p-network__item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
      .p-network__item__img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px; }
        .p-network__item__img img {
          width: 100%;
          max-width: inherit; }
        .p-network__item__info__head {
          font-size: 20px; }
    .p-rehacare__main {
      text-align: left; }
      .p-rehacare__main .p-rehacare__main__btn {
        width: 100%; }
    .p-rehacare__main__desc--type01 {
      background-size: 40px 40px; }
    .p-rehacare__main__desc__head {
      font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      font-size: 19px;
      text-align: center; }
    .p-rehacare__main__desc__lead {
      font-family: inherit;
      text-align: left;
      font-size: inherit; }
      .p-rehacare__sec01 .text-center {
        text-align: left;
        margin-bottom: 20px; }
      .p-rehacare__sec01__wrap {
        background-image: none; }
      .p-rehacare__sec01__head01 {
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        font-size: 19px; }
        .p-rehacare__sec01__head01 small {
          font-size: 19px; }
      .p-rehacare__sec01__head02 {
        font-family: inherit;
        font-size: inherit;
        font-weight: normal;
        line-height: inherit;
        margin-bottom: 30px; }
      .p-rehacare__sec01__head03 {
        font-size: inherit;
        font-weight: normal;
        line-height: inherit;
        margin-bottom: 30px; }
        .p-rehacare__sec01__ul li {
          font-size: inherit;
          font-weight: normal;
          text-align: left; }
      .p-rehacare__sec02 .text-center {
        text-align: left;
        margin-bottom: 20px; }
      .p-rehacare__sec02__wrap {
        background-image: none; }
      .p-rehacare__sec02__head01 {
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        font-size: 19px; }
        .p-rehacare__sec02__head01 small {
          font-size: 19px; }
      .p-rehacare__sec02__head02 {
        font-size: 16px;
        margin-bottom: 30px; }
      .p-rehacare__sec02__head03 {
        font-family: inherit;
        text-align: left;
        font-size: inherit;
        margin-bottom: inherit;
        line-height: inherit;
        font-weight: normal;
        margin-bottom: 25px; }
      .p-rehacare__sec03 .text-center {
        text-align: left;
        margin-bottom: 20px; }
      .p-rehacare__sec03__wrap {
        background-image: none; }
      .p-rehacare__sec03__head01 {
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        font-size: 19px; }
        .p-rehacare__sec03__head01 small {
          font-size: 19px; }
        .p-rehacare__sec03__2col .item {
          margin-bottom: 25px;
          width: 100%; }
          .p-rehacare__sec03__2col .item .title {
            font-size: 18px;
            line-height: 36px;
            margin-bottom: 15px; }
          .p-rehacare__sec03__2col .item .ul li {
            font-size: inherit; }
            .p-rehacare__sec03__2col .item .ul.cols li {
              width: 100%; }
      .p-rehacare__sec04 .text-center {
        text-align: left;
        margin-bottom: 20px; }
      .p-rehacare__sec04__wrap {
        background-image: none; }
      .p-rehacare__sec04__head01 {
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        font-size: 19px; }
        .p-rehacare__sec04__head01 small {
          font-size: 19px; }
        .p-rehacare__sec04__pic_list li {
          width: 100%;
          margin-bottom: 25px; }
      .p-rehacare__sec05 .text-center {
        text-align: left;
        margin-bottom: 20px; }
      .p-rehacare__sec05__wrap {
        background-image: none; }
      .p-rehacare__sec05__head01 {
        font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
        font-size: 19px; }
        .p-rehacare__sec05__head01 small {
          font-size: 19px; }
      .p-rehacare__sec05__head02 {
        font-size: 14px; }
      .p-rehacare__sec05__2col {
        margin-bottom: 0; }
        .p-rehacare__sec05__2col .item {
          width: 100%;
          margin-bottom: 40px; }
          .p-rehacare__sec05__2col .item .img {
            margin-bottom: 25px; }
            .p-rehacare__sec05__2col .item .img img {
              max-width: 200px; }
          .p-rehacare__sec05__2col .item .title {
            line-height: 36px;
            font-size: 18px;
            margin-bottom: 20px; }
    .p-rehacare__sec06 {
      padding: 40px 20px 40px; }
      .p-rehacare__sec06__head01 {
        margin-bottom: 30px;
        font-size: 21px; }
      .page-corporate #pageWrap {
        background-position: top -60px center;
        background-size: 650px 650px, 650px 286px; }
        .page-corporate #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
    .p-corporate__img {
      width: 100%;
      height: 220px; }
    .p-corporate__desc {
      width: 100%;
      margin-bottom: 20px; }
      .p-corporate__head .p-corporate__head__main {
        font-size: 24px; }
    .p-corporate__body {
      position: inherit;
      bottom: inherit;
      left: inherit; }
      .p-corporate__body--type01, .p-corporate__body--type03 {
        padding: 0; }
      .p-corporate__body--type02, .p-corporate__body--type04 {
        padding: 0; }
      .p-corporate__body p {
        font-size: 14px; }
      .p-corporate-sub__head--type01 {
        margin-bottom: 40px; }
      .p-corporate-sub__head--type03 {
        font-size: 22px;
        margin-bottom: 40px; }
      .p-corporate-sub__img--type01 {
        margin-bottom: 40px; }
      .p-corporate-sub__ul--type01 li {
        display: block;
        text-align: center; }
        .p-corporate-sub__ul--type01 li span {
          font-size: 16px; }
        .p-corporate-sub__ul--type01 li p {
          font-size: 19px;
          text-align: left; }
          .p-corporate-sub__ul--type01 li p br {
            display: none; }
        .p-corporate-sub__contents__greeting__img {
          float: none;
          margin: 0 0 20px; }
          .p-corporate-sub__contents__greeting__img img {
            width: 100%; }
        .p-corporate-sub__contents__origin__img {
          width: 100% !important;
          float: none;
          margin: 0 0 20px; }
          .p-corporate-sub__contents__origin__img img {
            width: 100%; }
          .p-corporate-sub__contents__origin > p .big {
            font-size: 18px; }
        .p-corporate-sub__contents__philosophy__head {
          font-size: 19px;
          text-align: left; }
          .p-corporate-sub__contents__philosophy__head br {
            display: none; }
            .p-corporate-sub__contents__company__ul__2col--type02 li span {
              width: 100%; }
            .p-corporate-sub__contents__company__ul__2col--type02 li p {
              margin-bottom: 0.6em; }
          .p-corporate-sub__contents__company__ul__3col li {
            width: 100% !important; }
          .p-corporate-sub__contents__company__ul__4col li {
            width: 100% !important; }
          .p-corporate-sub__contents__company table tr th {
            width: 120px !important; }
          .p-corporate-sub__contents__addition table tr th {
            width: 80px !important; }
          .p-corporate-sub__contents__history table tr th {
            width: 90px !important; }
          .p-corporate-sub__contents__history table tr td.type {
            width: 5em !important; }
    .p-corporate-sub__list__header {
      margin: -20px 0 20px; }
      .p-corporate-sub__list__header .p-corporate-sub__list__head {
        font-size: 20px; }
    .p-corporate-sub__goal--type01 {
      font-size: 19px;
      text-align: left; }
    .p-corporate-sub__goal--type02 {
      font-size: 22px;
      text-align: left; }
      .p-corporate-sub__goal--type02 br {
        display: none; }
      .page-genuine_care #pageWrap {
        background-position: top -60px center;
        background-size: 650px 650px, 650px 286px; }
        .page-genuine_care #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
    .p-genuine_care .p-genuine_care__wrap {
      display: block; }
    .p-genuine_care__img {
      width: 100% !important;
      height: 220px; }
    .p-genuine_care__desc {
      width: 100%;
      margin-bottom: 20px; }
      .p-genuine_care__head .p-genuine_care__head__main {
        margin-left: 0;
        font-size: 24px; }
    .p-genuine_care__body {
      position: inherit;
      bottom: inherit;
      left: inherit; }
      .p-genuine_care__body--type01, .p-genuine_care__body--type03 {
        padding: 20px 0 0 !important; }
      .p-genuine_care__body--type02, .p-genuine_care__body--type04 {
        padding: 20px 0 0 !important; }
      .p-genuine_care__body p {
        font-size: 14px; }
    .p-genuine_care__rehacare {
      padding-top: 50vw;
      background: url(../img/pic_rehacare_img02.png) no-repeat top center;
      background-size: contain;
      height: auto; }
      .p-genuine_care__rehacare__inner {
        padding: 0 20px; }
      .p-genuine_care__rehacare__logo {
        background-size: contain; }
      .p-genuine_care__rehacare__desc {
        text-shadow: none;
        color: #000;
        text-align: left;
        margin-bottom: 30px; }
      .p-genuine_care-sub__head--type01 {
        margin-bottom: 40px; }
      .p-genuine_care-sub__head--type03 {
        font-size: 22px;
        margin-bottom: 30px; }
      .p-genuine_care-sub__head--type04 {
        font-size: 22px;
        margin-bottom: 30px;
        font-size: 20px; }
        .p-genuine_care-sub__head--type04 span {
          font-size: 22px; }
      .p-genuine_care-sub__head--type05 {
        margin-bottom: 20px;
        font-size: 20px; }
      .p-genuine_care-sub__head--type07 {
        font-size: 21px;
        margin-bottom: 30px; }
      .p-genuine_care-sub__lead--type01 {
        margin-bottom: 40px; }
      .p-genuine_care-sub__lead--type03 {
        margin-bottom: 30px; }
      .p-genuine_care-sub__img--type01 {
        margin-bottom: 40px; }
      .p-genuine_care-sub__img--type02 {
        margin-bottom: 40px;
        width: 100%; }
      .p-genuine_care-sub__btn_area--type01 {
        margin: 20px 0 40px; }
    .p-genuine_care-sub__list__header {
      margin: -20px 0 20px; }
      .p-genuine_care-sub__list__header .p-genuine_care-sub__list__head {
        font-size: 20px; }
    .p-genuine_care-sub__goal__title {
      font-size: 19px;
      text-align: left; }
    .p-genuine_care-sub__col2 {
      margin-bottom: 50px; }
      .p-genuine_care-sub__col2:nth-last-child(1) {
        margin-bottom: 0; }
      .p-genuine_care-sub__col2--type01__desc {
        padding-right: 0; }
        .p-genuine_care-sub__col2--type01__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-genuine_care-sub__col2--type01__img {
        width: 100%; }
      .p-genuine_care-sub__col2--type01--invert .p-genuine_care-sub__col2--type01__desc {
        padding-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
      .p-genuine_care-sub__col2--type01--invert .p-genuine_care-sub__col2--type01__img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-genuine_care-sub__col2--type02__desc {
        width: 100%;
        margin-right: 0; }
        .p-genuine_care-sub__col2--type02__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-genuine_care-sub__col2--type02__ul {
        width: 100%;
        margin-right: 0; }
      .p-genuine_care-sub__col2--type02__img {
        width: 100%; }
      .p-genuine_care-sub__col2--type03__desc {
        width: 100%;
        margin-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
        .p-genuine_care-sub__col2--type03__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-genuine_care-sub__col2--type03__ul {
        width: 100%;
        margin-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
      .p-genuine_care-sub__col2--type03__img {
        width: 100%;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-genuine_care-sub__col2--type04 {
        margin-bottom: 30px; }
        .p-genuine_care-sub__col2--type04__img {
          width: 100%;
          margin-bottom: 20px; }
          .p-genuine_care-sub__col2--type04__img:nth-last-child(1), .p-genuine_care-sub__col2--type04__img:nth-last-child(2) {
            margin-bottom: 20px; }
          .p-genuine_care-sub__col2--type04__img__desc {
            font-size: 14px; }
      .p-genuine_care-sub__col2--type05 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin-bottom: 30px; }
        .p-genuine_care-sub__col2--type05__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-genuine_care-sub__col2--type05__desc__dl {
        margin-bottom: 30px; }
      .p-genuine_care-sub__col2--type05__desc {
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
        .p-genuine_care-sub__col2--type05__img {
          margin: 0;
          width: 100%;
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1; }
      .p-genuine_care-sub__col3--type01 {
        margin-bottom: 30px; }
        .p-genuine_care-sub__col3--type01__img {
          width: 100%;
          margin-bottom: 20px; }
          .p-genuine_care-sub__col3--type01__img:nth-last-child(1), .p-genuine_care-sub__col3--type01__img:nth-last-child(2) {
            margin-bottom: 20px; }
          .p-genuine_care-sub__col3--type01__img__desc {
            font-size: 14px; }
      .page-recruit #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
        .page-recruit #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
    .page-recruit__menu {
      height: 180px; }
    .page-recruit__menu {
      height: 50vw !important; }
        .page-recruit__adoption__box p {
          margin-bottom: 20px; }
      .page-recruit__adoption__head {
        margin-bottom: 20px; }
      .page-recruit__adoption__img {
        margin-bottom: 20px; }
        .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title .p-recruit-top__item__img {
          margin-bottom: 10px; }
        .p-recruit-top__list--type01 .p-recruit-top__item .p-recruit-top__item__title span {
          margin-bottom: 10px;
          background-position: left top 6px;
          font-size: 14px; }
        .p-recruit-top__list--type01 .p-recruit-top__item p {
          font-size: 14px; }
        .p-recruit-top__list--type02 .p-recruit-top__item .p-recruit-top__item__title span {
          margin-bottom: 10px;
          background-position: left top 6px;
          font-size: 14px; }
      .p-recruit-top__list--type02 .p-recruit-top__item p {
        font-size: 12px; }
    .p-recruit-top__sns {
      padding: 40px 20px; }
    .p-recruit-top__sns__fb {
      margin-bottom: 30px; }
      .p-recruit-sub__head--type01 {
        margin-bottom: 40px;
        font-size: 30px; }
        .p-recruit-sub__head--type01 br {
          display: block; }
        .p-recruit-sub__head--type01 small {
          font-size: 22px; }
      .p-recruit-sub__head--type03 {
        font-size: 22px;
        margin-bottom: 30px; }
        .p-recruit-sub__head--type03 p {
          font-size: 20px; }
      .p-recruit-sub__head--type04 {
        font-size: 22px;
        margin-bottom: 30px;
        font-size: 20px; }
        .p-recruit-sub__head--type04 span {
          font-size: 22px; }
      .p-recruit-sub__head--type05 {
        margin-bottom: 20px;
        font-size: 20px; }
      .p-recruit-sub__lead--type01 {
        margin-bottom: 40px; }
      .p-recruit-sub__lead--type03 {
        margin-bottom: 20px; }
        .p-recruit-sub__lead--type03.pc_center {
          text-align: left; }
      .p-recruit-sub__img--type01 {
        margin-bottom: 40px; }
      .p-recruit-sub__img--type02 {
        margin-bottom: 40px;
        width: 100%; }
      .p-recruit-sub__btn_area--type01 {
        margin: 20px 0 40px; }
    .p-recruit-sub__partner__head--type01 {
      font-size: 18px; }
      .p-recruit-sub__partner__head--type01 br {
        display: block; }
    .p-recruit-sub__partner__head--type02 {
      font-size: 24px; }
      .p-recruit-sub__partner__img img.sp {
        display: block; }
      .p-recruit-sub__partner__img img.pc {
        display: none; }
    .p-recruit-sub__relation {
      padding: 20px; }
      .p-recruit-sub__relation__head {
        font-size: 20px;
        margin-bottom: 20px; }
    .p-recruit-sub__appare__box {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-bottom: 20px; }
    .p-recruit-sub__appare__desc {
      width: 100%;
      -webkit-box-flex: inherit;
          -ms-flex: inherit;
              flex: inherit; }
    .p-recruit-sub__appare__head {
      text-align: center; }
    .p-recruit-sub__message {
      padding: 40px;
      margin-bottom: 40px; }
      .p-recruit-sub__message.mb130 {
        margin-bottom: 60px; }
      .p-recruit-sub__message__img {
        margin-right: 0;
        margin-bottom: 10px; }
      .p-recruit-sub__message__name {
        font-size: 25px;
        text-align: center; }
      .p-recruit-sub__message__copy {
        font-size: 18px; }
      .p-recruit-sub__message__answer li {
        margin-bottom: 40px; }
        .p-recruit-sub__message__answer li span {
          width: 42px;
          height: 42px;
          font-size: 17px;
          line-height: 37px; }
    .p-recruit-sub__question {
      margin-bottom: 40px;
      padding: 40px; }
        .p-recruit-sub__question__ol li {
          font-size: 16px; }
          .p-recruit-sub__question__ol li:before {
            font-size: 23px; }
    .p-recruit-sub__date {
      padding: 25px;
      margin-bottom: 25px; }
      .p-recruit-sub__date br {
        display: block; }
      .p-recruit-sub__date__head--type01 {
        font-size: 20px; }
      .p-recruit-sub__date__head--type02 {
        font-size: 15px; }
      .p-recruit-sub__date__head--type03 {
        font-size: 16px;
        margin-bottom: 10px; }
        .p-recruit-sub__date__head--type03 br {
          display: block; }
      .p-recruit-sub__mynavi__head {
        font-size: 20px; }
        .p-recruit-sub__mynavi__head br {
          display: block; }
      .p-recruit-sub__mynavi__bnr {
        width: 200px; }
      .p-recruit-sub__contact__tel {
        font-size: 30px; }
        .p-recruit-sub__contact__tel span {
          font-size: 16px; }
        .p-recruit-sub__table table tr th {
          width: 90px !important; }
    .p-recruit-sub__flow {
      padding: 38px 20px 20px; }
      .p-recruit-sub__flow__step {
        width: 64px;
        height: 64px;
        top: -32px;
        margin-left: -32px;
        line-height: 59px; }
      .p-recruit-sub__flow__head {
        font-size: 20px;
        margin-bottom: 15px; }
      .p-recruit-sub__flow__btns {
        margin-top: 15px; }
        .p-recruit-sub__flow__btns .btn_mynavi {
          margin-right: 0;
          margin-bottom: 10px;
          width: 130px; }
    .p-recruit-sub__col2 {
      margin-bottom: 50px; }
      .p-recruit-sub__col2:nth-last-child(1) {
        margin-bottom: 0; }
      .p-recruit-sub__col2--type01__dl {
        padding-right: 0; }
        .p-recruit-sub__col2--type01__dl dd {
          margin-bottom: 20px; }
      .p-recruit-sub__col2--type01__img {
        width: 100%; }
      .p-recruit-sub__col2--type01--invert .p-recruit-sub__col2--type01__desc {
        padding-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
      .p-recruit-sub__col2--type01--invert .p-recruit-sub__col2--type01__img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-recruit-sub__col2--type02__desc {
        width: 100%;
        margin-right: 0; }
        .p-recruit-sub__col2--type02__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-recruit-sub__col2--type02__ul {
        width: 100%;
        margin-right: 0; }
      .p-recruit-sub__col2--type02__img {
        width: 100%; }
      .p-recruit-sub__col2--type03__desc {
        width: 100%;
        margin-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
        .p-recruit-sub__col2--type03__desc .c-button--type03 {
          margin: 20px 0 30px; }
      .p-recruit-sub__col2--type03__ul {
        width: 100%;
        margin-left: 0;
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0; }
      .p-recruit-sub__col2--type03__img {
        width: 100%;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
      .p-recruit-sub__col2--type04 {
        margin-bottom: 30px; }
        .p-recruit-sub__col2--type04__desc {
          padding-right: 0;
          margin-bottom: 20px; }
      .p-recruit-sub__col3--type01 {
        margin-bottom: 30px; }
        .p-recruit-sub__col3--type01__img {
          width: 100%;
          margin-bottom: 20px; }
          .p-recruit-sub__col3--type01__img:nth-last-child(1), .p-recruit-sub__col3--type01__img:nth-last-child(2) {
            margin-bottom: 20px; }
          .p-recruit-sub__col3--type01__img__desc {
            font-size: 14px; }
      .page-otokomae #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
        .page-otokomae #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
      .page-privacy #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
        .page-privacy #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
        .p-privacy-index__policy__ol li {
          margin-bottom: 25px; }
      .p-privacy-index__policy__signature {
        margin-bottom: 50px; }
      .p-privacy-index__policy__tel .tel {
        font-size: 26px; }
        .p-privacy-index__policy__tel .tel span {
          font-size: 16px; }
      .p-privacy-index__policy__tel .fax {
        font-size: 24px; }
        .p-privacy-index__policy__tel .fax span {
          font-size: 16px; }
      .page-contact #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
        .page-contact #pageWrap.sub {
          background-position: top -60px center, top 1970px left 60px;
          background-size: 650px 650px, 650px 286px; }
    .p-contact-index.pt80 {
      padding-top: 60px; }
    .p-contact-index .c-pageHead {
      padding-bottom: 60px; }
    .p-contact-index__head {
      font-size: 20px;
      padding: 10px;
      margin-bottom: 25px; }
      .p-contact-index__head--type02 {
        font-size: 21px;
        margin-bottom: 25px; }
        .p-contact-index__head--type02 br {
          display: block; }
    .p-contact-index__lead {
      text-align: left;
      margin-bottom: 25px; }
      .p-contact-index__tel .tel {
        font-size: 26px; }
        .p-contact-index__tel .tel span {
          font-size: 16px; }
      .p-contact-index__tel .fax {
        font-size: 24px; }
        .p-contact-index__tel .fax span {
          font-size: 16px; }
      .p-contact-index__form tr th, .p-contact-index__form tr td {
        display: block; }
      .p-contact-index__form tr th {
        border-bottom: none;
        padding-bottom: 0; }
      .p-contact-index__form label {
        display: block; }
      .page-magazine #pageWrap {
        background-position: top -60px center, top 1970px left 60px;
        background-size: 650px 650px, 650px 286px; }
    .page-magazine .c-pageHead__lead br {
      display: none; }
      .p-magazine__head .p-magazine__head__main {
        font-size: 24px; }
      .p-magazine-index__list_in {
        margin-bottom: -40px; }
      .p-magazine-index__list_lead {
        text-align: left;
        margin-bottom: 30px; }
      .p-magazine-index__list .c-pager {
        margin-bottom: 40px; }
    .p-magazine-index__adobereader {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
      .p-magazine-index__adobereader a {
        margin-right: 0;
        margin-bottom: 20px; }
  .tacs {
    text-align: center !important; }
  .tars {
    text-align: right !important; }
  .tals {
    text-align: left !important; }
  .w50ps {
    width: 50% !important; }
  .w100ps {
    width: 100% !important; } }

@media print {
    .header {
      position: absolute; }
    .spNav {
      position: absolute; }
    #pageTop {
      display: none; } }

@media screen and (max-width: 1200px) {
      .header__wrap {
        width: 100%; }
    .footer__wrap--type01 {
      padding: 30px 0; }
    .footer__container {
      display: block;
      width: calc(100% - 40px); }
    .footer__info {
      margin-right: auto;
      margin-left: auto;
      margin-bottom: 30px;
      text-align: center; }
    .footer__logo {
      margin-right: auto;
      margin-left: auto; }
    .fNav--type01 .fNav__container {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .fNav--type02 {
      width: 100%; }
      .fNav--type02 .fNav__wrap {
        width: calc(255px * 3 + 20px * 2); }
      .fNav--type02 .fNav__controls {
        width: calc(255px * 3 + 20px * 2 + 60px * 2); }
    #pageTop {
      right: 15px;
      bottom: 15px; }
    .c-main--type01 {
      width: calc(100% - 10px * 2); }
    .c-main--type01 {
      width: calc(100% - 40px); }
      .c-head--type03:before {
        width: 30%; }
      .c-wrap--type01 {
        width: calc(100% - 10px * 2); }
      .c-wrap__inner {
        width: calc(100% - 10px * 2); }
    .c-index--type01 {
      margin-top: -15px; }
      .c-index--type01:after {
        width: calc(100% / 3 - 10px); }
      .c-index--type01 .c-index__item {
        width: calc(100% / 3 - 10px);
        margin-top: 15px; }
        .c-index--type01 .c-index__item a {
          font-size: 14px; }
    .c-col3--type01 {
      margin-top: -20px; }
      .c-col3--type01:after {
        display: none; }
      .c-col3--type01 .c-columns__item {
        width: calc(100% / 2 - 10px);
        margin-top: 20px; }
      .c-col4--type02 .c-columns__item {
        width: calc(100% / 4 - 10px); }
    .c-banner--type02 {
      width: calc(100% - 10px * 2); }
      .c-banner--type02 .c-banner__container {
        margin-top: -20px; }
      .c-banner--type02 .c-banner__item {
        width: calc(100% / 3 - (20px * (3 - 1) / 3));
        margin-top: 20px;
        margin-left: 20px; }
        .c-banner--type02 .c-banner__item:nth-child(3n+1) {
          margin-left: 0; }
    .c-button--type03 {
      width: 100%; }
      .c-button--type08:nth-child(2) {
        margin-top: 25px;
        margin-left: 0; }
        .c-pic-text__picture--type01 {
          width: 45%; }
        .c-pic-text__picture--type03 {
          margin-right: auto;
          margin-bottom: 20px;
          margin-left: auto; }
        .c-pic-text__text--type03 {
          width: 100%; }
    .c-pic-text--picLeft01 .c-pic-text__picture.c-pic-text__picture--type03 {
      margin-right: auto; }
    .c-link--type04 {
      width: 60%;
      margin: auto; }
    .c-form__table th, .c-form__table td {
      display: block; }
      .c-form__table th {
        width: 100%;
        padding-bottom: 0;
        border-bottom: 0; }
    .c-form__table td {
      padding-top: 10px; }
    .c-input__wrap--type01 .c-input--type01 {
      width: 100%;
      margin: 0; }
    .c-input__wrap--type01 .c-input--type03 {
      margin: 0; }
    .c-input__wrap--type02 {
      width: 100%;
      margin: 0; }
    .c-input--type01 {
      width: 100%; }
    .c-input--type02 {
      width: 100%; }
    .c-input--type03 {
      width: 100%; }
    .c-select--type01 {
      width: 100%; }
    .c-select--type02 {
      width: 100%; }
    .c-select--type03 {
      width: 100%; }
    .c-select--type04 {
      width: 100%;
      margin-top: 10px; }
    .c-carousel {
      width: 100%; }
        .p-mv__wrap--type02 {
          background-position: center center; }
    .p-mv__copy--type04 {
      width: calc(100% - 20px); }
      .c-categoryHead__image__outer {
        padding-left: 20px; }
      .c-pageHead--type02 .c-pageHead__wrap {
        width: 100%; }
          .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__title {
            width: 100%;
            margin-bottom: 20px;
            padding-right: 0; }
          .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__lead {
            -webkit-box-flex: inherit;
                -ms-flex: inherit;
                    flex: inherit;
            width: 100%;
            padding-left: 20px;
            font-size: 14px;
            margin-bottom: 20px; }
            .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons__label {
              margin-right: 10px; }
          .c-pageHead--type04 .c-pageHead__wrap .c-pageHead__icons {
            width: 100%;
            margin-left: 0;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
    .topicPath__container {
      width: calc(100% - 10px * 2); }
    .topicPath__container {
      overflow: auto;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      width: calc(100% - 40px); }
    .c-site-search {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      height: 100vh; }
      .c-site-search__container {
        width: calc(100% - 60px); }
      .c-site-search__item:first-child {
        margin-top: 0; }
      .c-site-search__button {
        width: 44px;
        height: 44px;
        background-size: 30px auto; }
      .c-site-search__form {
        width: 100%; }
      .c-site-search__input {
        width: 100%; }
      .c-site-search__submit {
        padding: 10px 24px;
        font-size: 20px; }
      .c-news__info .c-news__link {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
    .c-news__info .c-news__linkWrap {
      width: calc(100% / 2 - (40px * (2 - 1) / 2)); }
      .c-news__info .c-news__linkWrap + .c-news__linkWrap {
        margin-left: 0; }
    .c-news--home {
      width: calc(100% - 10px * 2); }
        .c-news--home .c-news__index li {
          width: calc(100% / 5 - (10px * 5 / 4));
          height: auto; }
          .c-news--home .c-news__index li:after {
            display: none; }
        .c-news--home .c-news__index a {
          width: 100%;
          min-height: 3em;
          padding-right: 10px;
          padding-left: 10px; }
      .c-news--home .c-news__container {
        width: 100%;
        margin-right: auto;
        margin-left: auto; }
  .page-news-detail .c-columns__main .alignleft, .page-news-detail .c-columns__main .alignright {
    width: 45%; }
      .c-instagram__item.is-inactive {
        padding-top: calc(100% / 5 - 12px); }
  .c-instagram--type01 {
    margin-top: 10px; }
    .c-instagram--type01 .c-instagram__item {
      width: calc(100% / 4 - 10px);
      height: 0;
      margin-top: 10px;
      margin-right: 5px;
      margin-left: 5px;
      padding-top: calc(100% / 4 - 10px); }
    .c-instagram--type01 .c-instagram__item.is-inactive {
      padding-top: calc(100% / 3 - 10px); }
    .c-instagram--type02 .c-instagram__item {
      width: calc(100% / 3 - 8px);
      height: 100%;
      padding-top: calc(100% / 3 - 8px); }
      .c-instagram--type02 .c-instagram__item.is-inactive {
        padding-top: calc(100% / 3 - 8px); }
    .c-picture--type01 img {
      width: 100%;
      height: auto; }
      .p-home--type01 .p-home__wrap {
        width: calc(100% - 40px); }
      .p-home--type06 .p-home__wrap {
        width: calc(100% - 60px);
        padding: 30px 20px 0 40px; }
        .p-home--type06 .p-home__head .p-head--type04 {
          left: -40px; }
      .p-home--type06 .c-table--type01 {
        width: 100%;
        margin-left: 0; }
      .p-home--type08 .p-home__wrap {
        width: calc(100% - 10px * 2); }
    .p-service--type01 .p-service__desc, .p-service--type03 .p-service__desc {
      padding: 20px; }
    .p-service--type02 .p-service__desc, .p-service--type04 .p-service__desc {
      padding: 20px; }
    .p-service__img {
      width: 55%;
      height: 300px; }
    .p-service__desc {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      width: auto; }
      .p-service__head .p-service__head__main {
        position: inherit;
        top: inherit;
        left: inherit;
        height: auto;
        font-size: 30px;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
        .p-service__head .p-service__head__main br {
          display: none; }
      .p-service__head .p-service__head__sub {
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
    .p-service__body {
      bottom: 20px; }
      .p-service__body--type01, .p-service__body--type03 {
        padding: 0 20px; }
      .p-service__body--type02, .p-service__body--type04 {
        padding: 0 20px; }
    .p-service-top__list--type01 {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: calc(100% - 40px);
      padding: 0; }
      .p-service-top__list--type01 .p-service-top__item {
        width: 47%; }
        .p-service-top__list--type01 .p-service-top__item:nth-child(2n+1) {
          margin-right: 0; }
      .p-service-top__list--type02.full {
        padding: 40px 20px 10px;
        margin-bottom: 40px; }
    .p-service-sub__img--type02 {
      width: 100%; }
    .p-service-sub__circlelist {
      -ms-flex-pack: distribute;
          justify-content: space-around; }
      .p-service-sub__circlelist li {
        margin: 0 5px 10px; }
    .p-service-sub__guide .p-service-sub__pricebox {
      padding: 25px; }
      .p-service-sub__guide .p-service-sub__pricebox__add {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; }
        .p-service-sub__guide .p-service-sub__pricebox__add__item {
          width: 100%;
          min-height: 80px;
          font-size: 16px; }
    .page-facilities .c-section__wrap {
      width: 100%;
      padding: 20px 0 0; }
    .page-facilities .c-section {
      padding: 0 20px 40px; }
      .p-facilities__item__img {
        margin-right: 30px; }
        .p-facilities__item__info p {
          padding-left: 1em; }
          .p-facilities__item__info p .type01 {
            display: block;
            width: 100%;
            text-indent: -1em; }
            .p-facilities__item__info p .type01:before {
              content: "・"; }
        .p-facilities__item__info__btn {
          width: 100%; }
    .p-network__map__lead {
      width: 100%;
      padding: 20px 20px 30px; }
    .p-network__item {
      width: 100%; }
      .p-network__item__img {
        width: 360px;
        margin-right: 30px; }
        .p-network__item__info__btn {
          width: 100%; }
      .p-rehacare__head__logo {
        left: 0;
        width: 100%;
        margin-left: 0;
        padding-left: 60px; }
    .p-rehacare__main {
      margin-top: 0;
      width: calc(100% - 40px);
      padding: 30px 0 60px; }
    .p-rehacare__btns {
      -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;
      margin-bottom: 40px; }
      .p-rehacare__btns .prev {
        margin-right: 0;
        margin-top: 25px; }
    .p-rehacare__sec01 {
      margin-top: -100px; }
      .p-rehacare__sec01__inner {
        width: 100%; }
      .p-rehacare__sec01__ul {
        width: 100%;
        max-width: 840px; }
    .p-rehacare__sec02 {
      margin-top: -100px;
      padding: 90px 20px 90px; }
      .p-rehacare__sec02__inner {
        width: 100%; }
    .p-rehacare__sec03 {
      margin-top: -100px;
      padding-top: 60px;
      padding-bottom: 100px; }
      .p-rehacare__sec03__inner {
        width: 100%; }
      .p-rehacare__sec03__fig {
        width: 100%;
        max-width: 840px; }
    .p-rehacare__sec04 {
      margin-top: -100px;
      padding: 120px 20px 80px; }
      .p-rehacare__sec04__inner {
        width: 100%; }
    .p-rehacare__sec05 {
      margin-top: -100px; }
      .p-rehacare__sec05__inner {
        width: 100%; }
      .p-rehacare__sec05__fig {
        width: 100%;
        max-width: 840px; }
      .p-rehacare__sec06__inner {
        width: 100%; }
        .p-rehacare__sec06__page_list li {
          width: calc(50% - 25px); }
    .p-corporate--type01 .p-corporate__desc, .p-corporate--type03 .p-corporate__desc {
      padding: 20px; }
    .p-corporate--type02 .p-corporate__desc, .p-corporate--type04 .p-corporate__desc {
      padding: 20px; }
    .p-corporate__img {
      width: 55%;
      height: 300px; }
    .p-corporate__desc {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      width: auto; }
      .p-corporate__head .p-corporate__head__main {
        position: inherit;
        top: inherit;
        left: inherit;
        height: auto;
        font-size: 30px;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
        .p-corporate__head .p-corporate__head__main br {
          display: none; }
      .p-corporate__head .p-corporate__head__sub {
        width: 100%;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
    .p-corporate__body {
      bottom: 20px; }
      .p-corporate__body--type01, .p-corporate__body--type03 {
        padding: 0 20px; }
      .p-corporate__body--type02, .p-corporate__body--type04 {
        padding: 0 20px; }
      .p-corporate-sub__wrap--type01 {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: calc(100% - 40px);
        padding: 40px 0 60px; }
      .p-corporate-sub__wrap--type03 {
        padding: 0 0 60px; }
      .p-corporate-sub__wrap--type04 {
        width: 100%; }
      .p-corporate-sub__wrap--type05 {
        padding: 60px 20px; }
      .p-corporate-sub__ul--type01 {
        width: 100%; }
        .p-corporate-sub__contents__greeting__signature {
          display: block;
          text-align: right; }
          .p-corporate-sub__contents__greeting__signature small {
            font-size: 19px;
            margin-right: 0; }
          .p-corporate-sub__contents__greeting__signature p {
            font-size: 25px; }
        .p-corporate-sub__contents__origin__img {
          width: 500px; }
        .p-corporate-sub__contents__origin > p {
          padding: 0 20px; }
          .p-corporate-sub__contents__company__ul__3col li {
            width: 48%; }
          .p-corporate-sub__contents__company__ul__4col li {
            width: 48%; }
          .p-corporate-sub__contents__company table tr th {
            width: 150px; }
          .p-corporate-sub__contents__addition table tr th {
            width: 100px; }
          .p-corporate-sub__contents__history table tr td.month {
            width: 4em; }
          .p-corporate-sub__contents__history table tr td.type {
            width: 7em; }
    .p-genuine_care--type01 .p-genuine_care__desc, .p-genuine_care--type03 .p-genuine_care__desc {
      padding: 20px; }
    .p-genuine_care--type02 .p-genuine_care__desc, .p-genuine_care--type04 .p-genuine_care__desc {
      padding: 20px; }
    .p-genuine_care__img {
      width: 55%;
      height: 300px; }
    .p-genuine_care__desc {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      width: auto; }
      .p-genuine_care__head .p-genuine_care__head__main {
        position: inherit;
        top: inherit;
        left: inherit;
        height: auto;
        font-size: 30px;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
        .p-genuine_care__head .p-genuine_care__head__main br {
          display: none; }
      .p-genuine_care__head .p-genuine_care__head__sub {
        width: 100%;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
    .p-genuine_care__body {
      bottom: 20px; }
      .p-genuine_care__body--type01, .p-genuine_care__body--type03 {
        padding: 0 20px; }
      .p-genuine_care__body--type02, .p-genuine_care__body--type04 {
        padding: 0 20px; }
    .p-genuine_care__rehacare {
      margin-bottom: 40px; }
      .p-genuine_care__rehacare__inner {
        width: 100%; }
      .p-genuine_care__rehacare__logo {
        width: 100%; }
      .p-genuine_care__rehacare__desc {
        width: 100%; }
      .p-genuine_care__rehacare__btn {
        width: 100%; }
      .p-genuine_care-sub__wrap--type01 {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: calc(100% - 40px);
        padding: 40px 0 60px; }
      .p-genuine_care-sub__wrap--type03 {
        padding: 0 0 60px; }
      .p-genuine_care-sub__wrap--type04 {
        width: 100%; }
      .p-genuine_care-sub__wrap--type05 {
        padding: 60px 20px; }
      .p-genuine_care-sub__col2--type02__desc {
        margin-right: 50px; }
      .p-genuine_care-sub__col2--type02__ul {
        margin-right: 50px; }
      .p-genuine_care-sub__col2--type03__desc {
        margin-left: 50px; }
      .p-genuine_care-sub__col2--type03__ul {
        margin-left: 50px; }
    .page-recruit__menu {
      margin-bottom: 8%;
      height: 270px; }
        .page-recruit__menu__desc p {
          width: 100%; }
      .page-recruit__menu__desc.pc {
        display: none; }
      .page-recruit__menu__desc.sp {
        display: block; }
        .page-recruit__menu__desc.sp.pb100 {
          padding-bottom: 100px; }
      .page-recruit__menu img.pc {
        display: none; }
      .page-recruit__menu img.sp {
        height: 60vw;
        display: inline; }
      .page-recruit__menu--type02 {
        margin-top: -12.6%; }
        .page-recruit__menu--type02 img {
          margin-top: 0; }
    .page-recruit__adoption {
      width: 100%;
      padding: 0 20px; }
      .page-recruit__adoption__box {
        width: calc(50% - 15px); }
    .p-recruit-top__list--type01 {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: calc(100% - 40px);
      padding: 0; }
      .p-recruit-top__list--type01 .p-recruit-top__item {
        width: 47%; }
        .p-recruit-top__list--type01 .p-recruit-top__item:nth-child(2n+1) {
          margin-right: 0; }
      .p-recruit-top__sns__inner {
        width: 100%; }
      .p-recruit-top__sns__fb, .p-recruit-top__sns__tw {
        width: 48%;
        max-width: 500px; }
      .p-recruit-sub__wrap--type01 {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        width: calc(100% - 40px);
        padding: 40px 0 60px; }
      .p-recruit-sub__wrap--type03 {
        padding: 0 0 60px; }
      .p-recruit-sub__wrap--type04 {
        width: 100%; }
      .p-recruit-sub__wrap--type05 {
        padding: 60px 20px; }
    .p-recruit-sub__partner__img {
      width: 100%;
      max-width: 812px; }
      .p-recruit-sub__relation__col {
        width: 100%; }
        .p-recruit-sub__relation__col:nth-child(1) {
          margin-bottom: 40px; }
        .p-recruit-sub__relation__col ul {
          min-height: inherit; }
      .p-recruit-sub__note__img {
        margin-right: 0; }
    .p-recruit-sub__note__desc {
      margin-top: 20px;
      width: 100%;
      text-align: center; }
      .p-recruit-sub__note__desc br {
        display: block; }
    .p-recruit-sub__appare__img {
      width: 150px; }
    .p-recruit-sub__mynavi {
      padding: 0 20px;
      width: 100%;
      max-width: 600px;
      margin-bottom: 40px; }
        .p-recruit-sub__table table tr th {
          width: 150px; }
      .p-recruit-sub__col2--type02__desc {
        margin-right: 50px; }
      .p-recruit-sub__col2--type02__ul {
        margin-right: 50px; }
      .p-recruit-sub__col2--type03__desc {
        margin-left: 50px; }
      .p-recruit-sub__col2--type03__ul {
        margin-left: 50px; }
        .p-recruit-sub__col2--type04__img {
          width: 40%; }
    .p-otokomae-index__list {
      width: calc(100% - 40px);
      padding: 25px 25px 5px;
      margin-bottom: 50px; }
      .p-otokomae-index__list__head {
        margin-bottom: 15px; }
      .p-otokomae-index__list__item {
        width: 100%; }
      .p-otokomae-index__list__bnr {
        margin-bottom: 10px; }
      .p-otokomae-index__list__btn .c-button--type07 {
        width: 200px;
        margin: 0 auto; }
    .p-privacy-index__policy {
      width: calc(100% - 40px);
      padding: 25px 25px 5px;
      margin-bottom: 50px; }
      .p-privacy-index__policy__tel, .p-privacy-index__policy__mail {
        width: 100%;
        max-width: 570px;
        margin: 0 auto;
        padding: 20px; }
    .p-privacy-index__policy__tel {
      margin-bottom: 50px; }
    .p-contact-index__box {
      width: calc(100% - 40px);
      padding: 25px 25px 5px;
      margin-bottom: 50px; }
    .p-contact-index__tel {
      margin-bottom: 50px; }
      .p-contact-index__form input[type="text"],
      .p-contact-index__form input[type="email"] {
        max-width: 550px;
        width: 100%; }
        .p-contact-index__form input[type="text"].tel,
        .p-contact-index__form input[type="email"].tel {
          max-width: 340px;
          width: 100%; }
      .p-contact-index__form__box.mb60 {
        margin-bottom: 60px; }
      .p-contact-index__form__box .p-contact-index__tel {
        margin-bottom: 0; }
      .p-contact-index__form__btns {
        margin-bottom: 60px; }
    .p-magazine--type01 .p-magazine__desc, .p-magazine--type03 .p-magazine__desc {
      padding: 20px; }
    .p-magazine--type02 .p-magazine__desc, .p-magazine--type04 .p-magazine__desc {
      padding: 20px; }
      .p-magazine__head .p-magazine__head__main {
        position: inherit;
        top: inherit;
        left: inherit;
        height: auto;
        font-size: 30px;
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
        .p-magazine__head .p-magazine__head__main br {
          display: none; }
      .p-magazine__head .p-magazine__head__sub {
        -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
                writing-mode: inherit; }
    .p-magazine-index__list {
      width: calc(100% - 40px);
      padding: 25px 25px 40px;
      margin-bottom: 50px; }
      .p-magazine-index__list__item {
        width: calc( (100% - 120px)/4);
        margin-right: 40px;
        margin-bottom: 30px; }
      .p-magazine-index__list__head {
        font-size: 13px;
        line-height: 17px; }
      .p-magazine-index__list__btn .c-button--type07 {
        width: 200px;
        margin: 0 auto; }
      .p-magazine-index__adobereader__desc {
        font-size: 13px; } }

@media screen and (max-width: 960px) {
    .footer__info {
      margin-bottom: 0; }
  .fNav--type01 {
    display: none; } }

@media screen and (max-width: 900px) {
    .fNav--type01 .fNav__menu--lv01 {
      margin-bottom: 30px; } }

@media screen and (max-width: 375px) {
    .fNav--type02 {
      height: 55px; }
      .fNav--type02 .fNav__wrap {
        width: 200px; }
      .fNav--type02 .fNav__item {
        width: 200px;
        height: 55px; }
      .fNav--type02 .fNav__controls {
        width: calc(200px + 60px * 2); }
        .fNav--type02 .fNav__controls button {
          top: 6.5px;
          -webkit-transform: none;
              -ms-transform: none;
                  transform: none; }
        .p-mv__copy--type04 .p-mv__copy__wrap span {
          font-size: 13px; }
        .c-news--home .c-news__index a {
          padding-right: 12px;
          padding-bottom: 0;
          padding-left: 12px; } }

@media screen and (max-width: 925px) {
      .fNav--type02 .fNav__wrap {
        width: calc(255px * 2 + 20px * 1); }
      .fNav--type02 .fNav__controls {
        width: calc(255px * 2 + 20px * 1 + 60px * 2); } }

@media screen and (max-width: 650px) {
      .fNav--type02 .fNav__wrap {
        width: 255px; }
      .fNav--type02 .fNav__controls {
        width: calc(255px + 60px * 2); } }

@media screen and (min-width: 1201px) {
        .fNav--type02 .fNav__controls .fNav__controls--prev {
          left: 0; }
        .fNav--type02 .fNav__controls .fNav__controls--next {
          right: 0; } }

@media screen and (max-width: 340px) {
      .oNav__wrap {
        width: 100%; } }

@media screen and (max-width: 768px) {
    .sNav {
      width: 100%; }
    .c-col2--news01 .c-columns__main {
      width: 100%; }
    .c-col2--news01 .c-columns__sub {
      width: 100%;
      margin-top: 90px; }
        .p-mv__copy--type04 .p-mv__copy__wrap span {
          font-size: 14px; }
      .p-mv__news__title a {
        width: 100%; }
      .c-pageHead--type03 .c-pageHead__lead {
        text-align: left; }
    .c-instagram--type01 .c-instagram__item {
      width: calc(100% / 3 - 10px);
      padding-top: calc(100% / 3 - 10px); }
      .p-home--type01 .p-home__col--type01 {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .p-home--type01 .p-home__col--type01 .p-home__item {
          width: calc(100% / 2 - 20px); }
          .p-home--type01 .p-home__col--type01 .p-home__item:nth-child(2n) {
            margin-left: 30px; }
      .p-service-sub__guide .p-service-sub__pricebox__table {
        width: 500px; }
        .p-service-sub__guide .p-service-sub__pricebox__table th, .p-service-sub__guide .p-service-sub__pricebox__table td {
          padding: 5px; }
    .p-service-sub__guide .p-service-sub__pricebox__overflowx {
      width: 100%;
      overflow-x: scroll;
      -webkit-overflow-scrolling: touch;
      overflow-scrolling: touch; }
    .p-contact-index__form {
      margin-bottom: 40px; }
        .p-contact-index__form__btns .prev {
          margin-right: 0;
          margin-top: 25px; } }

@media screen and (min-width: 1024px) and (max-height: 800px) {
    #pageTop {
      bottom: 20px; } }

@media screen and (max-width: 1100px) {
    .p-mv__news {
      left: calc(50% + 30px);
      width: 45%; }
    .p-mv__news__date {
      display: inline-block;
      width: auto; }
    .p-mv__news__category--type01 {
      display: inline-block;
      width: auto; }
    .p-mv__news__title {
      display: block;
      padding-right: 0;
      padding-left: 0; } }

@media screen and (max-width: 1040px) {
      .c-site-search__form {
        width: calc(100% - 40px); } }

@media screen and (max-width: 320px) {
        .c-news--home .c-news__index a {
          padding-right: 5px;
          padding-left: 5px; }
    .c-instagram--type02 .c-instagram__item {
      width: calc(100% / 2 - 6px);
      height: 100%;
      padding-top: calc(100% / 2 - 6px); }
      .c-instagram--type02 .c-instagram__item.is-inactive {
        padding-top: calc(100% / 2 - 6px); }
    .br--vp320 {
      display: inline-block !important; } }

@media screen and (max-width: 500px) {
    .c-sns--type01 .c-sns__item {
      width: 100%; } }

@media screen and (max-width: 1030px) {
    .fc-custom__close {
      top: -50px;
      right: -5px;
      width: 50px;
      height: 50px;
      background-position: right 10px top 10px;
      background-size: 34px 34px; }
  .fc-custom__prev, .fc-custom__next {
    top: -56px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: #fff;
    background-size: 100% auto;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none; }
    .fc-custom__next {
      right: auto;
      left: 64px; }
    .fc-custom__prev {
      left: 0; } }

@media screen and (max-width: 1420px) {
      .p-home--type02 .p-home__wrap {
        width: 1200px;
        padding-left: 0; }
    .p-service-top__list--type02 {
      width: 100%; }
      .p-service-top__list--type02 .p-service-top__item {
        width: 31%;
        margin-bottom: 40px; }
    .p-corporate-sub__wrap__2col .p-service-top__list--type02 {
      width: 100%; }
      .p-corporate-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
        width: 48%;
        margin-bottom: 40px; }
    .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 {
      width: 100%; }
      .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
        width: 48%;
        margin-bottom: 40px; }
    .p-recruit-top__list--type02 {
      width: 100%;
      margin-bottom: 40px; }
      .p-recruit-top__list--type02 .p-recruit-top__item {
        width: 31%;
        margin-bottom: 40px; } }

@media screen and (max-width: 1420px) and (max-width: 1200px) {
    .p-home--type02 .p-home__wrap {
      width: calc(100% - 40px); }
    .p-service-top__list--type02 {
      padding: 40px 20px 10px; }
    .p-corporate-sub__wrap__2col .p-service-top__list--type02 {
      padding: 40px 20px 10px; }
    .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 {
      padding: 40px 20px 10px; }
    .p-recruit-top__list--type02 {
      padding: 40px 20px 10px; } }

@media screen and (max-width: 1024px) {
    .p-home--type03 {
      height: 270px;
      margin-top: -120px; }
    .p-home--type04 {
      margin-top: -500px;
      margin-bottom: 0; } }

@media screen and (min-width: 601px) and (max-width: 1200px) {
      .p-home--type03 img {
        height: 55vw; } }

@media screen and (max-width: 1024px) and (max-width: 600px) {
    .p-home--type04 {
      margin-top: -430px; } }

@media screen and (min-width: 601px) and (max-width: 1199px) {
      .p-home--type04 .p-home__wrap {
        right: 30px; } }

@media screen and (min-width: 601px) and (max-width: 1024px) {
      .p-home--type04 .p-home__wrap {
        position: relative;
        top: -20px;
        right: 0;
        left: 50%;
        margin-left: -218px; } }

@media screen and (max-width: 1200px) and (max-width: 600px) {
    .p-home--type06 .p-home__wrap {
      padding-top: 10px; }
    .p-service-top__list--type01 .p-service-top__item {
      width: 100%;
      margin-bottom: 35px; }
    .p-rehacare__sec01 {
      padding: 90px 20px 90px;
      margin-top: -60px; }
    .p-rehacare__sec06__page_list li {
      width: 100%; }
    .p-genuine_care-sub__col2--type02__desc {
      margin-right: 0; }
    .p-genuine_care-sub__col2--type02__ul {
      margin-right: 0; }
    .p-genuine_care-sub__col2--type03__desc {
      margin-left: 0; }
    .p-genuine_care-sub__col2--type03__ul {
      margin-left: 0; }
    .page-recruit__adoption {
      display: block;
      margin-bottom: 70px; }
    .page-recruit__adoption__box {
      width: 100%;
      background: inherit;
      padding: 0; }
      .page-recruit__adoption__box:nth-child(1) {
        margin-bottom: 50px; }
    .p-recruit-top__list--type01 .p-recruit-top__item {
      width: 100%;
      margin-bottom: 35px; }
    .p-recruit-top__sns__fb, .p-recruit-top__sns__tw {
      width: 100%; }
    .p-recruit-sub__note__desc p {
      text-align: left; }
    .p-recruit-sub__appare__img {
      margin-right: 0; }
    .p-recruit-sub__col2--type02__desc {
      margin-right: 0; }
    .p-recruit-sub__col2--type02__ul {
      margin-right: 0; }
    .p-recruit-sub__col2--type03__desc {
      margin-left: 0; }
    .p-recruit-sub__col2--type03__ul {
      margin-left: 0; }
    .p-recruit-sub__col2--type04__img {
      width: 100%;
      margin-bottom: 20px; }
    .p-contact-index__box {
      width: 100%;
      padding: 20px; }
    .p-contact-index__tel {
      margin-bottom: 0; }
    .p-contact-index__form__box.mb60 {
      margin-bottom: 40px; }
    .p-magazine-index__list {
      width: 100%;
      padding: 40px 30px; }
    .p-magazine-index__list__item {
      width: calc( (100% - 30px)/2);
      margin-right: 30px;
      margin-bottom: 25px; }
      .p-magazine-index__list__item:nth-child(2n) {
        margin-right: 0; } }

@media screen and (max-width: 550px) {
      .p-home--type08 .p-home__wrap {
        padding: 20px 30px; }
      .p-home--type08 .p-home__head {
        text-align: left;
        font-size: 18px; }
        .p-home--type08 .p-home__head .p-home__br--type02 {
          display: none; } }

@media screen and (max-width: 1050px) {
        .p-home--type08 .p-home__head .p-home__br--type01 {
          display: inline-block; }
        .p-home--type08 .p-home__head .p-home__br--type02 {
          display: none; } }

@media screen and (max-width: 700px) {
        .p-home--type08 .p-home__head .p-home__br--type01 {
          display: none; }
        .p-home--type08 .p-home__head .p-home__br--type02 {
          display: inline-block; } }

@media screen and (max-width: 800px) {
        .p-home__col--type02 .p-home__item:nth-child(1) {
          width: 100%; }
        .p-home__col--type02 .p-home__item:nth-child(2) {
          -webkit-box-flex: inherit;
              -ms-flex: inherit;
                  flex: inherit; }
          .p-facilities__item__info__btn .c-button--type02 {
            width: 100%; }
            .p-facilities__item__info__btn .c-button--type02:nth-child(1) {
              margin-bottom: 10px; }
    .p-network__item {
      padding: 0 20px; }
          .p-network__item__info__btn .c-button--type02 {
            width: 100%; }
            .p-network__item__info__btn .c-button--type02:nth-child(1) {
              margin-bottom: 10px; } }

@media screen and (max-width: 800px) and (max-width: 600px) {
    .p-home__col--type02 .p-home__item:nth-child(1) {
      font-size: 14px; }
    .p-home__col--type02 .p-home__item:nth-child(2) {
      width: 100%; } }

@media screen and (max-width: 666px) {
  .p-head--type01 {
    padding-top: 45px;
    padding-bottom: 40px; }
  .p-head--type01 .p-head__sub {
    font-size: 16px; }
  .p-head--type02 {
    padding-top: 20px;
    padding-bottom: 14px;
    font-size: 16px; }
  .p-head--type03 {
    padding-top: 20px;
    padding-bottom: 14px;
    font-size: 16px; }
  .p-head--type04 .p-head__sub {
    font-size: 16px; } }

@media screen and (max-width: 666px) and (max-width: 600px) {
    .p-head--type01 {
      padding: 0; } }

@media screen and (max-width: 1420px) and (max-width: 768px) {
    .p-service-top__list--type02 .p-service-top__item {
      width: 48%;
      margin-bottom: 40px; }
    .p-corporate-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
      width: 48%;
      margin-bottom: 40px; }
    .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
      width: 48%;
      margin-bottom: 40px; }
    .p-recruit-top__list--type02 .p-recruit-top__item {
      width: 48%;
      margin-bottom: 40px; } }

@media screen and (max-width: 1420px) and (max-width: 768px) and (max-width: 600px) {
    .p-service-top__list--type02 .p-service-top__item {
      width: 47%; }
    .p-corporate-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
      width: 47%; }
    .p-genuine_care-sub__wrap__2col .p-service-top__list--type02 .p-service-top__item {
      width: 47%; }
    .p-recruit-top__list--type02 .p-recruit-top__item {
      width: 47%; } }

@media screen and (min-width: 601px) and (max-width: 800px) {
      .p-facilities__item__img {
        width: 280px; }
    .p-network__map__inner {
      width: 600px; }
      .p-network__map__inner .p-network__marker--type01 {
        top: 86px;
        left: 320px; }
      .p-network__map__inner .p-network__marker--type02 {
        top: 32px;
        left: 115px; }
      .p-network__map__inner .p-network__marker--type03 {
        top: 30px;
        left: 385px; }
      .p-network__map__inner .p-network__marker--type04 {
        top: 67px;
        left: 255px; }
      .p-network__map__inner .p-network__marker--type05 {
        top: 48px;
        left: 327px; }
      .p-network__item__img {
        width: 280px; } }

@media screen and (min-width: 801px) and (max-width: 1200px) {
    .p-network__map__inner {
      width: 800px; }
      .p-network__map__inner .p-network__marker--type01 {
        top: 115px;
        left: 431px; }
      .p-network__map__inner .p-network__marker--type02 {
        top: 44px;
        left: 156px; }
      .p-network__map__inner .p-network__marker--type03 {
        top: 41px;
        left: 520px; }
      .p-network__map__inner .p-network__marker--type04 {
        top: 92px;
        left: 340px; }
      .p-network__map__inner .p-network__marker--type05 {
        top: 66px;
        left: 441px; } }

@media screen and (min-width: 481px) and (max-width: 600px) {
    .p-network__map__inner {
      width: 480px; }
      .p-network__map__inner .p-network__marker--type01 {
        top: 59px;
        left: 246px; }
      .p-network__map__inner .p-network__marker--type02 {
        top: 17px;
        left: 84px; }
      .p-network__map__inner .p-network__marker--type03 {
        top: 15px;
        left: 301px; }
      .p-network__map__inner .p-network__marker--type04 {
        top: 45px;
        left: 194px; }
      .p-network__map__inner .p-network__marker--type05 {
        top: 30px;
        left: 254px; }
    .br--small {
      display: inline-block !important; } }

@media screen and (max-width: 1200px) and (max-width: 750px) {
    .p-rehacare__head__logo {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      top: inherit;
      margin-top: inherit;
      padding: 0 40px;
      text-align: center; } }

@media screen and (max-width: 750px) {
    .p-rehacare__head__img--type01 {
      display: none; }
    .p-rehacare__head__img--type02 {
      display: block; } }

@media screen and (max-width: 1200px) and (max-width: 768px) {
    .p-contact-index__form__btns {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 40px; } }

@media screen and (min-width: 1421px) {
    .br--largeOver {
      display: inline-block !important; } }

@media screen and (min-width: 1201px) and (max-width: 1420px) {
    .br--large {
      display: inline-block !important; } }

@media screen and (min-width: 769px) and (max-width: 1200px) {
    .br--medium {
      display: inline-block !important; } }

@media screen and (min-width: 601px) and (max-width: 768px) {
    .br--tablet {
      display: inline-block !important; } }

/*# sourceMappingURL=../maps/base.css.map */
