@charset "UTF-8";
/* -----------------------------------------CSS Information
File Name:base.css
Author:T.osaka
Style Info:ブラウザスタイルのサイト全体設定
-------------------------------------------------------------
01:初期設定
02:ヘッダー
03:フッター
04:UI
  _グローバルナビ
  _リンク・ボタン
  _フォーム
  _アコーディオン（複数展開用）
  _コンバージョン
  _パンくず
  _ページネィション
  _縦リンク
05:コンテンツ
  _構造
  _カラム
  _見出し
  _文字
  _リスト
  _表組み
  _イラスト・写真
06:サブコンテンツTEST
07:外部css
-----------------------------------------------------------*/
/* ----------------------------------------------------------
01:初期設定
-----------------------------------------------------------*/
html {
  font-size: 62.5%; }

* html ul li dl, * html ol li dl {
  display: inline; }

*:first-child + html ul li dl, *:first-child + html ol li dl {
  display: inline; }

body {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  color: #333333;
  letter-spacing: 0.05em;
  line-height: 190%; }

img {
  width: 100%; }

a {
  color: #333333; }
  a img {
    border: 0; }

a:hover, a:active {
  opacity: 0.8; }

ul {
  list-style-type: none; }

/* -----------------------------------------CSS Information
File Name:base.css
Author:T.osaka
Style Info:ブラウザスタイルのサイト全体の値設定
-------------------------------------------------------------*/
@media screen and (max-width: 999px) {
  /*　画面サイズ 999pxまで適用　*/
  body {
    background: #ffffff url(../img/pub_body_bg_sp.gif) no-repeat left top;
    background-size: 100% auto; }
    body .sp_only {
      display: block; }
    body .pc_only {
      display: none; } }
@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  body {
    background: #ffffff url(../img/pub_body_bg_pc.gif) no-repeat left top;
    background-size: 100% auto; }
    body .sp_only {
      display: none; }
    body .pc_only {
      display: block; }
    body a[href^="tel:"] {
      pointer-events: none; } }
/* ----------------------------------------------------------
02:ヘッダー
-----------------------------------------------------------*/
header.unit_pub-header {
  margin-bottom: 25px;
  padding-top: 10px;
  background: url(../img/pub_head_bg.svg) no-repeat left top;
  background-size: 100% auto;
  text-align: center; }
  header.unit_pub-header p.item_copy {
    font-size: 1.4rem; }
  header.unit_pub-header img.item_logo {
    width: 40%;
    margin-bottom: 18px; }

header.unit_simple-header {
  margin-bottom: 30px;
  padding-top: 10px;
  background-image: none; }
  header.unit_simple-header p {
    margin-bottom: 10px;
    text-align: center;
    line-height: 100%;
    font-size: 1.4rem; }
  header.unit_simple-header img {
    width: 60%;
    height: auto;
    margin: 0 20%; }

@media screen and (min-width: 750px) {
  /*　画面サイズ 750px以上から適用　*/
  header.unit_pub-header {
    background-position: left top -40px; }
    header.unit_pub-header img.item_logo {
      margin-bottom: 28px; } }
@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  header.unit_pub-header {
    position: relative;
    width: 1100px;
    height: 75px;
    margin: 0 auto;
    background-image: none;
    background-color: #ffffff; }
    header.unit_pub-header p.item_copy {
      position: absolute;
      left: 250px;
      top: 25px; }
    header.unit_pub-header img.item_logo {
      position: absolute;
      left: 20px;
      top: 20px;
      width: 215px; }
    header.unit_pub-header div.unit_tel {
      position: absolute;
      clear: both;
      overflow: hidden;
      right: 20px;
      top: 10px; }
      header.unit_pub-header div.unit_tel p.item_hours {
        display: block;
        margin-bottom: 10px;
        text-align: left;
        line-height: 140%;
        font-size: 1.2rem; }
      header.unit_pub-header div.unit_tel p.item_phone {
        float: left;
        margin-top: 0;
        padding-left: 50px;
        background: url(../img/icon_freedial.svg) no-repeat left top;
        background-size: 40px auto;
        font-size: 4.2rem; }
      header.unit_pub-header div.unit_tel ul {
        float: right;
        margin: -10px 0 0 10px; }
        header.unit_pub-header div.unit_tel ul li {
          padding: 2px;
          background-color: #e9e5d0;
          font-size: 1.2rem;
          font-weight: bold;
          color: #333333;
          line-height: 140%; }
        header.unit_pub-header div.unit_tel ul li + li {
          margin-top: 1px; }

  header.unit_simple-header {
    width: 950px;
    margin: 0 auto;
    margin-bottom: 40px; }
    header.unit_simple-header p {
      margin-bottom: 20px;
      font-size: 1.6rem; }
    header.unit_simple-header img {
      width: 30%;
      margin: 0 35%; } }
