@charset "UTF-8";
/* ---------------------------------------------------------------- */
/* [Style]
/*   1. Reset
/*   2. Base
/*   3. Slick
/*   4. Layout
/*   5. Module
/*   6. Theme
/*   7. Header
/*   8. Footer
/*   9. Index
/*  10. News
/*  11. About
/*  12. Support
/*  13. Case
/*  14. Recruit
/*  15. Report
/*  16. Reserve
/*  17. Member
/*  18. Contact
/*  19. Access
/*  20. Link
/*  21. Privacy
/*  22. Policy
/*
/*  99. Print
/* ---------------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*   1. Reset
/* ---------------------------------------------------------------- */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
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, main, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, main, 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;
}

/* ---------------------------------------------------------------- */
/*   2. Base
/* ---------------------------------------------------------------- */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  color: #222222;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.6;
  word-break: normal;
  overflow-wrap: normal;
  word-wrap: normal;
  background-color: transparent;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}

a {
  outline: none;
  word-break: break-all;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

a:link, a:visited {
  color: #0095e8;
  text-decoration: underline;
}

a:hover, a:active {
  color: #0095e8;
  text-decoration: none;
}

ul, ol {
  list-style: none;
}

em, dl, i, address {
  font-style: normal;
}

sup, sub {
  font-size: 0.76471rem;
  line-height: 1.2;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

pre {
  white-space: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1rem;
  font-family: inherit;
}

table th, table td {
  text-align: left;
  vertical-align: middle;
  padding: 0.5em;
}

table th {
  font-weight: normal;
}

table td {
  word-break: break-all;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

select,
textarea,
input[type="text"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="email"],
input[type="password"] {
  margin: 5px;
  padding: 6px;
  font-size: 1rem;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 0.25rem;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

textarea,
input[type="text"],
input[type="number"],
input[type="date"],
input[type="email"],
input[type="password"] {
  font-size: 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="text"].align_left,
input[type="number"].align_left {
  text-align: left;
}

input[type="text"].align_center,
input[type="number"].align_center {
  text-align: center;
}

input[type="text"].align_right,
input[type="number"].align_right {
  text-align: right;
}

input[type="radio"], input[type="checkbox"] {
  margin: 3px 0 5px 5px;
  cursor: pointer;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
  padding: 0 8px 0 2px;
  cursor: pointer;
}

input:-moz-placeholder, textarea:-moz-placeholder {
  color: #bbbbbb;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #bbbbbb;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #bbbbbb;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #bbbbbb;
}

p {
  min-height: 1.6em;
}

em {
  font-style: italic;
}

label {
  display: inline-block;
  margin: .25em .5em .25em 0;
  cursor: pointer;
}

label input[type="radio"] {
  margin-right: .25em;
}

img {
  max-width: 100%;
  height: auto !important;
  vertical-align: bottom;
}

blockquote {
  margin: .5em 0;
  padding: .75em 1.25em;
  font-size: 0.88235rem;
  background-color: #f2f2f2;
  border-radius: 0.5rem;
}

iframe {
  max-width: 100%;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  html {
    font-size: 17px;
  }
  table th, table td {
    padding: 0.5em 1em;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  html {
    font-size: 15px;
  }
}

/* ---------------------------------------------------------------- */
/*   3. Slick
/* ---------------------------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track::before, .slick-track::after {
  content: "";
  display: table;
}

.slick-track::after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-prev,
.slick-next {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: -30px;
  padding: 0;
  line-height: 0;
  border: none;
  outline: none;
  background: #fff no-repeat center center;
  background-size: contain;
  border-radius: 50%;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  cursor: pointer;
  z-index: 1;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled {
  background-color: #c9c9c9;
}

.slick-prev::before,
.slick-next::before {
  display: block;
  content: "";
  width: 60px;
  height: 60px;
  background: transparent url(image/icon_arrow.svg) no-repeat center center;
  background-size: 20px;
}

.slick-prev:hover,
.slick-next:hover {
  background-color: #f2f2f2;
}

.slick-prev {
  left: 0;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.slick-next {
  right: 0;
}

.slick-dots {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
  counter-reset: number 0;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 10px;
  margin: 0 5px;
  padding: 0;
  text-align: center;
  cursor: pointer;
}

.slick-dots li button {
  display: block;
  border: 0;
  outline: none;
  color: transparent;
  font-size: 0;
  background: transparent;
  outline: none;
  cursor: pointer;
}

.slick-dots li button:hover::after {
  background-color: #222222;
}

.slick-dots li button::after {
  display: block;
  content: "";
  width: 10px;
  height: 10px;
  background-color: #d8d8d8;
  border-radius: 50%;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}

.slick-dots li.slick-active button::after {
  background-color: #222222;
}

/* ---------------------------------------------------------------- */
/*   4. Layout
/* ---------------------------------------------------------------- */
#header,
#content,
#footer {
  position: relative;
  clear: both;
}

#header .inner,
#content .inner,
#footer .inner {
  position: relative;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}

#content {
  padding-top: 100px;
}

#secondary {
  position: fixed;
  z-index: 10;
}

#secondary a {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  background: transparent no-repeat center center / contain;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}

#secondary .reserve a {
  background-color: #309e39;
  background-image: url(image/btn_sidebar_reserve.svg);
}

#secondary .mailmaga a {
  background-color: #00aeb2;
  background-image: url(image/btn_sidebar_mailmaga.svg);
}

#secondary .contact a {
  background-color: #0099cc;
  background-image: url(image/btn_sidebar_contact.svg);
}

#secondary .pagetop a {
  background-color: #222222;
  background-image: url(image/btn_sidebar_pagetop.svg);
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  #header .inner,
  #content .inner,
  #footer .inner {
    max-width: 1340px;
  }
  #secondary {
    right: 0;
    bottom: 50px;
  }
  #secondary a {
    width: 80px;
    height: 80px;
    background-size: 80px auto;
  }
  #secondary .reserve a {
    border-top-left-radius: .5rem;
  }
  #secondary .pagetop a {
    height: 60px;
    border-bottom-left-radius: .5rem;
  }
  #breadline {
    margin-bottom: 1em;
    padding: 0 1em;
    margin-top: -60px;
  }
  #breadline .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 60px;
    background-color: #fff;
  }
  #breadline ul {
    padding: 0 1rem;
    width: 100%;
    font-size: 0;
  }
  #breadline li {
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
  }
  #breadline li.active {
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    word-wrap: normal;
    max-width: calc(100% - 7em);
  }
  #breadline li.home a::before {
    display: inline-block;
    content: '';
    vertical-align: middle;
    margin-right: .25em;
    width: 20px;
    height: 20px;
    background: transparent url(image/icon_breadline_home.svg) no-repeat center center/contain;
  }
  #breadline li .divider {
    padding: 0 .5em;
  }
  #breadline li a {
    color: #0099cc;
    font-weight: normal;
  }
  #secondary .reserve a:hover {
    background-color: #36b240;
  }
  #secondary .pagetop a:hover {
    background-color: #444444;
  }
  #secondary .mailmaga a:hover {
    background-color: #00c7cc;
  }
  #secondary .pagetop a:hover {
    background-color: #444444;
  }
  #secondary .contact a:hover {
    background-color: #00ace6;
  }
  #secondary .pagetop a:hover {
    background-color: #444444;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  #header .inner,
  #content .inner,
  #footer .inner {
    min-width: 320px;
  }
  #footer {
    margin-bottom: 50px;
  }
  #secondary {
    left: 0;
    bottom: 0;
    width: 100%;
  }
  #secondary ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #secondary li {
    width: 27.5%;
  }
  #secondary li.pagetop {
    width: 17.5%;
  }
  #secondary a {
    height: 50px;
  }
  #breadline {
    display: none;
  }
}

/* ---------------------------------------------------------------- */
/*   5. Module
/* ---------------------------------------------------------------- */
.gothic {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.font_big {
  font-size: 1.23529rem !important;
}

.font_large {
  font-size: 1.11765rem !important;
}

.font_normal {
  font-size: 1rem !important;
}

.font_small {
  font-size: 0.88235rem !important;
}

.font_little {
  font-size: 0.76471rem !important;
}

.font_weight_normal {
  font-weight: normal !important;
}

.font_weight_midiem {
  font-weight: 500 !important;
}

.font_weight_bold {
  font-weight: bold !important;
}

.text_color_blue {
  color: #0099cc;
}

.text_color_green {
  color: #309e39;
}

.text_color_orange {
  color: #eb9d14;
}

.text_color_pink {
  color: #ff0092;
}

.text_color_gray {
  color: #848484;
}

.text_color_light_gray {
  color: #f2f2f2;
}

.text_color_black {
  color: #222222;
}

.bg_color_blue {
  background-color: #0099cc;
}

.bg_color_green {
  background-color: #309e39;
}

.bg_color_orange {
  background-color: #eb9d14;
}

.bg_color_blue {
  background-color: #0099cc;
}

.bg_color_gray {
  background-color: #848484;
}

.bg_color_light_gray {
  background-color: #f2f2f2;
}

.bg_color_black {
  background-color: #222222;
}

.d_flex {
  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;
}

.d_flex.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.d_block {
  display: block;
}

.d_inline_block {
  display: inline-block;
}

.d_inline {
  display: inline;
}

.d_none {
  display: none;
}

.mt_0 {
  margin-top: 0rem !important;
}

.mr_0 {
  margin-right: 0rem !important;
}

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

.ml_0 {
  margin-left: 0rem !important;
}

.m_0 {
  margin: 0rem !important;
}

.mx_0 {
  margin-left: 0rem !important;
  margin-right: 0rem !important;
}

.my_0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}

.pt_0 {
  padding-top: 0rem !important;
}

.pr_0 {
  padding-right: 0rem !important;
}

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

.pl_0 {
  padding-left: 0rem !important;
}

.p_0 {
  padding: 0rem !important;
}

.px_0 {
  padding-left: 0rem !important;
  padding-right: 0rem !important;
}

.py_0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}

.mt_1 {
  margin-top: 1rem !important;
}

.mr_1 {
  margin-right: 1rem !important;
}

.mb_1 {
  margin-bottom: 1rem !important;
}

.ml_1 {
  margin-left: 1rem !important;
}

.m_1 {
  margin: 1rem !important;
}

.mx_1 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.my_1 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.pt_1 {
  padding-top: 1rem !important;
}

.pr_1 {
  padding-right: 1rem !important;
}

.pb_1 {
  padding-bottom: 1rem !important;
}

.pl_1 {
  padding-left: 1rem !important;
}

.p_1 {
  padding: 1rem !important;
}

.px_1 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.py_1 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.mt_2 {
  margin-top: 2rem !important;
}

.mr_2 {
  margin-right: 2rem !important;
}

.mb_2 {
  margin-bottom: 2rem !important;
}

.ml_2 {
  margin-left: 2rem !important;
}

.m_2 {
  margin: 2rem !important;
}

.mx_2 {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}

.my_2 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

.pt_2 {
  padding-top: 2rem !important;
}

.pr_2 {
  padding-right: 2rem !important;
}

.pb_2 {
  padding-bottom: 2rem !important;
}

.pl_2 {
  padding-left: 2rem !important;
}

.p_2 {
  padding: 2rem !important;
}

.px_2 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.py_2 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.mt_3 {
  margin-top: 3rem !important;
}

.mr_3 {
  margin-right: 3rem !important;
}

.mb_3 {
  margin-bottom: 3rem !important;
}

.ml_3 {
  margin-left: 3rem !important;
}

.m_3 {
  margin: 3rem !important;
}

.mx_3 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.my_3 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.pt_3 {
  padding-top: 3rem !important;
}

.pr_3 {
  padding-right: 3rem !important;
}

.pb_3 {
  padding-bottom: 3rem !important;
}

.pl_3 {
  padding-left: 3rem !important;
}

.p_3 {
  padding: 3rem !important;
}

.px_3 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.py_3 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.mt_4 {
  margin-top: 4rem !important;
}

.mr_4 {
  margin-right: 4rem !important;
}

.mb_4 {
  margin-bottom: 4rem !important;
}

.ml_4 {
  margin-left: 4rem !important;
}

.m_4 {
  margin: 4rem !important;
}

.mx_4 {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}

.my_4 {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}

.pt_4 {
  padding-top: 4rem !important;
}

.pr_4 {
  padding-right: 4rem !important;
}

.pb_4 {
  padding-bottom: 4rem !important;
}

.pl_4 {
  padding-left: 4rem !important;
}

.p_4 {
  padding: 4rem !important;
}

.px_4 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.py_4 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.mt_5 {
  margin-top: 5rem !important;
}

.mr_5 {
  margin-right: 5rem !important;
}

.mb_5 {
  margin-bottom: 5rem !important;
}

.ml_5 {
  margin-left: 5rem !important;
}

.m_5 {
  margin: 5rem !important;
}

.mx_5 {
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}

.my_5 {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}

.pt_5 {
  padding-top: 5rem !important;
}

.pr_5 {
  padding-right: 5rem !important;
}

.pb_5 {
  padding-bottom: 5rem !important;
}

.pl_5 {
  padding-left: 5rem !important;
}

.p_5 {
  padding: 5rem !important;
}

