@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@font-face {
  font-family: "YuMinchoBold";
  font-weight: bold;

  src: local("YuMincho-Bold"), local("YuMincho");
}

@font-face {
  font-family: "MyYuGothicM";
  font-weight: normal;

  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular");
}

@font-face {
  font-family: "MyYuGothicM";
  font-weight: bold;

  src: local("YuGothic-Bold"), local("Yu Gothic");
}

@media screen and (max-width: 767px) {
  .sp-none {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .pc-none {
    display: none;
  }
}

@media screen and (max-width: 374px) {
  .sps-none {
    display: none;
  }
  .sps-block {
    display: block;
  }
}

/* ===========================================
  font
=========================================== */
html {
  font-size: 62.5%;
}

body {
  font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", 游ゴシック, "Yu Gothic", YuGothic, "Noto Sans Japanese", "Noto Sans CJK JP", sans-serif; 
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
  color: #333;
  background: #fff;

  -webkit-text-size-adjust: 100%;
}
.ie body {
  font-family: "Helvetica", Meiryo, sans-serif;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

a {
  color: #000;
}

/* ===========================================
  default
=========================================== */
* {
  box-sizing: border-box;
  word-wrap: break-word;
  word-break: normal;

  line-break: strict;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
}

h1,h2,h3,h4 {
  line-height: 1;
  margin: 0;
  padding: 0;
  letter-spacing: .05em;
}

ul,ol,dd,figure {
  margin: 0;
  padding: 0; 
  list-style-type: none;
}

li {
  margin: 0; 
  list-style-type: none;
}

a {
  cursor: pointer; 
  text-decoration: none;
}

a:hover img {
  -webkit-transition: opacity .5s;
  transition: opacity .5s; 
  opacity: .75;
}

p,section {
  margin: 0;
  padding: 0;
}

em,address {
  font-style: normal;
}

img {
  border: none;
}

s {
  text-decoration: line-through;
}

picture {
  display: block;
  width: 100%;
  text-align: center;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-webkit-input-placeholder-shown {
  color: #ccc;
}

::-moz-placeholder-shown {
  color: #ccc;
}

:-ms-input-placeholder-shown {
  color: #ccc;
}

::placeholder-shown {
  color: #ccc;
}

/* =========================================
	Header
========================================= */
@media screen and (min-width: 768px) {
  .header-ttl {
    line-height: 0;
  }
  .header-inn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 10px auto 20px; 

    -webkit-box-align: end; 

    -webkit-align-items: flex-end; 

    -ms-flex-align: end; 

    align-items: flex-end;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .header-infoInn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 3px; 

    -webkit-box-pack: end; 

    -webkit-justify-content: flex-end; 

    -ms-flex-pack: end; 

    justify-content: flex-end;
  }
  .header-contact {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .header-contact li {
    line-height: 0; 
    margin: 0 0 0 15px;
  }
  .header-contact_sp {
    display: none;
  }
  .headerNav {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .header {
    overflow: hidden;
  }
  .header-ttl {
    line-height: 0; 
    margin: 0 5px 0 10px;
    padding: 5px 0;
  }
  .header-inn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto; 

    -webkit-box-align: center; 

    -webkit-align-items: center; 

    -ms-flex-align: center; 

    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .header-contact_sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 50px 0 auto;
  }
  .header-contact_sp li {
    font-size: 10px;
    font-size: 1rem;
    line-height: 0;
    color: #fff;
  }
  .header-contact_sp li a {
    line-height: 1.2;
    display: block;
    width: 50px;
    height: 50px;
    padding: 10px 0 0;
    text-align: center; 
    color: #fff;
  }
  .header-contact_sp li:first-child {
    background: #43a559;
  }
  .header-contact_sp li:nth-child(2) {
    background: #f09924;
  }
  .headerNav {
    position: relative;
    z-index: 100; 
    width: 50px;
    height: 50px;
  }
}

/* 検索
========================================== */
.searchBox {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 45px 0 0;
  padding: 0;
  border: 1px solid #999;
  border-radius: 5px; 

  -webkit-box-align: center; 

  -webkit-align-items: center; 

  -ms-flex-align: center; 

  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.searchBox input[type="search"] {
  font-size: 14px;
  font-size: 1.4rem;
  width: 225px;
  padding: 5px 10px 5px 5px !important;
  border: none !important;
  border-radius: 5px 0 0 5px;
  background-position: 5px !important;

  -webkit-appearance: textfield;
}
.searchBox input[type="search"]:focus {
  outline-offset: 0 -5px;
}
.searchBox input[type="search"]::-webkit-search-decoration {
  display: none;
}
.searchBox button {
  line-height: 0; 
  padding: 5px;
  border: none;
  border-radius: 0 5px 5px 0;
  background: #fff;
}

_::-webkit-full-page-media,_:future,:root .searchBox input[type="search"] {
  padding: 0 5px 0 5px !important;
}

@media screen and (min-width: 768px) {
  .searchBox::before {
    position: absolute;
    top: 0;
    left: 213px;
    display: block;
    width: 10px;
    height: 100%;
    content: "";
    border-right: 1px solid #999 !important;
  }
}

@media screen and (max-width: 767px) {
  .searchBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 20px 10px 0 10px;
    border-radius: 0; 

    -webkit-box-align: end; 

    -webkit-align-items: flex-end; 

    -ms-flex-align: end; 

    align-items: flex-end;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .searchBox input[type="search"] {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4; 
    width: calc(100% - 35px);
    height: 35px;
    padding: 5px 10px;
    border: none;
    border-radius: 0;
  }
  .searchBox button {
    width: 35px;
    height: 35px;
    padding: 0;
    border: none;
    border-left: 1px solid #999;
    border-radius: 0; 
    background: #fff;
  }
}

/* 文字サイズ変更
========================================== */
.fontsize {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: end;

  -webkit-align-items: flex-end;

  -ms-flex-align: end;

  align-items: flex-end;
}
.fontsize li {
  margin: 0 0 0 5px;
}

/* ===========================================
   navigation
=========================================== */
/* PC・タブ
========================================== */
@media screen and (min-width: 768px) {
  .gnav {
    background: #26873a;
  }
  .gnav-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 0 auto;
    border-left: 1px solid #a2bb99;
  }
  .gnav-list > li {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
    position: relative;
    z-index: 1; 
    width: 200px;
    border-right: 1px solid #a2bb99;
  }
  .gnav-list > li:last-child {
    -webkit-flex-shrink: 2;
    -ms-flex-negative: 2;
    flex-shrink: 2;
  }
  .gnav-list > li a {
    display: block;
    padding: 25px 0 22px;
    text-align: center; 
    color: #fff;
  }
  .gnav-list > li a:hover {
    -webkit-transition: ease-in-out .2s;
    transition: ease-in-out .2s; 
    background: rgba(255, 255, 255, .2);
  }
  .gnav-listInn {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: rgba(38, 135, 59, .9);
  }
  .gnav-listInn > li {
    font-size: 14px;
    font-size: 1.4rem;
    overflow: hidden;
    width: 100%;
    height: 0;
    -webkit-transition: all .5s;
    transition: all .5s; 
    opacity: 0;
  }
  .gnav-listInn > li:last-child {
    border: none;
  }
  .gnav-listInn > li a {
    padding: 20px 20px 17px;
  }
  .gnav-list > li:hover li {
    overflow: visible;
    height: auto;
    opacity: 1;
    border-bottom: 1px solid #98cdb0;
  }
  .check,.menu-btn,.close-menu,.drawer-menu {
    display: none;
  }
}

/* スマホ
========================================== */
@media screen and (max-width: 767px) {
  .gnav {
    overflow: auto;
    height: 100%;
    padding: 0 0 100px; 
    background: #26873a;
  }
  .gnav-list a {
    line-height: 1.5; 
    display: block;
    padding: 10px 10px 10px 20px;
    color: #fff;
  }
  .gnav-list > li {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .gnav-list > li span {
    line-height: 1.5;
    display: block;
    padding: 10px 10px 10px 20px;
    cursor: pointer; 
    color: #fff;
    border-bottom: 2px solid #98cdb0;
    background: url(../img/icn_down.png) 96% center no-repeat;
    background-size: 15px;
  }
  .gnav-list > li .active {
    background: url(../img/icn_up.png) 96% center no-repeat;
    background-size: 15px;
  }
  .gnav-list > li a {
    border-bottom: 2px solid #98cdb0;
  }
  .gnav-listInn {
    background: #009936;
  }
  .gnav-listInn li {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .gnav-listInn li:last-child a {
    border-bottom: 2px solid #98cdb0;
  }
  .gnav-listInn li a {
    padding: 10px 10px 10px 35px;
    border-bottom: 1px solid #98cdb0;
  }
}

/* ドロワー用
========================================== */
/* メインコンテンツ設定 */
@media screen and (max-width: 767px) {
  .contents {
    width: 100%;
    margin: 0; 
    padding: 0;
  }
  /* ドロワーメニュー */
  .drawer-menu {
    position: fixed;
    top: 0;
    right: -275px;
    width: 275px;
    height: 100%;
    -webkit-transition-duration: .5s;
    transition-duration: .5s;
    -webkit-transition-property: all;
    transition-property: all;
    opacity: 0; 
    background: #26873a;
  }
  /* チェックボックスを非表示 */
  .check {
    display: none !important;
  }
  /* メニューボタン(label) */
  /* menu button - label tag */
  .menu-btn {
    position: absolute;
    z-index: 3; 
    top: 0;
    right: 0;
    display: block;
    width: 50px;
    margin: 10px 0 0;
    cursor: pointer;
    text-align: center;
  }
  .barBox {
    display: block;
    width: 20px;
    margin: 0 auto;
  }
  .bar {
    position: relative;
    top: 0;
    display: block;
    width: 20px;
    height: 3px;
    -webkit-transition: all .5s;
    transition: all .5s;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top; 
    background: #26873a;
  }
  .bar.middle {
    top: 4px;
    opacity: 1;
  }
  .bar.bottom {
    top: 8px;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
  }
  .bar-txt {
    font-size: 10px;
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
  }
  .bar-txt_open {
    position: relative;
    top: 13px;
    left: 0;
    display: block;
    visibility: visible;
    opacity: 1; 
    color: #26873a;
  }
  .bar-txt_close {
    font-size: 10px;
    font-size: 1rem;
    position: relative;
    top: 13px;
    left: 0;
    display: none;
    visibility: hidden;
    opacity: 0; 
    color: #fff;
  }
  /* コンテンツの閉じる。普段は非表示(label)*/
  .close-menu {
    position: fixed;
    top: 0;
    right: 275px;
    visibility: hidden;
    width: 100%;
    height: 100vh;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: all;
    transition-property: all;
    opacity: 0; 
    background: transparent;
  }
  /* チェックボックスオンの時 */
  .check:checked ~ .drawer-menu {
    z-index: 2; 
    right: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
  }
  .check:checked ~ .contents {
    position: fixed;
  }
  .check:checked ~ .menu-btn {
    position: fixed;
    z-index: 100; 
    right: 275px;
  }
  .check:checked ~ .menu-btn .bar-txt .bar-txt_open {
    display: none;
    visibility: hidden;
    opacity: 0;
  }
  .check:checked ~ .menu-btn .bar-txt .bar-txt_close {
    display: block;
    visibility: visible;
    opacity: 1;
  }
  .check:checked ~ .menu-btn .bar {
    left: 4px;
    background: #fff;
  }
  .check:checked ~ .menu-btn .bar.top {
    width: 22px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .check:checked ~ .menu-btn .bar.middle {
    opacity: 0;
  }
  .check:checked ~ .menu-btn .bar.bottom {
    top: 8px;
    width: 22px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .check:checked ~ .close-menu {
    z-index: 3; 
    visibility: visible;
    -webkit-transition-duration: .8s;
    transition-duration: .8s;
    opacity: 1;
    background: rgba(0, 0, 0, .7);
  }
}

/* =========================================
	page top
========================================= */
.pagetop {
  padding: 20px 0 15px;
  text-align: center; 
  border-bottom: 1px solid #deebb8;
  background: #edf0e1;
}
@media screen and (max-width: 767px) {
  .pagetop {
    padding: 15px 0 12px;
  }
  .pagetop a {
    display: block;
  }
}

/* =========================================
	footer
========================================= */
.footer {
  background: #399350;
}
.footer-info {
  background: #f4f4ec;
}
.footer-infoInn {
  position: relative;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 1000px;
  margin: 0 auto;
  padding: 40px 0 30px; 

  -webkit-box-align: end; 

  -webkit-align-items: flex-end; 

  -ms-flex-align: end; 

  align-items: flex-end;
}
.footer-infoInn::after {
  position: absolute;
  top: -30px;
  right: 0;
  content: url(../img/character_pc.png);
}
.footer-logo {
  margin: 0 50px 0 0;
}
.footer-logo a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.footer-logo div {
  margin: 0 10px 0 0;
}
.footer-logo dl {
  margin: 0;
}
.footer-logo dt {
  font-weight: bold; 
  margin: 0 0 3px;
}
.footer-logo dd {
  font-size: 14px;
  font-size: 1.4rem;
}
.footer-tel {
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .footer-infoInn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0;
    padding: 20px 0 20px 0; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .footer-infoInn::after {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    content: none;
  }
  .footer-logo {
    width: 100%;
    margin: 0 0 20px;
    text-align: center;
  }
  .footer-logo a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

    -webkit-flex-flow: column;

    -ms-flex-flow: column;

    flex-flow: column;
  }
  .footer-logo div {
    margin: 0 0 3px;
  }
  .footer-logo dl {
    margin: 0;
    text-align: center;
  }
  .footer-logo dt {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold; 
    margin: 0;
    padding: 0;
  }
  .footer-logo dd {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .footer-tel {
    width: 100%;
    text-align: center;
  }
}

/* footer navi
========================================== */
.footer-link {
  border-top: 10px solid #89b700;
}

.footer-linkInn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0 30px; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}

.footer-list {
  color: #fff;
}
.footer-list li {
  font-weight: bold;
}
.footer-list a {
  display: inline-block;
  margin: 0 0 15px; 
  color: #fff;
}
@media screen and (min-width: 768px) {
  .footer-list a:hover {
    text-decoration: underline;
  }
}

.footer-listInn {
  margin: 0 0 20px;
}
.footer-listInn li {
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .footer {
    margin: 0;
  }
  .footer-link {
    padding: 0 10px 10px 30px;
    border-top: 10px solid #89b700;
  }
  .footer-linkInn {
    font-size: 13px;
    font-size: 1.3rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0 auto;
    padding: 30px 0 0;
    background: url(../img/character_sp.png) right bottom no-repeat;
    background-size: 193px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .footer-list {
    color: #fff;
  }
  .footer-list li {
    font-weight: normal;
  }
  .footer-list a {
    display: inline-block;
    margin: 0 0 10px; 
    color: #fff;
  }
}

/* =========================================
	copyright
========================================= */
.copyright {
  width: 1000px;
  margin: 10px auto;
  padding: 0 0 20px;
  text-align: right; 
  color: #fff;
  border: 0;
}
@media screen and (max-width: 767px) {
  .copyright {
    width: 100%;
    margin: 0;
    padding: 0 0 10px;
    text-align: center;
  }
}
.copyright small {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .copyright small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

/* ===========================================
  パンくず
=========================================== */
.breadcrumb {
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
  margin: 0 0 55px;
  background: #f4f4ec;
}
.breadcrumb-list {
  width: 1000px;
  margin: 0 auto;
  padding: 20px 0;
}
.breadcrumb-list > li {
  display: inline-block;
}
.breadcrumb-list > li > a {
  padding: 0 0 2px;
  text-decoration: underline; 
  color: #187392;
}
@media screen and (min-width: 768px) {
  .breadcrumb-list > li > a:hover {
    text-decoration: none;
  }
}
.breadcrumb-list > li::after {
  margin: 0 0 0 5px;
  padding: 0 3px 0 0; 
  content: "＞";
}
.breadcrumb-list > li:last-child::after {
  content: "";
}

@media screen and (max-width: 767px) {
  .breadcrumb {
    font-size: 12px;
    font-size: 1.2rem;
    width: 100%;
    margin: 0 0 30px;
  }
  .breadcrumb-list {
    width: auto;
    padding: 10px;
  }
}

/* ===========================================
 トップ
=========================================== */
.mv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 350px;
  border-bottom: 2px solid #26873a; 
  background: #76a9dc url(../img/top/mv_bg_pc.jpg) center center no-repeat;

  -webkit-box-align: center;

  -webkit-align-items: center;

  -ms-flex-align: center;

  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mv-ttl {
  margin: 10px 0 15px 0;
}
.mv-txt {
  margin: 0 0 0 -10px;
}

.topInfo {
  background: #f7f7f0;
}
.topInfo-inn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 1020px;
  margin: 0 auto;
  padding: 60px 0; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}

.topNews {
  width: 480px;
}
.topNews-ttl {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 0 0 10px;
  color: #26873a; 
  border-bottom: 3px solid #26873a;
}
.topNews-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  border-bottom: 1px solid #999;
}
.topNews-box dt {
  font-weight: bold; 
  padding: 15px 15px 15px 2px;
}
.topNews-box dd {
  padding: 15px 10px 10px 0;
}
.topNews-box dd a {
  text-decoration: underline;
  color: #268639;
}

.topBan {
  position: relative;
  width: 520px;
  padding: 13px 0 0;
}

@media screen and (max-width: 767px) {
  .mv {
    height: 100%;
    padding: 0 50px;
    background: #76a9dc url(../img/top/mv_bg_sp.jpg) center bottom no-repeat;
    background-size: 375px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .mv-ttl {
    margin: 20px 0 0 0;
  }
  .mv-txt {
    margin: -5px 0 0 -10px;
  }
  .topInfo-inn {
    width: 100%;
    margin: 0 auto;
    padding: 20px 0 30px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .topNews {
    width: 100%;
    padding: 0 15px;
  }
  .topNews-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 0 0 10px;
    color: #26873a; 
    border-bottom: 2px solid #26873a;
  }
  .topNews-box {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .topNews-box dt {
    padding: 10px 5px 0 2px;
  }
  .topNews-box dd {
    padding: 0 10px 10px 0;
  }
  .topNews-box dd a {
    text-decoration: underline;
    color: #268639;
  }
  .topBan {
    position: relative;
    width: 100%;
    padding: 13px 0 0;
  }
  .topBan li {
    padding: 0 15px;
  }
}

/* 
========================================== */
.topSec {
  margin: 0 0 70px;
}
.topSec-ttl {
  font-size: 28px;
  font-size: 2.8rem;
  margin: 0 0 50px;
  padding: 25px 0 20px;
  text-align: center; 
  color: #fff;
  background: #89b700;
}
.topSec-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 1000px;
  margin: 0 auto 30px;
}
.topSec-fig {
  margin: 0 25px 0 0;
}
.topSec-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 760px;
  margin: 0;
  border-top: 2px solid #89b700; 

  -webkit-box-orient: vertical; 

  -webkit-box-direction: normal; 

  -webkit-flex-flow: column wrap; 

  -ms-flex-flow: column wrap; 

  flex-flow: column wrap;
}
.topSec-box dt {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold; 
  margin: 15px 0 20px;
}
.topSec-btn {
  margin-top: auto;
  margin-left: auto;

  -webkit-align-self: flex-end;

  -ms-flex-item-align: end;

  align-self: flex-end;
}
.topSec-btn a {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold; 
  position: relative;
  display: inline-block;
  padding: 10px 40px 7px;
  color: #268639;
  border: 1px solid #89b700;
  border-radius: 3px;
  background: #e4eec4;
}
.topSec-btn a:hover {
  opacity: .8;
}
.topSec-btn a::after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0;
  content: "";
  -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg); 
  border-top: 2px solid #26873a;
  border-right: 2px solid #26873a;
}
.topSec-btn a:hover::after {
  right: 9px;
}
.topSec-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 1000px;
  margin: 0 auto 30px; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}
.topSec-list li {
  font-size: 30px;
  font-size: 3rem;
}
.topSec-list li:first-child {
  background: url(../img/top/pic_product01_pc.jpg) center center no-repeat;
}
.topSec-list li:nth-child(2) {
  background: url(../img/top/pic_product02_pc.jpg) center center no-repeat;
}
.topSec-list li a {
  font-weight: bold;
  line-height: 1.4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 480px;
  height: 250px;
  text-align: center;
  color: #fff;
  text-shadow: 0 0 50px rgba(0, 0, 0, .7); 

  -webkit-box-align: center; 

  -webkit-align-items: center; 

  -ms-flex-align: center; 

  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.topSec-list li a:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  background: rgba(0, 0, 0, .3);
}
.topSec-txt {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .topSec {
    margin: 0 0 60px;
  }
  .topSec-ttl {
    font-size: 22px;
    font-size: 2.2rem;
    margin: 0 0 15px;
    padding: 20px 0 15px;
  }
  .topSec-block {
    width: 100%;
    margin: 0 auto 30px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .topSec-fig {
    margin: 0 15px;
  }
  .topSec-box {
    width: 100%;
    padding: 0 15px;
    border-top: none; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .topSec-box dt {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 10px 0;
    text-align: center;
  }
  .topSec-box dd {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .topSec-btn {
    width: 100%;
    margin: 10px 0 0; 

    -webkit-align-self: center; 

    -ms-flex-item-align: center; 

    -ms-grid-row-align: center; 

    align-self: center;
  }
  .topSec-btn a {
    font-size: 15px;
    font-size: 1.5rem;
    display: block;
    margin: 0;
    padding: 10px 0;
    text-align: center; 
    border: 1px solid #89b700;
  }
  .topSec-list {
    width: 100%;
    margin: 0 auto 10px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .topSec-list li {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 15px 10px;
  }
  .topSec-list li:first-child {
    background: url(../img/top/pic_product01_sp.jpg) center center no-repeat;
  }
  .topSec-list li:nth-child(2) {
    background: url(../img/top/pic_product02_sp.jpg) center center no-repeat;
  }
  .topSec-list li a {
    width: 100%;
    height: 150px;
    text-shadow: 0 0 50px rgba(0, 0, 0, .7);
  }
  .topSec-txt {
    padding: 0 10px;
    text-align: center;
  }
}

/* ===========================================
  会社概要
=========================================== */
.companyNav {
  width: 100%;
}
.companyNav-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 40px 0 50px; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}
.companyNav-list li {
  width: calc(100% / 4 - 10px);
}
.companyNav-list li a {
  font-weight: bold;
  position: relative;
  display: block;
  width: 100%;
  padding: 15px 10px 12px;
  text-align: center; 
  color: #268639;
  border: 1px solid #89b700;
  border-radius: 3px;
  background: #e4eec4;
}
.companyNav-list li a:hover {
  -webkit-transition: .5s;
  transition: .5s; 
  opacity: .8;
}
.companyNav-list li a::after {
  position: absolute;
  top: 50%;
  right: 15px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -7px;
  content: "";
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg); 
  border-top: 2px solid #26873a;
  border-right: 2px solid #26873a;
}

@media screen and (max-width: 767px) {
  .companyNav {
    width: 100%;
  }
  .companyNav-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 50px; 

    -webkit-flex-flow: wrap; 

    -ms-flex-flow: wrap; 

    flex-flow: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .companyNav-list li {
    width: 50%;
  }
  .companyNav-list li:nth-child(odd) a {
    border-right: 1px solid #89b700;
  }
  .companyNav-list li a {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 15px 10px 12px;
    border: none;
    border-bottom: 1px solid #89b700;
    border-radius: 0;
  }
}

.companySec {
  margin: 0 10px 70px;
  padding: 5px 0;
}
.companySec a {
  text-decoration: underline; 
  color: #187292;
}
.companySec-ttl {
  font-size: 27px;
  font-size: 2.7rem;
  margin: 0 0 20px;
  padding: 0 0 0 20px;
  border-left: 3px solid #89b700;
}
.companySec-tbl {
  width: 100%;
  border-collapse: collapse; 
  border-bottom: 1px solid #ccc;
}
.companySec-tbl th {
  font-size: 18px;
  font-size: 1.8rem;
  width: 300px;
  padding: 20px 20px 15px;
  text-align: left;
  vertical-align: top; 
  border-top: 1px solid #ccc;
}
.companySec-tbl td {
  padding: 20px 10px 15px 0;
  border-top: 1px solid #ccc;
}
.companySec-dlist {
  margin: 0;
  padding: 0;
}
.companySec-dlist dd {
  margin: 0 0 10px;
}
.companySec-dlist dd:last-child {
  margin: 0;
}
.companySec-map {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 35px;
  background: #f2f8f3; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}
.companySec-mapItem dt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold; 
  margin: 0 0 10px;
}
.companySec-mapItem dd p {
  margin: 5px 0 0;
}

@media screen and (max-width: 767px) {
  .companySec {
    margin: 0 0 40px;
    padding: 5px 0;
  }
  .companySec-ttl {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 15px 15px;
    padding: 0 0 0 10px;
    border-left: 3px solid #89b700;
  }
  .companySec-tbl {
    width: 100%;
  }
  .companySec-tbl th {
    font-size: 16px;
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 10px 15px 5px;
    background: #f2f8f3;
  }
  .companySec-tbl td {
    display: block;
    padding: 10px 15px 10px;
    border-top: 1px solid #ccc;
  }
  .companySec-map {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0 20px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .companySec-map iframe {
    width: 100%;
  }
  .companySec-mapItem dt {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold; 
    margin: 0 0 10px;
  }
  .companySec-mapItem dd p {
    margin: 5px 0 0;
  }
}

/* 社長メッセージ
========================================== */
.messageBox {
  overflow: hidden;
  padding: 0 80px;
}
.messageBox:last-of-type {
  margin: 0 0 70px;
}
.messageBox-pic1 {
  float: left;
  margin: 0 30px 5px 0;
}
.messageBox-pic1 img {
  margin: 0 0 5px;
}
.messageBox-pic1 figcaption {
  font-size: 14px;
  font-size: 1.4rem;
}
.messageBox-pic1 figcaption strong {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
.messageBox-pic2 {
  float: right;
  margin: 0 0 10px 30px;
}
.messageBox-pic2 img {
  margin: 0 0 5px;
}
.messageBox p {
  line-height: 1.8; 
  margin: 0 0 1em;
}

@media screen and (max-width: 767px) {
  .messageBox {
    overflow: hidden;
    padding: 0 15px;
  }
  .messageBox:last-of-type {
    margin: 0 0 40px;
  }
  .messageBox-pic1 {
    float: none;
    margin: 0 0 20px 0;
    text-align: center;
  }
  .messageBox-pic1 img {
    margin: 0 0 5px;
  }
  .messageBox-pic1 figcaption strong {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold; 
    margin: 0 0 0 10px;
  }
  .messageBox-pic2 {
    float: none;
    margin: 0 0 10px 0;
    text-align: center;
  }
  .messageBox-pic2 img {
    margin: 0 0 5px;
  }
}

.messageSec {
  margin: 0 80px 70px;
}
.messageSec-ttl {
  font-size: 27px;
  font-size: 2.7rem;
  margin: 0 0 20px;
  padding: 0 0 0 20px;
  border-left: 3px solid #89b700;
}
.messageSec-tbl {
  width: 100%;
  border-collapse: collapse; 
  border-bottom: 1px solid #ccc;
}
.messageSec-tbl th {
  font-size: 18px;
  font-size: 1.8rem;
  width: 180px;
  padding: 20px 20px 15px;
  text-align: left;
  vertical-align: top;
  white-space: nowrap; 
  border-top: 1px solid #ccc;
}
.messageSec-tbl td {
  padding: 20px 20px 15px 0;
  border-top: 1px solid #ccc;
}
.messageSec-list li {
  margin: 0 0 1em 2.5em;
  text-indent: -2.5em;
}
.messageSec-list li:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .messageSec {
    margin: 0 0 40px;
    padding: 5px 0;
  }
  .messageSec-ttl {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 15px 15px;
    padding: 0 0 0 10px;
    border-left: 3px solid #89b700;
  }
  .messageSec-tbl {
    width: 100%;
  }
  .messageSec-tbl th {
    font-size: 16px;
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 10px 15px 5px;
    background: #f2f8f3;
  }
  .messageSec-tbl td {
    display: block;
    padding: 10px 15px 10px;
    border-top: 1px solid #ccc;
  }
  .messageSec-list li {
    margin: 0 0 1em 2.5em;
    text-indent: -2.5em;
  }
  .messageSec-list li:last-child {
    margin-bottom: 0;
  }
}

/* ===========================================
  事業内容
=========================================== */
.bizTop-mv {
  color: #fff; 
  background: #dadddb url(../img/business/pic_top_mv.jpg) center center no-repeat;
  background-size: cover;
}

/* 下層
========================================== */
.bizSec {
  margin: 45px 0 50px;
}
.bizSec-ttl {
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 45px;
  text-align: left;
  letter-spacing: .05em;
}
.bizSec-ttl::after {
  position: relative;
  bottom: 0;
  left: 0;
  display: block;
  width: 80px;
  margin: 15px 0 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}
.bizSec-lead {
  margin: 0 0 40px;
}

@media screen and (max-width: 767px) {
  .bizSec {
    margin: 30px 0 0;
  }
  .bizSec-ttl {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 0 20px;
    padding: 0 15px;
  }
  .bizSec-ttl::after {
    width: 40px;
  }
  .bizSec-lead {
    margin: 0 0 40px;
    padding: 0 15px;
  }
}

.bizSecWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

  -ms-flex-pack: justify;

  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .bizSecWrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

    -webkit-flex-flow: column;

    -ms-flex-flow: column;

    flex-flow: column; 
    -webkit-box-pack: justify; 
    -webkit-justify-content: space-between; 
    -ms-flex-pack: justify; 
    justify-content: space-between;
  }
}

.bizSecNav {
  width: 230px;
}
.bizSecNav-inn {
  padding: 30px 30px 15px;
  background: #f4f9f5;
}
.bizSecNav-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: normal; 
  margin: 0 0 15px;
}
.bizSecNav-list li {
  position: relative;
  margin: 0 0 10px;
  padding: 0 0 0 18px;
}
.bizSecNav-list li:after {
  position: absolute;
  top: .4em;
  left: 0;
  display: inline-block;
  width: 0;
  height: 0;
  content: "";
  border-top: 5px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 6px solid #018c40;
}
.bizSecNav-list li a:hover {
  text-decoration: underline;
}
.bizSecNav-list li .active {
  font-weight: bold;
  color: #26873a;
}

@media screen and (max-width: 767px) {
  .bizSecNav {
    width: 100%; 

    -webkit-box-ordinal-group: 3; 

    -webkit-order: 2; 

    -ms-flex-order: 2; 

    order: 2;
  }
  .bizSecNav-inn {
    padding: 15px 0 0;
  }
  .bizSecNav-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0;
    padding: 0 20px 10px;
    border-bottom: 2px solid #cce9d3;
  }
  .bizSecNav-list li {
    position: relative;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #cce9d3;
  }
  .bizSecNav-list li:after {
    top: 50%;
    right: 15px;
    left: auto;
    margin-top: -6px;
  }
  .bizSecNav-list li a {
    display: block;
    padding: 15px 20px 15px 20px;
  }
  .bizSecNav-list li a:hover {
    text-decoration: none;
  }
}

.bizSecBlock {
  margin: 0 0 0;
  padding: 5px 0 50px;
}
.bizSecBlock-out {
  width: 700px;
}
.bizSecBlock-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.bizSecBlock-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.3; 
  margin: 0 0 20px;
  color: #26873a;
}
.bizSecBlock-pic {
  float: left;
  margin: 0 25px 0 0;
}
.bizSecBlock-pics {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 30px; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}
.bizSecBlock-fig {
  float: left;
  margin: 0 25px 20px 0;
}
.bizSecBlock-figs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 30px; 

  -webkit-box-pack: justify; 

  -webkit-justify-content: space-between; 

  -ms-flex-pack: justify; 

  justify-content: space-between;
}
.bizSecBlock-item {
  position: relative;
  overflow: hidden;
  margin: -3px 0 0 0;
  padding: 0 0 0 15px;
}
@media screen and (min-width: 768px) {
  .bizSecBlock-item::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
}
.bizSecBlock-item p {
  margin: 0 0 1em;
}
.bizSecBlock-item p:last-child {
  margin: 0;
}
.bizSecBlock-note {
  display: table;
  margin: 20px 5px 5px 0;
  border: 1px solid #cce9d3;
}
@media screen and (min-width: 768px) {
  .bizSecBlock-note {
    box-shadow: 5px 5px 0 #e9f3eb;
  }
}
.bizSecBlock-note > dt {
  font-weight: bold;
  display: table-cell;
  padding: 25px 25px 20px;
  vertical-align: middle; 
  white-space: nowrap;
  background: #e5f8e9;
}
.bizSecBlock-note > dd {
  display: table-cell;
  padding: 25px 25px 20px;
}
.bizSecBlock-noteBox {
  margin: 0;
  padding: 0;
}
.bizSecBlock-noteBox > dt {
  font-weight: bold;
}
.bizSecBlock-noteBox > dd {
  margin: 0 0 15px;
}
.bizSecBlock-noteBox > dd:last-child {
  margin: 0;
}
.bizSecBlock-dlist {
  line-height: 1.5; 
  margin: 0;
}
.bizSecBlock-dlist dt {
  font-weight: bold;
}
.bizSecBlock-dlist dd {
  margin: 0 0 10px;
}
.bizSecBlock-btnBox {
  margin: 30px 0 0;
  text-align: center;
}
.bizSecBlock-btn {
  margin: 20px 0 0;
}
.bizSecBlock-btn a {
  position: relative;
  display: inline-block;
  padding: 15px 50px 11px 40px;
  color: #fff; 
  border-radius: 3px;
  background: #26873a;
}
.bizSecBlock-btn a:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  opacity: .9;
}
.bizSecBlock-btn a::after {
  position: absolute;
  top: 50%;
  right: 30px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); 
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.bizSecBlock-btn a:hover::after {
  right: 28px;
}

