@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
/* START add mine*/
*,
*::before,
*::after {
  box-sizing: border-box; }

/* END add mine*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* START add mine*/
html {
  font-size: 10px; }

body {
  font-size: 1.6rem;
  line-height: 1; }

/* END add mine*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  /*font-size:100%;*/
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

body {
  font-size: 1.6rem;
  line-height: 1.6;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #111;
  letter-spacing: .5px; }
  @media (max-width: 767px) {
    body {
      letter-spacing: inherit; } }

.txt-c {
  text-align: center; }

.txt-l {
  text-align: left; }

.txt-r {
  text-align: right; }

.txt-bold {
  font-weight: bold; }

.no-wrap {
  word-break: keep-all;
  white-space: nowrap; }

/* マージン/パディング */
.mt-0 {
  margin-top: 0px !important; }

.mr-0 {
  margin-right: 0px !important; }

.mb-0 {
  margin-bottom: 0px !important; }

.ml-0 {
  margin-left: 0px !important; }

.pt-0 {
  padding-top: 0px !important; }

.pr-0 {
  padding-right: 0px !important; }

.pb-0 {
  padding-bottom: 0px !important; }

.pt-0 {
  padding-left: 0px !important; }

.mt-5 {
  margin-top: 5px !important; }

.mr-5 {
  margin-right: 5px !important; }

.mb-5 {
  margin-bottom: 5px !important; }

.ml-5 {
  margin-left: 5px !important; }

.pt-5 {
  padding-top: 5px !important; }

.pr-5 {
  padding-right: 5px !important; }

.pb-5 {
  padding-bottom: 5px !important; }

.pt-5 {
  padding-left: 5px !important; }

.mt-10 {
  margin-top: 10px !important; }

.mr-10 {
  margin-right: 10px !important; }

.mb-10 {
  margin-bottom: 10px !important; }

.ml-10 {
  margin-left: 10px !important; }

.pt-10 {
  padding-top: 10px !important; }

.pr-10 {
  padding-right: 10px !important; }

.pb-10 {
  padding-bottom: 10px !important; }

.pt-10 {
  padding-left: 10px !important; }

.mt-15 {
  margin-top: 15px !important; }

.mr-15 {
  margin-right: 15px !important; }

.mb-15 {
  margin-bottom: 15px !important; }

.ml-15 {
  margin-left: 15px !important; }

.pt-15 {
  padding-top: 15px !important; }

.pr-15 {
  padding-right: 15px !important; }

.pb-15 {
  padding-bottom: 15px !important; }

.pt-15 {
  padding-left: 15px !important; }

.mt-20 {
  margin-top: 20px !important; }