header + a.btn_back {
  display: block;
  position: fixed;
  top: 0;
  right: 20px;
  margin: 0;
  padding: 5px;
  background-color: #333333;
  border: solid 1px #333333;
  border-radius: 0 0 5px 5px;
  color: #ffffff; }

/* ----------------------------------------------------------
03:フッター
-----------------------------------------------------------*/
footer {
  margin-top: 40px;
  padding: 20px 0 100px 0;
  background-color: #cccccc; }
  footer nav.navi_footer-cv {
    z-index: 10;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 5px 0;
    background-color: rgba(0, 0, 0, 0.6); }
    footer nav.navi_footer-cv ul.unit_2column {
      margin-top: 0; }
      footer nav.navi_footer-cv ul.unit_2column li {
        width: 48%; }
        footer nav.navi_footer-cv ul.unit_2column li a.btn_tel, footer nav.navi_footer-cv ul.unit_2column li a.btn_mail {
          padding: 10px; }
          footer nav.navi_footer-cv ul.unit_2column li a.btn_tel img, footer nav.navi_footer-cv ul.unit_2column li a.btn_mail img {
            width: 100%;
            height: auto; }
        footer nav.navi_footer-cv ul.unit_2column li a.btn_tel {
          border-radius: 0 5px 5px 0; }
        footer nav.navi_footer-cv ul.unit_2column li a.btn_mail {
          border-radius: 5px 0 0 5px; }
    footer nav.navi_footer-cv p.item_hours {
      margin-top: 7px;
      text-align: center;
      line-height: 100%;
      font-size: 1.4rem;
      color: #ffffff; }
  footer div.wrap_footer {
    position: relative;
    text-align: center;
    /*a.btn_pagetop {
      display: block;
      position: fixed;
      bottom: 0;
      right: 20px;
      margin: 0;
      padding: 5px;
      background-color: #333333;
      border: solid 1px #333333;
      border-radius: 5px 5px 0 0;
      img {width: 30px;}
    }*/ }
    footer div.wrap_footer p {
      text-align: center;
      font-size: 1.4rem; }
    footer div.wrap_footer ul {
      display: inline-block;
      clear: both;
      overflow: hidden; }
      footer div.wrap_footer ul li {
        float: left;
        border-left: solid 1px #999999;
        padding: 0 10px; }
        footer div.wrap_footer ul li a {
          line-height: 100%;
          font-size: 1.2rem; }
      footer div.wrap_footer ul li + li + li {
        border-right: solid 1px #999999; }
  @media screen and (max-width: 320px) {
    footer {
      /*　画面サイズ 320pxまで適用　*/ }
      footer nav.navi_footer-cv ul.unit_2column li a.btn_tel {
        padding: 12px 10px 0 10px; } }
  @media screen and (min-width: 1000px) {
    footer {
      /*　画面サイズ 1000px以上から適用　*/
      clear: both; }
      footer nav.navi_footer-cv {
        margin: 0 auto;
        padding: 10px 0;
        background-color: rgba(255, 255, 255, 0.7);
        border-top: solid 1px #cccccc; }
        footer nav.navi_footer-cv ul.unit_2column {
          width: 1100px;
          margin: 0 auto; }
          footer nav.navi_footer-cv ul.unit_2column li div.unit_tel {
            clear: both;
            overflow: hidden;
            padding-left: 90px;
            background: url(../img/icon_freedial.svg) no-repeat left top 10px;
            background-size: 80px auto; }
            footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p.item_label {
              float: left;
              display: table;
              width: 45%; }
              footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p.item_label span {
                display: table-cell;
                padding-right: 10px; }
                footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p.item_label span span {
                  display: block;
                  width: 84px;
                  padding: 26px 0;
                  background-color: #e9e5d0;
                  text-align: center;
                  font-weight: bold;
                  color: #000000; }
            footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p.item_free-dial {
              float: left;
              width: 50%;
              line-height: 100%;
              font-size: 4.0rem;
              font-weight: bold; }
              footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p.item_free-dial span {
                display: block;
                font-size: 1.6rem;
                font-weight: normal; }
            footer nav.navi_footer-cv ul.unit_2column li div.unit_tel p + p {
              margin-top: 0; }
          footer nav.navi_footer-cv ul.unit_2column li:nth-child(odd) {
            width: 693px;
            margin-right: 0; }
          footer nav.navi_footer-cv ul.unit_2column li:nth-child(even) {
            width: 380px;
            margin-left: 0; }
      footer div.wrap_footer {
        width: 950px;
        margin: 0 auto; } }

/* ----------------------------------------------------------
04:UI
-----------------------------------------------------------*/
/*グローバルナビ*/
nav.navi_global {
  clear: both;
  overflow: hidden;
  /*チェックボックス等は非表示に*/
  /*アイコンのスペース*/
  /*閉じる用の薄黒カバー*/
  /*中身*/
  /*チェックが入ったらもろもろ表示*/ }
  nav.navi_global #nav-drawer {
    position: relative;
    margin-left: 18px;
    margin-top: -27px; }
  nav.navi_global .nav-unshown {
    display: none; }
  nav.navi_global #nav-open {
    z-index: 100;
    position: fixed;
    top: 0;
    right: 10px;
    display: inline-block;
    width: 60px;
    height: 40px;
    padding: 10px 0 0 0;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 0 0 5px 5px;
    text-align: center; }
    nav.navi_global #nav-open span {
      display: block;
      padding: 0 20px; }
  nav.navi_global #nav-close {
    display: none;
    /*はじめは隠しておく*/
    position: fixed;
    z-index: 99;
    top: 0;
    /*全体に広がるように*/
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out; }
  nav.navi_global #nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    right: -90%;
    z-index: 9999;
    /*最前面に*/
    width: 90%;
    /*右側に隙間を作る（閉じるカバーを表示）*/
    max-width: 330px;
    /*最大幅（調整してください）*/
    height: 100%;
    background: #fff;
    /*背景色*/
    transition: .3s ease-in-out;
    /*滑らかに表示*/
    -webkit-transform: translateX(105%);
    transform: translateX(105%);
    /*左に隠しておく*/ }
    nav.navi_global #nav-content ul.menu_global li {
      display: block;
      width: 100%;
      padding: 10px;
      border-bottom: solid 1px #cccccc; }
      nav.navi_global #nav-content ul.menu_global li a {
        width: 100%; }
  nav.navi_global #nav-input:checked ~ #nav-close {
    display: block;
    /*カバーを表示*/
    opacity: .5; }
  nav.navi_global #nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    /*中身を表示（右へスライド）*/
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
    z-index: 9998;
    right: 0; }
  nav.navi_global .hamburger-top {
    height: 40px;
    margin-top: 5px; }
  nav.navi_global .menu-hamburger-menu-container li {
    float: none;
    font-size: 15px;
    padding: 10px 15px 10px 15px;
    list-style: none;
    text-align: left;
    border-bottom: dashed 1px #fedbf1; }
  nav.navi_global .menu-hamburger-menu-container li:last-child {
    border: none; }
  nav.navi_global .menu-hamburger-menu-container li a {
    text-decoration: none;
    color: #000; }
  nav.navi_global .menu-hamburger-menu-container a:before {
    font-family: FontAwesome;
    content: "\f07b";
    color: #00bb80;
    /*アイコン色*/
    margin-right: 5px; }
  nav.navi_global .menu-hamburger-menu-container .menu-item-499 a:before,
  nav.navi_global .menu-hamburger-menu-container .menu-item-500 a:before,
  nav.navi_global .menu-hamburger-menu-container .menu-item-501 a:before,
  nav.navi_global .menu-hamburger-menu-container .menu-item-504 a:before,
  nav.navi_global .menu-hamburger-menu-container .menu-item-828 a:before {
    font-family: FontAwesome;
    content: "\f061";
    color: #00bb80;
    margin-right: 5px; }
  nav.navi_global .cancel {
    display: inline-block;
    margin: 20px  20px 0 20px;
    padding: 20px 0;
    width: calc( 100% - 40px );
    background: url(../img/icon_close.svg) no-repeat left 20px center;
    background-size: 20px auto;
    border: solid 1px #cccccc;
    border-radius: 5px;
    text-align: center;
    font-size: 2.0rem;
    line-height: 100%; }
  nav.navi_global .category {
    background-color: #fedbf1;
    padding: 15px 0;
    font-size: 23px;
    color: #ff69b4;
    font-weight: bold; }

/*nav END*/
@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  nav.navi_global {
    width: 1100px;
    margin: 0 auto 40px auto;
    padding-bottom: 5px;
    background-color: #ffffff; }
    nav.navi_global div#nav-drawer {
      margin: 0; }
      nav.navi_global div#nav-drawer input#nav-input, nav.navi_global div#nav-drawer label#nav-open, nav.navi_global div#nav-drawer label#nav-close {
        display: none; }
      nav.navi_global div#nav-drawer div#nav-content {
        position: relative;
        top: 0;
        left: 0;
        right: 0;
        width: 1100px;
        max-width: 1100px;
        height: auto;
        margin: 0 auto;
        background-color: transparent;
        transition: .0s ease-in-out;
        /*滑らかに表示*/
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        /*左に隠しておく*/ }
        nav.navi_global div#nav-drawer div#nav-content ul.menu_global {
          clear: both;
          overflow: hidden;
          width: 1100px; }
          nav.navi_global div#nav-drawer div#nav-content ul.menu_global li {
            float: left;
            width: 220px;
            border-left: dotted 1px #cccccc;
            border-bottom: none; }
            nav.navi_global div#nav-drawer div#nav-content ul.menu_global li a.link_basic {
              width: 100%;
              padding: 0;
              background-image: none;
              text-align: center;
              font-size: 1.6rem; }
          nav.navi_global div#nav-drawer div#nav-content ul.menu_global li:last-child {
            border-right: dotted 1px #cccccc; }
        nav.navi_global div#nav-drawer div#nav-content div.hamburger-top {
          display: none; } }