@media screen and (max-width: 767px) {
  .bizSecBlock {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    margin: 0 0 40px;
    padding: 0; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .bizSecBlock-out {
    width: 100%;
    padding: 0 15px; 

    -webkit-box-ordinal-group: 2; 

    -webkit-order: 1; 

    -ms-flex-order: 1; 

    order: 1;
  }
  .bizSecBlock-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

    -webkit-flex-flow: column;

    -ms-flex-flow: column;

    flex-flow: column;
  }
  .bizSecBlock-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4; 
    margin: 0 0 10px;
  }
  .bizSecBlock-pic {
    float: none;
    margin: 0 0 10px;
    text-align: center;
  }
  .bizSecBlock-pics {
    margin: 0 auto 20px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .bizSecBlock-pics img {
    margin: 0 auto 10px;
  }
  .bizSecBlock-pics img:last-child {
    margin: auto 0;
  }
  .bizSecBlock-fig {
    float: none;
    margin: 0 0 10px;
    text-align: center;
  }
  .bizSecBlock-figs {
    margin: 0 auto 20px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .bizSecBlock-figs img {
    margin: 10px auto 0;
  }
  .bizSecBlock-item {
    margin: 0;
    padding: 0;
  }
  .bizSecBlock-note {
    display: block;
    margin: 20px 0 10px;
  }
  .bizSecBlock-note > dt {
    display: block;
    padding: 10px 15px 8px;
  }
  .bizSecBlock-note > dd {
    display: block;
    padding: 10px 15px 8px;
  }
  .bizSecBlock-noteBox {
    margin: 0;
    padding: 0;
  }
  .bizSecBlock-noteBox > dt {
    font-weight: bold;
  }
  .bizSecBlock-noteBox > dd {
    margin: 0 0 10px;
  }
  .bizSecBlock-noteBox > dd:last-child {
    margin: 0;
  }
  .bizSecBlock-btnBox {
    margin: 20px 0 0;
    text-align: center;
  }
  .bizSecBlock-btn {
    margin: 15px 0 0;
  }
  .bizSecBlock-btn a {
    width: 100%;
  }
}

/* ===========================================
  事業内容
=========================================== */
.customer {
  padding: 0 0 70px;
}

.customerTop-mv {
  color: #fff; 
  background: #dadddb url(../img/customer/pic_top_mv.jpg) center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .customer {
    padding: 0 0 50px;
  }
}

