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

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer; }

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

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

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

html {
  /* 文字サイズ：ブラウザ規定サイズ16px→10pxへ */
  font-size: 10px;
  font-size: 62.5%; }

body {
  margin: 0 auto;
  /* 文字サイズ：ページ規定サイズ14px */
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "Noto Sans Japanese", sans-serif, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo;
  line-height: 1.4;
  color: #586166;
  /*スマホで勝手に文字が大きくなる対策*/
  -webkit-text-size-adjust: 100%; }
  @media (max-width: 768px) {
    body {
      min-width: auto; } }

.wrapper {
  position: relative;
  overflow: hidden;
  z-index: 1; }

.inner {
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto; }
  .inner_base {
    max-width: 1080px; }
  .inner_full {
    max-width: 1500px; }
  .inner_large {
    max-width: 1240px; }
  .inner_middle {
    max-width: 950px; }
  .inner_small {
    max-width: 750px; }
  @media (max-width: 1279px) {
    .inner {
      width: 90%; }
      .inner .inner {
        width: 100%; } }

.row, .row_rev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .row_rev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }

/* clearfix
--------------------------------------- */
.clear {
  clear: both; }

.cf:after {
  content: "";
  clear: both;
  display: table; }

/* linkstyle
--------------------------------------- */
a {
  color: #000;
  text-decoration: none;
  outline: none; }
  a:not(.hv_unset):hover {
    /*color:inherit;*/
    text-decoration: underline;
    outline: none; }

a img:hover {
  opacity: 0.5;
  -webkit-transition: opacity 0.3s ease 0s;
  -o-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s; }

.link_btn {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  font-size: inherit;
  font-weight: inherit; }

a.link_btn:hover {
  text-decoration: none !important;
  opacity: 0.5;
  -webkit-transition: opacity 0.3s ease 0s;
  -o-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s; }

a.link_btn img:hover {
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1; }

a.notLink,
a[href^="tel:"] {
  cursor: default;
  pointer-events: none; }

@media (max-width: 768px) {
  a img:hover,
  .link_btn:hover {
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1; }
  a[href^="tel:"] {
    cursor: default;
    pointer-events: auto; }
  a[href^="tel:"]:hover {
    color: inherit;
    text-decoration: none;
    outline: none; } }

/* img
--------------------------------------- */
img {
  max-width: 100%;
  vertical-align: bottom; }
  img._imgCenter {
    margin-left: auto;
    margin-right: auto; }

/* pc/sp
--------------------------------------- */
.spObj {
  display: none;
  visibility: hidden;
  height: 0; }

.tabObj {
  display: none;
  visibility: hidden;
  height: 0; }

.pcObj {
  display: block;
  visibility: visible;
  height: auto; }

@media (max-width: 1279px) {
  .tabObj {
    display: block;
    visibility: visible;
    height: auto; }
  .notTabObj {
    display: none;
    visibility: hidden;
    height: 0; } }

@media (max-width: 768px) {
  .spObj {
    display: block;
    visibility: visible;
    height: auto; }
  .pcObj {
    display: none;
    visibility: hidden;
    height: 0; }
  .sp_w100 {
    width: 100%; }
  .sp_mw100 {
    max-width: 100%; } }

