@charset "UTF-8";

/* ==========================================================
 html5 elements
========================================================== */
html{ font-size: 10px; }
article, aside, figure, figcaption, footer, header, nav, section
{ display: block;}
/* ==========================================================
 reseting
========================================================== */
body {
  line-height: 1.6;
  color: #000000;
  font-size: 1.6rem;
  -webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 767px){
  body { font-size: 1.5rem; }
}
body, input, textarea, select, button {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  /* 明朝フォント
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;*/
}
/* IE 10+ */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  body, input, textarea, select, button {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    /* 明朝フォント
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;*/
  }
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, button, figure, figcaption
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
input, textarea, select
{ -webkit-appearance: none;}
textarea
{ resize: none;}
button
{ border: none; overflow: visible; background: none; vertical-align: top;  font-size: 100%; color: inherit; cursor: pointer; -webkit-appearance: none;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ height: auto; vertical-align: top;}
address, caption, code, th
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6, em
{ font-size: 100%; font-weight: normal;}
a, input
{ outline: none; -webkit-tap-highlight-color:rgba(0,0,0,0);}
sup, sub
{ font-size: 63%;}
sup
{ vertical-align: top;}
sub
{ vertical-align: baseline;}
*
{ box-sizing: border-box; -webkit-box-sizing: border-box;}
/* ==========================================================
 base Link
========================================================== */
a {
  color: #31567e;
  text-decoration: none;
}
a:visited {}
a:hover,
a:active{ color: #000; text-decoration: none;}
/* ==========================================================
 clearfix
========================================================== */
.clearfix:before, .clearfix:after,
.contents:before, .contents:after
{
  content: "";
  display: table;
}
.clearfix:after,
.contents:after
{
  clear: both;
}
/* For IE 6/7
---------------------------------------------------------- */
.clearfix,
.contents
{
  *zoom: 1;
}
/* ==========================================================
 layout
========================================================== */
html { overflow-y: scroll;}
body { text-align: center;}
/* ==========================================================
 wrapper
========================================================== */
.wrapper {
  width: 100%;
}
/* ==========================================================
 header
========================================================== */
.header {
  width: 100%;
  background: #fff;
  position: relative;
}
@media screen and (max-width: 767px){
  .header {
    position: fixed;
    z-index: 99;
    top: 0;
  }
}
  .header-in {
    width: 1000px;
    margin: 0 auto;
    text-align: left;
  }
  .search-sp{ display: none; }
  @media screen and (max-width: 767px){
    .header-in {
      width: 100%;
      position: relative;
    }
    .search-sp{
      display: none;
      opacity: 0;
      position: absolute;
      right: 0;
      top: 50%;
      width: calc(100% - 150px);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
    }
    .search-sp form > input{
      font-size: 12px;
      border: 1px solid #31567e;
      padding: 5px 10px;
      width: 100%;
      border-radius: 3px;
      zoom: 0;
    }
    .header-shadow{
      -webkit-box-shadow: 0px 1px 1px 0px rgba(187,187,187,1);
      -moz-box-shadow: 0px 1px 1px 0px rgba(187,187,187,1);
      box-shadow: 0px 1px 1px 0px rgba(187,187,187,1);
    }
  }
  .header-in::after{
    display: table;
    width: 100%;
    content: '';
  }
  .header-logo {
    display: block;
    float: left;
  }
  @media screen and (max-width: 767px){
    .header-logo {
      display: inline-block;
      float: none;
      width: 50px;
      height: 50px;
    }    
    .header-logo::after {
      display: table;
      width: 100%;
      content: '';
    }
    .header-logo img{ width: 100%; }
  }
  .header-utility {
    float: right;
    margin: 10px 0 50px;
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  @media screen and (max-width: 767px){
    .header-utility {
      float: right;
      display: block;
      margin-top: 0;
    }
  }
  .header-utility::after {
    display: table;
    width: 100%;
    content: '';
  }
    .header-search {
      display: block;
      float: left;
    }
      .header-search form{ position: relative; }
        .header-search form .form-cmn-input{
          width: 230px;
          border: 1px solid #31567e;
          padding: 1px 31px 1px 3px;
          -webkit-appearance: none;
          -moz-appearance: none;
        }
        /* IE10+ */
        .no-clear::-ms-clear {display: none; }

        /* Chrome */
        .no-clear::-webkit-search-decoration,
        .no-clear::-webkit-search-cancel-button,
        .no-clear::-webkit-search-results-button,
        .no-clear::-webkit-search-results-decoration { 
              display: none; 
        }        
    .header-links {
      display: block;
      float: left;
      padding-top: 3px;
      margin-right: 10px;
    }
      .header-links li {
        display: inline-block;
        font-size: 1.5rem;
      }
        .header-links li a{
          color: #666666;
          font-size: 2.6rem;
          margin-left: 7px;
          line-height: 1;
        }
    .header-font {
      display: block;
      float: left;
      margin-right: 39px;
    }
      .header-font li {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 1.5rem;
        margin-left: 6px;
      }
        .header-font li a{
          color: #000000;
          font-size: 1.5rem;
        }
        .header-font li > span{
          color: #000000;
          font-size: 1.5rem;
          padding: 0 6px;
          letter-spacing: -0.09em;
        }
    .header-utility .js-font{
      border: 1px solid #000000;
      width: 30px;
      height: 30px;
      text-align: center;
    }
    .header-utility .js-font.active{ border: 1px solid #31567e; }
    .header-utility .js-font a{
      color: #31567e;
      display: block;
      width: 100%;
      height: 100%;
      padding: 0 3px;
      display: -webkit-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
    }
    .header-utility .js-font a:hover,
    .header-utility .js-font a:focus,
    .header-utility .js-font.active a{
      color: #fff;
      background: #31567e;
      text-decoration: none;
    }
    .header .header-btn-search{ display: none; }
    @media screen and (max-width: 767px){
      .header .header-btn-menu {
        position: relative;
        z-index: 1000;
        float: right;
        display: block;
        width: 30px;
        height: 30px;
        margin: 10px 10px 0 0;
        padding: 3px;
        background: #31567e;
      }
        .header .header-btn-menu span {
          display: block;
          position: absolute;
          left: 7px;
          width: 17px;
          height: 3px;
          background: #fff;
          border-radius: 4px;
          opacity: 1;
          -webkit-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
          transform: rotate(0deg);
          -webkit-transition: .3s ease-in-out;
          -o-transition: .3s ease-in-out;
          transition: .3s ease-in-out;
        }
      .header .header-btn-menu span:nth-child(1) { top: 7px; }
      .header .header-btn-menu span:nth-child(2), .header .header-btn-menu span:nth-child(3) { top: 13px; }
      .header .header-btn-menu span:nth-child(4) { top: 19px; }
      .header .header-btn-menu span:nth-child(2) { opacity: 0; }
      .header .header-btn-menu.is-open span:nth-child(1) {
        top: 11px;
        width: 0%;
        left: 50%;
      }
      .header .header-btn-menu.is-open span:nth-child(2) {
        opacity: 1;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        background: #31567e;
      }
      .header .header-btn-menu.is-open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        background: #31567e;
      }
      .header .header-btn-menu.is-open span:nth-child(4) {
        top: 11px;
        width: 0%;
        left: 50%;
      }
      .header .header-btn-search{
        width: 30px;
        height: 30px;
        background: #31567e;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        position: absolute;
        z-index: 10;
        top: 10px;
        right: 50px;
      }
        .header .header-btn-search .fa{
          font-size: 20px;
          color: #fff;
        }
      .header .header-btn-menu.is-open{
        background: #fff;
        color: #31567e;
      }
    }
    
/* ==========================================================
 nav-global
========================================================== */
.nav-global {
  float: right;
  width: 870px;
}
@media screen and (max-width: 767px){
  .nav-global {
    width: 100%;
    height: 524px;
    float: none;
    margin-top: 0px;
    position: absolute;
    top: 0;
    z-index: 99;
    display: none;
    overflow-y: scroll;
  }
  .nav-global.active { display: block; }
}
@media screen and (max-width: 320px){
  .nav-global {
    height: 450px;
    overflow-y: scroll;
  }
}
@media screen and (max-height: 414px){
  .nav-global {
    height: 310px;
    overflow-y: scroll;
  }
}
.nav-global::after {
  display: table;
  width: 100%;
  content: '';
}
.nav-global .list-nav{
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media screen and (max-width: 767px){
  .nav-global .list-nav{
    display: block;
  }
}
  .nav-global li {
    display: inline-block;
    position: relative;
  }
  @media screen and (max-width: 767px){
    .nav-global li {
      display: block;
      width: 100%;
      background: #31567e;
      border-bottom: 1px solid #fff;
      float: left;
    }
    .nav-global > li:first-of-type { border-top: 0px solid #fff; }
    .nav-global li:last-of-type { border-bottom: 0; }
    .nav-global .fa{
      display: inline-block!important;
      color: #fff;
      padding-left: 38px;
      margin-right: 10px;
    }
    .nav-global #menu-global-menu li.menu-item-has-children.is-open > a::before{
      content: "\f150";
    }
  }
    .nav-global li a {
      color: #000000;
      font-weight: bold;
      padding: 0 1.4rem;
    }
    @media screen and (min-width: 769px){
      #g01 .nav-global li.nav01 > a{ color: #a22041; }
      #g02 .nav-global li.nav02 > a{ color: #a22041; }
      #g03 .nav-global li.nav03 > a{ color: #a22041; }
      #g04 .nav-global li.nav04 > a{ color: #a22041; }
      #g05 .nav-global li.nav05 > a{ color: #a22041; }
      #g06 .nav-global li.nav06 > a{ color: #a22041; }
      #g07 .nav-global li.nav07 > a{ color: #a22041; }
    }
    .nav-global.sm,
    .nav-global.md{ width: 870px; }
    .nav-global.sm .list-nav > li > a{ display: inline-block; padding: 0.7rem 1.4rem; }
    .nav-global.md .list-nav > li > a{ display: inline-block; }
    .nav-global.lg{ width: 100%; }
    .nav-global.lg .list-nav > li > a{ padding: 0.72rem 0; display: inline-block; }

    @media screen and (max-width: 767px){
      .nav-global #menu-primary > li.close-btn > a {
        color: #fff;
        font-weight: normal;
        display: block;
        height: 49px;
        width: 100%;
        text-indent: 100%;
        white-space: nowrap;
        overflow: hidden;
      }
      .nav-global #menu-primary > li.close-btn > a::before {
        display: none!important;
      }
      .nav-global li a{
        color: #fff;
        font-weight: normal;
        display: inline-block;
        padding: 10px 10px 10px 60px;
        width: 100%;
        position: relative;
      }
      .nav-global li a::before{ 
        font-family: "FontAwesome";
        content: "\f152";
        display: inline-block!important;
        margin-right: 10px;
        position: absolute;
        left: 38px;
        top: 14px;
        line-height: 1.2;
      }
      .nav-global .sub-menu > li a::before{
        left: 56px;
      }
      .nav-global li a:hover { color: #fff; }
    }
    @media screen and (min-width: 769px){
      .nav-global li a:hover,
      .nav-global .list-nav > li.current-menu-item > a,
      .nav-global .list-nav > li.current-menu-parent > a{
        text-decoration: none;
        color: #a22041;
      }
    }
    .nav-global .sub-menu li.current-menu-item > a{
      color: #fff;
      background: #31567e; 
    }
    @media screen and (max-width: 767px){
      .nav-global li a:hover,
      .nav-global li.active a{
        color: #fff;
        text-decoration: none;
      }
      .nav-global .sub-menu li.current-menu-item > a{
        color: #31567e;
        background: #fff; 
        font-weight: bold;
      }
    }
    .sub-menu,
    .sub-menu-01{
      position: absolute;
      z-index: 100;
      background: #fff;
      width: 18rem;
      top: 3.8rem;
      display: none;
      -webkit-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
      -moz-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
      box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
    }
    @media screen and (max-width: 767px){
      .sub-menu,
      .sub-menu-01{
        position: relative;
        width: 100%;
        top: 0;
        background: #fff;
      }
    }
    .sub-menu-01 .sub-menu-link > li{ width: 100%; }
    .sub-menu > li{ width: 100%; }
    @media screen and (max-width: 767px){
      .sub-menu > li{
        background: #fff!important;
        border-bottom: 1px solid #31567e;
        display: -webkit-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
      }
      .sub-menu > li:last-of-type{ border-bottom: 0; }
      .sub-menu > li > .fa{
        color: #31567e;
        margin-top: 14px;
        padding-left: 56px;
      }
    }
    .sub-menu > li > a{
      text-decoration: none; 
      color: #000000;
      font-weight: normal;
      display: inline-block;
      width: 100%;
      padding: 8px 12px 7px;
      font-size: 1.6rem;
      letter-spacing: -0.08em;
      position: relative;
    }
    @media screen and (max-width: 767px){
      .sub-menu > li > a{
        color: #31567e;
        display: inline-block;
        width: 100%;
        padding: 11px 12px 8px 78px;
      }
      .sub-menu > li > a .fa{
        color: #31567e;
        position: absolute;
        left: 18px;
      }
    }
    .sub-menu li.menu-item{ color: #31567e; }
    .sub-menu > li:hover,
    .sub-menu > li.active{ 
      background: #31567e;
    }
    .sub-menu > li.active a,
    .sub-menu > li:hover a{
      color: #fff;
    }
    @media screen and (max-width: 767px){
      .sub-menu{
        border-top: 1px solid #31567e;
      }
      .sub-menu > li.active a,
      .sub-menu > li:hover a{
        color: #31567e;
      }      
    }
/* ==========================================================
 nav-local
========================================================== */
.nav-local {
}
  .nav-local li {
  }
    .nav-local li a {
    }
    .nav-local li a:hover {
    }
/* ==========================================================
 nav-breadcrumb
========================================================== */
.nav-breadcrumb {
  width: 1000px;
  overflow: hidden;
  margin: 0 auto;
  text-align: left;
  border-top: 1px solid #bbbbbb;
  padding: 10px 0 0 13px;
}
.nav-breadcrumb ul::after{
  content: '';
  width: 100%;
  display: table;
}
@media screen and (max-width: 767px){
  .nav-breadcrumb {
    margin-top: 50px;
    background: #ececec;
    padding: 7px 8px;
    width: 100%;
  }
}
  .nav-breadcrumb li {
    float: left;
    white-space: nowrap;
    font-size: 1.4rem;
  }
  .nav-breadcrumb li:not(:first-of-type)::before {
    font-family: 'FontAwesome';
    font-size: 1.4rem;
    content: "\f105";
    padding: 0 6px;
    color: #000;
  }
  .nav-breadcrumb li::before{
    color: #000;
  }
  .nav-breadcrumb li.home {
  }
    .nav-breadcrumb li span,
    .nav-breadcrumb li a {
      padding: 0;
      font-size: 1.4rem;
      color: #31567e;
    }
    @media screen and (max-width: 767px){
      .nav-breadcrumb li,
      .nav-breadcrumb li span,
      .nav-breadcrumb li a {
        font-size: 1.2rem;
        display: block;
        float: left;
		white-space: pre-wrap;
      }
      .nav-breadcrumb li:not(:first-of-type)::before {
        font-size: 1.2rem;
        padding: 0 5px;
        float: left;
        display: block;
      }
    }
    .nav-breadcrumb li:first-of-type a {
      padding-left: 0px;
      color: #31567e;
    }
/* ==========================================================
 contents
========================================================== */
.contents {
  width: 100%;
  margin: 0 auto;
  text-align: left;
}
.contents-main { width: 100%; }
/* ==========================================================
 footer
========================================================== */
.footer {
  margin-top: 100px;
  width: 100%;
  background: #cccccc;
  color: #31567e;
}
@media screen and (max-width: 767px){
  .footer {
    margin-top: 6px;
    position: relative;
  }
}
  .footer-in {
    width: 1000px;
    margin: 0 auto;
    text-align: left;
    position: relative;
  }
  @media screen and (max-width: 767px){
    .footer-in { width: 100%; }
  }
  .footer-in::after{
    display: table;
    width: 100%;
    content: '';
  }
  .footer-utility {
    float: left;
    width: 710px;
  }
    .footer-logo{
      display: block;
      float: left;
      width: 6.5rem;
      height: 6.5rem;
    }
    .footer-logo img{ width: 100%; }
    @media screen and (max-width: 767px){
      .footer-logo{
        width: 45px;
        height: 45px;
      }
    }
    .footer-links {
    }
      .footer-links li {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        
      }
        .footer-links li a{
          color: #31567e;
          line-height: 1;
          font-size: 1.4rem;
          display: inline-block;
          padding: 9px 8px;
        }
        /* .footer-links li.ft-01 a{ margin: 13px 27px 0 19px; }
        .footer-links li.ft-02 a{ margin: 13px 28px 0 0; }
        .footer-links li.ft-03 a{ margin: 13px 28px 0 0; }
        .footer-links li.ft-04 a{ margin: 13px 28px 0 0; }
        .footer-links li.ft-05 a{ margin: 13px 29px 0 0; }
        .footer-links li.ft-06 a{ margin: 13px 27px 0 0; }
        .footer-links li.ft-07 a{ margin: 13px 0 0 0; }
        .footer-links li.ft-08 a{ margin: 8px 0 0 18px; } */
/* .footer-copyright
---------------------------------------------------------- */
  .footer-copyright {
    color: #fff;
    background: #000;
    font-size: 1.2rem;
    text-align: center;
    padding: 5px 0;
  }
  @media screen and (max-width: 767px){
    .footer-copyright {
      font-size: 1rem;
      padding: 13px 0 10px;
    }
  }
  .footer-copyright::before {
    display: table;
    width: 100%;
    content: '';
  }
  .footer-copyright .cpr-01{}
  .footer-copyright .cpr-02{ margin-left: 10px; }
  .footer-copyright .cpr-03{ margin-left: 10px; }
  .footer-copyright .cpr-04{ margin-left: 20px; }
  @media screen and (max-width: 767px){
    .footer-copyright .cpr-04{ 
      display: block;
      margin-left: 0;
    }
  }
/* ==========================================================
 grid
========================================================== */
/* grid-cmn
---------------------------------------------------------- */
.grid-cmn {
}
  .grid-cmn > .col {
  }
/* ==========================================================
 area
========================================================== */
/* area-cmn
---------------------------------------------------------- */
.area-cmn {
}
/* ==========================================================
 section
========================================================== */
/* sec-cmn
---------------------------------------------------------- */
.sec-cmn-01 {
  width: 100%;
  background: #fff;
}
  .sec-cmn-01 > .inner{
    width: 1000px;
    margin: 0 auto;
    text-align: left;
  }
  @media screen and (max-width: 767px){
    .sec-cmn-01 .inner{ width: 100%; }
  }  
/* sec-cmn-02
---------------------------------------------------------- */
.sec-cmn-02 {
  /* width: 100%; */
  background: #d3f0fd;
}
  .sec-cmn-02 > .inner{
    width: 1000px;
    margin: 0 auto;
    text-align: left;
  }
  @media screen and (max-width: 767px){
    .sec-cmn-02 { background: #fff; }
    .sec-cmn-02 .inner{ width: 100%; }
  }
/* sec-cmn-03
---------------------------------------------------------- */
.sec-cmn-03 { width: 100%; }
  .sec-cmn-03 > .inner{
    width: 980px;
    margin: 0 auto;
    text-align: left;
  }
  @media screen and (max-width: 767px){
    .sec-cmn-03 .inner{
      width: calc(100% - 10px);
      margin: 0 auto;
    }
  }
/* section last margin */
section:last-of-type {
  margin-bottom: 0;
}
/* ==========================================================
 box
========================================================== */
/* box-cmn
---------------------------------------------------------- */
.box-cmn {
}
/* ==========================================================
 hero
========================================================== */
/* hero-cmn
---------------------------------------------------------- */
.hero-cmn{
  position: relative;
  width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 767px){
  .hero-cmn{
    width: 100%;
    margin-top: 50px;
  }
  .hero-cmn img { width: 100%; }
}
  .hero-cmn .box-banner-content{
    width: 40rem;
    height: 17rem;
    z-index: 10;
    position: absolute;
    left: 90px;
    top: 50px;
    background: url(../../img/top/bg_banner_01.png);
    text-align: left;
  }
  @media screen and (max-width: 767px){
    .hero-cmn .box-banner-content{
      width: 250px;
      height: auto;
      left: 33px;
      top: 18px;
    }
  }
  @media screen and (max-width: 375px){
    .hero-cmn .box-banner-content{
      width: 150px;
      height: auto;
    }
  }
  @media screen and (max-width: 360px){
    .hero-cmn .box-banner-content{
      width: 220px;
      height: auto;
    }
    .hero-cmn img { width: 150%; }
  }

    .hero-cmn .box-banner-content .title{
      font-size: 2.2rem;
      font-weight: bold;
      font-family: "HiraginoUDSansFStd";
      padding: 0.9rem 0 0 1.2rem;
    }
    .hero-cmn .box-banner-content .text{
      font-size: 1.3rem;
      font-weight: bold;
      padding: 4px 14px;
      line-height: 1.85;
      letter-spacing: -0.04em;
    }
    @media screen and (max-width: 767px){
      .hero-cmn .box-banner-content .title{
        font-size: 1.8rem;
        padding: 5px 0 0 6px;
        line-height: 1.5;
      }
      .hero-cmn .box-banner-content .text{
        font-size: 1rem;
        padding: 2px 7px;
        line-height: 1.5;
      }
    }
    @media screen and (max-width: 375px){
      .hero-cmn .box-banner-content .title{
        font-size: 0.9rem;
        padding: 5px 0 0 6px;
        line-height: 1.5;
      }
      .hero-cmn .box-banner-content .text{
        font-size: 0.5rem;
        padding: 2px 7px;
        line-height: 1.5;
      }
    }
/* ==========================================================
 module
========================================================== */

/* ==========================================================
 title
========================================================== */
/* ttl-cmn-01
---------------------------------------------------------- */
.ttl-cmn-01 {
  font-size: 4rem;
  margin-top: 36px;
  font-weight: bold;
  color: #31567e;
}
@media screen and (max-width: 767px){
  .ttl-cmn-01{
    font-size: 3rem;
    text-align: center;
  }
  .sec-cmn-03 .ttl-cmn-01{
    margin: 15px 0 18px;
    letter-spacing: normal;
  }
}
/* ttl-cmn-02
---------------------------------------------------------- */
.ttl-cmn-02 {
  font-size: 3rem;
  font-family: "ヒラギノUD角ゴF", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: bold;
  text-align: center;
  color: #666666;
}
@media screen and (max-width: 767px){
  .ttl-cmn-02 {
    font-size: 2.8rem;
    line-height: 1.2;
  }
}
/* ttl-cmn-03
---------------------------------------------------------- */
.ttl-cmn-03 {
  font-size: 2.2rem;
  font-weight: bold;
  color: #444444;
  display: inline-block;
}
@media screen and (max-width: 767px){
  .ttl-cmn-03 {
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
}
/* ttl-cmn-04
---------------------------------------------------------- */
.ttl-cmn-04 {
  font-size: 2rem;
  display: inline-block;
}
@media screen and (max-width: 767px){
  .ttl-cmn-04 {
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
}
/* ttl-cmn-05
---------------------------------------------------------- */
.ttl-cmn-05 {
  font-size: 2.8rem;
  display: inline-block;
  color: #a22041;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .ttl-cmn-05 {
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
}
/* ttl-cmn-06
---------------------------------------------------------- */
.ttl-cmn-06 {
  font-size: 1.8rem;
  display: inline-block;
  color: #a22041;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .ttl-cmn-06 {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: normal;
    padding: 10px 0 0 10px;
  }
}
/* ==========================================================
 text
========================================================== */
/* txt-cmn
---------------------------------------------------------- */
.txt-cmn {
}
/* ==========================================================
 list
========================================================== */
/* list-cmn
---------------------------------------------------------- */
.list-cmn {
}
  .list-cmn li {
  }
/* list-news-cmn-01
---------------------------------------------------------- */
.list-news-cmn-01{
  width: 980px;
  border-top: 1px solid #bbbbbb;
  margin: 22px auto 60px;
}
@media screen and (max-width: 767px){
  .list-news-cmn-01{
    width: calc(100% - 10px);
    margin: 17px 5px 0;
  }
}
  .list-news-cmn-01 .item{
    border-bottom: 1px solid #bbbbbb;
    padding: 18px 0px 19px;
  }
  .list-news-cmn-01 .item::after{
    display: table;
    width: 100%;
    content: '';
  }
    .list-news-cmn-01 .item .date{
      display: block;
      float: left;
      width: 11rem;
      letter-spacing: 0.02em;
    }
    @media screen and (max-width: 767px){
      .list-news-cmn-01 .item .date{
        font-size: 1rem;
        width: 64px;
      }
    }
    .list-news-cmn-01 .item .tags{
      font-size: 1.2rem;
      display: block;
      float: left;
      width: 10rem;
      margin: 2px 25px 0 0;
      color: #fff;
      text-align: center;
      padding: 2px 2px 1px;
    }
    @media screen and (max-width: 767px){
      .list-news-cmn-01 .item .tags{
        font-size: 0.9rem;
        margin: 0;
        padding: 1px 0 0;
        width: 75px;
      }
    }
    .list-news-cmn-01 .item .tags .link{
      color: #fff;
      display: block;
      width: 100%;
      height: 100%;
    }
    .list-news-cmn-01 .item .tags .link:hover{ text-decoration: none; }
    .list-news-cmn-01 .item .tags.type-01{ background: #a22041; }
    .list-news-cmn-01 .item .tags.type-02{ background: #31567e; }
    .list-news-cmn-01 .item .tags.type-03{}
    .list-news-cmn-01 .item .tags.type-04{}
    .list-news-cmn-01 .item .tags.type-05{}
    .list-news-cmn-01 .item .title{
      display: block;
      float: left;
      width: 74.5rem;
      padding-right: 20px;
      word-wrap: break-word;
    }
    @media screen and (max-width: 767px){
      .list-news-cmn-01 .item .title{
        width: 100%;
        margin: 8px 0;
      }
      .list-news-cmn-01 .item{ padding: 15px 9px 0; }
    }
      .list-news-cmn-01 .item .title a{ color: #31567e; }
      .list-news-cmn-01 .item .title a:hover{ color: #000; }

/* list-cate-01
---------------------------------------------------------- */      
.list-cate-cmn-01{
  display: -webkit-inline-flex;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: 100%;
}
@media screen and (max-width: 767px){
  .list-cate-cmn-01{
    display: block;
    text-align: center;
  }
}
.list-cate-cmn-01 .item{ padding: 7px 0 0; }
.list-cate-cmn-01 .item:not(:last-of-type){ margin-right: 3.5rem; }
@media screen and (max-width: 767px){
  .list-cate-cmn-01 .item:last-of-type,
  .list-cate-cmn-01 .item:not(:last-of-type){
    margin-right: 0;
    padding: 0;
    text-align: center;
    display: inline-block;
  }
}
.list-cate-cmn-01 .item .link{
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: -0.01em;
  display: inline-block;
  color: #666666;
  border-bottom: 3px solid #bbbbbb;
}
.list-cate-cmn-01 .item .link:hover{
  color: #000;
  border-bottom: 3px solid #000;
  text-decoration: none;
}
@media screen and (max-width: 767px){
  .list-cate-cmn-01 .item .link{
    font-size: 1.5rem;;
    border: 1px solid #000;
    border-radius: 3px;
    margin-bottom: 10px;
    padding: 3px 13px;
  }
  .list-cate-cmn-01 .item .link:hover{
    color: #31567e;
    border: 1px solid #bbbbbb;
    text-decoration: none;
  }
}
/* list-article-cmn-01 .item
---------------------------------------------------------- */
.list-article-cmn-01{
  border-top: 1px solid #cccccc;
  margin-top: 11px;
}
@media screen and (max-width: 767px){
  .list-article-cmn-01{ margin-top: 8px; }
}
.list-article-cmn-01 .item{
  padding: 12px 20px;
  border-bottom: 1px solid #cccccc;
}
@media screen and (max-width: 767px){
  .list-article-cmn-01 .item{
    padding: 7px 34px 8px;
    line-height: 1.55;
    position: relative;
  }
}
.list-article-cmn-01 .item .link::before{
  font-family: 'FontAwesome';
  content: "\f152";
  font-size: 1.6rem;
  color: #31567e;
  margin-right: 10px;
}
.list-article-cmn-01 .item .link:hover::before{ color: #000; }
@media screen and (max-width: 767px){
  .list-article-cmn-01 .item .link::before{
    position: absolute;
    left: 9px;
    top: 10px;
    font-size: 1.5rem;
	line-height: 1.2;
  }
}
.list-article-cmn-01 .item .link{ color: #31567e; }
.list-article-cmn-01 .item .link:hover{ color: #000; }
/* ==========================================================
 table
========================================================== */
/* table-cmn
---------------------------------------------------------- */
.table-cmn {
}
  .table-cmn th,
  .table-cmn td {
  }
  .table-cmn th {
  }
  .table-cmn td {
  }
/* ==========================================================
 button
========================================================== */
/* btn-cmn
---------------------------------------------------------- */
.btn-cmn {
}
/* pagetop
---------------------------------------------------------- */
.btn-cmn-pagetop {
  text-align: center;
  position: absolute;
  bottom: 15px;
  right: 10px;
  width: 35px;
  height: 35px;
  background: #31567e;
  color: #fff;
  display: -webkit-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 1024px){
  .btn-cmn-pagetop { right: 22px; }
}
@media screen and (max-width: 767px){
  .btn-cmn-pagetop {
    right: 0;
    bottom: 0;
    width: 45px;
    height: 45px;
    background-size: 45px;
    position: absolute;
  }
}
.btn-cmn-pagetop a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 3rem;
  color: #fff;
  line-height: 1;
  margin-top: -3px;
}
@media screen and (max-width: 767px){
  .btn-cmn-pagetop a {
    font-size: 3.5rem;
    margin-top: 7px;
  }
}
.btn-cmn-pagetop a:focus,
.btn-cmn-pagetop a .fa:focus {
  outline: none;
  line-height: 1;
}
.btn-search{
  width: 1.9rem;
  height: 1.9rem;
  background: url(../../common/img/ico_search_01.png) no-repeat;
  background-size: 100%;
  position: absolute;
  right: 0.7rem;
  top: 50%;
  transform: translateY(-50%);
}
/* ==========================================================
 link
========================================================== */
/* link-cmn
---------------------------------------------------------- */
.link-cmn {
}
/* ==========================================================
 icon
========================================================== */
/* ico-cmn
---------------------------------------------------------- */
.ico-cmn {
}
/* ==========================================================
 figure
========================================================== */
/* fig-cmn
---------------------------------------------------------- */
.fig-cmn {
}
/* ==========================================================
 image
========================================================== */
/* img-cmn-adjust
---------------------------------------------------------- */
.img-cmn-adjust {
}
/* ==========================================================
 form
========================================================== */
/* base Form
---------------------------------------------------------- */
/* type="text" */
input[type="text"] {
}
/* type="checkbox" */
input[type="checkbox"] {
}
/* type="radio" */
input[type="radio"] {
}
/* select */
select {
}
/* textarea */
textarea {
}
/* button */
button {
}
/* class Form
---------------------------------------------------------- */
/* form-cmn-input
---------------------------------------------------------- */
.form-cmn-input {
  position: relative;
}
/* form-cmn-check
---------------------------------------------------------- */
.form-cmn-check {
}
/* form-cmn-radio
---------------------------------------------------------- */
.form-cmn-radio {
}
/* form-cmn-select
---------------------------------------------------------- */
.form-cmn-select {
}
/* form-cmn-textarea
---------------------------------------------------------- */
.form-cmn-textarea {
}
/* form-cmn-button
---------------------------------------------------------- */
.form-cmn-button {
}
/* ==========================================================
 is
========================================================== */
/* opacity hover
---------------------------------------------------------- */
.is-opacity
{
  -ms-filter: 'alpha( opacity=100)';
  opacity: 1;
}
.is-opacity:hover
{
  -ms-filter: 'alpha( opacity=70)';
  filter: alpha( opacity=70);
  opacity: 0.7;
}
/* css animation 
---------------------------------------------------------- */
.is-animate
{
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* ==========================================================
 style
========================================================== */
.s-fw-n     { font-weight: normal;}
.s-fw-b     { font-weight: bold;}
.s-ta-l     { text-align: left !important;}
.s-ta-c     { text-align: center !important;}
.s-ta-r     { text-align: right !important;}
.s-va-t     { vertical-align: top !important;}
.s-va-m     { vertical-align: middle !important;}
.s-va-b     { vertical-align: bottom !important;}
.s-ov-h     { overflow: hidden;}
.s-clear    { clear: both;}
.s-hide     { display: none;}
.s-txt-hide { text-indent: 100%; white-space: nowrap; overflow: hidden;}
.s-bg-n     { background: none !important;}
.s-mt-00    { margin-top: 0 !important;}
.s-mb-00    { margin-bottom: 0 !important;}
.s-ml-00    { margin-left: 0 !important;}
.s-mr-00    { margin-right: 0 !important;}
/* ==========================================================
 rwd switch
========================================================== */
/* pc
---------------------------------------------------------- */
.only-pc {}
.only-tb,.only-sp,.no-pc { display: none !important;}
.no-tb {}
.no-sp {}
/* tb
---------------------------------------------------------- */
/* @media screen and (max-width: 1024px) {
.only-pc,
.no-tb    { display: none !important;}
.only-tb,
.no-pc    { display: block !important;}
img.only-tb,
img.no-pc { display: inline-block !important;}
} */
/* sp
---------------------------------------------------------- */
@media screen and (max-width: 767px) {
.only-pc,
.no-sp,   
.only-tb,
img.only-tb  { display: none !important;}
.only-sp,
.no-pc,
.no-tb     { display: block !important;}
img.only-sp,
img.no-pc,
img.no-tb  { display: inline-block !important;}
}
/* ==========================================================
 tool
========================================================== */
.hide{ visibility: hidden; }
/* ==========================================================
 is-screen-locked
========================================================== */
.is-screen-locked {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
/* ==========================================================
 box-sns-ft-cmn-01{
========================================================== */
.box-sns-ft-cmn-01{ 
  padding: 18px 0 5px;
  background: #fff;
}
  .box-sns-ft-cmn-01 .link-sns-01{
    font-size: 36px;
    color: #31567e;
    margin: 0 17px;
  }
  .box-sns-ft-cmn-01 .link-sns-02{
    font-size: 36px;
    color: #31567e;
    margin: 0 13px;
  }
/* ==========================================================
  box-card-cmn-01
========================================================== */
.box-card-cmn-01{
  border-top: 1px solid #bbbbbb;
  margin-top: 30px;
}
.box-card-cmn-01 div.item{
  border-bottom: 1px solid #bbbbbb;
  padding: 20px 0 19px;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01{ margin-top: 20px; }
  .box-card-cmn-01 div.item{ padding: 29px 7px 28px; }
}
.box-card-cmn-01 div.item::after{
  content: '';
  width: 100%;
  display: table;
}
.box-card-cmn-01 .image{
  width: 155px;
  margin-right: 10px;
  display: block;
  float: left;
}
.box-card-cmn-01 .image img{ max-width: 100%; }
@media screen and (max-width: 767px){
  .box-card-cmn-01 .image{
    width: 103px;
    margin-right: 0;
    margin-bottom: 20px;
    display: block;
  }
  .box-card-cmn-01 .image img{ width: 100%; }
}
.box-card-cmn-01 .box-card-detail-cmn-01{
  width: 815px;
  display: block;
  float: left;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-detail-cmn-01{
    width: calc(100% - 103px);
    padding-left: 11px;
    margin-top: -4px;
  }
}
.box-card-cmn-01 .category{
  padding-left: 3px;
  letter-spacing: -0.08em;
}

.box-card-cmn-01 .category .link{
  color: #666666;
  font-size: 1.6rem;
}
.box-card-cmn-01 .category::before{
  font-family: "FontAwesome";
  content: "\f15b";
  color: #c7798d;
  font-size: 1.6rem;
  margin-right: 6px;
}
.box-card-cmn-01 .title{ margin: 10px 0 12px; }
@media screen and (max-width: 767px){
  .box-card-cmn-01 .title{ margin: 4px 0 8px; }
}
.box-card-cmn-01 .title .link{
  color: #a22041;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: -0.08em;
}
.box-card-cmn-01 .title .link:hover{ color: #000; }
@media screen and (max-width: 767px){
  .box-card-cmn-01 .title .link{
    font-weight: normal;
    font-size: 1.8rem;
  }
}
.box-card-cmn-01 .box-card-ft-cmn-01{
  background: #ececec;
  border-radius: 5px;
  padding: 10px 16px 8px;
  line-height: 1.2;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-ft-cmn-01{
    margin-left: 2px;
    font-size: 1.3rem;
    padding: 12px 16px 11px;
  }
}
.box-card-cmn-01 .box-card-ft-cmn-01::after{
  content: '';
  width: 100%;
  display: table;
}
.box-card-cmn-01 .box-card-ft-cmn-01 .date{
  font-weight: bold;
  display: block;
  float: left;
  letter-spacing: -0.03em;
  margin-right: 16px;
}
.box-card-cmn-01 .box-card-ft-cmn-01 .author{
  font-weight: bold;
  display: block;
  float: left;
  margin-right: 33px;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-ft-cmn-01 .date,
  .box-card-cmn-01 .box-card-ft-cmn-01 .author{
    font-weight: normal;
  }
}
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01{
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01{
    margin-top: 4px;
    margin-left: 11px;
    display: block;
    float: left;
    padding-left: 4px;
    width: 100%;
  }
  .box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 a{ color: #666666; }
}
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01::before{
  color: #c7798d;
  font-family: "FontAwesome";
  content: "\f02c";
  display: block;
  float: left;
  margin-right: 5px;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01::before{
    position: absolute;
    left: -1.1em;
  }
}
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 .item{
  display: block;
  float: left;
}
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 .item .link{ color: #666666; }
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 .item .link:hover{ color: #000; }
.box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 .item:not(:last-of-type){ margin-right: 10px; }
@media screen and (max-width: 767px){
  .box-card-cmn-01 .box-card-ft-cmn-01 .list-tag-ft-01 .item:not(:last-of-type){ margin-bottom: 5px; }
}
/* box-card-cmn-01.type-01
---------------------------------------------------------- */
.box-card-cmn-01.type-01 .image{ width: 209px; }
.box-card-cmn-01.type-01 .image img{ max-width: 100%; }
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .image{ width: 104px; }
}
.box-card-cmn-01.type-01 .box-card-detail-cmn-01{
  width: 760px;
  padding-left: 9px;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-card-detail-cmn-01{
    width: calc(100% - 104px);
    padding-left: 13px;
  }
}
.box-card-cmn-01.type-01 .box-detail{
  width: 595px;
  float: left;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-detail{ 
    width: 100%;
    float: none;
  }
}
.box-card-cmn-01.type-01 .box-detail::after{
  content: '';
  width: 100%;
  display: table;
}
.box-card-cmn-01.type-01 .box-link{
  width: 155px;
  float: left;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-link{
    text-align: right;
    float: right;
    width: 120px;
  }
  .box-card-cmn-01.type-01 .box-link .link{
    font-size: 1.5rem;
    width: 120px;
    margin: 11px 0 0 2px;
    padding: 4px 0;
  }
}
.box-card-cmn-01.type-01 .box-link::after{
  content: '';
  width: 100%;
  display: table;
}
.box-card-cmn-01.type-01 .title{ margin: 0; }
.box-card-cmn-01.type-01 .title .link{
  letter-spacing: normal; 
  font-size: 1.8rem;
}
.box-card-cmn-01.type-01 .box-link .link{
  display: inline-block;
  width: 135px;
  padding: 0px 30px;
  border: 1px solid #000;
  border-radius: 3px;
  font-size: 1.6rem;
  color: #31567e;
  text-align: center;
  margin: 31px 0 0 2px;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-link .link{
    font-size: 1.5rem;
    width: 120px;
    margin: 11px 0 0 0;
    padding: 3px 0;
  }
}
.box-card-cmn-01.type-01 .box-link .link:hover{ 
  text-decoration: none;
  color: #fff;
  background: #31567e;
 }
@media screen and (min-width: 769px){
  .box-card-cmn-01.type-01 .box-link .link::after{
    font-family: 'FontAwesome';
    content: "\f152";
    font-size: 1.4rem;
    color: #31567e;
    margin-left: 5px;
  }
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-link .link::before{
    font-family: 'FontAwesome';
    content: "\f152";
    font-size: 1.4rem;
    color: #31567e;
    margin-right: 8px;
  }
}
.box-card-cmn-01.type-01 .box-link .link:hover::after{ color: #fff; }
.box-card-cmn-01.type-01 .box-card-ft-cmn-02{
  line-height: 1.7;
  padding: 5px 0;
}
@media screen and (max-width: 767px){
  .box-card-cmn-01.type-01 .box-card-ft-cmn-02{ line-height: 1.55; }
}
/* ==========================================================
  box-card-cmn-02
========================================================== */
.box-card-cmn-02{
  background: #f4f4f4;
  padding: 20px 20px 0;
  margin: 30px 0 0;
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 {
    padding: 20px 8px 20px;
    margin: 20px 0 30px;
  }
}
.box-card-cmn-02::after{
  content: '';
  width: 100%;
  display: table;
}
.box-card-cmn-02 .image{
  width: 306px;
  margin-bottom: 20px;
  float: left;
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 .image{ width: 104px; }
}
.box-card-cmn-02 .image img{ width: 100%; }
.box-card-cmn-02 .box-card-detail-cmn-01{
  width :634px;
  float: left;
  padding-left: 13px;
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 .box-card-detail-cmn-01{ width: calc(100% - 104px); }
}
.box-card-cmn-02 .box-card-detail-cmn-01 .title{ padding-bottom: 25px; }
@media screen and (max-width: 767px){
  .box-card-cmn-02 .box-card-detail-cmn-01 .title{ padding-bottom: 10px; }
}
.box-card-cmn-02 .title .link{
  color: #a22041;
  font-size: 2.2rem;
  font-weight: bold;
}
.box-card-cmn-02 .title .link:hover{
  color: #000;
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 .title .link{
    color: #a22041;
    font-size: 1.8rem;
    font-weight: normal;
  }
}
.box-card-cmn-02 .box-link .link{
  display: inline-block;
  width: 135px;
  padding: 0 30px;
  border: 1px solid #000;
  border-radius: 3px;
  font-size: 1.6rem;
  color: #31567e;
  text-align: center;
  margin: 15px 0 0 2px;
  background: #fff;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 .box-link .link{
    font-size: 1.5rem;
    width: 117px;
    margin: 11px 0 0 2px;
    padding: 4px 30px;
  }
}
.box-card-cmn-02 .box-link{ text-align: right; }
@media screen and (min-width: 769px){
  .box-card-cmn-02 .box-link .link::after {
    font-family: 'FontAwesome';
    content: "\f152";
    font-size: 1.4rem;
    color: #31567e;
    margin-left: 5px;
  }
}
@media screen and (max-width: 767px){
  .box-card-cmn-02 .box-link{
    text-align: right;
    float: right;
  }
  .box-card-cmn-02 .box-link::after{
    content: '';
    width: 100%;
    display: table;
  }
  .box-card-cmn-02 .box-link .link::before {
    font-family: 'FontAwesome';
    content: "\f152";
    font-size: 1.4rem;
    color: #31567e;
    margin-right: 8px;
  }
}
.box-card-cmn-02 .box-link .link:hover{
  text-decoration: none;
  color: #fff;
  background: #31567e;
 }
 .box-card-cmn-02 .box-link .link:hover::after{ color: #fff; }
.box-card-cmn-02 .box-card-ft-cmn-02{ line-height: 1.7; }
@media screen and (max-width: 767px){
  .box-card-cmn-02 .box-card-ft-cmn-02{ line-height: 1.35; }
}
/* ==========================================================
  nav-pagination-cmn
========================================================== */
.nav-pagination-cmn{
  margin: 39px auto 0;
  display: inline-block;
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn{ margin: 50px auto 36px; }
}
.nav-pagination-cmn.type-01{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.nav-pagination-cmn::after{
  content: '';
  width: 100%;
  display: table;
}
.nav-pagination-cmn .page-numbers{
  display: block;
  float: left;
  padding: 3px 10px;
  font-size: 1.4rem;
  border: 1px solid #000000;
  border-radius: 3px;
  margin: 0 5px;
  color: #31567e;
  font-weight: bold;
  height: 30px;
}
.nav-pagination-cmn .page-numbers.dots{
  border: 0;
}
.nav-pagination-cmn .page-numbers.dots:hover{
  color: #31567e;
  background: #fff;
  border: 0;
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn .page-numbers{
    margin: 0 3px;
  }
  .nav-pagination-cmn.type-01 .page-numbers{
    padding: 3px 0;
  }
}
.nav-pagination-cmn .page-numbers.current,
.nav-pagination-cmn .page-numbers:hover{
  background: #31567e;
  border: 1px solid #31567e;
  color: #fff;
  text-decoration: none;
}
.nav-pagination-cmn .page-numbers.prev::before{
  font-family: 'FontAwesome';
  content: "\f191";
  font-size: 1.4rem;
  color: #31567e;
  margin-right: 5px;
}
.nav-pagination-cmn .page-numbers.next::after{
  font-family: 'FontAwesome';
  content: "\f152";
  font-size: 1.4rem;
  color: #31567e;
  margin-left: 5px;
}
.nav-pagination-cmn .page-numbers.prev:hover::before,
.nav-pagination-cmn .page-numbers.next:hover::after{
  color: #fff;
}
.nav-pagination-cmn .page-numbers.prev,
.nav-pagination-cmn .page-numbers.next{
  padding: 3px 21px;
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn.type-01 .page-numbers.prev,
  .nav-pagination-cmn.type-01 .page-numbers.next{
    padding: 4px 0;
	line-height: 1.4;
  }
}
/* ==========================================================
  nav-pagination-cmn type-01
========================================================== */
.nav-pagination-cmn.type-01 .page-numbers{
  margin: 0;
  width: 165px;
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn.type-01 .page-numbers{
    margin: 0;
    width: 33%;
  }
}
.nav-pagination-cmn.type-01 .page-numbers.prev{ text-indent: -8px; }
.nav-pagination-cmn.type-01 .page-numbers.prev::before{ margin-right: 9px; }
.nav-pagination-cmn.type-01 .page-numbers.next{ text-indent: 5px; }
.nav-pagination-cmn.type-01 .page-numbers.next::after{ margin-left: 9px; }
.nav-pagination-cmn.type-01 .page-numbers.go-back{ margin: 0 11px 0 -11px; }
.nav-pagination-cmn.type-01 .page-numbers.go-back .fa{ 
  font-size: 1.6rem;
  margin: 3px 11px 0 -12px;;
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn.type-01 .page-numbers.go-back .fa {
    margin: 2px 9px 0 -7px;
  }
}
@media screen and (max-width: 767px){
  .nav-pagination-cmn.type-01 .page-numbers.go-back{ margin: 0; line-height: 1.4; }
}
/* ==========================================================
  box-category-cmn
========================================================== */
.box-category-cmn{
  background: #ececec;
  padding: 9px 12px 6px;
  margin: 37px 0 50px;
  border-radius: 6px;
}
@media screen and (max-width: 767px){
  .box-category-cmn{
    text-align: center;
    margin: 23px 0 30px;
    padding: 6px 12px 1px;
  }
}
.box-category-cmn:not(.no-fa)::before{
  font-family: "FontAwesome";
  content: "\f15b";
  color: #444444;
  font-size: 2.2rem;
  margin-right: 15px;
}
@media screen and (max-width: 767px){
  .box-category-cmn::before{ font-size: 2rem; }
}
/* list-header-detail
---------------------------------------------------------- */
.list-header-detail{}
@media screen and (max-width: 767px){
  .list-header-detail{
    text-align: center;
    line-height: 1.8;
    margin: 18px 0 0;
  }
}
.list-header-detail .item.category::before{
  font-family: 'FontAwesome';
  content: "\f15b";
  color: #c7798d;
  margin-right: 5px;
}
.list-header-detail .item.tag::before{
  font-family: 'FontAwesome';
  content: "\f02c";
  color: #c7798d;
  margin-right: 5px;
}
/* ==========================================================
  box-header-detail-cmn
========================================================== */
.box-header-detail-cmn{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
}
.box-header-detail-cmn > .inner{
  display: inline-block;
  text-align: right;
}
@media screen and (max-width: 767px){
  .box-header-detail-cmn > .inner{
    text-align: left;
    font-size: 1.3rem;
    color: #666666;
    width: 100%;
  }
}
.box-header-detail-cmn .date{ padding-right: 10px; color: #666666; }
.box-header-detail-cmn .author{ color: #666666; }
@media screen and (max-width: 767px){
  .box-header-detail-cmn .date{
    padding: 10px 10px 0 0;
    display: inline-block;
  }
  .box-header-detail-cmn .list-sns-cmn-01{
    display: block!important;
    float: right;
    line-height: 1;
    margin: 1px 0 0 0;
  }
  .box-header-detail-cmn .list-sns-cmn-01 .item{
    display: block;
    float: left;
  }
  .box-header-detail-cmn .list-sns-cmn-01 .item:first-of-type{ margin-right: 14px; }
  .box-header-detail-cmn .list-sns-cmn-01 .link{
    color: #666666;
    font-size: 3rem;
  }
  .box-header-detail-cmn .list-header-detail .link{ color: #666666; }
}
/* ==========================================================
  box-header-sns-cmn
========================================================== */
.box-header-sns-cmn{ line-height: 1; }
.box-header-sns-cmn::after{
  content: '';
  width: 100%;
  display: table;
}
.box-header-sns-cmn .list-sns-cmn-01{ float: right; }
.box-header-sns-cmn .list-sns-cmn-01::after{
  content: '';
  width: 100%;
  display: table;
}
.box-header-sns-cmn .list-sns-cmn-01 .item{
  display: block;
  float: left;
}
.box-header-sns-cmn .list-sns-cmn-01 .item:not(:last-of-type){ margin-right: 10px; }
.box-header-sns-cmn .list-sns-cmn-01 .item .link{
  color: #666666;
  font-size: 2.6rem;
}
/* ==========================================================
  box-pdf-cmn-01
========================================================== */
.box-pdf-cmn-01{}
.box-pdf-cmn-01 .link.pdf{
  display: inline-block;
  font-size: 1.6rem;
  color: #31567e;
  font-weight: bold;
  border-radius: 3px;
  padding: 2px 29px 1px;
  margin-top: 6px;
  border: 1px solid #000000;
}
@media screen and (max-width: 767px){
  .box-pdf-cmn-01 .link.pdf{
    font-weight: normal;
    padding: 2px 28px 1px;
  }
}
.box-pdf-cmn-01 .link.pdf::before{
  font-family: 'FontAwesome';
  color: #31567e;
  font-size: 1.6rem;
  content: "\f152";
  margin-right: 5px;
}
.box-pdf-cmn-01 .link.pdf:hover{
  background: #31567e;
  color: #fff;
  text-decoration: none;
}
.box-pdf-cmn-01 .link.pdf:hover::before{ color: #fff; }
/* ==========================================================
  box-heading-pdf-cmn-01
========================================================== */
.box-heading-pdf-cmn-01{}
@media screen and (max-width: 767px){
  .box-heading-pdf-cmn-01{ text-align: center; }
}
.box-heading-pdf-cmn-01::after{
  content: '';
  width: 100%;
  display: table;
}
.box-heading-pdf-cmn-01 .ttl-cmn-05{ float: left; }
.box-heading-pdf-cmn-01 .box-pdf-cmn-01{ float: right; }
@media screen and (max-width: 767px){
  .box-heading-pdf-cmn-01 .ttl-cmn-05{ float: none; }
  .box-heading-pdf-cmn-01 .box-pdf-cmn-01{
    float: none;
    margin-top: 16px;
  }
}
/* ==========================================================
  box-list-article-cmn-01
========================================================== */
.box-list-article-cmn-01{ padding: 34px 0 0; }
@media screen and (max-width: 767px){
  .box-list-article-cmn-01{ padding: 26px 0 0; }
}
.box-list-article-cmn-01 .ttl-cmn-04{
  font-weight: bold;
  line-height: 1.7;
}
@media screen and (max-width: 767px){
  .box-list-article-cmn-01 .ttl-cmn-04{
    font-size: 1.5rem;
    font-weight: normal;
    line-height: 1.6;
  }
}
/* ==========================================================
  box-cmn-sns
========================================================== */
.box-cmn-sns{

}
.box-cmn-sns::after{
  content: '';
  width: 100%;
  display: table;
}
.box-cmn-sns .item{ 
  margin: 0 2px; 
  float: left;
  line-height: 1;
}
@media screen and (max-width: 767px){
  .box-cmn-sns .item{

   }
}
/* ==========================================================
  Part List
========================================================== */
.part-list-page .box-post-detail-cmn{
  padding: 49px 0 0;
}
.kanko_mado_indent{
  text-indent:1em;
  display:inline-block;
}
.kanko_mado_imgbase{
  overflow:hidden;
}
.kanko_mado_imgleft{
  float:left;
  margin-right:10px;
}
.kanko_mado_imgleft_05-03{
  float:left;
  margin-right:0;
  width:33%;
}
.kanko_mado_imgleft_half{
  float:left;
  margin-right:0;
  width:49%;
}
.kanko_mado_imgright{
  float:right;
  margin-left:10px;
}
.kanko_square {
  border: 1px solid #000000;
  padding: 1px;
}
.heiho {
  position: relative;
  top: -5px;
  font-size: 9px;
}
@media screen and (max-width: 767px){
  .part-list-page .box-post-detail-cmn{
    padding: 22px 0 0;
  }
  .box-post-detail-cmn img{ max-width: 100%; }
  .kanko_mado_imgleft{
    float:none;
    margin-right:0;
	margin-bottom:10px;
	}
  .kanko_mado_imgleft_half,
  .kanko_mado_imgleft_05-03{
	float:none;
    width:auto;
  }
  .kanko_mado_imgright{
    float:none;
    margin-left:0;
	 margin-bottom:10px;
  }
  .kanko_mado_imgclear{
    clear:both;
  }
}
.box-post-detail-cmn img{
  display: block;
  margin: auto;
}
.box-post-detail-cmn img.navi{
  display: inline;
}
.box-post-detail-cmn img.moji,
.box-post-detail-cmn img.icon{
  display: inline-block;
  margin-top: 6px;
}
.box-post-detail-cmn .w-break{
	word-break: break-all;
}
.kanko_mado_table_p10 td {
  padding: 3px 10px;
  vertical-align: top;
}
.mado_small{
  font-size:70%;
}
@media screen and (max-width: 767px){
  .kanko_mado_table_p10 td {
     padding: 1px 3px;
  }
	.kanko_mado_table_block td {
	  display:inline-block;
	}
	.kanko_mado_table_block td.third {
	  display:block;
	  margin-bottom:10px;
	}
}
.box-post-detail-cmn > p{
  padding-bottom: 20px;
  letter-spacing: 0.05em;
  line-height: 1.9;
  text-indent: 1em;
}
.box-post-detail-cmn .ttl-partlist-cmn-01{
  background: #ececec;
  color: #444444; 
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.6;
  border-radius: 6px;
  margin: 50px 0 17px 0;
  padding: 9px 10px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn .ttl-partlist-cmn-01{
    margin: 32px 0 33px 0;
    padding: 4px 10px 3px;
    text-align: center;
    border-radius: 3px;
  }
}
.box-post-detail-cmn .ttl-partlist-cmn-02{
  color: #666666;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.1;
  margin: 49px 0 15px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn .ttl-partlist-cmn-02{
    margin: 29px 0 12px;
    font-weight: normal;
  }
}
.box-post-detail-cmn .ttl-partlist-cmn-01.type-01{
  margin: 59px 0 17px 0;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn .ttl-partlist-cmn-01.type-01{
    margin: 29px 0 26px 0;
  }
}
.box-post-detail-cmn .ttl-partlist-cmn-01.type-02{
  margin: 0 0 17px 0;
}
.box-post-detail-cmn .ttl-partlist-cmn-02.type-03{
  margin: 52px 0 6px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn .ttl-partlist-cmn-02.type-03{
    margin: 30px 0 10px;
  }
}
.part-list-page .box-post-detail-cmn h1,
.part-list-page .box-post-detail-cmn h2,
.part-list-page .box-post-detail-cmn h3,
.part-list-page .box-post-detail-cmn h4,
.part-list-page .box-post-detail-cmn h5,
.part-list-page .box-post-detail-cmn h6{ 
  margin-bottom: 50px;
}
@media screen and (max-width: 767px){
  .part-list-page .box-post-detail-cmn h1,
  .part-list-page .box-post-detail-cmn h2,
  .part-list-page .box-post-detail-cmn h3,
  .part-list-page .box-post-detail-cmn h4,
  .part-list-page .box-post-detail-cmn h5,
  .part-list-page .box-post-detail-cmn h6{ 
    margin-bottom: 30px;
  } 
}
.box-post-detail-cmn h1{ 
  color: #31567e;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px){
  .box-post-detail-cmn h1{ 
    font-size: 3rem;
    text-align: center;
    margin-bottom: 30px;
  }
}
.box-post-detail-cmn h2:not(.ttl-partlist-cmn-01){
  color: #444444;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.6;
  background: #ececec;
  padding: 8px 13px 7px;
  border-radius: 6px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn h2:not(.ttl-partlist-cmn-01){
    font-size: 2rem;
    text-align: center;
    border-radius: 4px;
    padding: 4px 13px 4px;
    margin-bottom: 30px;
  }
}
.box-post-detail-cmn h3:not(.ttl-partlist-cmn-02){
  color: #666666;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 20px;;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn h3:not(.ttl-partlist-cmn-02){
    font-weight: normal;
    margin-bottom: 30px;
  }
}
.box-post-detail-cmn h4{
  color: #777777;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.1;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn h4:not(.ttl-partlist-cmn-02){
    font-weight: normal;
    font-size: 2rem;
    margin-bottom: 24px;
  }
}
.box-post-detail-cmn h5{
  color: #000;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.45;
  border-left: 3px solid #839ab2;
  padding: 0 9px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn h5{
    line-height: 1.6;
    margin-bottom: 28px;
  }
}
.box-post-detail-cmn h6{
  color: #666666;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.45;
  border-left: 3px solid #666666;
  padding: 0 9px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn h6{
    margin-bottom: 28px;
  }
}
.box-post-detail-cmn blockquote{
  margin-left: 83px;
  border-left: 5px solid #839ab2;
  padding: 4px 14px;
  margin-bottom: 20px;
}
.part-list-page .box-post-detail-cmn blockquote{
  margin-bottom: 0;
}
@media screen and (max-width: 767px){
  .part-list-page .box-post-detail-cmn blockquote {
    margin-bottom: 53px;
  }
  .box-post-detail-cmn blockquote {
    margin-left: 31px;
    border-left: 4px solid #839ab2;
    line-height: 1.7;
    margin-bottom: 30px;
  }
}
.box-post-detail-cmn .box-panel-01,
.box-post-detail-cmn .box-panel-02,
.box-post-detail-cmn .box-panel-03{
  line-height: 1.75;
  padding: 15px 20px;
  border-radius: 6px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn .box-panel-01,
  .box-post-detail-cmn .box-panel-02,
  .box-post-detail-cmn .box-panel-03{
    line-height: 1.7;
    padding: 8px 13px;
    border-radius: 3px;
    margin-bottom: 30px;
  }
}
.box-post-detail-cmn .box-panel-01{
  border: 1px solid #bbbbbb;
  background: #fff;
}
.box-post-detail-cmn .box-panel-02{
  background: #fbeff2;
}
.box-post-detail-cmn .box-panel-03{
  background: #e2e9f1;
}
/* box-table-reponsive table
---------------------------------------------------------- */
.box-post-detail-cmn .box-table-reponsive table{
  width: 100%;
  margin-bottom: 30px;
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column.is-tbl-scroll table{
	width: auto;
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column.is-tbl-scroll table tr:first-child td{
	width: 137px!important;
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column.is-tbl-scroll table tr:first-child th{
	width: 168px!important;
}
  .box-post-detail-cmn .box-table-reponsive.w30 table{
    width: 30%;
  }
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive table{
    width: 800px;
  }
    .box-post-detail-cmn .box-table-reponsive.w30 table{
      width: 100%;
    }
}
.box-post-detail-cmn .box-table-reponsive.tbl-two-column table{
  border-top: 1px solid #bbbbbb;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-two-column table,
  .box-post-detail-cmn .box-table-reponsive.tbl-two-column table tbody{
    display: block;
  }
}
.box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr,
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr{
  border-bottom: 1px solid #bbbbbb;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr{ display: block; }
}
.box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr td,
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr td{
  padding: 15px;
  vertical-align: top;
}
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column.tbl-03 table tr th{
    vertical-align: top;
  }
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column.tbl-03 table tr td{
    padding: 15px 6px;
  }
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr td{
  width: 404px;
}
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column.tbl-03 table tr td{
    width: auto;
  }
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr td{ 
    display: block;
    padding: 1px 9px 9px;
  }
}
.box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr th,
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr th{
  padding: 17px 15px 17px 0;
  font-weight: bold;
  line-height: 1.85;
}
.box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr th{
  width: 168px;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-two-column table tr th{
    width: 100%;
    display: block;
    color: #444444;
    padding: 13px 10px 8px;
    line-height: 1.2;
  }
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) td:nth-child(1){
  width: 168px;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) td:nth-child(1){
    width: 214px;
  }
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) th{
  padding: 3px 2px;
  width: 168px;
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr th{
  padding: 3px 17px 3px 0;
  width: 168px;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) th {
    padding: 3px 2px 0px;
    line-height: 1.6;
  }
}
.box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) strong{
  display: block;
  height: 100%;
  background: #eeeeee;
  color: #444444;
  font-weight: bold;
  text-align: center;
  padding: 15px 15px 15px 0;
  margin: 0;
}
@media screen and (max-width: 768px){
  .box-post-detail-cmn .box-table-reponsive.tbl-three-column table tr:nth-child(1) span{ padding: 12px 15px 6px 0; }
}
.space-first-letter{ text-indent: 1em; }
.part-list-page .box-post-detail-cmn p:last-of-type{
  margin-bottom: 0;
}
.box-post-detail-cmn ol,
.box-post-detail-cmn ul{ margin-bottom: 43px; }
@media screen and (max-width: 767px){
  .box-post-detail-cmn ol,
  .box-post-detail-cmn ul{ margin-bottom: 58px; }
  .box-post-detail-cmn ol{ margin-bottom: 23px; }
}
.box-post-detail-cmn ol > li,
.box-post-detail-cmn ul > li{
  line-height: 1.8;
  position: relative;
}
.box-post-detail-cmn ul > li::before {
  font-family: "FontAwesome";
  content: "\f10c";
  color: #31567e;
  padding-right: 5px;
  position: absolute;
  left: -17px;
  top: 0px;
}
.box-post-detail-cmn ul > li > ul{
  margin-bottom: 0;
  padding: 0 0 8px 30px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn ul > li > ul {
    padding: 9px 15px 18px 35px;
  }
}
.box-post-detail-cmn ul > li > ul > li {
  
}
.box-post-detail-cmn ul > li > ul > li::before {
  content: '・';
  color: #31567e;
}
.box-post-detail-cmn ol > li{
  list-style-type: decimal;
  list-style-position: outside;
}
.box-post-detail-cmn ol > li > ol{
  margin-bottom: 0;
  padding: 0 0 9px 30px;
}
@media screen and (max-width: 767px){
  .box-post-detail-cmn ol > li > ol {
    padding: 9px 14px 13px 30px;
  }
}
.box-post-detail-cmn ol > li > ol > li{
  list-style-type: decimal;
  list-style-position: outside;
}
.part-list-page .box-partlist-01 > ol,
.part-list-page .box-partlist-01 > ul{
  display: block;;
  width: 50%;
  float: left;
}
.box-post-detail-cmn ol,
.box-post-detail-cmn ul{
  padding-left: 21px;
}
@media screen and (max-width: 767px){
  .part-list-page .box-partlist-01 > ol,
  .part-list-page .box-partlist-01 > ul{
    width: 100%;
  } 
}
.box-post-detail-cmn ol{ padding-left: 27px; }
.part-list-page .box-partlist-01 > ol{ padding-left: 27px; }
@media screen and (max-width: 767px){
  .box-post-detail-cmn ol{ padding-left: 24px; }
  .part-list-page .box-partlist-01 > ol{ padding-left: 24px; }
}
.part-list-page .box-partlist-01::after{
  content: '';
  width: 100%;
  display: table;
}
.part-list-page .box-post-detail-cmn .box-partlist-01{
  margin-bottom: 0;
}
@media screen and (max-width: 767px){
  .part-list-page .box-post-detail-cmn .box-partlist-01{
    padding-left: 6px;
  }
}
.box-post-detail-cmn .box-table-reponsive.is-tbl-scroll{
	overflow-x: scroll;
}
.box-post-detail-cmn .tbl-three-column.is-tbl-scroll tr:first-child th{
	width: 298px;
}
@media screen and (max-width: 767px){

  .box-post-detail-cmn .box-table-reponsive{
    width: 100%;
  }
}
.img-link{
  display: block;
  float: left;
}
.img-link:hover{
  -ms-filter: 'alpha( opacity=70)';
  filter: alpha( opacity=70);
  opacity: 0.7;
}
/* box-404-content-01
---------------------------------------------------------- */
@media screen and (max-width: 767px){
  .box-404-content-01{
    padding: 0 14px;
    line-height: 1.5;
    min-height: 273px;
  }
}
@media screen and (max-width: 767px){
  .bg-overlay{
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
  }
}