/* よくある質問
========================================== */
.faq {
  padding: 0 0 50px;
}
.faq-txt {
  margin: 0 80px 40px; 
  text-align: center;
}

.faqBox {
  position: relative;
  margin: 0 80px 50px;
  padding: 40px 70px 10px; 
  border: 1px solid #89b700;
}
.faqBox span {
  display: block;
}
.faqBox-mark {
  float: left;
  margin: 0 30px 0 0;
}
.faqBox-q {
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.8; 
  display: block;
  width: 1.8em;
  height: 1.8em;
  content: "Q";
  text-align: center;
  color: #fff;
  border-radius: 3px;
  background: #f29400;
}
.faqBox-a {
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.8; 
  display: block;
  width: 1.8em;
  height: 1.8em;
  content: "A";
  text-align: center;
  color: #fff;
  border-radius: 3px;
  background: #26873a;
}
.faqBox-dlist {
  border-bottom: 1px solid #89b700;
}
.faqBox-dlist:last-child {
  border: none;
}
.faqBox-dlist dt {
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold; 
  padding: 20px 0 10px;
}
.faqBox-dlist dt span {
  overflow: hidden;
}
.faqBox-dlist dd {
  font-size: 18px;
  font-size: 1.8rem;
  clear: both;
  padding: 20px 0 15px;
}
.faqBox-dlist dd span {
  overflow: hidden;
}
.faqBox a {
  display: inline;
  text-decoration: underline; 
  color: #187292;
}
.faqBox a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .faq {
    padding: 0 0 30px;
  }
  .faq-txt {
    margin: 0 15px 30px;
    text-align: left;
  }
  .faqBox {
    margin: 0 15px 30px;
    padding: 0 15px 0;
  }
  .faqBox-mark {
    margin: 0 15px 0 0;
  }
  .faqBox-q {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .faqBox-a {
    font-size: 15px;
    font-size: 1.5rem;
    display: block;
  }
  .faqBox-dlist dt {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5; 
    padding: 10px 0 0;
  }
  .faqBox-dlist dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5; 
    padding: 10px 0 15px;
  }
}