.px_5 {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.py_5 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

.mt_6 {
  margin-top: 6rem !important;
}

.mr_6 {
  margin-right: 6rem !important;
}

.mb_6 {
  margin-bottom: 6rem !important;
}

.ml_6 {
  margin-left: 6rem !important;
}

.m_6 {
  margin: 6rem !important;
}

.mx_6 {
  margin-left: 6rem !important;
  margin-right: 6rem !important;
}

.my_6 {
  margin-top: 6rem !important;
  margin-bottom: 6rem !important;
}

.pt_6 {
  padding-top: 6rem !important;
}

.pr_6 {
  padding-right: 6rem !important;
}

.pb_6 {
  padding-bottom: 6rem !important;
}

.pl_6 {
  padding-left: 6rem !important;
}

.p_6 {
  padding: 6rem !important;
}

.px_6 {
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}

.py_6 {
  padding-top: 6rem !important;
  padding-bottom: 6rem !important;
}

.mt_7 {
  margin-top: 7rem !important;
}

.mr_7 {
  margin-right: 7rem !important;
}

.mb_7 {
  margin-bottom: 7rem !important;
}

.ml_7 {
  margin-left: 7rem !important;
}

.m_7 {
  margin: 7rem !important;
}

.mx_7 {
  margin-left: 7rem !important;
  margin-right: 7rem !important;
}

.my_7 {
  margin-top: 7rem !important;
  margin-bottom: 7rem !important;
}

.pt_7 {
  padding-top: 7rem !important;
}

.pr_7 {
  padding-right: 7rem !important;
}

.pb_7 {
  padding-bottom: 7rem !important;
}

.pl_7 {
  padding-left: 7rem !important;
}

.p_7 {
  padding: 7rem !important;
}

.px_7 {
  padding-left: 7rem !important;
  padding-right: 7rem !important;
}

.py_7 {
  padding-top: 7rem !important;
  padding-bottom: 7rem !important;
}

.mt_8 {
  margin-top: 8rem !important;
}

.mr_8 {
  margin-right: 8rem !important;
}

.mb_8 {
  margin-bottom: 8rem !important;
}

.ml_8 {
  margin-left: 8rem !important;
}

.m_8 {
  margin: 8rem !important;
}

.mx_8 {
  margin-left: 8rem !important;
  margin-right: 8rem !important;
}

.my_8 {
  margin-top: 8rem !important;
  margin-bottom: 8rem !important;
}

.pt_8 {
  padding-top: 8rem !important;
}

.pr_8 {
  padding-right: 8rem !important;
}

.pb_8 {
  padding-bottom: 8rem !important;
}

.pl_8 {
  padding-left: 8rem !important;
}

.p_8 {
  padding: 8rem !important;
}

.px_8 {
  padding-left: 8rem !important;
  padding-right: 8rem !important;
}

.py_8 {
  padding-top: 8rem !important;
  padding-bottom: 8rem !important;
}

.mt_9 {
  margin-top: 9rem !important;
}

.mr_9 {
  margin-right: 9rem !important;
}

.mb_9 {
  margin-bottom: 9rem !important;
}

.ml_9 {
  margin-left: 9rem !important;
}

.m_9 {
  margin: 9rem !important;
}

.mx_9 {
  margin-left: 9rem !important;
  margin-right: 9rem !important;
}

.my_9 {
  margin-top: 9rem !important;
  margin-bottom: 9rem !important;
}

.pt_9 {
  padding-top: 9rem !important;
}

.pr_9 {
  padding-right: 9rem !important;
}

.pb_9 {
  padding-bottom: 9rem !important;
}

.pl_9 {
  padding-left: 9rem !important;
}

.p_9 {
  padding: 9rem !important;
}

.px_9 {
  padding-left: 9rem !important;
  padding-right: 9rem !important;
}

.py_9 {
  padding-top: 9rem !important;
  padding-bottom: 9rem !important;
}

.clearfix::after {
  display: block;
  content: "";
  clear: both;
}

.float_left {
  float: left;
}

.float_right {
  float: right;
}

.clear_both {
  clear: both;
}

.text_center {
  text-align: center !important;
}

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

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

table {
  margin: 1em 0;
  background-color: transparent;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}

table[align="center"] {
  margin-left: auto;
  margin-right: auto;
}

table th,
table td {
  min-height: 2.8em;
  border-left: 1px solid #333;
  border-top: 1px solid #333;
  background-clip: padding-box;
}

table th {
  text-align: center;
  white-space: nowrap;
  background-color: #f2f2f2;
}

table.text_center th,
table.text_center td {
  text-align: center;
}

table.text_left th,
table.text_left td {
  text-align: left;
}

table.text_right th,
table.text_right td {
  text-align: right;
}

table.fixed {
  table-layout: fixed;
}

table.nowrap th,
table.nowrap td {
  white-space: nowrap;
}

table.basic_table, table.simple_table {
  width: 100%;
}

table.simple_table {
  border-right: none;
  border-bottom: 1px solid #333;
}

table.simple_table th,
table.simple_table td {
  border-left: none;
  border-top: 1px solid #333;
}

table.simple_table th {
  font-weight: bold;
  background-color: transparent;
}

table .nowrap {
  white-space: nowrap;
}

table .wrap {
  white-space: normal !important;
}

ul.basic_ul li::marker {
  color: #419ece;
}

dl.basic_dl {
  margin: 1em 0;
}

dl.basic_dl > dt {
  font-weight: bold;
}

dl.basic_dl > dd {
  margin-left: 1em;
}

dl.basic_dl > dd + dt {
  padding-top: .5em;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  .only_sp {
    display: none !important;
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  .only_tab {
    display: none !important;
  }
  .only_tab_sp {
    display: none !important;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 959px) {
  .only_pc {
    display: none !important;
  }
}

/* Tablet
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  .only_pc_tab {
    display: none !important;
  }
  .only_tab {
    display: none !important;
  }
  table.vertical th,
  table.vertical td {
    display: block;
    width: 100%;
    white-space: normal !important;
  }
}

/* ---------------------------------------------------------------- */
/*   6. Theme
/* ---------------------------------------------------------------- */
article {
  overflow: hidden;
  padding-bottom: 8em;
}

article section {
  padding: 3em 0;
}

article ul {
  margin-left: 1.5em;
  list-style: disc;
}

article ul.asterisk, article ul.attention, article ul.circle {
  margin-left: .25em;
  list-style: none;
}

article ul.asterisk li, article ul.attention li, article ul.circle li {
  margin-left: 1.25em;
  text-indent: -1.25em;
}

article ul.asterisk li::before, article ul.attention li::before, article ul.circle li::before {
  content: "※";
}

article ul.asterisk li::before, article ul.attention li::before {
  content: "※";
}

article ul.attention {
  color: #ff0092;
  font-size: 0.76471rem;
}

article ul.circle li::before {
  content: "●";
}

article ol {
  margin-left: 1.5em;
  list-style: decimal;
}

article p + p {
  margin-top: 1em;
}

article .tab_nav {
  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;
}

article .tab_nav a,
article .tab_nav span {
  overflow: hidden;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1em calc(.25em + 50px) 1em calc(.25em + 10px);
  width: 48%;
  min-height: 60px;
  color: #fff !important;
  font-size: 1.05882rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-decoration: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background-color: #848484;
  border-top-left-radius: .5em;
  border-top-right-radius: .5em;
  cursor: pointer;
  z-index: 0;
}

article .tab_nav a.active,
article .tab_nav span.active {
  background: -webkit-gradient(linear, left top, right top, from(#139595), to(#0095e8));
  background: -webkit-linear-gradient(left, #139595, #0095e8);
  background: linear-gradient(90deg, #139595, #0095e8);
}

article .tab_nav a.active::after,
article .tab_nav span.active::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

article .tab_nav a::before, article .tab_nav a::after,
article .tab_nav span::before,
article .tab_nav span::after {
  display: block;
  content: "";
  position: absolute;
}

article .tab_nav a::before,
article .tab_nav span::before {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#16acac), to(#02a5ff));
  background: -webkit-linear-gradient(left, #16acac, #02a5ff);
  background: linear-gradient(90deg, #16acac, #02a5ff);
  opacity: 0;
  z-index: -1;
}

article .tab_nav a::after,
article .tab_nav span::after {
  top: 50%;
  right: 20px;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  background: transparent url(image/icon_arrow_circle_white.svg) no-repeat center center/contain;
}

article .tab_content > div {
  display: none;
}

article .tab_content > div.active {
  display: block;
}

a[href^="tel:"] {
  color: #222222;
}

@media all and (min-width: 740px), print {
  a[href^="tel:"] {
    text-decoration: none;
    pointer-events: none;
  }
}

@media only screen and (max-width: 739px) {
  a[href^="tel:"] {
    color: #0099cc;
  }
}

a[target="_blank"]::after, a[href$=".doc"]::after, a[href$=".docx"]::after, a[href$=".xls"]::after, a[href$=".xlsx"]::after, a[href$=".pdf"]::after, a[href^="https://www.youtube.com/"]::after, a[href^="https://youtu.be/"]::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  width: 30px;
  height: 30px;
  background: transparent no-repeat center center / contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

a[target="_blank"].non-style::after, a[href$=".doc"].non-style::after, a[href$=".docx"].non-style::after, a[href$=".xls"].non-style::after, a[href$=".xlsx"].non-style::after, a[href$=".pdf"].non-style::after, a[href^="https://www.youtube.com/"].non-style::after, a[href^="https://youtu.be/"].non-style::after {
  display: none;
}

a[target="_blank"]::after {
  background-image: url(image/icon_window.svg);
}

a[href$=".doc"]::after, a[href$=".docx"]::after {
  background-image: url(image/icon_word.svg);
}

a[href$=".xls"]::after, a[href$=".xlsx"]::after {
  background-image: url(image/icon_excel.svg);
}

a[href$=".pdf"]::after {
  background-image: url(image/icon_pdf.svg);
}

a[href^="https://www.youtube.com/"]::after, a[href^="https://youtu.be/"]::after {
  background-image: url(image/icon_youtube.svg);
}

a.non_style::after {
  display: none !important;
}

h2,
h3,
h4,
h5,
h6 {
  margin-top: 2em;
  margin-bottom: .5em;
}

h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}

h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6 {
  margin-top: 0;
}

h2 {
  margin-bottom: 2em;
  text-align: center;
}

h2 em {
  color: #eb9d14;
  font-size: 0.88235rem;
  font-style: normal;
}

h2 strong {
  display: block;
  font-size: 1.76471rem;
}

h3 {
  position: relative;
  margin-bottom: 2em;
  padding-bottom: .125em;
  font-size: 1.52941rem;
  text-align: center;
}

h3::after {
  display: block;
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -30px;
  width: 60px;
  height: 3px;
  background-color: #0099cc;
}

h4 {
  margin-bottom: 1.5em;
  padding-bottom: .5em;
  font-size: 1.41176rem;
  text-align: center;
  border-bottom: 1px solid #ccc;
}

h5 {
  margin-bottom: 1em;
  font-size: 1.17647rem;
}

h6 {
  margin-bottom: .5em;
  font-size: 17px;
}

[v-cloak] {
  display: none;
}

.pre {
  white-space: pre;
}

.pre-wrap {
  white-space: pre-wrap;
}

.required {
  color: #f00;
  font-weight: bold;
}

.errors {
  margin-left: 0;
  list-style: none;
  color: #f00;
}

.gssb_c {
  display: none;
}

.focus_text,
.attention_text {
  margin: 2em 0;
  padding: 1em 2.5em;
  border-radius: 1em;
}

.focus_text {
  background-color: #f2f2f2;
}

.focus_text strong {
  color: #222222;
}

.attention_text {
  background-color: #0099cc;
}

.attention_text strong {
  color: #222222;
}

.text_indent {
  margin-left: 1em;
  text-indent: -1em;
}

.scroll_table {
  margin-bottom: 1em;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.scroll_table::-webkit-scrollbar {
  width: 10px;
}

.scroll_table::-webkit-scrollbar-track {
  background-color: #f2f2f2;
}

.scroll_table::-webkit-scrollbar-thumb {
  background-color: #848484;
}

.scroll_table table {
  margin-bottom: 0;
}

.scroll_table th,
.scroll_table td {
  white-space: nowrap;
}

.page_title {
  background: transparent url(image/bg_page_title.jpg) no-repeat center center/cover;
}

.page_title .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 160px;
}

.page_title h2 {
  margin-bottom: 0;
}

.card {
  overflow: hidden;
  background-color: #fff;
  border-radius: .5em;
}

.card > .title {
  padding: 1em;
  color: #fff;
  font-size: 1.23529rem;
  font-weight: bold;
  text-align: center;
  background-color: #606060;
}

.card > .content {
  padding: 2em;
}

.buttons {
  padding-top: 3em;
  text-align: center;
}

.basic_btn {
  overflow: hidden;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.5em calc(.5em + 50px) 0.5em calc(.5em + 30px);
  min-width: 240px;
  min-height: 60px;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: bold;
  text-decoration: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: -webkit-gradient(linear, left top, right top, from(#139595), to(#0095e8));
  background: -webkit-linear-gradient(left, #139595, #0095e8);
  background: linear-gradient(90deg, #139595, #0095e8);
  border: none;
  border-radius: 4em;
  cursor: pointer;
  z-index: 0;
}

.basic_btn::before, .basic_btn::after {
  display: block;
  content: "";
  position: absolute;
}

.basic_btn::before {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#16acac), to(#02a5ff));
  background: -webkit-linear-gradient(left, #16acac, #02a5ff);
  background: linear-gradient(90deg, #16acac, #02a5ff);
  opacity: 0;
  z-index: -1;
}

.basic_btn::after {
  top: 50%;
  right: 20px;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  background: transparent url(image/icon_arrow_circle_white.svg) no-repeat center center/contain;
}

.basic_btn[target="_blank"]::after {
  background-image: url(image/icon_window.svg);
}

.basic_btn[href$=".doc"]::after, .basic_btn[href$=".docx"]::after {
  background-image: url(image/icon_word.svg);
}

.basic_btn[href$=".xls"]::after, .basic_btn[href$=".xlsx"]::after {
  background-image: url(image/icon_excel.svg);
}

.basic_btn[href$=".pdf"]::after {
  background-image: url(image/icon_pdf.svg);
}

.basic_btn[href^="https://www.youtube.com/"]::after, .basic_btn[href^="https://youtu.be/"]::after {
  background-image: url(image/icon_youtube.svg);
}

.pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 0;
  list-style: none;
  padding-top: 3em;
}

.pagination .page {
  padding: 0 .25em;
}

.pagination .page a,
.pagination .page span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 50px;
  height: 50px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  background-color: #848484;
  border: 1px solid #333;
  border-radius: 50%;
}

.pagination .page span {
  background-color: #222222;
}

.pagination .prev,
.pagination .next {
  padding-left: 2em;
}

.pagination .prev a,
.pagination .next a {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 50px;
  height: 50px;
  background: transparent url(image/icon_arrow.svg) no-repeat center center;
  background-size: 20px;
  border: 1px solid #333;
  border-radius: 50%;
}

.pagination .prev {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.news_tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 2em auto 1.5em;
  padding: 1em 2em;
  font-size: 0.88235rem;
  background-color: #f2f2f2;
}

.news_tags a {
  display: inline-block;
  margin: .25em .75em;
  padding: .25em .5em;
  color: #222222;
}

.news_tags a.active {
  color: #0099cc;
  font-weight: bold;
  text-decoration: none;
}

.news_list {
  margin-left: 0;
  list-style: none;
}

.news_list li + li {
  margin-top: 1em;
}

.news_list a {
  display: block;
  padding: .5em 0 1em;
  color: #222222;
  text-decoration: none;
}

.news_list a::after {
  display: none;
}

.news_list a.new .title::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_new.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.news_list a[target="_blank"] .title span::after, .news_list a[href$=".doc"] .title span::after, .news_list a[href$=".docx"] .title span::after, .news_list a[href$=".xls"] .title span::after, .news_list a[href$=".xlsx"] .title span::after, .news_list a[href$=".pdf"] .title span::after, .news_list a[href^="https://www.youtube.com/"] .title span::after, .news_list a[href^="https://youtu.be/"] .title span::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  width: 30px;
  height: 30px;
  background: transparent no-repeat center center / contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.news_list a[target="_blank"] .title span::after {
  background-image: url(image/icon_window.svg);
}

.news_list a[href$=".doc"] .title span::after, .news_list a[href$=".docx"] .title span::after {
  background-image: url(image/icon_word.svg);
}

.news_list a[href$=".xls"] .title span::after, .news_list a[href$=".xlsx"] .title span::after {
  background-image: url(image/icon_excel.svg);
}

.news_list a[href$=".pdf"] .title span::after {
  background-image: url(image/icon_pdf.svg);
}

.news_list a[href^="https://www.youtube.com/"] .title span::after, .news_list a[href^="https://youtu.be/"] .title span::after {
  background-image: url(image/icon_youtube.svg);
}

.news_list span {
  display: inline-block;
  vertical-align: middle;
}

.news_list .category,
.news_list .date {
  font-size: 0.82353rem;
  text-align: center;
}

.news_list .category {
  padding-top: .25em;
  width: 10em;
  line-height: 1.4;
  text-align: center;
  border: 1px solid #333;
  -webkit-transform: translateY(-0.125em);
  transform: translateY(-0.125em);
}

.news_list .date {
  width: 8em;
}

.news_list .title {
  position: relative;
  display: block;
  text-decoration: underline;
}

.news_list .title span {
  display: inline;
}

.case_tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 1.5em;
  padding: 1em 2em;
  font-size: 0.88235rem;
  background-color: #f2f2f2;
}

.case_tags a {
  display: inline-block;
  margin: .25em .75em;
  padding: .25em .5em;
  color: #222222;
}

.case_tags a.active {
  color: #0099cc;
  font-weight: bold;
  text-decoration: none;
}

.case_list a {
  overflow: hidden;
  position: relative;
  display: block;
  color: #222222;
  text-decoration: none;
  -webkit-box-shadow: 0 0 5px 5px rgba(51, 51, 51, 0.1);
  box-shadow: 0 0 5px 5px rgba(51, 51, 51, 0.1);
  border-radius: .5em;
}

.case_list a.new .date::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_new.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.case_list a span {
  display: block;
}

.case_list a .image {
  overflow: hidden;
  position: relative;
  padding-top: 50%;
}

.case_list a .image img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
}

.case_list a .text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1em 1.5em;
  background-color: #fff;
}

.case_list a .category,
.case_list a .date,
.case_list a .division {
  font-size: 0.82353rem;
}

.case_list a .category {
  position: absolute;
  right: 1.5em;
  top: 1em;
  padding: .25em 1.5em;
  line-height: 1.2;
  background-color: #fff;
  border-radius: 2em;
}

.case_list a .title {
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  word-wrap: normal;
  padding-top: .5em;
  width: 100%;
  text-decoration: underline;
}

.image_list {
  margin-left: 0;
  list-style: none;
}

.button_link a {
  overflow: hidden;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.5em calc(.5em + 50px) 0.5em calc(.5em + 30px);
  min-height: 60px;
  color: #fff !important;
  font-weight: bold;
  text-decoration: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: -webkit-gradient(linear, left top, right top, from(#139595), to(#0095e8));
  background: -webkit-linear-gradient(left, #139595, #0095e8);
  background: linear-gradient(90deg, #139595, #0095e8);
  border-radius: 4em;
  cursor: pointer;
  z-index: 0;
}

.button_link a::before, .button_link a::after {
  display: block;
  content: "";
  position: absolute;
}

.button_link a::before {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#16acac), to(#02a5ff));
  background: -webkit-linear-gradient(left, #16acac, #02a5ff);
  background: linear-gradient(90deg, #16acac, #02a5ff);
  opacity: 0;
  z-index: -1;
}

.button_link a::after {
  top: 50%;
  right: 20px;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  background: transparent url(image/icon_arrow_circle_white.svg) no-repeat center center/contain;
}

.button_link a[target="_blank"]::after {
  background-image: url(image/icon_window.svg);
}

.button_link a[href$=".doc"]::after, .button_link a[href$=".docx"]::after {
  background-image: url(image/icon_word.svg);
}

.button_link a[href$=".xls"]::after, .button_link a[href$=".xlsx"]::after {
  background-image: url(image/icon_excel.svg);
}

.button_link a[href$=".pdf"]::after {
  background-image: url(image/icon_pdf.svg);
}

.button_link a[href^="https://www.youtube.com/"]::after, .button_link a[href^="https://youtu.be/"]::after {
  background-image: url(image/icon_youtube.svg);
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article .tab_nav a::before,
  article .tab_nav span::before {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  article .tab_nav a::after,
  article .tab_nav span::after {
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  article .tab_nav a:hover::before,
  article .tab_nav span:hover::before {
    opacity: 1;
  }
  article .tab_nav a:hover::after,
  article .tab_nav span:hover::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  a img {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  a:hover img {
    opacity: 0.8;
  }
  .page_title {
    padding-bottom: 60px;
  }
  .page_title .inner {
    min-height: 200px;
  }
  .basic_btn::before {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .basic_btn::after {
    -webkit-transition: right 0.2s;
    transition: right 0.2s;
  }
  .basic_btn:hover::before {
    opacity: 1;
  }
  .basic_btn:hover:not([target="_blank"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".pdf"]):not([href^="https://www.youtube.com/"]):not([href^="https://youtu.be/"])::after {
    right: 15px;
  }
  .pagination {
    margin-left: 0;
    list-style: none;
  }
  .pagination a {
    -webkit-transition: color 0.2s, background-color 0.2s;
    transition: color 0.2s, background-color 0.2s;
  }
  .pagination a:hover {
    color: #fff;
    background-color: #222222;
  }
  .pagination .prev a:hover,
  .pagination .next a:hover {
    background-image: url(image/icon_arrow_white.svg);
  }
  .news_list a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .news_list a.new .title {
    padding-right: calc(25px + .5em);
  }
  .news_list a.new .title::after {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -12px;
  }
  .news_list a[target="_blank"] .title, .news_list a[href$=".doc"] .title, .news_list a[href$=".docx"] .title, .news_list a[href$=".xls"] .title, .news_list a[href$=".xlsx"] .title, .news_list a[href$=".pdf"] .title, .news_list a[href^="https://www.youtube.com/"] .title, .news_list a[href^="https://youtu.be/"] .title {
    padding-right: 30px;
  }
  .news_list a[target="_blank"] .title span::after, .news_list a[href$=".doc"] .title span::after, .news_list a[href$=".docx"] .title span::after, .news_list a[href$=".xls"] .title span::after, .news_list a[href$=".xlsx"] .title span::after, .news_list a[href$=".pdf"] .title span::after, .news_list a[href^="https://www.youtube.com/"] .title span::after, .news_list a[href^="https://youtu.be/"] .title span::after {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -15px;
  }
  .news_list a[target="_blank"].new .title, .news_list a[href$=".doc"].new .title, .news_list a[href$=".docx"].new .title, .news_list a[href$=".xls"].new .title, .news_list a[href$=".xlsx"].new .title, .news_list a[href$=".pdf"].new .title, .news_list a[href^="https://www.youtube.com/"].new .title, .news_list a[href^="https://youtu.be/"].new .title {
    padding-right: calc(30px + 25px + .5em);
  }
  .news_list a[target="_blank"].new .title span::after, .news_list a[href$=".doc"].new .title span::after, .news_list a[href$=".docx"].new .title span::after, .news_list a[href$=".xls"].new .title span::after, .news_list a[href$=".xlsx"].new .title span::after, .news_list a[href$=".pdf"].new .title span::after, .news_list a[href^="https://www.youtube.com/"].new .title span::after, .news_list a[href^="https://youtu.be/"].new .title span::after {
    right: calc(25px + .25em);
  }
  .news_list a:hover .title {
    text-decoration: none;
  }
  .news_list .title {
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    word-wrap: normal;
    position: relative;
    max-width: calc(100% - 15em);
  }
  .case_list a .image img {
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  .case_list a:hover .image img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .case_list a:hover .title {
    text-decoration: none;
  }
  .image_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .image_list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: 4%;
    width: 48%;
  }
  .image_list li:nth-child(2n+1) {
    margin-left: 0;
  }
  .image_list li:nth-child(n+3) {
    margin-top: 4%;
  }
  .image_list .text {
    padding-left: 1em;
  }
  .button_link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .button_link a::before {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .button_link a::after {
    -webkit-transition: right 0.2s;
    transition: right 0.2s;
  }
  .button_link a:hover::before {
    opacity: 1;
  }
  .button_link a:hover:not([target="_blank"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".pdf"]):not([href^="https://www.youtube.com/"]):not([href^="https://youtu.be/"])::after {
    right: 15px;
  }
}

.google_map {
  position: relative;
  overflow: hidden;
  height: 400px;
}

.google_map iframe {
  position: absolute;
  left: 0;
  top: -150px;
  width: 100%;
  height: 700px;
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article section {
    padding: 5em 0;
  }
  .button_link a {
    margin-left: 5%;
    width: 30%;
  }
  .button_link a:nth-child(3n+1) {
    margin-left: 0;
  }
  .button_link a:nth-child(n+4) {
    margin-top: 5%;
  }
}

/* Tablet
---------------------------------------------------------- */
@media only screen and (min-width: 740px) and (max-width: 959px) {
  article section {
    padding: 4em 0;
  }
  .button_link a {
    margin-left: 4%;
    width: 48%;
  }
  .button_link a:nth-child(2n+1) {
    margin-left: 0;
  }
  .button_link a:nth-child(n+3) {
    margin-top: 4%;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  .news_list li {
    border-bottom: 1px solid #999;
  }
  .news_list a .title {
    margin-top: .5em;
  }
  .image_list li {
    text-align: center;
  }
  .image_list li + li {
    margin-top: 1.5em;
  }
  .image_list .image {
    margin-bottom: .5em;
  }
  .button_link a + a {
    margin-top: 1em;
  }
}

/* Desktop Ex
---------------------------------------------------------- */
@media all and (min-width: 1360px), print {
  table {
    max-width: 1300px;
  }
}

/* Tablet + Phone Ex
---------------------------------------------------------- */
@media only screen and (max-width: 1359px) {
  table {
    width: 100% !important;
  }
}

/* ---------------------------------------------------------------- */
/*   7. Header
/* ---------------------------------------------------------------- */
body.contact #header .global_menu .frame > .contact > a {
  background-color: #03a5ff;
}

#header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100px;
  background-color: #fff;
  -webkit-box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1);
  z-index: 20;
}

#header .inner {
  position: static;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100px;
}

#header .logo {
  width: 280px;
}

#header .logo a {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  padding-top: 21.05263%;
  background: transparent url(image/h1_logo.svg) no-repeat center center/contain;
}

#header .global_menu a,
#header .global_menu span {
  display: block;
  color: #222222;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
}

#header .global_menu .nav .support > span {
  position: relative;
}

#header .global_menu .nav .support > span::after {
  display: inline-block;
  content: "";
  vertical-align: middle;
  margin-left: .5em;
  border-style: solid;
  border-width: 10px 6px 0 6px;
  border-color: #a3a3a3 transparent transparent transparent;
}

#header .global_menu .nav .support .tab_nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#header .global_menu .nav .support .tab_nav a {
  position: relative;
  display: block;
  margin: 0 .5em;
  padding: 0.5em calc(1.75em + 16px) 0.5em 1.5em;
  color: #fff;
  background-color: #848484;
  border-radius: 2em;
}

#header .global_menu .nav .support .tab_nav a::after {
  position: absolute;
  top: 50%;
  right: .75em;
  display: block;
  content: "";
  width: 25px;
  height: 25px;
  margin-top: -12px;
  background: transparent url(image/icon_arrow_circle_white.svg) no-repeat center center/contain;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

#header .global_menu .nav .support .tab_nav a.active {
  background-color: #0099cc !important;
}

#header .global_menu .nav .support .tab_nav a.active::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

#header .global_menu .nav .support .tab_content > div {
  display: none;
}

#header .global_menu .nav .support .tab_content > div.active {
  display: block;
}

#header .global_menu .search {
  margin: 0 auto 2em;
  max-width: 400px;
}

#header .global_menu .search table,
#header .global_menu .search td {
  margin: 0;
  border: none;
  background-color: transparent;
}

#header .global_menu .search .gsc-search-box {
  position: relative;
}

#header .global_menu .search .gsc-search-box td {
  padding: 0;
}

#header .global_menu .search .gsc-control-cse {
  padding: 0;
  background-color: transparent;
  border: none;
}

#header .global_menu .search .gsc-input-box {
  padding: .25em 3em .25em 1.5em;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 2em;
}

#header .global_menu .search .gsc-input {
  font-size: 16px;
  background-color: transparent !important;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

#header .global_menu .search .gsst_b .gsst_a {
  position: relative;
  width: 1em;
}

#header .global_menu .search .gsst_b .gsst_a .gscb_a {
  position: absolute;
  left: 5px;
  top: -14px;
}

