@charset "UTF-8";
/**
 * IIISについて
 *
 */
/* ==========================================================================
  01. index
  ========================================================================== */
/* ==========================================================================
 index
 ========================================================================== */
.ttlBox__txt--large p:last-child {
  margin-bottom: 0; }

.ttlBox__txt__lead {
  font-weight: 700;
  line-height: 2; }
  .ttlBox__txt__lead span {
    display: block;
    font-weight: 500; }

h3 + .ttlBox__txt__lead {
  margin-top: 20px; }

.header__main {
  display: block; }

@media screen and (min-width: 768px) {
  .ttlBox__ttl--small {
    width: 38%; }
  .ttlBox__txt--large {
    background: #fff;
    padding: 30px 0 80px 65px;
    position: relative;
    width: 62%;
    z-index: 5;
    margin-bottom: 40%; }
    .ttlBox__txt--large p {
      margin-bottom: 40px;
      font-size: 16px;
      font-size: 1.6rem; }
  .ttlBox__txt__lead {
    margin-bottom: 40px;
    font-size: 18px;
    font-size: 1.8rem; }
    .ttlBox__txt__lead span {
      display: block;
      margin-bottom: 5px; }
  .ttlBox__inner {
    position: relative; }
    .ttlBox__inner:after {
      content: '';
      display: block;
      clear: both; }
  .header__main {
    position: absolute;
    bottom: 0;
    left: 0;
    height: auto; }
    .header__main img {
      width: 100%; } }

@media screen and (max-width: 767px) {
  .ttlBox__txt__lead {
    margin-bottom: 16px;
    font-size: 16px;
    font-size: 1.6rem; }
    .ttlBox__txt__lead span {
      display: block; }
  .ttlBox__txt--large {
    margin-bottom: 21px; }
    .ttlBox__txt--large p {
      margin-bottom: 21px; }
  .header__main {
    padding: 0 10px; } }

/* .feature-box
 ========================================================================== */
.feature-box .box p {
  line-height: 2; }

.feature-box .box img {
  width: 100%; }

@media screen and (min-width: 768px) {
  .feature-box {
    margin-top: 75px; }
    .feature-box .box {
      width: 52%; }
      .feature-box .box:first-child {
        width: 48%;
        padding-right: 5%; }
      .feature-box .box p {
        font-size: 16px;
        font-size: 1.6rem; } }

@media screen and (max-width: 767px) {
  .feature-box {
    margin-top: 34px; }
    .feature-box .box {
      float: none; }
      .feature-box .box:first-child {
        margin-bottom: 20px; } }

/* ==========================================================================
   02. message
   ========================================================================== */
@media screen and (min-width: 768px) {
  .header__wrapper {
    margin-bottom: 80px; } }

@media screen and (max-width: 767px) {
  .header__wrapper {
    margin-bottom: 20px; } }

/* headMain
 ========================================================================== */
.headMain__pic {
  display: block; }
  .headMain__pic img {
    width: 100%; }

.headMain__name {
  font-weight: 500;
  line-height: 1; }

.headMain__txt__item {
  display: inline-block;
  position: relative; }
  .headMain__txt__item .headMain__txt__item__txt {
    color: #fff;
    display: inline-block;
    line-height: 1;
    position: relative;
    z-index: 1;
    -webkit-transition-duration: .5s;
            transition-duration: .5s;
    -webkit-transition-delay: .5s;
            transition-delay: .5s;
    opacity: 0; }
    .headMain__txt__item .headMain__txt__item__txt.show {
      opacity: 1; }
  .headMain__txt__item .bgBlack {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 100%;
    z-index: 0;
    -webkit-transition-duration: .5s;
            transition-duration: .5s;
    -webkit-transition-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
            transition-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22); }
    .headMain__txt__item .bgBlack.show {
      width: 100%; }