/* 契約形態
========================================== */
.customerSec {
  overflow: hidden;
  margin: 0 0 25px;
}
.customerSec:last-child {
  margin: 0;
}
.customerSec-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.3; 
  margin: 0 0 25px;
  color: #26873a;
}

.customerSecBlock {
  overflow: hidden;
  margin: 0 0 20px;
}
.customerSecBlock-ttl {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3; 
  margin: 0 0 10px;
  padding: 0 0 0 10px;
  border-left: 5px solid #89b700;
}
.customerSecBlock-fig {
  float: left;
  margin: 0 25px 0 0;
}

@media screen and (max-width: 767px) {
  .customerSec {
    overflow: hidden;
    margin: 0 0 20px;
    padding: 0 15px;
  }
  .customerSec:last-child {
    margin: 0;
  }
  .customerSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3; 
    margin: 0 0 15px;
    color: #26873a;
  }
  .customerSecBlock {
    overflow: hidden;
    margin: 0 0 20px;
  }
  .customerSecBlock-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4; 
    margin: 0 0 10px;
    padding: 0 0 0 10px;
    border-left: 5px solid #89b700;
  }
  .customerSecBlock-fig {
    float: none;
    margin: 0 0 20px;
  }
}

@media screen and (max-width: 767px) {
  .customerSec {
    overflow: hidden;
    margin: 0 0 25px;
  }
  .customerSec:last-child {
    margin: 0;
  }
  .customerSec-ttl {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.3; 
    margin: 0 0 25px;
    color: #26873a;
  }
  .customerSecBlock {
    overflow: hidden;
    margin: 0 0 20px;
  }
  .customerSecBlock-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3; 
    margin: 0 0 10px;
    padding: 0 0 0 10px;
    border-left: 5px solid #89b700;
  }
  .customerSecBlock-fig {
    float: left;
    margin: 0 25px 0 0;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .customerSec {
    overflow: hidden;
    margin: 0 0 20px;
    padding: 0 15px;
  }
  .customerSec:last-child {
    margin: 0;
  }
  .customerSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3; 
    margin: 0 0 15px;
    color: #26873a;
  }
  .customerSecBlock {
    overflow: hidden;
    margin: 0 0 20px;
  }
  .customerSecBlock-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4; 
    margin: 0 0 10px;
    padding: 0 0 0 10px;
    border-left: 5px solid #89b700;
  }
  .customerSecBlock-fig {
    float: none;
    margin: 0 0 20px;
  }
}

/* お見積の流れ
========================================== */
.flow {
  padding: 0 0 40px;
}
.flow-ttl {
  font-size: 27px;
  font-size: 2.7rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 30px;
  text-align: center;
}
.flow-ttl::after {
  position: relative;
  bottom: 0;
  display: block;
  width: 80px;
  margin: 15px auto 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}
.flow-arrw {
  position: relative;
  display: block;
  width: 100%;
  height: 16px; 
  margin: 0 0 30px;
}
.flow-arrw::after {
  position: absolute;
  top: 0;
  left: 50%;
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: -17px;
  content: "";
  border-top: 16px solid #89b700;
  border-right: 17px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 17px solid transparent;
}

@media screen and (max-width: 767px) {
  .flow {
    padding: 0 0 40px;
  }
  .flow-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    position: relative;
    margin: 0 15px 10px;
    text-align: center;
  }
  .flow-ttl::after {
    margin: 0;
    border: none;
  }
  .flow-arrw {
    position: relative;
    display: block;
    width: 100%;
    height: 16px; 
    margin: 0 0 20px;
  }
}