#header .global_menu .search .gsc-search-button-v2 {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -10px;
  padding: 6px;
  background: transparent url(image/icon_header_search.svg) no-repeat center center;
  background-size: contain;
  background-color: transparent;
  border: none;
  outline: none;
  cursor: pointer;
  z-index: 1;
}

#header .global_menu .search .gsc-search-button-v2 svg {
  display: none;
}

#header .global_menu .tel {
  width: 260px;
  text-align: center;
}

#header .global_menu .tel .number {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 220px;
  height: 30px;
  margin: 0 auto;
  background: transparent url(image/txt_tel.svg) no-repeat center center/contain;
}

#header .global_menu .tel .time {
  color: #222222;
  font-size: 13px;
}

#header .global_menu .link a {
  display: inline-block;
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 1340px), print {
  body.index #header .global_menu .frame > .nav > .index > a::before,
  body.index #header .global_menu .frame > .nav > .index > span::before {
    left: 0;
    width: 100%;
  }
  body.news #header .global_menu .frame > .nav > .news > a::before,
  body.news #header .global_menu .frame > .nav > .news > span::before {
    left: 0;
    width: 100%;
  }
  body.about #header .global_menu .frame > .nav > .about > a::before,
  body.about #header .global_menu .frame > .nav > .about > span::before {
    left: 0;
    width: 100%;
  }
  body.support #header .global_menu .frame > .nav > .support > a::before,
  body.support #header .global_menu .frame > .nav > .support > span::before {
    left: 0;
    width: 100%;
  }
  body.case #header .global_menu .frame > .nav > .case > a::before,
  body.case #header .global_menu .frame > .nav > .case > span::before {
    left: 0;
    width: 100%;
  }
  body.support_purpose_subsidy #header .global_menu .frame > .nav > .support .purpose .subsidy > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_market #header .global_menu .frame > .nav > .support .purpose .market > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_product #header .global_menu .frame > .nav > .support .purpose .product > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_productivity #header .global_menu .frame > .nav > .support .purpose .productivity > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_management #header .global_menu .frame > .nav > .support .purpose .management > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_it #header .global_menu .frame > .nav > .support .purpose .it > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_trademark #header .global_menu .frame > .nav > .support .purpose .trademark > a {
    background-color: #e4f8fe;
  }
  body.support_purpose_facility #header .global_menu .frame > .nav > .support .purpose .facility > a {
    background-color: #e4f8fe;
  }
  body.support_organization_startup #header .global_menu .frame > .nav > .support .organization .startup > a {
    background-color: #d9f4dc;
  }
  body.support_organization_development #header .global_menu .frame > .nav > .support .organization .development > a {
    background-color: #d8f3e6;
  }
  body.support_organization_agribusiness #header .global_menu .frame > .nav > .support .organization .agribusiness > a {
    background-color: #d7f2f0;
  }
  body.support_organization_manufacturing #header .global_menu .frame > .nav > .support .organization .manufacturing > a {
    background-color: #e3f5fc;
  }
  body.support_organization_sales #header .global_menu .frame > .nav > .support .organization .sales > a {
    background-color: #e3effc;
  }
  body.support_organization_it #header .global_menu .frame > .nav > .support .organization .it > a {
    background-color: #e8eaf9;
  }
  body.support_organization_intellectual #header .global_menu .frame > .nav > .support .organization .intellectual > a {
    background-color: #f5e9fc;
  }
  body.support_organization_welfare #header .global_menu .frame > .nav > .support .organization .welfare > a {
    background-color: #fff2f7;
  }
  body.support_training #header .global_menu .frame > .nav > .support .rental .training > a {
    background-color: #f2f2f2;
  }
  body.support_development #header .global_menu .frame > .nav > .support .rental .development > a {
    background-color: #f2f2f2;
  }
  body.support_book #header .global_menu .frame > .nav > .support .rental .book > a {
    background-color: #f2f2f2;
  }
  #header {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    border-bottom: 1px solid #999;
  }
  #header .inner {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    max-width: 1540px;
  }
  #header .logo {
    margin-bottom: 1em;
    width: 360px;
  }
  #header .logo a {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  #header .logo a:hover {
    opacity: 0.8;
  }
  #header .menu,
  #header .close,
  #header ul.link {
    display: none;
  }
  #header .global_menu {
    width: calc(100% - 360px);
  }
  #header .global_menu .frame {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  #header .global_menu .nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: .5em;
    width: calc(100% - 260px - 200px);
  }
  #header .global_menu .nav > li > a,
  #header .global_menu .nav > li > span {
    position: relative;
    padding: 1.5em 0 2em;
  }
  #header .global_menu .nav > li > a::before,
  #header .global_menu .nav > li > span::before {
    position: absolute;
    left: 50%;
    bottom: 0;
    display: block;
    content: "";
    margin: 0 auto;
    width: 0;
    height: 5px;
    background-color: #0099cc;
    -webkit-transition: left 0.2s, width 0.2s;
    transition: left 0.2s, width 0.2s;
  }
  #header .global_menu .nav > li > a:hover::before,
  #header .global_menu .nav > li > span:hover::before {
    left: 0;
    width: 100%;
  }
  #header .global_menu .nav .support:hover > span::before {
    left: 0;
    width: 100%;
  }
  #header .global_menu .nav .support:hover .sub {
    padding: 3em 0;
    height: 500px;
    -webkit-box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1);
  }
  #header .global_menu .nav .support .sub {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 100px;
    width: 100%;
    height: 0;
    background-color: #f2f2f2;
    -webkit-transition: padding 0.2s, height 0.2s;
    transition: padding 0.2s, height 0.2s;
  }
  #header .global_menu .nav .support .tab_nav a {
    margin: 0 3em;
    padding: 0.75em calc(4.75em + 16px) 0.75em 4.5em;
  }
  #header .global_menu .nav .support .tab_nav a::after {
    right: 1.25em;
  }
  #header .global_menu .nav .support .tab_nav a:hover {
    background-color: #428fa8;
  }
  #header .global_menu .nav .support .tab_nav a:hover::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  #header .global_menu .nav .support .support_list,
  #header .global_menu .nav .support .rental {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1000px;
  }
  #header .global_menu .nav .support .support_list a,
  #header .global_menu .nav .support .rental a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1em;
    height: 70px;
    color: #222222;
    font-size: 0.88235rem;
    font-weight: bold;
    text-decoration: none;
    line-height: 1.4;
    background-color: #fff;
    border-radius: .5em;
    -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
    box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  #header .global_menu .nav .support .tab_content {
    padding: 2em 0;
  }
  #header .global_menu .nav .support .support_list li {
    margin-left: 2%;
    width: 23.5%;
  }
  #header .global_menu .nav .support .support_list li:nth-child(4n+1) {
    margin-left: 0;
  }
  #header .global_menu .nav .support .support_list li:nth-child(n+5) {
    margin-top: 2%;
  }
  #header .global_menu .nav .support .support_list a::before {
    display: block;
    content: "";
    margin-right: 1em;
    width: 50px;
    height: 50px;
    background: transparent no-repeat center center / contain;
  }
  #header .global_menu .nav .support .purpose .subsidy a::before {
    background-image: url(image/icon_support_purpose_subsidy.svg);
  }
  #header .global_menu .nav .support .purpose .subsidy a::after {
    background-image: url(image/icon_support_purpose_subsidy_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .subsidy a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .market a::before {
    background-image: url(image/icon_support_purpose_market.svg);
  }
  #header .global_menu .nav .support .purpose .market a::after {
    background-image: url(image/icon_support_purpose_market_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .market a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .product a::before {
    background-image: url(image/icon_support_purpose_product.svg);
  }
  #header .global_menu .nav .support .purpose .product a::after {
    background-image: url(image/icon_support_purpose_product_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .product a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .productivity a::before {
    background-image: url(image/icon_support_purpose_productivity.svg);
  }
  #header .global_menu .nav .support .purpose .productivity a::after {
    background-image: url(image/icon_support_purpose_productivity_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .productivity a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .management a::before {
    background-image: url(image/icon_support_purpose_management.svg);
  }
  #header .global_menu .nav .support .purpose .management a::after {
    background-image: url(image/icon_support_purpose_management_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .management a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .it a::before {
    background-image: url(image/icon_support_purpose_it.svg);
  }
  #header .global_menu .nav .support .purpose .it a::after {
    background-image: url(image/icon_support_purpose_it_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .it a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .trademark a::before {
    background-image: url(image/icon_support_purpose_trademark.svg);
  }
  #header .global_menu .nav .support .purpose .trademark a::after {
    background-image: url(image/icon_support_purpose_trademark_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .trademark a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .purpose .facility a::before {
    background-image: url(image/icon_support_purpose_facility.svg);
  }
  #header .global_menu .nav .support .purpose .facility a::after {
    background-image: url(image/icon_support_purpose_facility_arrow.svg);
  }
  #header .global_menu .nav .support .purpose .facility a:hover {
    background-color: #e4f8fe;
  }
  #header .global_menu .nav .support .organization .startup a::before {
    background-image: url(image/icon_support_organization_startup.svg);
  }
  #header .global_menu .nav .support .organization .startup a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .startup a:hover {
    background-color: #d9f4dc;
  }
  #header .global_menu .nav .support .organization .development a::before {
    background-image: url(image/icon_support_organization_development.svg);
  }
  #header .global_menu .nav .support .organization .development a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .development a:hover {
    background-color: #d8f3e6;
  }
  #header .global_menu .nav .support .organization .agribusiness a::before {
    background-image: url(image/icon_support_organization_agribusiness.svg);
  }
  #header .global_menu .nav .support .organization .agribusiness a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .agribusiness a:hover {
    background-color: #d7f2f0;
  }
  #header .global_menu .nav .support .organization .manufacturing a::before {
    background-image: url(image/icon_support_organization_manufacturing.svg);
  }
  #header .global_menu .nav .support .organization .manufacturing a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .manufacturing a:hover {
    background-color: #e3f5fc;
  }
  #header .global_menu .nav .support .organization .sales a::before {
    background-image: url(image/icon_support_organization_sales.svg);
  }
  #header .global_menu .nav .support .organization .sales a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .sales a:hover {
    background-color: #e3effc;
  }
  #header .global_menu .nav .support .organization .it a::before {
    background-image: url(image/icon_support_organization_it.svg);
  }
  #header .global_menu .nav .support .organization .it a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .it a:hover {
    background-color: #e8eaf9;
  }
  #header .global_menu .nav .support .organization .intellectual a::before {
    background-image: url(image/icon_support_organization_intellectual.svg);
  }
  #header .global_menu .nav .support .organization .intellectual a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .intellectual a:hover {
    background-color: #f5e9fc;
  }
  #header .global_menu .nav .support .organization .welfare a::before {
    background-image: url(image/icon_support_organization_welfare.svg);
  }
  #header .global_menu .nav .support .organization .welfare a::after {
    background-image: url(image/icon_support_default_arrow.svg);
  }
  #header .global_menu .nav .support .organization .welfare a:hover {
    background-color: #fff2f7;
  }
  #header .global_menu .nav .support .rental {
    padding-top: 2em;
    border-top: 1px solid #333;
  }
  #header .global_menu .nav .support .rental li {
    margin-left: 2%;
    width: 32%;
  }
  #header .global_menu .nav .support .rental li:nth-child(3n+1) {
    margin-left: 0;
  }
  #header .global_menu .nav .support .rental li:nth-child(n+4) {
    margin-top: 2%;
  }
  #header .global_menu .nav .support .rental a {
    padding: 1em 1.5em;
  }
  #header .global_menu .nav .support .rental a::after {
    position: absolute;
    right: 1.5em;
    top: 50%;
    display: block;
    content: "";
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: transparent url(image/icon_support_default_arrow.svg) no-repeat center center/contain;
    -webkit-transition: right 0.2s;
    transition: right 0.2s;
  }
  #header .global_menu .nav .support .rental a:hover {
    background-color: #f2f2f2;
  }
  #header .global_menu .nav .support .rental a:hover::after {
    right: 1em;
  }
  #header .global_menu .tel,
  #header .global_menu .contact,
  #header .global_menu .search {
    margin-bottom: 1em;
  }
  #header .global_menu .search .gsc-input-box {
    background-color: #f2f2f2;
  }
  #header .global_menu .tel {
    width: 250px;
  }
  #header .global_menu .contact {
    margin-right: 10px;
  }
  #header .global_menu .contact a {
    display: block;
    overflow: hidden;
    color: transparent;
    text-decoration: none;
    text-indent: 110%;
    white-space: nowrap;
    font-size: 0;
    width: 45px;
    height: 45px;
    background: #0095e8 url(image/icon_mail.svg) no-repeat center center/30px;
    border-radius: 50%;
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  #header .global_menu .contact a:hover {
    background-color: #03a5ff;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 1340px) {
  body.index #header .global_menu .frame > .nav > .index > a,
  body.index #header .global_menu .frame > .nav > .index > span {
    color: #0095e8;
  }
  body.news #header .global_menu .frame > .nav > .news > a,
  body.news #header .global_menu .frame > .nav > .news > span {
    color: #0095e8;
  }
  body.about #header .global_menu .frame > .nav > .about > a,
  body.about #header .global_menu .frame > .nav > .about > span {
    color: #0095e8;
  }
  body.support #header .global_menu .frame > .nav > .support > a,
  body.support #header .global_menu .frame > .nav > .support > span {
    color: #0095e8;
  }
  body.case #header .global_menu .frame > .nav > .case > a,
  body.case #header .global_menu .frame > .nav > .case > span {
    color: #0095e8;
  }
  body.support_purpose_subsidy #header .global_menu .frame > .nav > .support .purpose .subsidy > a,
  body.support_purpose_subsidy #header .global_menu .frame > .nav > .support .purpose .subsidy span {
    color: #0095e8;
  }
  body.support_purpose_market #header .global_menu .frame > .nav > .support .purpose .market > a,
  body.support_purpose_market #header .global_menu .frame > .nav > .support .purpose .market span {
    color: #0095e8;
  }
  body.support_purpose_product #header .global_menu .frame > .nav > .support .purpose .product > a,
  body.support_purpose_product #header .global_menu .frame > .nav > .support .purpose .product span {
    color: #0095e8;
  }
  body.support_purpose_productivity #header .global_menu .frame > .nav > .support .purpose .productivity > a,
  body.support_purpose_productivity #header .global_menu .frame > .nav > .support .purpose .productivity span {
    color: #0095e8;
  }
  body.support_purpose_management #header .global_menu .frame > .nav > .support .purpose .management > a,
  body.support_purpose_management #header .global_menu .frame > .nav > .support .purpose .management span {
    color: #0095e8;
  }
  body.support_purpose_it #header .global_menu .frame > .nav > .support .purpose .it > a,
  body.support_purpose_it #header .global_menu .frame > .nav > .support .purpose .it span {
    color: #0095e8;
  }
  body.support_purpose_trademark #header .global_menu .frame > .nav > .support .purpose .trademark > a,
  body.support_purpose_trademark #header .global_menu .frame > .nav > .support .purpose .trademark span {
    color: #0095e8;
  }
  body.support_purpose_facility #header .global_menu .frame > .nav > .support .purpose .facility > a,
  body.support_purpose_facility #header .global_menu .frame > .nav > .support .purpose .facility span {
    color: #0095e8;
  }
  body.support_organization_startup #header .global_menu .frame > .nav > .support .organization .startup > a,
  body.support_organization_startup #header .global_menu .frame > .nav > .support .organization .startup span {
    color: #0095e8;
  }
  body.support_organization_development #header .global_menu .frame > .nav > .support .organization .development > a,
  body.support_organization_development #header .global_menu .frame > .nav > .support .organization .development span {
    color: #0095e8;
  }
  body.support_organization_agribusiness #header .global_menu .frame > .nav > .support .organization .agribusiness > a,
  body.support_organization_agribusiness #header .global_menu .frame > .nav > .support .organization .agribusiness span {
    color: #0095e8;
  }
  body.support_organization_manufacturing #header .global_menu .frame > .nav > .support .organization .manufacturing > a,
  body.support_organization_manufacturing #header .global_menu .frame > .nav > .support .organization .manufacturing span {
    color: #0095e8;
  }
  body.support_organization_sales #header .global_menu .frame > .nav > .support .organization .sales > a,
  body.support_organization_sales #header .global_menu .frame > .nav > .support .organization .sales span {
    color: #0095e8;
  }
  body.support_organization_it #header .global_menu .frame > .nav > .support .organization .it > a,
  body.support_organization_it #header .global_menu .frame > .nav > .support .organization .it span {
    color: #0095e8;
  }
  body.support_organization_intellectual #header .global_menu .frame > .nav > .support .organization .intellectual > a,
  body.support_organization_intellectual #header .global_menu .frame > .nav > .support .organization .intellectual span {
    color: #0095e8;
  }
  body.support_organization_welfare #header .global_menu .frame > .nav > .support .organization .welfare > a,
  body.support_organization_welfare #header .global_menu .frame > .nav > .support .organization .welfare span {
    color: #0095e8;
  }
  body.support_training #header .global_menu .frame > .nav > .support .rental .training > a,
  body.support_training #header .global_menu .frame > .nav > .support .rental .training span {
    color: #0095e8;
  }
  body.support_development #header .global_menu .frame > .nav > .support .rental .development > a,
  body.support_development #header .global_menu .frame > .nav > .support .rental .development span {
    color: #0095e8;
  }
  body.support_book #header .global_menu .frame > .nav > .support .rental .book > a,
  body.support_book #header .global_menu .frame > .nav > .support .rental .book span {
    color: #0095e8;
  }
  body.access #header .global_menu .frame > .link > .access > a {
    color: #0095e8;
  }
  body.link #header .global_menu .frame > .link > .link > a {
    color: #0095e8;
  }
  body.privacy #header .global_menu .frame > .link > .privacy > a {
    color: #0095e8;
  }
  body.policy #header .global_menu .frame > .link > .policy > a {
    color: #0095e8;
  }
  body.menu_opened {
    overflow: hidden;
  }
  body.menu_opened #header .global_menu {
    opacity: 1;
    pointer-events: auto;
  }
  #header .menu {
    display: block;
    overflow: hidden;
    color: transparent;
    text-decoration: none;
    text-indent: 110%;
    white-space: nowrap;
    font-size: 0;
    width: 80px;
    height: 80px;
    position: absolute;
    right: 10px;
    top: 10px;
    background: transparent url(image/btn_menu.svg) no-repeat center center/contain;
    cursor: pointer;
  }
  #header .close {
    display: block;
    overflow: hidden;
    color: transparent;
    text-decoration: none;
    text-indent: 110%;
    white-space: nowrap;
    font-size: 0;
    width: 60px;
    height: 60px;
    position: absolute;
    right: 50px;
    top: 50px;
    background: transparent url(image/btn_close.svg) no-repeat center center/contain;
    cursor: pointer;
  }
  #header .global_menu {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(51, 51, 51, 0.8);
    padding: 40px 40px 100px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    pointer-events: none;
    z-index: 30;
  }
  #header .global_menu .frame {
    padding: 70px 30px 20px;
    background-color: #f2f2f2;
    border-radius: 2em;
  }
  #header .global_menu .frame::after {
    display: block;
    content: "";
    padding-top: 11.76471%;
    background: transparent url(image/img_menu_footer.svg) no-repeat center center/contain;
  }
  #header .global_menu .nav {
    margin-bottom: 2em;
  }
  #header .global_menu .nav > li {
    border-bottom: 1px solid #999;
  }
  #header .global_menu .nav > li > a,
  #header .global_menu .nav > li > span {
    padding: 1em 0;
  }
  #header .global_menu .nav .support.opened > span::after {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
  }
  #header .global_menu .nav .support.opened .rental {
    margin-bottom: 2.5em;
  }
  #header .global_menu .nav .support > span::after {
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -4px;
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
  }
  #header .global_menu .nav .support .sub {
    overflow: hidden;
    height: 0;
    -webkit-transition: height 0.4s;
    transition: height 0.4s;
  }
  #header .global_menu .nav .support .support_list,
  #header .global_menu .nav .support .rental {
    margin-top: 1em;
    padding: 1em 2em;
    background-color: #fff;
    border-radius: .5em;
  }
  #header .global_menu .nav .support .support_list li,
  #header .global_menu .nav .support .rental li {
    padding: .25em 0;
  }
  #header .global_menu .nav .support .support_list a,
  #header .global_menu .nav .support .rental a {
    padding: .5em 0;
  }
  #header .global_menu .nav .support .support_list a br,
  #header .global_menu .nav .support .rental a br {
    display: none;
  }
  #header .global_menu .nav .support .support_list a span,
  #header .global_menu .nav .support .rental a span {
    display: inline;
  }
  #header .global_menu .nav .support .support_list a::before,
  #header .global_menu .nav .support .rental a::before {
    margin-right: .5em;
    content: "●";
  }
  #header .global_menu .tel {
    margin: 0 auto 2em;
  }
  #header .global_menu .tel a {
    padding: .75em 0 .5em;
    height: 70px;
    background-color: #fff;
    border-radius: 3em;
  }
  #header .global_menu .contact {
    margin: 0 auto 3em;
    width: 260px;
    text-align: center;
  }
  #header .global_menu .contact a {
    padding: 1.25em 0;
    height: 70px;
    color: #fff;
    font-size: 17px;
    background-color: #0095e8;
    border-radius: 3em;
  }
  #header .global_menu .contact a::before {
    display: inline-block;
    content: "";
    vertical-align: middle;
    width: 30px;
    height: 30px;
    margin-right: .75em;
    background: transparent url(image/icon_mail.svg) no-repeat center center/contain;
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  #header .global_menu ul.link {
    margin-bottom: 3em;
    text-align: center;
  }
  #header .global_menu ul.link li {
    padding: .5em 0;
  }
  #header .global_menu ul.link li a {
    padding: .25em 0;
  }
}