@media screen and (min-width: 768px) {
  .gnav__wrap {
    float: right; }
  .headMain {
    position: relative;
    float: left;
    width: calc(100% - 150px);
    padding-right: 7.5%;
    overflow: hidden; }
  .headMain__cont {
    position: absolute;
    left: 0;
    top: 50%;
    width: 600px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition-duration: 1s;
            transition-duration: 1s;
    -webkit-transition-delay: .25s;
            transition-delay: .25s; }
  .headMain__txt__item__txt {
    padding: 19px 26px 19px 36px; }
  .headMain__name {
    margin-bottom: 10px;
    font-size: 16px;
    font-size: 1.6rem; }
    .headMain__name .headMain__txt__item__txt {
      padding: 12px 26px 12px 36px; }
  .headMain__lead {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", serif;
    font-size: 36px;
    font-size: 3.6rem; }
    .headMain__lead.headMain__lead--first {
      margin-bottom: 2px; } }

@media screen and (max-width: 767px) {
  .headMain {
    position: relative; }
  .headMain__cont {
    position: absolute;
    left: 0;
    top: 50%;
    width: 80%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition-duration: 1s;
            transition-duration: 1s;
    -webkit-transition-delay: .25s;
            transition-delay: .25s; }
  .headMain__txt__item__txt {
    padding: 10px 8px 10px 13px; }
  .headMain__name {
    margin-bottom: 5px;
    font-size: 12px;
    font-size: 1.2rem; }
    .headMain__name .headMain__txt__item__txt {
      padding: 5px 8px 5px 13px; }
  .headMain__lead {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", serif;
    font-size: 17px;
    font-size: 1.7rem; }
    .headMain__lead.headMain__lead--first {
      margin-bottom: 2px; } }

/* .messageSct
 ========================================================================== */
.messageSct p {
  line-height: 2; }
  .messageSct p:last-child {
    margin-bottom: 0; }

.messageSct__ttl {
  font-weight: 400;
  font-family: "Crimson Text", serif;
  letter-spacing: .1em;
  line-height: 1;
  padding-bottom: 5px; }
  .messageSct__ttl span {
    border-bottom: 3px solid #000;
    padding-bottom: 5px; }

.messageSct__sign {
  text-align: right;
  display: block;
  overflow: hidden; }

@media screen and (min-width: 768px) {
  .messageSct {
    width: calc(100% - 150px);
    padding-right: 7.5%; }
    .messageSct p {
      margin-bottom: 42px;
      font-size: 16px;
      font-size: 1.6rem; }
  .messageSct__ttl {
    margin-bottom: 30px;
    font-size: 20px;
    font-size: 2rem; }
  .messageSct__sign {
    min-height: 40px; }
    .messageSct__sign svg {
      width: 260px; } }

@media screen and (max-width: 767px) {
  .messageSct {
    padding: 0 20px; }
    .messageSct p {
      margin-bottom: 34px; }
      .messageSct p br {
        display: none; }
  .messageSct__ttl {
    padding-top: 20px;
    margin-bottom: 24px;
    font-size: 18px;
    font-size: 1.8rem; }
  .messageSct__sign {
    min-height: 29px; }
    .messageSct__sign svg {
      width: 170px; } }

/* ==========================================================================
   03. publicity
   ========================================================================== */
@media screen and (min-width: 768px) {
  .ttlBox {
    margin-bottom: 80px; } }

@media screen and (max-width: 767px) {
  .ttlBox {
    margin-bottom: 40px; } }

/* .pamphletSct
 ========================================================================== */
