@charset "UTF-8";
/* K 90%*/
/*----------------------------------------------------
    ブラウザ設定初期化
----------------------------------------------------*/
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;
}

.ie7 img {
  -ms-interpolation-mode: bicubic;
}

li {
  list-style-type: none;
}

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

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

* {
  box-sizing: inherit;
}

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

/*----------------------------------------------------
    ウィンドウ高さ100%を有効にする
----------------------------------------------------*/
/*----------------------------------------------------
    基本設定、リンクカラーなど
----------------------------------------------------*/
a {
  background-color: transparent;
}

b, strong {
  font-weight: bold;
}

hr {
  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: inherit;
  color: inherit;
}

button {
  overflow: visible;
}

button, input {
  line-height: normal;
}

button, select {
  text-transform: none;
}

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

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

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

input[type="search"] {
  box-sizing: content-box;
  -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

input {
  line-height: normal;
}

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

/*----------------------------------------------------
    背景色、リンクカラーなど
----------------------------------------------------*/
body {
  min-width: 1020px;
  background-color: #fff;
}

@media screen and (max-width: 999px) {
  body {
    min-width: 100%;
  }
}

a {
  color: #0062a3;
}

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

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

/*----------------------------------------------------
    フォント指定
----------------------------------------------------*/
@font-face {
  font-family: "GenJyuuP";
  font-style: normal;
  font-weight: 400;
  src: url("/webfont/GenJyuuGothic-P-Normal.woff2") format("woff2"), url("/webfont/GenJyuuGothic-P-Normal.woff") format("woff"), url("../webfont/GenJyuuGothic-P-Normal.ttf") format("ttf"), url("../webfont/GenJyuuGothic-P-Normal.eot") format("eot");
}

@font-face {
  font-family: "GenJyuuP-B";
  font-style: normal;
  font-weight: bold;
  src: url("/webfont/GenJyuuGothic-P-Bold.woff2") format("woff2"), url("/webfont/GenJyuuGothic-P-Bold.woff") format("woff"), url("../webfont/GenJyuuGothic-P-Bold.ttf") format("ttf"), url("../webfont/GenJyuuGothic-P-Bold.eot") format("eot");
}

@font-face {
  font-family: "GenShin";
  font-style: normal;
  font-weight: 400;
  src: url("/webfont/GenShinGothic-Medium.woff2") format("woff2"), url("/webfont/GenShinGothic-Medium.woff") format("woff"), url("../webfont/GenShinGothic-Medium.ttf") format("ttf"), url("../webfont/GenShinGothic-Medium.eot") format("eot");
}

@font-face {
  font-family: "GenShin-B";
  font-style: normal;
  font-weight: bold;
  src: url("/webfont/GenShinGothic-Bold.woff2") format("woff2"), url("/webfont/GenShinGothic-Bold.woff") format("woff"), url("../webfont/GenShinGothic-Bold.ttf") format("ttf"), url("../webfont/GenShinGothic-Bold.eot") format("eot");
}

@font-face {
  font-family: "GenShin-L";
  font-style: normal;
  font-weight: bold;
  src: url("/webfont/GenShinGothic-Light.woff2") format("woff2"), url("/webfont/GenShinGothic-Light.woff") format("woff"), url("../webfont/GenShinGothic-Light.ttf") format("ttf"), url("../webfont/GenShinGothic-Light.eot") format("eot");
}

@font-face {
  font-family: "SourceHanSansJP";
  font-style: normal;
  font-weight: 400;
  src: url("/webfont/SourceHanSansJP.woff2") format("woff2"), url("/webfont/SourceHanSansJP.woff") format("woff");
}

@font-face {
  font-family: "SourceHanSansJP-B";
  font-style: normal;
  font-weight: bold;
  src: url("/webfont/SourceHanSansJP-B.woff2") format("woff2"), url("/webfont/SourceHanSansJP-B.woff") format("woff");
}

@font-face {
  font-family: "Akrobat";
  font-style: normal;
  font-weight: bold;
  src: url("/webfont/Akrobat-Black.woff2") format("woff2"), url("/webfont/Akrobat-Black.woff") format("woff");
}

@font-face {
  font-family: YuGothicB;
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

@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.75;
  font-size: 16px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  color: #000;
}

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

@media screen and (max-width: 480px) {
  body {
    font-size: 14px !important;
  }
}

@media screen and (max-width: 374px) {
  body {
    font-size: 13px !important;
  }
}

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

/*----------------------------------------------------
    #pageWrap
----------------------------------------------------*/
#pageWrap {
  padding-top: 100px;
}

@media screen and (max-width: 666px) {
  #pageWrap {
    padding-top: 60px;
  }
}

.page-home #pageWrap {
  padding-top: 70px;
}

#pageWrap.is-active {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

/*----------------------------------------------------
    .header
----------------------------------------------------*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 300;
  width: 100%;
  height: 100px;
  border-bottom: 1px solid #efefef;
  background-color: #fff;
}

@media screen and (max-width: 666px) {
  .header {
    height: 60px;
  }
}

@media print {
  .header {
    position: absolute;
  }
}

.header__wrap {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
  height: 100%;
}

@media screen and (max-width: 666px) {
  .header__wrap {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

.header.is-active {
  height: 70px;
}

/*  .header > .hdLogo
----------------------------------------------------*/
.hdLogo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.hdLogo a {
  display: inline-block;
  height: 100%;
}

@media screen and (max-width: 666px) {
  .hdLogo a {
    height: 30px;
  }
}

.hdLogo img {
  width: auto;
  height: 100%;
}

/*----------------------------------------------------
    #gNav.gNav
----------------------------------------------------*/
.gNav {
  display: none;
  clear: both;
  width: 100%;
  height: 39px;
  background-color: #fff;
}

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

.gNav__container {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .gNav__container {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

.gNav__container li {
  position: relative;
  float: left;
  width: 153px;
  height: 39px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .gNav__container li {
    float: none;
    padding-bottom: 0;
  }
}

.gNav__container li:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 30px;
  background-color: #efefef;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .gNav__container li:first-child {
    border-left: none;
  }
}

.gNav__container li:first-child:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 30px;
  background-color: #efefef;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.gNav__container li a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
  width: 100%;
  text-align: center;
}

.gNav__container li a:hover, .gNav__container li a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.gNav__container li a img {
  vertical-align: middle;
}

.gNav__container li .gNav__text {
  margin-left: 5px;
}

.gNav #gNav__item01 {
  width: 82px;
}

/*----------------------------------------------------
    .footer
------------------------------------------------------*/
.footer__wrap {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .footer__wrap {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

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

.footer__wrap--type01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 666px) {
  .footer__wrap--type01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.footer__wrap--type02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 45px;
}

/*  .footer > .copyright
----------------------------------------------------*/
.footer__copyright {
  padding-top: 35px;
  padding-bottom: 35px;
  border-top: 1px solid #9e9c9c;
  line-height: 1;
  text-align: center;
  font-size: 14px;
}

/*  .footer > .footer__contact
----------------------------------------------------*/
.footer__contact {
  margin-bottom: 40px;
  padding: 55px;
  background-color: #0062a3;
  text-align: center;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .footer__contact {
    width: 100%;
    border-right: none;
  }
}

@media screen and (max-width: 666px) {
  .footer__contact {
    margin-bottom: 15px;
    padding: 30px 20px;
    margin-bottom: 60px;
  }
}

.footer__contactText {
  margin-bottom: 30px;
  line-height: 1.25;
  font-size: 28px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 666px) {
  .footer__contactText {
    margin-bottom: 20px;
    font-size: 20px;
  }
}

.footer__contactTel {
  margin-bottom: 40px;
  font-weight: bold;
  font-size: 44px;
}

@media screen and (max-width: 666px) {
  .footer__contactTel {
    margin-bottom: 20px;
    font-size: 24px;
  }
}

.footer__contactLink {
  display: block;
  width: 350px;
  margin-right: auto;
  margin-left: auto;
  padding: 16px;
  border: 1px solid #fff;
  line-height: 1.25;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.footer__contactLink:link, .footer__contactLink:visited, .footer__contactLink:hover, .footer__contactLink:active, .footer__contactLink:focus {
  color: #fff;
}

.footer__contactLink:link, .footer__contactLink:visited, .footer__contactLink:hover, .footer__contactLink:active, .footer__contactLink:focus {
  text-decoration: none;
}

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

.footer__contactLink:hover, .footer__contactLink:active {
  background-color: #fff;
  color: #0062a3;
}

/*  .footer > .footer__inner
----------------------------------------------------*/
.footer__inner {
  width: 260px;
  font-size: 16px;
}

@media screen and (max-width: 666px) {
  .footer__inner {
    text-align: center;
  }
}

/*  .footer > .footer__logo
----------------------------------------------------*/
.footer__logo {
  width: 203px;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .footer__logo {
    width: 100%;
    margin-bottom: 50px;
    text-align: center;
  }
  .footer__logo img {
    width: 100%;
    height: auto;
  }
}

.footer__logo a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: inline-block;
}

.footer__logo a:hover, .footer__logo a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

/*  .footer > .footer__address
----------------------------------------------------*/
.footer__address {
  margin-bottom: 10px;
}

/*  .footer > .footer__snsLink
----------------------------------------------------*/
.footer__snsLink {
  font-size: 14px;
}

.footer__snsLink a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.footer__snsLink a:link, .footer__snsLink a:visited, .footer__snsLink a:hover, .footer__snsLink a:active, .footer__snsLink a:focus {
  color: #000;
}

.footer__snsLink a:link, .footer__snsLink a:visited {
  text-decoration: none;
}

.footer__snsLink a:hover, .footer__snsLink a:active {
  text-decoration: underline;
}

.footer__snsLink a:hover, .footer__snsLink a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.footer__snsLink img {
  width: 24px;
  height: 24px;
  margin-left: 7px;
  vertical-align: middle;
}

/*  .footer > .fNav--type01
----------------------------------------------------*/
.fNav--type01 {
  width: 672px;
}

@media screen and (max-width: 768px) {
  .fNav--type01 {
    width: calc(100% - 80px);
    margin-left: 80px;
  }
}

@media screen and (max-width: 666px) {
  .fNav--type01 {
    width: 100%;
    margin-left: 0;
  }
}

.fNav--type01 .fNav__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: -20px;
}

@media screen and (max-width: 768px) {
  .fNav--type01 .fNav__container {
    margin-top: 0;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.fNav--type01 .fNav__item {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .fNav--type01 .fNav__item {
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .fNav--type01 .fNav__item {
    margin-left: 0;
  }
}

.fNav--type01 .fNav__item:nth-child(1), .fNav--type01 .fNav__item:nth-child(5) {
  width: 130px;
}

.fNav--type01 .fNav__item:nth-child(2), .fNav--type01 .fNav__item:nth-child(6) {
  width: 148px;
}

.fNav--type01 .fNav__item:nth-child(3), .fNav--type01 .fNav__item:nth-child(7) {
  width: 210px;
}

.fNav--type01 .fNav__item:nth-child(4), .fNav--type01 .fNav__item:nth-child(8) {
  width: 174px;
}

@media screen and (max-width: 768px) {
  .fNav--type01 .fNav__item:nth-child(1), .fNav--type01 .fNav__item:nth-child(5), .fNav--type01 .fNav__item:nth-child(2), .fNav--type01 .fNav__item:nth-child(6), .fNav--type01 .fNav__item:nth-child(3), .fNav--type01 .fNav__item:nth-child(4), .fNav--type01 .fNav__item:nth-child(8) {
    width: calc(100% / 4);
  }
}

@media screen and (max-width: 768px) {
  .fNav--type01 .fNav__item:nth-child(7) {
    width: calc((100% / 4)*2);
  }
}

@media screen and (max-width: 666px) {
  .fNav--type01 .fNav__item:nth-child(2n-1) {
    width: calc(60% - 10px);
  }
}

@media screen and (max-width: 666px) {
  .fNav--type01 .fNav__item:nth-child(2n) {
    width: calc(40% - 10px);
  }
}

.fNav--type01 .fNav__item a {
  display: block;
  position: relative;
  padding-left: 22px;
  background: url(../img/icn_arrow01.svg) no-repeat 0 45%;
  line-height: 1.25;
}

.fNav--type01 .fNav__item a:link, .fNav--type01 .fNav__item a:visited, .fNav--type01 .fNav__item a:hover, .fNav--type01 .fNav__item a:active, .fNav--type01 .fNav__item a:focus {
  text-decoration: none;
}

.fNav--type01 .fNav__item a:link, .fNav--type01 .fNav__item a:visited, .fNav--type01 .fNav__item a:hover, .fNav--type01 .fNav__item a:active, .fNav--type01 .fNav__item a:focus {
  color: #3e3a39;
}

/*  .footer > .fNav--type02
----------------------------------------------------*/
.fNav--type02 {
  position: relative;
  width: 100%;
  height: 55px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .fNav--type02 {
    width: 100%;
  }
}

.fNav--type02 a {
  display: block;
}

.fNav--type02 a:link, .fNav--type02 a:visited {
  text-decoration: none;
}

.fNav--type02 a:hover, .fNav--type02 a:active {
  text-decoration: underline;
}

.fNav--type02 .fNav__wrap {
  overflow: hidden;
  position: relative;
  width: calc(100% - 162px);
  height: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .fNav--type02 .fNav__wrap {
    width: 210px;
  }
}

.fNav--type02 .fNav__container {
  position: relative;
  width: 2000px;
}

.fNav--type02 .fNav__item {
  float: left;
  width: 286px;
  height: 62px;
}

@media screen and (max-width: 666px) {
  .fNav--type02 .fNav__item {
    width: 210px;
  }
}

.fNav--type02 .fNav__item a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
  position: relative;
  width: 210px;
  height: 62px;
  margin-right: auto;
  margin-left: auto;
}

.fNav--type02 .fNav__item a:hover, .fNav--type02 .fNav__item a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.fNav--type02 .fNav__item a img {
  width: 100%;
  height: auto;
}

.fNav--type02 .fNav__controls {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.fNav--type02 .fNav__controls button {
  overflow: hidden;
  position: absolute;
  top: 12px;
  width: 17px;
  height: 32px;
  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;
}

.fNav--type02 .fNav__controls .fNav__controls--prev {
  left: 53px;
  background-image: url(/img/btn_prev01.svg);
}

@media screen and (max-width: 666px) {
  .fNav--type02 .fNav__controls .fNav__controls--prev {
    left: 10px;
  }
}

.fNav--type02 .fNav__controls .fNav__controls--next {
  right: 53px;
  background-image: url(/img/btn_next01.svg);
}

@media screen and (max-width: 666px) {
  .fNav--type02 .fNav__controls .fNav__controls--next {
    right: 10px;
  }
}

/*----------------------------------------------------
    .spNav
------------------------------------------------------*/
.spNav {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  height: 100%;
}

@media print {
  .spNav {
    position: absolute;
  }
}

.spNav .spNav__wrap {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 98, 163, 0.95);
  -webkit-transition: visibility 0.4s ease, opacity 0.4s ease;
  transition: visibility 0.4s ease, opacity 0.4s ease;
}

.spNav .spNav__wrap.is-open {
  visibility: visible;
  opacity: 1;
  z-index: 1;
}

.spNav .spNav__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100vh;
}

/*  .spNav > #gNavSpButton.gNavSp__btn
----------------------------------------------------*/
.gNavSp__btn {
  position: absolute;
  top: 13px;
  right: 60px;
  z-index: 201;
  width: 44px;
  height: 44px;
}

@media screen and (max-width: 768px) {
  .gNavSp__btn {
    top: 6px;
    right: 10px;
  }
}

.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;
}

.gNavSp__btn button span {
  display: inline-block;
  position: absolute;
  left: 4px;
  width: 36px;
  height: 4px;
  background-color: #3e3a39;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.gNavSp__btn button span:nth-of-type(1) {
  top: 8px;
}

.gNavSp__btn button span:nth-of-type(2) {
  top: 20px;
}

.gNavSp__btn button span:nth-of-type(3) {
  bottom: 8px;
}

.gNavSp__btn button.is-open {
  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);
}

/*  .spNav > .spNav--type01
----------------------------------------------------*/
.spNav--type01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 30px;
  padding-bottom: 30px;
}

.spNav--type01 li a {
  display: block;
  position: relative;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 1;
  text-align: center;
  font-size: 30px;
}

.spNav--type01 li a:link, .spNav--type01 li a:visited, .spNav--type01 li a:hover, .spNav--type01 li a:active, .spNav--type01 li a:focus {
  text-decoration: none;
}

.spNav--type01 li a:link, .spNav--type01 li a:visited, .spNav--type01 li a:hover, .spNav--type01 li a:active, .spNav--type01 li a:focus {
  color: #fff;
}

@media screen and (max-width: 666px) {
  .spNav--type01 li a {
    margin-top: 6px;
    margin-bottom: 6px;
    font-size: 20px;
  }
}

.spNav--type01 li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 1px;
  background-color: #fff;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}

.spNav--type01 li a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #fff;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}

.spNav--type01 li a:hover:before {
  width: 100%;
}

.spNav--type01 li a:hover:after {
  width: 100%;
}

@media screen and (max-width: 666px) {
  .spNav--type01 li a:before, .spNav--type01 li a:after {
    display: none;
  }
}

.spNav--type01 li.spNav--fb a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  padding-top: 10px;
  padding-bottom: 0;
}

.spNav--type01 li.spNav--fb a:hover, .spNav--type01 li.spNav--fb a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.spNav--type01 li.spNav--fb a:before, .spNav--type01 li.spNav--fb a:after {
  display: none;
}

.spNav--type01 li.spNav--fb a img {
  width: 30px;
  height: 30px;
}

/*  .spNav > .spNav--fb
----------------------------------------------------*/
/*----------------------------------------------------
    .topicPath
----------------------------------------------------*/
.topicPath {
  overflow: auto;
  position: fixed;
  top: 100px;
  right: 0;
  z-index: 200;
  width: 80px;
  height: calc(100% - 100px);
  border-left: 1px solid #ddd;
  background-color: #fff;
}

@media screen and (max-width: 1182px) {
  .topicPath {
    display: none;
  }
}

@media print {
  .topicPath {
    display: none;
  }
}

.topicPath__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 600px;
  margin-top: -50px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
}

.topicPath__item {
  margin-bottom: 24px;
  line-height: 1.25;
  font-family: serif;
}

.topicPath__item:not(:last-child) {
  margin-right: 16px;
  padding-right: 31px;
  background: url(../img/icn_arrow02.svg) no-repeat 100% 50%;
}

.topicPath__item a:link, .topicPath__item a:visited, .topicPath__item a:hover, .topicPath__item a:active, .topicPath__item a:focus {
  color: #000;
}

.topicPath__item a:link, .topicPath__item a:visited {
  text-decoration: none;
}

.topicPath__item a:hover, .topicPath__item a:active {
  text-decoration: underline;
}

.topicPath #topicLv01 {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
  width: 28px;
  height: 34px;
  margin-right: 0;
  background: url(../img/icn_home01.svg) no-repeat 50% 50%;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

/*----------------------------------------------------
    #contents
----------------------------------------------------*/
/*----------------------------------------------------
    Page Top
----------------------------------------------------*/
.c-pageTop {
  margin-top: 100px;
}

@media screen and (max-width: 768px) {
  .c-pageTop {
    margin-top: 60px;
  }
}

/*  .secPageTop > #pageTop
----------------------------------------------------*/
#pageTop {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  right: 120px;
  bottom: 30px;
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 1px solid #0062a3;
  border-radius: 50%;
  background: #fff url(/img/btn_pagetop01.svg) no-repeat 0 0;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}

.page-home #pageTop {
  right: 20px;
}

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

#pageTop.is-inactive {
  visibility: hidden;
  opacity: 0;
}

@media screen and (max-width: 768px) {
  #pageTop {
    right: 15px;
    bottom: 15px;
    background-color: rgba(255, 255, 255, 0.7);
  }
}

@media print {
  #pageTop {
    display: none;
  }
}