.flowBox {
  position: relative;
  margin: 0 80px 40px; 
  border: 1px solid #89b700;
}
.flowBox-inn {
  padding: 25px 0 0;
}
.flowBox-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  margin: 0 0 30px;
  padding: 40px 10px 35px;
  text-align: center; 
  color: #26873a;
  background: #f4f9f5;
}
.flowBox-ttl01 span {
  position: relative;
  display: inline-block;
  margin: 0 0 0 80px;
}
.flowBox-ttl01 span::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -80px;
  display: inline-block;
  width: 55px;
  height: 57px;
  margin: auto 0;
  content: url(../img/customer/icn_person.png);
}
.flowBox-ttl02 span {
  position: relative;
  display: inline-block;
  margin: 0 0 0 112px;
}
.flowBox-ttl02 span::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -112px;
  display: inline-block;
  width: 86px;
  height: 30px;
  margin: auto 0;
  content: url(../img/customer/icn_logo.png);
}
.flowBox-lead {
  font-weight: bold;
  margin: 0 0 20px;
  text-align: center;
}
.flowBox-olist {
  margin: 0 100px;
  padding: 0 0 5px;
  counter-reset: number;
}
.flowBox-olist > li {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6; 
  padding: 20px 0 15px;
  border-top: 1px solid #89b700;
}
.flowBox-olist > li div {
  overflow: hidden;
}
.flowBox-olist > li:before {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2; 
  display: inline-block;
  float: left;
  width: 1.8em;
  height: 1.8em;
  margin: 0 15px 0 0;
  content: counter(number);
  counter-increment: number;
  text-align: center;
  color: #fff;
  border-radius: 3px;
  background: #89b700;
}
.flowBox-inDlist {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7; 
  margin: 0;
}
.flowBox-inDlist dt {
  font-weight: bold; 
  color: #e08332;
}
.flowBox-list {
  margin: 0 100px;
  padding: 0 0 5px;
  counter-reset: number;
}
.flowBox-list > li {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold; 
  position: relative;
  padding: 20px 20px 15px 50px;
  color: #26873a;
  border-top: 1px solid #89b700;
}
.flowBox-list > li::before {
  position: absolute;
  top: 0;
  left: 20px;
  margin: 0;
  padding: 20px 0 15px 0;
  content: "●";
}
.flowBox-inList {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0 0 0 45px;
}
.flowBox-inList li {
  line-height: 1.5; 
  position: relative;
  padding: 0 0 0 20px;
}
.flowBox-inList li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  margin: 0 15px 0 0; 
  content: "・";
}
.flowBox-inItem {
  display: block;
  clear: both;
  margin: 5px 0 0 45px;
}
.flowBox-inItem span {
  font-size: 16px;
  font-size: 1.6rem;
  display: inline-block; 
  clear: both;
}
.flowBox-point {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold; 
  margin: 0 0 0 45px;
  color: #e08332;
}
.flowBox-important {
  font-size: 26px;
  font-size: 2.6rem;
  position: relative;
  margin: 0 80px 95px;
  padding: 10px;
  color: #fff; 
  background: #26873a;
}
.flowBox-important p {
  line-height: 1.5; 
  padding: 10px 10px 8px;
  text-align: center;
  border: 1px solid #fff;
}

@media screen and (max-width: 767px) {
  .flowBox {
    margin: 0 15px 25px;
  }
  .flowBox-inn {
    padding: 15px 0 0;
  }
  .flowBox-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 15px;
    padding: 20px 10px 15px;
    text-align: left;
  }
  .flowBox-ttl01 span {
    line-height: 1.4; 
    margin: 0 0 0 55px;
  }
  .flowBox-ttl01 span::before {
    left: -60px;
    content: "";
    background: url(../img/customer/icn_person.png) center center no-repeat;
    background-size: 40px;
  }
  .flowBox-ttl02 span {
    line-height: 1.4; 
    margin: 0 0 0 72px;
  }
  .flowBox-ttl02 span::before {
    left: -82px;
    content: "";
    background: url(../img/customer/icn_logo.png) center center no-repeat;
    background-size: 60px;
  }
  .flowBox-lead {
    margin: 0 15px 15px;
    text-align: left;
  }
  .flowBox-olist {
    margin: 0 15px;
    counter-reset: number;
  }
  .flowBox-olist > li {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5; 
    padding: 20px 0 15px;
    border-top: 1px solid #89b700;
  }
  .flowBox-olist > li:before {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6; 
    display: inline-block;
    float: left;
    width: 1.5em;
    height: 1.5em;
    margin: 0 10px 0 0;
  }
  .flowBox-inDlist {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7; 
    margin: 0;
  }
  .flowBox-inDlist dt {
    font-weight: bold; 
    color: #e08332;
  }
  .flowBox-list {
    margin: 0 15px;
    padding: 0 0 5px;
    counter-reset: number;
  }
  .flowBox-list > li {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold; 
    position: relative;
    padding: 15px 10px 10px 30px;
    color: #26873a;
    border-top: 1px solid #89b700;
  }
  .flowBox-list > li::before {
    position: absolute;
    top: 0;
    left: 10px;
    margin: 0;
    padding: 15px 0 10px 0;
    content: "●";
  }
  .flowBox-inList {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0;
  }
  .flowBox-inList li {
    line-height: 1.5; 
    position: relative;
    padding: 0 0 0 20px;
  }
  .flowBox-inItem {
    margin: 5px 0 0 30px;
  }
  .flowBox-inItem span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .flowBox-point {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0;
  }
  .flowBox-important {
    font-size: 18px;
    font-size: 1.8rem;
    position: relative;
    margin: 0 15px 60px;
    padding: 5px;
  }
  .flowBox-important p {
    line-height: 1.5; 
    padding: 10px 10px 8px;
    text-align: left;
    border: 1px solid #fff;
  }
  .flowBox02 {
    padding: 25px 25px 5px;
  }
}

/* 
========================================== */
.contactBox {
  position: relative;
  margin: 0 80px 40px;
  padding: 30px 50px;
  background: #eff6f1;
}
.contactBox-ttl {
  font-size: 20px;
  font-size: 2rem;
  margin: 0 0 20px;
  text-align: center;
}
.contactBox-inn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 50px;
  padding: 0 25px;
  text-align: center; 
  border: 1px solid #89b700;
  border-radius: 5px;
  background: #fff;

  -webkit-box-align: center;

  -webkit-align-items: center;

  -ms-flex-align: center;

  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.contactBox-dlist01 {
  padding-right: 20px;
  border-right: 1px solid #89b700;
}
.contactBox-dlist01 dt {
  font-weight: bold; 
  padding: 0 0 0 30px;
}
.contactBox-dlist01 dd {
  margin: 0 0 10px;
}
.contactBox-dlist01 dd:last-child {
  margin: 0;
}
.contactBox-dlist02 dt {
  font-weight: bold; 
  padding: 0;
}
.contactBox-btn a {
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold; 
  position: relative;
  display: block;
  width: 240px;
  padding: 20px 10px 20px 30px;
  color: #fff;
  border-radius: 3px;
  background: #eda23d url(../img/customer/icn_mail.png) 25px center no-repeat;
}
.contactBox-btn a::after {
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg); 
  vertical-align: middle;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.contactBox-btn a:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  opacity: .8;
}

@media screen and (max-width: 767px) {
  .contactBox {
    margin: 0 0 30px;
    padding: 30px 15px;
  }
  .contactBox-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 0 15px;
  }
  .contactBox-inn {
    margin: 0;
    padding: 10px 15px;
    text-align: center; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .contactBox-dlist01 {
    margin-bottom: 0;
    padding: 0;
    border-right: none;
  }
  .contactBox-dlist01 dt {
    padding: 0;
  }
  .contactBox-dlist01 dd {
    margin: 0 0 10px;
  }
  .contactBox-dlist02 {
    width: 100%;
  }
  .contactBox-dlist02 dt {
    padding: 0;
  }
  .contactBox-btn a {
    font-size: 18px;
    font-size: 1.8rem;
    width: 100%;
    margin: 0;
    padding: 15px 10px 15px 10px;
  }
}

/* ===========================================
  求人情報
=========================================== */
.recruit {
  padding: 0 0 70px;
}

.recruitSec {
  margin: 0 0 70px;
}
.recruitSec:last-child {
  margin: 0;
}
.recruitSec-ttl {
  font-size: 27px;
  font-size: 2.7rem;
  margin: 0 0 20px;
  padding: 0 0 0 20px;
  border-left: 3px solid #89b700;
}
.recruitSec-tbl {
  width: 100%;
  margin: 0 0 50px;
  border-collapse: collapse; 
  border-bottom: 1px solid #ccc;
}
.recruitSec-tbl th {
  font-size: 18px;
  font-size: 1.8rem;
  width: 300px;
  padding: 20px 20px 15px;
  text-align: left;
  vertical-align: top; 
  border-top: 1px solid #ccc;
}
.recruitSec-tbl td {
  padding: 20px 10px 15px 0;
  border-top: 1px solid #ccc;
}
.recruitSec-list {
  margin: 0 0 1.5em;
}
.recruitSec-list:last-child {
  margin: 0;
}
.recruitSec-list li {
  position: relative;
  padding: 0 0 0 1em;
}
.recruitSec-list li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "・";
}
.recruitSec-btnBox {
  text-align: center;
}
.recruitSec-btn {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  display: inline-block;
  margin: 0 15px;
  padding: 13px 60px 10px 50px;
  text-align: center; 
  color: #fff;
  border: 1px solid #26873a;
  border-radius: 3px;
  background: #26873a;
}
.recruitSec-btn:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  opacity: .9;
}
.recruitSec-btn::after {
  position: absolute;
  top: 50%;
  right: 30px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); 
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.recruitSec-btn:hover::after {
  right: 28px;
}

@media screen and (max-width: 767px) {
  .recruitSec {
    margin: 0 0 60px;
  }
  .recruitSec-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3; 
    margin: 0 15px 15px;
    padding: 0 0 0 10px;
  }
  .recruitSec-tbl {
    width: 100%;
    margin: 0 0 10px;
  }
  .recruitSec-tbl th {
    font-size: 16px;
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 10px 15px 5px;
    background: #f2f8f3;
  }
  .recruitSec-tbl td {
    display: block;
    padding: 10px 15px 10px;
    border-top: 1px solid #ccc;
  }
  .recruitSec-list {
    margin: 0 0 1.5em;
  }
  .recruitSec-list li {
    margin: 0 0 3px;
    padding: 0 0 0 1em;
  }
  .recruitSec-btnBox {
    margin: 20px 15px 0;
  }
  .recruitSec-btn {
    width: 100%;
    margin: 15px 0 0;
  }
}

/* ===========================================
  お問い合わせ、求人お申し込み フォーム
=========================================== */
.form {
  margin: 0 auto;
  padding: 0 0 90px;
}
.form-tbl {
  width: 100%;
  margin: 0 0 40px;
  border-collapse: collapse; 
  border-top: 1px solid #ddd;
}
.form-tbl th {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
  width: 320px;
  padding: 25px 20px 12px;
  text-align: left;
  vertical-align: top; 
  border-bottom: 1px solid #ddd;
}
.form-tbl th span {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: normal; 
  display: inline-block;
}
.form-tbl td {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 25px 10px 12px 40px;
  vertical-align: top; 
  border-bottom: 1px solid #ddd;
}
.form-itemName {
  float: left;
  width: 80%;
}
.form-label {
  margin: 0 30px 0 0;
}
.form-note {
  margin: 0 50px 15px;
}
.form-note li {
  position: relative;
  padding: 0 0 1em 1.5em;
}
.form-note li::before {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3; 
  position: absolute;
  top: 0;
  left: 0;
  content: "●";
  color: #26873a;
}

@media screen and (max-width: 767px) {
  .form {
    margin: 0 auto;
    padding: 0 0 50px;
  }
  .form-tbl {
    width: 100%;
    margin: 0 0 40px;
  }
  .form-tbl th {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5; 
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 15px 15px 15px;
    border-bottom: none;
  }
  .form-tbl th span {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal; 
    display: inline-block;
  }
  .form-tbl td {
    font-size: 16px;
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 0 15px 10px;
    vertical-align: top;
  }
  .form-note {
    margin: 0 15px 15px;
  }
  .form-note li {
    position: relative;
    padding: 0 0 1em 1.5em;
  }
  .form-note li::before {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3; 
    position: absolute;
    top: 0;
    left: 0;
    content: "●";
    color: #26873a;
  }
}