.pamphletSct {
  border-bottom: 1px solid #ccc; }

.pamphletSct__list {
  font-size: 0;
  overflow: hidden; }
  .pamphletSct__list li {
    display: inline-block; }
  .pamphletSct__list .pamphletSct__list__img {
    display: block; }
    .pamphletSct__list .pamphletSct__list__img img {
      width: 100%; }
  .pamphletSct__list .pamphletSct__list__txt {
    font-weight: 700; }
    .pamphletSct__list .pamphletSct__list__txt a {
      text-decoration: underline; }

@media screen and (min-width: 768px) {
  .pamphletSct {
    padding-bottom: 80px;
    margin-bottom: 70px; }
    .pamphletSct .line-ttl {
      margin-bottom: 34px; }
  .pamphletSct__list {
    margin-bottom: -5%; }
    .pamphletSct__list li {
      width: 21.25%;
      overflow: hidden;
      font-size: 14px;
      font-size: 1.4rem; }
      .pamphletSct__list li:nth-child(n+1) {
        margin: 0 5% 5% 0; }
      .pamphletSct__list li:nth-child(4n) {
        margin-right: 0; }
    .pamphletSct__list .pamphletSct__list__img {
      margin-bottom: 30px; }
    .pamphletSct__list .pamphletSct__list__txt a:hover {
      text-decoration: none; } }

@media screen and (max-width: 767px) {
  .pamphletSct {
    margin-bottom: 40px;
    padding: 0 20px 40px; }
    .pamphletSct .line-ttl {
      margin-bottom: 21px; }
  .pamphletSct__list {
    margin-bottom: -4%; }
    .pamphletSct__list li {
      width: 48%;
      overflow: hidden;
      font-size: 14px;
      font-size: 1.4rem; }
      .pamphletSct__list li:nth-child(n+1) {
        margin: 0 4% 4% 0; }
      .pamphletSct__list li:nth-child(2n) {
        margin-right: 0; }
    .pamphletSct__list .pamphletSct__list__img {
      margin-bottom: 15px; } }

/* .bookSct
 ========================================================================== */
.bookSct__list {
  font-size: 0;
  overflow: hidden; }
  .bookSct__list li {
    display: inline-block;
    vertical-align: top; }
  .bookSct__list .bookSct__list__img {
    display: block; }
    .bookSct__list .bookSct__list__img img {
      width: 100%; }
  .bookSct__list .bookSct__list__cont {
    font-size: 14px;
    font-size: 1.4rem; }
  .bookSct__list .bookSct__list__cont__ttl {
    font-weight: 700;
    line-height: 1.55; }
  .bookSct__list .bookSct__list__cont__author {
    font-weight: 700; }
  .bookSct__list .bookSct__list__cont__txt {
    line-height: 2; }

@media screen and (min-width: 768px) {
  .bookSct .line-ttl {
    margin-bottom: 34px; }
  .bookSct__list {
    margin-bottom: -5%; }
    .bookSct__list li {
      width: 47.5%;
      overflow: hidden; }
      .bookSct__list li:nth-child(n+1) {
        margin: 0 5% 5% 0; }
      .bookSct__list li:nth-child(2n) {
        margin-right: 0; }
    .bookSct__list .bookSct__list__img {
      float: left;
      width: 45%; }
    .bookSct__list .bookSct__list__cont {
      float: right;
      width: 45%; }
    .bookSct__list .bookSct__list__cont__ttl {
      margin-bottom: 13px;
      padding-top: 15px;
      font-size: 18px;
      font-size: 1.8rem; }
    .bookSct__list .bookSct__list__cont__author {
      margin-bottom: 16px; } }

@media screen and (max-width: 767px) {
  .bookSct {
    padding: 0 20px; }
    .bookSct .line-ttl {
      margin-bottom: 21px; }
  .bookSct__list {
    margin-bottom: -4%; }
    .bookSct__list li {
      width: 100%;
      margin-bottom: 40px;
      padding-bottom: 40px;
      border-bottom: 1px dotted #ccc; }
      .bookSct__list li:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none; }
    .bookSct__list .bookSct__list__img {
      width: 50%;
      margin: 0 auto 20px; }
    .bookSct__list .bookSct__list__cont__ttl {
      margin-bottom: 10px;
      font-size: 16px;
      font-size: 1.6rem; }
    .bookSct__list .bookSct__list__cont__author {
      margin-bottom: 8px; } }

/* ==========================================================================
   04. Q and A
   ========================================================================== */
/* ==========================================================================
 faq
 ========================================================================== */
/* .qa-main
 ========================================================================== */
.qa-main__inner {
  background-color: #f4f5fd;
  border-radius: 8px;
  position: relative; }
  .qa-main__inner:before, .qa-main__inner:after {
    content: '';
    position: absolute; }

.qa-main__ttl {
  text-align: center; }

.qa-main__txt {
  line-height: 2; }

@media screen and (min-width: 768px) {
  .qa-main {
    margin-bottom: 45px; }
  .qa-main__inner {
    border: 4px solid #364387;
    padding: 100px 0 80px; }
    .qa-main__inner:before {
      background: url(/resource/about/css/img/faq_bg_main_l.png) no-repeat left 0;
      background-size: 408px auto;
      bottom: 62px;
      left: 4%;
      width: 408px;
      height: 272px; }
    .qa-main__inner:after {
      background: url(/resource/about/css/img/faq_bg_main_r.png) no-repeat left 0;
      background-size: 159px auto;
      bottom: 45px;
      right: 4%;
      width: 159px;
      height: 366px; }
  .qa-main__ttl {
    margin-bottom: 35px; }
  .qa-main__txt {
    width: 480px;
    margin: 0 auto;
    text-align: center; } }

.sns_btn {
  letter-spacing: -.40em;
  margin-top: 34px; }
  .sns_btn li {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: middle;
    vertical-align: middle; }
    .sns_btn li.tw {
      padding-top: 15px;
      margin-left: 5px; }

@media screen and (max-width: 767px) {
  .qa-main {
    margin: 20px 0 30px; }
  .qa-main__inner {
    border: 2px solid #364387;
    padding: 30px 25px 30px; }
    .qa-main__inner:before {
      display: none; }
    .qa-main__inner:after {
      display: none; }
  .qa-main__ttl {
    margin-bottom: 13px; }
  .qa-main__txt {
    font-size: 11px;
    font-size: 1.1rem; } }

/* .qa-pagenav
 ========================================================================== */
@media screen and (min-width: 768px) {
  .qa-pagenav {
    border-radius: 30px;
    background-color: #364387;
    display: -webkit-box;
    display: flex;
    height: 60px;
    overflow: hidden; }
    .qa-pagenav li {
      -webkit-box-flex: 1;
              flex-grow: 1;
      text-align: center; }
      .qa-pagenav li:not(:last-child) {
        border-right: 1px solid #fff; }
    .qa-pagenav a {
      color: #fff;
      display: block;
      font-weight: 700;
      position: relative;
      padding: 22px 0;
      line-height: 1;
      -webkit-transition-duration: 0.3s;
              transition-duration: 0.3s;
      font-size: 16px;
      font-size: 1.6rem; }
      .qa-pagenav a:hover {
        opacity: .7;
        text-decoration: none; }
      .qa-pagenav a span {
        position: relative;
        padding-right: 21px; }
        .qa-pagenav a span:before {
          content: '';
          border-top: 1px solid #fff;
          border-right: 1px solid #fff;
          height: 7px;
          width: 7px;
          margin: auto;
          position: absolute;
          top: -4px;
          bottom: 0;
          right: 0;
          -webkit-transform: rotate(135deg);
                  transform: rotate(135deg); } }

@media screen and (max-width: 767px) {
  .qa-pagenav__wrap {
    padding: 0 20px; }
  .qa-pagenav {
    height: 40px; }
    .qa-pagenav.active {
      height: auto; }
      .qa-pagenav.active li {
        display: block !important; }
        .qa-pagenav.active li:first-child a:before {
          top: 5px;
          -webkit-transform: rotate(-45deg);
                  transform: rotate(-45deg); }
    .qa-pagenav li {
      width: 100%;
      position: relative;
      z-index: 10;
      background-color: #364387;
      border: 1px solid transparent;
      border-radius: 20px;
      -webkit-animation-duration: .5s !important;
              animation-duration: .5s !important;
      -webkit-animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
              animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }
      .qa-pagenav li:not(:first-child) {
        display: none;
        border: 1px solid #364387;
        background: #fff; }
        .qa-pagenav li:not(:first-child) a:before {
          border-color: #364387; }
        .qa-pagenav li:not(:first-child) span {
          color: #364387; }
      .qa-pagenav li:not(:last-child) {
        margin-bottom: 5px; }
      .qa-pagenav li:nth-child(2) {
        -webkit-animation-delay: .05s;
                animation-delay: .05s; }
      .qa-pagenav li:nth-child(3) {
        -webkit-animation-delay: .3s;
                animation-delay: .3s; }
      .qa-pagenav li:nth-child(4) {
        -webkit-animation-delay: .55s;
                animation-delay: .55s; }
      .qa-pagenav li:nth-child(5) {
        -webkit-animation-delay: .8s;
                animation-delay: .8s; }
      .qa-pagenav li:nth-child(6) {
        -webkit-animation-delay: 1.05s;
                animation-delay: 1.05s; }
    .qa-pagenav a {
      color: #fff;
      display: block;
      font-weight: 700;
      position: relative;
      padding: 12px 50px 12px 20px;
      line-height: 1; }
      .qa-pagenav a:before {
        content: '';
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        height: 11px;
        width: 11px;
        margin: auto;
        position: absolute;
        top: -5px;
        bottom: 0;
        right: 20px;
        -webkit-transform: rotate(135deg);
                transform: rotate(135deg); }
      .qa-pagenav a:hover {
        text-decoration: none; } }

/* .sctQa
 ========================================================================== */
.sctQa {
  position: relative; }
  .sctQa:before {
    background-color: #f4f5fd;
    border-radius: 10px;
    content: '';
    width: calc(100% - 40px);
    height: calc(100% - 130px);
    position: absolute;
    left: 20px;
    top: 30px;
    z-index: 0; }

.qaList {
  position: relative;
  z-index: 10; }

.qaList__item.qaList__item--last {
  border-bottom: none;
  margin-bottom: 0; }

.sctQa__bdr_head,
.sctQa__bdr_foot {
  position: relative;
  width: 100%;
  z-index: 5;
  overflow: hidden; }
  .sctQa__bdr_head:before,
  .sctQa__bdr_foot:before {
    content: '';
    border-radius: 50%;
    width: 100%;
    height: 200%;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

.sctQa__ttl {
  background: url(/resource/about/css/img/faq_bg_ttl.png) no-repeat left 0;
  color: #364387;
  position: relative;
  z-index: 1; }
  .sctQa__ttl span {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

@media screen and (min-width: 768px) {
  .sctQa {
    margin-bottom: 100px; }
    .sctQa:before {
      border-top: 4px solid #364387;
      border-left: 4px solid #364387;
      border-right: 4px solid #364387; }
    .sctQa:last-child {
      margin-bottom: 0; }
  .qaList {
    background: #fff url(/resource/about/css/img/faq_bg_cont.gif) repeat-y right 0;
    border-left: 4px solid #364387;
    border-right: 4px solid #364387; }
  .sctQa__ttl {
    background-size: 337px auto;
    width: 337px;
    height: 188px;
    margin: 0 auto 22px;
    font-size: 18px;
    font-size: 1.8rem; }
  .qaList {
    padding: 15px 80px 0; }
  .sctQa__bdr_head:before,
  .sctQa__bdr_foot:before {
    background: #fff url(/resource/about/css/img/faq_bg_cont.gif) repeat-y right 0;
    border: 4px solid #364387; }
  .sctQa__bdr_head {
    height: 70px; }
    .sctQa__bdr_head:before {
      top: 0; }
  .sctQa__bdr_foot {
    height: 70px; }
    .sctQa__bdr_foot:before {
      bottom: 0; } }

@media screen and (max-width: 767px) {
  .sctQa {
    margin-bottom: 40px;
    padding: 0 10px; }
    .sctQa:last-child {
      margin-bottom: 0; }
    .sctQa:before {
      border-top: 2px solid #364387;
      border-left: 2px solid #364387;
      border-right: 2px solid #364387; }
  .qaList {
    background: #fff url(/resource/about/css/img/faq_bg_cont.gif) repeat-y 104% 0;
    border-left: 2px solid #364387;
    border-right: 2px solid #364387; }
  .sctQa__ttl {
    background-size: 168px auto;
    width: 168px;
    height: 94px;
    margin: 0 auto 10px;
    font-size: 12px;
    font-size: 1.2rem; }
  .qaList {
    padding: 5px 10px 0; }
  .sctQa__bdr_head:before,
  .sctQa__bdr_foot:before {
    background: #fff url(/resource/about/css/img/faq_bg_cont.gif) repeat-y 104% 0;
    border: 2px solid #364387; }
  .sctQa__bdr_head {
    height: 25px; }
    .sctQa__bdr_head:before {
      top: 0; }
  .sctQa__bdr_foot {
    height: 25px; }
    .sctQa__bdr_foot:before {
      bottom: 0; } }