/* ---------------------------------------------------------------- */
/*   8. Footer
/* ---------------------------------------------------------------- */
body.report #footer .link > .report a {
  color: #0095e8;
  font-weight: bold;
  text-decoration: none;
}

body.access #footer .link > .access a {
  color: #0095e8;
  font-weight: bold;
  text-decoration: none;
}

body.link #footer .link > .link a {
  color: #0095e8;
  font-weight: bold;
  text-decoration: none;
}

body.privacy #footer .link > .privacy a {
  color: #0095e8;
  font-weight: bold;
  text-decoration: none;
}

body.policy #footer .link > .policy a {
  color: #0095e8;
  font-weight: bold;
  text-decoration: none;
}

#footer .content {
  position: relative;
}

#footer .content::before {
  position: absolute;
  top: 7em;
  left: 0;
  display: block;
  content: "";
  width: 100%;
  height: calc(100% - 1em);
  background-color: #f2f2f2;
  z-index: -1;
}

#footer .question .title {
  position: relative;
  padding: 1em;
  color: #eb9d14;
  font-weight: bold;
  text-align: center;
  background-color: #353535;
  border-top-left-radius: .5em;
  border-top-right-radius: .5em;
}

#footer .question .title::before {
  position: absolute;
  display: inline-block;
  content: "";
  vertical-align: middle;
  width: 100px;
  height: 100px;
  background: transparent url(image/img_question.svg) no-repeat center center/contain;
}

#footer .question .title span::before {
  display: inline-block;
  content: "";
  vertical-align: middle;
  width: 30px;
  height: 30px;
  background: transparent url(image/icon_question.svg) no-repeat center center/contain;
}

#footer .question .content {
  background-color: #222222;
  border-bottom-left-radius: .5em;
  border-bottom-right-radius: .5em;
}

#footer .question .content .guide {
  padding-top: 2.5em;
  color: #eb9d14;
  font-weight: bold;
  text-align: center;
}

#footer .question .content ul {
  padding: 4em 1em 2em;
}

#footer .question .content li {
  margin-bottom: 1em;
}

#footer .question .content li:last-child {
  margin-bottom: 0;
}

#footer .question .content a {
  color: #fff;
  text-decoration: none;
}

#footer .question .content a::after {
  display: inline-block;
  content: "";
  vertical-align: middle;
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_arrow_circle_white.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

#footer .banner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 3em;
  padding: 3em 0;
  border-bottom: 1px solid #999;
}

#footer .banner a {
  display: block;
  margin: 0 auto;
  max-width: 220px;
}

#footer .banner a::after {
  display: none;
}

#footer .information {
  text-align: center;
}

#footer .information .logo {
  margin: 0 auto 1em;
  width: 340px;
  max-width: 80%;
}

#footer .information .logo a {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  padding-top: 47.05882%;
  background: transparent url(image/txt_footer_logo.svg) no-repeat center center/contain;
}

#footer .information address span {
  display: inline-block;
  padding: 0 .2em;
}

#footer .information .tel_fax span {
  display: block;
  padding: 0 .2em;
}

#footer ul.link {
  padding: 2em 0;
  text-align: center;
}

#footer ul.link a {
  color: #222222;
}

#footer .copyright {
  padding: 1em 0;
  color: #fff;
  font-size: 0.82353rem;
  text-align: center;
  background-color: #848484;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  #footer .content::before {
    top: 4em;
  }
  #footer .question .title {
    padding: 1.5em 0 .75em;
  }
  #footer .question .title::before {
    bottom: -20px;
    margin-left: -170px;
    width: 150px;
    height: 150px;
  }
  #footer .question .title span::before {
    margin-right: .5em;
  }
  #footer .question .content .guide {
    display: none;
  }
  #footer .question .content ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center;
    padding-top: 4em;
  }
  #footer .question .content a:hover {
    text-decoration: underline;
  }
  #footer .banner {
    padding: 5em 0;
  }
  #footer .information .tel_fax {
    font-size: 0.88235rem;
  }
  #footer .information .tel_fax span {
    display: inline-block;
  }
  #footer ul.link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2.5em 0 1.5em;
    font-size: 0.88235rem;
  }
  #footer ul.link li {
    position: relative;
    padding: 0 1em;
  }
  #footer ul.link li::before {
    position: absolute;
    left: 0;
    top: 50%;
    display: block;
    content: "";
    margin-top: -7px;
    width: 1px;
    height: 14px;
    background-color: #999;
  }
  #footer ul.link li:first-child::before {
    display: none;
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  #footer .question .content li {
    width: calc(1 / 3 * 100% - 1em);
  }
  #footer .question .content li:nth-child(3n+1) {
    width: calc(1 / 3 * 100% + 2em);
  }
  #footer .banner {
    padding-left: 4%;
    padding-right: 4%;
  }
  #footer .banner li {
    margin-left: 4%;
    width: 22%;
  }
  #footer .banner li:nth-child(4n+1) {
    margin-left: 0;
  }
  #footer .banner li:nth-child(n+5) {
    margin-top: 4%;
  }
}

/* Tablet
---------------------------------------------------------- */
@media only screen and (min-width: 740px) and (max-width: 959px) {
  #footer .question .content li {
    width: 50%;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 959px) {
  #footer .banner li {
    margin-left: 4%;
    width: 48%;
  }
  #footer .banner li:nth-child(2n+1) {
    margin-left: 0;
  }
  #footer .banner li:nth-child(n+3) {
    margin-top: 4%;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  #footer .question.opened .title {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  #footer .question.opened .button {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
  }
  #footer .question.opened .content {
    height: auto;
  }
  #footer .question.opened .content .guide {
    display: none;
  }
  #footer .question .title {
    padding-bottom: 2.5em;
  }
  #footer .question .title::before {
    left: 50%;
    top: -85px;
    margin-left: -50px;
  }
  #footer .question .title span::before {
    display: block;
    margin: 0 auto;
  }
  #footer .question .button {
    display: block;
    overflow: hidden;
    color: transparent;
    text-decoration: none;
    text-indent: 110%;
    white-space: nowrap;
    font-size: 0;
    position: absolute;
    left: 50%;
    display: block;
    margin: 0 auto;
    margin: -20px 0 0 -20px;
    width: 40px;
    height: 40px;
    background: transparent url(image/icon_question_arrow.svg) no-repeat center center/contain;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  #footer .question .content {
    overflow: hidden;
    height: 5.5em;
    -webkit-transition: height 0.2s;
    transition: height 0.2s;
  }
  #footer .question .content li {
    margin-left: auto;
    margin-right: auto;
    width: 20em;
    max-width: 100%;
  }
  #footer .question .content a {
    position: relative;
    display: block;
    padding-right: calc(1em + 20px);
  }
  #footer .question .content a::after {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -10px;
  }
  #footer ul.link li {
    padding: .25em 0;
  }
}

/* ---------------------------------------------------------------- */
/*   9. Index
/* ---------------------------------------------------------------- */
article.index {
  padding-bottom: 4em;
}

article.index > .main_visual {
  padding: 2em 0;
}

article.index > .main_visual #content_slider {
  display: none;
}

article.index > .main_visual #content_slider.slick-initialized {
  display: block;
}

article.index > .main_visual #content_slider .item a,
article.index > .main_visual #content_slider .item span {
  overflow: hidden;
  position: relative;
  display: block;
  padding-top: 87.69231%;
  text-decoration: none;
  border-radius: 1em;
}

article.index > .main_visual #content_slider .item a::after,
article.index > .main_visual #content_slider .item span::after {
  display: none;
}

article.index > .main_visual #content_slider .item img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
}

article.index > .main_visual #content_slider .slick-dots {
  text-align: center;
}

article.index > .main_visual .support {
  padding-top: 2em;
}

article.index > .main_visual .support .tab_nav a {
  min-height: 100%;
}

article.index > .main_visual .support .tab_content {
  padding: 2em;
  background-color: #f2f2f2;
}

article.index > .main_visual .support .tab_content a::after {
  display: none;
}

article.index > .main_visual .support .support_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
}

article.index > .main_visual .support .support_list a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 4%;
  padding: .5em;
  width: 48%;
  color: #222222;
  font-size: 0.94118rem;
  font-weight: bold;
  text-decoration: none;
  line-height: 1.4;
  background-color: #fff;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  border-radius: .5em;
}

article.index > .main_visual .support .support_list a::before {
  display: block;
  content: "";
  margin: 0 auto .5em;
  width: 40px;
  height: 40px;
  background: transparent no-repeat center center / contain;
}

article.index > .main_visual .support .support_list a:nth-child(2n+1) {
  margin-left: 0;
}

article.index > .main_visual .support .support_list a:nth-child(n+3) {
  margin-top: 4%;
}

article.index > .main_visual .support .support_list a span {
  width: calc(100% - 1em);
}

article.index > .main_visual .support .purpose a.subsidy::before {
  background-image: url(image/icon_support_purpose_subsidy.svg);
}

article.index > .main_visual .support .purpose a.subsidy::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.market::before {
  background-image: url(image/icon_support_purpose_market.svg);
}

article.index > .main_visual .support .purpose a.market::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.product::before {
  background-image: url(image/icon_support_purpose_product.svg);
}

article.index > .main_visual .support .purpose a.product::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.productivity::before {
  background-image: url(image/icon_support_purpose_productivity.svg);
}

article.index > .main_visual .support .purpose a.productivity::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.management::before {
  background-image: url(image/icon_support_purpose_management.svg);
}

article.index > .main_visual .support .purpose a.management::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.it::before {
  background-image: url(image/icon_support_purpose_it.svg);
}

article.index > .main_visual .support .purpose a.it::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.trademark::before {
  background-image: url(image/icon_support_purpose_trademark.svg);
}