/* ===========================================
  label
=========================================== */
.label-required {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 2px 5px 1px;
  white-space: nowrap; 
  color: #fff;
  border-radius: 3px;
  background: #f06924;
}

/* ===========================================
  form 関連
=========================================== */
.form-error {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #f06924;
}

.form-mark {
  float: right;
  width: 20%;
  text-align: right;
}

.form-zip {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.form-zipmark {
  position: relative;
}
.form-zipmark::before {
  position: absolute;
  top: 50%;
  left: 15px;
  margin: -1.1em 0 0; 
  content: "〒";
}

.form-zipmemo {
  font-size: 15px;
  font-size: 1.5rem;
  margin: 0 0 0 15px;
}

.formBtn {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  display: inline-block;
  margin: 0 15px;
  text-align: center; 
  border-radius: 3px;
}
.formBtn:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  opacity: .9;
}
.formBtn-back {
  padding: 15px 60px 13px 70px;
  color: #26873a; 
  border: 1px solid #26873a;
  background: #f4f9f5;
}
.formBtn-back::after {
  position: absolute;
  top: 50%;
  left: 30px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  content: "";
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg); 
  border-top: 3px solid #26873a;
  border-right: 3px solid #26873a;
}
.formBtn-back:hover::after {
  left: 28px;
}
.formBtn-send {
  padding: 15px 70px 13px 60px;
  color: #fff; 
  border: 1px solid #26873a;
  background: #26873a;
}
.formBtn-send::after {
  position: absolute;
  top: 50%;
  right: 30px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); 
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.formBtn-send:hover::after {
  right: 28px;
}
.formBtn-box {
  text-align: center;
}
.formBtn-send:disabled {
  background-color: rgba(239, 239, 239, 0.3);
  color: rgba(16, 16, 16, 0.3);
  border-color: rgba(118, 118, 118, 0.3);
}

/* =====
  added by yamane on Nov. 9, 2022 for indent setting
===== */
.form-indent {
  font-size: 15px;
  font-size: 1.5rem;
  margin: 0 0 0 15px;

  margin-left: 1rem;
  text-indent: -2rem;
}
/* ===== end of addition ===== */

@media screen and (max-width: 767px) {
  .form-error {
    font-size: 12px;
    font-size: 1.2rem;
    color: #f06924;
  }
  .form-mark {
    float: right;
    width: 20%;
    text-align: right;
  }
  .form-zip {
    display: block;
  }
  .form-zipmark {
    position: relative;
  }
  .form-zipmark::before {
    position: absolute;
    top: 50%;
    left: 15px;
    margin: -.8em 0 0; 
    content: "〒";
  }
  .form-zipmemo {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4; 
    display: inline-block;
    margin: -10px 0 15px;
  }
  .formBtn {
    margin: 0 0 15px;
  }
  .formBtn-back {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    width: 100%;
  }
  .formBtn-send {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    width: 100%;
  }
  .formBtn-box {
    margin: 0 15px;
  }
}

.input {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 0 15px; 
  padding: 15px;
  border: 1px solid #aaa;
  box-shadow: 2px 2px 2px rgba(170, 170, 170, .3) inset;
}
.input-half {
  width: 50%;
}
.input-short {
  width: 40%;
}
.input-long {
  width: 80%;
}
.input-name {
  width: 50%;
}
.input-zip {
  width: 100%;
  padding-left: 40px;
}
.input-error {
  margin-bottom: 5px;
  background: #fdf0e9;
}

@media screen and (max-width: 767px) {
  .input {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 15px; 
    padding: 15px;
    border: 1px solid #aaa;
    border-radius: 3px;
    box-shadow: 2px 2px 2px rgba(170, 170, 170, .3) inset;
  }
  .input-half {
    width: 100%;
  }
  .input-short {
    width: 100%;
  }
  .input-long {
    width: 100%;
  }
  .input-name {
    width: 85%;
  }
  .input-zip {
    width: 100%;
    padding-left: 40px;
  }
  .input-error {
    margin-bottom: 5px;
    background: #fdf0e9;
  }
}

.select {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 0 15px;
}

.checkbox {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 5px 15px 0;
}

.radio {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 5px 15px 0;
}

@media screen and (max-width: 767px) {
  .select {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 15px;
  }
  .checkbox {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 5px 15px 0;
  }
  .radio {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 5px 15px 0;
  }
}

/* ===========================================
  完了画面
=========================================== */
.thanks {
  padding: 0 0 70px;
  text-align: center;
}
.thanks-ttl {
  font-size: 42px;
  font-size: 4.2rem;
  line-height: 1.5; 
  margin: 0 0 30px;
  color: #26873a;
}
.thanks-lead {
  margin: 0 0 40px;
}
.thanks-back a {
  position: relative;
  padding: 0 0 0 15px;
  text-decoration: underline; 
  color: #187292;
}
.thanks-back a:hover {
  text-decoration: none;
}
.thanks-back a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: auto;
  content: "";
  -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg); 
  vertical-align: middle;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
}

@media screen and (max-width: 767px) {
  .thanks {
    padding: 0 15px 30px;
  }
  .thanks-ttl {
    font-size: 22px;
    font-size: 2.2rem;
    margin: 0 0 30px;
  }
  .thanks-lead {
    margin: 0 0 40px;
  }
}

/* ===========================================
  コンプライアンス
=========================================== */
.complianceSec {
  overflow: hidden;
  margin: 0;
  padding: 0 0 50px;
}
.complianceSec-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.3; 
  margin: 0 0 20px;
  color: #26873a;
}
.complianceSec-inn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.complianceSec-fig {
  margin: 0 25px 20px 0;
}
.complianceSec-item {
  position: relative;
  margin: -3px 0 0 0;
  padding: 0 0 0 15px;
}
@media screen and (min-width: 768px) {
  .complianceSec-item::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
}
.complianceSec-item p {
  margin: 0 0 1em;
}
.complianceSec-item p:last-child {
  margin: 0;
}
.complianceSec-list li {
  position: relative;
  margin: 0 0 5px;
  padding: 0 0 0 15px;
}
.complianceSec-list li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "・";
}
.complianceSec-list li:last-child {
  margin: 0;
}

@media screen and (max-width: 767px) {
  .complianceSec {
    margin: 0 15px 40px;
    padding: 0;
  }
  .complianceSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4; 
    margin: 0 0 10px;
  }
  .complianceSec-inn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .complianceSec-fig {
    float: none;
    margin: 0 0 10px;
    text-align: center;
  }
  .complianceSec-item {
    margin: 0;
    padding: 0;
  }
}

/* ===========================================
  事業内容
=========================================== */
.exTop {
  margin: 0 0 70px;
}
.exTop-mv {
  color: #fff; 
  background: #dadddb url(../img/exhibition/pic_top_mv.jpg) center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .exTop {
    margin: 0 0 50px;
  }
}

.extopSec {
  width: 1000px;
  margin: 0 auto 40px;
  padding: 0 0 30px;
  border-bottom: 1px solid #cae2d0;
}
.extopSec-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  margin: 0 0 25px;
  color: #26873a;
}
.extopSec-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.extopSec-fig {
  margin: 0 25px 0 0;
}
.extopSec-item {
  position: relative;
  width: 100%;
  margin: -3px 0 0 0;
  padding: 0 0 0 15px;
}
@media screen and (min-width: 768px) {
  .extopSec-item::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
}
.extopSec-item a {
  text-decoration: underline; 
  color: #187292;
}
.extopSec-item a:hover {
  text-decoration: none;
}
.extopSec-item p {
  margin: 0 0 1.5em;
}
.extopSec-btn {
  margin-top: auto;
  margin-left: auto;
  padding: 15px 0 0;
  text-align: right; 

  -webkit-align-self: flex-end; 

  -ms-flex-item-align: end; 

  align-self: flex-end;
}
.extopSec-btn a {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding: 10px 40px 7px;
  text-decoration: none; 
  color: #268639;
  border: 1px solid #89b700;
  border-radius: 3px;
  background: #e4eec4;
}
.extopSec-btn a:hover {
  opacity: .8;
}
.extopSec-btn a::after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0;
  content: "";
  -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg); 
  border-top: 2px solid #26873a;
  border-right: 2px solid #26873a;
}
.extopSec-btn a:hover::after {
  right: 9px;
}

@media screen and (max-width: 767px) {
  .extopSec {
    width: 100%;
    margin: 0 0 30px;
    padding: 0 15px 20px;
  }
  .extopSec:last-child {
    border: none;
  }
  .extopSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3; 
    margin: 0 0 10px;
  }
  .extopSec-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

    -webkit-flex-flow: column;

    -ms-flex-flow: column;

    flex-flow: column;
  }
  .extopSec-fig {
    margin: 0 0 10px;
  }
  .extopSec-item {
    margin: 0;
    padding: 0;
  }
  .extopSec-item p {
    margin: 0 0 1em;
  }
  .extopSec-btn {
    padding: 15px 0 0;
    text-align: center;
  }
  .extopSec-btn a {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    padding: 10px 20px 7px;
  }
}

/* 下層
========================================== */
.ex {
  overflow: hidden;
  padding: 0 0 50px;
}
.ex-ttl {
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 45px;
  text-align: left;
  letter-spacing: .05em;
}
.ex-ttl::after {
  position: relative;
  bottom: 0;
  left: 0;
  display: block;
  width: 80px;
  margin: 15px 0 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}
.ex-fig {
  float: right;
  margin: 0 0 40px 40px;
}

@media screen and (max-width: 767px) {
  .ex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0 15px 50px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .ex-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4; 
    margin: 0 0 40px;
  }
  .ex-ttl::after {
    width: 40px;
  }
  .ex-fig {
    float: none;
    margin: 0;

    -webkit-box-ordinal-group: 101;

    -webkit-order: 100;

    -ms-flex-order: 100;

    order: 100;
  }
}

.exSec {
  margin: 0 0 40px;
}
.exSec-ttl {
  font-size: 22px;
  font-size: 2.2rem;
  margin: 0 0 25px;
  color: #26873a;
}
.exSec-item {
  position: relative;
  width: 100%;
  margin: -3px 0 0 0;
  padding: 0 0 0 15px;
}
@media screen and (min-width: 768px) {
  .exSec-item::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
}
.exSec-item a {
  text-decoration: underline; 
  color: #187292;
}
.exSec-item a:hover {
  text-decoration: none;
}
.exSec-item p {
  margin: 0 0 1.5em;
}
.exSec-btn {
  margin: 20px 0 0;
}
.exSec-btn a {
  position: relative;
  display: inline-block;
  padding: 15px 35px 11px 20px;
  text-decoration: none; 
  color: #fff;
  border-radius: 3px;
  background: #26873a;
}
.exSec-btn a:hover {
  -webkit-transition: .3s;
  transition: .3s; 
  opacity: .9;
}
.exSec-btn a::after {
  position: absolute;
  top: 50%;
  right: 20px;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -5px;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); 
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.exSec-btn a:hover::after {
  right: 18px;
  -webkit-transition: .3s;
  transition: .3s;
}