/*リンク・ボタン*/
.link_basic, .link_freedial, .link_back {
  display: inline-block;
  font-size: 1.6rem;
  padding: 2px 0 2px 30px;
  line-height: 140%; }

.link_basic {
  background: url(../img/delta_right_p.svg) no-repeat left top;
  background-size: 25px auto; }

p + .link_basic {
  margin-top: 10px; }

.link_freedial {
  background: url(../img/icon_freedial.svg) no-repeat left center;
  background-size: 25px auto; }

.link_back {
  background: url(../img/delta_left_b.svg) no-repeat left center;
  background-size: 25px auto; }

.btn_basic, .btn_basic_frame, .btn_back, .btn_tel, .btn_mail, .btn_decision, .btn_vertical {
  display: table;
  padding: 10px 20px;
  width: 100%;
  border-radius: 10px;
  text-align: center;
  cursor: pointer; }

.btn_basic {
  border: solid 1px #fc6e9f;
  background-color: #fc6e9f;
  color: #ffffff; }
  .btn_basic span {
    display: block;
    padding: 10px 10px 10px 25px;
    background: url(../img/delta_right_w.svg) no-repeat left center;
    background-size: 10px auto;
    text-align: left;
    vertical-align: middle;
    font-size: 1.8rem;
    font-weight: bold; }

.btn_basic_frame {
  border: solid 1px #cccccc;
  color: #fc6e9f; }
  .btn_basic_frame span {
    display: block;
    padding: 10px 10px 10px 35px;
    background: url(../img/delta_right_p.svg) no-repeat left center;
    background-size: 25px auto;
    text-align: left;
    vertical-align: middle;
    font-size: 1.8rem;
    font-weight: bold; }

.btn_back {
  border: solid 1px #cccccc; }
  .btn_back span {
    display: inline-block;
    padding: 10px 10px 10px 35px;
    background: url(../img/delta_left_b.svg) no-repeat left center;
    background-size: 25px auto;
    text-align: left;
    vertical-align: middle;
    font-size: 1.8rem;
    font-weight: bold; }

.btn_tel {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#fb6c9d+40,e80d56+100 */
  background: #fb6c9d;
  /* Old browsers */
  background: -moz-linear-gradient(top, #fb6c9d 40%, #e80d56 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #fb6c9d 40%, #e80d56 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #fb6c9d 40%, #e80d56 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  border: solid 2px #fb6c9d; }

.btn_mail {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+40,dfdfdf+100 */
  background: #ffffff;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 40%, #dfdfdf 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 40%, #dfdfdf 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 40%, #dfdfdf 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  border: solid 2px #cccccc; }

.btn_decision {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+40,dfdfdf+100 */
  background: #fb6c9d;
  /* Old browsers */
  background: -moz-linear-gradient(top, #fb6c9d 40%, #e80d56 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #fb6c9d 40%, #e80d56 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #fb6c9d 40%, #e80d56 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
  .btn_decision span {
    display: inline-block;
    padding: 10px 0;
    text-align: center;
    vertical-align: middle;
    font-size: 2.4rem;
    color: #ffffff; }

.btn_vertical {
  border: solid 1px #cccccc; }
  .btn_vertical span {
    display: block;
    padding: 10px 10px 10px 35px;
    background: url("../img/icon_delta_down.svg") no-repeat left center;
    background-size: 25px auto;
    text-align: left;
    vertical-align: middle;
    font-size: 1.8rem;
    font-weight: bold; }

.unit_btn-set1 {
  margin: 20px 0 0 0; }
  .unit_btn-set1 a + a {
    margin-top: 5px; }

.unit_btn-set2 {
  margin: 10px 0 0 0; }
  .unit_btn-set2 a + a {
    margin-left: 10px; }

nav.unit_bottom-navi {
  position: relative;
  margin: 40px 10px 10px 10px;
  padding-bottom: 10px;
  border-bottom: solid 1px #333333; }
  nav.unit_bottom-navi p {
    width: 100%;
    text-align: center; }
  nav.unit_bottom-navi a.btn_page-top {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 5px;
    background-color: #333333;
    border-radius: 10px 10px 0 0;
    text-align: center; }
    nav.unit_bottom-navi a.btn_page-top img {
      width: 50%; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  .link_tell {
    pointer-events: none; }

  .btn_basic span {
    font-size: 2.0rem; }

  .unit_btn-set1 {
    margin-top: 40px; } }
.item_textlink, .item_textblank {
  text-decoration: underline;
  color: #fc6e9f; }

.item_textblank {
  padding: 0 0 0 25px;
  background: url("../img/icon_blank.svg") left center no-repeat;
  background-size: 20px 20px; }

/*フォーム*/
input[type=text], input[type=tel], input[type=email], input[type=number], textarea {
  width: 100%;
  padding: 10px;
  background-color: #e7f0e7;
  border: solid 1px #cccccc;
  border-radius: 5px;
  font-size: 1.8rem; }

.radio-input {
  display: none; }

.radio-input + label {
  padding-top: 2px;
  padding-left: 25px;
  position: relative;
  margin-right: 20px; }

.radio-input + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 50%; }

.radio-input:checked + label {
  color: #339933; }

.radio-input:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  background: #339933;
  border-radius: 50%; }

.checkbox01-input {
  display: none; }

.checkbox01-parts {
  padding-left: 20px;
  position: relative;
  margin-right: 20px; }

.checkbox01-parts::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 4px; }

.checkbox01-input:checked + .checkbox01-parts {
  color: #fc6e9f; }

.checkbox01-input:checked + .checkbox01-parts::after {
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #fc6e9f;
  border-right: 3px solid #fc6e9f; }

span.item_addition {
  display: block;
  margin: 5px 0 0 0;
  font-size: 1.2rem;
  color: #666666; }

span.item_validation {
  display: inline-block;
  margin: 0 0 5px 0;
  padding: 5px 0 5px 25px;
  background: url(../img/icon_exclamation.svg) no-repeat left center;
  background-size: 20px auto;
  line-height: 140%;
  font-weight: bold;
  color: #cc0000; }

dl.unit_form {
  margin: 20px 0 0 0;
  padding: 10px 0 0 0;
  border-top: dotted 1px #cccccc; }
  dl.unit_form dt {
    margin: 0 0 10px 0;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 100%; }
    dl.unit_form dt .item_required {
      display: inline-block;
      margin: 0 0 0 5px;
      padding: 2px 7px;
      background-color: #990000;
      font-size: 1.4rem;
      font-weight: normal;
      color: #ffffff; }
  dl.unit_form dd span.item_addition {
    display: block;
    margin: 5px 0 0 0;
    color: #666666; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  dl.unit_form {
    display: table;
    width: 100%;
    margin-top: 40px;
    padding-top: 20px; }
    dl.unit_form dt, dl.unit_form dd {
      display: table-cell;
      vertical-align: top; }
    dl.unit_form dt {
      width: 20%; }
    dl.unit_form dd {
      width: 80%; } }
/*アコーディオン（複数展開用）*/
.acd-check {
  display: none; }

.acd-label {
  cursor: pointer;
  display: block;
  padding: 15px;
  background-color: #ffffff; }
  .acd-label span {
    display: block;
    background: url(../img/icon_square-plus.svg) no-repeat right center;
    background-size: 20px 20px;
    font-size: 1.6rem;
    line-height: 140%; }

.acd-content {
  opacity: 0;
  transition: .2s;
  visibility: hidden;
  height: 0;
  background-color: #ffffff; }

.acd-check:checked + .acd-label + .acd-content {
  visibility: visible;
  height: auto;
  opacity: 1;
  border-top: dotted 1px #cccccc; }

.acd-content + .acd-check + .acd-label {
  margin-bottom: 0; }

div.wrap_acd-label {
  margin: 20px 0 0 0;
  padding: 10px;
  background-color: #cccccc; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  .acd-label {
    padding: 10px; }
    .acd-label span span.pc_only {
      display: inline-block; } }
/*コンバージョン*/
.unit_cv {
  width: 100%;
  padding: 0;
  background: url(../img/pub_cv-bg_l.svg) no-repeat left -110px top 5px;
  background-size: auto 100%;
  border: solid 1px #cccccc;
  text-align: center; }
  .unit_cv .wrap_cv {
    padding: 10px;
    background: url(../img/pub_cv-bg_r.svg) no-repeat right -90px top 16px;
    background-size: auto 100%; }
    .unit_cv .wrap_cv h2 {
      margin-bottom: 20px;
      font-size: 1.6rem; }
      .unit_cv .wrap_cv h2 strong {
        display: block;
        font-size: 2.8rem;
        color: #fc6e9f; }
    .unit_cv .wrap_cv p {
      width: 55%;
      margin: 0 auto;
      text-align: left;
      line-height: 140%;
      font-size: 1.4rem; }
    .unit_cv .wrap_cv p.item_hours {
      width: 100%;
      margin-top: 5px;
      text-align: center; }
    .unit_cv .wrap_cv a.btn_tel, .unit_cv .wrap_cv a.btn_mail {
      width: 90%;
      margin: 0 5%; }
    .unit_cv .wrap_cv a.btn_tel {
      margin-top: 20px; }
    .unit_cv .wrap_cv a.btn_mail {
      margin-top: 10px; }
  @media screen and (min-width: 750px) {
    .unit_cv {
      /*　画面サイズ 750px以上から適用　*/
      background-size: auto 120%;
      background-position: left -40px top; }
      .unit_cv .wrap_cv {
        clear: both;
        overflow: hidden;
        background-size: auto 120%;
        background-position: right -23px top 15px; }
        .unit_cv .wrap_cv span {
          display: block;
          float: left;
          margin: 40px 0 20px 0; }
          .unit_cv .wrap_cv span a.btn_tel {
            pointer-events: none;
            width: 369px;
            margin: 0; }
          .unit_cv .wrap_cv span a.btn_mail {
            width: 369px;
            margin: 0 0 0 40px; }
        .unit_cv .wrap_cv p.item_hours {
          clear: both; } }
  @media screen and (min-width: 1000px) {
    .unit_cv {
      /*　画面サイズ 1000px以上から適用　*/
      background-size: auto 140%;
      background-position: left -40px top; }
      .unit_cv .wrap_cv {
        padding: 30px;
        background-size: auto 140%;
        background-position: right -13px top 15px; }
        .unit_cv .wrap_cv h2 {
          font-size: 2.0rem; }
          .unit_cv .wrap_cv h2 strong {
            margin-top: 10px;
            font-size: 4.0rem; }
        .unit_cv .wrap_cv p {
          width: 320px;
          line-height: 170%;
          font-size: 1.6rem; } }

/*パンくず*/
.breadcrumb {
  margin: 0 20px 10px 20px;
  padding: 15px 0 5px 0;
  border-bottom: 0;
  -webkit-overflow-scrolling: touch;
  /* スマホでスクロールを滑らかにする */
  overflow-x: auto;
  /* [必須] テキストが多い時はX軸にスクロールバーが出現するように */
  overflow-y: hidden; }
  .breadcrumb ul {
    display: table;
    /* [必須]  */ }
    .breadcrumb ul li {
      font-size: 1.2rem;
      display: table-cell;
      /* [必須]  */
      white-space: nowrap;
      /* [必須] テキストを改行させないように */
      vertical-align: middle;
      padding-right: 26px;
      position: relative;
      line-height: 140%; }
      .breadcrumb ul li a {
        color: #fc6e9f; }
      .breadcrumb ul li a:before {
        position: absolute;
        display: block;
        content: '';
        width: 100%;
        height: 1px;
        background-color: #111;
        bottom: -7px; }
      .breadcrumb ul li span {
        background-color: #eee;
        border-radius: 4px;
        padding: 6px 8px; }
    .breadcrumb ul li:last-child {
      padding-right: 0; }
    .breadcrumb ul li:last-child:after {
      display: none; }
    .breadcrumb ul li:after {
      position: absolute;
      display: block;
      content: '';
      content: ">";
      top: -1px;
      right: 8px; }
  .breadcrumb ol li a, .breadcrumb ol li span {
    position: relative;
    display: block;
    top: -4px; }

.breadcrumb::-webkit-scrollbar {
  height: 5px; }

.breadcrumb::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee; }

.breadcrumb::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #999; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  .breadcrumb {
    width: 1100px;
    margin: 0 auto 20px auto;
    padding-top: 0; } }
/*ページネィション*/
/*縦リンク*/
/* ----------------------------------------------------------
05:コンテンツ
-----------------------------------------------------------*/
/*構造*/
main {
  margin-bottom: 40px; }
  main section, main aside {
    clear: both;
    overflow: hidden;
    width: 100%;
    padding: 0 20px; }
    main section section, main section aside, main aside section, main aside aside {
      margin-top: 30px;
      padding: 0; }
    main section section + section, main section aside + aside, main section section + aside, main section aside + section, main aside section + section, main aside aside + aside, main aside section + aside, main aside aside + section {
      margin-top: 30px; }
    main section section[id], main aside section[id] {
      margin-top: -30px;
      padding-top: 60px; }
  main section + section, main aside + aside, main section + aside, main aside + section {
    margin-top: 40px; }
  main section[id] {
    margin-top: -40px;
    padding-top: 80px; }
  main h2.section-title + section[id] {
    margin-top: -50px; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  main {
    width: 1100px;
    margin: 0 auto 40px auto; }
    main section, main aside {
      padding-left: 0;
      padding-right: 0; }
      main section section + section, main section aside + aside, main section section + aside, main section aside + section, main aside section + section, main aside aside + aside, main aside section + aside, main aside aside + section {
        margin-top: 30px; }
      main section section[id], main aside section[id] {
        margin-top: -30px;
        padding-top: 60px; }
    main section + section, main aside + aside, main section + aside, main aside + section {
      margin-top: 60px; }
    main section[id] {
      margin-top: -60px;
      padding-top: 120px; }

  main.unit_2column {
    float: left;
    width: 840px;
    margin-left: calc( (100% - 1100px) / 2 ); } }
/*カラム*/
ul.flexbox {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

ul.unit_1column {
  width: 100%; }
  ul.unit_1column li + li {
    margin: 20px 0 0 0; }

ul.unit_column_1to2 li, ul.unit_column_1to3 li, ul.unit_column_1to4 li, ul.unit_column_1to5 li, ul.unit_column_2to3 li, ul.unit_column_2to4 li, ul.unit_column_2to1 li {
  width: 100%;
  margin-top: 10px; }
ul.unit_column_1to2 li:nth-child(1), ul.unit_column_1to3 li:nth-child(1), ul.unit_column_1to4 li:nth-child(1), ul.unit_column_1to5 li:nth-child(1), ul.unit_column_2to3 li:nth-child(1), ul.unit_column_2to4 li:nth-child(1), ul.unit_column_2to1 li:nth-child(1) {
  margin-top: 0; }
ul.unit_column_1to2 li:last-child, ul.unit_column_1to3 li:last-child, ul.unit_column_1to4 li:last-child, ul.unit_column_1to5 li:last-child, ul.unit_column_2to3 li:last-child, ul.unit_column_2to4 li:last-child, ul.unit_column_2to1 li:last-child {
  margin-bottom: 0; }

ul.unit_2column, ul.unit_column_2to3, ul.unit_column_2to4, ul.unit_column_2to1 {
  clear: both;
  overflow: hidden;
  width: 100%;
  margin: 20px 0 0 0; }
  ul.unit_2column li, ul.unit_column_2to3 li, ul.unit_column_2to4 li, ul.unit_column_2to1 li {
    display: block;
    width: 48%;
    margin: 10px 0 0 0; }
  ul.unit_2column li:nth-child(odd), ul.unit_column_2to3 li:nth-child(odd), ul.unit_column_2to4 li:nth-child(odd), ul.unit_column_2to1 li:nth-child(odd) {
    float: left;
    margin-right: 2%; }
  ul.unit_2column li:nth-child(even), ul.unit_column_2to3 li:nth-child(even), ul.unit_column_2to4 li:nth-child(even), ul.unit_column_2to1 li:nth-child(even) {
    float: right;
    margin-left: 2%; }
  ul.unit_2column li:nth-child(1), ul.unit_2column li:nth-child(2), ul.unit_column_2to3 li:nth-child(1), ul.unit_column_2to3 li:nth-child(2), ul.unit_column_2to4 li:nth-child(1), ul.unit_column_2to4 li:nth-child(2), ul.unit_column_2to1 li:nth-child(1), ul.unit_column_2to1 li:nth-child(2) {
    margin-top: 0; }

ul.unit_3column {
  clear: both;
  overflow: hidden;
  width: 100%;
  margin: 20px 0 0 0; }
  ul.unit_3column li {
    float: left;
    width: 30%;
    margin: 20px 5% 0 0;
    text-align: left; }
  ul.unit_3column li:nth-child(1), ul.unit_3column li:nth-child(2), ul.unit_3column li:nth-child(3) {
    margin-top: 0; }
  ul.unit_3column li:nth-child(3n) {
    margin-right: 0; }

p + ul.unit_column_1to2, p + ul.unit_column_1to3, p + ul.unit_column_1to4, p + ul.unit_column_2to4 {
  margin-top: 20px; }

p + ul.unit_btn-set_1to3 {
  margin-top: 20px; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  ul.unit_column_2to1 li {
    width: 100%; }
  ul.unit_column_2to1 li:nth-child(1) {
    margin-top: 0; }
  ul.unit_column_2to1 li:nth-child(2) {
    margin-top: 10px; }
  ul.unit_column_2to1 li:nth-child(odd) {
    float: none;
    margin-right: 0; }
  ul.unit_column_2to1 li:nth-child(even) {
    float: none;
    margin-left: 0; }

  ul.unit_column_1to2 {
    clear: both;
    overflow: hidden; }
    ul.unit_column_1to2 li {
      width: 49%;
      margin-top: 20px; }
    ul.unit_column_1to2 li:nth-child(odd) {
      float: left;
      margin-right: 1%; }
    ul.unit_column_1to2 li:nth-child(even) {
      float: right;
      margin-left: 1%; }
    ul.unit_column_1to2 li:nth-child(2) {
      margin-top: 0; }

  ul.unit_column_1to3, ul.unit_column_2to3 {
    clear: both;
    overflow: hidden; }
    ul.unit_column_1to3 li, ul.unit_column_2to3 li {
      float: left;
      width: 30%;
      margin: 40px 5% 0 0;
      text-align: left; }
    ul.unit_column_1to3 li:nth-child(odd), ul.unit_column_2to3 li:nth-child(odd) {
      margin-right: 5%; }
    ul.unit_column_1to3 li:nth-child(even), ul.unit_column_2to3 li:nth-child(even) {
      float: left;
      margin-left: 0; }
    ul.unit_column_1to3 li:nth-child(1), ul.unit_column_1to3 li:nth-child(2), ul.unit_column_1to3 li:nth-child(3), ul.unit_column_2to3 li:nth-child(1), ul.unit_column_2to3 li:nth-child(2), ul.unit_column_2to3 li:nth-child(3) {
      margin-top: 0; }
    ul.unit_column_1to3 li:nth-child(3n), ul.unit_column_2to3 li:nth-child(3n) {
      margin-right: 0; }

  ul.unit_column_1to4, ul.unit_column_2to4 {
    clear: both;
    overflow: hidden; }
    ul.unit_column_1to4 li, ul.unit_column_2to4 li {
      float: left;
      width: 24%;
      margin: 20px 1% 0 0; }
    ul.unit_column_1to4 li:nth-child(even), ul.unit_column_2to4 li:nth-child(even) {
      float: left;
      margin: 20px 1% 0 0; }
    ul.unit_column_1to4 li:nth-child(odd), ul.unit_column_2to4 li:nth-child(odd) {
      margin: 20px 1% 0 0; }
    ul.unit_column_1to4 li:nth-child(4n), ul.unit_column_2to4 li:nth-child(4n) {
      margin-right: 0; }
    ul.unit_column_1to4 li:nth-child(1), ul.unit_column_1to4 li:nth-child(2), ul.unit_column_1to4 li:nth-child(3), ul.unit_column_1to4 li:nth-child(4), ul.unit_column_2to4 li:nth-child(1), ul.unit_column_2to4 li:nth-child(2), ul.unit_column_2to4 li:nth-child(3), ul.unit_column_2to4 li:nth-child(4) {
      margin-top: 0; }

  ul.unit_column_1to5 {
    clear: both;
    overflow: hidden; }
    ul.unit_column_1to5 li {
      float: left;
      width: 16%;
      margin: 20px 5% 0 0;
      text-align: left; }
    ul.unit_column_1to5 li:nth-child(1), ul.unit_column_1to5 li:nth-child(2), ul.unit_column_1to5 li:nth-child(3), ul.unit_column_1to5 li:nth-child(4), ul.unit_column_1to5 li:nth-child(5) {
      margin-top: 0; }
    ul.unit_column_1to5 li:nth-child(5n) {
      margin-right: 0; } }
/*見出し*/
h2 {
  font-size: 2.0rem; }

h3 {
  font-size: 1.8rem; }

h1.page-title {
  margin: 0 0 10px 0;
  text-align: center;
  font-size: 2.0rem;
  font-weight: normal; }
  h1.page-title span {
    font-size: 1.4rem;
    color: #999999; }

h2.section-title {
  margin-bottom: 10px;
  padding-top: 10px;
  border-top: solid 1px #cccccc;
  line-height: 140%;
  font-weight: normal;
  color: #339933; }
  h2.section-title span {
    display: block;
    font-size: 1.4rem;
    font-weight: normal;
    color: #333333; }

h3.sub-section-title {
  margin-bottom: 10px;
  padding: 5px 0 5px 10px;
  border-left: solid 5px #339933;
  line-height: 140%; }

h2.list-title {
  text-align: center;
  color: #339933; }

section section h3.number_title {
  padding: 10px 0 10px 50px;
  background: url("../img/icon_num01.svg") no-repeat left center;
  background-size: 40px auto; }
section section + section h3.number_title {
  background-image: url("../img/icon_num02.svg"); }
section section + section + section h3.number_title {
  background-image: url("../img/icon_num03.svg"); }
section section + section + section + section h3.number_title {
  background-image: url("../img/icon_num04.svg"); }
section section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num05.svg"); }
section section + section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num06.svg"); }
section section + section + section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num07.svg"); }
section section + section + section + section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num08.svg"); }
section section + section + section + section + section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num09.svg"); }
section section + section + section + section + section + section + section + section + section + section h3.number_title {
  background-image: url("../img/icon_num10.svg"); }

@media screen and (max-width: 320px) {
  /*　画面サイズ 320pxまで適用　*/
  h2, h3 {
    font-size: 1.6rem; } }
@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  h2 {
    font-size: 3.0rem; }

  h3 {
    font-size: 2.6rem; }

  h1.page-title {
    margin-bottom: 40px;
    padding: 12px 0 12px 60px;
    background: url(../img/icon_page-title_pc.svg) no-repeat left center;
    background-size: 50px auto;
    text-align: left;
    line-height: 140%;
    font-size: 3.6rem; }

  h2.section-title {
    margin-bottom: 20px;
    padding-top: 20px; }

  section section h3.number_title {
    margin-bottom: 10px; } }
/*文字*/
p + p {
  margin: 20px 0 0 0; }

.item_note {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 160%;
  font-size: 1.4rem; }

.item_comment {
  font-size: 1.2rem;
  color: #339933; }

.item_align-center {
  text-align: center; }

.item_quotation {
  display: inline-block;
  width: 100%;
  padding: 10px;
  background-color: #efefef;
  font-style: italic; }

.item_emphasis {
  font-weight: bold;
  color: #339933; }

.item_quote {
  padding: 10px;
  background-color: #f6f6f6;
  font-style: oblique;
  font-size: 1.4rem; }
  .item_quote a {
    margin-top: 10px; }

section p strong {
  color: #339933; }

/*リスト*/
ol.list_number {
  margin-top: 10px; }
  ol.list_number li {
    padding: 10px 0 10px 50px;
    list-style-type: none; }
  ol.list_number li:nth-child(1) {
    background: url("../img/icon_num01.svg") no-repeat left center;
    background-size: 40px auto; }
  ol.list_number li:nth-child(2) {
    background: url("../img/icon_num02.svg") no-repeat left center;
    background-size: 40px auto; }
  ol.list_number li:nth-child(3) {
    background: url("../img/icon_num03.svg") no-repeat left center;
    background-size: 40px auto; }
  ol.list_number li:nth-child(4) {
    background: url("../img/icon_num04.svg") no-repeat left center;
    background-size: 40px auto; }
  ol.list_number li:nth-child(5) {
    background: url("../img/icon_num05.svg") no-repeat left center;
    background-size: 40px auto; }

ul.list_bullets, ol.list_bullets {
  margin: 10px 0; }
  ul.list_bullets li, ol.list_bullets li {
    margin-left: 20px; }
  ul.list_bullets li + li, ol.list_bullets li + li {
    margin-top: 20px; }

ul.list_bullets {
  list-style-type: disc; }

ul.unit_column-list li {
  background-color: #f3f3f3; }
  ul.unit_column-list li p.item_sumnail {
    display: block;
    position: relative; }
    ul.unit_column-list li p.item_sumnail span.label_category01, ul.unit_column-list li p.item_sumnail span.label_category02, ul.unit_column-list li p.item_sumnail span.label_category03, ul.unit_column-list li p.item_sumnail span.label_category04, ul.unit_column-list li p.item_sumnail span.label_category05,
    ul.unit_column-list li p.item_sumnail span.label_category00 {
      position: absolute;
      top: 5px;
      left: 5px;
      padding: 5px 10px;
      line-height: 100%;
      font-size: 1.2rem;
      color: #ffffff; }
    ul.unit_column-list li p.item_sumnail span.label_category01 {
      background-color: #990000; }
    ul.unit_column-list li p.item_sumnail span.label_category02 {
      background-color: #0066cc; }
    ul.unit_column-list li p.item_sumnail span.label_category03 {
      background-color: #fc578e; }
    ul.unit_column-list li p.item_sumnail span.label_category04 {
      background-color: #cc0066; }
    ul.unit_column-list li p.item_sumnail span.label_category05 {
      background-color: #d55dc0; }
    ul.unit_column-list li p.item_sumnail span.label_category00 {
      background-color: #333333; }
  ul.unit_column-list li p.item_caption {
    margin-top: 0;
    padding: 10px;
    line-height: 170%;
    font-size: 1.4rem; }

ul li h4, ul li strong, ol li h4, ol li strong {
  color: #339933; }

/*表組み*/
table {
  width: 100%; }
  table tr th, table tr td {
    padding: 10px;
    line-height: 170%;
    font-size: 1.4rem; }
  table tr + tr {
    border-top: solid 1px #ffffff; }
  table thead tr th {
    background-color: #339933;
    white-space: nowrap;
    color: #ffffff; }
  table tbody tr th {
    background-color: #e9e5d0;
    white-space: nowrap;
    text-align: left;
    font-weight: bold; }
  table tbody tr:nth-child(even) td {
    background-color: #f2f2f2; }

p + table, table + p {
  margin-top: 20px; }

/*イラスト・写真*/
img.item_kv-illust {
  margin-bottom: 20px; }

img.item_pic_r {
  float: right;
  width: 40%;
  margin: 0 0 20px 20px; }

dl.unit_sumnail {
  display: table; }
  dl.unit_sumnail dt, dl.unit_sumnail dd {
    display: table-cell;
    vertical-align: top; }
  dl.unit_sumnail dt {
    width: 30%; }
  dl.unit_sumnail dd {
    width: 70%;
    padding-left: 10px; }

@media screen and (min-width: 1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  img.item_kv-illust {
    float: right;
    width: 408px;
    margin: 0 0 0 24px; }

  img.item_pic_r {
    width: 30%; }

  dl.unit_sumnail {
    display: block; }
    dl.unit_sumnail dt, dl.unit_sumnail dd {
      display: block;
      width: 100%; }
    dl.unit_sumnail dd {
      padding: 10px 0 0 0; }

  ol.list_number h3, ol.list_number h4 {
    font-size: 2.0rem; } }
/* ----------------------------------------------------------
06:サブコンテンツ
-----------------------------------------------------------*/
aside.unit_2column {
  padding: 0 20px; }
  aside.unit_2column div.unit_sub-menu {
    padding: 1px;
    background-color: #ffffff;
    border: solid 1px #cccccc; }
    aside.unit_2column div.unit_sub-menu p.item_heading {
      padding: 10px;
      background-color: #339933;
      text-align: center;
      font-size: 1.6rem;
      color: #ffffff; }
    aside.unit_2column div.unit_sub-menu ul {
      margin: 10px; }
      aside.unit_2column div.unit_sub-menu ul li p.item_sub-heading {
        font-size: 1.6rem;
        font-weight: bold; }
      aside.unit_2column div.unit_sub-menu ul li a.link_glossary {
        dipslay: block;
        padding: 5px 0 5px 38px;
        background: url("../img/btn_glossary.svg") left center no-repeat;
        background-size: 30px auto; }
      aside.unit_2column div.unit_sub-menu ul li + li {
        margin-top: 10px; }
    aside.unit_2column div.unit_sub-menu ul + ul {
      margin-top: 10px;
      padding-top: 10px;
      border-top: dotted 1px #cccccc; }
  aside.unit_2column div.unit_sub-menu + div.unit_sub-menu {
    margin-top: 20px; }
  aside.unit_2column div.unit_glossary-menu {
    background-color: #ffffff;
    border: solid 1px #cccccc;
    padding: 10px 10px 0 10px; }
    aside.unit_2column div.unit_glossary-menu div.acd-content ul.unit_column_2to1 {
      margin: 10px 0; }
  aside.unit_2column div.unit_glossary-menu + div.unit_glossary-menu {
    margin-top: 10px; }
  @media screen and (min-width: 1000px) {
    aside.unit_2column {
      /*　画面サイズ 1000px以上から適用　*/
      float: right;
      width: 220px;
      margin-right: calc( (100% - 1100px) / 2 );
      margin-bottom: 40px;
      padding: 0; }
      aside.unit_2column div.unit_sub-menu ul li a.link_basic {
        padding: 0 0 0 25px;
        background-size: 20px auto; } }

/* ----------------------------------------------------------
07:外部css
-----------------------------------------------------------*/
/*select-css用に追加*/
/* class applies to select element itself, not a wrapper element */
.select-css {
  display: block;
  font-size: 16px;
  font-family: sans-serif;
  font-weight: 700;
  color: #444;
  line-height: 1.3;
  padding: .6em 1.4em .5em .8em;
  width: 100%;
  max-width: 100%;
  /* useful when width is set to anything other than 100% */
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #aaa;
  box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.04);
  border-radius: .5em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient.
    for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
  */
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
  background-repeat: no-repeat, repeat;
  /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
  background-position: right .7em top 50%, 0 0;
  /* icon size, then gradient */
  background-size: .65em auto, 100%; }

/* Hide arrow icon in IE browsers */
.select-css::-ms-expand {
  display: none; }

/* Hover style */
.select-css:hover {
  border-color: #888; }

/* Focus style */
.select-css:focus {
  border-color: #aaa;
  /* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
  box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
  box-shadow: 0 0 0 3px -moz-mac-focusring;
  color: #222;
  outline: none; }

/* Set options to normal weight */
.select-css option {
  font-weight: normal; }