article.index > .main_visual .support .purpose a.trademark::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .purpose a.facility::before {
  background-image: url(image/icon_support_purpose_facility.svg);
}

article.index > .main_visual .support .purpose a.facility::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.index > .main_visual .support .organization a.startup::before {
  background-image: url(image/icon_support_organization_startup.svg);
}

article.index > .main_visual .support .organization a.startup::after {
  background-image: url(image/icon_support_organization_startup_arrow.svg);
}

article.index > .main_visual .support .organization a.development::before {
  background-image: url(image/icon_support_organization_development.svg);
}

article.index > .main_visual .support .organization a.development::after {
  background-image: url(image/icon_support_organization_development_arrow.svg);
}

article.index > .main_visual .support .organization a.agribusiness::before {
  background-image: url(image/icon_support_organization_agribusiness.svg);
}

article.index > .main_visual .support .organization a.agribusiness::after {
  background-image: url(image/icon_support_organization_agribusiness_arrow.svg);
}

article.index > .main_visual .support .organization a.manufacturing::before {
  background-image: url(image/icon_support_organization_manufacturing.svg);
}

article.index > .main_visual .support .organization a.manufacturing::after {
  background-image: url(image/icon_support_organization_manufacturing_arrow.svg);
}

article.index > .main_visual .support .organization a.sales::before {
  background-image: url(image/icon_support_organization_sales.svg);
}

article.index > .main_visual .support .organization a.sales::after {
  background-image: url(image/icon_support_organization_sales_arrow.svg);
}

article.index > .main_visual .support .organization a.it::before {
  background-image: url(image/icon_support_organization_it.svg);
}

article.index > .main_visual .support .organization a.it::after {
  background-image: url(image/icon_support_organization_it_arrow.svg);
}

article.index > .main_visual .support .organization a.intellectual::before {
  background-image: url(image/icon_support_organization_intellectual.svg);
}

article.index > .main_visual .support .organization a.intellectual::after {
  background-image: url(image/icon_support_organization_intellectual_arrow.svg);
}

article.index > .main_visual .support .organization a.welfare::before {
  background-image: url(image/icon_support_organization_welfare.svg);
}

article.index > .main_visual .support .organization a.welfare::after {
  background-image: url(image/icon_support_organization_welfare_arrow.svg);
}

article.index > .important {
  padding-bottom: 2em;
  border-bottom: 1px solid #333;
}

article.index > .important a {
  display: block;
  padding: 1em 1.5em;
  color: #fff;
  text-decoration: none;
  background-color: #222222;
  border-radius: .75em;
}

article.index > .important a::after {
  display: none;
}

article.index > .important a.new .title::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_new.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

article.index > .important a[target="_blank"] .title span::after, article.index > .important a[href$=".doc"] .title span::after, article.index > .important a[href$=".docx"] .title span::after, article.index > .important a[href$=".xls"] .title span::after, article.index > .important a[href$=".xlsx"] .title span::after, article.index > .important a[href$=".pdf"] .title span::after, article.index > .important a[href^="https://www.youtube.com/"] .title span::after, article.index > .important a[href^="https://youtu.be/"] .title span::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  width: 30px;
  height: 30px;
  background: transparent no-repeat center center / contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

article.index > .important a[target="_blank"] .title span::after {
  background-image: url(image/icon_window.svg);
}

article.index > .important a[href$=".doc"] .title span::after, article.index > .important a[href$=".docx"] .title span::after {
  background-image: url(image/icon_word.svg);
}

article.index > .important a[href$=".xls"] .title span::after, article.index > .important a[href$=".xlsx"] .title span::after {
  background-image: url(image/icon_excel.svg);
}

article.index > .important a[href$=".pdf"] .title span::after {
  background-image: url(image/icon_pdf.svg);
}

article.index > .important a[href^="https://www.youtube.com/"] .title span::after, article.index > .important a[href^="https://youtu.be/"] .title span::after {
  background-image: url(image/icon_youtube.svg);
}

article.index > .important a span {
  display: inline-block;
  vertical-align: middle;
}

article.index > .important a .head_title {
  color: #eb9d14;
  font-weight: bold;
}