.mr-20 {
  margin-right: 20px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.ml-20 {
  margin-left: 20px !important; }

.pt-20 {
  padding-top: 20px !important; }

.pr-20 {
  padding-right: 20px !important; }

.pb-20 {
  padding-bottom: 20px !important; }

.pt-20 {
  padding-left: 20px !important; }

.mt-25 {
  margin-top: 25px !important; }

.mr-25 {
  margin-right: 25px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.ml-25 {
  margin-left: 25px !important; }

.pt-25 {
  padding-top: 25px !important; }

.pr-25 {
  padding-right: 25px !important; }

.pb-25 {
  padding-bottom: 25px !important; }

.pt-25 {
  padding-left: 25px !important; }

.mt-30 {
  margin-top: 30px !important; }

.mr-30 {
  margin-right: 30px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.ml-30 {
  margin-left: 30px !important; }

.pt-30 {
  padding-top: 30px !important; }

.pr-30 {
  padding-right: 30px !important; }

.pb-30 {
  padding-bottom: 30px !important; }

.pt-30 {
  padding-left: 30px !important; }

.mt-35 {
  margin-top: 35px !important; }

.mr-35 {
  margin-right: 35px !important; }

.mb-35 {
  margin-bottom: 35px !important; }

.ml-35 {
  margin-left: 35px !important; }

.pt-35 {
  padding-top: 35px !important; }

.pr-35 {
  padding-right: 35px !important; }

.pb-35 {
  padding-bottom: 35px !important; }

.pt-35 {
  padding-left: 35px !important; }

.mt-40 {
  margin-top: 40px !important; }

.mr-40 {
  margin-right: 40px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.ml-40 {
  margin-left: 40px !important; }

.pt-40 {
  padding-top: 40px !important; }

.pr-40 {
  padding-right: 40px !important; }

.pb-40 {
  padding-bottom: 40px !important; }

.pt-40 {
  padding-left: 40px !important; }

.mt-45 {
  margin-top: 45px !important; }

.mr-45 {
  margin-right: 45px !important; }

.mb-45 {
  margin-bottom: 45px !important; }

.ml-45 {
  margin-left: 45px !important; }

.pt-45 {
  padding-top: 45px !important; }

.pr-45 {
  padding-right: 45px !important; }

.pb-45 {
  padding-bottom: 45px !important; }

.pt-45 {
  padding-left: 45px !important; }

.mt-50 {
  margin-top: 50px !important; }

.mr-50 {
  margin-right: 50px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.ml-50 {
  margin-left: 50px !important; }

.pt-50 {
  padding-top: 50px !important; }

.pr-50 {
  padding-right: 50px !important; }

.pb-50 {
  padding-bottom: 50px !important; }

.pt-50 {
  padding-left: 50px !important; }

.mt-55 {
  margin-top: 55px !important; }

.mr-55 {
  margin-right: 55px !important; }

.mb-55 {
  margin-bottom: 55px !important; }

.ml-55 {
  margin-left: 55px !important; }

.pt-55 {
  padding-top: 55px !important; }

.pr-55 {
  padding-right: 55px !important; }

.pb-55 {
  padding-bottom: 55px !important; }

.pt-55 {
  padding-left: 55px !important; }

.mt-60 {
  margin-top: 60px !important; }

.mr-60 {
  margin-right: 60px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.ml-60 {
  margin-left: 60px !important; }

.pt-60 {
  padding-top: 60px !important; }

.pr-60 {
  padding-right: 60px !important; }

.pb-60 {
  padding-bottom: 60px !important; }

.pt-60 {
  padding-left: 60px !important; }

.mt-65 {
  margin-top: 65px !important; }

.mr-65 {
  margin-right: 65px !important; }

.mb-65 {
  margin-bottom: 65px !important; }

.ml-65 {
  margin-left: 65px !important; }

.pt-65 {
  padding-top: 65px !important; }

.pr-65 {
  padding-right: 65px !important; }

.pb-65 {
  padding-bottom: 65px !important; }

.pt-65 {
  padding-left: 65px !important; }

.mt-70 {
  margin-top: 70px !important; }

.mr-70 {
  margin-right: 70px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.ml-70 {
  margin-left: 70px !important; }

.pt-70 {
  padding-top: 70px !important; }

.pr-70 {
  padding-right: 70px !important; }

.pb-70 {
  padding-bottom: 70px !important; }

.pt-70 {
  padding-left: 70px !important; }

.mt-75 {
  margin-top: 75px !important; }

.mr-75 {
  margin-right: 75px !important; }

.mb-75 {
  margin-bottom: 75px !important; }

.ml-75 {
  margin-left: 75px !important; }

.pt-75 {
  padding-top: 75px !important; }

.pr-75 {
  padding-right: 75px !important; }

.pb-75 {
  padding-bottom: 75px !important; }

.pt-75 {
  padding-left: 75px !important; }

.mt-80 {
  margin-top: 80px !important; }

.mr-80 {
  margin-right: 80px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.ml-80 {
  margin-left: 80px !important; }

.pt-80 {
  padding-top: 80px !important; }

.pr-80 {
  padding-right: 80px !important; }

.pb-80 {
  padding-bottom: 80px !important; }

.pt-80 {
  padding-left: 80px !important; }

.mt-90 {
  margin-top: 90px !important; }

.mr-90 {
  margin-right: 90px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.ml-90 {
  margin-left: 90px !important; }

.pt-90 {
  padding-top: 90px !important; }

.pr-90 {
  padding-right: 90px !important; }

.pb-90 {
  padding-bottom: 90px !important; }

.pt-90 {
  padding-left: 90px !important; }

.mt-100 {
  margin-top: 100px !important; }

.mr-100 {
  margin-right: 100px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

.ml-100 {
  margin-left: 100px !important; }

.pt-100 {
  padding-top: 100px !important; }

.pr-100 {
  padding-right: 100px !important; }

.pb-100 {
  padding-bottom: 100px !important; }

.pt-100 {
  padding-left: 100px !important; }

/* 横幅 */
.w-0-per {
  width: 0% !important;
  max-width: 0% !important; }

.w-5-per {
  width: 5% !important;
  max-width: 5% !important; }

.w-10-per {
  width: 10% !important;
  max-width: 10% !important; }

.w-15-per {
  width: 15% !important;
  max-width: 15% !important; }

.w-20-per {
  width: 20% !important;
  max-width: 20% !important; }

.w-25-per {
  width: 25% !important;
  max-width: 25% !important; }

.w-30-per {
  width: 30% !important;
  max-width: 30% !important; }

.w-35-per {
  width: 35% !important;
  max-width: 35% !important; }

.w-40-per {
  width: 40% !important;
  max-width: 40% !important; }

.w-45-per {
  width: 45% !important;
  max-width: 45% !important; }

.w-50-per {
  width: 50% !important;
  max-width: 50% !important; }

.w-55-per {
  width: 55% !important;
  max-width: 55% !important; }

.w-60-per {
  width: 60% !important;
  max-width: 60% !important; }

.w-65-per {
  width: 65% !important;
  max-width: 65% !important; }

.w-70-per {
  width: 70% !important;
  max-width: 70% !important; }

.w-75-per {
  width: 75% !important;
  max-width: 75% !important; }

.w-80-per {
  width: 80% !important;
  max-width: 80% !important; }

.w-90-per {
  width: 90% !important;
  max-width: 90% !important; }

.w-100-per {
  width: 100% !important;
  max-width: 100% !important; }

/* 段落 */
p {
  margin: auto auto 1em;
  line-height: 1.8; }
  p.pre-space::before {
    content: "";
    padding-left: 1em; }
  @media (max-width: 767px) {
    p {
      line-height: 1.6; } }

/* リンク */
a {
  color: #0074e8; }
  a:hover {
    text-decoration: none; }

/* 注釈 */
.txt-notes {
  font-size: 1.5rem;
  color: #555555; }

.area-notes {
  padding: 24px 30px;
  color: #555555;
  font-size: 1.5rem;
  background-color: #f4f4f4;
  margin: 1em 0; }
  @media (max-width: 767px) {
    .area-notes {
      padding: 15px; } }

.txt-small {
  font-size: 0.8em; }

.txt-red {
  color: #EE0000; }

/* PDFアイコン */
.link-pdf::before {
  content: url("/image/serv/template/icon-pdf.png");
  vertical-align: middle;
  margin-right: 2px; }

/* 見出し */
h1 {
  font-size: 3.2rem;
  font-weight: normal;
  margin-bottom: 4.5rem; }
  @media (max-width: 767px) {
    h1 {
      font-size: 2.2rem;
      margin-bottom: 2.5rem; } }
  h1.ttl-basic {
    position: relative; }
    @media (max-width: 767px) {
      h1.ttl-basic {
        padding-bottom: 5px; } }
    h1.ttl-basic::after {
      position: absolute;
      bottom: 0;
      left: 0;
      content: "";
      height: 1px;
      width: 100%;
      background: #ff0f1c;
      background: -moz-linear-gradient(left, #0071c5 0%, #ff0f1c 100%);
      background: -webkit-gradient(linear, left center, right center, from(#0071c5), to(#ff0f1c));
      background: -webkit-linear-gradient(left, #0071c5 0%, #ff0f1c 100%);
      background: -o-linear-gradient(left, #0071c5 0%, #ff0f1c 100%);
      background: linear-gradient(to right, #0071c5 0%, #ff0f1c 100%); }

h2 {
  font-size: 2.8rem;
  font-weight: normal;
  margin: 4.8rem auto 1.6rem; }
  @media (max-width: 767px) {
    h2 {
      font-size: 2.0rem; } }
  h2.ttl-basic {
    padding-left: 2.5rem;
    position: relative; }
    @media (max-width: 767px) {
      h2.ttl-basic {
        padding-left: 1.6rem; } }
    h2.ttl-basic::before {
      content: "";
      position: absolute;
      top: 0.6rem;
      left: 0;
      width: 0.6rem;
      height: 3.4rem;
      background: #ff0f1c;
      background: -moz-linear-gradient(#0071c5 0%, #ff0f1c 100%);
      background: -webkit-gradient(linear, left top, left bottom, from(#0071c5), to(#ff0f1c));
      background: -webkit-linear-gradient(#0071c5 0%, #ff0f1c 100%);
      background: -o-linear-gradient(#0071c5 0%, #ff0f1c 100%);
      background: linear-gradient(#0071c5 0%, #ff0f1c 100%); }
      @media (max-width: 767px) {
        h2.ttl-basic::before {
          top: 0.4rem;
          height: 2.4rem; } }

h3 {
  font-size: 2.3rem;
  font-weight: normal;
  margin: 4.8rem auto 1.6rem; }
  @media (max-width: 767px) {
    h3 {
      font-size: 1.8rem; } }
  h3.ttl-basic {
    padding-left: 2.5rem;
    position: relative; }
    @media (max-width: 767px) {
      h3.ttl-basic {
        padding-left: 1.6rem; } }
    h3.ttl-basic::before {
      content: "";
      position: absolute;
      top: 12px;
      left: 0;
      height: 14px;
      width: 10px;
      background-image: url("/image/serv/template/h3-asett_x2.png");
      background-size: cover; }
      @media (max-width: 767px) {
        h3.ttl-basic::before {
          top: 10px;
          height: 12px;
          width: 8px; } }

h4 {
  font-size: 1.7rem;
  font-weight: normal;
  margin: 4.8rem auto 1.6rem; }
  h4.ttl-basic {
    text-decoration: underline;
    text-decoration-color: #333333;
    text-underline-offset: 6px; }

h5 {
  font-size: 1.6rem;
  font-weight: normal;
  margin: 4.8rem auto 1.6rem; }

h1 + h2,
h1 + h3,
h1 + h4,
h1 + h5,
h2 + h3,
h2 + h4,
h2 + h5,
h3 + h4,
h3 + h5,
h4 + h5 {
  margin-top: 1.6rem; }

/* リスト */
ul {
  margin: 1em auto;
  padding-left: 1.5em; }

ol {
  margin: 1em auto;
  padding-left: 2em; }

/* テーブル */
table {
  margin: 1em auto;
  width: 100%; }
  table th {
    text-align: left;
    background: #f0f0f0;
    font-weight: normal;
    word-break: keep-all; }
  table th, table td {
    border: 1px solid #bfbfbf;
    padding: 10px 8px;
    vertical-align: top;
    font-size: 1.5rem; }
  table.table-basic th {
    color: #ffffff;
    background-color: #0079c2; }

/* リストテーブル */
table.list-table-basic th {
  color: #fff;
  background-color: #0079c2; }
@media (max-width: 767px) {
  table.list-table-basic {
    border-bottom: 1px solid #bfbfbf; }
    table.list-table-basic th, table.list-table-basic td {
      border-bottom: none; }
    table.list-table-basic tr, table.list-table-basic th, table.list-table-basic td {
      display: block; } }
@media (min-width: 768px) {
  table.list-table-basic.head-10per th {
    width: 10%; }
  table.list-table-basic.head-15per th {
    width: 15%; }
  table.list-table-basic.head-20per th {
    width: 20%; }
  table.list-table-basic.head-25per th {
    width: 25%; }
  table.list-table-basic.head-30per th {
    width: 30%; }
  table.list-table-basic.head-35per th {
    width: 35%; }
  table.list-table-basic.head-40per th {
    width: 40%; }
  table.list-table-basic.head-45per th {
    width: 45%; }
  table.list-table-basic.head-50per th {
    width: 50%; } }

@media (max-width: 767px) {
  .wrap-scroll-x-sp {
    overflow: auto;
    white-space: nowrap; }
    .wrap-scroll-x-sp::-webkit-scrollbar {
      height: 5px; }
    .wrap-scroll-x-sp::-webkit-scrollbar-track {
      background: #F1F1F1; }
    .wrap-scroll-x-sp::-webkit-scrollbar-thumb {
      background: #BCBCBC; }
    .wrap-scroll-x-sp table {
      width: 100%; } }
/* ブロック要素 */
.d-block {
  display: block; }

.d-inlineblock {
  display: inline-block; }

.d-flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap; }
  @media (max-width: 767px) {
    .d-flex {
      display: block;
      margin-bottom: 20px; } }
  @media (min-width: 768px) {
    .d-flex > .item {
      text-align: justify;
      flex-basis: 50%;
      max-width: 50%;
      padding-right: 15px;
      padding-left: 15px; }
      .d-flex > .item:first-child {
        padding-left: 0px; }
      .d-flex > .item:last-child {
        padding-right: 0px; }
      .d-flex > .item.flex-basis-0 {
        flex-basis: 0 !important;
        max-width: 0 !important; }
      .d-flex > .item.flex-basis-5 {
        flex-basis: 5 !important;
        max-width: 5 !important; }
      .d-flex > .item.flex-basis-10 {
        flex-basis: 10 !important;
        max-width: 10 !important; }
      .d-flex > .item.flex-basis-15 {
        flex-basis: 15 !important;
        max-width: 15 !important; }
      .d-flex > .item.flex-basis-20 {
        flex-basis: 20 !important;
        max-width: 20 !important; }
      .d-flex > .item.flex-basis-25 {
        flex-basis: 25 !important;
        max-width: 25 !important; }
      .d-flex > .item.flex-basis-30 {
        flex-basis: 30 !important;
        max-width: 30 !important; }
      .d-flex > .item.flex-basis-35 {
        flex-basis: 35 !important;
        max-width: 35 !important; }
      .d-flex > .item.flex-basis-40 {
        flex-basis: 40 !important;
        max-width: 40 !important; }
      .d-flex > .item.flex-basis-45 {
        flex-basis: 45 !important;
        max-width: 45 !important; }
      .d-flex > .item.flex-basis-50 {
        flex-basis: 50 !important;
        max-width: 50 !important; }
      .d-flex > .item.flex-basis-55 {
        flex-basis: 55 !important;
        max-width: 55 !important; }
      .d-flex > .item.flex-basis-60 {
        flex-basis: 60 !important;
        max-width: 60 !important; }
      .d-flex > .item.flex-basis-65 {
        flex-basis: 65 !important;
        max-width: 65 !important; }
      .d-flex > .item.flex-basis-70 {
        flex-basis: 70 !important;
        max-width: 70 !important; }
      .d-flex > .item.flex-basis-75 {
        flex-basis: 75 !important;
        max-width: 75 !important; }
      .d-flex > .item.flex-basis-80 {
        flex-basis: 80 !important;
        max-width: 80 !important; }
      .d-flex > .item.flex-basis-90 {
        flex-basis: 90 !important;
        max-width: 90 !important; }
      .d-flex > .item.flex-basis-100 {
        flex-basis: 100 !important;
        max-width: 100 !important; } }
  @media (max-width: 767px) {
    .d-flex > .item {
      max-width: 100%; } }
  .d-flex.align-center {
    align-items: center; }

/* icon */
.ico-pdf-sufix::after {
  display: inline-block;
  content: url("/image/serv/template/icon-pdf.png");
  vertical-align: middle;
  padding-left: 5px;
  padding-right: 10px; }

.t-blank::after {
  display: inline-block;
  content: url("/image/serv/template/icon-ext-link.png");
  vertical-align: middle;
  padding-left: 1px;
  padding-right: 1px; }

/* anchorlinks */
ul.area-anchorlinks {
  background: #f7f7f7;
  list-style: none;
  margin-bottom: 2em; }
  @media (min-width: 768px) {
    ul.area-anchorlinks {
      padding: 12px 18px;
      display: flex;
      flex-wrap: wrap;
      gap: 0.5em 1.5em; } }
  @media (max-width: 767px) {
    ul.area-anchorlinks {
      padding: 2px 12px; } }
  ul.area-anchorlinks > li > a {
    position: relative;
    color: #111;
    font-size: 1.5rem;
    text-decoration: none;
    word-break: keep-all;
    white-space: nowrap;
    padding-right: 15px; }
    @media (max-width: 767px) {
      ul.area-anchorlinks > li > a {
        display: block;
        padding: 6px 15px 6px 0px;
        border-bottom: 1px solid #eee;
        font-size: 1.4rem; } }
    ul.area-anchorlinks > li > a::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 0px;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      height: 8px;
      width: 10px;
      background-image: url("/image/serv/template/arrow-black-down.png");
      background-size: cover; }
    @media (min-width: 768px) {
      ul.area-anchorlinks > li > a:hover {
        opacity: 0.7; } }
  @media (max-width: 767px) {
    ul.area-anchorlinks > li:last-child > a {
      border: none; } }

.btn {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fff;
  background-color: #6c757d;
  border: none;
  border-radius: 4px;
  padding: 0.375em 1.5em;
  font-size: 1em;
  line-height: 1.5;
  transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  text-decoration: none;
  /*
  &.btn-orange{
    background-color:#f0ad4e;
    border:1px solid #f0ad4e;
    color:#fff;
    &:hover{
      background-color:#ffbe63;
      border:1px solid #ffbe63;
      color:#fff;
    }
  }
  */ }
  .btn:hover {
    cursor: pointer;
    transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  .btn:not(.disabled):hover {
    text-decoration: none;
    color: #fff;
    background-color: #8d97a2; }
  .btn:focus, .btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .btn:disabled, .btn.disabled {
    opacity: 0.65; }
  @media (prefers-reduced-motion: reduce) {
    .btn {
      transition: none; } }
  .btn.btn-blue {
    background-color: #0072c5;
    color: #fff; }
    .btn.btn-blue:hover {
      background-color: #27a4da;
      color: #fff; }
  .btn.btn-green {
    background-color: #5cb85c;
    color: #fff; }
    .btn.btn-green:hover {
      background-color: #6bd06b;
      color: #fff; }
  .btn.btn-red {
    background: #bc262f;
    color: #fff; }
    .btn.btn-red:hover {
      background-color: #D9454E;
      color: #fff; }

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none; }

.btn-large {
  font-size: 1.25em; }

.btn-small {
  font-size: 0.875em; }

.btn-long {
  width: 100%;
  max-width: 100%; }

.btn-block {
  display: block;
  width: 100%; }
  .btn-block + .btn-block {
    margin-top: 0.5rem; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.form-control {
  display: block;
  width: 100%;
  padding: 0.375em 0.75em;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25em;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .form-control::-webkit-input-placeholder, .form-control::-moz-placeholder, .form-control:-ms-input-placeholder, .form-control::-ms-input-placeholder, .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1; }
  .form-control.inline {
    display: inline-block; }
  @media (prefers-reduced-motion: reduce) {
    .form-control {
      transition: none; } }

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.form-control-file {
  display: block;
  width: 100%; }

textarea.form-control {
  height: auto; }

.wrap-form-control-radio,
.wrap-form-control-cbox {
  position: relative;
  display: block;
  padding-left: 0; }
  .wrap-form-control-radio.inline,
  .wrap-form-control-cbox.inline {
    display: inline-block;
    margin-right: 1em; }
  .wrap-form-control-radio .form-control-radio,
  .wrap-form-control-radio .form-control-cbox,
  .wrap-form-control-cbox .form-control-radio,
  .wrap-form-control-cbox .form-control-cbox {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin: 0; }
    .wrap-form-control-radio .form-control-radio:disabled ~ label,
    .wrap-form-control-radio .form-control-cbox:disabled ~ label,
    .wrap-form-control-cbox .form-control-radio:disabled ~ label,
    .wrap-form-control-cbox .form-control-cbox:disabled ~ label {
      color: #6c757d; }
    .wrap-form-control-radio .form-control-radio:focus,
    .wrap-form-control-radio .form-control-cbox:focus,
    .wrap-form-control-cbox .form-control-radio:focus,
    .wrap-form-control-cbox .form-control-cbox:focus {
      color: #495057;
      background-color: #fff;
      border-color: #80bdff;
      outline: 0;
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .wrap-form-control-radio label,
  .wrap-form-control-cbox label {
    margin-left: 1em;
    /*vertical-align: text-bottom;*/ }
    .wrap-form-control-radio label:hover,
    .wrap-form-control-cbox label:hover {
      cursor: pointer; }

.wrap-form-control-buttons {
  display: flex;
  justify-content: center; }
  .wrap-form-control-buttons .btn {
    margin: auto 0.5em; }

.area-posted-message {
  border-radius: 2px;
  background-color: #999999;
  color: #ffffff;
  padding: 8px 10px;
  margin: 10px 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap; }
  .area-posted-message.js-none {
    display: none; }
  .area-posted-message.success {
    border: 1px solid #5cb85c;
    background-color: #6bd06b; }
  .area-posted-message > .btnX:hover {
    cursor: pointer; }

.area-images {
  margin: 50px auto 30px;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .area-images {
      margin: 20px auto; } }
  .area-images > img {
    max-width: 100%;
    margin-bottom: 20px; }
  .area-images figure.image-graph {
    text-align: center;
    margin-bottom: 20px; }
    .area-images figure.image-graph img {
      max-width: 100%; }
      .area-images figure.image-graph img.pc-w360 {
        width: 360px; }
    .area-images figure.image-graph figcaption {
      text-align: center;
      font-weight: bold;
      font-size: 1.6rem;
      text-decoration: underline; }

.wrap-sashie .img-sashie {
  float: right;
  display: block;
  margin: auto auto .5em 1em; }