@media screen and (max-width: 767px) {
  .exSec {
    margin: 0 0 20px;
  }
  .exSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 0 15px;
  }
  .exSec-item {
    padding: 0;
  }
  .exSec-item p {
    margin: 0 0 1em;
  }
  .exSec-btn {
    margin: 20px 0 0;
  }
  .exSec-btn a {
    display: block;
    padding: 15px 15px 11px;
    text-align: center;
  }
  .exSec-btn a::after {
    right: 20px;
  }
}

/* ===========================================
  プライバシーポリシー
=========================================== */
.privacy {
  padding: 0 0 50px;
}

.privacySec-ttl {
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 45px;
  text-align: left;
  letter-spacing: .05em;
}

.privacySec-ttl::after {
  position: relative;
  bottom: 0;
  left: 0;
  display: block;
  width: 80px;
  margin: 15px 0 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}

.privacySec-lead {
  margin: 0 0 40px;
}

.privacySecBlock {
  margin: 0 0 50px;
}
.privacySecBlock-ttl {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5; 
  margin: 0 0 15px;
  color: #26873a;
}
.privacySecBlock-item p,.privacySecBlock-item ol,.privacySecBlock-item ul {
  margin: 0 0 1em;
}
.privacySecBlock-item ol {
  counter-reset: number;
}
.privacySecBlock-item ol li {
  line-height: 1.5; 
  position: relative;
  margin: 0 0 .5em;
  padding: 0 0 0 2em;
}
.privacySecBlock-item ol li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "(" counter(number) ")"; 
  counter-increment: number;
}

@media screen and (max-width: 767px) {
  .privacy {
    padding: 0 0 30px;
  }
  .privacySec {
    padding: 0 15px;
  }
  .privacySec-ttl {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 0 25px;
  }
  .privacySec-ttl::after {
    width: 40px;
    margin: 15px 0 0;
  }
  .privacySec-lead {
    margin: 0 0 30px;
  }
  .privacySecBlock {
    margin: 0 0 40px;
  }
  .privacySecBlock-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 10px;
  }
}

/* ===========================================
  サイトマップ
=========================================== */
.sitemap a:hover {
  text-decoration: underline;
}

.sitemap-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 45px 100px 0;
  letter-spacing: .1em; 

  -webkit-box-orient: horizontal; 

  -webkit-box-direction: normal; 

  -webkit-flex-flow: row wrap; 

  -ms-flex-flow: row wrap; 

  flex-flow: row wrap;
}
.sitemap-list > li {
  width: 50%;
  margin: 0 0 55px;
  padding: 0 20px;
}

.sitemap-listTtl {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold; 
  position: relative;
  display: block;
  margin: 0 0 15px;
  padding: 0 0 0 15px;
}
@media screen and (min-width: 768px) {
  .sitemap-listTtl::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
}

.sitemap-listInn {
  margin: 0 0 0 15px;
}
.sitemap-listInn li {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0 0 5px;
}

@media screen and (max-width: 767px) {
  .sitemap {
    padding: 0 0 30px;
  }
  .sitemap-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 35px 0 0;
    letter-spacing: 0; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .sitemap-list > li {
    width: 100%;
    margin: 0 0 30px;
    padding: 0 20px;
  }
  .sitemap-listTtl {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold; 
    position: relative;
    display: block;
    margin: 0 0 10px;
    padding: 0 0 0 15px;
  }
  .sitemap-listTtl::before {
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    width: 5px;
    height: 1em;
    content: "";
    background: #b8d466;
  }
  .sitemap-listInn {
    margin: 0 0 0 15px;
  }
  .sitemap-listInn li {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 5px;
  }
}

/* ===========================================
  form 関連
=========================================== */
@media screen and (max-width: 767px) {
  input,button {
    -webkit-appearance: none;
  }
  input[type=checkbox] {
    -webkit-appearance: checkbox;
  }
  input[type=radio] {
    -webkit-appearance: radio;
  }
}

/* ===========================================
  flex
=========================================== */
@media screen and (max-width: 767px) {
  .fleximg {
    width: 100%;
    height: auto;
  }
  .fleximgH {
    width: auto;
    height: 100%;
  }
}

@media screen and (max-width: 374px) {
  .fleximg_s {
    width: 100%;
    height: auto;
  }
}

/* ===========================================
  外部リンク
=========================================== */
.externalLink {
  padding: 0 20px 0 0;
  background: url(../img/icn_window.png) right center no-repeat;
}

/* ===========================================
  下層 共通
=========================================== */
/* 下層トップ
========================================== */
.subpagetop-mv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 300px; 

  -webkit-box-align: center; 

  -webkit-align-items: center; 

  -ms-flex-align: center; 

  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.subpagetop-ttl {
  font-size: 50px;
  font-size: 5rem;
  letter-spacing: .1em; 
  text-shadow: 0 0 10px rgba(14, 48, 20, .9);
}

@media screen and (max-width: 767px) {
  .subpagetop-mv {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100px; 

    -webkit-box-align: center; 

    -webkit-align-items: center; 

    -ms-flex-align: center; 

    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .subpagetop-ttl {
    font-size: 26px;
    font-size: 2.6rem;
    letter-spacing: .1em; 
    text-shadow: 0 0 10px rgba(14, 48, 20, .9);
  }
}

.subpagetopSec {
  width: 960px;
  margin: 0 auto 70px;
}
.subpagetopSec-ttl {
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 50px;
  text-align: center; 
  letter-spacing: .1em;
}
.subpagetopSec-ttl::after {
  position: relative;
  bottom: 0;
  display: block;
  width: 80px;
  margin: 15px auto 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}
.subpagetopSec-lead {
  margin: 0 0 50px;
}
.subpagetopSec-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto 30px;
  padding: 30px 30px 20px;
  background: #f4f9f5;
}
.subpagetopSec-fig {
  margin: 0 25px 0 0;
}
.subpagetopSec-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 760px;
  margin: 0; 

  -webkit-box-orient: vertical; 

  -webkit-box-direction: normal; 

  -webkit-flex-flow: column wrap; 

  -ms-flex-flow: column wrap; 

  flex-flow: column wrap;
}
.subpagetopSec-box dt {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 0 15px;
  letter-spacing: .05em; 
  color: #26873a;
}
.subpagetopSec-btn {
  margin-top: auto;
  margin-left: auto;
  padding: 15px 0 0; 

  -webkit-align-self: flex-end; 

  -ms-flex-item-align: end; 

  align-self: flex-end;
}
.subpagetopSec-btn a {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold; 
  position: relative;
  display: inline-block;
  padding: 10px 40px 7px;
  color: #268639;
  border: 1px solid #89b700;
  border-radius: 3px;
  background: #e4eec4;
}
.subpagetopSec-btn a:hover {
  opacity: .8;
}
.subpagetopSec-btn a::after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0;
  content: "";
  -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg); 
  border-top: 2px solid #26873a;
  border-right: 2px solid #26873a;
}
.subpagetopSec-btn a:hover::after {
  right: 9px;
}

@media screen and (max-width: 767px) {
  .subpagetopSec {
    width: 100%;
    margin: 0 auto 70px;
  }
  .subpagetopSec-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    position: relative;
    margin: 0 15px 20px;
    text-align: center;
  }
  .subpagetopSec-ttl::after {
    position: relative;
    bottom: 0;
    display: block;
    width: 40px;
    margin: 15px auto 0;
    content: "";
    border-bottom: 3px solid #c0d971;
  }
  .subpagetopSec-lead {
    margin: 0 15px 20px;
  }
  .subpagetopSec-block {
    width: 100%;
    margin: 0 auto 30px;
    padding: 15px; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .subpagetopSec-fig {
    margin: 0;
  }
  .subpagetopSec-box {
    width: 100%;
    padding: 0;
    border-top: none; 

    -webkit-box-orient: vertical; 

    -webkit-box-direction: normal; 

    -webkit-flex-flow: column; 

    -ms-flex-flow: column; 

    flex-flow: column;
  }
  .subpagetopSec-box dt {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 10px 0;
    text-align: center;
  }
  .subpagetopSec-box dd {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .subpagetopSec-btn {
    width: 100%;
    margin: 0; 

    -webkit-align-self: center; 

    -ms-flex-item-align: center; 

    -ms-grid-row-align: center; 

    align-self: center;
  }
  .subpagetopSec-btn a {
    font-size: 15px;
    font-size: 1.5rem;
    display: block;
    margin: 0;
    padding: 10px 0;
    text-align: center; 
    border: 1px solid #89b700;
  }
}

/* 下層ページ
========================================== */
.subpage {
  width: 960px;
  margin: 0 auto;
}
.subpage-ttl {
  font-size: 42px;
  font-size: 4.2rem;
  padding: 0 0 40px;
  text-align: center;
  letter-spacing: .5rem; 
  color: #268639;
  border-bottom: 1px solid #64b08a;
}
.subpage-lead {
  margin: 50px 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .subpage {
    width: 100%;
    margin: 0 auto;
  }
  .subpage-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3;
    padding: 0 0 20px;
    letter-spacing: .1rem;
  }
  .subpage-lead {
    margin: 30px 15px;
    text-align: left;
  }
}

.subpageSec {
  width: 960px;
  margin: 50px auto 0;
}
.subpageSec-ttl {
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.4;
  position: relative;
  margin: 0 0 50px;
  text-align: center;
}
.subpageSec-ttl::after {
  position: relative;
  bottom: 0;
  display: block;
  width: 80px;
  margin: 15px auto 0;
  content: "";
  border-bottom: 3px solid #c0d971;
}
.subpageSec-lead {
  margin: 0 0 70px;
}
.subpageSec-lead p {
  margin: 0 0 20px;
}
.subpageSec-lead a {
  text-decoration: underline; 
  color: #187292;
}
.subpageSec-lead a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .subpageSec {
    width: 100%;
    margin: 30px 0 0;
  }
  .subpageSec-ttl {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    position: relative;
    margin: 0 15px 30px;
    text-align: center;
  }
  .subpageSec-ttl::after {
    position: relative;
    bottom: 0;
    display: block;
    width: 80px;
    margin: 15px auto 0;
    content: "";
    border-bottom: 3px solid #c0d971;
  }
  .subpageSec-lead {
    margin: 0 15px 50px;
  }
  .subpageSec-lead p {
    margin: 0 0 20px;
  }
  .subpageSec-lead a {
    text-decoration: underline; 
    color: #187292;
  }
  .subpageSec-lead a:hover {
    text-decoration: none;
  }
}

/**
 * Swiper 3.4.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2017, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: March 10, 2017
 */