article.index > .important a .head_title::before {
  display: inline-block;
  content: "";
  vertical-align: middle;
  margin-right: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_important.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

article.index > .important a .category,
article.index > .important a .date {
  font-size: 0.82353rem;
  text-align: center;
}

article.index > .important a .category {
  padding-top: .25em;
  width: 9em;
  line-height: 1.4;
  text-align: center;
  border: 1px solid #fff;
  -webkit-transform: translateY(-0.125em);
  transform: translateY(-0.125em);
}

article.index > .important a .date {
  width: 7em;
}

article.index > .important a .title {
  text-decoration: underline;
}

article.index > .important a .title span {
  display: inline;
}

article.index > .news {
  padding-top: 4em;
}

article.index > .news .tab_content .news_content {
  display: none;
}

article.index > .news .tab_content .news_content.active {
  display: block;
}

article.index > .news .tab_content .news_list {
  padding-bottom: 2em;
}

article.index > .news .tab_content .more {
  text-align: center;
}

article.index > .report .frame {
  border-radius: .75em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
}

article.index > .report h2 {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: calc(100% - 80px);
  max-width: 380px;
}

article.index > .report h2 em,
article.index > .report h2 strong {
  display: none;
}

article.index > .report h2::before {
  display: block;
  content: "";
  padding-top: 10.52632%;
  background: url(image/h2_photo_report.svg) no-repeat center center/contain;
}

article.index > .report .more {
  position: absolute;
  right: 50px;
  top: -80px;
  z-index: 1;
}

article.index > .report .more a {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 120px;
  height: 120px;
  position: relative;
  overflow: hidden;
  display: block;
  border-radius: 50%;
}

article.index > .report .more a::before, article.index > .report .more a::after {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
}

article.index > .report .more a::before {
  top: -32.5%;
  height: 200%;
  background: -webkit-gradient(linear, left top, left bottom, from(#309e39), color-stop(50%, #309e39), color-stop(50%, #1e8422), to(#1e8422));
  background: -webkit-linear-gradient(#309e39 0%, #309e39 50%, #1e8422 50%, #1e8422 100%);
  background: linear-gradient(#309e39 0%, #309e39 50%, #1e8422 50%, #1e8422 100%);
}

article.index > .report .more a::after {
  background: url(image/btn_photo_report.svg) no-repeat center center/contain;
}

article.index > .report .content.new .date::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_new.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

article.index > .report .content .image {
  margin: 0 auto 1.5em;
  max-width: 460px;
}

article.index > .report .content .image a {
  overflow: hidden;
  position: relative;
  display: block;
  padding-top: 75%;
  border-radius: .75em;
}

article.index > .report .content .image a::after {
  display: none;
}

article.index > .report .content .image img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

article.index > .report .content .date {
  font-size: 0.94118rem;
}

article.index > .report .content .title {
  margin-bottom: 1em;
  font-size: 1.05882rem;
  font-weight: bold;
}

article.index > .report .content .excerpt {
  margin-bottom: .5em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}

article.index > .report .content .read_more a::after {
  display: none;
}

article.index > .case {
  padding: 0;
}

article.index > .case .case_list {
  display: none;
}

article.index > .case .case_list.slick-initialized {
  display: block;
}

article.index > .case .case_list .slick-prev,
article.index > .case .case_list .slick-next {
  margin-top: -60px;
}

article.index > .case .case_list .slick-prev {
  margin-left: -10px;
}

article.index > .case .case_list .slick-next {
  margin-right: -10px;
}

article.index > .case .case_list .slick-dots {
  padding-top: 2em;
}

article.index > .case .case_list a {
  margin: 1em;
  width: 100%;
  max-width: 400px;
}

article.index > .case .more {
  padding-top: 2em;
}

article.index > .case .more::after {
  display: block;
  content: "";
  margin-top: 2em;
  width: 340px;
  height: 180px;
  background: transparent url(image/img_case.svg) no-repeat center center/cover;
}

article.index > .about::before {
  display: block;
  content: "";
  height: 430px;
  background: transparent url(image/bg_about_sp.jpg) no-repeat center center/cover;
}

article.index > .about .inner {
  padding: 4em 2em 0 !important;
  max-width: calc(100% - 40px) !important;
  background-color: #fff;
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px);
}

article.index > .about .message {
  margin-bottom: 3em;
}

article.index > .about .more {
  margin-bottom: 4em;
}

article.index > .about .pamphlet .content {
  padding: 2em;
  border-radius: .5em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
}

article.index > .about .pamphlet .image {
  margin: 0 auto 2em;
  max-width: 80%;
}

article.index > .about .pamphlet .text {
  text-align: center;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.index > .main_visual .support .support_list a {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article.index > .main_visual .support .support_list a::after {
    -webkit-transition: right 0.2s;
    transition: right 0.2s;
  }
  article.index > .main_visual .support .support_list a:hover::after {
    right: 1em;
  }
  article.index > .main_visual .support .purpose a:hover {
    background-color: #e4f8fe;
  }
  article.index > .main_visual .support .organization a.startup:hover {
    background-color: #d9f4dc;
  }
  article.index > .main_visual .support .organization a.development:hover {
    background-color: #d8f3e6;
  }
  article.index > .main_visual .support .organization a.agribusiness:hover {
    background-color: #d7f2f0;
  }
  article.index > .main_visual .support .organization a.manufacturing:hover {
    background-color: #e3f5fc;
  }
  article.index > .main_visual .support .organization a.sales:hover {
    background-color: #e3effc;
  }
  article.index > .main_visual .support .organization a.it:hover {
    background-color: #e8eaf9;
  }
  article.index > .main_visual .support .organization a.intellectual:hover {
    background-color: #f5e9fc;
  }
  article.index > .main_visual .support .organization a.welfare:hover {
    background-color: #fff2f7;
  }
  article.index > .important a {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article.index > .important a::after {
    position: absolute;
    right: 2.25em;
    top: 50%;
    display: inline-block;
    vertical-align: middle;
    content: "";
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: transparent url(image/icon_arrow_white.svg) no-repeat center center/contain;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  article.index > .important a:hover {
    background-color: #3c3c3c;
  }
  article.index > .important a:hover::after {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  article.index > .important a:hover .title {
    text-decoration: none;
  }
  article.index > .important a.new .title {
    padding-right: calc(25px + .5em);
  }
  article.index > .important a.new .title::after {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -12px;
  }
  article.index > .important a[target="_blank"] .title, article.index > .important a[href$=".doc"] .title, article.index > .important a[href$=".docx"] .title, article.index > .important a[href$=".xls"] .title, article.index > .important a[href$=".xlsx"] .title, article.index > .important a[href$=".pdf"] .title, article.index > .important a[href^="https://www.youtube.com/"] .title, article.index > .important a[href^="https://youtu.be/"] .title {
    padding-right: 30px;
  }
  article.index > .important a[target="_blank"] .title span::after, article.index > .important a[href$=".doc"] .title span::after, article.index > .important a[href$=".docx"] .title span::after, article.index > .important a[href$=".xls"] .title span::after, article.index > .important a[href$=".xlsx"] .title span::after, article.index > .important a[href$=".pdf"] .title span::after, article.index > .important a[href^="https://www.youtube.com/"] .title span::after, article.index > .important a[href^="https://youtu.be/"] .title span::after {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -15px;
  }
  article.index > .important a[target="_blank"].new .title, article.index > .important a[href$=".doc"].new .title, article.index > .important a[href$=".docx"].new .title, article.index > .important a[href$=".xls"].new .title, article.index > .important a[href$=".xlsx"].new .title, article.index > .important a[href$=".pdf"].new .title, article.index > .important a[href^="https://www.youtube.com/"].new .title, article.index > .important a[href^="https://youtu.be/"].new .title {
    padding-right: calc(30px + 25px + .5em);
  }
  article.index > .important a[target="_blank"].new .title span::after, article.index > .important a[href$=".doc"].new .title span::after, article.index > .important a[href$=".docx"].new .title span::after, article.index > .important a[href$=".xls"].new .title span::after, article.index > .important a[href$=".xlsx"].new .title span::after, article.index > .important a[href$=".pdf"].new .title span::after, article.index > .important a[href^="https://www.youtube.com/"].new .title span::after, article.index > .important a[href^="https://youtu.be/"].new .title span::after {
    right: calc(25px + .25em);
  }
  article.index > .important a .category {
    margin-left: 1em;
  }
  article.index > .important a .date {
    padding: 0 .5em;
  }
  article.index > .important a .title {
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    word-wrap: normal;
    position: relative;
    max-width: calc(100% - 25em);
  }
  article.index > .news {
    padding-top: 6em;
  }
  article.index > .news .tab_nav {
    margin: 0 auto;
    padding: 0 30px;
    max-width: 1080px !important;
  }
  article.index > .news .tab_content {
    padding: 2em;
    border: 1px solid #333;
    border-radius: .5em;
  }
  article.index > .news .tab_content .news_tags {
    margin: 0 auto 1.5em;
    width: 900px;
    max-width: 90% !important;
  }
  article.index > .news .tab_content .news_list {
    margin: 0 auto;
    padding-top: .5em;
    max-width: 1020px !important;
  }
  article.index > .report .inner {
    max-width: 1140px !important;
  }
  article.index > .report h2 {
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: rotate(-90deg) translateX(-100%) translateY(120%);
    transform: rotate(-90deg) translateX(-100%) translateY(120%);
  }
  article.index > .report .content {
    margin: -20px 40px 0 60px;
    min-height: 400px;
  }
  article.index > .report .content .image a:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  article.index > .report .more {
    top: -40px;
  }
  article.index > .report .more a::before {
    -webkit-transition: top 0.2s;
    transition: top 0.2s;
  }
  article.index > .report .more a:hover::before {
    top: -100%;
  }
  article.index > .case .case_list .slick-track {
    margin: 0 1em;
  }
  article.index > .case .case_list a {
    max-width: 440px;
  }
  article.index > .about::before {
    background-image: url(image/bg_about.jpg) !important;
  }
  article.index > .about .inner {
    width: 1040px !important;
  }
  article.index > .about .message {
    margin-left: auto;
    margin-right: auto;
    max-width: 880px;
    text-align: center;
  }
}

/* Desktop Ex
---------------------------------------------------------- */
@media all and (min-width: 1340px), print {
  article.index > .case .inner {
    margin-left: 50% !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    -webkit-transform: translateX(-600px);
    transform: translateX(-600px);
  }
  article.index > .case h2 {
    text-align: left;
  }
  article.index > .case .message {
    width: 300px;
  }
  article.index > .case .case_list {
    position: absolute;
    left: 400px;
    top: 30px;
    width: 200%;
  }
  article.index > .case .case_list .slick-prev {
    left: -5px;
  }
  article.index > .case .case_list .slick-next {
    left: calc(50% + 200px - 80px);
    right: auto;
  }
  article.index > .case .more a {
    min-width: 260px;
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article.index > .main_visual {
    padding-bottom: 0;
  }
  article.index > .main_visual .contents {
    position: relative;
    margin-bottom: 30px;
  }
  article.index > .main_visual #content_slider {
    width: 50%;
  }
  article.index > .main_visual .support {
    position: absolute;
    right: 0;
    top: 0;
    padding-top: 0;
    width: 48%;
    -webkit-transform-origin: right top;
    transform-origin: right top;
  }
  article.index > .main_visual .support h2 {
    margin-bottom: 1em;
    line-height: 1.4;
  }
  article.index > .main_visual .support .tab_content {
    min-height: 420px;
  }
  article.index > .main_visual .support .support_list a {
    padding: 1em;
  }
  article.index > .main_visual .support .support_list a::before {
    margin: 0 auto;
  }
  article.index > .main_visual .support .support_list a span {
    margin-left: 1em;
    width: calc(100% - 40px - 1em);
  }
  article.index > .main_visual .support .support_list a br {
    display: none;
  }
  article.index > .report .content {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article.index > .report .content .image {
    margin-bottom: 0;
    width: calc(50% - 3em);
  }
  article.index > .report .content .text {
    width: calc(50% - 3em);
  }
  article.index > .about .more {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  article.index > .about .more a {
    margin: 0 2em;
  }
  article.index > .about .pamphlet .content {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article.index > .about .pamphlet .content .image,
  article.index > .about .pamphlet .content .text {
    width: 50%;
  }
  article.index > .about .pamphlet .content .image {
    margin-bottom: 0;
    padding: 0 2em;
  }
}

/* Tablet
---------------------------------------------------------- */
@media only screen and (min-width: 740px) and (max-width: 959px) {
  article.index > .report .content {
    margin-left: 100px;
    padding-bottom: 1.5em;
  }
  article.index > .about .pamphlet .image {
    max-width: 60%;
  }
}

/* Tablet + Phone Ex
---------------------------------------------------------- */
@media only screen and (max-width: 1340px) {
  article.index > .case .message {
    margin-bottom: 2em;
    text-align: center;
  }
  article.index > .case #case_slider {
    margin-left: -20px;
    margin-right: -20px;
  }
  article.index > .case .case_list .slick-dots {
    padding-bottom: 1em;
    text-align: center;
  }
  article.index > .case .slick-prev {
    margin-left: 0 !important;
  }
  article.index > .case .slick-next {
    margin-right: 0 !important;
  }
  article.index > .case .more {
    text-align: center;
  }
  article.index > .case .more::after {
    margin: 3em auto 0;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 959px) {
  article.index > .main_visual .tab_content {
    height: auto !important;
  }
  article.index > .main_visual #content_slider {
    margin-bottom: 1em;
  }
  article.index > .main_visual .support {
    width: 100% !important;
    -webkit-transform: scale(1) !important;
    transform: scale(1) !important;
  }
  article.index > .main_visual .support_list a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1em 1em .5em;
    height: auto;
    text-align: center;
  }
  article.index > .main_visual .support_list a::before {
    margin: 0 auto .5em;
    width: 40px;
    height: 40px;
  }
  article.index > .main_visual .support_list a::after {
    top: calc(100% - 2.25em);
  }
  article.index > .main_visual .support_list a span {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: .5em;
    width: 100%;
    min-height: 3.5em;
    border-top: 1px solid #b7b7b7;
  }
  article.index > .report .read_more {
    padding-right: .5em;
    text-align: right;
  }
  article.index > .about .more a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    width: 320px;
  }
  article.index > .about .more a + a {
    margin-top: 2em;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.index > .main_visual .contents {
    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;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  article.index > .main_visual #content_slider,
  article.index > .main_visual .support {
    width: 100%;
  }
  article.index > .main_visual .support {
    margin-bottom: 1em;
  }
  article.index > .important a .head_title,
  article.index > .important a .title {
    display: block;
  }
  article.index > .important a .head_title {
    text-align: center;
  }
  article.index > .important a .title {
    padding-top: .5em;
  }
  article.index > .news .tab_content {
    padding-top: 1em;
  }
  article.index > .report .inner {
    margin-top: 60px !important;
  }
  article.index > .report .frame {
    padding: 20px 0 60px;
  }
  article.index > .report h2 {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  article.index > .report .more {
    top: -60px;
  }
  article.index > .report .content {
    padding: 0 1.5em;
  }
  article.index > .report .read_more {
    margin-bottom: 1em;
  }
}

/* ---------------------------------------------------------------- */
/*  10. News
/* ---------------------------------------------------------------- */
body.news_detail #breadline li.active {
  max-width: calc(100% - 12em);
}

article.news > .list .tab_nav a,
article.news > .list .tab_nav span {
  max-width: 320px;
  border-radius: 3em;
}

article.news > .list .news_list {
  padding-top: 2em;
}

article.news > .detail > .inner > h3 {
  margin-left: auto;
  margin-right: auto;
  max-width: 740px;
}

article.news > .detail > .inner > .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 0 auto 2em;
  max-width: 1000px;
}

article.news > .detail > .inner > .info .category,
article.news > .detail > .inner > .info .date {
  font-size: 0.82353rem;
}

article.news > .detail > .inner > .info .category {
  padding-top: .25em;
  width: 10em;
  line-height: 1.4;
  text-align: center;
  border: 1px solid #333;
  -webkit-transform: translateY(-0.125em);
  transform: translateY(-0.125em);
}

article.news > .detail > .inner > .info .date {
  margin-left: 1.5em;
}

article.news > .detail > .inner > .content {
  padding-bottom: 2em;
}

article.news > .detail > .inner > .content::after {
  display: block;
  content: "";
  clear: both;
}

article.news > .detail > .inner > .buttons {
  margin-top: 3em;
  border-top: 1px solid #333;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.news > .list .tab_nav {
    margin: 0 auto;
    padding: 0 30px;
    max-width: 800px !important;
  }
  article.news > .list .news_tags {
    width: 900px;
    max-width: 90% !important;
  }
  article.news > .list .news_list {
    margin: 0 auto;
  }
}

/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  11. About
/* ---------------------------------------------------------------- */
article.about > .greeting .content .image {
  margin: 0 auto 2em;
  max-width: 320px;
}

article.about > .greeting .content .name {
  padding-top: 1em;
  text-align: right;
}

article.about > .greeting .content .name strong {
  font-size: 1.11765rem;
  font-weight: bold;
}

article.about > .about {
  background-color: #f2f2f2;
}

article.about > .about .support {
  margin-bottom: 1.5em;
  padding: 1em;
  background-color: #eaf7f9;
}

article.about > .about .support > .title,
article.about > .about .support > .subtitle {
  font-weight: bold;
  text-align: center;
}

article.about > .about .support > .title {
  color: #004185;
  font-size: 1.23529rem;
}

article.about > .about .support > .subtitle {
  color: #e95c80;
}

article.about > .about .support .support_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
}

article.about > .about .support .support_list > li {
  margin-left: 4%;
  margin-top: 1.5em;
  width: 48%;
}

article.about > .about .support .support_list > li:nth-child(2n+1) {
  margin-left: 0;
}

article.about > .about .support .support_list .title {
  margin-bottom: .5em;
  padding: .5em 0;
  font-weight: bold;
  text-align: center;
  background-color: #fff;
  border: 1px solid #a5cee7;
  border-radius: .5em;
}

article.about > .about .support .support_list ul li {
  font-size: 0.88235rem;
}

article.about > .about .support .support_list ul li::marker {
  color: #48ade2;
}

article.about > .about .message {
  color: #156ab1;
  font-weight: bold;
  text-align: center;
}

article.about > .organization .frame {
  padding: 2em;
  background-color: #f2f2f2;
}

article.about > .access .google_map {
  margin-bottom: 1em;
}

article.about > .financial .message {
  margin-bottom: 2em;
  text-align: center;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.about > .organization .frame {
    padding: 2em 4em;
  }
  article.about > .access .content {
    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;
  }
  article.about > .access .content .google_map {
    margin-bottom: 0;
    width: 58%;
  }
  article.about > .access .content .info {
    width: 38%;
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article.about > .greeting .content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  article.about > .greeting .content .image {
    margin: 0;
    width: 320px;
  }
  article.about > .greeting .content .text {
    width: calc(100% - 360px);
  }
  article.about > .about .cards {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  article.about > .about .cards .card {
    margin-left: 4%;
    width: 48%;
  }
  article.about > .about .cards .card:nth-child(2n+1) {
    margin-left: 0;
  }
  article.about > .about .cards .card:nth-child(n+3) {
    margin-top: 4%;
  }
  article.about > .organization .content {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article.about > .organization .content .image,
  article.about > .organization .content .text {
    width: 48%;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.about > .about .cards .card + .card {
    margin-top: 2em;
  }
}

/* ---------------------------------------------------------------- */
/*  12. Support
/* ---------------------------------------------------------------- */
body.support[class*="support_purpose"] #primary > .news, body.support[class*="support_organization"] #primary > .news {
  padding: 4em 0 2em;
}

body.support[class*="support_purpose"] #primary > .news h4, body.support[class*="support_organization"] #primary > .news h4 {
  position: relative;
  cursor: pointer;
}

body.support[class*="support_purpose"] #primary > .news h4::after, body.support[class*="support_organization"] #primary > .news h4::after {
  position: absolute;
  right: 1em;
  top: 50%;
  display: block;
  content: "";
  width: 30px;
  height: 30px;
  margin-top: -15px;
  background: transparent url(image/icon_arrow_circle.svg) no-repeat center center/contain;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

body.support[class*="support_purpose"] #primary > .news h4.opened::after, body.support[class*="support_organization"] #primary > .news h4.opened::after {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

body.support[class*="support_purpose"] #primary > .news .news_list, body.support[class*="support_organization"] #primary > .news .news_list {
  display: none;
}

article.support_index > .support .purpose a,
article.support_index > .support .organization a,
article.support_index > .support .rental a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1em;
  height: 70px;
  color: #222222;
  font-size: 0.88235rem;
  font-weight: bold;
  text-decoration: none;
  line-height: 1.4;
  background-color: #fff;
  border-radius: .5em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}

article.support_index > .support .purpose,
article.support_index > .support .organization {
  padding-top: 1em;
}

article.support_index > .support .purpose a::before,
article.support_index > .support .organization a::before {
  display: block;
  content: "";
  margin-right: 1em;
  width: 50px;
  height: 50px;
  background: transparent no-repeat center center / contain;
}

article.support_index > .support .purpose a.subsidy::before {
  background-image: url(image/icon_support_purpose_subsidy.svg);
}

article.support_index > .support .purpose a.subsidy::after {
  background-image: url(image/icon_support_purpose_subsidy_arrow.svg);
}

article.support_index > .support .purpose a.market::before {
  background-image: url(image/icon_support_purpose_market.svg);
}

article.support_index > .support .purpose a.market::after {
  background-image: url(image/icon_support_purpose_market_arrow.svg);
}

article.support_index > .support .purpose a.product::before {
  background-image: url(image/icon_support_purpose_product.svg);
}

article.support_index > .support .purpose a.product::after {
  background-image: url(image/icon_support_purpose_product_arrow.svg);
}

article.support_index > .support .purpose a.productivity::before {
  background-image: url(image/icon_support_purpose_productivity.svg);
}

article.support_index > .support .purpose a.productivity::after {
  background-image: url(image/icon_support_purpose_productivity_arrow.svg);
}

article.support_index > .support .purpose a.management::before {
  background-image: url(image/icon_support_purpose_management.svg);
}

article.support_index > .support .purpose a.management::after {
  background-image: url(image/icon_support_purpose_management_arrow.svg);
}

article.support_index > .support .purpose a.it::before {
  background-image: url(image/icon_support_purpose_it.svg);
}

article.support_index > .support .purpose a.it::after {
  background-image: url(image/icon_support_purpose_it_arrow.svg);
}

article.support_index > .support .purpose a.trademark::before {
  background-image: url(image/icon_support_purpose_trademark.svg);
}

article.support_index > .support .purpose a.trademark::after {
  background-image: url(image/icon_support_purpose_trademark_arrow.svg);
}

article.support_index > .support .purpose a.facility::before {
  background-image: url(image/icon_support_purpose_facility.svg);
}

article.support_index > .support .purpose a.facility::after {
  background-image: url(image/icon_support_purpose_facility_arrow.svg);
}

article.support_index > .support .organization {
  padding-bottom: 3em;
}

article.support_index > .support .organization a.startup::before {
  background-image: url(image/icon_support_organization_startup.svg);
}

article.support_index > .support .organization a.startup::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.development::before {
  background-image: url(image/icon_support_organization_development.svg);
}

article.support_index > .support .organization a.development::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.agribusiness::before {
  background-image: url(image/icon_support_organization_agribusiness.svg);
}

article.support_index > .support .organization a.agribusiness::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.manufacturing::before {
  background-image: url(image/icon_support_organization_manufacturing.svg);
}

article.support_index > .support .organization a.manufacturing::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.sales::before {
  background-image: url(image/icon_support_organization_sales.svg);
}

article.support_index > .support .organization a.sales::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.it::before {
  background-image: url(image/icon_support_organization_it.svg);
}

article.support_index > .support .organization a.it::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.intellectual::before {
  background-image: url(image/icon_support_organization_intellectual.svg);
}

article.support_index > .support .organization a.intellectual::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .organization a.welfare::before {
  background-image: url(image/icon_support_organization_welfare.svg);
}

article.support_index > .support .organization a.welfare::after {
  background-image: url(image/icon_support_default_arrow.svg);
}

article.support_index > .support .rental {
  padding-top: 3em;
  border-top: 1px solid #333;
}

article.support_index > .support .rental a {
  padding: 1em 1.5em;
}

article.support_index > .support .rental a::after {
  position: absolute;
  right: 1.5em;
  top: 50%;
  display: block;
  content: "";
  margin-top: -10px;
  width: 20px;
  height: 20px;
  background: transparent url(image/icon_support_default_arrow.svg) no-repeat center center/contain;
  -webkit-transition: right 0.2s;
  transition: right 0.2s;
}

article[class*="support_purpose"], article[class*="support_organization"] {
  padding-bottom: 0;
}

article[class*="support_purpose"] > .content,
article[class*="support_purpose"] > .specialist, article[class*="support_organization"] > .content,
article[class*="support_organization"] > .specialist {
  margin: 2em 0;
  background-color: #f2f2f2;
}

article[class*="support_purpose"] > .other .message, article[class*="support_organization"] > .other .message {
  margin: 0 auto;
  max-width: 1000px;
}

article[class*="support_purpose"] > .contact, article[class*="support_organization"] > .contact {
  padding-bottom: 8em;
}

article[class*="support_purpose"] > .contact .card > .title, article[class*="support_organization"] > .contact .card > .title {
  background-color: #353535;
}

article[class*="support_purpose"] > .contact .card .content, article[class*="support_organization"] > .contact .card .content {
  background-color: #f2f2f2;
}

article[class*="support_purpose"] > .contact .card .content > .tel,
article[class*="support_purpose"] > .contact .card .content > .mail, article[class*="support_organization"] > .contact .card .content > .tel,
article[class*="support_organization"] > .contact .card .content > .mail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: 0;
  padding: 1.5em 1em;
  text-align: center;
  list-style: none;
  background-color: #fff;
  border-radius: .5em;
}

article[class*="support_purpose"] > .contact .card .content > .tel li + li,
article[class*="support_purpose"] > .contact .card .content > .mail li + li, article[class*="support_organization"] > .contact .card .content > .tel li + li,
article[class*="support_organization"] > .contact .card .content > .mail li + li {
  margin-top: 2em;
}

article[class*="support_purpose"] > .contact .card .content > .tel .title,
article[class*="support_purpose"] > .contact .card .content > .mail .title, article[class*="support_organization"] > .contact .card .content > .tel .title,
article[class*="support_organization"] > .contact .card .content > .mail .title {
  font-weight: bold;
}

article[class*="support_purpose"] > .contact .card .content > .tel, article[class*="support_organization"] > .contact .card .content > .tel {
  margin-bottom: 1em;
}

article[class*="support_purpose"] > .contact .card .content > .tel .title, article[class*="support_organization"] > .contact .card .content > .tel .title {
  font-size: 1.11765rem;
}

article[class*="support_purpose"] > .contact .card .content > .tel .tel, article[class*="support_organization"] > .contact .card .content > .tel .tel {
  margin: .5em auto;
  width: 300px;
  max-width: 100%;
}

article[class*="support_purpose"] > .contact .card .content > .tel .tel a, article[class*="support_organization"] > .contact .card .content > .tel .tel a {
  color: #0099cc;
  font-size: 1.41176rem;
  font-weight: bold;
}

article[class*="support_purpose"] > .contact .card .content > .tel .tel a::before, article[class*="support_organization"] > .contact .card .content > .tel .tel a::before {
  display: inline-block;
  content: "";
  vertical-align: middle;
  width: 40px;
  height: 40px;
  margin-right: .25em;
  background: transparent url(image/icon_tel.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
}

article[class*="support_purpose"] > .contact .card .content > .mail .title, article[class*="support_organization"] > .contact .card .content > .mail .title {
  color: #0099cc;
}

article[class*="support_purpose"] > .contact .card .content > .mail .link, article[class*="support_organization"] > .contact .card .content > .mail .link {
  margin: .5em 0;
}

article[class*="support_purpose"] > .contact .card .content > .mail .link a, article[class*="support_organization"] > .contact .card .content > .mail .link a {
  font-size: 1.11765rem;
  font-weight: bold;
}

article[class*="support_purpose"] .support_list, article[class*="support_organization"] .support_list {
  margin-left: 0;
  list-style: none;
}

article[class*="support_purpose"] .support_list li, article[class*="support_organization"] .support_list li {
  margin: 1.5%;
  padding: 1em 1em 2em;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background-color: #0099cc;
  border-radius: .75em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
}

article[class*="support_purpose"] .support_list .title, article[class*="support_organization"] .support_list .title {
  margin-bottom: .5em;
  font-size: 1.23529rem;
}

article[class*="support_purpose"] .support_list .title::after, article[class*="support_organization"] .support_list .title::after {
  display: block;
  content: "";
  margin: 0 auto;
  display: block;
  margin-top: .25em;
  width: 2em;
  height: 2px;
  background-color: #fff;
}

article[class*="support_purpose"] .content_list, article[class*="support_organization"] .content_list {
  margin-left: 0;
  list-style: none;
}

article[class*="support_purpose"] .content_list > li, article[class*="support_organization"] .content_list > li {
  padding: 1.5em;
  background-color: #fff;
}

article[class*="support_purpose"] .content_list > li ul, article[class*="support_organization"] .content_list > li ul {
  list-style: none;
}

article[class*="support_purpose"] .content_list > li li, article[class*="support_organization"] .content_list > li li {
  padding: .25em 0;
}

article[class*="support_purpose"] .content_list > li li::before, article[class*="support_organization"] .content_list > li li::before {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-right: .5em;
  width: 20px;
  height: 20px;
  background: transparent url(image/icon_check.svg) no-repeat center center/contain;
}

article[class*="support_purpose"] .content_list .title, article[class*="support_organization"] .content_list .title {
  margin-bottom: .75em;
  font-size: 1.11765rem;
  font-weight: bold;
  text-align: center;
}

article[class*="support_purpose"] .step_list, article[class*="support_organization"] .step_list {
  margin-left: 0;
  list-style: none;
  counter-reset: number 0;
}

article[class*="support_purpose"] .step_list li, article[class*="support_organization"] .step_list li {
  counter-increment: number 1;
}

article[class*="support_purpose"] .step_list li + li, article[class*="support_organization"] .step_list li + li {
  margin-top: 1em;
}

article[class*="support_purpose"] .step_list li .title, article[class*="support_organization"] .step_list li .title {
  padding: 1em;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background-color: #0099cc;
}

article[class*="support_purpose"] .step_list li .title::before, article[class*="support_organization"] .step_list li .title::before {
  display: block;
  content: "0" counter(number);
  color: #d8d8d8;
  font-weight: normal;
  line-height: 1;
}

article[class*="support_purpose"] .step_list li p, article[class*="support_organization"] .step_list li p {
  padding: 1em 1.5em;
  background-color: #f2f2f2;
}

article[class*="support_purpose"] .step_list li p strong, article[class*="support_organization"] .step_list li p strong {
  color: #0099cc;
}

article[class*="support_purpose"] .step_list li p a[href^="tel:"], article[class*="support_organization"] .step_list li p a[href^="tel:"] {
  color: #0099cc;
  font-size: 1.23529rem;
}

article[class*="support_purpose"] .specialist_list, article[class*="support_organization"] .specialist_list {
  margin-left: 0;
  list-style: none;
}

article[class*="support_purpose"] .specialist_list > li, article[class*="support_organization"] .specialist_list > li {
  padding: 2em 0;
}

article[class*="support_purpose"] .specialist_list > li:first-child, article[class*="support_organization"] .specialist_list > li:first-child {
  padding-top: 0;
}

article[class*="support_purpose"] .specialist_list > li:last-child, article[class*="support_organization"] .specialist_list > li:last-child {
  padding-bottom: 0;
}

article[class*="support_purpose"] .specialist_list > li + li, article[class*="support_organization"] .specialist_list > li + li {
  border-top: 1px solid #999;
}

article[class*="support_purpose"] .specialist_list .image, article[class*="support_organization"] .specialist_list .image {
  overflow: hidden;
  margin-bottom: 1em;
  text-align: center;
  border-radius: .5em;
}

article[class*="support_purpose"] .specialist_list .image img, article[class*="support_organization"] .specialist_list .image img {
  width: 200px !important;
  height: 200px !important;
  -o-object-fit: cover;
  object-fit: cover;
}

article[class*="support_purpose"] .specialist_list .name, article[class*="support_organization"] .specialist_list .name {
  font-size: 1.11765rem;
  font-weight: bold;
  text-align: center;
}

article[class*="support_purpose"] .specialist_list .division,
article[class*="support_purpose"] .specialist_list .position, article[class*="support_organization"] .specialist_list .division,
article[class*="support_organization"] .specialist_list .position {
  font-size: 0.88235rem;
}

article[class*="support_purpose"] .specialist_list .fields, article[class*="support_organization"] .specialist_list .fields {
  margin: 1em 0;
  list-style: none;
}

article[class*="support_purpose"] .specialist_list .fields li, article[class*="support_organization"] .specialist_list .fields li {
  display: inline-block;
  margin-right: .5em;
  margin-bottom: 1em;
  padding: .25em .75em;
  font-size: 0.88235rem;
  background-color: #fff;
}

article[class*="support_purpose"] .specialist_list .description, article[class*="support_organization"] .specialist_list .description {
  display: none;
}

article[class*="support_purpose"] .specialist_list .more, article[class*="support_organization"] .specialist_list .more {
  text-align: center;
}

article[class*="support_purpose"] .frame, article[class*="support_organization"] .frame {
  padding: 2em;
  background-color: #f2f2f2;
  border-radius: .5em;
}

article[class*="support_purpose"] .frame + .frame, article[class*="support_organization"] .frame + .frame {
  margin-top: 2em;
}

article[class*="support_purpose"] .frame .frame, article[class*="support_organization"] .frame .frame {
  padding: 2em;
  background-color: #fff;
  border-radius: .5em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.2);
}

article[class*="support_purpose"] .frame .buttons.button_link, article[class*="support_organization"] .frame .buttons.button_link {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 0;
}

article[class*="support_purpose"] .frame .buttons .basic_btn, article[class*="support_organization"] .frame .buttons .basic_btn {
  color: #222222 !important;
  background: #fff;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  border-radius: .5em;
}

article[class*="support_purpose"] .frame .buttons .basic_btn::before, article[class*="support_organization"] .frame .buttons .basic_btn::before {
  display: none;
}

article[class*="support_purpose"] .frame .buttons .basic_btn::after, article[class*="support_organization"] .frame .buttons .basic_btn::after {
  background-image: url(image/icon_arrow_circle.svg);
}

article[class*="support_purpose"] .frame .buttons .basic_btn[target="_blank"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[target="_blank"]::after {
  background-image: url(image/icon_window.svg);
}

article[class*="support_purpose"] .frame .buttons .basic_btn[href$=".doc"]::after, article[class*="support_purpose"] .frame .buttons .basic_btn[href$=".docx"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href$=".doc"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href$=".docx"]::after {
  background-image: url(image/icon_word.svg);
}

article[class*="support_purpose"] .frame .buttons .basic_btn[href$=".xls"]::after, article[class*="support_purpose"] .frame .buttons .basic_btn[href$=".xlsx"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href$=".xls"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href$=".xlsx"]::after {
  background-image: url(image/icon_excel.svg);
}

article[class*="support_purpose"] .frame .buttons .basic_btn[href$=".pdf"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href$=".pdf"]::after {
  background-image: url(image/icon_pdf.svg);
}

article[class*="support_purpose"] .frame .buttons .basic_btn[href^="https://www.youtube.com/"]::after, article[class*="support_purpose"] .frame .buttons .basic_btn[href^="https://youtu.be/"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href^="https://www.youtube.com/"]::after, article[class*="support_organization"] .frame .buttons .basic_btn[href^="https://youtu.be/"]::after {
  background-image: url(image/icon_youtube.svg);
}

article[class*="support_purpose"] .pickup, article[class*="support_organization"] .pickup {
  margin: 0 auto;
  padding: 2em;
  max-width: 1000px;
  background-color: #fff;
  border-radius: .5em;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
}

article[class*="support_purpose"] .pickup .image, article[class*="support_organization"] .pickup .image {
  margin-bottom: 1em;
  text-align: center;
}

article[class*="support_purpose"] .pickup .image img, article[class*="support_organization"] .pickup .image img {
  max-width: 80%;
}

article.support_purpose_facility .facilities .facility {
  padding: 2em;
  background-color: #f2f2f2;
  border-radius: .5em;
}

article.support_purpose_facility .facilities .facility + .facility {
  margin-top: 2em;
}

article.support_purpose_facility .facilities .facility .image {
  text-align: center;
}

article.support_purpose_facility .facilities .facility h5 {
  margin-top: 1em;
  text-align: center;
}

article.support_purpose_facility .frame .content {
  max-width: 100% !important;
}

article.support_purpose_facility .frame .content .image {
  margin-bottom: 1em;
}

/* Desktop Ex
---------------------------------------------------------- */
@media all and (min-width: 1060px), print {
  article.support_index > .support .purpose,
  article.support_index > .support .organization {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1000px;
  }
  article.support_index > .support .purpose a,
  article.support_index > .support .organization a {
    margin-left: 2%;
    width: 23.5%;
  }
  article.support_index > .support .purpose a:nth-child(4n+1),
  article.support_index > .support .organization a:nth-child(4n+1) {
    margin-left: 0;
  }
  article.support_index > .support .purpose a:nth-child(n+5),
  article.support_index > .support .organization a:nth-child(n+5) {
    margin-top: 2%;
  }
}

/* Tablet + Phone Ex
---------------------------------------------------------- */
@media only screen and (max-width: 1059px) {
  article.support_index > .support .purpose,
  article.support_index > .support .organization {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
  }
  article.support_index > .support .purpose a,
  article.support_index > .support .organization a {
    margin-left: 4%;
    width: 48%;
  }
  article.support_index > .support .purpose a:nth-child(2n+1),
  article.support_index > .support .organization a:nth-child(2n+1) {
    margin-left: 0;
  }
  article.support_index > .support .purpose a:nth-child(n+3),
  article.support_index > .support .organization a:nth-child(n+3) {
    margin-top: 4%;
  }
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.support_index > .support .purpose a.subsidy:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.market:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.product:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.productivity:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.management:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.it:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.trademark:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .purpose a.facility:hover {
    background-color: #e4f8fe;
  }
  article.support_index > .support .organization a.startup:hover {
    background-color: #d9f4dc;
  }
  article.support_index > .support .organization a.development:hover {
    background-color: #d8f3e6;
  }
  article.support_index > .support .organization a.agribusiness:hover {
    background-color: #d7f2f0;
  }
  article.support_index > .support .organization a.manufacturing:hover {
    background-color: #e3f5fc;
  }
  article.support_index > .support .organization a.sales:hover {
    background-color: #e3effc;
  }
  article.support_index > .support .organization a.it:hover {
    background-color: #e8eaf9;
  }
  article.support_index > .support .organization a.intellectual:hover {
    background-color: #f5e9fc;
  }
  article.support_index > .support .organization a.welfare:hover {
    background-color: #fff2f7;
  }
  article.support_index > .support .rental {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1000px;
  }
  article.support_index > .support .rental a {
    margin-left: 3.5%;
    width: 31%;
  }
  article.support_index > .support .rental a:nth-child(3n+1) {
    margin-left: 0;
  }
  article.support_index > .support .rental a:nth-child(n+4) {
    margin-top: 3.5%;
  }
  article.support_index > .support .rental a:hover {
    background-color: #f2f2f2;
  }
  article.support_index > .support .rental a:hover::after {
    right: 1em;
  }
  article[class*="support_purpose"] > .contact .card .content > .tel .tel a, article[class*="support_organization"] > .contact .card .content > .tel .tel a {
    font-size: 2rem;
  }
  article[class*="support_purpose"] > .contact .card .content > .mail .link a, article[class*="support_organization"] > .contact .card .content > .mail .link a {
    font-size: 1.41176rem;
  }
  article[class*="support_purpose"] .support_list, article[class*="support_organization"] .support_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  article[class*="support_purpose"] .support_list li, article[class*="support_organization"] .support_list li {
    width: 24%;
  }
  article[class*="support_purpose"] .support_list .title, article[class*="support_organization"] .support_list .title {
    margin-bottom: 1.5em;
  }
  article[class*="support_purpose"] .content_list, article[class*="support_organization"] .content_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1300px;
    max-width: 100%;
  }
  article[class*="support_purpose"] .content_list > li, article[class*="support_organization"] .content_list > li {
    margin-left: 4%;
    width: 640px;
    max-width: 48%;
  }
  article[class*="support_purpose"] .content_list > li:nth-child(2n+1), article[class*="support_organization"] .content_list > li:nth-child(2n+1) {
    margin-left: 0;
  }
  article[class*="support_purpose"] .content_list > li:nth-child(n+3), article[class*="support_organization"] .content_list > li:nth-child(n+3) {
    margin-top: 3.5%;
  }
  article[class*="support_purpose"] .step_list li, article[class*="support_organization"] .step_list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  article[class*="support_purpose"] .step_list li .title,
  article[class*="support_purpose"] .step_list li p, article[class*="support_organization"] .step_list li .title,
  article[class*="support_organization"] .step_list li p {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  article[class*="support_purpose"] .step_list li .title, article[class*="support_organization"] .step_list li .title {
    border-top-left-radius: .5em;
    border-bottom-left-radius: .5em;
    width: 11em;
  }
  article[class*="support_purpose"] .step_list li p, article[class*="support_organization"] .step_list li p {
    border-top-right-radius: .5em;
    border-bottom-right-radius: .5em;
    width: calc(100% - 11em);
  }
  article[class*="support_purpose"] .specialist_list > li, article[class*="support_organization"] .specialist_list > li {
    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;
  }
  article[class*="support_purpose"] .specialist_list > li .image, article[class*="support_organization"] .specialist_list > li .image {
    margin-bottom: 0;
    width: 200px;
  }
  article[class*="support_purpose"] .specialist_list > li .text, article[class*="support_organization"] .specialist_list > li .text {
    padding-left: 4em;
    width: calc(100% - 200px);
  }
  article[class*="support_purpose"] .specialist_list > li .name,
  article[class*="support_purpose"] .specialist_list > li .division,
  article[class*="support_purpose"] .specialist_list > li .position, article[class*="support_organization"] .specialist_list > li .name,
  article[class*="support_organization"] .specialist_list > li .division,
  article[class*="support_organization"] .specialist_list > li .position {
    margin-right: 1em;
    display: inline-block;
  }
  article[class*="support_purpose"] .specialist_list > li .more, article[class*="support_organization"] .specialist_list > li .more {
    text-align: left;
  }
  article[class*="support_purpose"] .specialist_list > li .more a::after, article[class*="support_organization"] .specialist_list > li .more a::after {
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  article[class*="support_purpose"] .specialist_list > li .more a:hover::after, article[class*="support_organization"] .specialist_list > li .more a:hover::after {
    right: 20px !important;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  article[class*="support_purpose"] .frame, article[class*="support_organization"] .frame {
    padding: 2em 4em;
  }
  article[class*="support_purpose"] .frame .content,
  article[class*="support_purpose"] .frame .frame, article[class*="support_organization"] .frame .content,
  article[class*="support_organization"] .frame .frame {
    margin: 0 auto;
    max-width: 1000px;
  }
  article[class*="support_purpose"] .frame .frame .content, article[class*="support_organization"] .frame .frame .content {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article[class*="support_purpose"] .frame .buttons, article[class*="support_organization"] .frame .buttons {
    padding-top: 1.5em;
  }
  article[class*="support_purpose"] .frame .buttons .basic_btn, article[class*="support_organization"] .frame .buttons .basic_btn {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article[class*="support_purpose"] .frame .buttons .basic_btn:hover, article[class*="support_organization"] .frame .buttons .basic_btn:hover {
    background-color: #f9f9f9;
  }
  article[class*="support_purpose"] .content, article[class*="support_organization"] .content {
    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;
  }
  article[class*="support_purpose"] .content .text, article[class*="support_organization"] .content .text {
    width: 50%;
  }
  article[class*="support_purpose"] .content .image,
  article[class*="support_purpose"] .content .buttons, article[class*="support_organization"] .content .image,
  article[class*="support_organization"] .content .buttons {
    width: 45%;
  }
  article[class*="support_purpose"] .pickup .content, article[class*="support_organization"] .pickup .content {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article[class*="support_purpose"] .pickup .image,
  article[class*="support_purpose"] .pickup .text, article[class*="support_organization"] .pickup .image,
  article[class*="support_organization"] .pickup .text {
    width: 48%;
  }
  article.support_purpose_facility .facilities {
    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;
  }
  article.support_purpose_facility .facilities .facility {
    width: 48%;
  }
  article.support_purpose_facility .facilities .facility + .facility {
    margin-top: 0;
  }
  article.support_purpose_facility .frame .image {
    width: 280px;
  }
  article.support_purpose_facility .frame .text {
    width: calc(100% - 340px);
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article[class*="support_purpose"] > .contact, article[class*="support_organization"] > .contact {
    padding-bottom: 10em;
  }
  article[class*="support_purpose"] > .contact .card .content, article[class*="support_organization"] > .contact .card .content {
    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;
  }
  article[class*="support_purpose"] > .contact .card .content > .tel, article[class*="support_organization"] > .contact .card .content > .tel {
    margin-bottom: 0;
  }
  article[class*="support_purpose"] > .contact .card .content > .tel,
  article[class*="support_purpose"] > .contact .card .content > .mail, article[class*="support_organization"] > .contact .card .content > .tel,
  article[class*="support_organization"] > .contact .card .content > .mail {
    width: 48%;
  }
  article[class*="support_purpose"] .frame .buttons.button_link a:nth-child(n+4), article[class*="support_organization"] .frame .buttons.button_link a:nth-child(n+4) {
    margin-top: 2.5%;
  }
}

/* Tablet
---------------------------------------------------------- */
@media only screen and (min-width: 740px) and (max-width: 959px) {
  article[class*="support_purpose"] > .contact, article[class*="support_organization"] > .contact {
    padding-bottom: 9em;
  }
  article[class*="support_purpose"] .frame .buttons.button_link a:nth-child(n+3), article[class*="support_organization"] .frame .buttons.button_link a:nth-child(n+3) {
    margin-top: 2.5%;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.support_index > .support .rental a + a {
    margin-top: 4%;
  }
  article[class*="support_purpose"] .support_list li + li, article[class*="support_organization"] .support_list li + li {
    margin-top: 1.5em;
  }
  article[class*="support_purpose"] .content_list > li + li, article[class*="support_organization"] .content_list > li + li {
    margin-top: 2em;
  }
  article[class*="support_purpose"] .step_list li .title, article[class*="support_organization"] .step_list li .title {
    border-top-left-radius: .5em;
    border-top-right-radius: .5em;
  }
  article[class*="support_purpose"] .step_list li p, article[class*="support_organization"] .step_list li p {
    border-bottom-left-radius: .5em;
    border-bottom-right-radius: .5em;
  }
  article.support_purpose_facility .frame .content h5 {
    text-align: center;
  }
  article.support_purpose_facility .frame .image {
    margin: 0 auto;
    max-width: 400px;
  }
}

/* ---------------------------------------------------------------- */
/*  13. Case
/* ---------------------------------------------------------------- */
body.case_detail #breadline li.active {
  max-width: calc(100% - 17em);
}

article.case > .list .case_tags {
  margin-top: 1em;
}

article.case > .list .case_list {
  padding-top: 2em;
}

article.case > .detail > .inner > h3 {
  margin-left: auto;
  margin-right: auto;
  max-width: 740px;
}

article.case > .detail > .inner > .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto 1em;
  max-width: 1000px;
}

article.case > .detail > .inner > .info .category,
article.case > .detail > .inner > .info .date {
  font-size: 0.82353rem;
}

article.case > .detail > .inner > .info .category {
  padding: .25em 1.5em;
  line-height: 1.2;
  background-color: #f2f2f2;
  border-radius: 2em;
}

article.case > .detail > .inner > .info .date {
  margin-left: 1.5em;
}

article.case > .detail > .inner > .division {
  margin: 0 auto 2em;
  max-width: 1000px;
  font-size: 0.82353rem;
  text-align: right;
}

article.case > .detail > .inner > .buttons {
  margin-top: 3em;
  border-top: 1px solid #333;
}

article.case > .detail > .content {
  position: relative;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}

article.case > .detail > .content::after {
  display: block;
  content: "";
  clear: both;
}

article.case > .detail > .content > .case,
article.case > .detail > .content > .support,
article.case > .detail > .content > .voice,
article.case > .detail > .content > .profile {
  padding: 3em 0;
}

article.case > .detail > .content > .case .images {
  padding-top: 2em;
}

article.case > .detail > .content > .case .images .image {
  text-align: center;
}

article.case > .detail > .content > .case .images .image img {
  margin-bottom: .75em;
}

article.case > .detail > .content > .support {
  margin: 2em 0;
  padding: 4em 0;
  background-color: #f2f2f2;
}

article.case > .detail > .content > .support .content {
  padding: 2em;
  background-color: #fff;
  border-radius: .5em;
}

article.case > .detail > .content > .support .content + .content {
  margin-top: 2em;
}

article.case > .detail > .content > .support .content ul {
  margin-top: 1em;
}

article.case > .detail > .content > .support .content ul li::marker {
  color: #419ece;
}

article.case > .detail > .content > .voice .image {
  margin: 0 auto;
  max-width: 420px;
}

article.case > .detail > .content > .profile .inner {
  max-width: 1000px !important;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.case > .list .case_tags {
    margin: 2em auto 1em;
  }
  article.case > .list .case_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 2em;
  }
  article.case > .list .case_list a {
    margin-left: 5%;
    width: 47.5%;
  }
  article.case > .list .case_list a:nth-child(2n+1) {
    margin-left: 0;
  }
  article.case > .list .case_list a:nth-child(n+3) {
    margin-top: 5%;
  }
  article.case > .detail > .content {
    max-width: 1340px;
  }
  article.case > .detail > .content > .case .images {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  article.case > .detail > .content > .case .images .image {
    margin-left: 8%;
    width: 46%;
  }
  article.case > .detail > .content > .case .images .image:nth-child(2n+1) {
    margin-left: 0;
  }
  article.case > .detail > .content > .case .images .image:nth-child(n+3) {
    margin-top: 4%;
  }
  article.case > .detail > .content > .support .content {
    padding: 3em;
  }
  article.case > .detail > .content > .profile table th {
    width: 12em;
    text-align: left;
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article.case > .detail > .content > .voice .content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  article.case > .detail > .content > .voice .content .image {
    width: 420px;
  }
  article.case > .detail > .content > .voice .content .text {
    padding-right: 4em;
    width: calc(100% - 420px);
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 959px) {
  article.case > .detail > .content > .voice .content .image {
    margin-bottom: 2em;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.case > .list .case_list a + a {
    margin-top: 2.5em;
  }
  article.case > .detail > .content {
    min-width: 320px;
  }
  article.case > .detail > .content > .case .image + .image {
    margin-top: 2em;
  }
}

/* ---------------------------------------------------------------- */
/*  14. Recruit
/* ---------------------------------------------------------------- */
/* Desktop + Tablet
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  15. Report
/* ---------------------------------------------------------------- */
body.report_detail #breadline li.active {
  max-width: calc(100% - 15em);
}

article.report > .list .report_list {
  padding-bottom: 1em;
}

article.report > .list .report_list a {
  display: block;
  padding: .5em;
  color: #222222;
  text-decoration: none;
  -webkit-box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  box-shadow: 0 0 5px 5px rgba(153, 153, 153, 0.1);
  border-radius: .5em;
}

article.report > .list .report_list a::after {
  display: none;
}

article.report > .list .report_list a.new .date::after {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-left: .5em;
  width: 25px;
  height: 25px;
  background: transparent url(image/icon_new.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

article.report > .list .report_list a span {
  display: block;
}

article.report > .list .report_list a .image {
  overflow: hidden;
  position: relative;
  margin-bottom: .75em;
  padding-top: 75%;
  border-radius: .5em;
}

article.report > .list .report_list a .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

article.report > .list .report_list a .text {
  padding-left: .5em;
  padding-right: .5em;
}

article.report > .list .report_list a .date {
  font-size: 0.82353rem;
}

article.report > .list .report_list a .title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: .5em;
  font-weight: bold;
}

article.report > .detail > .inner > h3 {
  margin-left: auto;
  margin-right: auto;
  max-width: 740px;
}

article.report > .detail > .inner > .date {
  margin: 0 auto 2em;
  max-width: 1000px;
  font-size: 0.82353rem;
  text-align: right;
}

article.report > .detail > .inner > .content {
  padding-bottom: 2em;
}

article.report > .detail > .inner > .content::after {
  display: block;
  content: "";
  clear: both;
}

article.report > .detail > .inner > .buttons {
  margin-top: 3em;
  border-top: 1px solid #333;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.report > .list .report_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 2em;
  }
  article.report > .list .report_list a {
    padding: 1em;
  }
  article.report > .list .report_list a:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
}

/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article.report > .list .report_list a {
    margin-left: 3.5%;
    width: 31%;
  }
  article.report > .list .report_list a:nth-child(3n+1) {
    margin-left: 0;
  }
  article.report > .list .report_list a:nth-child(n+4) {
    margin-top: 3.5%;
  }
}

/* Tablet
---------------------------------------------------------- */
@media only screen and (min-width: 740px) and (max-width: 959px) {
  article.report > .list .report_list a {
    margin-left: 5%;
    width: 47.5%;
  }
  article.report > .list .report_list a:nth-child(2n+1) {
    margin-left: 0;
  }
  article.report > .list .report_list a:nth-child(n+3) {
    margin-top: 5%;
  }
}

/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.report > .list .report_list a + a {
    margin-top: 2.5em;
  }
}

/* ---------------------------------------------------------------- */
/*  16. Reserve
/* ---------------------------------------------------------------- */
article.reserve > .reserve .inner {
  max-width: 1040px !important;
}

article.reserve > .reserve .months,
article.reserve > .reserve .facilities {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

article.reserve > .reserve .months a,
article.reserve > .reserve .facilities a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: .75em .5em;
  min-height: 40px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  text-decoration: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background-color: #848484;
  border-radius: 4em;
}

article.reserve > .reserve .months a.active,
article.reserve > .reserve .facilities a.active {
  background: -webkit-gradient(linear, left top, right top, from(#139595), to(#0095e8));
  background: -webkit-linear-gradient(left, #139595, #0095e8);
  background: linear-gradient(90deg, #139595, #0095e8);
}

article.reserve > .reserve .months {
  margin-bottom: 1em;
}

article.reserve > .reserve .months a {
  margin-left: 4%;
  width: 22%;
}

article.reserve > .reserve .months a:nth-child(4n+1) {
  margin-left: 0;
}

article.reserve > .reserve .months a:nth-child(n+5) {
  margin-top: 2%;
}

article.reserve > .reserve .facilities {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 2em;
}

article.reserve > .reserve .facilities a {
  margin-left: 5%;
  width: 38%;
}

article.reserve > .reserve .facilities a:nth-child(3n+1) {
  margin-left: 0;
}

article.reserve > .reserve .facilities a:nth-child(n+4) {
  margin-top: 2%;
}

article.reserve > .reserve ul.info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
}

article.reserve > .reserve ul.info li {
  margin-right: 1em;
}

article.reserve > .reserve ul.info span {
  margin-right: .5em;
}

article.reserve > .reserve .date_title {
  margin: 2em 0 .5em;
  font-size: 1.23529rem;
  font-weight: bold;
  text-align: center;
}

article.reserve > .reserve div.facility {
  margin-bottom: 2em;
  padding: 1.5em 2em;
  background-color: #eaf7f9;
}

article.reserve > .reserve div.facility .image {
  margin-bottom: 1em;
  text-align: center;
}

article.reserve > .reserve div.facility .title {
  font-size: 1.05882rem;
  font-weight: bold;
}

article.reserve > .reserve div.facility .equipment {
  margin: .75em 0 .5em;
  list-style: none;
}

article.reserve > .reserve div.facility .equipment li {
  display: inline-block;
  margin: 0 1em .5em 0;
  padding: .25em .75em 0;
  font-size: 0.82353rem;
  background-color: #fff;
}

article.reserve > .reserve div.facility .equipment li::before {
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin-right: .5em;
  width: 30px;
  height: 30px;
  background: transparent no-repest center center / contain;
}

article.reserve > .reserve div.facility .equipment li.aircon::before {
  background-image: url(image/icon_reserve_aircon.svg);
}

article.reserve > .reserve div.facility .equipment li.board::before {
  background-image: url(image/icon_reserve_board.svg);
}

article.reserve > .reserve div.facility .equipment li.screen::before {
  background-image: url(image/icon_reserve_screen.svg);
}

article.reserve > .reserve div.facility .info {
  margin-left: 0;
  list-style: none;
  font-size: 0.94118rem;
}

article.reserve > .reserve div.facility .info li {
  margin-left: 5em;
  text-indent: -5em;
}

article.reserve > .reserve .all_check {
  padding-top: 1em;
  text-align: center;
}

article.reserve > .reserve .all_check span {
  position: relative;
  display: inline-block;
  padding: .25em .75em .25em 2.5em;
  color: #fff;
  background-color: #419ece;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
}

article.reserve > .reserve .all_check span::before, article.reserve > .reserve .all_check span::after {
  content: "";
  position: absolute;
  left: .75em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

article.reserve > .reserve .all_check span::before {
  width: 1em;
  height: 1em;
  background-color: #fff;
}

article.reserve > .reserve .all_check span.check::after {
  margin-top: -.25em;
  width: 1em;
  height: .5em;
  border-left: 3px solid #1d5572;
  border-bottom: 3px solid #1d5572;
  -webkit-transform: rotate(-45deg) translateY(-20%);
  transform: rotate(-45deg) translateY(-20%);
}

article.reserve > .reserve table {
  width: 100%;
}

article.reserve > .reserve table.calendar {
  border: none;
}

article.reserve > .reserve table.calendar thead tr.info th {
  font-weight: bold;
  background-color: transparent;
  border: none;
}

article.reserve > .reserve table.calendar thead tr.info th .month {
  font-size: 1.52941rem;
}

article.reserve > .reserve table.calendar thead tr.info th .facility {
  display: block;
  font-size: 1.23529rem;
}

article.reserve > .reserve table.calendar thead tr.week th {
  padding: .5em;
  font-weight: bold;
  border: none;
}

article.reserve > .reserve table.calendar thead tr.week th.sunday {
  color: #ff0092;
}

article.reserve > .reserve table.calendar thead tr.week th.saturday {
  color: #0095e8;
}

article.reserve > .reserve table.calendar tbody {
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}

article.reserve > .reserve table.calendar tbody td {
  padding: .25em;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}

article.reserve > .reserve table.calendar tbody td:not(.over):not(.sunday):not(.saturday):not(.holiday) {
  cursor: pointer;
}

article.reserve > .reserve table.calendar tbody td.sunday {
  color: #ff0092;
  background-color: #fde9e9;
}

article.reserve > .reserve table.calendar tbody td.saturday {
  color: #0095e8;
  background-color: #e9f5fd;
}

article.reserve > .reserve table.calendar tbody td.holiday {
  color: #ff0092;
  background-color: #fde9e9;
}

article.reserve > .reserve table.calendar tbody td.active {
  background-color: #e8f9e8;
}

article.reserve > .reserve table.calendar tbody td.over {
  opacity: .25;
  background-color: transparent;
}

article.reserve > .reserve table.date {
  margin: 0;
  table-layout: fixed;
  border: none;
}

article.reserve > .reserve table.date tbody {
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}

article.reserve > .reserve table.date tbody th,
article.reserve > .reserve table.date tbody td {
  padding: .25em;
  text-align: center;
}

article.reserve > .reserve table.date tbody th.over,
article.reserve > .reserve table.date tbody td.over {
  background-color: #ddd;
}

article.reserve > .reserve table.date tbody th input[type="checkbox"],
article.reserve > .reserve table.date tbody td input[type="checkbox"] {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}

article.reserve > .reserve table.date tbody th input[type="checkbox"]:disabled,
article.reserve > .reserve table.date tbody td input[type="checkbox"]:disabled {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: default;
}

article.reserve > .reserve table.date tbody th input[type="checkbox"]:disabled:checked::after,
article.reserve > .reserve table.date tbody td input[type="checkbox"]:disabled:checked::after {
  position: absolute;
  left: -.5em;
  top: 50%;
  content: "";
  margin-top: -.25em;
  width: 1em;
  height: .5em;
  border-left: 2px solid #1d5572;
  border-bottom: 2px solid #1d5572;
  -webkit-transform: rotate(-45deg) translateY(-30%);
  transform: rotate(-45deg) translateY(-30%);
}

article.reserve > .reserve table.reserve input[type="text"], article.reserve > .reserve table.reserve input[type="tel"], article.reserve > .reserve table.reserve input[type="email"] {
  width: 98%;
}

article.reserve > .reserve table.reserve input[type="text"][name="name"] {
  max-width: 10em;
}

article.reserve > .reserve table.reserve input[type="tel"][name="zip"] {
  max-width: 7em;
}

article.reserve > .reserve table.reserve input[type="tel"][name="tel"] {
  max-width: 10em;
}

article.reserve > .reserve table.reserve input[type="checkbox"] {
  margin-right: .25em;
}

article.reserve > .reserve table.reserve input[type="checkbox"]:disabled + span {
  text-decoration: line-through;
  opacity: .25;
}

article.reserve > .reserve table.reserve textarea {
  width: 98%;
}

article.reserve > .reserve .buttons .basic_btn {
  margin: .5em;
  min-width: 180px;
}

article.reserve > .reserve .buttons .basic_btn.back {
  padding: 0.5em calc(.5em + 30px) 0.5em calc(.5em + 50px);
  color: #222222 !important;
  background: #fff;
  border: 1px solid #333;
}

article.reserve > .reserve .buttons .basic_btn.back::before {
  display: none;
}

article.reserve > .reserve .buttons .basic_btn.back::after {
  right: auto;
  left: 20px;
  background-image: url(image/icon_arrow_circle.svg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

article.reserve > .reserve .complete {
  text-align: center;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.reserve > .reserve div.facility {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  article.reserve > .reserve div.facility .image {
    margin-bottom: 0;
    width: 250px;
  }
  article.reserve > .reserve div.facility .text {
    width: calc(100% - 250px - 2em);
  }
  article.reserve > .reserve table.reserve th {
    width: 16em;
  }
  article.reserve > .reserve .date_tables {
    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;
  }
  article.reserve > .reserve .date_tables table {
    width: 50%;
  }
  article.reserve > .reserve .date_tables table + table th:first-child,
  article.reserve > .reserve .date_tables table + table td:first-child {
    border-left: none;
  }
  article.reserve > .reserve .buttons .basic_btn.back {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article.reserve > .reserve .buttons .basic_btn.back::after {
    -webkit-transition: left 0.2s;
    transition: left 0.2s;
  }
  article.reserve > .reserve .buttons .basic_btn.back:hover {
    background-color: #f2f2f2;
  }
  article.reserve > .reserve .buttons .basic_btn.back:hover::after {
    left: 15px;
  }
}

/* Desktop
---------------------------------------------------------- */
/* Tablet
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
@media only screen and (max-width: 739px) {
  article.reserve > .reserve .months a {
    margin-left: 2%;
    width: 23.5%;
    font-size: 0.88235rem;
  }
  article.reserve > .reserve .date_tables table + table th {
    border-top: none;
  }
  article.reserve > .reserve .facilities a {
    margin-left: 2%;
    width: 32%;
    font-size: 0.88235rem;
  }
}

/* ---------------------------------------------------------------- */
/*  17. Member
/* ---------------------------------------------------------------- */
article.member > .member .inner {
  max-width: 1040px !important;
}

article.member > .member .contact {
  padding-bottom: 4em;
  text-align: center;
}

article.member > .member .form {
  margin-top: 4em;
}

article.member > .member table {
  width: 100%;
}

article.member > .member table.mailmaga input[type="text"], article.member > .member table.mailmaga input[type="tel"], article.member > .member table.mailmaga input[type="email"] {
  width: 98%;
}

article.member > .member table.mailmaga input[type="text"][name="name"] {
  max-width: 10em;
}

article.member > .member table.mailmaga input[type="text"][name="kana"] {
  max-width: 14em;
}

article.member > .member table.mailmaga input[type="tel"][name="tel"] {
  max-width: 10em;
}

article.member > .member table.mailmaga textarea {
  width: 98%;
}

article.member > .member .buttons .basic_btn {
  margin: .5em;
  min-width: 180px;
}

article.member > .member .buttons .basic_btn.back {
  padding: 0.5em calc(.5em + 30px) 0.5em calc(.5em + 50px);
  color: #222222 !important;
  background: #fff;
  border: 1px solid #333;
}

article.member > .member .buttons .basic_btn.back::before {
  display: none;
}

article.member > .member .buttons .basic_btn.back::after {
  right: auto;
  left: 20px;
  background-image: url(image/icon_arrow_circle.svg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

article.member > .member .complete {
  text-align: center;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.member > .member table.member th {
    width: 16em;
  }
  article.member > .member .buttons .basic_btn.back {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article.member > .member .buttons .basic_btn.back::after {
    -webkit-transition: left 0.2s;
    transition: left 0.2s;
  }
  article.member > .member .buttons .basic_btn.back:hover {
    background-color: #f2f2f2;
  }
  article.member > .member .buttons .basic_btn.back:hover::after {
    left: 15px;
  }
}

/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  18. Contact
/* ---------------------------------------------------------------- */
article.contact > .contact .inner {
  max-width: 1040px !important;
}

article.contact > .contact .form {
  margin-top: 4em;
}

article.contact > .contact table {
  width: 100%;
}

article.contact > .contact table.contact input[type="text"], article.contact > .contact table.contact input[type="tel"], article.contact > .contact table.contact input[type="email"] {
  width: 98%;
}

article.contact > .contact table.contact input[type="text"][name="name"] {
  max-width: 10em;
}

article.contact > .contact table.contact input[type="tel"][name="zip"] {
  max-width: 7em;
}

article.contact > .contact table.contact input[type="tel"][name="tel"] {
  max-width: 10em;
}

article.contact > .contact table.contact textarea {
  width: 98%;
}

article.contact > .contact .buttons .basic_btn {
  margin: .5em;
  min-width: 180px;
}

article.contact > .contact .buttons .basic_btn.back {
  padding: 0.5em calc(.5em + 30px) 0.5em calc(.5em + 50px);
  color: #222222 !important;
  background: #fff;
  border: 1px solid #333;
}

article.contact > .contact .buttons .basic_btn.back::before {
  display: none;
}

article.contact > .contact .buttons .basic_btn.back::after {
  right: auto;
  left: 20px;
  background-image: url(image/icon_arrow_circle.svg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

article.contact > .contact .complete {
  text-align: center;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.contact > .contact table.contact th {
    width: 16em;
  }
  article.contact > .contact .buttons .basic_btn.back {
    -webkit-transition: background-color 0.2s;
    transition: background-color 0.2s;
  }
  article.contact > .contact .buttons .basic_btn.back::after {
    -webkit-transition: left 0.2s;
    transition: left 0.2s;
  }
  article.contact > .contact .buttons .basic_btn.back:hover {
    background-color: #f2f2f2;
  }
  article.contact > .contact .buttons .basic_btn.back:hover::after {
    left: 15px;
  }
}

/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  19. Access
/* ---------------------------------------------------------------- */
article.access > .access .google_map {
  margin-bottom: 2em;
}

/* Desktop + Tablet
---------------------------------------------------------- */
/* Desktop
---------------------------------------------------------- */
@media all and (min-width: 960px), print {
  article.access > .access .content {
    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;
  }
  article.access > .access .content .image,
  article.access > .access .content .text {
    width: 48%;
  }
}

/* Tablet + Phone
---------------------------------------------------------- */
@media only screen and (max-width: 959px) {
  article.access > .access .content .image {
    margin: 0 auto 1em;
    max-width: 90%;
    text-align: center;
  }
}

/* ---------------------------------------------------------------- */
/*  20. Link
/* ---------------------------------------------------------------- */
article.link > .link ul li {
  margin-top: 1em;
}

/* Desktop + Tablet
---------------------------------------------------------- */
@media all and (min-width: 740px), print {
  article.link ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  article.link ul li {
    width: 50%;
  }
}

/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  21. Privacy
/* ---------------------------------------------------------------- */
/* Desktop + Tablet
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/*  22. Policy
/* ---------------------------------------------------------------- */
/* Desktop + Tablet
---------------------------------------------------------- */
/* Phone
---------------------------------------------------------- */
/* ---------------------------------------------------------------- */
/* 	99. Print
/* ---------------------------------------------------------------- */
@media print {
  * {
    -webkit-print-color-adjust: exact !important;
  }
  body {
    zoom: .8;
  }
}