/*====================================================

  ページ共通パーツ

====================================================*/
/*----------------------------------------------------
    .c-wrap
----------------------------------------------------*/
.c-wrap--type01, .c-wrap--type04 {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .c-wrap--type01, .c-wrap--type04 {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
}

.c-main .c-wrap--type01:first-child {
  padding-top: 0;
}

.c-main .c-wrap--type01:first-child.c-bg {
  padding-top: 80px;
}

.c-main .c-wrap--type01:last-child {
  padding-bottom: 0;
}

.c-main .c-wrap--type01:last-child.c-bg {
  padding-bottom: 80px;
}

.c-wrap--type02 {
  padding: 30px;
  background-color: #fff;
}

@media screen and (max-width: 666px) {
  .c-wrap--type02 {
    padding: 15px;
  }
}

.c-wrap--type03 {
  padding-top: 20px;
  padding-bottom: 20px;
}

/*----------------------------------------------------
    .c-main
----------------------------------------------------*/
/*----------------------------------------------------
    .c-sub
----------------------------------------------------*/
/*----------------------------------------------------
    .c-categoryHead
----------------------------------------------------*/
.c-categoryHead {
  position: relative;
}

.c-categoryHead__inner {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 100px;
  padding-bottom: 80px;
}

@media screen and (max-width: 666px) {
  .c-categoryHead__inner {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .c-categoryHead__inner {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-categoryHead__inner {
    padding-top: 20px;
    padding-bottom: 40px;
  }
}

.page-notFound .c-categoryHead__inner {
  padding-top: 210px;
}

.c-categoryHead__head {
  text-align: center;
}

.c-categoryHead__head--notfound {
  line-height: 1;
  letter-spacing: 0.5em;
  font-family: Akrobat, serif;
  font-size: 42px;
  color: #595757;
}

.c-categoryHead__head .c-headText, .c-categoryHead__head .c-headText--type01, .c-categoryHead__head .c-headText--type02, .c-categoryHead__head .c-headText--type03, .c-categoryHead__head .c-headText--type04 {
  display: block;
  line-height: 1.25;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
}

.c-categoryHead__head .c-headText--type01 {
  display: block;
  letter-spacing: 0.2em;
  font-size: 33px;
  font-family: GenJyuuP, sans-serif;
}

@media screen and (max-width: 768px) {
  .c-categoryHead__head .c-headText--type01 {
    font-size: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-categoryHead__head .c-headText--type01 {
    font-size: 24px;
  }
}

.c-categoryHead__head .c-headText--type01:before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  display: inline-block;
  margin-right: 20px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: contain;
  vertical-align: middle;
}

@media screen and (max-width: 666px) {
  .c-categoryHead__head .c-headText--type01:before {
    width: 42px;
    height: 42px;
  }
}

.c-categoryHead__head.c-categoryHead__head--about .c-headText--type01:before {
  background-image: url(/img/icn_about01.svg);
}

.c-categoryHead__head.c-categoryHead__head--service .c-headText--type01:before {
  background-image: url(/img/icn_service01.svg);
}

.c-categoryHead__head.c-categoryHead__head--recruit .c-headText--type01:before {
  background-image: url(/img/icn_recruit01.svg);
}

.c-categoryHead__head.c-categoryHead__head--faq .c-headText--type01:before {
  background-image: url(/img/icn_faq01.svg);
}

.c-categoryHead__head.c-categoryHead__head--topics .c-headText--type01:before {
  background-image: url(/img/icn_topics01.svg);
}

.c-categoryHead__head.c-categoryHead__head--contact .c-headText--type01:before {
  background-image: url(/img/icn_contact01.svg);
}

.c-categoryHead__head.c-categoryHead__head--privacy .c-headText--type01:before {
  background-image: url(/img/icn_privacy01.svg);
}

.c-categoryHead__head .c-headText--type02 {
  margin-top: 30px;
  text-indent: 0.25em;
  letter-spacing: 0.25em;
  font-size: 40px;
}

@media screen and (max-width: 768px) {
  .c-categoryHead__head .c-headText--type02 {
    font-size: 32px;
  }
}

@media screen and (max-width: 666px) {
  .c-categoryHead__head .c-headText--type02 {
    letter-spacing: 0.15em;
    font-size: 24px;
    margin-top: 20px;
  }
}

.c-categoryHead__head .c-headText--type03 {
  margin-top: 30px;
  font-size: 23px;
}

@media screen and (max-width: 666px) {
  .c-categoryHead__head .c-headText--type03 {
    font-size: 20px;
  }
}

.c-categoryHead__head .c-headText--type05 {
  margin-top: 20px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  font-size: 16px;
}

@media screen and (max-width: 666px) {
  .c-categoryHead__head .c-headText--type05 {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 13px;
  }
}

.c-categoryHead__head .c-headIcon--type01 {
  display: block;
  height: 85px;
  margin-top: 65px;
  margin-bottom: -30px;
}

.c-categoryHead__head .c-headIcon--type01 img {
  width: auto;
  height: 100%;
}

.c-categoryHead--ows01 {
  position: relative;
  height: 325px;
}

@media screen and (max-width: 768px) {
  .c-categoryHead--ows01 {
    height: auto;
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 666px) {
  .c-categoryHead--ows01 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

.c-categoryHead--ows01 .c-categoryHead__head {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
  .c-categoryHead--ows01 .c-categoryHead__head {
    position: static;
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .c-categoryHead--ows01 .c-categoryHead__head svg {
    width: 100%;
    height: auto;
  }
}

.c-categoryHead--ows02 .c-categoryHead__head {
  padding-top: 70px;
  padding-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .c-categoryHead--ows02 .c-categoryHead__head {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 666px) {
  .c-categoryHead--ows02 .c-categoryHead__head {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
    padding-top: 25px;
    padding-bottom: 30px;
  }
  .c-categoryHead--ows02 .c-categoryHead__head img {
    width: 100%;
    height: auto;
  }
}

/*----------------------------------------------------
    .c-lead
----------------------------------------------------*/
.c-lead {
  padding-bottom: 80px;
  line-height: 2.1;
}

@media screen and (max-width: 666px) {
  .c-lead {
    line-height: 1.7;
  }
}

.c-lead--type01 {
  text-align: center;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-lead--type01 {
    padding-bottom: 40px;
    font-size: 13px;
  }
}

.c-lead--type02 {
  padding-bottom: 100px;
  text-align: left;
}

@media screen and (max-width: 666px) {
  .c-lead--type02 {
    padding-bottom: 60px;
  }
}

.c-lead--type03 {
  text-align: center;
}

.c-lead--type04 {
  text-align: left;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-lead--type04 {
    padding-bottom: 60px;
    font-size: 13px;
  }
}

/*----------------------------------------------------
    .c-address
----------------------------------------------------*/
.c-address--type01 {
  line-height: 1.25;
  text-align: center;
}

.c-address--type01 .c-address__name {
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 25px;
}

@media screen and (max-width: 666px) {
  .c-address--type01 .c-address__name {
    font-size: 22px;
  }
}

.c-address--type01 .c-address__detail {
  margin-bottom: 20px;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-address--type01 .c-address__detail {
    font-size: 14px;
  }
}

.c-address--type01 .c-address__tel {
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-address--type01 .c-address__tel {
    font-size: 14px;
  }
}

@media screen and (max-width: 666px) {
  .c-address--type01 .c-address__text01 {
    display: block;
    line-height: 1.6;
  }
}

.c-address--type01 .c-address__text01 + .c-address__text01 {
  padding-left: 1em;
}

@media screen and (max-width: 666px) {
  .c-address--type01 .c-address__text01 + .c-address__text01 {
    padding-left: 0;
  }
}

/*----------------------------------------------------
    .c-pageNav
----------------------------------------------------*/
.c-pageNav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  padding-top: 40px;
  border-top: 1px solid #000;
}

.c-pageNav--type01 a:link, .c-pageNav--type01 a:visited, .c-pageNav--type01 a:hover, .c-pageNav--type01 a:active, .c-pageNav--type01 a:focus {
  color: #000;
}

.c-pageNav--type01 a:link, .c-pageNav--type01 a:visited {
  text-decoration: none;
}

.c-pageNav--type01 a:hover, .c-pageNav--type01 a:active {
  text-decoration: underline;
}

.c-pageNav .c-pageNav__prev,
.c-pageNav .c-pageNav__next {
  width: 50%;
}

.c-pageNav .c-pageNav__prev:last-child {
  width: 100%;
}

.c-pageNav .c-pageNav__next {
  text-align: right;
}

.c-pageNav .c-pageNav__next:first-child {
  width: 100%;
}

/*====================================================

  見出しスタイル

====================================================*/
/*----------------------------------------------------
    .c-head--base01
----------------------------------------------------*/
.c-head--base01, .c-head--type01, .c-head--type02, .c-head--type08, .c-head--type10, .c-head--type12, .c-head--type13, .c-head--type22, .c-text--type07 {
  line-height: 1.25;
  text-align: center;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

/*----------------------------------------------------
    .c-head--type01
----------------------------------------------------*/
.c-head--type01 {
  margin-bottom: 70px;
}

@media screen and (max-width: 666px) {
  .c-head--type01 {
    margin-bottom: 30px;
  }
}

.c-head--type01 .c-head__main {
  display: block;
  margin-bottom: 30px;
  font-size: 38px;
}

@media screen and (max-width: 666px) {
  .c-head--type01 .c-head__main {
    font-size: 24px;
    margin-bottom: 10px;
  }
}

.c-head--type01 .c-head__sub {
  display: block;
  font-size: 16px;
}

@media screen and (max-width: 666px) {
  .c-head--type01 .c-head__sub {
    font-size: 14px;
  }
}

/*----------------------------------------------------
    .c-head--type02
----------------------------------------------------*/
.c-head--type02 {
  margin-bottom: 55px;
}

.c-head--type02 .c-head__main {
  display: inline-block;
  width: 100%;
  font-size: 38px;
}

@media screen and (max-width: 666px) {
  .c-head--type02 .c-head__main {
    font-size: 22px;
  }
}

.c-head--type02 .c-head__number {
  display: block;
  width: 55px;
  height: 55px;
  margin-right: auto;
  margin-bottom: 25px;
  margin-left: auto;
  line-height: 1;
  color: #fff;
}

/*----------------------------------------------------
    .c-head--type03
----------------------------------------------------*/
.c-head--type03 {
  text-align: center;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  font-size: 24px;
}

@media screen and (max-width: 666px) {
  .c-head--type03 {
    font-size: 18px;
  }
}

/*----------------------------------------------------
    .c-head--type04
----------------------------------------------------*/
.c-head--type04 {
  margin-bottom: 60px;
  padding: 8px;
  background-color: #595757;
  line-height: 1.25;
  text-align: center;
  font-weight: normal;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-head--type04 {
    margin-bottom: 30px;
  }
}

/*----------------------------------------------------
    .c-head--type05
----------------------------------------------------*/
.c-head--type05 {
  font-weight: bold;
  font-size: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
}

@media screen and (max-width: 666px) {
  .c-head--type05 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-head--type06
----------------------------------------------------*/
.c-head--type06 {
  margin-bottom: 25px;
  font-weight: bold;
  font-size: 18px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
}

@media screen and (max-width: 666px) {
  .c-head--type06 {
    font-size: 15px;
  }
}

/*----------------------------------------------------
    .c-head--type07
----------------------------------------------------*/
.c-head--type07 {
  font-weight: normal;
  font-size: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
}

@media screen and (max-width: 666px) {
  .c-head--type07 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-head--type08
----------------------------------------------------*/
.c-head--type08 {
  margin-bottom: 70px;
  font-size: 38px;
}

@media screen and (max-width: 768px) {
  .c-head--type08 {
    font-size: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-head--type08 {
    margin-bottom: 50px;
    font-size: 23px;
  }
}

/*----------------------------------------------------
    .c-head--type09
----------------------------------------------------*/
.c-head--type09 {
  line-height: 1.25;
  font-weight: bold;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  color: #0062a3;
}

/*----------------------------------------------------
    .c-head--type10
----------------------------------------------------*/
.c-head--type10 {
  margin-bottom: 70px;
  font-size: 30px;
}

@media screen and (max-width: 666px) {
  .c-head--type10 {
    margin-bottom: 30px;
    font-size: 24px;
  }
}

/*----------------------------------------------------
    .c-head--type11
----------------------------------------------------*/
.c-head--type11 {
  margin-bottom: 70px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-head--type11 {
    margin-bottom: 30px;
  }
}

.c-head--type11 .c-head__number {
  display: block;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .c-head--type11 .c-head__number img {
    width: 60px;
    height: auto;
  }
}

.c-head--type11 .c-head__text {
  display: block;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 30px;
}

@media screen and (max-width: 768px) {
  .c-head--type11 .c-head__text {
    font-size: 25px;
  }
}

@media screen and (max-width: 666px) {
  .c-head--type11 .c-head__text {
    font-size: 20px;
  }
}

/*----------------------------------------------------
    .c-head--type12
----------------------------------------------------*/
.c-head--type12 {
  margin-bottom: 60px;
  font-size: 25px;
}

@media screen and (max-width: 666px) {
  .c-head--type12 {
    font-size: 19px;
    margin-bottom: 30px;
  }
}

/*----------------------------------------------------
    .c-head--type13
----------------------------------------------------*/
.c-head--type13 {
  margin-bottom: 60px;
  font-size: 22px;
}

@media screen and (max-width: 666px) {
  .c-head--type13 {
    margin-bottom: 30px;
    font-size: 18px;
  }
}

/*----------------------------------------------------
    .c-head--type14
----------------------------------------------------*/
.c-head--type14 {
  position: relative;
  margin-bottom: 50px;
  padding: 18px;
  background-color: #0062a3;
  line-height: 1.25;
  text-align: center;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 22px;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-head--type14 {
    font-size: 16px;
  }
}

.c-head--type14:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -17px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17px 510px 0 510px;
  border-color: #0062a3 transparent transparent transparent;
}

@media screen and (max-width: 768px) {
  .c-head--type14:after {
    left: 50%;
    bottom: -35px;
    border-width: 17px 34px 0 34px;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

/*----------------------------------------------------
    .c-head--type15
----------------------------------------------------*/
.c-head--type15 {
  letter-spacing: 0.4em;
  line-height: 1.25;
  text-align: center;
  text-indent: 0.4em;
  font-weight: normal;
  font-family: Akrobat, serif;
  font-size: 27px;
  color: #3e3a39;
}

/*----------------------------------------------------
    .c-head--type16
----------------------------------------------------*/
.c-head--type16 {
  letter-spacing: 0.4em;
  line-height: 1.25;
  text-align: center;
  text-indent: -0.4em;
  font-weight: normal;
  font-family: Akrobat, serif;
  font-size: 41px;
  color: #3e3a39;
}

@media screen and (max-width: 666px) {
  .c-head--type16 {
    font-size: 27px;
    text-indent: -0.2em;
  }
}

/*----------------------------------------------------
    .c-head--type17
----------------------------------------------------*/
.c-head--type17 {
  font-weight: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-size: 22px;
  color: #3e3a39;
}

@media screen and (max-width: 666px) {
  .c-head--type17 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-head--type18
----------------------------------------------------*/
.c-head--type18 {
  margin-bottom: 30px;
  padding: 6px 10px;
  background-color: #efefef;
  line-height: 1.25;
  font-weight: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-size: 18px;
}

/*----------------------------------------------------
    .c-head--type19
----------------------------------------------------*/
.c-head--type19 {
  margin-bottom: 60px;
  line-height: 1.25;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 34px;
}

@media screen and (max-width: 768px) {
  .c-head--type19 {
    font-size: 28px;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 666px) {
  .c-head--type19 {
    margin-bottom: 30px;
    text-align: center;
    font-size: 24px;
  }
}

/*----------------------------------------------------
    .c-head--type20
----------------------------------------------------*/
.c-head--type20 {
  margin-bottom: 25px;
  letter-spacing: 0.5em;
  line-height: 1.25;
  font-weight: bold;
  font-family: GenJyuuP-B, sans-serif;
  font-size: 25px;
  color: #231815;
}

@media screen and (max-width: 666px) {
  .c-head--type20 {
    font-size: 19px;
  }
}

/*----------------------------------------------------
    .c-head--type21
----------------------------------------------------*/
.c-head--type21 {
  margin-bottom: 25px;
  line-height: 1.25;
  font-weight: bold;
  font-family: GenShin-B, sans-serif;
  font-size: 32px;
}

@media screen and (max-width: 768px) {
  .c-head--type21 {
    font-size: 26px;
  }
}

@media screen and (max-width: 666px) {
  .c-head--type21 {
    font-size: 18px;
  }
}

/*----------------------------------------------------
    .c-head--type22
----------------------------------------------------*/
.c-head--type22 {
  line-height: 1.4;
  margin-bottom: 70px;
  font-size: 33px;
}

@media screen and (max-width: 768px) {
  .c-head--type22 {
    font-size: 28px;
  }
}

@media screen and (max-width: 666px) {
  .c-head--type22 {
    font-size: 22px;
    margin-bottom: 40px;
  }
}

/*----------------------------------------------------
    .c-head--type23
----------------------------------------------------*/
.c-head--type23 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-size: 22px;
  font-weight: bold;
  color: #3e3a39;
}

@media screen and (max-width: 666px) {
  .c-head--type23 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-head--type24
----------------------------------------------------*/
.c-head--type24 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
}

/*====================================================

  テキストスタイル

====================================================*/
/*----------------------------------------------------
    .c-notes--type01
----------------------------------------------------*/
.c-notes--type01, .c-notes--type03 {
  position: relative;
  padding-left: 2.25em;
}

.c-notes--type01 span, .c-notes--type03 span {
  position: absolute;
  top: 0;
  left: 0;
}

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

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

/*----------------------------------------------------
    .c-text--type01
----------------------------------------------------*/
.c-text--type01, .c-text--type02 {
  margin-bottom: 60px;
  line-height: 1.9;
  text-align: center;
  letter-spacing: 0.25em;
  font-size: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 666px) {
  .c-text--type01, .c-text--type02 {
    margin-bottom: 30px;
    line-height: 1.7;
    letter-spacing: 0;
    text-align: left;
    font-size: 17px;
  }
}

/*----------------------------------------------------
    .c-text--type02
----------------------------------------------------*/
.c-text--type02 {
  text-indent: 2em;
  color: #3e3a39;
}

@media screen and (max-width: 666px) {
  .c-text--type02 {
    text-indent: 1em;
    letter-spacing: 0;
  }
}

/*----------------------------------------------------
    .c-text--type03
----------------------------------------------------*/
.c-text--type03 {
  line-height: 2.1;
  text-align: center;
  font-size: 20px;
}

@media screen and (max-width: 666px) {
  .c-text--type03 {
    text-align: left;
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-text--type04
----------------------------------------------------*/
.c-text--type04 {
  line-height: 2.1;
  font-size: 20px;
}

@media screen and (max-width: 666px) {
  .c-text--type04 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-text--type05
----------------------------------------------------*/
.c-text--type05 {
  font-size: 20px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 666px) {
  .c-text--type05 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-text--type06
----------------------------------------------------*/
.c-text--type06 {
  text-align: center;
  font-size: 21px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 768px) {
  .c-text--type06 {
    font-size: 19px;
  }
}

@media screen and (max-width: 666px) {
  .c-text--type06 {
    text-align: left;
    font-size: 18px;
  }
}

/*----------------------------------------------------
    .c-text--type07
----------------------------------------------------*/
.c-text--type07 {
  margin-bottom: 70px;
  font-size: 38px;
}

@media screen and (max-width: 768px) {
  .c-text--type07 {
    font-size: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-text--type07 {
    font-size: 23px;
  }
}

/*----------------------------------------------------
    .c-text--type08
----------------------------------------------------*/
.c-text--type08 {
  line-height: 2.1;
  text-align: center;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-text--type08 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-text--type09
----------------------------------------------------*/
.c-text--type09 {
  color: #b70d23;
  font-weight: bold;
  font-size: 12px;
}

/*----------------------------------------------------
    .c-text--type10
----------------------------------------------------*/
.c-text--type10 {
  display: inline-block;
  position: relative;
  padding-top: 10px;
  padding-left: 1em;
  line-height: 1.3;
  font-size: 13px;
}

.c-text--type10 span {
  position: absolute;
  left: 0;
}

/*----------------------------------------------------
    .c-text--type11
----------------------------------------------------*/
.c-text--type11 {
  line-height: 2.3;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 20px;
}

@media screen and (max-width: 768px) {
  .c-text--type11 {
    font-size: 18px;
  }
}

@media screen and (max-width: 666px) {
  .c-text--type11 {
    line-height: 1.8;
    text-align: left;
    font-size: 13px;
  }
}

/*----------------------------------------------------
    .c-text--type12
----------------------------------------------------*/
.c-text--type12 {
  text-align: center;
  line-height: 2.1;
}

@media screen and (max-width: 768px) {
  .c-text--type12 {
    text-align: left;
  }
}

/*----------------------------------------------------
    .c-text--type13
----------------------------------------------------*/
.c-text--type13 {
  font-size: 14px;
}

/*----------------------------------------------------
    .c-text--type14
----------------------------------------------------*/
.c-text--type14 {
  display: block;
  font-size: 13px;
}

/*----------------------------------------------------
    .c-text--type15
----------------------------------------------------*/
.c-text--type15 {
  text-align: center;
  margin-bottom: 75px;
}

@media screen and (max-width: 666px) {
  .c-text--type15 {
    margin-bottom: 30px;
  }
}

/*----------------------------------------------------
    .c-text--type16
----------------------------------------------------*/
.c-text--type16 {
  font-size: 20px;
}

@media screen and (max-width: 666px) {
  .c-text--type16 {
    font-size: 16px;
  }
}

/*----------------------------------------------------
    .c-text--none01
----------------------------------------------------*/
/*----------------------------------------------------
    .c-color--type01
----------------------------------------------------*/
.c-color--red01 {
  color: #c30d23;
}

.c-color--red01 a:link, .c-color--red01 a:visited, .c-color--red01 a:hover, .c-color--red01 a:active, .c-color--red01 a:focus {
  color: #c30d23;
}

/*====================================================

  セクションスタイル

====================================================*/
/*----------------------------------------------------
    .c-section
----------------------------------------------------*/
.c-section {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-section {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .c-section {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

.c-section + .c-section {
  margin-top: 80px;
}

@media screen and (max-width: 666px) {
  .c-section + .c-section {
    margin-top: 60px;
  }
}

.c-wrap .c-section:last-child, .c-main .c-section:last-child {
  margin-bottom: 0;
}

.c-wrap .c-section:last-child ul:last-child, .c-main .c-section:last-child ul:last-child {
  margin-bottom: 0;
}

.c-section .c-section {
  margin-bottom: 30px;
}

/*----------------------------------------------------
    .c-baseLayout
----------------------------------------------------*/
/*----------------------------------------------------
    .c-block
----------------------------------------------------*/
/*====================================================

  インデックススタイル

====================================================*/
/*----------------------------------------------------
    .c-index
----------------------------------------------------*/
.c-index, .c-index--type01, .c-index--type02, .c-index--type03, .c-index--type04 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: -100px;
}

@media screen and (max-width: 666px) {
  .c-index, .c-index--type01, .c-index--type02, .c-index--type03, .c-index--type04 {
    margin-top: -30px;
  }
}

.c-index:after, .c-index--type01:after, .c-index--type02:after, .c-index--type03:after, .c-index--type04:after {
  content: "";
  display: block;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-index:after, .c-index--type01:after, .c-index--type02:after, .c-index--type03:after, .c-index--type04:after {
    display: none;
  }
}

.c-index .c-index__item, .c-index--type01 .c-index__item, .c-index--type02 .c-index__item, .c-index--type03 .c-index__item, .c-index--type04 .c-index__item {
  width: 300px;
  margin-top: 100px;
}

@media screen and (max-width: 768px) {
  .c-index .c-index__item, .c-index--type01 .c-index__item, .c-index--type02 .c-index__item, .c-index--type03 .c-index__item, .c-index--type04 .c-index__item {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-index .c-index__item, .c-index--type01 .c-index__item, .c-index--type02 .c-index__item, .c-index--type03 .c-index__item, .c-index--type04 .c-index__item {
    width: 100%;
    margin-top: 30px;
  }
}

.c-index .c-index__item a, .c-index--type01 .c-index__item a, .c-index--type02 .c-index__item a, .c-index--type03 .c-index__item a, .c-index--type04 .c-index__item a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
}

.c-index .c-index__item a:hover, .c-index--type01 .c-index__item a:hover, .c-index--type02 .c-index__item a:hover, .c-index--type03 .c-index__item a:hover, .c-index--type04 .c-index__item a:hover, .c-index .c-index__item a:focus, .c-index--type01 .c-index__item a:focus, .c-index--type02 .c-index__item a:focus, .c-index--type03 .c-index__item a:focus, .c-index--type04 .c-index__item a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.c-index .c-index__item a:link, .c-index--type01 .c-index__item a:link, .c-index--type02 .c-index__item a:link, .c-index--type03 .c-index__item a:link, .c-index--type04 .c-index__item a:link, .c-index .c-index__item a:visited, .c-index--type01 .c-index__item a:visited, .c-index--type02 .c-index__item a:visited, .c-index--type03 .c-index__item a:visited, .c-index--type04 .c-index__item a:visited, .c-index .c-index__item a:hover, .c-index--type01 .c-index__item a:hover, .c-index--type02 .c-index__item a:hover, .c-index--type03 .c-index__item a:hover, .c-index--type04 .c-index__item a:hover, .c-index .c-index__item a:active, .c-index--type01 .c-index__item a:active, .c-index--type02 .c-index__item a:active, .c-index--type03 .c-index__item a:active, .c-index--type04 .c-index__item a:active, .c-index .c-index__item a:focus, .c-index--type01 .c-index__item a:focus, .c-index--type02 .c-index__item a:focus, .c-index--type03 .c-index__item a:focus, .c-index--type04 .c-index__item a:focus {
  color: #000;
}

.c-index .c-index__item a:link, .c-index--type01 .c-index__item a:link, .c-index--type02 .c-index__item a:link, .c-index--type03 .c-index__item a:link, .c-index--type04 .c-index__item a:link, .c-index .c-index__item a:visited, .c-index--type01 .c-index__item a:visited, .c-index--type02 .c-index__item a:visited, .c-index--type03 .c-index__item a:visited, .c-index--type04 .c-index__item a:visited, .c-index .c-index__item a:hover, .c-index--type01 .c-index__item a:hover, .c-index--type02 .c-index__item a:hover, .c-index--type03 .c-index__item a:hover, .c-index--type04 .c-index__item a:hover, .c-index .c-index__item a:active, .c-index--type01 .c-index__item a:active, .c-index--type02 .c-index__item a:active, .c-index--type03 .c-index__item a:active, .c-index--type04 .c-index__item a:active, .c-index .c-index__item a:focus, .c-index--type01 .c-index__item a:focus, .c-index--type02 .c-index__item a:focus, .c-index--type03 .c-index__item a:focus, .c-index--type04 .c-index__item a:focus {
  text-decoration: none;
}

.c-index .c-index__item a img, .c-index--type01 .c-index__item a img, .c-index--type02 .c-index__item a img, .c-index--type03 .c-index__item a img, .c-index--type04 .c-index__item a img {
  width: 100%;
  height: auto;
}

.c-index .c-index__item .c-index__text, .c-index--type01 .c-index__item .c-index__text, .c-index--type02 .c-index__item .c-index__text, .c-index--type03 .c-index__item .c-index__text, .c-index--type04 .c-index__item .c-index__text {
  display: block;
  padding-top: 20px;
}

@media screen and (max-width: 666px) {
  .c-index .c-index__item .c-index__text, .c-index--type01 .c-index__item .c-index__text, .c-index--type02 .c-index__item .c-index__text, .c-index--type03 .c-index__item .c-index__text, .c-index--type04 .c-index__item .c-index__text {
    padding-top: 10px;
  }
}

/*----------------------------------------------------
    .c-index--type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-index--type01 {
    margin-top: 20px;
  }
}

@media screen and (max-width: 666px) {
  .c-index--type01 .c-index__item {
    width: calc(100% / 2 - 10px);
    margin-top: 20px;
  }
}

.c-index--type01 .c-index__item a {
  text-align: center;
}

.c-index--type01 .c-index__item .c-index__text {
  line-height: 1.25;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-index--type01 .c-index__item .c-index__text {
    font-size: 14px;
  }
}

/*----------------------------------------------------
    .c-index--type02
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-index--type02 {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media screen and (max-width: 666px) {
  .c-index--type02 .c-index__item {
    width: calc(70% - 10px);
  }
}

.c-index--type02 .c-index__item a {
  text-align: center;
}

.c-index--type02 .c-index__item .c-index__text {
  line-height: 1.75;
  font-size: 18px;
}

.c-index--type02 .c-index__item .c-index__text .c-index__affiliation,
.c-index--type02 .c-index__item .c-index__text .c-index__name {
  display: block;
}

.c-index--type02 .c-index__item .c-index__affiliation {
  font-size: 15px;
}

/*----------------------------------------------------
    .c-index--type03
----------------------------------------------------*/
.c-index--type03 {
  margin-top: -60px;
}

@media screen and (max-width: 666px) {
  .c-index--type03 {
    margin-top: -30px;
  }
}

.c-index--type03 .c-index__item {
  margin-top: 60px;
}

@media screen and (max-width: 666px) {
  .c-index--type03 .c-index__item {
    width: calc(100% - 10px);
    margin-top: 30px;
  }
}

.c-index--type03 .c-index__item.is-hidden {
  display: none;
}

.c-index--type03 .c-index__item .c-index__wrap {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}

.c-index--type03 .c-index__item .c-index__category {
  display: table-cell;
  width: 120px;
  padding: 3px;
  background-color: #efefef;
  line-height: 1.25;
  text-align: center;
  font-size: 12px;
}

.c-index--type03 .c-index__item .c-index__date {
  display: table-cell;
  line-height: 1.25;
  text-align: right;
  font-size: 14px;
}

.c-index--type03 .c-index__item .c-index__text {
  line-height: 1.75;
}

.c-index--type03 .c-index__item img {
  border: solid 1px #efefef;
}

@media screen and (max-width: 666px) {
  .page-topics .c-index--type03 {
    margin-top: -60px;
  }
  .page-topics .c-index--type03 .c-index__item {
    margin-top: 60px;
  }
}

/*----------------------------------------------------
    .c-index--type04
----------------------------------------------------*/
.c-index--type04 {
  margin-top: -60px;
}

@media screen and (max-width: 666px) {
  .c-index--type04 {
    margin-top: 20px;
  }
}

.c-index--type04:before {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  content: "";
  display: block;
  width: 210px;
}

@media screen and (max-width: 768px) {
  .c-index--type04:before {
    width: calc(100% / 3 - 20px);
  }
}

@media screen and (max-width: 666px) {
  .c-index--type04:before {
    display: none;
  }
}

.c-index--type04:after {
  width: 210px;
}

@media screen and (max-width: 768px) {
  .c-index--type04:after {
    width: calc(100% / 3 - 20px);
  }
}

@media screen and (max-width: 666px) {
  .c-index--type04:after {
    width: calc(100% / 2 - 10px);
  }
}

.c-index--type04 .c-index__item {
  width: 210px;
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .c-index--type04 .c-index__item {
    width: calc(100% / 3 - 20px);
    margin-top: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-index--type04 .c-index__item {
    width: calc(100% / 2 - 10px);
    margin-top: 20px;
  }
}

.c-index--type04 .c-index__item a {
  text-align: center;
}

.c-index--type04 .c-index__item .c-index__text {
  line-height: 1.25;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-index--type04 .c-index__item .c-index__text {
    font-size: 15px;
  }
}

/*====================================================

  ページャースタイル

====================================================*/
/*----------------------------------------------------
    .c-pager--type01
----------------------------------------------------*/
.c-pager--type01 {
  padding-top: 80px;
}

.c-pager__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: -10px;
}

.c-pager__container li {
  margin-right: 5px;
  margin-bottom: 10px;
  margin-left: 5px;
}

.c-pager__container li + li {
  margin-top: 0 !important;
}

.c-pager__container li:before {
  display: none !important;
}

.c-pager__container li a, .c-pager__container li span {
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  display: block;
  padding: 8px 10px;
  border: 1px solid #231815;
  background-color: #231815;
  line-height: 1;
  color: #fff;
}

.c-pager__container li a:link, .c-pager__container li a:visited, .c-pager__container li a:hover, .c-pager__container li a:active, .c-pager__container li a:focus, .c-pager__container li span:link, .c-pager__container li span:visited, .c-pager__container li span:hover, .c-pager__container li span:active, .c-pager__container li span:focus {
  text-decoration: none;
}

.c-pager__container li a:hover {
  background-color: #fff;
  color: #231815;
}

.c-pager__container li.is-current span {
  background-color: #fff;
  color: #231815;
}

.c-pager__container li.is-disable span {
  background-color: #fff;
  color: #231815;
}

.c-pager__container li.is-disable span {
  background-color: #fff;
  color: #231815;
}

.c-pager__container li.is-dots span {
  background: none;
  border: none;
  color: #231815;
}

.c-pager__abbr span {
  border-color: #fff;
  background-color: #fff;
  color: #231815;
}

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

.c-columns img, .c-columns--type01 img {
  width: 100%;
  height: auto;
}

.c-columns .c-col__item--center, .c-columns--type01 .c-col__item--center {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

/*----------------------------------------------------
    .c-columns__wrap
----------------------------------------------------*/
.c-columns__wrap--type01, .c-columns__wrap--type02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-columns__wrap--type01 {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.c-columns__wrap--type01 .c-head--type04 {
  display: block;
  width: 100%;
}

.c-columns__wrap--type02 {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

/*----------------------------------------------------
    .c-columns.c-col2--typeXX
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.c-col2--type01 {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: -60px;
}

@media screen and (max-width: 666px) {
  .c-col2--type01 {
    margin-top: -30px;
  }
}

.c-col2--type01 .c-columns__item {
  width: 480px;
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .c-col2--type01 .c-columns__item {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type01 .c-columns__item {
    width: 100%;
    margin-top: 30px;
  }
}

.c-col2--type01 .c-columns__picture img {
  width: 100%;
  height: auto;
}

/*  type02
----------------------------------------------------*/
.c-col2--type02 {
  width: 675px;
  margin-top: -30px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-col2--type02 {
    width: 100%;
  }
}

.c-col2--type02 .c-columns__item {
  width: 320px;
  margin-top: 30px;
}

@media screen and (max-width: 666px) {
  .c-col2--type02 .c-columns__item {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type02 .c-columns__item {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type02 .c-columns__item {
    margin-top: 20px;
  }
}

.c-col2--type02 .c-columns__item .c-link, .c-col2--type02 .c-columns__item .c-link--type01, .c-col2--type02 .c-columns__item .c-link--type03 a, .c-link--type03 .c-col2--type02 .c-columns__item a, .c-col2--type02 .c-columns__item .c-link--type05 {
  width: 100%;
}

/*  type03
----------------------------------------------------*/
.c-col2--type03 {
  width: 660px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-col2--type03 {
    width: 100%;
  }
}

.c-col2--type03 .c-columns__item {
  width: 300px;
}

@media screen and (max-width: 666px) {
  .c-col2--type03 .c-columns__item {
    width: 100%;
    margin-top: 60px;
  }
}

.c-col2--type03 .c-columns__item .c-link--type01, .c-col2--type03 .c-columns__item .c-link--type03 a, .c-link--type03 .c-col2--type03 .c-columns__item a {
  width: 100%;
}

.c-col2--type03 .c-columns__picture {
  text-align: center;
  vertical-align: bottom;
}

.c-col2--type03 .c-columns__picture img {
  width: auto;
  height: auto;
}

.c-col2--type03 .c-columns__text {
  padding-top: 20px;
  padding-bottom: 45px;
  line-height: 1.25;
  text-align: center;
  font-size: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #231815;
}

@media screen and (max-width: 666px) {
  .c-col2--type03 .c-columns__text {
    font-size: 20px;
  }
}

/*  type04
----------------------------------------------------*/
.c-col2--type04 {
  margin-top: -20px;
}

.c-col2--type04 .c-columns__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(100% / 2 - 10px);
  background-color: #efefef;
  margin-top: 20px;
  padding: 15px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-col2--type04 .c-columns__item {
    width: 100%;
  }
}

.c-col2--type04 .c-columns__text--type01 {
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .c-col2--type04 .c-columns__text--type01 {
    font-size: 16px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type04 .c-columns__text--type01 {
    font-size: 13px;
  }
}

/*  type05
----------------------------------------------------*/
.c-col2--type05 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-col2--type05 .c-columns__picture {
  width: 450px;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

@media screen and (max-width: 768px) {
  .c-col2--type05 .c-columns__picture {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type05 .c-columns__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type05 .c-columns__text {
  width: 500px;
  line-height: 2.1;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

@media screen and (max-width: 768px) {
  .c-col2--type05 .c-columns__text {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type05 .c-columns__text {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
  }
}

/*  type06
----------------------------------------------------*/
.c-col2--type06 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-col2--type06 .c-columns__picture {
  width: 450px;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

@media screen and (max-width: 768px) {
  .c-col2--type06 .c-columns__picture {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type06 .c-columns__picture {
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type06 .c-columns__text {
  width: 500px;
  line-height: 2.1;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

@media screen and (max-width: 768px) {
  .c-col2--type06 .c-columns__text {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type06 .c-columns__text {
    width: 100%;
  }
}

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

@media screen and (max-width: 768px) {
  .c-col2--type07 .c-columns__item {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type07 .c-columns__item {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type07 .c-columns__item + .c-columns__item {
    margin-top: 40px;
  }
}

.c-col2--type07 .c-columns__head {
  margin-bottom: 25px;
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  font-size: 18px;
}

.c-col2--type07 .c-columns__picture {
  margin-bottom: 25px;
}

.c-col2--type07 .c-columns__picture img {
  width: 100%;
  height: auto;
}

.c-col2--type07 .c-columns__text {
  text-align: center;
}

.c-col2--type07 .c-table--type01 td, .c-col2--type07 .c-table--type03 td, .c-col2--type07 .c-table--type06 td, .c-col2--type07 .c-table--type09 td {
  text-align: left;
}

/*  type08
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col2--type08 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col2--type08 .c-columns__item {
  width: calc(100% / 2 - 30px);
  padding: 10px 10px 20px;
  background-color: #efefef;
  border-radius: 4px;
}

@media screen and (max-width: 768px) {
  .c-col2--type08 .c-columns__item {
    width: calc(100% / 2 - 10px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type08 .c-columns__item {
    width: 100%;
  }
  .c-col2--type08 .c-columns__item + .c-columns__item {
    margin-top: 30px;
  }
}

.c-col2--type08 .c-head--type04 {
  margin-bottom: 20px;
  border-radius: 2px;
}

.c-col2--type08 .c-columns__text {
  text-align: center;
  width: 100%;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .c-col2--type08 .c-columns__text {
    font-size: 17px;
  }
}

.c-col2--type08 .c-columns__text .c-text--line3 {
  display: block;
  padding-top: 1.75em;
}

@media screen and (max-width: 666px) {
  .c-col2--type08 .c-columns__text .c-text--line3 {
    padding-top: 0;
  }
}

/*  type09
----------------------------------------------------*/
.c-col2--type09 .c-columns__item {
  width: calc(100% - 400px - 50px);
}

@media screen and (max-width: 768px) {
  .c-col2--type09 .c-columns__item {
    width: 100%;
  }
}

.c-col2--type09 .c-columns__item p + p {
  margin-top: 1em;
}

.c-col2--type09 .c-columns__item .c-head--type17 {
  margin-bottom: 1em;
}

.c-col2--type09 .c-columns__picture {
  width: 450px;
  padding-left: 50px;
  text-align: right;
}

@media screen and (max-width: 666px) {
  .c-col2--type09 .c-columns__picture {
    width: 100%;
    padding-left: 0;
    margin-top: 20px;
    text-align: center;
  }
  .c-col2--type09 .c-columns__picture img {
    width: 250px;
    height: auto;
  }
}

/*  type10
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col2--type10 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.c-col2--type10 .c-columns__item {
  width: calc(100% - 300px - 50px);
}

@media screen and (max-width: 768px) {
  .c-col2--type10 .c-columns__item {
    width: calc(100% - 250px - 30px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type10 .c-columns__item {
    width: 100%;
  }
}

.c-col2--type10 .c-columns__picture {
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col2--type10 .c-columns__picture {
    width: 250px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type10 .c-columns__picture {
    width: 100%;
    margin-bottom: 30px;
    text-align: center;
  }
  .c-col2--type10 .c-columns__picture img {
    width: 200px;
    height: auto;
  }
}

/*  type11
----------------------------------------------------*/
.c-col2--type11 .c-columns__item {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  width: calc(100% - 400px - 50px);
  line-height: 2.1;
}

@media screen and (max-width: 666px) {
  .c-col2--type11 .c-columns__item {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
  }
}

.c-col2--type11 .c-columns__item p + p {
  margin-top: 1em;
}

.c-col2--type11 .c-columns__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 400px;
}

@media screen and (max-width: 666px) {
  .c-col2--type11 .c-columns__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
    text-align: center;
  }
  .c-col2--type11 .c-columns__picture img {
    width: 250px;
    height: auto;
  }
}

/*  type12
----------------------------------------------------*/
.c-col2--type12 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-col2--type12 .c-columns__item {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  width: calc(100% - 400px - 50px);
  line-height: 2.1;
}

@media screen and (max-width: 666px) {
  .c-col2--type12 .c-columns__item {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
  }
}

.c-col2--type12 .c-columns__item p + p {
  margin-top: 1em;
}

.c-col2--type12 .c-columns__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 400px;
}

@media screen and (max-width: 666px) {
  .c-col2--type12 .c-columns__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2px;
    -ms-flex-order: 2px;
    order: 2px;
    width: 100%;
    margin-top: 20px;
    text-align: center;
  }
  .c-col2--type12 .c-columns__picture img {
    width: 250px;
    height: auto;
  }
}

/*  type13
----------------------------------------------------*/
.c-col2--type13 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-col2--type13 .c-columns__item {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: calc(100% - 400px - 50px);
  line-height: 2.1;
}

@media screen and (max-width: 666px) {
  .c-col2--type13 .c-columns__item {
    width: 100%;
  }
}

.c-col2--type13 .c-columns__item p + p {
  margin-top: 1em;
}

.c-col2--type13 .c-columns__picture {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  width: 400px;
}

@media screen and (max-width: 666px) {
  .c-col2--type13 .c-columns__picture {
    width: 100%;
    margin-top: 20px;
    margin-top: 20px;
    text-align: center;
  }
  .c-col2--type13 .c-columns__picture img {
    width: 250px;
    height: auto;
  }
}

/*  type14
----------------------------------------------------*/
.c-col2--type14 .c-columns__item {
  width: calc(100% - 326px - 50px);
}

@media screen and (max-width: 666px) {
  .c-col2--type14 .c-columns__item {
    width: 100%;
  }
}

.c-col2--type14 .c-columns__picture {
  width: 326px;
}

@media screen and (max-width: 666px) {
  .c-col2--type14 .c-columns__picture {
    width: 75%;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto;
  }
}

/*  type15
----------------------------------------------------*/
.c-col2--type15 {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.c-col2--type15 .c-columns__item {
  width: 300px;
  margin-right: 30px;
  margin-left: 30px;
}

@media screen and (max-width: 666px) {
  .c-col2--type15 .c-columns__item {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type15 .c-columns__item + .c-columns__item {
    margin-top: 40px;
  }
}

.c-col2--type15 .c-columns__wrap {
  position: relative;
  width: 300px;
  height: 300px;
  padding-top: 65px;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-col2--type15 .c-columns__wrap {
    width: 250px;
    height: 250px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 65px;
  }
}

.c-col2--type15 .c-columns__picture {
  width: auto;
  height: auto;
}

@media screen and (max-width: 666px) {
  .c-col2--type15 .c-columns__picture {
    width: auto;
    height: auto;
  }
}

.c-col2--type15 .c-columns__caption {
  padding-top: 10px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-col2--type15 .c-columns__caption br {
    display: none;
  }
}

.c-col2--type15 .c-columns__text {
  padding-top: 30px;
}

.c-col2--type15 .c-columns__link {
  padding-top: 30px;
}

.c-col2--type15 .c-columns__link .c-link--type01, .c-col2--type15 .c-columns__link .c-link--type03 a, .c-link--type03 .c-col2--type15 .c-columns__link a {
  width: 100%;
}

/*  type16
----------------------------------------------------*/
@media screen and (max-width: 768px) {
  .c-col2--type16 {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
}

.c-col2--type16 .c-columns__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 480px;
  padding: 25px;
  border-radius: 8px;
  background-color: #efefef;
  text-align: center;
  line-height: 1.8;
  font-size: 20px;
}

@media screen and (max-width: 768px) {
  .c-col2--type16 .c-columns__item {
    width: calc(100% / 2 - 15px);
    font-size: 18px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type16 .c-columns__item {
    width: 100%;
    font-size: 13px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type16 .c-columns__item + .c-columns__item {
    margin-top: 25px;
  }
}

/*  type17
----------------------------------------------------*/
.c-col2--type17 .c-columns__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 490px;
  margin-top: 60px;
  padding: 62px 25px 40px;
  border-radius: 8px;
  background-color: #efefef;
  text-align: center;
  line-height: 1.8;
}

@media screen and (max-width: 768px) {
  .c-col2--type17 .c-columns__item {
    width: calc(100% / 2 - 15px);
    padding-top: 55px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type17 .c-columns__item {
    width: 100%;
    padding-top: 52px;
  }
}

.c-col2--type17 .c-columns__item .c-columns__icon {
  position: absolute;
  top: -45px;
  left: 50%;
  width: 99px;
  height: 99px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .c-col2--type17 .c-columns__item .c-columns__icon {
    top: -40px;
    width: 80px;
    height: 80px;
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type17 .c-columns__item .c-columns__icon {
    top: -35px;
    width: 70px;
    height: 70px;
  }
}

/*  type18
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col2--type18 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col2--type18 .c-columns__item + .c-columns__item {
  margin-top: 10px;
}

/*  type19
----------------------------------------------------*/
.c-col2--type19 {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.c-col2--type19 .c-columns__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

@media screen and (max-width: 768px) {
  .c-col2--type19 .c-columns__picture {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type19 .c-columns__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type19 .c-columns__item {
  width: calc(100% - 400px - 60px);
  line-height: 2.1;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

@media screen and (max-width: 768px) {
  .c-col2--type19 .c-columns__item {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type19 .c-columns__item {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin-top: 20px;
  }
}

/*  type20
----------------------------------------------------*/
.c-col2--type20 {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

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

.c-col2--type20 .c-columns__item + .c-columns__item {
  margin-top: 70px;
}

.c-col2--type20 .c-columns__item .c-columns__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  position: relative;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col2--type20 .c-columns__item .c-columns__picture {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type20 .c-columns__item .c-columns__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type20 .c-columns__item .c-columns__picture .c-columns__label {
  position: absolute;
  top: -25px;
  right: -25px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #231815;
  text-align: center;
  line-height: 50px;
  color: #fff;
}

.c-col2--type20 .c-columns__item .c-columns__text {
  width: calc(100% - 300px - 45px);
  line-height: 1.5;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

@media screen and (max-width: 768px) {
  .c-col2--type20 .c-columns__item .c-columns__text {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type20 .c-columns__item .c-columns__text {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 {
  margin-top: 15px;
  margin-bottom: 20px;
}

.c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:link, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:visited {
  text-decoration: none;
}

.c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:hover, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:active {
  text-decoration: underline;
}

.c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:link, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:visited, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:hover, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:active, .c-col2--type20 .c-columns__item .c-columns__text .c-head--type07 a:focus {
  color: #000;
}

/*  type21
----------------------------------------------------*/
.c-col2--type21 {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.c-col2--type21 .c-columns__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 206px;
}

@media screen and (max-width: 768px) {
  .c-col2--type21 .c-columns__picture {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type21 .c-columns__picture {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin-top: 20px;
  }
}

.c-col2--type21 .c-columns__item {
  width: calc(100% - 206px - 40px);
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  line-height: 2.1;
}

@media screen and (max-width: 768px) {
  .c-col2--type21 .c-columns__item {
    width: calc(100% / 2 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col2--type21 .c-columns__item {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
}

/*  type22
----------------------------------------------------*/
.c-col2--type22 .c-columns__item {
  width: calc(100% - 330px - 30px);
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

@media screen and (max-width: 666px) {
  .c-col2--type22 .c-columns__item {
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
  }
}

.c-col2--type22 .c-columns__picture {
  width: 330px;
}

@media screen and (max-width: 666px) {
  .c-col2--type22 .c-columns__picture {
    width: 90%;
    margin-bottom: 30px;
    margin-right: auto;
    margin-left: auto;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
}

.c-col2--type22 .c-columns__picture p {
  margin-top: 0.5em;
  text-align: center;
}

/*----------------------------------------------------
    .c-columns.c-col3--typeXX
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col3--type01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col3--type01:after {
  content: "";
  display: block;
  width: 300px;
}

.c-col3--type01 .c-columns__item {
  width: 300px;
  margin-top: 60px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .c-col3--type01 .c-columns__item {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type01 .c-columns__item {
    width: 100%;
    margin-top: 30px;
  }
}

.c-col3--type01 .c-columns__item img {
  width: 100%;
  height: auto;
}

.c-col3--type01 .c-columns__item:nth-child(-n+3) {
  margin-top: 0;
}

@media screen and (max-width: 666px) {
  .c-col3--type01 .c-columns__item:nth-child(-n+3) {
    margin-top: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type01 .c-columns__item:nth-child(1) {
    margin-top: 0;
  }
}

.c-col3--type01 .c-columns__item .c-columns__text {
  display: block;
  margin-top: 10px;
  text-align: left;
}

/*  type02
----------------------------------------------------*/
.c-col3--type02:after {
  content: "";
  display: block;
  width: 300px;
}

.c-col3--type02 .c-columns__item {
  position: relative;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col3--type02 .c-columns__item {
    width: calc(100% / 3 - 20px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type02 .c-columns__item {
    width: 100%;
    margin-top: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type02 .c-columns__item:first-child {
    margin-top: 0;
  }
}

.c-col3--type02 .c-columns__picture {
  position: relative;
}

.c-col3--type02 .c-columns__picture--type01 {
  height: 161px;
}

@media screen and (max-width: 768px) {
  .c-col3--type02 .c-columns__picture--type01 {
    height: 80px;
  }
  .c-col3--type02 .c-columns__picture--type01 img {
    width: auto;
    height: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type02 .c-columns__picture--type01 {
    height: 110px;
  }
}

.c-col3--type02 .c-columns__picture--type02 {
  height: 150px;
}

.c-col3--type02 .c-columns__picture--type03 {
  height: 223px;
}

@media screen and (max-width: 768px) {
  .c-col3--type02 .c-columns__picture--type03 {
    height: 160px;
  }
  .c-col3--type02 .c-columns__picture--type03 img {
    width: auto;
    height: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type02 .c-columns__picture--type03 {
    height: 110px;
  }
}

.c-col3--type02 .c-columns__picture img {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: auto;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.c-col3--type02 .c-columns__head {
  margin-top: 30px;
  margin-bottom: 30px;
  line-height: 1.25;
  text-align: center;
  font-size: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 768px) {
  .c-col3--type02 .c-columns__head {
    font-size: 22px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type02 .c-columns__head {
    font-size: 18px;
  }
}

.c-col3--type02 .c-columns__head--line2 {
  min-height: calc(2em + 0.25em * 2);
}

.c-col3--type02 .c-columns__head--line3 {
  min-height: calc(3em + 0.25em * 3);
}

.c-col3--type02 .c-link--type01, .c-col3--type02 .c-link--type03 a, .c-link--type03 .c-col3--type02 a {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-top: 30px;
}

/*  type03
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col3--type03 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col3--type03:after {
  content: "";
  display: block;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col3--type03:after {
    width: calc(100% / 3 - 30px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type03:after {
    display: none;
  }
}

.c-col3--type03 .c-columns__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  position: relative;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col3--type03 .c-columns__item {
    width: calc(100% / 3 - 20px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type03 .c-columns__item {
    width: 100%;
    margin-top: 50px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type03 .c-columns__item:first-child {
    margin-top: 0;
  }
}

.c-col3--type03 .c-columns__picture {
  position: relative;
  height: 150px;
}

.c-col3--type03 .c-columns__picture img {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: auto;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.c-col3--type03 .c-columns__head {
  margin-top: 30px;
  margin-bottom: 30px;
  line-height: 1.25;
  text-align: center;
}

.c-col3--type03 .c-columns__head--type01 {
  font-size: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 768px) {
  .c-col3--type03 .c-columns__head--type01 {
    font-size: 22px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type03 .c-columns__head--type01 {
    font-size: 20px;
  }
}

.c-col3--type03 .c-columns__head--type02 {
  font-size: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 666px) {
  .c-col3--type03 .c-columns__head--type02 {
    font-size: 16px;
  }
}

.c-col3--type03 .c-columns__text {
  margin-bottom: 10px;
}

.c-col3--type03 .c-link--type01, .c-col3--type03 .c-link--type03 a, .c-link--type03 .c-col3--type03 a {
  display: block;
  width: 100%;
  margin-top: auto;
}

/*  type04
----------------------------------------------------*/
.c-col3--type04 .c-columns__item {
  width: 320px;
}

@media screen and (max-width: 768px) {
  .c-col3--type04 .c-columns__item {
    width: 190px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type04 .c-columns__item {
    width: 80px;
  }
}

.c-col3--type04 .c-columns__picture {
  position: absolute;
  bottom: 76px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 666px) {
  .c-col3--type04 .c-columns__picture {
    bottom: 22px;
  }
}

.c-col3--type04 .c-columns__picture img {
  width: auto;
  height: 80px;
}

@media screen and (max-width: 666px) {
  .c-col3--type04 .c-columns__picture img {
    height: 40px;
  }
}

.c-col3--type04 .c-columns__text {
  position: absolute;
  top: 155px;
  left: 50%;
  text-align: center;
  font-size: 18px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .c-col3--type04 .c-columns__text {
    top: 128px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type04 .c-columns__text {
    top: 85px;
    width: 100%;
    font-size: 13px;
  }
}

.c-col3--type04 .c-columns__link--type01 {
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  display: block;
  position: relative;
  width: 210px;
  height: 210px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 50%;
  background-color: #fff;
}

.c-col3--type04 .c-columns__link--type01:link, .c-col3--type04 .c-columns__link--type01:visited, .c-col3--type04 .c-columns__link--type01:hover, .c-col3--type04 .c-columns__link--type01:active, .c-col3--type04 .c-columns__link--type01:focus {
  color: #000;
}

.c-col3--type04 .c-columns__link--type01:link, .c-col3--type04 .c-columns__link--type01:visited, .c-col3--type04 .c-columns__link--type01:hover, .c-col3--type04 .c-columns__link--type01:active, .c-col3--type04 .c-columns__link--type01:focus {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .c-col3--type04 .c-columns__link--type01 {
    width: 190px;
    height: 190px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type04 .c-columns__link--type01 {
    width: 80px;
    height: 80px;
  }
}

.c-col3--type04 .c-columns__link--type01.is-current, .c-col3--type04 .c-columns__link--type01:hover, .c-col3--type04 .c-columns__link--type01:focus {
  background-color: #c9caca;
}

.c-col3--type04 .c-columns__link--type02 {
  padding-top: 60px;
}

.c-col3--type04 .c-columns__link--type02 .c-link--type01, .c-col3--type04 .c-columns__link--type02 .c-link--type03 a, .c-link--type03 .c-col3--type04 .c-columns__link--type02 a {
  width: 100%;
}

/*  type05
----------------------------------------------------*/
.c-col3--type05 .c-columns__item {
  width: 300px;
}

@media screen and (max-width: 666px) {
  .c-col3--type05 .c-columns__item {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type05 .c-columns__item + .c-columns__item {
    margin-top: 40px;
  }
}

.c-col3--type05 .c-columns__wrap {
  position: relative;
  width: 300px;
  height: 300px;
  padding-top: 65px;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-col3--type05 .c-columns__wrap {
    width: 250px;
    height: 250px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 65px;
  }
}

.c-col3--type05 .c-columns__picture {
  width: auto;
  height: auto;
}

@media screen and (max-width: 666px) {
  .c-col3--type05 .c-columns__picture {
    width: auto;
    height: auto;
  }
}

.c-col3--type05 .c-columns__caption {
  padding-top: 10px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-col3--type05 .c-columns__caption br {
    display: none;
  }
}

.c-col3--type05 .c-columns__text {
  padding-top: 30px;
}

.c-col3--type05 .c-columns__link {
  padding-top: 30px;
}

.c-col3--type05 .c-columns__link .c-link--type01, .c-col3--type05 .c-columns__link .c-link--type03 a, .c-link--type03 .c-col3--type05 .c-columns__link a {
  width: 100%;
}

/*  type06
----------------------------------------------------*/
.c-col3--type06 .c-columns__item {
  width: 320px;
}

@media screen and (max-width: 666px) {
  .c-col3--type06 .c-columns__item {
    width: 100%;
  }
}

.c-col3--type06 .c-link--type01, .c-col3--type06 .c-link--type03 a, .c-link--type03 .c-col3--type06 a {
  width: 100%;
}

/*  type07
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-col3--type07 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col3--type07:after {
  content: "";
  display: block;
  width: 300px;
}

@media screen and (max-width: 768px) {
  .c-col3--type07:after {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type07:after {
    display: none;
  }
}

.c-col3--type07 .c-columns__item {
  width: 300px;
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .c-col3--type07 .c-columns__item {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type07 .c-columns__item {
    width: 100%;
    margin-top: 30px;
  }
}

.c-col3--type07 .c-columns__item img {
  width: 100%;
  height: auto;
}

.c-col3--type07 .c-columns__item:nth-child(-n+3) {
  margin-top: 0;
}

@media screen and (max-width: 666px) {
  .c-col3--type07 .c-columns__item:nth-child(-n+3) {
    margin-top: 30px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type07 .c-columns__item:nth-child(1) {
    margin-top: 0;
  }
}

.c-col3--type07 .c-columns__item .c-columns__text {
  display: block;
  text-align: center;
}

/*  type08
----------------------------------------------------*/
.c-col3--type08 .c-columns__item {
  width: 320px;
}

@media screen and (max-width: 768px) {
  .c-col3--type08 .c-columns__item {
    width: 190px;
  }
}

@media screen and (max-width: 666px) {
  .c-col3--type08 .c-columns__item {
    width: 80px;
  }
}

.c-col3--type08 .c-link--type01, .c-col3--type08 .c-link--type03 a, .c-link--type03 .c-col3--type08 a {
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  display: block;
}

.c-col3--type08 .c-link--type01:link, .c-col3--type08 .c-link--type03 a:link, .c-link--type03 .c-col3--type08 a:link, .c-col3--type08 .c-link--type01:visited, .c-col3--type08 .c-link--type03 a:visited, .c-link--type03 .c-col3--type08 a:visited, .c-col3--type08 .c-link--type01:hover, .c-col3--type08 .c-link--type03 a:hover, .c-link--type03 .c-col3--type08 a:hover, .c-col3--type08 .c-link--type01:active, .c-col3--type08 .c-link--type03 a:active, .c-link--type03 .c-col3--type08 a:active, .c-col3--type08 .c-link--type01:focus, .c-col3--type08 .c-link--type03 a:focus, .c-link--type03 .c-col3--type08 a:focus {
  color: #fff;
}

.c-col3--type08 .c-link--type01:link, .c-col3--type08 .c-link--type03 a:link, .c-link--type03 .c-col3--type08 a:link, .c-col3--type08 .c-link--type01:visited, .c-col3--type08 .c-link--type03 a:visited, .c-link--type03 .c-col3--type08 a:visited, .c-col3--type08 .c-link--type01:hover, .c-col3--type08 .c-link--type03 a:hover, .c-link--type03 .c-col3--type08 a:hover, .c-col3--type08 .c-link--type01:active, .c-col3--type08 .c-link--type03 a:active, .c-link--type03 .c-col3--type08 a:active, .c-col3--type08 .c-link--type01:focus, .c-col3--type08 .c-link--type03 a:focus, .c-link--type03 .c-col3--type08 a:focus {
  text-decoration: none;
}

/*----------------------------------------------------
    .c-columns.c-col4--typeXX
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
@media screen and (max-width: 768px) {
  .c-col4--type01, .c-col4--type04 {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01, .c-col4--type04 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-col4--type01 .c-columns__item, .c-col4--type04 .c-columns__item {
  position: relative;
  width: 210px;
}

@media screen and (max-width: 768px) {
  .c-col4--type01 .c-columns__item, .c-col4--type04 .c-columns__item {
    width: calc(100% / 2 - 15px);
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__item, .c-col4--type04 .c-columns__item {
    width: 65.63%;
  }
}

@media screen and (max-width: 768px) {
  .c-col4--type01 .c-columns__item:nth-child(-n+2), .c-col4--type04 .c-columns__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__item:nth-child(-n+2), .c-col4--type04 .c-columns__item:nth-child(-n+2) {
    margin-top: 40px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__item:first-child, .c-col4--type04 .c-columns__item:first-child {
    margin-top: 0;
  }
}

.c-col4--type01 .c-columns__picture, .c-col4--type04 .c-columns__picture {
  position: relative;
  width: 210px;
  height: 210px;
  margin-bottom: 15px;
  border-radius: 50%;
  background-color: #fff;
}

@media screen and (max-width: 768px) {
  .c-col4--type01 .c-columns__picture, .c-col4--type04 .c-columns__picture {
    width: 200px;
    height: 200px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__picture, .c-col4--type04 .c-columns__picture {
    width: 180px;
    height: 180px;
  }
}

.c-col4--type01 .c-columns__picture:before, .c-col4--type04 .c-columns__picture:before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 2;
  width: 55px;
  height: 55px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 768px) {
  .c-col4--type01 .c-columns__picture:before, .c-col4--type04 .c-columns__picture:before {
    top: 0;
    left: 5px;
    width: 50px;
    height: 50px;
  }
}

.c-col4--type01 .c-columns__picture img, .c-col4--type04 .c-columns__picture img {
  position: absolute;
  width: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__picture img, .c-col4--type04 .c-columns__picture img {
    height: 100px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type01 .c-columns__picture .c-picture--height01, .c-col4--type04 .c-columns__picture .c-picture--height01 {
    height: 130px;
  }
}

.c-col4--type01 .c-columns__item:nth-child(1) .c-columns__picture:before, .c-col4--type04 .c-columns__item:nth-child(1) .c-columns__picture:before {
  background-image: url(/img/txt_number01-01.svg);
}

.c-col4--type01 .c-columns__item:nth-child(2) .c-columns__picture:before, .c-col4--type04 .c-columns__item:nth-child(2) .c-columns__picture:before {
  background-image: url(/img/txt_number01-02.svg);
}

.c-col4--type01 .c-columns__item:nth-child(3) .c-columns__picture:before, .c-col4--type04 .c-columns__item:nth-child(3) .c-columns__picture:before {
  background-image: url(/img/txt_number01-03.svg);
}

.c-col4--type01 .c-columns__item:nth-child(4) .c-columns__picture:before, .c-col4--type04 .c-columns__item:nth-child(4) .c-columns__picture:before {
  background-image: url(/img/txt_number01-04.svg);
}

/*  type02
----------------------------------------------------*/
.c-col4--type02 .c-columns__item {
  width: 210px;
}

@media screen and (max-width: 768px) {
  .c-col4--type02 .c-columns__item {
    width: calc(100% / 4 - 10px);
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type02 .c-columns__item {
    width: calc(100% / 2 - 10px);
    margin-top: 30px;
  }
}

.c-col4--type02 .c-columns__item:nth-child(-n+2) {
  margin-top: 0;
}

.c-col4--type02 .c-columns__text {
  text-align: center;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .c-col4--type02 .c-columns__text {
    font-size: 17px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type02 .c-columns__text {
    font-size: 15px;
  }
}

.c-col4--type02 .c-columns__picture {
  width: 210px;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .c-col4--type02 .c-columns__picture {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type02 .c-columns__picture {
    margin-bottom: 10px;
  }
}

.c-col4--type02 .c-columns__picture img {
  width: 100%;
  height: auto;
}

/*  type03
----------------------------------------------------*/
.c-col4--type03 .c-columns__item {
  position: relative;
  width: 210px;
  height: 210px;
  border-radius: 50%;
  background-color: #efefef;
}

@media screen and (max-width: 768px) {
  .c-col4--type03 .c-columns__item {
    width: 160px;
    height: 160px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type03 .c-columns__item {
    width: 120px;
    height: 120px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: auto;
  }
}

.c-col4--type03 .c-columns__text {
  position: absolute;
  bottom: 40px;
  left: 50%;
  text-align: center;
  font-size: 18px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .c-col4--type03 .c-columns__text {
    bottom: 30px;
    font-size: 16px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type03 .c-columns__text {
    bottom: 20px;
    width: 100%;
    font-size: 13px;
  }
}

.c-col4--type03 .c-columns__picture {
  position: absolute;
  bottom: 80px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .c-col4--type03 .c-columns__picture {
    bottom: 65px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type03 .c-columns__picture {
    bottom: 50px;
  }
}

.c-col4--type03 .c-columns__picture img {
  width: auto;
}

@media screen and (max-width: 768px) {
  .c-col4--type03 .c-columns__picture img {
    width: 60px;
    height: auto;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type03 .c-columns__picture img {
    width: 50px;
  }
}

/*  type04
----------------------------------------------------*/
.c-col4--type04 .c-columns__picture {
  width: 225px;
  height: 225px;
  background-color: #efefef;
}

@media screen and (max-width: 768px) {
  .c-col4--type04 .c-columns__picture {
    width: 210px;
    height: 210px;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type04 .c-columns__picture {
    width: 190px;
    height: 190px;
  }
}

/*  type05
----------------------------------------------------*/
.c-col4--type05 {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: -20px;
}

@media screen and (max-width: 768px) {
  .c-col4--type05 {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.c-col4--type05 .c-columns__item {
  width: 160px;
  margin-top: 20px;
  margin-right: 30px;
  margin-left: 30px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .c-col4--type05 .c-columns__item {
    width: calc(100% / 4 - 20px);
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (max-width: 666px) {
  .c-col4--type05 .c-columns__item {
    width: calc(100% / 2 - 10px);
  }
}

.c-col4--type05 .c-columns__picture {
  width: 160px;
  margin-right: auto;
  margin-bottom: 15px;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .c-col4--type05 .c-columns__picture {
    width: 100%;
    margin-bottom: 10px;
  }
}

.c-col4--type05 .c-columns__picture a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.c-col4--type05 .c-columns__picture a:hover, .c-col4--type05 .c-columns__picture a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.c-col4--type05 .c-columns__text {
  font-size: 15px;
}

.c-col4--type05 .c-columns__text a:link, .c-col4--type05 .c-columns__text a:visited, .c-col4--type05 .c-columns__text a:hover, .c-col4--type05 .c-columns__text a:active, .c-col4--type05 .c-columns__text a:focus {
  color: #000;
}

.c-col4--type05 .c-columns__text a:link, .c-col4--type05 .c-columns__text a:visited {
  text-decoration: none;
}

.c-col4--type05 .c-columns__text a:hover, .c-col4--type05 .c-columns__text a:active {
  text-decoration: underline;
}

.c-col4--type05 .c-columns__name {
  display: block;
  font-size: 16px;
}

/*----------------------------------------------------
    .c-columns.c-col1--typeXX
----------------------------------------------------*/
/*----------------------------------------------------
    .c-columns--type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-columns--type01 .c-columns__picture {
    width: 100%;
    margin-bottom: 10px;
  }
  .c-columns--type01 .c-columns__picture img {
    width: 100%;
    height: auto;
  }
}

/*----------------------------------------------------
    .c-columns--type02
----------------------------------------------------*/
/*----------------------------------------------------
    .c-picLayout
----------------------------------------------------*/
.c-picLayout--type01 {
  width: 300px;
  text-align: center;
}

.c-picLayout--type01 .c-picLayout__item--type01 {
  width: 300px;
  margin-bottom: 20px;
}

.c-picLayout--type01 .c-picLayout__item--type02, .c-picLayout--type01 .c-picLayout__item--type03 {
  width: calc(100% / 2 - 10px);
}

.c-picLayout--type01 .c-picLayout__text {
  display: block;
  padding-top: 10px;
  line-height: 1.25;
  text-align: center;
  font-size: 14px;
}

.c-picLayout--type01 img {
  width: 100%;
  height: auto;
}

/*====================================================

  リストスタイル

====================================================*/
/*----------------------------------------------------
    Default ul, ol
----------------------------------------------------*/
.extend__li--type01, ul:not([class]) li, .c-ul--type01 li, .c-ul--type08 li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}

.extend__li--type01:before, ul:not([class]) li:before, .c-ul--type01 li:before, .c-ul--type08 li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

ul:not([class]) {
  margin-bottom: 20px;
  padding-left: 14px;
}

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 {
  display: table;
  margin-right: auto;
  margin-left: auto;
}

.c-ul--type01 li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}

.c-ul--type01 li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.c-ul--type01 li + li {
  margin-top: 12px;
}

/*----------------------------------------------------
    .c-ul--type02
----------------------------------------------------*/
.c-ul--type02 .c-ul__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

@media screen and (max-width: 666px) {
  .c-ul--type02 .c-ul__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-ul--type02 .c-ul__item:nth-child(2n-1) {
  width: 40%;
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item:nth-child(2n-1) {
    width: auto;
  }
}

.c-ul--type02 .c-ul__item:nth-child(2n) {
  width: 60%;
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item:nth-child(2n) {
    width: auto;
  }
}

.c-ul--type02 .c-ul__item--type01:nth-child(2n-1) {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item--type01:nth-child(2n-1) {
    width: auto;
  }
}

.c-ul--type02 .c-ul__item--type01:nth-child(2n) {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item--type01:nth-child(2n) {
    width: auto;
  }
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item + .c-ul__item {
    margin-top: 24px;
  }
}

@media screen and (max-width: 666px) {
  .c-ul--type02 .c-ul__item + .c-ul__item {
    margin-top: 13px;
  }
}

.c-ul--type02 .c-ul__item li {
  margin-top: 36px;
  padding-left: 42px;
  background: url(../img/icn_checkbox01.svg) no-repeat 0 2px;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .c-ul--type02 .c-ul__item li {
    margin-top: 24px;
    padding-left: 32px;
    background-size: 18px auto;
    font-size: 16px;
  }
}

@media screen and (max-width: 666px) {
  .c-ul--type02 .c-ul__item li {
    margin-top: 13px;
    padding-left: 24px;
    background-size: 16px auto;
    font-size: 13px;
  }
}

.c-ul--type02 .c-ul__item li:first-child {
  margin-top: 0;
}

/*----------------------------------------------------
    .c-ul--type03
----------------------------------------------------*/
.c-ul--type03 .c-ul__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: -15px;
}

.c-ul--type03 .c-ul__item li {
  position: relative;
  margin-top: 15px;
  padding-left: 1em;
}

.c-ul--type03 .c-ul__item li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

/*----------------------------------------------------
    .c-ul--type04
----------------------------------------------------*/
.c-ul--type04 > li {
  position: relative;
  padding-left: 15px;
  margin-bottom: 10px;
}

.c-ul--type04 > li:before {
  content: "";
  position: absolute;
  top: 0.55em;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #898989;
}

.c-ul--type04 > li ul {
  margin-top: 10px;
  padding-left: 0;
}

.c-ul--type04 > li ul li {
  margin-top: 0;
}

.c-ul--type04 > li ul li + li {
  margin-top: 10px;
}

/*----------------------------------------------------
    .c-ul--type05
----------------------------------------------------*/
.c-ul--type05 {
  display: table;
}

.c-ul--type05 li {
  display: table-row;
}

.c-ul--type05 li:first-child .c-li--th,
.c-ul--type05 li:first-child .c-li--td {
  padding-top: 0;
}

.c-ul--type05 .c-li--th,
.c-ul--type05 .c-li--td {
  display: table-cell;
  padding-top: 10px;
}

.c-ul--type05 .c-li--th {
  white-space: nowrap;
}

.c-ul--type05 .c-li--th:before {
  content: "● ";
  color: #595757;
}

.c-ul--type05 .c-li--td {
  padding-left: 1em;
}

/*----------------------------------------------------
    .c-ul--type06
----------------------------------------------------*/
.c-ul--type06 {
  text-align: center;
}

.c-ul--type06 li {
  display: inline-block;
  margin-right: 15px;
  margin-left: 15px;
}

.c-ul--type06 li:before {
  content: "● ";
  color: #595757;
}

/*----------------------------------------------------
    .c-ul--type07
----------------------------------------------------*/
.c-ul--type07 li {
  margin-top: 36px;
  padding-left: 42px;
  background: url(../img/icn_checkbox01.svg) no-repeat 0 2px;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .c-ul--type07 li {
    margin-top: 24px;
    padding-left: 32px;
    background-size: 18px auto;
    font-size: 16px;
  }
}

@media screen and (max-width: 666px) {
  .c-ul--type07 li {
    margin-top: 13px;
    padding-left: 24px;
    background-size: 16px auto;
    font-size: 13px;
  }
}

.c-ul--type07 li:first-child {
  margin-top: 0;
}

/*----------------------------------------------------
    .c-ul--type08
----------------------------------------------------*/
.c-ul--type08 {
  margin-right: auto;
  margin-left: auto;
}

.c-ul--type08 li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}

.c-ul--type08 li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

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

/*====================================================

  リンクスタイル

====================================================*/
/*----------------------------------------------------
    Default a
----------------------------------------------------*/
/*----------------------------------------------------
    .c-link--type01
----------------------------------------------------*/
.c-link--type01, .c-link--type03 a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: inline-block;
  padding: 16px;
  background-color: #0062a3 !important;
  line-height: 1.25;
  text-align: center;
}

.c-link--type01:hover, .c-link--type03 a:hover, .c-link--type01:focus, .c-link--type03 a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.c-link--type01:link, .c-link--type03 a:link, .c-link--type01:visited, .c-link--type03 a:visited, .c-link--type01:hover, .c-link--type03 a:hover, .c-link--type01:active, .c-link--type03 a:active, .c-link--type01:focus, .c-link--type03 a:focus {
  color: #fff;
}

.c-link--type01:link, .c-link--type03 a:link, .c-link--type01:visited, .c-link--type03 a:visited, .c-link--type01:hover, .c-link--type03 a:hover, .c-link--type01:active, .c-link--type03 a:active, .c-link--type01:focus, .c-link--type03 a:focus {
  text-decoration: none;
}

/*----------------------------------------------------
    .c-link--type02
----------------------------------------------------*/
.c-link--type02 {
  display: inline-block;
  padding: 16px;
  border: 1px solid #000;
  line-height: 1.25;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.c-link--type02:link, .c-link--type02:visited, .c-link--type02:hover, .c-link--type02:active, .c-link--type02:focus {
  color: #000;
}

.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 {
  background-color: #000 !important;
  color: #fff;
}

/*----------------------------------------------------
    .c-link--type03
----------------------------------------------------*/
.c-link--type03 {
  width: 320px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-link--type03 {
    width: 100%;
  }
}

.c-link--type03 a {
  width: 100%;
}

/*----------------------------------------------------
    .c-link--type04
----------------------------------------------------*/
.c-link--type04 {
  display: block;
  width: 210px;
  margin-right: auto;
  margin-left: auto;
  padding: 10px 20px;
  border: 2px solid #fff;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.c-link--type04:link, .c-link--type04:visited, .c-link--type04:hover, .c-link--type04:active, .c-link--type04:focus {
  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 {
  background-color: #fff !important;
  color: #000;
}

/*----------------------------------------------------
    .c-link--type05
----------------------------------------------------*/
.c-link--type05 {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: inline-block;
  padding: 16px;
  border: 0;
  background-color: #231815 !important;
  line-height: 1.25;
  text-align: center;
  color: #fff;
}

.c-link--type05:hover, .c-link--type05:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.c-link--type05:link, .c-link--type05:visited, .c-link--type05:hover, .c-link--type05:active, .c-link--type05:focus {
  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--type06
----------------------------------------------------*/
.c-link--type06 {
  position: relative;
  padding-left: 1.25em;
  display: inline-block;
}

.c-link--type06:link, .c-link--type06:visited, .c-link--type06:hover, .c-link--type06:active, .c-link--type06:focus {
  color: #000;
}

.c-link--type06:link, .c-link--type06:visited {
  text-decoration: underline;
}

.c-link--type06:hover, .c-link--type06:active, .c-link--type06:focus {
  text-decoration: none;
}

.c-link--type06:before {
  content: "→";
  position: absolute;
  top: 0;
  left: 0;
}

/*----------------------------------------------------
    .c-link--type07
----------------------------------------------------*/
.c-link--type07:link, .c-link--type07:visited, .c-link--type07:hover, .c-link--type07:active, .c-link--type07:focus {
  color: #000;
}

.c-link--type07:link, .c-link--type07:visited {
  text-decoration: underline;
}

.c-link--type07:hover, .c-link--type07:active, .c-link--type07:focus {
  text-decoration: none;
}

/*----------------------------------------------------
    .c-linkWrap--type01
----------------------------------------------------*/
.c-linkWrap--type01 {
  width: 320px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-linkWrap--type01 {
    width: 100%;
  }
}

.c-linkWrap--type01 .c-link--type01, .c-linkWrap--type01 .c-link--type03 a, .c-link--type03 .c-linkWrap--type01 a {
  width: 100%;
}

/*----------------------------------------------------
    .c-linkWrap--type02
----------------------------------------------------*/
.c-linkWrap--type02 {
  width: 450px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-linkWrap--type02 {
    width: 100%;
  }
}

.c-linkWrap--type02 .c-link--type01, .c-linkWrap--type02 .c-link--type03 a, .c-link--type03 .c-linkWrap--type02 a {
  width: 100%;
}

/*----------------------------------------------------
    .c-linkList--type03
----------------------------------------------------*/
/*----------------------------------------------------
    .c-linkList--type02
----------------------------------------------------*/
/*====================================================

  テーブルスタイル

====================================================*/
/*----------------------------------------------------
    Default Table
----------------------------------------------------*/
table:not([class]) {
  width: 100%;
}

table:not([class]) th, table:not([class]) td {
  padding: 5px 8px;
  vertical-align: top;
}

table:not([class]) th {
  white-space: nowrap;
  font-weight: bold;
}

.c-table--base, .c-table--type01, .c-table--type03, .c-table--type06, .c-table--type09, .c-table--type02, .c-table--type04, .c-table--type10 {
  width: 100%;
  border-top: 1px solid #231815;
}

.c-table--base th, .c-table--type01 th, .c-table--type03 th, .c-table--type06 th, .c-table--type09 th, .c-table--type02 th, .c-table--type04 th, .c-table--type10 th, .c-table--base td, .c-table--type01 td, .c-table--type03 td, .c-table--type06 td, .c-table--type09 td, .c-table--type02 td, .c-table--type04 td, .c-table--type10 td {
  padding: 25px 20px;
  border-bottom: 1px solid #231815;
  vertical-align: middle;
}

.c-table--base th, .c-table--type01 th, .c-table--type03 th, .c-table--type06 th, .c-table--type09 th, .c-table--type02 th, .c-table--type04 th, .c-table--type10 th {
  font-weight: normal;
}

.c-table--base ul, .c-table--type01 ul, .c-table--type03 ul, .c-table--type06 ul, .c-table--type09 ul, .c-table--type02 ul, .c-table--type04 ul, .c-table--type10 ul {
  margin-left: 0;
  padding-left: 0;
}

/*----------------------------------------------------
    .c-table--type01
----------------------------------------------------*/
.c-table--type01, .c-table--type03, .c-table--type06, .c-table--type09 {
  width: 100%;
}

.c-table--type01 th, .c-table--type03 th, .c-table--type06 th, .c-table--type09 th {
  width: 140px;
  white-space: nowrap;
}

@media screen and (max-width: 666px) {
  .c-table--type01 th, .c-table--type03 th, .c-table--type06 th, .c-table--type09 th {
    width: 50px;
  }
}

@media screen and (max-width: 666px) {
  .c-tableSp--type01 th, .c-tableSp--type01 td {
    display: block;
    width: 100%;
  }
  .c-tableSp--type01 th {
    padding-bottom: 0;
    border-bottom: none;
    font-size: 16px;
    padding-left: 10px;
  }
  .c-tableSp--type01 td {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .c-tableSp--type01 td:before {
    display: none;
  }
  .c-tableSp--type01.c-table--type03 th {
    width: 100%;
    border-bottom: none;
    text-align: left;
  }
  .c-tableSp--type01.c-table--type03 th br {
    display: none;
  }
  .c-tableSp--type01.c-table--type05 th {
    width: 100%;
    border-top: none;
    border-right: 1px solid #0062a3;
    border-bottom: none;
    border-left: 1px solid #0062a3;
    text-align: left;
  }
  .c-tableSp--type01.c-table--type05 td {
    border-left-style: solid;
  }
}

/*----------------------------------------------------
    .c-table--type02
----------------------------------------------------*/
.c-table--type02 {
  border-top: 1px solid #888;
}

.c-table--type02 th, .c-table--type02 td {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #888;
  border-left: 1px solid #888;
  line-height: 1.4;
  text-align: center;
}

.c-table--type02 thead th {
  background-color: #ddd;
}

.c-table--type02 .c-bdl {
  border-left: 1px solid #888 !important;
}

.c-table--type02 tr th:first-child,
.c-table--type02 tr td:first-child {
  border-left: 0;
}

.c-table--type02 td li {
  text-align: left;
}

/*----------------------------------------------------
    .c-table--type03
----------------------------------------------------*/
.c-table--type03 th, .c-table--type03 td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: top;
}

/*----------------------------------------------------
    .c-table--type04
----------------------------------------------------*/
.c-table--type04 {
  border-top: 1px solid #888;
}

.c-table--type04 th, .c-table--type04 td {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #888;
  border-left: 1px solid #888;
  line-height: 1.4;
}

.c-table--type04 tr th:first-child,
.c-table--type04 tr td:first-child {
  border-left: 0;
}

.c-table--type04 th {
  width: 60%;
}

.c-table--type04 td {
  text-align: center;
}

.c-table--type04 td li {
  text-align: left;
}

/*----------------------------------------------------
    .c-table--type05
----------------------------------------------------*/
.c-table--type05 {
  width: 100%;
}

.c-table--type05 th, .c-table--type05 td {
  padding-top: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #231815;
}

@media screen and (max-width: 666px) {
  .c-table--type05 th, .c-table--type05 td {
    display: block;
    width: 100%;
    border-bottom-style: dotted;
    border-bottom-color: #898989;
  }
}

.c-table--type05 th {
  font-weight: normal;
}

.c-table--type05 thead th {
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-table--type05 thead th {
    display: none;
  }
}

.c-table--type05 tbody tr th:first-child {
  border-left: 0;
}

@media screen and (max-width: 666px) {
  .c-table--type05 tbody tr {
    display: block;
    margin-bottom: 40px;
  }
}

.c-table--type05 tbody td {
  padding-right: 18px;
  padding-left: 18px;
  font-size: 15px;
}

@media screen and (max-width: 666px) {
  .c-table--type05 tbody td {
    padding-right: 5px;
    padding-left: 5px;
    font-size: 13px;
  }
  .c-table--type05 tbody td:before {
    content: attr(aria-label);
    display: inline-block;
    min-width: 4em;
    margin-right: 1em;
  }
}

.c-table--type05 .c-cell--date {
  padding-left: 0;
  white-space: nowrap;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--date {
    padding-left: 5px;
    border-top: 1px solid #231815;
    white-space: normal;
    font-size: 13px;
  }
  .c-table--type05 .c-cell--date br {
    display: none;
  }
}

.c-table--type05 .c-cell--category {
  width: 160px;
  text-align: center;
  font-size: 13px;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--category {
    width: 100%;
    text-align: left;
  }
}

.c-table--type05 .c-cell--category .c-label {
  display: inline-block;
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  line-height: 2.3;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--category .c-label {
    width: auto;
  }
}

.c-table--type05 .c-cell--category .c-label--type01 {
  background-color: #002159;
}

.c-table--type05 .c-cell--category .c-label--type02 {
  background-color: #b70d23;
}

.c-table--type05 .c-cell--category .c-label--type03 {
  background-color: #006dda;
}

.c-table--type05 .c-cell--category .c-label--type04 {
  background-color: #005700;
}

.c-table--type05 .c-cell--category .c-label--type05 {
  background-color: #ea4914;
}

.c-table--type05 .c-cell--category .c-label--type06 {
  background-color: #ea219E;
}

.c-table--type05 .c-cell--category .c-label--type07 {
  background-color: #6f2687;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--category .c-label--type01, .c-table--type05 .c-cell--category .c-label--type02, .c-table--type05 .c-cell--category .c-label--type03, .c-table--type05 .c-cell--category .c-label--type04, .c-table--type05 .c-cell--category .c-label--type05, .c-table--type05 .c-cell--category .c-label--type06, .c-table--type05 .c-cell--category .c-label--type07 {
    background-color: transparent;
    color: #000;
  }
}

.c-table--type05 .c-cell--Name {
  text-align: center;
  white-space: nowrap;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--Name {
    text-align: left;
  }
}

.c-table--type05 .c-cell--number {
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--number {
    text-align: left;
  }
}

@media screen and (max-width: 666px) {
  .c-table--type05 .c-cell--title {
    border-bottom: 1px solid #231815;
  }
  .c-table--type05 .c-cell--title:before {
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }
  .c-table--type05 .c-cell--title .c-link--type01, .c-table--type05 .c-cell--title .c-link--type03 a, .c-link--type03 .c-table--type05 .c-cell--title a {
    display: block;
    width: 100%;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    padding: 10px;
  }
  .c-table--type05 .c-cell--title .c-link--type01:link, .c-table--type05 .c-cell--title .c-link--type03 a:link, .c-link--type03 .c-table--type05 .c-cell--title a:link, .c-table--type05 .c-cell--title .c-link--type01:visited, .c-table--type05 .c-cell--title .c-link--type03 a:visited, .c-link--type03 .c-table--type05 .c-cell--title a:visited, .c-table--type05 .c-cell--title .c-link--type01:hover, .c-table--type05 .c-cell--title .c-link--type03 a:hover, .c-link--type03 .c-table--type05 .c-cell--title a:hover, .c-table--type05 .c-cell--title .c-link--type01:active, .c-table--type05 .c-cell--title .c-link--type03 a:active, .c-link--type03 .c-table--type05 .c-cell--title a:active, .c-table--type05 .c-cell--title .c-link--type01:focus, .c-table--type05 .c-cell--title .c-link--type03 a:focus, .c-link--type03 .c-table--type05 .c-cell--title a:focus {
    color: #fff;
  }
  .c-table--type05 .c-cell--title .c-link--type01:link, .c-table--type05 .c-cell--title .c-link--type03 a:link, .c-link--type03 .c-table--type05 .c-cell--title a:link, .c-table--type05 .c-cell--title .c-link--type01:visited, .c-table--type05 .c-cell--title .c-link--type03 a:visited, .c-link--type03 .c-table--type05 .c-cell--title a:visited, .c-table--type05 .c-cell--title .c-link--type01:hover, .c-table--type05 .c-cell--title .c-link--type03 a:hover, .c-link--type03 .c-table--type05 .c-cell--title a:hover, .c-table--type05 .c-cell--title .c-link--type01:active, .c-table--type05 .c-cell--title .c-link--type03 a:active, .c-link--type03 .c-table--type05 .c-cell--title a:active, .c-table--type05 .c-cell--title .c-link--type01:focus, .c-table--type05 .c-cell--title .c-link--type03 a:focus, .c-link--type03 .c-table--type05 .c-cell--title a:focus {
    text-decoration: none;
  }
}

/*----------------------------------------------------
    .c-table--type06
----------------------------------------------------*/
.c-table--type06 {
  border-top: 1px solid #888;
}

.c-table--type06 th, .c-table--type06 td {
  border-left: 1px solid #888;
  border-bottom: 1px solid #888;
  line-height: 1.4;
  text-align: center;
}

.c-table--type06 .c-bdl {
  border-left: 1px solid #888 !important;
}

.c-table--type06 thead th, .c-table--type06 thead td {
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #ddd;
}

.c-table--type06 thead tr th:first-child {
  border-left: 0;
}

.c-table--type06 thead th {
  width: auto;
}

.c-table--type06 tbody th, .c-table--type06 tbody td {
  padding-top: 20px;
  padding-bottom: 20px;
}

.c-table--type06 tbody tr th:first-child,
.c-table--type06 tbody tr td:first-child {
  border-left: 0;
}

.c-table--type06 tbody td li {
  text-align: left;
}

/*----------------------------------------------------
    .c-table--type07
----------------------------------------------------*/
.c-table--type07 th, .c-table--type07 td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: top;
}

@media screen and (max-width: 666px) {
  .c-table--type07 th, .c-table--type07 td {
    display: block;
  }
}

.c-table--type07 th {
  width: 130px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
}

@media screen and (max-width: 666px) {
  .c-table--type07 th {
    width: 100%;
    padding-bottom: 0;
    font-size: 15px;
  }
  .c-table--type07 th br {
    display: none;
  }
}

@media screen and (max-width: 666px) {
  .c-table--type07 td {
    padding-top: 5px;
    padding-left: 1em;
  }
}

/*----------------------------------------------------
    .c-table--type08
----------------------------------------------------*/
.c-table--type08 {
  width: 100%;
  border-collapse: separate;
}

.c-table--type08 + .c-table--type08 {
  margin-top: 20px;
  border-top: 1px solid #000;
}

.c-table--type08 + .c-table--type08 tr:first-child th, .c-table--type08 + .c-table--type08 tr:first-child td {
  padding-top: 20px;
}

.c-table--type08 th, .c-table--type08 td {
  padding-top: 20px;
  padding-bottom: 20px;
  vertical-align: middle;
  border-bottom: 1px dotted #000;
}

.c-table--type08 tr:first-child th, .c-table--type08 tr:first-child td {
  padding-top: 0;
}

.c-table--type08 tr:last-child th, .c-table--type08 tr:last-child td {
  padding-bottom: 0;
  border-bottom: 0;
}

.c-table--type08 th {
  width: 100px;
  font-weight: normal;
  text-align: right;
  padding-right: 0;
}

.c-table--type08 td {
  padding-left: 10px;
}

/*----------------------------------------------------
    .c-table--type09
----------------------------------------------------*/
.c-table--type09 th, .c-table--type09 td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: top;
}

@media screen and (max-width: 768px) {
  .c-table--type09 th {
    width: auto;
    white-space: normal;
  }
}

@media screen and (max-width: 768px) {
  .c-table--type09 td {
    white-space: nowrap;
    padding-left: 0;
  }
}

/*----------------------------------------------------
    .c-table--type10
----------------------------------------------------*/
.c-table--type10 {
  border-top: 1px solid #231815;
}

.c-table--type10 th, .c-table--type10 td {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #231815;
  border-left: 1px solid #231815;
  line-height: 1.4;
}

.c-table--type10 thead th {
  background-color: #ddd;
}

.c-table--type10 .c-bdl {
  border-left: 1px solid #231815 !important;
}

.c-table--type10 tr th:first-child,
.c-table--type10 tr td:first-child {
  border-left: 0;
}

.c-table--type10 th {
  text-align: center;
}

/*----------------------------------------------------
    .c-tableWrap
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-tableWrap--type01 {
    overflow: auto;
    width: 100%;
  }
  .c-tableWrap--type01 table {
    width: 1000px;
  }
}

/*  type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-tableWrap--type02 {
    overflow: auto;
    width: 100%;
  }
  .c-tableWrap--type02 table {
    width: 700px;
  }
}

/*----------------------------------------------------
    .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 {
  box-sizing: border-box;
  box-shadow: none;
  border: 1px solid #898989;
  border-radius: 0;
  -webkit-appearance: none;
}

/*  .c-form--type01
----------------------------------------------------*/
.c-form--type01 input[type=text], .c-form--type01 textarea {
  padding: 5px;
}

/*----------------------------------------------------
    .c-form__wrap--type01
----------------------------------------------------*/
.c-form__table {
  width: 100%;
  border-top: 1px solid #efefef;
}

.c-form__table th, .c-form__table td {
  padding: 20px 10px;
  border-bottom: 1px solid #efefef;
}

@media screen and (max-width: 768px) {
  .c-form__table th, .c-form__table td {
    display: block;
  }
}

.c-form__table th {
  width: 180px;
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .c-form__table th {
    width: 100%;
    padding-bottom: 0;
    border-bottom: none;
  }
}

.c-form__table th span {
  color: #0062a3;
}

@media screen and (max-width: 666px) {
  .c-form__table td {
    padding-top: 10px;
  }
}

/*----------------------------------------------------
    .c-form__wrap--type01
----------------------------------------------------*/
.c-form__wrap--type01 + .c-form__wrap--type01 {
  margin-left: 30px;
}

@media screen and (max-width: 768px) {
  .c-form__wrap--type01 + .c-form__wrap--type01 {
    margin-top: 20px;
    margin-left: 0;
  }
}

/*----------------------------------------------------
    .c-input
----------------------------------------------------*/
/*  .c-input--type01
----------------------------------------------------*/
.c-input--type01 {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-input--type01 {
    width: 100%;
  }
}

/*  .c-input--type02
----------------------------------------------------*/
.c-input--type02 {
  width: 75%;
}

@media screen and (max-width: 768px) {
  .c-input--type02 {
    width: 100%;
  }
}

/*  .c-input--type03
----------------------------------------------------*/
.c-input--type03 {
  width: 10em;
}

@media screen and (max-width: 768px) {
  .c-input--type03 {
    width: 100%;
  }
}

/*  .c-input--type04
----------------------------------------------------*/
.c-input--type04 {
  width: 4em;
}

/*  .c-input--type05
----------------------------------------------------*/
.c-input--type05 {
  width: 2em;
}

/*----------------------------------------------------
    .c-input__wrap
----------------------------------------------------*/
.c-input__wrap--type01 + .c-input__wrap--type01 {
  margin-top: 15px;
}

/*----------------------------------------------------
    .c-fromLabel
----------------------------------------------------*/
/*  .c-fromLabel--type01
----------------------------------------------------*/
.c-formLabel--type01 {
  margin-right: 40px;
  margin-left: 0.5em;
}

/*  .c-fromLabel--type02
----------------------------------------------------*/
.c-formLabel--type02 {
  margin-right: 20px;
  margin-left: 0.5em;
}

/*----------------------------------------------------
    .c-textarea
----------------------------------------------------*/
/*  .c-textarea--type01
----------------------------------------------------*/
.c-textarea--type01 {
  width: 100%;
  padding: 3px 6px;
}

/*----------------------------------------------------
    .c-select
----------------------------------------------------*/
/*  .c-select--type01
----------------------------------------------------*/
.c-select--type01 {
  width: 100%;
  padding: 6px 10px;
}

@media screen and (max-width: 768px) {
  .c-select--type01 {
    width: 100%;
  }
}

.c-select--type02 {
  width: auto;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 768px) {
  .c-select--type02 {
    width: 100%;
  }
}

/*----------------------------------------------------
    .c-form__agree
----------------------------------------------------*/
.c-form__agree {
  margin-top: 60px;
  padding: 80px;
  background-color: #f7f7f7;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-form__agree {
    margin-top: 30px;
    padding: 30px 10px;
  }
}

/*----------------------------------------------------
    .c-form__consent
----------------------------------------------------*/
.c-form__consentCheck {
  margin-bottom: 20px;
  font-size: 18px;
}

.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: none;
}

@media screen and (max-width: 768px) {
  .c-form__submit {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-form__submit {
    font-size: 18px;
  }
}

.c-form__submit--type01 {
  width: 320px;
  padding: 16px;
  background-color: #0062a3;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-form__submit--type01 {
    width: 100%;
  }
}

.c-form__submit--type01:disabled {
  background-color: #ccc;
  color: #efefef;
}

.c-form__submit--type02 {
  background-color: #ccc;
}

.c-form__submit--type03 {
  width: 320px;
  padding: 16px;
  background-color: #231815;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-form__submit--type03 {
    width: 100%;
  }
}

.c-form__submit--type03:disabled {
  background-color: #ccc;
  color: #efefef;
}

/*----------------------------------------------------
    .c-form__submitSelect
----------------------------------------------------*/
/*----------------------------------------------------
    .c-form__text--error
----------------------------------------------------*/
.c-form__text--error {
  font-weight: bold;
  font-size: 14px;
}

/*----------------------------------------------------
    .c-inputtext
----------------------------------------------------*/
/*  .c-inputtext--type01
----------------------------------------------------*/
.c-inputtext--type01 {
  font-size: 22px;
}

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

/*  type02
----------------------------------------------------*/
.c-bg--type02 {
  background-color: #c9caca !important;
}

/*  type03
----------------------------------------------------*/
.c-bg--type03 {
  background-color: #fff !important;
}

/*  type04
----------------------------------------------------*/
.c-bg--type04 {
  background: url(../img/bg_room_rental01.jpg) no-repeat 50% 50%;
  background-size: cover;
}

/*  type05
----------------------------------------------------*/
.c-bg--type05 {
  background-color: transparent !important;
  color: #fff;
}

/*  type06
----------------------------------------------------*/
.c-bg--type06 {
  background: url(../img/bg_enjoy01.jpg) no-repeat 50% 50%;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .c-bg--type06 {
    background-position: 15% 0%;
    background-size: auto 100%;
  }
}

@media screen and (max-width: 666px) {
  .c-bg--type06 {
    background: #efefef;
  }
}

/*----------------------------------------------------
    .c-pattern
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
/*====================================================

  カルーセルスタイル

====================================================*/
/*----------------------------------------------------
    .c-carousel
----------------------------------------------------*/
.c-carousel {
  position: relative;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .c-carousel {
    width: 100%;
  }
}

.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;
}

@media screen and (max-width: 666px) {
  .c-carousel .c-carousel__wrap {
    width: 220px;
  }
}

.c-carousel .c-carousel__container {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  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;
}

.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 {
  color: #000;
}

.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;
}

@media screen and (max-width: 666px) {
  .c-carousel .c-carousel__item {
    width: 220px;
    margin-right: 0;
    margin-left: 0;
  }
}

.c-carousel .c-carousel__picture {
  margin-bottom: 10px;
}

.c-carousel--type01 .c-carousel__text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: 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);
}

@media screen and (max-width: 666px) {
  .c-carousel--type02 .c-carousel__controls button {
    top: 41px;
    width: 26px;
    top: calc(130px - 52px / 2);
    height: 52px;
    background-position: 50% 50%;
    background-size: 50% auto;
  }
}

.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;
}

/*----------------------------------------------------
    .c-mv
----------------------------------------------------*/
.c-mv {
  overflow: hidden;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 1020px) {
  .c-mv {
    width: 1020px;
  }
}

@media screen and (max-width: 768px) {
  .c-mv {
    width: 100%;
  }
}

/*  .c-mv > .c-mv--movie
----------------------------------------------------*/
.c-mv--movie {
  position: relative;
}

@media screen and (max-width: 768px) {
  .c-mv--movie {
    display: none;
  }
}

/*  .c-mv > .c-mv__video__wrap
----------------------------------------------------*/
.c-mv__video__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/*  .c-mv > .c-mv__video
----------------------------------------------------*/
.c-mv__video {
  position: relative;
  width: 100%;
  height: 100%;
}

.c-mv__video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/*  .c-mv > .c-mv__overlay
----------------------------------------------------*/
.c-mv__overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: background-color 1s linear;
  transition: background-color 1s linear;
}

.c-mv__overlay.is-active {
  background-color: #0062a3;
}

.c-mv__overlay.is-inactive {
  z-index: 9;
  background-color: transparent;
}

/*  .c-mv > .c-mv__logo
----------------------------------------------------*/
.c-mv__logo {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 21;
  width: 100%;
  height: 100%;
  background: url(/img/favicon-180.png) no-repeat 50% 50%;
  -webkit-transition: opacity 1s linear;
  transition: opacity 1s linear;
}

.c-mv__logo.is-active {
  opacity: 1;
}

.c-mv__logo.is-inactive {
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .c-mv__logo {
    width: 100%;
    height: 100%;
    background: url(/img/bg_rolemodel01.jpg) repeat 50% 0;
    background-size: auto 100%;
  }
}

/*  .c-mv > .c-mv__copy
----------------------------------------------------*/
.c-mv__copy__wrap {
  opacity: 1;
  position: absolute;
  bottom: 30px;
  left: 40px;
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .c-mv__copy__wrap {
    position: static;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 60px;
    padding-bottom: 60px;
    background-color: #0062a3;
  }
}

/*  #mainVisual > .c-mv__copy--type01
----------------------------------------------------*/
.c-mv__copy--type01 {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  opacity: 0;
  width: 510px;
  height: 194px;
  margin-bottom: 50px;
  background: url(/img/txt_copy01-01.svg) no-repeat 0 0;
  background-size: 100% auto;
}

@media screen and (max-width: 768px) {
  .c-mv__copy--type01 {
    opacity: 1;
    top: 40px;
    left: 50%;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 280px;
    height: 100px;
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 30px;
    margin-left: auto;
    background-image: url(/img/txt_copy01-03.svg);
    background-size: 100% auto;
  }
}

.c-mv__copy--type01.is-active {
  opacity: 1;
}

/*  #mainVisual > .c-mv__copy--type02
----------------------------------------------------*/
.c-mv__copy--type02 {
  opacity: 0;
  margin-bottom: 60px;
  line-height: 2.2;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 24px;
  color: #fff;
}

.c-mv__copy--type02.is-active {
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .c-mv__copy--type02 {
    opacity: 1;
    width: calc(100% - 30px);
    margin-right: auto;
    margin-bottom: 30px;
    margin-left: auto;
    text-align: center;
    font-size: 18px;
  }
  .c-mv__copy--type02 span {
    letter-spacing: -1em;
  }
}

/*  #mainVisual > .c-link--type01
----------------------------------------------------*/
.c-mv .c-link--type04 {
  opacity: 0;
  width: 320px;
  margin-right: 0;
  margin-left: 0;
}

.c-mv .c-link--type04.is-active {
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .c-mv .c-link--type04 {
    opacity: 1;
    position: static;
    width: 210px;
    margin-right: auto;
    margin-left: auto;
  }
}

/*  #mainVisual > .p-link
----------------------------------------------------*/
.c-mv__link {
  visibility: hidden;
  position: absolute;
  bottom: 30px;
  z-index: -1;
  width: 250px;
  opacity: 0;
  -webkit-transition: opacity 1s linear;
  transition: opacity 1s linear;
}

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

.c-mv__link img {
  width: 100%;
  height: auto;
}

.c-mv__link.is-active {
  visibility: visible;
  z-index: 10;
  opacity: 1;
}

.c-mv__link:hover {
  opacity: 0.7;
}

.c-mv__link--ows {
  right: 40px;
}

.c-mv__link--enjoy {
  right: 255px;
}

.c-mv--slide {
  display: none;
  overflow: hidden;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-mv--slide {
    display: block;
  }
}

.c-mv__loading {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  width: 100%;
  height: 400px;
  background-color: #fff;
}

@media screen and (max-width: 768px) {
  .c-mv__loading {
    height: 100%;
  }
}

.c-mv__spinner {
  width: 100%;
  height: 100%;
  background: #fff url(/img/bg_loading01.gif) no-repeat 50% 50%;
}

.c-mv__container {
  overflow: hidden;
  position: relative;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .c-mv__container {
    height: calc(100vh - 70px);
    position: static;
  }
}

@media screen and (max-width: 666px) {
  .c-mv__container {
    height: 400px;
  }
}

.c-mv__reference {
  position: relative;
  top: 0;
  left: 0;
  width: 925px;
  height: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .c-mv__reference {
    width: 100%;
    height: 100%;
  }
  .c-mv__reference:before, .c-mv__reference:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.75);
  }
  .c-mv__reference:before {
    left: -100%;
  }
  .c-mv__reference:after {
    right: -100%;
  }
}

.c-mv__inner {
  position: absolute;
  left: -925px;
  width: 2850px;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .c-mv__inner {
    left: 0;
    width: 100%;
  }
}

.c-mv__slide {
  position: relative;
  float: left;
  width: 925px;
  height: 100%;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-mv__slide {
    opacity: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    float: none;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.6s linear;
    transition: opacity 0.6s linear;
  }
  .c-mv__slide.is-active {
    opacity: 1;
    z-index: 2;
  }
}

@media screen and (max-width: 768px) {
  .c-mv__slide img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    height: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@media screen and (max-width: 666px) {
  .c-mv__slide img {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 400px) {
  .c-mv__slide img {
    width: auto;
    height: 100%;
  }
}

.c-mv__slide a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.c-mv__slide a:hover, .c-mv__slide a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

/*====================================================

  ○○の流れ

====================================================*/
/*----------------------------------------------------
    .c-flow
----------------------------------------------------*/
/*  .type01
----------------------------------------------------*/
.c-flow--type01 .c-flow__item {
  position: relative;
  padding: 40px;
  background-color: #efefef;
  margin-bottom: 125px;
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__item {
    margin-bottom: 80px;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.c-flow--type01 .c-flow__item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -78px;
  left: 50%;
  width: 60px;
  height: 31px;
  background: url(../img/icn_arrow03.svg) no-repeat 0 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__item:after {
    bottom: -55px;
  }
}

.c-flow--type01 .c-flow__item:last-child {
  margin-bottom: 0;
}

.c-flow--type01 .c-flow__item:last-child:after {
  display: none;
}

.c-flow--type01 .c-flow__head {
  margin-bottom: 45px;
  text-align: center;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  line-height: 1.25;
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__head {
    margin-bottom: 30px;
  }
}

.c-flow--type01 .c-flow__head .c-flow__head--sub {
  display: block;
  margin-bottom: 15px;
  font-size: 18px;
}

.c-flow--type01 .c-flow__head .c-flow__head--main {
  display: block;
  font-size: 20px;
}

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

.c-flow--type01 .c-flow__picture {
  width: 338px;
}

@media screen and (max-width: 768px) {
  .c-flow--type01 .c-flow__picture {
    width: 200px;
  }
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__picture {
    width: 100%;
    margin-bottom: 20px;
  }
}

.c-flow--type01 .c-flow__picture img {
  width: 100%;
  height: auto;
}

.c-flow--type01 .c-flow__text {
  width: calc(100% - 338px - 43px);
}

@media screen and (max-width: 768px) {
  .c-flow--type01 .c-flow__text {
    width: calc(100% - 200px - 32px);
  }
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__text {
    width: 100%;
  }
}

.c-flow--type01 .c-flow__text .c-head--type09 {
  margin-top: 30px;
  margin-bottom: 15px;
}

.c-flow--type01 .c-flow__text .c-link--type01, .c-flow--type01 .c-flow__text .c-link--type03 a, .c-link--type03 .c-flow--type01 .c-flow__text a {
  width: 320px;
}

@media screen and (max-width: 666px) {
  .c-flow--type01 .c-flow__text .c-link--type01, .c-flow--type01 .c-flow__text .c-link--type03 a, .c-link--type03 .c-flow--type01 .c-flow__text a {
    width: 100%;
  }
}

/*  .type02
----------------------------------------------------*/
.c-flow--type02 .c-flow__item {
  position: relative;
  padding: 35px;
  background-color: #efefef;
  margin-bottom: 125px;
  text-align: center;
}

.c-flow--type02 .c-flow__item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -78px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 60px;
  height: 31px;
  background: url(../img/icn_arrow03.svg) no-repeat 0 0;
}

.c-flow--type02 .c-flow__item:last-child {
  margin-bottom: 0;
}

.c-flow--type02 .c-flow__item:last-child:after {
  display: none;
}

.c-flow--type02 .c-flow__head {
  margin-bottom: 1.5em;
  text-align: center;
  line-height: 1.25;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-flow--type02 .c-flow__body {
    text-align: left;
  }
}

/*  .type03
----------------------------------------------------*/
.c-flow--type03 {
  counter-reset: number;
}

.c-flow--type03 .c-flow__item {
  display: table;
  position: relative;
  width: 100%;
  height: 88px;
  margin-bottom: 88px;
  border-radius: 44px;
  background-color: #fff;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-flow--type03 .c-flow__item {
    padding: 70px 20px 20px;
    border-radius: 8px;
  }
}

.c-flow--type03 .c-flow__item .c-flow__number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 14px;
  left: 14px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #efefef;
}

@media screen and (max-width: 666px) {
  .c-flow--type03 .c-flow__item .c-flow__number {
    top: 10px;
    left: 50%;
    width: 50px;
    height: 50px;
    background-size: 25px auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.c-flow--type03 .c-flow__item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -62px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 60px;
  height: 31px;
  background: url(/img/icn_arrow03.svg) no-repeat 0 0;
}

.c-flow--type03 .c-flow__item:last-child {
  margin-bottom: 0;
}

.c-flow--type03 .c-flow__item:last-child:after {
  display: none;
}

.c-flow--type03 .c-flow__item a:link, .c-flow--type03 .c-flow__item a:visited, .c-flow--type03 .c-flow__item a:hover, .c-flow--type03 .c-flow__item a:active, .c-flow--type03 .c-flow__item a:focus {
  color: #000;
}

.c-flow--type03 .c-flow__item a:link, .c-flow--type03 .c-flow__item a:visited {
  text-decoration: underline;
}

.c-flow--type03 .c-flow__item a:hover, .c-flow--type03 .c-flow__item a:active, .c-flow--type03 .c-flow__item a:focus {
  text-decoration: none;
}

.c-flow--type03 .c-flow__text {
  display: table-cell;
  vertical-align: middle;
  padding-right: 88px;
  padding-left: 88px;
}

@media screen and (max-width: 666px) {
  .c-flow--type03 .c-flow__text {
    padding-right: 0;
    padding-left: 0;
  }
}

/*  .type04
----------------------------------------------------*/
.c-flow--type04 {
  padding-top: 60px;
}

.c-flow--type04 .c-flow__item {
  position: relative;
  margin-bottom: 100px;
  padding: 30px;
  text-align: center;
  background-color: #fff;
}

.c-flow--type04 .c-flow__item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -62px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 60px;
  height: 31px;
  background: url(/img/icn_arrow03.svg) no-repeat 0 0;
}

.c-flow--type04 .c-flow__item:last-child {
  margin-bottom: 0;
}

.c-flow--type04 .c-flow__item:last-child:after {
  display: none;
}

.c-flow--type04 .c-flow__head {
  margin-bottom: 30px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  font-size: 18px;
}

.c-flow--type04 .c-flow__head .c-flow__step {
  display: block;
  margin-bottom: 10px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 666px) {
  .c-flow--type04 .c-flow__body .c-col3--type03 .c-columns__item {
    margin-top: 0;
  }
}

/*  .type05
----------------------------------------------------*/
.c-flow--type05 {
  margin-bottom: 80px;
}

.c-flow--type05 table {
  height: 100%;
  border-collapse: separate;
  border-spacing: 10px;
}

.c-flow--type05 table th, .c-flow--type05 table td {
  vertical-align: top;
}

.c-flow--type05 table .c-flow__head {
  width: 155px;
  padding: 20px;
  background-color: #c9caca;
  line-height: 1.4;
  font-weight: normal;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .c-flow--type05 table .c-flow__head {
    width: 80px;
    font-size: 13px;
  }
}

.c-flow--type05 table .c-flow__head span {
  display: block;
  margin-bottom: 15px;
  font-size: 20px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

@media screen and (max-width: 666px) {
  .c-flow--type05 table .c-flow__head span {
    font-size: 16px;
  }
}

.c-flow--type05 table .c-flow__text {
  padding: 20px 25px;
  background-color: #efefef;
  line-height: 2;
}

.c-flow--type05 table .c-flow__text dd + dt {
  margin-top: 1em;
}

.c-flow--type05 table .c-flow__course01,
.c-flow--type05 table .c-flow__course02 {
  height: 100%;
  padding: 0;
  color: #fff;
}

.c-flow--type05 table .c-flow__course01 .c-flow__wrap,
.c-flow--type05 table .c-flow__course02 .c-flow__wrap {
  position: relative;
  background-color: #0062a3;
  width: 90px;
  height: calc(100% - 36px);
  padding-top: 30px;
  text-align: center;
}

.c-flow--type05 table .c-flow__course01 .c-flow__wrap:before,
.c-flow--type05 table .c-flow__course02 .c-flow__wrap:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -36px;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 36px 45px 0 45px;
  border-color: #0062a3 transparent transparent;
}

.c-flow--type05 table .c-flow__course01 .c-flow__wrap > span,
.c-flow--type05 table .c-flow__course02 .c-flow__wrap > span {
  display: block;
  width: 1em;
  margin-right: auto;
  margin-left: auto;
  white-space: wrap;
  text-align: center;
  line-height: 1.25;
  font-size: 20px;
}

.c-flow--type05 table .c-flow__course01 .c-flow__wrap .vertical,
.c-flow--type05 table .c-flow__course02 .c-flow__wrap .vertical {
  display: block;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

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

/*====================================================

  アイキャッチスタイル

====================================================*/
/*----------------------------------------------------
    .c-eyeCatch--type01
----------------------------------------------------*/
@media screen and (max-width: 768px) {
  .c-eyeCatch--type01 {
    width: 100%;
  }
}

.c-eyeCatch--type01 img {
  width: 100%;
  height: auto;
}

/*----------------------------------------------------
    .c-eyeCatch--type02
----------------------------------------------------*/
@media screen and (max-width: 768px) {
  .c-eyeCatch--type02 {
    width: 100%;
  }
  .c-eyeCatch--type02 img {
    width: 100%;
    height: auto;
  }
}

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

.c-label--type01 {
  background-color: #002159;
}

.c-label--type02 {
  background-color: #b70d23;
}

.c-label--type03 {
  background-color: #006dda;
}

.c-label--type04 {
  background-color: #005700;
}

.c-label--type05 {
  background-color: #ea4914;
}

.c-label--type06 {
  background-color: #ea219E;
}

.c-label--type07 {
  background-color: #6f2687;
}

/*====================================================

  ブロック・ボックススタイル

====================================================*/
/*----------------------------------------------------
    .c-block--type01
----------------------------------------------------*/
.c-block--type01 {
  width: 550px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .c-block--type01 {
    width: 100%;
  }
}

.c-block--type01 .c-block__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  position: relative;
  margin-bottom: 70px;
  padding-top: 35px;
  padding-bottom: 20px;
  border-radius: 8px;
  background-color: #fff;
}

@media screen and (max-width: 666px) {
  .c-block--type01 .c-block__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.c-block--type01 .c-block__wrap:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -50px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 24px 41px 0 41px;
  border-color: #231815 transparent transparent;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.c-block--type01 .c-block__item {
  text-align: center;
}

.c-block--type01 .c-block__item:nth-child(2n) {
  margin-left: 60px;
}

@media screen and (max-width: 666px) {
  .c-block--type01 .c-block__item:nth-child(2n) {
    margin-left: 0;
    margin-top: 30px;
  }
}

.c-block--type01 .c-block__picture {
  margin-bottom: 10px;
}

.c-block--type01 .c-block__text--type01 span {
  display: block;
  font-size: 14px;
}

@media screen and (max-width: 666px) {
  .c-block--type01 .c-block__text--type01 span {
    font-size: 12px;
  }
}

.c-block--type01 .c-block__text--type02 {
  text-align: center;
  font-size: 28px;
}

@media screen and (max-width: 666px) {
  .c-block--type01 .c-block__text--type02 {
    font-size: 18px;
  }
}

/*----------------------------------------------------
    .c-box--type01
----------------------------------------------------*/
/*====================================================

  画像スタイル

====================================================*/
/*----------------------------------------------------
    .c-picture--type01
----------------------------------------------------*/
.c-picture--type01 {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .c-picture--type01 img {
    width: 100%;
    height: auto;
  }
}

/*----------------------------------------------------
    .c-picture--type02
----------------------------------------------------*/
.c-picture--type02 {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  width: 100%;
}

.c-picture--type02.c-picture--enjoy01 {
  height: 523px;
  background: url(/img/img_enjoy_service01.png) no-repeat 0 0;
}

@media screen and (max-width: 768px) {
  .c-picture--type02.c-picture--enjoy01 {
    height: 0;
    padding-top: 51.28%;
    background-size: 100% auto;
  }
}

@media screen and (max-width: 666px) {
  .c-picture--type02.c-picture--enjoy01 {
    padding-top: 172.75%;
    background-image: url(/img/img_enjoy_service02.png);
    background-size: auto 100%;
  }
}

/*----------------------------------------------------
    .c-picture--type03
----------------------------------------------------*/
.c-picture--type03 img {
  width: 100%;
  height: auto;
}

/*----------------------------------------------------
    .c-picture--type04
----------------------------------------------------*/
.c-picture--type04 {
  margin-bottom: 55px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .c-picture--type04 img {
    width: 125px;
    height: auto;
  }
}

/*----------------------------------------------------
    .c-picture--type05
----------------------------------------------------*/
.c-picture--type05 {
  margin-bottom: 55px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .c-picture--type05 img {
    width: auto;
    height: 100px;
  }
}

/*----------------------------------------------------
    .c-picture--type06
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .c-picture--type06 img {
    width: 100%;
    height: auto;
  }
}

/*----------------------------------------------------
    .c-picture--type07
----------------------------------------------------*/
.c-picture--type07 {
  float: right;
  margin-left: 25px;
  width: 350px;
}

.c-picture--type07 img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-picture--type07 {
    width: 250px;
  }
}

@media screen and (max-width: 666px) {
  .c-picture--type07 {
    float: none;
    width: 96%;
    margin: 0 auto 2em auto;
  }
}

/*----------------------------------------------------
    .c-picture--type08
----------------------------------------------------*/
.c-picture--type08 {
  float: left;
  margin-right: 25px;
  width: 350px;
}

.c-picture--type08 img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-picture--type08 {
    width: 250px;
  }
}

@media screen and (max-width: 666px) {
  .c-picture--type08 {
    float: none;
    width: 96%;
    margin: 0 auto 2em auto;
  }
}

/*====================================================

  水平線スタイル

====================================================*/
/*----------------------------------------------------
    .c-hr--type01
----------------------------------------------------*/
.c-hr--type01 {
  margin-bottom: 70px;
  border: none;
  border-top: dashed 1px #ddd;
  height: 1px;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .c-hr--type01 {
    margin-bottom: 50px;
  }
}

/*====================================================

  アイコンスタイル

====================================================*/
/*----------------------------------------------------
    .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
----------------------------------------------------*/
/*====================================================

  日付スタイル

====================================================*/
/*----------------------------------------------------
    .c-date--type01
----------------------------------------------------*/
/*====================================================

  新着情報のパーツ

====================================================*/
/*----------------------------------------------------
    .c-date--type01
----------------------------------------------------*/
/*----------------------------------------------------
    .p-news__backLink
----------------------------------------------------*/
.p-news__backLink {
  padding-top: 70px;
  border-top: 1px dotted #efefef;
}

/*====================================================

  Google マップ

====================================================*/
/*----------------------------------------------------
    .c-googleMap
----------------------------------------------------*/
.c-googleMap {
  width: calc(100% - 81px);
  margin: 0 auto 80px 0;
}

@media screen and (max-width: 768px) {
  .c-googleMap {
    width: 100%;
    margin-bottom: 40px;
  }
}

.c-googleMap__canvas {
  height: 600px;
}

@media screen and (max-width: 666px) {
  .c-googleMap__canvas {
    height: 300px;
  }
}

/*====================================================

  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%;
}

/*====================================================

  Fancybox

====================================================*/
/*----------------------------------------------------
    .fancybox-title-inside-wrap
------------------------------------------------------*/
/*----------------------------------------------------
    .fc-custom
----------------------------------------------------*/
.fc-custom__close {
  position: absolute;
  top: 15px;
  right: 30px;
  width: 63px;
  height: 63px;
  background: url(/img/btn_close01.svg) no-repeat 0 0;
}

@media screen and (max-width: 666px) {
  .fc-custom__close {
    top: -15px;
    right: -15px;
    width: 30px;
    height: 30px;
    background-size: 100% auto;
  }
}

/*====================================================

  動画サムネイル

====================================================*/
.c-movie--type01 {
  text-align: center;
  margin-top: 40px;
}

@media screen and (max-width: 666px) {
  .c-movie--type01 {
    width: 100%;
  }
  .c-movie--type01 img {
    width: 100%;
  }
}

/*====================================================

  PC/スマホ表示切り替え

====================================================*/
.display-sp--type01 {
  display: none;
}

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

@media screen and (max-width: 666px) {
  .display-sp--type01 {
    display: block;
  }
}

/*====================================================

  その他

====================================================*/
/*====================================================

  concrete5 リセット

====================================================*/
/*----------------------------------------------------
    .ccm-panel-add-block-set(ブロックメニュー)
----------------------------------------------------*/
#ccm-panel-add-block li {
  padding-left: 0;
}

#ccm-panel-add-block li:before {
  content: none;
}

/*  type01
----------------------------------------------------*/
/*====================================================

  home:トップページ

====================================================*/
/*----------------------------------------------------
    .p-home
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
@media screen and (max-width: 1080px) {
  .p-home--type01 {
    width: 1060px;
  }
}

@media screen and (max-width: 768px) {
  .p-home--type01 {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

.p-home--type01 .p-home__head {
  padding-bottom: 46px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__head {
    padding-bottom: 30px;
  }
}

.p-home--type01 .p-home__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  background-repeat: no-repeat;
  background-position: right 380px top 0;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container {
    background-position: 20% -20%;
    background-size: auto 100%;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 .p-home__container {
    background-position: 50% 50%;
  }
}

.p-home--type01 .p-home__container.p-home__bg--type01 {
  background-image: url(/img/pic_special_content01.jpg);
}

.p-home--type01 .p-home__container .p-home__item {
  position: relative;
  width: calc(100% - 380px - 40px);
  padding-left: 40px;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__item {
    width: 100%;
    padding-left: 0;
    background-color: rgba(0, 0, 0, 0.25);
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 .p-home__container .p-home__item {
    padding-bottom: 20px;
  }
}

.p-home--type01 .p-home__container .p-home__wrap {
  position: absolute;
  bottom: 40px;
  width: calc(624px + 30px * 2);
  padding: 20px 30px;
  background-color: rgba(0, 0, 0, 0.25);
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__wrap {
    position: static;
    width: 100%;
    background-color: transparent;
    padding: 60px 30px;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 .p-home__container .p-home__wrap {
    padding: 20px 15px;
  }
}

.p-home--type01 .p-home__container .p-home__title {
  margin-bottom: 30px;
}

.p-home--type01 .p-home__container .p-home__title svg {
  width: 100%;
  height: auto;
}

.p-home--type01 .p-home__container .p-home__text {
  letter-spacing: 0.2em;
  line-height: 1.8;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 22px;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__text {
    font-size: 20px;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 .p-home__container .p-home__text {
    font-size: 16px;
  }
}

.p-home--type01 .p-home__container .p-home__thumb {
  width: 380px;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__thumb {
    width: 100%;
  }
}

.p-home--type01 .p-home__container .p-home__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 380px;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__list {
    width: 100%;
  }
}

.p-home--type01 .p-home__container .p-home__list li {
  width: 190px;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .p-home__list li {
    width: calc(100% / 6);
  }
}

@media screen and (max-width: 666px) {
  .p-home--type01 .p-home__container .p-home__list li {
    width: calc(100% / 3);
  }
}

.p-home--type01 .p-home__container .p-home__list img {
  width: 100%;
  height: auto;
}

.p-home--type01 .p-home__container .c-link--type04 {
  margin-top: 30px;
}

@media screen and (max-width: 768px) {
  .p-home--type01 .p-home__container .c-link--type04 {
    position: static;
  }
}

/*  type02
----------------------------------------------------*/
.p-home--type02 {
  margin-bottom: 130px;
}

@media screen and (max-width: 666px) {
  .p-home--type02 {
    margin-bottom: 80px;
  }
}

.p-home--type02 .p-home__head {
  padding-bottom: 45px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__head {
    padding-bottom: 30px;
  }
}

.p-home--type02 .p-home__container {
  overflow: hidden;
  position: relative;
  background-color: #efefef;
}

.p-home--type02 .p-home__container:after {
  content: "";
  width: 1020px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__container:after {
    display: none;
  }
}

.p-home--type02 .p-home__container + .p-home__container {
  margin-top: 10px;
}

.p-home--type02 .p-home__container.p-home__container--type01:after {
  background-image: url(../img/pic_home01.jpg);
}

.p-home--type02 .p-home__container.p-home__container--type02:after {
  background-image: url(../img/pic_home02.jpg);
}

.p-home--type02 .p-home__container.p-home__container--type03:after {
  left: 55%;
  background-image: url(../img/pic_home03.jpg);
}

.p-home--type02 .p-home__container.p-home__container--type04:after {
  background-image: url(../img/pic_home04.jpg);
}

.p-home--type02 .p-home__item {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  z-index: 2;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: calc(168px + 35px);
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__item {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__item {
    padding: 20px 0;
  }
}

.p-home--type02 .p-home__item:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 168px;
  height: 168px;
  margin-right: 35px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__item:before {
    top: 20px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 100px;
    height: 100px;
  }
}

.p-home--type02 .p-home__item--type01:before {
  background-image: url(/img/img_service01.svg);
}

.p-home--type02 .p-home__item--type02:before {
  background-image: url(/img/img_service02.svg);
}

.p-home--type02 .p-home__item--type03:before {
  background-image: url(/img/img_service03.svg);
}

.p-home--type02 .p-home__item--type04:before {
  background-image: url(/img/img_service04.svg);
}

.p-home--type02 .p-home__picture {
  position: relative;
}

.p-home--type02 .p-home__picture img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.p-home--type02 .p-home__wrap {
  width: 450px;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__wrap {
    width: 100%;
  }
}

.p-home--type02 .p-home__wrap .p-home__name {
  margin-bottom: 10px;
  font-weight: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  line-height: 1.25;
  font-size: 27px;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__wrap .p-home__name {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    height: 100px;
    padding-left: 120px;
    font-size: 20px;
    text-align: left;
  }
}

.p-home--type02 .p-home__wrap .p-home__name--sub01 {
  display: block;
  font-size: 12px;
  margin-top: 6px;
}

.p-home--type02 .p-home__wrap .p-home__name--sub02 {
  font-size: 17px;
}

.p-home--type02 .p-home__wrap .p-home__link {
  width: 320px;
  padding-top: 30px;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__wrap .p-home__link {
    width: 210px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 20px;
  }
}

.p-home--type02 .p-home__wrap .p-home__link .c-link--type01, .p-home--type02 .p-home__wrap .p-home__link .c-link--type03 a, .c-link--type03 .p-home--type02 .p-home__wrap .p-home__link a {
  width: 100%;
}

.p-home--type02 .p-home__linkList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /* width: 430px; */
  width: 290px;
  padding-top: 30px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__linkList {
    width: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.p-home--type02 .p-home__linkList li {
  width: 140px;
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__linkList li {
    width: auto;
    margin-right: 20px;
    margin-bottom: 20px;
    margin-left: 20px;
  }
}

@media screen and (max-width: 666px) {
  .p-home--type02 .p-home__linkList li:last-child, .p-home--type02 .p-home__linkList li:nth-last-child(2):nth-child(odd) {
    margin-bottom: 0;
  }
}

.p-home--type02 .p-home__linkList a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
  line-height: 1.25;
  font-size: 13px;
}

.p-home--type02 .p-home__linkList a:hover, .p-home--type02 .p-home__linkList a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.p-home--type02 .p-home__linkList a:link, .p-home--type02 .p-home__linkList a:visited, .p-home--type02 .p-home__linkList a:hover, .p-home--type02 .p-home__linkList a:active, .p-home--type02 .p-home__linkList a:focus {
  text-decoration: none;
}

.p-home--type02 .p-home__linkList .p-home__pictureWrap {
  display: block;
  position: relative;
  left: 50%;
  width: 88px;
  height: 88px;
  margin-bottom: 10px;
  border-radius: 50%;
  background-color: #0062a3;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.p-home--type02 .p-home__linkList .p-home__pictureWrap img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/*  type03
----------------------------------------------------*/
.p-home--type03 {
  margin-bottom: 75px;
}

@media screen and (max-width: 666px) {
  .p-home--type03 {
    margin-bottom: 60px;
  }
}

.p-home--type03 a {
  display: block;
  width: 334px;
  height: 54px;
  margin-right: auto;
  margin-left: auto;
}

/*====================================================

  thought:私たちの想い

====================================================*/
.page-thought .c-categoryHead__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media screen and (max-width: 666px) {
  .page-thought .c-categoryHead__inner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.page-thought .c-categoryHead__inner .c-categoryHead__head--thought {
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  font-size: 24px;
}

/*  type01
----------------------------------------------------*/
@media screen and (max-width: 666px) {
  .p-thought--type01 {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-bottom: 50px;
    margin-left: auto;
  }
}

.p-thought--type01 .c-section {
  margin-bottom: 100px;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .c-section {
    margin-bottom: 50px;
  }
}

.p-thought--type01 .p-thought__copy {
  overflow: hidden;
  width: 850px;
  height: 72px;
  margin: 40px auto 120px;
  font-size: 80px;
  text-align: center;
  background: url(/img/txt_copy01-02.svg) no-repeat 0 0;
  background-size: 100% auto;
  white-space: nowrap;
  text-indent: 100%;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__copy {
    width: calc(100% - 80px);
    margin-top: 30px;
    margin-bottom: 80px;
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__copy {
    width: 100%;
    height: 0;
    margin-top: 20px;
    margin-bottom: 60px;
    padding-top: 32.78%;
    background-image: url(/img/txt_copy07.svg);
  }
}

.p-thought--type01 .p-thought__copy span {
  letter-spacing: -1em;
}

.p-thought--type01 .p-thought__copy span.pc {
  letter-spacing: -1em;
}

.p-thought--type01 .p-thought__copy span.sp {
  letter-spacing: -0.5em;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__copy span.sp {
    letter-spacing: -1em;
  }
}

.p-thought--type01 .p-thought__head {
  text-align: center;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #3e3a39;
}

.p-thought--type01 .p-thought__head img {
  width: 100%;
  height: auto;
}

.p-thought--type01 .p-thought__text {
  line-height: 2;
  font-size: 23px;
  font-weight: normal;
}

.p-thought--type01 .p-thought__text p + p {
  margin-top: 48px;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__text p + p {
    margin-top: 38px;
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__text p + p {
    margin-top: 32px;
  }
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__text {
    line-height: 1.8;
    font-size: 22px;
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__text {
    line-height: 1.7;
    font-size: 20px;
  }
}

.p-thought--type01 .p-thought__text span {
  letter-spacing: -1em;
}

.p-thought--type01 .p-thought__logo {
  text-align: center;
}

.p-thought--type01 .p-thought__logo img {
  width: 350px;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__logo img {
    width: 100%;
    height: auto;
  }
}

.p-thought--type01 .c-linkWrap--type01 {
  margin-top: 60px;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .c-linkWrap--type01 {
    width: 100%;
  }
}

.p-thought--type01 .p-thought__movie {
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__movie img {
    width: 100%;
    height: auto;
  }
}

.p-thought--type01 .p-thought__rolemodel {
  width: 840px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__rolemodel {
    width: 100%;
  }
}

.p-thought--type01 .p-thought__rolemodel .p-thought__rolemodel__text {
  margin-bottom: 60px;
  line-height: 2.1;
}

.p-thought--type01 .p-thought__thumb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 840px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__thumb {
    width: 100%;
  }
}

.p-thought--type01 .p-thought__thumb:after {
  width: 255px;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__thumb:after {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__thumb:after {
    width: calc(100% / 2 - 15px);
  }
}

.p-thought--type01 .p-thought__thumb .p-thought__item {
  width: 255px;
  margin-top: 37px;
}

@media screen and (max-width: 768px) {
  .p-thought--type01 .p-thought__thumb .p-thought__item {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__thumb .p-thought__item {
    width: calc(100% / 2 - 15px);
  }
}

.p-thought--type01 .p-thought__thumb .p-thought__item:nth-child(-n+3) {
  margin-top: 0;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__thumb .p-thought__item:nth-child(-n+3) {
    margin-top: 37px;
  }
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__thumb .p-thought__item:nth-child(-n+2) {
    margin-top: 0;
  }
}

.p-thought--type01 .p-thought__thumb .p-thought__item img {
  width: 100%;
  height: auto;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item01 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item02 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item03 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item04 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
  -ms-flex-order: 4;
  order: 4;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item05 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
  -ms-flex-order: 5;
  order: 5;
}

.p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item06 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
  -ms-flex-order: 6;
  order: 6;
}

@media screen and (max-width: 666px) {
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item01 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item02 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
  }
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item03 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item04 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
  }
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item05 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
  }
  .p-thought--type01 .p-thought__thumb .p-thought__item.p-thought__item06 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
  }
}

/*====================================================

  about:会社概要

====================================================*/
/*----------------------------------------------------
    .p-message--type01
----------------------------------------------------*/
.p-message--type01 {
  overflow: hidden;
  position: relative;
}

@media screen and (max-width: 666px) {
  .p-message--type01.c-wrap {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.p-message--type01 .p-message__wrap:after {
  content: "";
  display: block;
  position: absolute;
  top: -80px;
  right: -690px;
  z-index: -1;
  width: 2129px;
  height: 1181px;
  background: #efefef url(/img/bg_message01.jpg) no-repeat 50% 50%;
}

@media screen and (max-width: 768px) {
  .p-message--type01 .p-message__wrap:after {
    top: auto;
    bottom: -75px;
    background: rgba(239, 239, 239, 0.1);
  }
}

.p-message--type01 .p-message__head {
  margin-bottom: 40px;
  font-size: 26px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

.p-message--type01 .p-message__body {
  width: 600px;
  line-height: 2.1;
  font-size: 17px;
}

@media screen and (max-width: 768px) {
  .p-message--type01 .p-message__body {
    width: 100%;
    padding-bottom: 20px;
    font-size: 14px;
  }
}

.p-message--type01 .p-message__body p + p {
  margin-top: 30px;
}

.p-message--type01 .p-message__name {
  text-align: right;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

.p-message--type01 .p-message__name img {
  vertical-align: baseline;
}

.p-message--type01 .c-section {
  position: relative;
  z-index: 2;
}

/*----------------------------------------------------
    .p-staff
----------------------------------------------------*/
.p-staff .p-staff__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 980px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .p-staff .p-staff__wrap {
    width: 100%;
  }
}

.p-staff .p-staff__text {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  padding-right: 40px;
  padding-left: 40px;
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__text {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.p-staff .p-staff__head--type01 {
  padding-top: 40px;
  padding-bottom: 40px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: normal;
  font-size: 19px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__head--type01 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.p-staff .p-staff__head--type01 span {
  padding-left: 1em;
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__head--type01 span {
    display: block;
    padding-left: 0;
  }
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__head--type01 .p-staf__affiliation,
  .p-staff .p-staff__head--type01 .p-staf__name {
    display: block;
  }
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__head--type01 .p-staf__affiliation {
    font-size: 17px;
  }
}

.p-staff .p-staff__head--type01 .p-staf__name {
  padding-left: 1em;
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__head--type01 .p-staf__name {
    padding-left: 0;
  }
}

.p-staff .p-staff__head--type02 {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
  font-size: 16px;
}

.p-staff .p-staff__section + .p-staff__section {
  margin-top: 30px;
}

.p-staff .p-staff__section p {
  font-size: 15px;
}

@media screen and (max-width: 666px) {
  .p-staff .p-staff__section p {
    font-size: 14px;
  }
}

.p-staff .p-staff__link {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: 30px;
  margin-bottom: 40px;
}

.p-staff .p-staff__link li {
  margin-right: 10px;
  margin-left: 10px;
}

.p-staff .p-staff__link a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.p-staff .p-staff__link a:hover, .p-staff .p-staff__link a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.p-staff .p-staff__picture {
  width: 100%;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

.p-staff .p-staff__picture img {
  width: 100%;
  height: auto;
}

.p-staff__introduction {
  display: none;
}

/*====================================================

  service:サービス

====================================================*/
/*----------------------------------------------------
    .p-service
----------------------------------------------------*/
.p-service--type01 .p-service__head {
  position: relative;
  padding-top: 2em;
  padding-bottom: 30px;
  border-bottom: 1px solid #231815;
}

.p-service--type01 .p-service__head .p-service__date {
  position: absolute;
  top: 0;
}

.p-service--type01 .p-service__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
  padding-top: 30px;
  border-top: 1px solid #231815;
  line-height: 1.25;
}

.p-service--type01 .p-service__nav a:link, .p-service--type01 .p-service__nav a:visited, .p-service--type01 .p-service__nav a:hover, .p-service--type01 .p-service__nav a:active, .p-service--type01 .p-service__nav a:focus {
  color: #000;
}

.p-service--type01 .p-service__nav a:link, .p-service--type01 .p-service__nav a:visited {
  text-decoration: none;
}

.p-service--type01 .p-service__nav a:hover, .p-service--type01 .p-service__nav a:active {
  text-decoration: underline;
}

.p-service--type01 .p-service__nav span {
  display: block;
  width: 33.3%;
}

.p-service--type01 .p-service__nav .p-service__nav--back {
  text-align: center;
}

.p-service--type01 .p-service__nav .p-service__nav--next {
  text-align: right;
}

/*----------------------------------------------------
    .p-service__index
----------------------------------------------------*/
.p-service__index--type01 .p-service__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 400px;
  background-color: #efefef;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__container {
    min-height: 0;
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.p-service__index--type01 .p-service__container + .p-service__container {
  margin-top: 50px;
}

.p-service__index--type01 .p-service__container.p-service__container--type01 {
  background-image: url(../img/pic_service01.jpg);
  background-position: 100% 50%;
}

@media screen and (max-width: 768px) {
  .p-service__index--type01 .p-service__container.p-service__container--type01 {
    background-position: -120% 50%;
  }
}

.p-service__index--type01 .p-service__container.p-service__container--type02 {
  background-image: url(../img/pic_service02.jpg);
  background-position: 0 50%;
}

@media screen and (max-width: 768px) {
  .p-service__index--type01 .p-service__container.p-service__container--type02 {
    background-position: 260% 50%;
  }
}

.p-service__index--type01 .p-service__container.p-service__container--type03 {
  background-image: url(../img/pic_service03.jpg);
  background-position: 100% 50%;
}

@media screen and (max-width: 768px) {
  .p-service__index--type01 .p-service__container.p-service__container--type03 {
    background-position: -150% 50%;
  }
}

.p-service__index--type01 .p-service__container.p-service__container--type04 {
  background-image: url(../img/pic_service04.jpg);
  background-position: 0 50%;
}

@media screen and (max-width: 768px) {
  .p-service__index--type01 .p-service__container.p-service__container--type04 {
    background-position: 270% 50%;
  }
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__container.p-service__container--type01, .p-service__index--type01 .p-service__container.p-service__container--type02, .p-service__index--type01 .p-service__container.p-service__container--type03, .p-service__index--type01 .p-service__container.p-service__container--type04 {
    background: #efefef;
  }
}

.p-service__index--type01 .p-service__item {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__item {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .p-service__index--type01 .p-service__item {
    width: calc(100% - 20px);
  }
}

.p-service__index--type01 .p-service__wrap {
  width: 420px;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__wrap {
    width: 100%;
  }
}

.p-service__index--type01 .p-service__container--type01 .p-service__wrap {
  margin-left: 0;
  margin-right: auto;
}

.p-service__index--type01 .p-service__container--type02 .p-service__wrap {
  margin-left: auto;
  margin-right: 0;
}

.p-service__index--type01 .p-service__container--type03 .p-service__wrap {
  margin-left: 0;
  margin-right: auto;
}

.p-service__index--type01 .p-service__container--type04 .p-service__wrap {
  margin-left: auto;
  margin-right: 0;
}

.p-service__index--type01 .p-service__head {
  margin-bottom: 30px;
  line-height: 1.25;
  text-align: center;
  font-weight: normal;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 40px;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__head {
    font-size: 24px;
  }
}

.p-service__index--type01 .p-service__head--sub01 {
  display: block;
  text-align: center;
  font-size: 18px;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__head--sub01 {
    font-size: 14px;
  }
}

.p-service__index--type01 .p-service__head--sub02 {
  font-size: 24px;
}

.p-service__index--type01 .p-service__link {
  padding-top: 30px;
  width: 320px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__link {
    width: calc(100% - 40px);
    margin-right: auto;
    margin-left: auto;
  }
}

.p-service__index--type01 .p-service__link .c-link--type01, .p-service__index--type01 .p-service__link .c-link--type03 a, .c-link--type03 .p-service__index--type01 .p-service__link a {
  width: 100%;
}

.p-service__index--type01 .p-service__linkList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*width: 100%; 公開講座がある場合*/
  width: 290px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 30px;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__linkList {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.p-service__index--type01 .p-service__linkList li {
  width: 118px;
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__linkList li {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 666px) {
  .p-service__index--type01 .p-service__linkList li:last-child, .p-service__index--type01 .p-service__linkList li:nth-last-child(2):nth-child(odd) {
    margin-bottom: 0;
  }
}

.p-service__index--type01 .p-service__linkList a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  display: block;
  line-height: 1.25;
  font-size: 13px;
}

.p-service__index--type01 .p-service__linkList a:hover, .p-service__index--type01 .p-service__linkList a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.p-service__index--type01 .p-service__linkList a:link, .p-service__index--type01 .p-service__linkList a:visited, .p-service__index--type01 .p-service__linkList a:hover, .p-service__index--type01 .p-service__linkList a:active, .p-service__index--type01 .p-service__linkList a:focus {
  text-decoration: none;
}

.p-service__index--type01 .p-service__linkList .p-service__pictureWrap {
  display: block;
  position: relative;
  left: 50%;
  width: 88px;
  height: 88px;
  margin-bottom: 10px;
  border-radius: 50%;
  background-color: #0062a3;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.p-service__index--type01 .p-service__linkList .p-service__pictureWrap img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/*----------------------------------------------------
    .p-academy__wrap
----------------------------------------------------*/
.p-academy__wrap--type01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 73px;
  padding-bottom: 73px;
}

.p-academy__wrap--type02 {
  padding-top: 80px;
  padding-bottom: 80px;
}

/*----------------------------------------------------
    .p-academy__bg
----------------------------------------------------*/
.p-academy__bg--type01 {
  background: url(/img/pic_trainer01.jpg) repeat 50% 0%;
  position: relative;
}

.p-academy__bg--type01:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.3);
}

@media screen and (max-width: 666px) {
  .p-academy__bg--type01 {
    background-image: url(/img/pic_trainer18.jpg);
    background-repeat: repeat;
    background-size: auto 75%;
  }
}

.p-academy__bg--type02 {
  background: #efefef url(/img/pic_academy05.jpg) no-repeat 50% 50%;
  background-size: auto 100%;
}

/*----------------------------------------------------
    .p-academy-program__index
----------------------------------------------------*/
.p-academy-program__index {
  margin-bottom: 80px;
}

.p-academy-program__index .p-academy-program__head {
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .p-academy-program__index .p-academy-program__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.p-academy-program__index .p-academy-program__head .c-head--type07 {
  text-align: center;
}

.p-academy-program__index .p-academy-program__lead {
  width: 100%;
  margin-bottom: 60px;
  text-align: center;
}

.p-academy-program__index .p-academy-program__select {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 30px;
}

.p-academy-program__index .p-academy-program__link {
  margin-top: 10px;
}

.p-academy-program__index .p-academy-program__link a:link, .p-academy-program__index .p-academy-program__link a:visited, .p-academy-program__index .p-academy-program__link a:hover, .p-academy-program__index .p-academy-program__link a:active, .p-academy-program__index .p-academy-program__link a:focus {
  color: #000;
}

.p-academy-program__index .p-academy-program__link a:link, .p-academy-program__index .p-academy-program__link a:visited {
  text-decoration: underline;
}

.p-academy-program__index .p-academy-program__link a:hover, .p-academy-program__index .p-academy-program__link a:active, .p-academy-program__index .p-academy-program__link a:focus {
  text-decoration: none;
}

.p-academy-program__index .p-academy-program__tab {
  line-height: 2.3;
  font-size: 12px;
}

.p-academy-program__index .p-academy-program__category {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-left: -5px;
}

.p-academy-program__index .p-academy-program__category .p-academy-program__category-item {
  width: 120px;
  margin-top: 10px;
  margin-right: 5px;
  margin-left: 5px;
}

@media screen and (max-width: 768px) {
  .p-academy-program__index .p-academy-program__category .p-academy-program__category-item {
    width: calc(100% / 4 - 10px);
  }
}

@media screen and (max-width: 666px) {
  .p-academy-program__index .p-academy-program__category .p-academy-program__category-item {
    width: calc(100% / 3 - 10px);
  }
}

@media screen and (max-width: 480px) {
  .p-academy-program__index .p-academy-program__category .p-academy-program__category-item {
    width: calc(100% / 2 - 10px);
  }
}

.p-academy-program__index .p-academy-program__category .c-label {
  width: 100%;
  padding: 0 10px;
  border: 0;
  border-radius: 0;
  text-align: center;
  color: #fff;
}

.p-academy-program__index .p-academy-program__category .c-label:first-child {
  margin-left: 0;
}

.p-academy-program__index .p-academy-program__category .c-label:last-child {
  margin-right: 0;
}

.p-academy-program__index .p-academy-program__number {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 18px;
}

.p-academy-program__index .p-academy-program__body a:link, .p-academy-program__index .p-academy-program__body a:visited, .p-academy-program__index .p-academy-program__body a:hover, .p-academy-program__index .p-academy-program__body a:active, .p-academy-program__index .p-academy-program__body a:focus {
  color: #000;
}

.p-academy-program__index .p-academy-program__body a:link, .p-academy-program__index .p-academy-program__body a:visited {
  text-decoration: none;
}

.p-academy-program__index .p-academy-program__body a:hover, .p-academy-program__index .p-academy-program__body a:active {
  text-decoration: underline;
}

.p-academy-program__index .p-academy-program__body .c-table--type05 .is-hidden {
  display: none;
}

.p-academy-program__index .p-academy-program__body .c-table--type05 .c-link--type01, .p-academy-program__index .p-academy-program__body .c-table--type05 .c-link--type03 a, .c-link--type03 .p-academy-program__index .p-academy-program__body .c-table--type05 a {
  display: none;
}

@media screen and (max-width: 666px) {
  .p-academy-program__index .p-academy-program__body .c-table--type05 .c-link--type01, .p-academy-program__index .p-academy-program__body .c-table--type05 .c-link--type03 a, .c-link--type03 .p-academy-program__index .p-academy-program__body .c-table--type05 a {
    display: block;
  }
}

/*----------------------------------------------------
    .p-academy-program__detail
----------------------------------------------------*/
.p-academy-program__detail .p-academy-program__head {
  position: relative;
  padding-top: 50px;
  margin-bottom: 60px;
}

.p-academy-program__detail .p-academy-program__head .c-head--type07 {
  padding-top: 25px;
  padding-bottom: 25px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  text-align: center;
}

.p-academy-program__detail .p-academy-program__category {
  position: absolute;
  top: 0;
  left: 0;
  padding-right: 10px;
  padding-left: 10px;
  line-height: 2.3;
  font-size: 13px;
  color: #fff;
}

.p-academy-program__detail .p-academy-program__number {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 18px;
}

.p-academy-program__detail .p-academy-program__body a:link, .p-academy-program__detail .p-academy-program__body a:visited, .p-academy-program__detail .p-academy-program__body a:hover, .p-academy-program__detail .p-academy-program__body a:active, .p-academy-program__detail .p-academy-program__body a:focus {
  color: #000;
}

.p-academy-program__detail .p-academy-program__body a:link, .p-academy-program__detail .p-academy-program__body a:visited {
  text-decoration: none;
}

.p-academy-program__detail .p-academy-program__body a:hover, .p-academy-program__detail .p-academy-program__body a:active {
  text-decoration: underline;
}

.p-academy-program__detail .p-academy-program__footer .c-section {
  margin-top: 60px;
  padding-top: 30px;
  padding-bottom: 30px;
  border-top: 1px solid #231815;
  text-align: center;
}

.p-academy-program__detail .p-academy-program__footer .c-section a:link, .p-academy-program__detail .p-academy-program__footer .c-section a:visited, .p-academy-program__detail .p-academy-program__footer .c-section a:hover, .p-academy-program__detail .p-academy-program__footer .c-section a:active, .p-academy-program__detail .p-academy-program__footer .c-section a:focus {
  color: #000;
}

.p-academy-program__detail .p-academy-program__footer .c-section a:link, .p-academy-program__detail .p-academy-program__footer .c-section a:visited {
  text-decoration: none;
}

.p-academy-program__detail .p-academy-program__footer .c-section a:hover, .p-academy-program__detail .p-academy-program__footer .c-section a:active {
  text-decoration: underline;
}

/*----------------------------------------------------
    .p-academy__lecture
----------------------------------------------------*/
.p-academy__lecture--type01 {
  position: relative;
  z-index: 2;
  width: 951px;
  margin-right: auto;
  margin-left: auto;
  padding: 50px;
  background-color: rgba(255, 255, 255, 0.85);
}

@media screen and (max-width: 666px) {
  .p-academy__lecture--type01 {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
    padding-right: 25px;
    padding-left: 25px;
  }
}

.p-academy__lecture--type01 .c-head--type08 {
  margin-bottom: 40px;
}

.p-academy__lecture--type02 {
  padding-top: 80px;
  padding-bottom: 80px;
}

.p-academy__lecture--type02 .p-academy__wrap {
  width: 480px;
}

.p-academy__lecture--type02 .p-academy__name {
  margin-bottom: 25px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 25px;
}

.p-academy__lecture--type02 .p-academy__text {
  line-height: 2.1;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  font-size: 18px;
}

.p-academy__lecture--type03 .c-section:first-child {
  padding-top: 80px;
  border-top: 1px solid #000;
}

.p-academy__lecture--type03 .c-section + .c-section {
  margin-top: 40px;
}

/*----------------------------------------------------
    .p-plan
----------------------------------------------------*/
.p-plan .notes {
  padding-top: 10px;
}

.p-plan .p-plan__wrap {
  margin-bottom: 10px;
  width: 100%;
  padding-left: 20px;
}

.p-plan .p-plan__wrap--type01 {
  border-bottom: 1px solid #898989;
}

.p-plan .p-plan__wrap:last-child {
  margin-bottom: 0;
}

.p-plan .p-plan__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.p-plan .p-plan__container--type01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.p-plan .p-plan__container--type01 .p-plan__type, .p-plan .p-plan__container--type01 .p-plan__term {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #898989;
}

.p-plan .p-plan__container--type01 .p-plan__type {
  width: 260px;
}

.p-plan .p-plan__container--type01 .p-plan__term {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-flex: 2;
  -webkit-flex-grow: 2;
  -ms-flex-positive: 2;
  flex-grow: 2;
  width: calc(100% - 260px);
  padding-left: 10px;
}

.p-plan .p-plan__container--type01:last-child .p-plan__type, .p-plan .p-plan__container--type01:last-child .p-plan__term {
  border-bottom: 0;
}

.p-plan .p-plan__container--type02 .p-plan__item + .p-plan__item {
  margin-left: 10px;
}

/*====================================================

  recruit:採用情報

====================================================*/
/*----------------------------------------------------
    .p-recruit
----------------------------------------------------*/
.p-recruit--type01 .p-recruit__head {
  position: relative;
  padding-top: 2em;
  padding-bottom: 30px;
  border-bottom: 1px solid #231815;
}

.p-recruit--type01 .p-recruit__head .p-recruit__date {
  position: absolute;
  top: 0;
}

.p-recruit--type01 .p-recruit__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
  padding-top: 30px;
  border-top: 1px solid #231815;
  line-height: 1.25;
}

.p-recruit--type01 .p-recruit__nav a:link, .p-recruit--type01 .p-recruit__nav a:visited, .p-recruit--type01 .p-recruit__nav a:hover, .p-recruit--type01 .p-recruit__nav a:active, .p-recruit--type01 .p-recruit__nav a:focus {
  color: #000;
}

.p-recruit--type01 .p-recruit__nav a:link, .p-recruit--type01 .p-recruit__nav a:visited {
  text-decoration: none;
}

.p-recruit--type01 .p-recruit__nav a:hover, .p-recruit--type01 .p-recruit__nav a:active {
  text-decoration: underline;
}

.p-recruit--type01 .p-recruit__nav span {
  display: block;
  width: 33.3%;
}

.p-recruit--type01 .p-recruit__nav .p-recruit__nav--back {
  text-align: center;
}

.p-recruit--type01 .p-recruit__nav .p-recruit__nav--next {
  text-align: right;
}

/*====================================================

  faq:よくある質問

====================================================*/
/*----------------------------------------------------
    .p-faq
----------------------------------------------------*/
.p-faq--type01 {
  padding-bottom: 30px;
}

.c-section:last-child .p-faq--type01 {
  padding-bottom: 0;
}

.p-faq--type01 .p-faq__item {
  overflow: hidden;
  position: relative;
  padding: 30px 18px;
  border-bottom: 1px solid #231815;
  -webkit-transition: height 0.4s ease;
  transition: height 0.4s ease;
}

.p-faq--type01 .p-faq__item:first-child {
  border-top: 1px solid #231815;
}

.p-faq--type01 .p-faq__item.is-active .p-faq__button {
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg);
}

.p-faq--type01 .p-faq__head {
  position: relative;
  padding-left: 25px;
  font-weight: normal;
}

.p-faq--type01 .p-faq__body {
  position: relative;
  padding-top: 30px;
  padding-left: 25px;
  line-height: 2;
}

.p-faq--type01 .p-faq__icon--question, .p-faq--type01 .p-faq__icon--answer {
  display: inline-block;
  position: absolute;
  left: -18px;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.3;
  text-align: center;
}

.p-faq--type01 .p-faq__icon--question {
  top: -8px;
  font-size: 22px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

.p-faq--type01 .p-faq__icon--answer {
  top: 25px;
  font-size: 22px;
  font-family: "A1明朝", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}

/*====================================================

  privacy:プライバシーポリシー

====================================================*/
/*----------------------------------------------------
    .p-privacy
----------------------------------------------------*/
.p-privacy--type01 .c-head--type05 {
  margin-bottom: 20px;
}

.p-privacy--type01 .c-section {
  margin-bottom: 60px;
}

.p-privacy--type01 .c-section + .c-section {
  margin-top: 60px;
}

/*====================================================

  topics:トピックス

====================================================*/
/*----------------------------------------------------
    .p-topics
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.p-topics--type01 .c-section:first-child {
  margin-bottom: 30px;
}

.p-topics--type01 .c-section:first-child + .c-section {
  margin-top: 30px;
}

.p-topics--type01 .p-topics__head {
  position: relative;
  padding-top: 2em;
  padding-bottom: 30px;
  border-bottom: 1px solid #231815;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__head {
    padding-top: 3em;
    padding-bottom: 10px;
  }
}

.p-topics--type01 .p-topics__head .p-topics__date {
  position: absolute;
  top: 0;
}

.p-topics--type01 .p-topics__head .p-topics__category {
  position: absolute;
  top: 2em;
  right: 0;
  width: 150px;
  background-color: #efefef;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__head .p-topics__category {
    top: 0;
  }
}

.p-topics--type01 .p-topics__head .c-head--type07 {
  width: calc(100% - 180px);
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__head .c-head--type07 {
    width: 100%;
    padding-bottom: 10px;
  }
}

.p-topics--type01 .p-topics__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
  padding-top: 30px;
  border-top: 1px solid #231815;
  line-height: 1.25;
}

.p-topics--type01 .p-topics__nav > span {
  display: block;
  width: 33.3%;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__nav > span {
    width: calc(50% - 15px);
  }
}

.p-topics--type01 .p-topics__nav > span a, .p-topics--type01 .p-topics__nav > span span {
  display: inline-block;
  padding: 16px;
  background-color: #efefef;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__nav > span a, .p-topics--type01 .p-topics__nav > span span {
    display: block;
  }
}

.p-topics--type01 .p-topics__nav > span span {
  background-color: #f8f8f8;
  color: #999;
}

.p-topics--type01 .p-topics__nav > span a {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.p-topics--type01 .p-topics__nav > span a:link, .p-topics--type01 .p-topics__nav > span a:visited, .p-topics--type01 .p-topics__nav > span a:hover, .p-topics--type01 .p-topics__nav > span a:active, .p-topics--type01 .p-topics__nav > span a:focus {
  color: #000;
}

.p-topics--type01 .p-topics__nav > span a:link, .p-topics--type01 .p-topics__nav > span a:visited, .p-topics--type01 .p-topics__nav > span a:hover, .p-topics--type01 .p-topics__nav > span a:active, .p-topics--type01 .p-topics__nav > span a:focus {
  text-decoration: none;
}

.p-topics--type01 .p-topics__nav > span a:hover, .p-topics--type01 .p-topics__nav > span a:focus {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.p-topics--type01 .p-topics__nav .p-topics__nav--prev {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__nav .p-topics__nav--prev {
    text-align: center;
  }
}

.p-topics--type01 .p-topics__nav .p-topics__nav--back {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  text-align: center;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__nav .p-topics__nav--back {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    width: 100%;
    margin-top: 20px;
  }
}

.p-topics--type01 .p-topics__nav .p-topics__nav--next {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
  text-align: right;
}

@media screen and (max-width: 666px) {
  .p-topics--type01 .p-topics__nav .p-topics__nav--next {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    text-align: center;
  }
}

.p-topics--type01 .p-topics__lead {
  line-height: 2.1;
  font-size: 18px;
}

.p-topics--type01 .c-section {
  margin-bottom: 60px;
}

/*  type02
----------------------------------------------------*/
.p-topics--type02 {
  margin-top: 130px;
  margin-bottom: 130px;
}

@media screen and (max-width: 768px) {
  .p-topics--type02 {
    margin-top: 60px;
    margin-bottom: 80px;
  }
}

.p-topics--type02 .p-topics__wrap {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 30px;
  padding-bottom: 30px;
  border-top: 1px solid #3e3a39;
  border-bottom: 1px solid #3e3a39;
}

@media screen and (max-width: 666px) {
  .p-topics--type02 .p-topics__wrap {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .p-topics--type02 .p-topics__wrap {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.p-topics--type02 .p-topics__head {
  width: 220px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-topics--type02 .p-topics__head {
    width: 100%;
    padding-bottom: 10px;
  }
}

.p-topics--type02 .p-topics__body {
  width: calc(100% - 220px);
  padding-left: 40px;
  border-left: 1px solid #3e3a39;
  height: 300px;
  overflow-y: scroll;
}

@media screen and (max-width: 768px) {
  .p-topics--type02 .p-topics__body {
    width: 100%;
    padding-top: 20px;
    padding-left: 10px;
    border-top: 1px solid #3e3a39;
    border-left: 0;
  }
}

@media screen and (max-width: 768px) {
  .p-topics--type02 .p-topics__table tr:last-child .p-topics__title {
    padding-bottom: 0;
  }
}

.p-topics--type02 .p-topics__table th, .p-topics--type02 .p-topics__table td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: top;
}

@media screen and (max-width: 666px) {
  .p-topics--type02 .p-topics__table th, .p-topics--type02 .p-topics__table td {
    display: inline-block;
    padding-top: 0;
  }
}

.p-topics--type02 .p-topics__table th {
  padding-right: 24px;
  font-weight: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
}

.p-topics--type02 .p-topics__table th + td {
  padding-top: 14px;
}

@media screen and (max-width: 666px) {
  .p-topics--type02 .p-topics__table th + td {
    padding-top: 0;
  }
}

.p-topics--type02 .p-topics__table .p-topics__category {
  padding: 3px 10px;
  background-color: #efefef;
  line-height: 1.25;
  text-align: center;
  font-size: 14px;
  white-space: nowrap;
}

.p-topics--type02 .p-topics__table .p-topics__title {
  padding-right: 30px;
  padding-left: 24px;
}

@media screen and (max-width: 768px) {
  .p-topics--type02 .p-topics__table .p-topics__title {
    padding-right: 10px;
  }
}

@media screen and (max-width: 666px) {
  .p-topics--type02 .p-topics__table .p-topics__title {
    display: block;
    width: 100%;
    padding-bottom: 20px;
    padding-left: 0;
  }
}

.p-topics--type02 .p-topics__table .p-topics__title a:link, .p-topics--type02 .p-topics__table .p-topics__title a:visited {
  text-decoration: none;
}

.p-topics--type02 .p-topics__table .p-topics__title a:hover, .p-topics--type02 .p-topics__table .p-topics__title a:active {
  text-decoration: underline;
}

.p-topics--type02 .p-topics__table .p-topics__title a:link, .p-topics--type02 .p-topics__table .p-topics__title a:visited, .p-topics--type02 .p-topics__table .p-topics__title a:hover, .p-topics--type02 .p-topics__table .p-topics__title a:active, .p-topics--type02 .p-topics__table .p-topics__title a:focus {
  color: #000;
}

/*----------------------------------------------------
    .p-topics__categorylist
----------------------------------------------------*/
.p-topics__categorylist .p-topics__category {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 666px) {
  .p-topics__categorylist .p-topics__category {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.p-topics__categorylist .p-topics__category-item {
  margin-right: 10px;
  margin-bottom: 30px;
  margin-left: 10px;
  width: 150px;
  text-align: center;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothicB, "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 666px) {
  .p-topics__categorylist .p-topics__category-item {
    width: calc(50% - 5px);
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 15px;
    text-align: center;
  }
}

.p-topics__categorylist .p-topics__category-item button, .p-topics__categorylist .p-topics__category-item a {
  display: block;
  width: 100%;
  padding: 6px 3px;
  border: 3px solid #fff;
  background-color: transparent;
  text-decoration: none;
  color: inherit;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
}

@media screen and (max-width: 666px) {
  .p-topics__categorylist .p-topics__category-item button, .p-topics__categorylist .p-topics__category-item a {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
}

.p-topics__categorylist .p-topics__category-item button.is-active, .p-topics__categorylist .p-topics__category-item a.is-active {
  color: #9e9c9c;
}

.p-topics__categorylist .p-topics__category-item button:hover, .p-topics__categorylist .p-topics__category-item a:hover {
  background-color: #efefef;
}

.p-topics__categorylist .p-topics__message--type01 {
  display: none;
  width: 100%;
  padding-top: 80px;
  text-align: center;
}

.p-topics__categorylist .p-topics__message--type01.is-active {
  display: block;
}

/*====================================================

  ows:トップページ

====================================================*/
.page-ows-index .c-pageTop {
  background-color: #fff;
}

.page-ows-index .footer__copyright {
  border-top: 0;
  color: #fff;
}

.page-ows-index .c-pageTop {
  margin-top: 0;
}

.page-ows-index:before {
  content: "";
  display: block;
  position: fixed;
  z-index: -1;
  height: 100vh;
  width: 100%;
  background: url(/img/bg_ows01.jpg) no-repeat 50% 100%;
  background-size: cover;
}

/*----------------------------------------------------
    .p-ows__home
----------------------------------------------------*/
/*  type01
----------------------------------------------------*/
.p-ows__home--type01 {
  padding-bottom: 110px;
}

@media screen and (max-width: 1080px) {
  .p-ows__home--type01 {
    width: 1060px;
  }
}

@media screen and (max-width: 768px) {
  .p-ows__home--type01 {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .p-ows__home--type01 {
    padding-bottom: 80px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type01 {
    padding-bottom: 60px;
  }
}

.p-ows__home--type01 .p-ows__head {
  padding-bottom: 46px;
  line-height: 1.5;
  text-align: center;
  font-family: GenShin-B, sans-serif;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type01 .p-ows__head {
    font-size: 20px;
  }
}

.p-ows__home--type01 .p-ows__body {
  text-align: center;
  line-height: 2.1;
  color: #fff;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type01 .p-ows__body {
    text-align: justify;
  }
}

.p-ows__home--type01 .p-ows__body p + p {
  margin-top: 2.1em;
}

/*  type02
----------------------------------------------------*/
.p-ows__home--type02 {
  width: 1240px;
  margin: 0 auto;
  padding: 0 60px 60px;
  text-align: center;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type02 {
    width: calc(100% - 20px);
    padding: 0;
  }
}

.p-ows__home--type02 .c-section {
  width: 100%;
}

.p-ows__home--type02 .p-ows__head {
  margin-bottom: 60px;
  letter-spacing: 0.05em;
  line-height: 1;
  font-family: GenShin-B, sans-serif;
  font-size: 40px;
  font-weight: bold;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type02 .p-ows__head {
    margin-bottom: 40px;
    font-size: 20px;
  }
}

.p-ows__home--type02 .p-ows__body {
  line-height: 2.1;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type02 .p-ows__body {
    text-align: justify;
  }
}

/*  type03
----------------------------------------------------*/
.p-ows__home--type03 {
  width: 1240px;
  margin: 0 auto 80px;
  padding: 20px;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 {
    width: calc(100% - 20px);
    padding: 20px 0;
    margin-bottom: 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item {
  position: relative;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap {
  display: block;
  position: relative;
  width: 100%;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:link, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:visited, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:hover, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:active, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:focus {
  color: #000;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:link, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:visited, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:hover, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:active, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:focus {
  text-decoration: none;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap {
    padding-top: 150px;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:after {
    background-position: 50% 0;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__wrap:after {
    width: 100%;
    height: 150px;
    background-position: 0 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item a.p-ows__wrap:hover .p-ows__inner, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item a.p-ows__wrap:hover:after, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item a.p-ows__wrap:focus .p-ows__inner, .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item a.p-ows__wrap:focus:after {
  opacity: 0.8;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type01 .p-ows__wrap:after {
  background-image: url(/img/pic_ows01.jpg);
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type02 .p-ows__wrap:after {
  background-image: url(/img/pic_ows02.jpg);
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type03 .p-ows__wrap:after {
  background-image: url(/img/pic_ows03.jpg);
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type03 .p-ows__wrap:after {
    background-position: 30% 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type04 .p-ows__wrap:after {
  background-image: url(/img/pic_ows04.jpg);
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type04 .p-ows__wrap:after {
    background-position: 10% 0;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type04 .p-ows__wrap:after {
    background-position: 50% 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type05 .p-ows__wrap:after {
  background-image: url(/img/pic_ows05.jpg);
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type05 .p-ows__wrap:after {
    background-position: 30% 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--type06 .p-ows__wrap:after {
  background-image: url(/img/pic_ows06.jpg);
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item + .p-ows__item {
  margin-top: 30px;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 50%;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__inner {
    padding: 10px 18px 40px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__inner {
    width: 100%;
    padding: 10px;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type01 {
  margin-bottom: 32px;
  line-height: 1.7;
  font-size: 21px;
  font-weight: bold;
  font-family: GenShin-B, sans-serif;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type01 {
    text-align: left;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type01 {
    margin-bottom: 16px;
    text-align: left;
    font-size: 16px;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type02 {
  margin-bottom: 18px;
  line-height: 1.5;
  font-weight: bold;
  font-family: GenShin-B, sans-serif;
}

@media screen and (max-width: 768px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type02 {
    font-size: 15px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type02 {
    font-weight: normal;
    font-family: GenShin, sans-serif;
    font-size: 12px;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type02 span {
  padding-left: 1em;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type03 {
  font-family: GenShin, sans-serif;
  font-weight: normal;
  font-size: 22px;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type03 {
    margin-bottom: 16px;
    font-size: 20px;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type04 {
  position: absolute;
  bottom: 10px;
  font-weight: normal;
  font-family: GenShin, sans-serif;
  font-size: 12px;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item .p-ows__text--type04 {
    top: -30px;
    left: 10px;
    right: auto;
    z-index: 10;
    text-shadow: 0px 0px 3px #ffffff;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(odd) .p-ows__wrap:after {
  left: 0;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(odd) .p-ows__inner {
  margin-left: 50%;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(odd) .p-ows__inner {
    margin-left: 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(odd) .p-ows__text--type04 {
  right: 10px;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(odd) .p-ows__text--type04 {
    right: auto;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(even) .p-ows__wrap:after {
  right: 0;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(even) .p-ows__inner {
  margin-right: 50%;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(even) .p-ows__inner {
    margin-right: 0;
  }
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item:nth-child(even) .p-ows__text--type04 {
  left: 10px;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--comingsoon {
  position: relative;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--comingsoon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 6;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 126px;
  height: 126px;
  background: url(/img/txt_comming-soon01.svg) no-repeat 0 0;
}

.p-ows__home--type03 .p-ows__col2--type01 .p-ows__item--comingsoon:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6);
}

/*  type04
----------------------------------------------------*/
.p-ows__home--type04 {
  padding-top: 110px;
  padding-bottom: 90px;
  text-align: center;
}

.p-ows__home--type04 .p-ows__text {
  line-height: 2;
  font-family: GenShin, sans-serif;
  font-size: 25px;
  font-weight: normal;
  color: #231815;
}

.p-ows__home--type04 .p-ows__text p + p {
  margin-top: 48px;
}

.p-ows__home--type04 .p-ows__link {
  margin-top: 60px;
  text-align: center;
}

.p-ows__home--type04 .p-ows__link .c-link--type01, .p-ows__home--type04 .p-ows__link .c-link--type03 a, .c-link--type03 .p-ows__home--type04 .p-ows__link a {
  width: 320px;
}

@media screen and (max-width: 666px) {
  .p-ows__home--type04 .p-ows__link .c-link--type01, .p-ows__home--type04 .p-ows__link .c-link--type03 a, .c-link--type03 .p-ows__home--type04 .p-ows__link a {
    width: 100%;
  }
}

/*----------------------------------------------------
    .p-ows__info
----------------------------------------------------*/
.p-ows__info {
  position: relative;
  height: 700px;
  margin-bottom: 80px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .p-ows__info {
    height: 400px;
    margin-bottom: 40px;
  }
}

.p-ows__info .p-ows__wrap {
  width: 1020px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  height: 100%;
}

@media screen and (max-width: 666px) {
  .p-ows__info .p-ows__wrap {
    width: calc(100% - 20px);
    margin-right: auto;
    margin-left: auto;
  }
}

.p-ows__info .p-ows__status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  position: absolute;
  bottom: 40px;
  right: 40px;
  width: 400px;
  padding-top: 30px;
  padding-bottom: 40px;
  background-color: rgba(255, 255, 255, 0.76);
  text-align: center;
  font-family: GenShin, sans-serif;
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .p-ows__info .p-ows__status {
    right: auto;
    left: 40px;
    width: 350px;
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info .p-ows__status {
    width: calc(100% - 40px);
    bottom: 20px;
    right: 20px;
    left: auto;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.p-ows__info .p-ows__status .p-ows__name {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  margin-bottom: 20px;
  line-height: 1.4;
  font-size: 35px;
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .p-ows__info .p-ows__status .p-ows__name {
    margin-bottom: 10px;
    font-size: 20px;
  }
}

.p-ows__info .p-ows__status .p-ows__ruby {
  display: block;
  font-size: 20px;
}

@media screen and (max-width: 768px) {
  .p-ows__info .p-ows__status .p-ows__ruby {
    font-size: 13px;
  }
}

.p-ows__info .p-ows__status .p-ows__date {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  margin-bottom: 20px;
  font-size: 15px;
  line-height: 1.25;
}

@media screen and (max-width: 768px) {
  .p-ows__info .p-ows__status .p-ows__date {
    font-size: 13px;
  }
}

.p-ows__info .p-ows__status .p-ows__position {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
}

.p-ows__info--type01 {
  background-image: url(/img/pic_ows_01-01.jpg);
}

@media screen and (max-width: 768px) {
  .p-ows__info--type01 {
    background-position: 0% 50%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info--type01 {
    background-position: 60% 50%;
  }
}

.p-ows__info--type02 {
  background-image: url(/img/pic_ows_02-01.jpg);
}

@media screen and (max-width: 768px) {
  .p-ows__info--type02 {
    background-position: 0% 50%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info--type02 {
    background-position: 60% 50%;
  }
}

.p-ows__info--type03 {
  background-image: url(/img/pic_ows_03-01.jpg);
}

@media screen and (max-width: 666px) {
  .p-ows__info--type03 {
    background-position: 60% 50%;
  }
}

.p-ows__info--type04 {
  background-image: url(/img/pic_ows_04-01.jpg);
}

@media screen and (max-width: 666px) {
  .p-ows__info--type04 {
    background-position: 60% 50%;
  }
}

.p-ows__info--type05 {
  background-image: url(/img/pic_ows_05-01.jpg);
}

@media screen and (max-width: 768px) {
  .p-ows__info--type05 {
    background-position: 30% 50%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info--type05 {
    background-position: 60% 50%;
  }
}

.p-ows__info--type06 {
  background-image: url(/img/pic_ows_06-01.jpg);
}

@media screen and (max-width: 768px) {
  .p-ows__info--type06 {
    background-position: 100% 50%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info--type06 {
    background-position: 50% 50%;
  }
}

@media screen and (max-width: 768px) {
  .p-ows__info--type06 .p-ows__status {
    width: 370px;
    right: 40px;
    left: auto;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__info--type06 .p-ows__status {
    width: calc(100% - 40px);
    bottom: 20px;
    right: 20px;
    left: auto;
  }
}

/*----------------------------------------------------
    .p-ows__copy
----------------------------------------------------*/
.p-ows__copy {
  margin-top: 80px;
  margin-bottom: 110px;
  text-align: center;
  font-family: GenShin-B, sans-serif;
  font-size: 40px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .p-ows__copy {
    width: calc(100% - 20px);
    margin: 30px auto 60px;
    text-align: justify;
    font-size: 36px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__copy {
    font-size: 22px;
  }
}

/*----------------------------------------------------
    .p-ows__copy
----------------------------------------------------*/
.p-ows__section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

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

@media screen and (max-width: 666px) {
  .p-ows__section {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-ows__section .p-ows__section__item {
  line-height: 2.1;
}

.p-ows__section img {
  width: 100%;
  height: auto;
}

/*  .p-ows__section--type01
----------------------------------------------------*/
.p-ows__section--type01 .p-ows__section__item, .p-ows__section--type03 .p-ows__section__item {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  width: calc(100% - 400px - 50px);
}

@media screen and (max-width: 768px) {
  .p-ows__section--type01 .p-ows__section__item, .p-ows__section--type03 .p-ows__section__item {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__section--type01 .p-ows__section__item, .p-ows__section--type03 .p-ows__section__item {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
}

.p-ows__section--type01 .p-ows__section__item p + p, .p-ows__section--type03 .p-ows__section__item p + p {
  margin-top: 1em;
}

.p-ows__section--type01 .p-ows__section__picture, .p-ows__section--type03 .p-ows__section__picture {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: 400px;
}

@media screen and (max-width: 768px) {
  .p-ows__section--type01 .p-ows__section__picture, .p-ows__section--type03 .p-ows__section__picture {
    float: left;
    width: 280px;
    margin-right: 30px;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__section--type01 .p-ows__section__picture, .p-ows__section--type03 .p-ows__section__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
  }
  .p-ows__section--type01 .p-ows__section__picture img, .p-ows__section--type03 .p-ows__section__picture img {
    width: 250px;
    height: auto;
  }
}

/*  .p-ows__section--type02
----------------------------------------------------*/
@media screen and (max-width: 768px) {
  .p-ows__section--type02, .p-ows__section--type04 {
    display: block;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__section--type02, .p-ows__section--type04 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-ows__section--type02 .p-ows__section__item, .p-ows__section--type04 .p-ows__section__item {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  width: calc(100% - 400px - 50px);
  line-height: 2.1;
}

@media screen and (max-width: 768px) {
  .p-ows__section--type02 .p-ows__section__item, .p-ows__section--type04 .p-ows__section__item {
    width: 100%;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__section--type02 .p-ows__section__item, .p-ows__section--type04 .p-ows__section__item {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
}

.p-ows__section--type02 .p-ows__section__item p + p, .p-ows__section--type04 .p-ows__section__item p + p {
  margin-top: 1em;
}

.p-ows__section--type02 .p-ows__section__picture, .p-ows__section--type04 .p-ows__section__picture {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
  width: 400px;
}

@media screen and (max-width: 768px) {
  .p-ows__section--type02 .p-ows__section__picture, .p-ows__section--type04 .p-ows__section__picture {
    float: right;
    width: 280px;
    margin-left: 30px;
    margin-bottom: 20px;
  }
  .p-ows__section--type02 .p-ows__section__picture img, .p-ows__section--type04 .p-ows__section__picture img {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 666px) {
  .p-ows__section--type02 .p-ows__section__picture, .p-ows__section--type04 .p-ows__section__picture {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
    text-align: center;
  }
  .p-ows__section--type02 .p-ows__section__picture img, .p-ows__section--type04 .p-ows__section__picture img {
    width: 250px;
    height: auto;
  }
}

/*  .p-ows__section--type03
----------------------------------------------------*/
.p-ows__section--type03 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

/*  .p-ows__section--type04
----------------------------------------------------*/
.p-ows__section--type04 {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

/*====================================================

  notfound:404 Not Found

====================================================*/
/*----------------------------------------------------
    .p-notFound
----------------------------------------------------*/
.p-notFound--type01 {
  text-align: center;
  margin-bottom: 200px;
}

.p-notFound--type01 p {
  margin-bottom: 1em;
}

.p-notFound__link {
  margin-top: 60px;
  margin-bottom: 0;
}

.p-notFound__link a:link, .p-notFound__link a:visited, .p-notFound__link a:hover, .p-notFound__link a:active, .p-notFound__link a:focus {
  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;
}

/*----------------------------------------------------
    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;
}

@media screen and (max-width: 666px) {
  .tacs {
    text-align: center !important;
  }
}

@media screen and (max-width: 666px) {
  .tars {
    text-align: right !important;
  }
}

@media screen and (max-width: 666px) {
  .tals {
    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;
}

/*----------------------------------------------------
    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;
}

.fz31 {
  font-size: 31px !important;
}

.fz32 {
  font-size: 32px !important;
}

.fz40 {
  font-size: 40px !important;
}

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

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

/*----------------------------------------------------
    br
----------------------------------------------------*/
.brPc {
  display: inline-block;
}

@media screen and (min-width: 668px) and (max-width: 768px) {
  .brPc {
    display: none;
  }
}

@media screen and (min-width: 668px) and (max-width: 768px) and (min-width: 668px) and (max-width: 768px) {
  .brPc.brTab {
    display: inline-block;
  }
}

@media screen and (max-width: 666px) {
  .brPc {
    display: none;
  }
  .brPc.brSp {
    display: inline-block;
  }
}

.brTab {
  display: none;
}

@media screen and (max-width: 666px) {
  .brTab {
    display: none;
  }
}

@media screen and (min-width: 668px) and (max-width: 768px) {
  .brTab {
    display: inline-block;
  }
}

@media screen and (min-width: 769px) {
  .brTab.brPc {
    display: inline-block;
  }
}

@media screen and (max-width: 666px) {
  .brTab.brPc {
    display: none;
  }
}

@media screen and (max-width: 666px) {
  .brTab.brSp {
    display: inline-block;
  }
}

.brSp {
  display: none;
}

@media screen and (max-width: 666px) {
  .brSp {
    display: inline-block;
  }
}

.brSp.brPc {
  display: inline-block;
}

@media screen and (min-width: 668px) and (max-width: 768px) {
  .brSp.brPc {
    display: none;
  }
}

@media screen and (min-width: 668px) and (max-width: 768px) {
  .brSp.brTab {
    display: inline-block;
  }
}

/*----------------------------------------------------
    width, height
----------------------------------------------------*/
.w50p {
  width: 50% !important;
}

.w100p {
  width: 100% !important;
}

.w120 {
  width: 120px !important;
}

.w160 {
  width: 160px !important;
}

.w180 {
  width: 180px !important;
}

.w190 {
  width: 190px !important;
}

.w340 {
  width: 340px !important;
}

.w390 {
  width: 390px !important;
}

.w840 {
  width: 840px !important;
  margin-right: auto;
  margin-left: auto;
}

.w840.w100p {
  width: 100% !important;
}

.w50 {
  width: 50px !important;
}

.w100 {
  width: 100px !important;
}

.w150 {
  width: 150px !important;
}

.w200 {
  width: 200px !important;
}

.w250 {
  width: 250px !important;
}

.w300 {
  width: 300px !important;
}

.w350 {
  width: 350px !important;
}

.w400 {
  width: 400px !important;
}

.w450 {
  width: 450px !important;
}

.w500 {
  width: 500px !important;
}

.w550 {
  width: 550px !important;
}

.w600 {
  width: 600px !important;
}

.w650 {
  width: 650px !important;
}

.w700 {
  width: 700px !important;
}

.w750 {
  width: 750px !important;
}

@media screen and (max-width: 666px) {
  .w50s {
    width: 50px !important;
  }
  .w100s {
    width: 100px !important;
  }
  .w150s {
    width: 150px !important;
  }
  .w200s {
    width: 200px !important;
  }
  .w250s {
    width: 250px !important;
  }
  .w300s {
    width: 300px !important;
  }
  .w350s {
    width: 350px !important;
  }
  .w400s {
    width: 400px !important;
  }
  .w450s {
    width: 450px !important;
  }
  .w500s {
    width: 500px !important;
  }
  .w550s {
    width: 550px !important;
  }
  .w600s {
    width: 600px !important;
  }
  .w650s {
    width: 650px !important;
  }
  .w700s {
    width: 700px !important;
  }
  .w750s {
    width: 750px !important;
  }
}

@media screen and (max-width: 666px) {
  .w50ps {
    width: 50% !important;
  }
  .w100ps {
    width: 100% !important;
  }
}

/*----------------------------------------------------
    margin, padding
----------------------------------------------------*/
.mt0 {
  margin-top: 0px !important;
}

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

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

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

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

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mb130 {
  margin-bottom: 130px !important;
}

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

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

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

@media screen and (max-width: 666px) {
  .mt0s {
    margin-top: 0px !important;
  }
  .mb0s {
    margin-bottom: 0px !important;
  }
  .mr0s {
    margin-right: 0px !important;
  }
  .ml0s {
    margin-left: 0px !important;
  }
  .pt0s {
    padding-top: 0px !important;
  }
  .pb0s {
    padding-bottom: 0px !important;
  }
  .mt5s {
    margin-top: 5px !important;
  }
  .mb5s {
    margin-bottom: 5px !important;
  }
  .mr5s {
    margin-right: 5px !important;
  }
  .ml5s {
    margin-left: 5px !important;
  }
  .pt5s {
    padding-top: 5px !important;
  }
  .pb5s {
    padding-bottom: 5px !important;
  }
  .mt10s {
    margin-top: 10px !important;
  }
  .mb10s {
    margin-bottom: 10px !important;
  }
  .mr10s {
    margin-right: 10px !important;
  }
  .ml10s {
    margin-left: 10px !important;
  }
  .pt10s {
    padding-top: 10px !important;
  }
  .pb10s {
    padding-bottom: 10px !important;
  }
  .mt15s {
    margin-top: 15px !important;
  }
  .mb15s {
    margin-bottom: 15px !important;
  }
  .mr15s {
    margin-right: 15px !important;
  }
  .ml15s {
    margin-left: 15px !important;
  }
  .pt15s {
    padding-top: 15px !important;
  }
  .pb15s {
    padding-bottom: 15px !important;
  }
  .mt20s {
    margin-top: 20px !important;
  }
  .mb20s {
    margin-bottom: 20px !important;
  }
  .mr20s {
    margin-right: 20px !important;
  }
  .ml20s {
    margin-left: 20px !important;
  }
  .pt20s {
    padding-top: 20px !important;
  }
  .pb20s {
    padding-bottom: 20px !important;
  }
  .mt25s {
    margin-top: 25px !important;
  }
  .mb25s {
    margin-bottom: 25px !important;
  }
  .mr25s {
    margin-right: 25px !important;
  }
  .ml25s {
    margin-left: 25px !important;
  }
  .pt25s {
    padding-top: 25px !important;
  }
  .pb25s {
    padding-bottom: 25px !important;
  }
  .mt30s {
    margin-top: 30px !important;
  }
  .mb30s {
    margin-bottom: 30px !important;
  }
  .mr30s {
    margin-right: 30px !important;
  }
  .ml30s {
    margin-left: 30px !important;
  }
  .pt30s {
    padding-top: 30px !important;
  }
  .pb30s {
    padding-bottom: 30px !important;
  }
  .mt35s {
    margin-top: 35px !important;
  }
  .mb35s {
    margin-bottom: 35px !important;
  }
  .mr35s {
    margin-right: 35px !important;
  }
  .ml35s {
    margin-left: 35px !important;
  }
  .pt35s {
    padding-top: 35px !important;
  }
  .pb35s {
    padding-bottom: 35px !important;
  }
  .mt40s {
    margin-top: 40px !important;
  }
  .mb40s {
    margin-bottom: 40px !important;
  }
  .mr40s {
    margin-right: 40px !important;
  }
  .ml40s {
    margin-left: 40px !important;
  }
  .pt40s {
    padding-top: 40px !important;
  }
  .pb40s {
    padding-bottom: 40px !important;
  }
  .mt45s {
    margin-top: 45px !important;
  }
  .mb45s {
    margin-bottom: 45px !important;
  }
  .mr45s {
    margin-right: 45px !important;
  }
  .ml45s {
    margin-left: 45px !important;
  }
  .pt45s {
    padding-top: 45px !important;
  }
  .pb45s {
    padding-bottom: 45px !important;
  }
  .mt50s {
    margin-top: 50px !important;
  }
  .mb50s {
    margin-bottom: 50px !important;
  }
  .mr50s {
    margin-right: 50px !important;
  }
  .ml50s {
    margin-left: 50px !important;
  }
  .pt50s {
    padding-top: 50px !important;
  }
  .pb50s {
    padding-bottom: 50px !important;
  }
}

@media screen and (min-width: 668px) and (max-width: 768px) {
  .pt0t {
    padding-top: 0 !important;
  }
  .pb0t {
    padding-bottom: 0 !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;
}

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