.swiper-container {
  position: relative;
  /* Fix of Webkit flickering */
  z-index: 1; 
  overflow: hidden;
  margin-right: auto;
  margin-left: auto;
}

.swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.swiper-container-vertical > .swiper-wrapper {
          flex-direction: column; 

  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  box-sizing: content-box; 
  width: 100%;
  height: 100%;
  -webkit-transition-property: -webkit-transform;
          transition-property: -webkit-transform;
          transition-property: transform;
          transition-property:         transform, -webkit-transform;
}

.swiper-container-android .swiper-slide,.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
      -ms-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
     -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto; 
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.swiper-slide {
  position: relative; 
  width: 100%;
  height: 100%;

  -ms-flex: 0 0 auto;
  -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
          flex-shrink: 0;
}

/* Auto Height */
.swiper-container-autoheight {
  height: auto;
}
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  -webkit-transition-property: -webkit-transform, height;
          -webkit-transition-property: height, -webkit-transform;
          transition-property: height, -webkit-transform;
          transition-property: transform, height;
          transition-property:         transform, height, -webkit-transform; 

  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
}

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  z-index: -1000; 
  top: 0;
  left: 0;
  pointer-events: none;
  opacity: 0;
}

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

/* Arrows */
.swiper-button-prev,.swiper-button-next {
  position: absolute;
  z-index: 10;
  top: 50%;
  width: 11px;
  height: 20px;
  margin-top: -11px;
  cursor: pointer;
  background-repeat: no-repeat; 
  background-position: center;
  background-size: 11px 20px;
}

.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled {
  cursor: auto;
  pointer-events: none; 
  opacity: .35;
}

.swiper-button-prev,.swiper-container-rtl .swiper-button-next {
  right: auto; 
  left: 0;
  background-image: url(../img/top/icn_prev.png);
}

.swiper-button-next,.swiper-container-rtl .swiper-button-prev {
  right: 0;
  left: auto; 
  background-image: url(../img/top/icn_next.png);
}

/* Pagination Styles */
.swiper-pagination {
  position: relative;
  z-index: 10; 
  -webkit-transition: 300ms; 
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  text-align: center;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: -10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullet {
  display: inline-block;
  width: 20px;
  height: 12px;
  margin: 0 2px;
  background: url(../img/top/icn_dot02.png);
  background-size: 20px 12px;
}

button.swiper-pagination-bullet {
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;

  -webkit-appearance: none;
     -moz-appearance: none;
      -ms-appearance: none;
          appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: url(../img/top/icn_dot01.png);
  background-size: 20px 12px;
}

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff;
}

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000;
}

.swiper-container-vertical > .swiper-pagination-bullets {
  top: 50%;
  right: 10px;
  -webkit-transform: translate3d(0px, -50%, 0);
      -ms-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block; 
  margin: 5px 0;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px;
}

/* Progress */
.swiper-pagination-progress {
  position: absolute; 
  background: rgba(0, 0, 0, .25);
}
.swiper-pagination-progress .swiper-pagination-progressbar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top; 
  background: #007aff;
}

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progress {
  top: 0; 
  left: 0;
  width: 100%;
  height: 4px;
}

.swiper-container-vertical > .swiper-pagination-progress {
  top: 0; 
  left: 0;
  width: 4px;
  height: 100%;
}

.swiper-pagination-progress.swiper-pagination-white {
  background: rgba(255, 255, 255, .5);
}
.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
  background: #fff;
}

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
  background: #000;
}

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
       -o-perspective: 1200px;
          perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  z-index: 10; 
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(transparent));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image:         linear-gradient(to left, rgba(0, 0, 0, .5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(transparent));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(transparent));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image:         linear-gradient(to top, rgba(0, 0, 0, .5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(transparent));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image:         linear-gradient(to bottom, rgba(0, 0, 0, .5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */
}

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px;
}

/* Cube + Flip */
.swiper-container-cube,.swiper-container-flip {
  overflow: visible;
}

.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide {
  z-index: 1; 
  pointer-events: none;

  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-top,.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;

  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  width: 100%;
  height: 100%; 
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-prev,.swiper-container-cube .swiper-slide-next + .swiper-slide {
  visibility: visible; 
  pointer-events: auto;
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  z-index: 0; 
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: .6;
  background: #000;

  -webkit-filter: blur(50px);
          filter: blur(50px);
}

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  -webkit-transition-property: opacity;
          transition-property: opacity; 
  pointer-events: none;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-zoom-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display:         flex;
  width: 100%;
  height: 100%;
  text-align: center; 

  -webkit-align-items: center;
          align-items: center;
  -webkit-box-align: center;
     -moz-box-align: center;
  -webkit-box-pack: center;
     -moz-box-pack: center;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
}
.swiper-zoom-container > img,.swiper-zoom-container > svg,.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;

  object-fit: contain;
}

/* Scrollbar */
.swiper-scrollbar {
  position: relative;
  border-radius: 10px;
  background: rgba(0, 0, 0, .1); 

  -ms-touch-action: none;
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  z-index: 50;
  bottom: 3px;
  left: 1%;
  width: 98%; 
  height: 5px;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  z-index: 50;
  top: 1%;
  right: 3px;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  position: relative;
  top: 0; 
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: rgba(0, 0, 0, .5);
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

/* Preloader */
.swiper-lazy-preloader {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  margin-top: -21px;
  margin-left: -21px;
  -webkit-transform-origin: 50%;
          -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
          animation: swiper-preloader-spin 1s steps(12, end) infinite;
}
.swiper-lazy-preloader:after {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat; 
  background-position: 50%;
  background-size: 100%;
}

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* スライダー
========================================== */
.swiper-container {
  width: 480px;
}
@media screen and (max-width: 767px) {
  .swiper-container {
    width: 100%;
  }
}


/* ===========================================
  2021/04/26 Yamanaka
  校正機器検索 - 検索ページ
=========================================== */
.search_cal {
  padding: 0 0 70px;
}

.search_calTop-mv {
  color: #fff; 
  background: #dadddb url(../img/search_cal/pic_top_mv.jpg) center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .search_cal {
    padding: 0 0 50px;
  }
}
/* ===========================================
  2021/04/26 Yamanaka
  校正機器検索 - 結果表示
=========================================== */
.search_cal_rslt {
  margin: 20px;
  padding: 0 0 70px;
  letter-spacing: 0.1em;/*字間*/
}

.search_cal_rslt_ttl {
  margin: 3em;
  color: #0; 
  text-align: center;
}
@media screen and (max-width: 767px) {
  .search_cal_rslt_ttl {
    padding: 0 0 50px;
  }
}

.search_cal_rslt_inf_itm{
  display: inline-block;
  width: 6em;
}
.search_cal_rslt_contents {
  border: solid 8px #5c9ee7;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
  margin: 3em auto 0 auto;
  max-width: 1000px;
}
.search_cal_rslt_contents li {
  line-height: 1.5;
  padding: 0.5em;
  border-bottom: dashed 1px silver;
  list-style-type: none!important;
}
.search_cal_rslt_contents li:before {
  /*リストのアイコン*/
  font-family: "Font Awesome 5 Free";
  content: "\f14a";
  position: absolute;
  left : 1em; /*左端からのアイコンまでの距離*/
  color: #5c9ee7; /*アイコン色*/
}
.search_cal_rslt_contents li:after {
  /*タブ*/
  background: #5c9ee7;
  color: #fff;
  font-family: "Font Awesome 5 Free",'Avenir','Arial',sans-serif;
  position: absolute;
  left: -8px;
  bottom: 100%;
  padding: 1px 10px;
  content: '\f164  校正可能';/*アイコンコード＋文字*/
  letter-spacing: 0.1em;/*字間*/
  font-size: 1.5em;
}

.search_cal_rslt_freeQuote {
  display: inline-block;
  margin: 1em auto 0 auto;
  padding: 2px 100px;
  border-radius: 25px;
/*  background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
*/
  background-color: #f09924;
  transition: .4s;
  color: white;
  font-weight: bold;
}
.search_cal_rslt_freeQuote:hover {
/*  background-image: linear-gradient(45deg, #FFC107 0%, #f76a35 100%);
  background-color: #FFC107;
*/
  opacity:0.8;
}

.search_cal_rslt_freeShip, .search_cal_rslt_dscr, .search_cal_rslt_contact {
  padding: 1em 0 0 0;
}
.search_cal_rslt_freeShip i, .search_cal_rslt_dscr i, .search_cal_rslt_contact i {
  color: #5c9ee7; /*アイコン色*/
}
.search_cal_rslt_contact a {
  color: #0033cc;
}
.search_cal_rslt_contact a:hover {
  text-decoration: underline;
}
.search_cal_rslt_contact:before {
  background: #5c9ee7;
  color: #fff;
  bottom: 100%;
  padding: 1px 7px;
  content: 'お問合せは';
}
.search_cal_rslt_dscr span {
  font-weight: bold;
  color: #FF3300;
}

/* ===========================================
  2021/04/26 Yamanaka
  事業内容 - 計測部
  スタイル追加
=========================================== */
.ToSearchCal a{
  color: #0033cc;
}
.ToSearchCal a:hover{
  text-decoration: underline;
}

.new_item img {
  margin:   2px;
  width:  40px;
}
.new_item sup {
  font-weight: bold;
  color:  #00DD00;
}

.flex_resp-item li {
  padding:  0.5em;
}
.flex_resp-item i {
  color:  #00DD00;
}
.flex_resp-banner img{
  width:  auto;
  height:   65px;
}
.flex_resp-banner li{
  padding:   30px;
  display : inline
}

/* ===========================================
  2021/05/21 Yamanaka
  校正機器検索 - 校正実績一覧表
  スタイル追加
=========================================== */
.search_cal_rslt_table a {
  color: #0033cc;
}
.search_cal_rslt_table td:hover {
  text-decoration: underline;
}

/* ===========================================
  2021/07/20 Yamanaka
  契約形態 - 改正派遣法に基づくマージン率の公開
  スタイル追加
=========================================== */
.customerSec.marginRate.separateLine {
  margin: 2em;
  border: dashed 1px #c0d971;
}
.customerSecBlock-item.marginRate.info {
  margin: 1em;
}
.customerSecBlock-item.marginRate.info p{
  font-weight: bold;
}
.customerSecBlock-item.marginRate.infoTbl {
  width: 100%;
  border-spacing: 0;
}
.customerSecBlock-item.marginRate.infoTbl th{
  border-bottom: solid 2px #64b08a;
  padding: 10px 0;
}
.customerSecBlock-item.marginRate.infoTbl td{
  border-bottom: solid 2px #ddd;
  text-align: center;
  padding: 10px 0;
}
.customerSecBlock-item.marginRate.noteSpecl {
  margin-top: 0.5em;
  color: orangered;
  font-weight: bold;
}
.customerSecBlock-item.marginRate.noteOthr p{
  margin-top: 1em;
}
.customerSecBlock-item.marginRate.noteOthr li{
  list-style-type: disc;
  margin-left: 2em;
}