/*ヘッダー部
----------------------- */
.header {
  position: relative;
  width: 100%;
  z-index: 40; }
  .header .fixedLeftCol {
    position: fixed;
    width: 200px;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: #fff; }
    .header .fixedLeftCol-ttl {
      width: 200px;
      height: 230px;
      background-color: #9C85CC; }
      .header .fixedLeftCol-ttl a {
        padding-top: 28px;
        padding-left: 40px;
        padding-right: 40px; }
    .header .fixedLeftCol-ttlLogo {
      display: block;
      width: 67.66px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 20px; }
    .header .fixedLeftCol-ttlSub {
      display: block;
      position: relative;
      margin-bottom: 7px;
      padding-bottom: 10px;
      color: #fff;
      line-height: 1;
      text-align: center;
      border-bottom: 1px solid #fff; }
      .header .fixedLeftCol-ttlSub:before {
        content: "\002b";
        display: block;
        position: absolute;
        width: 1.4rem;
        height: 1.4rem;
        line-height: 1.4rem;
        top: 0;
        left: 0;
        color: #fff;
        font-size: 1rem; }
      .header .fixedLeftCol-ttlSub:after {
        content: "\002b";
        display: block;
        position: absolute;
        width: 1em;
        height: 1.4rem;
        line-height: 1.4rem;
        top: 0;
        right: 0;
        color: #fff;
        font-size: 1rem; }
    .header .fixedLeftCol-ttlMain {
      display: block;
      color: #fff;
      font-size: 2.4rem;
      font-weight: 500;
      line-height: 1.3;
      text-align: center; }
    .header .fixedLeftCol-navList {
      padding-top: 40px;
      padding-left: 30px; }
    .header .fixedLeftCol-navItem {
      margin-bottom: 40px; }
    .header .fixedLeftCol-navLink {
      position: relative;
      display: inline-block;
      padding-left: 1em;
      padding-bottom: 3px;
      color: #586166;
      line-height: 1.6;
      border-bottom: 1px solid #fff; }
      .header .fixedLeftCol-navLink:before {
        content: "\f105";
        position: absolute;
        display: inline-block;
        width: 1em;
        height: 1em;
        top: 4px;
        left: 0;
        font-size: 1rem;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1.4rem; }
      .header .fixedLeftCol-navLink:hover {
        border-bottom: 1px solid #9C85CC;
        text-decoration: none; }
  @media (max-width: 768px) {
    .header-ContWrapSP {
      position: fixed;
      width: 100%;
      height: 70px;
      z-index: 11; }
    .header-spTtl {
      position: relative;
      padding-top: 15px;
      padding-bottom: 15px;
      background-color: #9C85CC;
      z-index: 2; }
      .header-spTtl a {
        position: relative;
        padding-left: calc(5% + 48px + 10px); }
        .header-spTtl a:before {
          content: "";
          position: absolute;
          display: block;
          width: 48px;
          height: 40px;
          top: 0px;
          left: 5%;
          background-image: url(../img/logo.png);
          background-repeat: no-repeat;
          background-position: 0 0;
          background-size: 100%; }
    .header-spTtlSub {
      display: block;
      color: #fff;
      font-size: 1.3rem;
      letter-spacing: 2px; }
    .header-spTtlMain {
      display: block;
      color: #fff;
      font-size: 1.5rem;
      line-height: 1.6; }
    .header-spNav {
      position: fixed;
      display: none;
      padding-top: 70px;
      top: 0;
      left: 0;
      color: #000;
      width: 100%;
      height: 100%;
      background-color: #fff;
      overflow-y: scroll;
      z-index: 1; }
    .header-spNavList {
      width: 100%;
      margin: 0 auto 0;
      padding-top: 60px;
      padding-bottom: 60px;
      padding-left: 8%;
      padding-right: 8%; }
    .header-spNavItem {
      position: relative;
      width: 100%;
      margin-bottom: 20px; }
      .header-spNavItem a {
        position: relative;
        display: inline-block;
        padding-left: 1em;
        padding-bottom: 10px;
        color: #586166;
        font-size: 1.8rem;
        font-weight: 500;
        line-height: 1.6; }
        .header-spNavItem a:before {
          content: "\f105";
          position: absolute;
          display: inline-block;
          width: 1em;
          height: 1em;
          top: 4px;
          left: 0;
          font-size: 1.4rem;
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          line-height: 1.8rem; }
        .header-spNavItem a:hover {
          text-decoration: none; }
    .header-spNavAccess {
      position: relative;
      height: 70px;
      margin-bottom: 25px;
      color: #fff;
      font-size: 1.8rem;
      text-align: center;
      line-height: 70px;
      background-color: #6579CC; }
      .header-spNavAccess a {
        position: relative; }
        .header-spNavAccess a:before {
          content: "";
          position: absolute;
          display: block;
          width: 22px;
          height: 31px;
          top: 0;
          bottom: 0;
          margin-top: auto;
          margin-bottom: auto;
          left: 20px;
          background-image: url(../img/icon_02.png);
          background-repeat: no-repeat;
          background-position: 0 0;
          background-size: 100%; }
    .header-spNavMainLink {
      height: 70px;
      color: #fff;
      font-size: 1.8rem;
      text-align: center;
      line-height: 70px;
      background-color: #02A7D7; }
      .header-spNavMainLink a {
        position: relative;
        padding-left: calc(15px + 33.72px + 10px); }
        .header-spNavMainLink a:before {
          content: "";
          position: absolute;
          display: block;
          width: 33.72px;
          height: 29.62px;
          top: 0;
          bottom: 0;
          margin-top: auto;
          margin-bottom: auto;
          left: 15px;
          background-image: url(../img/logo.png);
          background-repeat: no-repeat;
          background-position: 0 0;
          background-size: 100%; }
    .header-spNavToggle {
      display: block;
      position: absolute;
      /* bodyに対しての絶対位置指定 */
      right: 0;
      top: 10px;
      width: 60px;
      height: 60px;
      cursor: pointer;
      z-index: 41;
      text-align: center; }
      .header-spNavToggle p {
        padding-bottom: 5px;
        color: #fff;
        font-size: 1.2rem;
        font-weight: 600;
        text-align: center; }
      .header-spNavToggle span {
        display: block;
        position: absolute;
        /* .navToggleに対して */
        width: 30px;
        border-bottom: solid 3px #fff;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        -o-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto; }
        .header-spNavToggle span:nth-of-type(1) {
          top: 23.5px; }
        .header-spNavToggle span:nth-of-type(2) {
          top: 33.5px; }
        .header-spNavToggle span:nth-of-type(3) {
          top: 43.5px; }
      .header-spNavToggle._positive span:nth-of-type(1) {
        top: 32px;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }
      .header-spNavToggle._positive span:nth-of-type(2),
      .header-spNavToggle._positive span:nth-of-type(3) {
        top: 32px;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); } }

@media screen and (max-height: 650px) {
  .header .fixedLeftCol-navItem {
    margin-bottom: 20px; } }

/* 画面固定部
----------------------- */
.fixedRightBtn {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 64px;
  height: 220px;
  z-index: 30;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }
  .fixedRightBtn a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #6579CC; }
  .fixedRightBtn span {
    display: block; }
  .fixedRightBtn ._icon {
    width: 100%;
    height: 55px;
    margin-bottom: 10px;
    padding-top: 16px;
    text-align: center;
    background-color: #4255A2; }
    .fixedRightBtn ._icon img {
      width: 21.99px;
      height: 23.29px;
      vertical-align: unset; }
  .fixedRightBtn ._txt {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 100%;
    line-height: 64px;
    text-align: center;
    color: #fff;
    font-size: 1.8rem; }
  .fixedRightBtn a:hover {
    background-color: #4255A2;
    text-decoration: none !important; }
  .fixedRightBtn._hide {
    right: -70px; }
  @media (max-width: 768px) {
    .fixedRightBtn {
      right: unset;
      width: 100%;
      height: 50px; }
      .fixedRightBtn a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
      .fixedRightBtn ._icon {
        width: 50px;
        height: 50px;
        margin-bottom: unset;
        padding-top: 16px; }
        .fixedRightBtn ._icon img {
          width: 20px;
          height: 21.19px; }
      .fixedRightBtn ._txt {
        -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
        writing-mode: unset;
        width: calc(100% - 50px);
        line-height: 50px;
        font-size: 1.6rem; }
      .fixedRightBtn._hide {
        right: unset;
        bottom: -60px; } }

/*フッター部
----------------------- */
.footer {
  position: relative;
  width: 100%;
  padding-top: 100px;
  padding-left: 200px;
  background-color: #fff;
  z-index: 20; }
  .footer-banList {
    margin-bottom: 100px; }
  .footer-banItem {
    position: relative;
    width: calc(360 / 750 * 100%);
    max-width: 360px;
    height: 130px;
    z-index: 1; }
    .footer-banItem._contact {
      background-color: #82A5D7;
      overflow: hidden; }
      .footer-banItem._contact a {
        position: relative;
        z-index: 2; }
      .footer-banItem._contact p {
        position: absolute;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
        left: 0;
        width: 100%;
        height: 30px;
        text-align: center;
        color: #fff;
        font-size: 2rem;
        font-weight: 500;
        line-height: 30px; }
        .footer-banItem._contact p:before {
          content: "\003f";
          position: relative;
          display: inline-block;
          width: 30px;
          height: 30px;
          margin-right: 10px;
          border-radius: 50%;
          border: 2px solid #fff; }
      .footer-banItem._contact:before {
        content: "";
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #6579CC;
        -webkit-transition: 0.5s;
        -o-transition: 0.5s;
        transition: 0.5s;
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
        z-index: 1; }
      .footer-banItem._contact:hover a {
        opacity: 1; }
      .footer-banItem._contact:hover:before {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0); }
    .footer-banItem._access {
      padding: 20px;
      line-height: 1.6;
      background-color: #F5F5F5; }
  .footer-copyright {
    padding-top: 17px;
    padding-bottom: 17px;
    color: #fff;
    text-align: center;
    background-color: #9C85CC; }
  @media (max-width: 768px) {
    .footer {
      padding-top: 35px;
      padding-left: 0; }
      .footer-banList {
        margin-bottom: 30px; }
      .footer-banItem {
        width: 100%;
        max-width: unset;
        height: auto; }
        .footer-banItem._contact {
          margin-bottom: 25px; }
          .footer-banItem._contact a {
            padding-top: 15px;
            padding-bottom: 15px; }
          .footer-banItem._contact p {
            position: relative; }
        .footer-banItem._access {
          padding: 20px 15px; }
      .footer-copyright {
        padding-left: 15px;
        padding-right: 15px;
        font-size: 1.2rem; } }

/* ---------------------------------------
_ページ共通
--------------------------------------- */
/* main：ページ別コンテンツ格納部 */
.main {
  position: relative;
  width: 100%;
  padding-left: 200px;
  z-index: 10; }
  @media (max-width: 768px) {
    .main {
      padding-top: 70px;
      padding-left: 0; } }

/* sec：セクション */
/*
__参考：サイト全体の基本的な階層関係
--------------------------------------
<body>
  <wrapper>：階層 0　サイト全体の階層序列の基礎　z-index:1; を指定
      <loading></loading>：階層 6 Z-index: 60;
      <modal></modal>：階層 5 Z-index: 50;

      <header>：階層 4 Z-index: 40;
          <headToggle></headToggle>：階層 4-1 Z-index: 41; SPハンバーガーメニューのトグルボタンなど
      </header>

      <main>：階層 1 Z-index: 10;
          ※main内の要素の重なり順は、スタック文脈に準じ、main内でのみ機能
          <layerA></layerA>：階層 1-2 Z-index: 12;
          <layerB></layerB>：階層 1-3 Z-index: 13;
          <layerC></layerC>：階層 1-4 Z-index: 14;
          <layerD></layerD>：階層 1-5 Z-index: 15;

          <parallax></parallax>：階層 1-1 Z-index: 11;
      </main>

      <fixed></fixed>：階層 3 Z-index: 30;
      <footer></footer>：階層 2 Z-index: 20;
  </wrapper>
</body>
--------------------------------------
*/
/* heading：見出し */
.heading1 {
  margin-bottom: 50px;
  text-align: center; }
  .heading1-main {
    display: block;
    margin-bottom: 25px;
    color: #fff;
    font-size: 3rem;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 2px; }
  .heading1-sub {
    display: block;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500; }
  .heading1._1 .heading1-main {
    color: #9C85CC; }
  .heading1._1 .heading1-sub {
    color: #3B4043; }
  @media (max-width: 768px) {
    .heading1-inner {
      padding-bottom: 5px; }
      .heading1-inner:after {
        bottom: calc(50% - 4px); }
    .heading1-sub {
      position: relative;
      display: block;
      padding-top: 5px;
      left: unset;
      bottom: unset; } }

.heading2 {
  position: relative;
  margin-bottom: 25px;
  color: #9C85CC;
  font-size: 2.0rem;
  font-weight: bold;
  letter-spacing: 2px; }
  .heading2:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    background-color: #D9D9D9; }
  .heading2 span {
    position: relative;
    display: inline-block;
    padding: 3px 10px 3px 0;
    background-color: #F1EAFF; }
  @media (max-width: 768px) {
    .heading2 {
      font-size: 1.4rem;
      letter-spacing: unset; } }

.heading3 {
  position: relative;
  margin-bottom: 35px;
  padding-top: 5px;
  padding-left: 40px;
  color: #586166;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4; }
  .heading3-num {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    color: #9C85CC;
    font-size: 3rem;
    font-weight: 600;
    font-family: 'Oswald', sans-serif;
    line-height: 1; }
  @media (max-width: 768px) {
    .heading3 {
      padding-top: 0;
      font-size: 1.4rem; }
      .heading3-num {
        font-size: 2rem; } }

.heading4 {
  position: relative;
  margin-bottom: 5px;
  color: #586166;
  font-weight: bold; }
  .heading4:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    background-color: #586166; }
  .heading4 span {
    position: relative;
    display: inline-block;
    padding: 3px 10px 3px 0;
    background-color: #fff; }
  @media (max-width: 768px) {
    .heading4 {
      font-size: 1.4rem; } }

/* btn：ボタン */
.btn1 {
  position: relative;
  margin-bottom: 40px;
  z-index: 1;
  height: 40px;
  background-color: #82A5D7;
  overflow: hidden; }
  @media (max-width: 768px) {
    .btn1 {
      margin-bottom: 20px; } }
  .btn1 a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    line-height: 40px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    text-align: center;
    z-index: 2; }
    .btn1 a:after {
      content: "\003009";
      display: block;
      position: absolute;
      width: 16px;
      height: 23px;
      top: 0;
      bottom: 0;
      margin-top: auto;
      margin-bottom: auto;
      left: 10px;
      font-size: 1rem;
      padding-left: 7px;
      line-height: 21px;
      border-radius: 50%;
      border: 1px solid #fff; }
    .btn1 a:hover {
      text-decoration: none; }
  .btn1:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #6579CC;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    z-index: 1; }
  .btn1:hover:before {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

/* banner：バナー */
.bannerBig {
  position: relative;
  margin-bottom: 40px;
  overflow: hidden; }
  .bannerBig a {
    position: relative; }
    .bannerBig a:before {
      content: "";
      position: absolute;
      display: block;
      width: calc(100% - 20px);
      height: calc(100% - 20px);
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      margin: auto;
      border: 1px solid #fff;
      z-index: 2; }
    .bannerBig a:hover {
      opacity: 1; }
  .bannerBig-ttl {
    position: absolute;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    width: 100%;
    height: 1em;
    color: #fff;
    font-size: 3rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    z-index: 2;
    display: inline-table; }
    .bannerBig-ttl:before {
      content: "\003009";
      display: block;
      position: absolute;
      width: 26px;
      height: 38px;
      top: 0;
      bottom: 0;
      margin-top: auto;
      margin-bottom: auto;
      left: 20px;
      color: #9C85CC;
      font-size: 1.7rem;
      padding-left: 12px;
      line-height: 35px;
      border-radius: 50%;
      background-color: #fff; }
  .bannerBig-img {
    position: relative;
    z-index: 1; }
  @media (max-width: 768px) {
    .bannerBig {
      margin-bottom: 20px; }
      .bannerBig-ttl {
        font-size: 1.8rem; } }

/* pgh：段落（パラグラフ） */
.pgh1 {
  line-height: 2; }
  .pgh1 a {
    color: #9C85CC;
    text-decoration: underline; }

/* トップページ/index.html
----------------------- */
.mainCatch {
  position: relative;
  overflow: hidden;
  max-height: 100vh; }
  .mainCatch-ttl {
    position: absolute;
    width: calc(426 / 1040 * 100%);
    height: calc(430 / 630 * 100%);
    max-width: 426px;
    max-height: 430px;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto; }
    @media (max-width: 768px) {
      .mainCatch-ttl {
        width: auto;
        height: 90%;
        text-align: center; }
        .mainCatch-ttl img {
          width: auto;
          height: 100%; } }
  .mainCatch-linkBox {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    text-align: right; }
  .mainCatch-access {
    display: inline-block;
    padding-left: 25px;
    padding-right: 25px; }
    .mainCatch-access a {
      position: relative;
      height: 30px;
      line-height: 24px;
      color: #6579CC;
      padding-left: 27px; }
      .mainCatch-access a:before {
        content: "";
        display: inline-block;
        position: absolute;
        width: 17px;
        height: 24px;
        top: 0;
        left: 0;
        line-height: 100%;
        background-image: url(../img/icon_01.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 100%; }
      .mainCatch-access a:hover {
        border-bottom: 1px solid #6579CC;
        opacity: 1; }
  .mainCatch-mainSite {
    display: inline-block;
    height: 60px;
    background-color: #02A7D7;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; }
    .mainCatch-mainSite a {
      position: relative;
      padding-left: calc(28px + 33.72px + 20px);
      padding-right: 20px;
      color: #fff;
      font-weight: 500;
      line-height: 60px; }
      .mainCatch-mainSite a:before {
        content: "";
        display: inline-block;
        position: absolute;
        width: 33.72px;
        height: 100%;
        top: 0;
        left: 28px;
        line-height: 100%;
        background-image: url(../img/logo.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 33.72px 29.62px; }
    @media (max-width: 1279px) {
      .mainCatch-mainSite {
        height: 48px; }
        .mainCatch-mainSite a {
          line-height: 48px; } }
  @media (max-width: 768px) {
    .mainCatch {
      background-image: url(../img/main_sp.jpg); } }

.president {
  padding-top: 15px; }
  @media (max-width: 768px) {
    .president {
      padding-top: 0; } }
  .president-ttl {
    margin-bottom: 50px; }
  .president-ttlMain {
    display: block;
    margin-bottom: 10px;
    color: #9C85CC;
    font-size: 3.6rem;
    font-weight: bold; }
  .president-ttlSub {
    display: block;
    font-size: 1.5rem; }
  @media (max-width: 768px) {
    .president-ttl {
      margin-bottom: 20px; }
    .president-ttlMain {
      font-size: 2.4rem; } }
  .president-colL {
    width: calc(200 / 750 * 100%);
    max-width: 200px; }
  .president-colLImg {
    position: relative;
    margin-bottom: 15px; }
  .president-colLTtl {
    margin-bottom: 15px; }
  .president-colLTtlSub {
    display: block;
    margin-bottom: 5px;
    color: #82A5D7;
    font-size: 1.3rem; }
  .president-colLTtlMain {
    display: block;
    color: #82A5D7;
    font-size: 1.5rem;
    font-weight: 500; }
  .president-colLPgh {
    font-size: 1.3rem;
    line-height: 1.8; }
  .president-colLTxtSwitchPC {
    display: block;
    position: relative;
    height: 50px;
    margin-top: 20px;
    line-height: 50px;
    text-align: center;
    border: 1px solid #707070;
    cursor: pointer; }
    .president-colLTxtSwitchPC:hover {
      text-decoration: none !important; }
    .president-colLTxtSwitchPC:before {
      content: "\002b";
      display: block;
      position: absolute;
      width: 28px;
      height: 28px;
      top: 0;
      bottom: 0;
      margin-top: auto;
      margin-bottom: auto;
      left: 10px;
      font-size: 2.3rem;
      text-align: center;
      line-height: 25px;
      border-radius: 50%;
      border: 1px solid #586166; }
    .president-colLTxtSwitchPC._positive:before {
      content: "\00d7";
      font-size: 1.8rem;
      line-height: 27px; }
  .president-colLTxtInnerPC {
    display: none; }
  @media (max-width: 768px) {
    .president-colL {
      width: 100%;
      max-width: unset; }
    .president-colLImg {
      margin-bottom: 20px; }
    .president .president-colLTtlSp {
      position: absolute;
      bottom: 0;
      left: 0; }
      .president .president-colLTtlSp .president-colLTtlSub,
      .president .president-colLTtlSp .president-colLTtlMain {
        display: inline-block;
        padding: 3px 7px;
        background-color: #fff; }
      .president .president-colLTtlSp .president-colLTtlSub {
        margin-bottom: 0; }
    .president-colLTxt p {
      font-size: 1.3rem;
      line-height: 1.8; }
    .president-colLTxtSwitch {
      display: block;
      position: relative;
      height: 50px;
      margin-bottom: 20px;
      line-height: 50px;
      text-align: center;
      border: 1px solid #707070; }
      .president-colLTxtSwitch:hover {
        text-decoration: none !important; }
      .president-colLTxtSwitch:before {
        content: "\002b";
        display: block;
        position: absolute;
        width: 28px;
        height: 28px;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
        left: 10px;
        font-size: 2.3rem;
        text-align: center;
        line-height: 25px;
        border-radius: 50%;
        border: 1px solid #586166; }
      .president-colLTxtSwitch._positive:before {
        content: "\00d7";
        font-size: 1.8rem;
        line-height: 27px; }
    .president-colLTxtInner {
      display: none;
      margin-bottom: 20px; }
    .president-colLTxtInnerSwitch {
      position: relative;
      display: block;
      margin-top: 20px;
      height: 40px;
      line-height: 40px;
      text-align: center;
      color: #fff;
      background-color: #8E8E8E; }
      .president-colLTxtInnerSwitch:hover {
        text-decoration: none !important; }
      .president-colLTxtInnerSwitch:before {
        content: "\00d7";
        display: block;
        position: absolute;
        width: 26px;
        height: 40px;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
        left: 10px;
        font-size: 2.6rem;
        line-height: 40px; }
    .president-colLPgh {
      padding: 15px;
      background-color: #F7F9FF; } }
  .president-colR {
    width: calc(500 / 750 * 100%);
    max-width: 500px; }

.prescription {
  padding-top: 100px;
  background-image: url(../img/prescription_back_pc.jpg);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: cover; }
  @media (max-width: 768px) {
    .prescription {
      background-image: url(../img/prescription_back_sp.jpg); } }
  .prescription-box {
    width: calc(360 / 750 * 100%);
    max-width: 360px;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .prescription-box {
        width: 100%;
        max-width: 500px;
        margin-right: auto;
        margin-left: auto; } }
  .prescription-link {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer; }
    .prescription-link:hover {
      text-decoration: none !important; }
      .prescription-link:hover img {
        opacity: 1; }
  .prescription-boxHead {
    position: relative;
    margin-bottom: 10px;
    padding-top: 30px;
    z-index: 1; }
  .prescription-boxProfile {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2; }
    .prescription-boxProfile .boxProfileName {
      display: inline-block;
      margin-bottom: 5px;
      padding: 1px 10px;
      color: #586166;
      font-size: 2.0rem;
      font-weight: 500;
      background-color: #fff; }
      .prescription-boxProfile .boxProfileName span {
        font-size: 1.4rem;
        font-weight: normal; }
    .prescription-boxProfile .boxProfileTxt {
      display: inline-block;
      padding: 1px 10px;
      color: #586166;
      font-size: 1.3rem;
      background-color: #fff; }
  .prescription-boxImg {
    position: relative;
    width: 300px;
    max-width: 80%;
    margin-left: 20%;
    overflow: hidden;
    float: right;
    z-index: 1; }
    .prescription-boxImg img {
      max-width: 100%; }
  .prescription-boxCircle {
    position: absolute;
    width: 144px;
    height: 144px;
    padding-top: 25px;
    top: 0;
    left: 0;
    border-radius: 50%;
    z-index: 2; }
    .prescription-boxCircle._green {
      background-color: rgba(36, 179, 133, 0.85); }
    .prescription-boxCircle._blue {
      background-color: rgba(36, 150, 179, 0.85); }
    .prescription-boxCircle span {
      display: block;
      color: #fff;
      text-align: center; }
      .prescription-boxCircle span.boxCircleHead {
        font-size: 1.2rem; }
      .prescription-boxCircle span.boxCircleArrow {
        font-size: 1.8rem;
        font-weight: bold; }
      .prescription-boxCircle span.boxCircleFoot {
        font-size: 1.8rem;
        font-weight: 500; }
  .prescription-boxTxt {
    margin-bottom: 10px;
    color: #fff;
    font-weight: 500;
    line-height: 1.8; }
  .prescription-boxBtn {
    position: relative;
    z-index: 1;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    text-align: center;
    border: 1px solid #fff;
    overflow: hidden; }
    .prescription-boxBtn span {
      position: relative;
      z-index: 2; }
    .prescription-boxBtn:before {
      content: "";
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: 0.5s;
      -o-transition: 0.5s;
      transition: 0.5s;
      -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      transform: translateX(-100%);
      z-index: 1; }
    .prescription-boxBtn:after {
      content: "\003009";
      display: block;
      position: absolute;
      width: 21px;
      height: 28px;
      top: 0;
      bottom: 0;
      margin-top: auto;
      margin-bottom: auto;
      left: 10px;
      font-size: 1.2rem;
      padding-left: 7px;
      line-height: 28px;
      border-radius: 50%;
      border: 1px solid #fff;
      z-index: 2; }
  .prescription-boxBtn._green:before {
    background-color: #32AC85; }
  .prescription-boxBtn._blue:before {
    background-color: #3293AB; }
  .prescription-link:hover .prescription-boxBtn:before {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.modal-box {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 50; }

.modal-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7); }

.modal-cont {
  position: absolute;
  padding: 100px 50px 0px;
  height: 90%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: #fff;
  overflow-y: scroll; }
  @media (max-width: 1279px) {
    .modal-cont {
      padding: 60px 20px 0px; } }

.modal-contInner {
  padding-bottom: 100px; }
  @media (max-width: 1279px) {
    .modal-contInner {
      padding-bottom: 20px; } }

.modal-contColL {
  width: 35.29%;
  max-width: 300px; }
  @media (max-width: 768px) {
    .modal-contColL {
      width: 100%;
      max-width: unset; } }

.modal-contColR {
  width: 58.82%;
  max-width: 500px; }
  @media (max-width: 768px) {
    .modal-contColR {
      width: 100%;
      max-width: unset; } }

.modal-contColHead {
  position: relative; }

.modal-contColImg {
  margin-bottom: 15px; }

.modal-contColIcon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 15px; }
  .modal-contColIcon .contColIconTerm {
    width: 72px; }
  .modal-contColIcon .contColIconDesc {
    width: calc(100% - 82px);
    font-size: 1.6rem;
    font-weight: 500px;
    color: #586166; }
  @media (max-width: 768px) {
    .modal-contColIcon {
      display: block;
      -ms-flex-wrap: unset;
      flex-wrap: unset;
      -webkit-box-pack: unset;
      -ms-flex-pack: unset;
      justify-content: unset;
      position: absolute;
      top: 30px;
      left: 10px; }
      .modal-contColIcon .contColIconDesc {
        width: 100%;
        padding-top: 5px;
        font-size: 1.6rem;
        font-weight: 500px;
        color: #586166; }
        .modal-contColIcon .contColIconDesc span {
          display: inline-block;
          padding: 2px 10px;
          background-color: #fff; } }

.modal-contColProfile {
  margin-bottom: 25px;
  padding-top: 10px;
  border-top: 1px solid #D9D9D9; }
  .modal-contColProfile .boxProfileName {
    display: inline-block;
    margin-bottom: 5px;
    padding: 1px 10px;
    color: #586166;
    font-size: 2.0rem;
    font-weight: 500;
    background-color: #fff; }
    .modal-contColProfile .boxProfileName span {
      font-size: 1.4rem;
      font-weight: normal; }
  .modal-contColProfile .boxProfileTxt {
    display: inline-block;
    padding: 1px 10px;
    color: #586166;
    font-size: 1.3rem;
    background-color: #fff; }
  @media (max-width: 768px) {
    .modal-contColProfile {
      border-top: none; } }

.modal-contColCatch {
  margin-bottom: 15px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.6; }
  @media (max-width: 768px) {
    .modal-contColCatch {
      font-size: 1.4rem; } }

.modal-contColTxt {
  position: relative;
  padding-top: 20px;
  color: #586166;
  line-height: 1.8;
  border-top: 1px solid #D9D9D9; }
  .modal-contColTxt:before {
    content: "";
    position: absolute;
    display: block;
    width: 70px;
    height: 1px;
    top: -1px;
    left: 0; }
  @media (max-width: 768px) {
    .modal-contColTxt {
      margin-bottom: 20px; } }

.modal-closeBtn {
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 30px;
  right: 30px;
  cursor: pointer; }
  @media (max-width: 768px) {
    .modal-closeBtn {
      top: 15px;
      right: 15px; } }

.modal-closeBtn:before {
  content: "\00d7";
  display: block;
  margin-top: auto;
  margin-bottom: auto;
  color: #586166;
  font-size: 35px;
  line-height: 30px; }

.modal-closeBtn:hover {
  text-decoration: none;
  opacity: 0.5; }

.modal-closeBtnFoot {
  position: relative;
  margin-top: 20px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: #fff;
  background-color: #8E8E8E; }
  .modal-closeBtnFoot:hover {
    text-decoration: none !important; }
  .modal-closeBtnFoot:before {
    content: "\00d7";
    display: block;
    position: absolute;
    width: 26px;
    height: 40px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    left: 10px;
    font-size: 2.6rem;
    line-height: 40px; }

.modal-cont._green .modal-contColCatch {
  color: #24B385; }

.modal-cont._green .modal-contColTxt:before {
  background-color: #24B385; }

.modal-cont._blue .modal-contColCatch {
  color: #006F8B; }

.modal-cont._blue .modal-contColTxt:before {
  background-color: #006F8B; }

.overview {
  padding-bottom: 60px; }
  @media (max-width: 768px) {
    .overview {
      padding-bottom: 40px; } }
  .overview-item {
    position: relative;
    margin-bottom: 40px;
    z-index: 1;
    width: calc(360 / 750 * 100%);
    max-width: 360px;
    height: 50px;
    overflow: hidden; }
    @media (max-width: 768px) {
      .overview-item {
        width: 100%;
        max-width: unset;
        margin-bottom: 20px; } }
    .overview-item a {
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
      line-height: 50px;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 500;
      text-align: center;
      z-index: 2; }
      .overview-item a:after {
        content: "\003009";
        display: block;
        position: absolute;
        width: 21px;
        height: 28px;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
        left: 10px;
        font-size: 1.2rem;
        padding-left: 7px;
        line-height: 28px;
        border-radius: 50%;
        border: 1px solid #fff; }
      .overview-item a:hover {
        text-decoration: none; }
    .overview-item:before {
      content: "";
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: 0.5s;
      -o-transition: 0.5s;
      transition: 0.5s;
      -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      transform: translateX(-100%);
      z-index: 1; }
  .overview-item:nth-of-type(odd) {
    background-color: #82A5D7; }
    .overview-item:nth-of-type(odd):before {
      background-color: #6579CC; }
  .overview-item:nth-of-type(even) {
    background-color: #6579CC; }
    .overview-item:nth-of-type(even):before {
      background-color: #82A5D7; }
  .overview-item:hover:before {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0); }

.message-item {
  width: calc(360 / 750 * 100%);
  max-width: 360px;
  margin-bottom: 60px; }
  .message-item a:hover {
    opacity: 1; }

.message-img {
  overflow: hidden; }

.message-btn {
  position: relative;
  height: 38px;
  margin-top: 10px;
  padding-left: 45px;
  font-weight: 500;
  line-height: 38px; }
  .message-btn:before {
    content: "\003009";
    display: block;
    position: absolute;
    width: 22px;
    height: 38px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    left: 0;
    color: #fff;
    font-size: 1.7rem;
    padding-left: 16px;
    line-height: 35px;
    border-radius: 50%;
    background-color: #9C85CC; }

@media (max-width: 768px) {
  .message-list {
    margin-bottom: 40px; }
  .message-item {
    width: 100%;
    max-width: unset;
    margin-bottom: 20px; } }

.support {
  padding-top: 100px;
  padding-bottom: 100px;
  background-color: #F1EAFF; }
  @media (max-width: 768px) {
    .support {
      padding-top: 60px;
      padding-bottom: 60px; } }
  .support-sec {
    margin-bottom: 50px; }
  .support-col430 {
    width: calc(430 / 750 * 100%);
    max-width: 430px;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .support-col430 {
        width: 100%;
        max-width: unset; } }
  .support-col300 {
    width: calc(300 / 750 * 100%);
    max-width: 300px;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .support-col300 {
        width: 100%;
        max-width: unset; } }
  .support-cont {
    padding: 30px;
    background-color: #fff;
    border-radius: 10px; }
  .support-item2 {
    width: 47.8%;
    max-width: 330px; }
    @media (max-width: 768px) {
      .support-item2 {
        width: 100%;
        max-width: unset; } }
  .support-pgh {
    margin-bottom: 25px;
    line-height: 1.8; }
    .support-pgh:last-of-type {
      margin-bottom: 0; }
  .support-pghIndent {
    padding-left: 1em;
    text-indent: -1em; }
  .support-innerList dt, .support-innerList dd {
    display: inline-block;
    vertical-align: top; }
  .support-innerList .dt4em {
    width: calc(4em + 10px); }
  .support-innerList .dd4em {
    width: calc(100% - 4em - 10px); }
  .support-innerList .dt6em {
    width: calc(6em + 10px); }
  .support-innerList .dd6em {
    width: calc(100% - 6em - 10px); }
  .support-ilst {
    padding: 50px 55px 0 55px; }
  .support-caution {
    margin-bottom: 25px;
    padding: 30px;
    border-radius: 10px;
    background-color: #fff;
    border: 2px solid #82A5D7; }
  .support-cautionTtl {
    margin-bottom: 10px;
    color: #82A5D7;
    font-size: 2rem;
    font-weight: bold; }
  @media (max-width: 768px) {
    .support-sec:last-of-type {
      margin-bottom: 0; }
    .support-caution:last-of-type {
      margin-bottom: 0; }
    .support-cautionTtl {
      font-size: 1.4rem; } }

/* CSS js event */
/* マウスホバーで背景画像拡大 */
.js-mouthOverImgItem img {
  -webkit-transition: .5s ease-out;
  -o-transition: .5s ease-out;
  transition: .5s ease-out; }

.js-mouthOverImgItem img.js-scaleUp {
  -webkit-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
  -webkit-transition: .5s ease-out;
  -o-transition: .5s ease-out;
  transition: .5s ease-out; }

/* margin / padding
--------------------------------------- */
.m_autoX {
  margin-left: auto;
  margin-right: auto; }

/* margin-top */
.mt_sec {
  margin-top: 90px !important; }
  @media (max-width: 768px) {
    .mt_sec {
      margin-top: 50px !important; } }

.mt_cont {
  margin-top: 50px !important; }
  @media (max-width: 768px) {
    .mt_cont {
      margin-top: 25px !important; } }

.mt_pgh {
  margin-top: 25px !important; }

.mt_small {
  margin-top: 10px !important; }

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

.mt_xl {
  margin-top: 210px !important; }
  @media (max-width: 768px) {
    .mt_xl {
      margin-top: 120px !important; } }

/* padding-top */
.pt_sec {
  padding-top: 90px !important; }
  @media (max-width: 768px) {
    .pt_sec {
      padding-top: 50px !important; } }

.pt_cont {
  padding-top: 50px !important; }
  @media (max-width: 768px) {
    .pt_cont {
      padding-top: 25px !important; } }

.pt_pgh {
  padding-top: 25px !important; }

.pt_small {
  padding-top: 10px !important; }

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

.pt_xl {
  padding-top: 210px !important; }
  @media (max-width: 768px) {
    .pt_xl {
      padding-top: 120px !important; } }

/* margin-bottom */
.mb_sec {
  margin-bottom: 90px !important; }
  @media (max-width: 768px) {
    .mb_sec {
      margin-bottom: 50px !important; } }

.mb_cont {
  margin-bottom: 50px !important; }
  @media (max-width: 768px) {
    .mb_cont {
      margin-bottom: 25px !important; } }

.mb_pgh {
  margin-bottom: 25px !important; }

.mb_small {
  margin-bottom: 10px !important; }

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

.mb_xl {
  margin-bottom: 210px !important; }
  @media (max-width: 768px) {
    .mb_xl {
      margin-bottom: 120px !important; } }

.mb_0 {
  margin-bottom: 0 !important; }

/* padding-bottom */
.pb_sec {
  padding-bottom: 90px !important; }
  @media (max-width: 768px) {
    .pb_sec {
      padding-bottom: 50px !important; } }

.pb_cont {
  padding-bottom: 50px !important; }
  @media (max-width: 768px) {
    .pb_cont {
      padding-bottom: 25px !important; } }

.pb_pgh {
  padding-bottom: 25px !important; }

.pb_small {
  padding-bottom: 10px !important; }

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

.pb_xl {
  padding-bottom: 210px !important; }
  @media (max-width: 768px) {
    .pb_xl {
      padding-bottom: 120px !important; } }

.pb_0 {
  padding-bottom: 0 !important; }

/* font / color
--------------------------------------- */
.fw_bold {
  font-weight: bold !important; }

.fs_130 {
  font-size: 1.3em; }

.fs_80 {
  font-size: 0.8em; }

.color_red {
  color: red; }

.txtLine {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(30%, transparent), color-stop(30%, #f9ddec));
  background: -webkit-linear-gradient(transparent 30%, #f9ddec 30%);
  background: -o-linear-gradient(transparent 30%, #f9ddec 30%);
  background: linear-gradient(transparent 30%, #f9ddec 30%); }

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

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

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

/* boeder
--------------------------------------- */
.bd_n {
  border: none !important; }

/* float
--------------------------------------- */
.left {
  float: left; }

.right {
  float: right; }

/* position / display / block
--------------------------------------- */
.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.block {
  display: block; }
