@charset "UTF-8";
/* Base
 * ======================================================================== */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
@import url("https://fonts.googleapis.com/css?family=Dosis");
@import url("https://fonts.googleapis.com/css?family=Frank+Ruhl+Libre:300");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP&subset=japanese");
html {
  line-height : 1.15;
  -webkit-text-size-adjust : 100%;
}

body {
  margin : 0;
}

h1 {
  font-size : 2em;
  margin : .67em 0;
}

hr {
  box-sizing : content-box;
  height : 0;
  overflow : visible;
}

pre {
  font-family : monospace, monospace;
  font-size : 1em;
}

a {
  background-color : transparent;
}

abbr[title] {
  border-bottom : none;
  text-decoration : underline;
  text-decoration : underline dotted;
}

b,
strong {
  font-weight : bolder;
}

code,
kbd,
samp {
  font-family : monospace, monospace;
  font-size : 1em;
}

small {
  font-size : 80%;
}

sub,
sup {
  font-size : 75%;
  line-height : 0;
  position : relative;
  vertical-align : baseline;
}

sub {
  bottom : -.25em;
}

sup {
  top : -.5em;
}

img {
  border-style : none;
}

button,
input,
optgroup,
select,
textarea {
  font-family : inherit;
  font-size : 100%;
  line-height : 1.15;
  margin : 0;
}

button,
input {
  overflow : visible;
}

button,
select {
  text-transform : none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance : button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style : none;
  padding : 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline : 1px dotted ButtonText;
}

fieldset {
  padding : .35em .75em .625em;
}

legend {
  box-sizing : border-box;
  color : inherit;
  display : table;
  max-width : 100%;
  padding : 0;
  /* 3 */
  white-space : normal;
}

progress {
  vertical-align : baseline;
}

textarea {
  overflow : auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing : border-box;
  padding : 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height : auto;
}

[type="search"] {
  -webkit-appearance : textfield;
  outline-offset : -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance : none;
}

::-webkit-file-upload-button {
  -webkit-appearance : button;
  font : inherit;
}

details {
  display : block;
}

summary {
  display : list-item;
}

template {
  display : none;
}

[hidden] {
  display : none;
}

html {
  box-sizing : border-box;
  font-size : 62.5%;
  margin : 0;
  padding : 0;
}

body {
  color : #525252;
  font-family : "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", 游ゴシック体, "Yu Gothic", YuGothic, Arial, メイリオ, Meiryo, sans-serif;
  font-size : 1.6rem;
  line-height : 1.5;
}

ol,
ul {
  list-style : none;
}

img {
  max-width : 100%;
}

body,
div,
span,
a,
h1,
h2,
h3,
h4,
h5,
h6,
p,
em,
img,
small,
strong,
sub,
sup,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
footer,
header,
nav,
section,
time {
  margin : 0;
  padding : 0;
  box-sizing : border-box;
}

body::before,
body::after,
div::before,
div::after,
span::before,
span::after,
a::before,
a::after,
h1::before,
h1::after,
h2::before,
h2::after,
h3::before,
h3::after,
h4::before,
h4::after,
h5::before,
h5::after,
h6::before,
h6::after,
p::before,
p::after,
em::before,
em::after,
img::before,
img::after,
small::before,
small::after,
strong::before,
strong::after,
sub::before,
sub::after,
sup::before,
sup::after,
dl::before,
dl::after,
dt::before,
dt::after,
dd::before,
dd::after,
ol::before,
ol::after,
ul::before,
ul::after,
li::before,
li::after,
fieldset::before,
fieldset::after,
form::before,
form::after,
label::before,
label::after,
table::before,
table::after,
caption::before,
caption::after,
tbody::before,
tbody::after,
tfoot::before,
tfoot::after,
thead::before,
thead::after,
tr::before,
tr::after,
th::before,
th::after,
td::before,
td::after,
footer::before,
footer::after,
header::before,
header::after,
nav::before,
nav::after,
section::before,
section::after,
time::before,
time::after {
  box-sizing : inherit;
}

button {
  background-color : transparent;
  border : none;
  color : inherit;
}

a {
  color : #043d84;
}

@media screen and (min-width: 813px) {
  a[href^="tel:"] {
    color : inherit;
    pointer-events : none;
    text-decoration : none;
  }
}

iframe {
  border : none;
}

em {
  font-style : normal;
  font-weight : bold;
}

strong {
  color : #dd4646;
  font-weight : normal;
}

strong > em {
  font-weight : bold;
}

/* Layout
 * ======================================================================== */
.str-header-01 .lyt-outer {
  background-color : #164182;
  display : flex;
}

.str-header-01 .lyt-inner {
  align-items : center;
  display : flex;
  justify-content : space-between;
  margin : 0 auto;
  max-width : 1200px;
  min-height : 42px;
  width : 100%;
}

.str-header-01 .ci-city {
  align-items : center;
  display : flex;
  margin-top : 0;
  padding-left : 20px;
}

.str-header-01 .ci-city > a {
  display : block;
}

.str-header-01 .ci-city > a > img {
  display : inline-block;
  width : 100px;
  vertical-align : bottom;
}

.str-header-01 .menu-city {
  background-color : #123469;
  flex : 0 1 40%;
}

.str-header-01 .menu-city .menu-button {
  align-items : center;
  color : #fff;
  display : flex;
  font-size : 1rem;
  padding : 10px 25px 10px 15px;
  width : 100%;
}

.str-header-01 .menu-city .menu-button .text {
  display : block;
  line-height : 1.1;
  padding-left : 20px;
  position : relative;
  text-align : left;
}

.str-header-01 .menu-city .menu-button .text::before,
.str-header-01 .menu-city .menu-button .text::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 50%;
  transform : translateY(-50%);
}

.str-header-01 .menu-city .menu-button .text::before {
  border : 2px solid #fff;
  border-radius : 50px;
  height : 14px;
  width : 14px;
}

.str-header-01 .menu-city .menu-button .text::after {
  border : 3px solid transparent;
  border-top : 4px solid #fff;
  height : 0;
  margin : 2px 0 0 4px;
  width : 0;
}

.str-header-01 .menu-city .link-city > li {
  padding-left : 30px;
}

.str-header-01 .menu-city .link-city > li > a {
  color : #fff;
  font-size : 1.2rem;
  text-decoration : none;
}

.str-header-01 .menu-city .link-city > li > a:hover,
.str-header-01 .menu-city .link-city > li > a:focus {
  text-decoration : underline;
}

@media screen and (max-width: 812px) {
  .js-menu::after {
    background-color : rgba(0, 0, 0, .4);
    content : '';
    display : block;
    left : 0;
    opacity : 0;
    position : fixed;
    top : 0;
    transition : opacity .3s;
    width : 100%;
    z-index : 100;
  }
  .js-menu.is-menu-open::after {
    height : 100%;
    opacity : 1;
  }
  .str-header-01 {
    position : relative;
    z-index : 300;
  }
  .str-header-01 .menu-city .link-city {
    background-color : rgba(0, 121, 195, .9);
    display : block;
    left : 0;
    position : absolute;
    top : 100%;
    width : 100%;
  }
  .str-header-01 .menu-city .link-city > li {
    padding : 0 20px;
  }
  .str-header-01 .menu-city .link-city > li > a {
    border-top : 1px dotted #fff;
    display : block;
    padding : 14px 20px 14px 0;
    position : relative;
  }
  .str-header-01 .menu-city .link-city > li > a::after {
    background-image : url(../images/ico_arrow_01.png);
    background-size : contain;
    content : '';
    display : block;
    height : 12px;
    position : absolute;
    right : 0;
    width : 11px;
    top : 50%;
    transform : translateY(-50%);
  }
  .str-header-01 .menu-city .link-city > li:first-child > a {
    border-top : none;
  }
  header:not(.js-menu) .str-header-01 .lyt-inner {
    display : block;
  }
  header:not(.js-menu) .str-header-01 .lyt-inner .link-city {
    position : static;
  }
  .js-on header .str-header-01 .link-city {
    display : none;
  }
}

@media screen and (min-width: 813px) {
  .str-header-01 .lyt-inner {
    min-height : 40px;
    justify-content : flex-start;
    padding : 0 10px;
  }
  .str-header-01 .ci-city {
    padding-left : 0;
    padding-right : 10px;
  }
  .str-header-01 .ci-city > a > img {
    margin-top : -3px;
  }
  .str-header-01 .menu-city {
    background-color : transparent;
    flex : 0 1 auto;
  }
  .str-header-01 .menu-city .menu-button {
    display : none;
  }
  .str-header-01 .menu-city .link-city {
    display : flex !important;
    margin-top : -3px;
  }
}

.str-header-02 {
  position : relative;
  z-index : 200;
}

.str-header-02 .lyt-outer {
  background-color : #fff;
  display : flex;
}

.str-header-02 .lyt-inner {
  align-items : center;
  display : flex;
  justify-content : space-between;
  margin : 0 auto;
  max-width : 1200px;
  min-height : 60px;
  width : 100%;
}

.str-header-02 .logo {
  align-items : center;
  display : flex;
  padding : 0 10px 0 19px;
}

.str-header-02 .logo > a > img {
  display : inline-block;
  width : 187px;
}

.str-header-02 .header-nav {
  align-items : center;
  display : flex;
}

.str-header-02 .language-wrapper .select-language {
  display : flex;
}

.str-header-02 .global-nav-wrapper .global-nav-button {
  background-color : #dfeff2;
  height : 60px;
  margin-left : 10px;
  padding : 0;
  width : 60px;
}

.str-header-02 .global-nav-wrapper .global-nav-button .text {
  display : block;
  font-size : 1rem;
  line-height : 1;
  padding-top : 22px;
  position : relative;
}

.str-header-02 .global-nav-wrapper .global-nav-button .text::before,
.str-header-02 .global-nav-wrapper .global-nav-button .text::after {
  content : '';
  display : block;
  left : 50%;
  position : absolute;
  top : 0;
  transform-origin : center;
  transform : translateX(-50%);
  transition : all .3s;
}

.str-header-02 .global-nav-wrapper .global-nav-button .text::before {
  border-bottom : 2px solid #709bb0;
  border-top : 2px solid #709bb0;
  height : 14px;
  width : 17px;
}

.str-header-02 .global-nav-wrapper .global-nav-button .text::after {
  background-color : #709bb0;
  height : 2px;
  margin-top : 6px;
  width : 17px;
}

.str-header-02 .global-nav-wrapper .global-nav-button.is-open .text::before,
.str-header-02 .global-nav-wrapper .global-nav-button.is-open .text::after {
  height : 2px;
  top : 5px;
  width : 17px;
}

.str-header-02 .global-nav-wrapper .global-nav-button.is-open .text::before {
  background-color : #709bb0;
  border : none;
  transform-origin : center;
  transform : translateX(-50%) rotate(45deg);
}

.str-header-02 .global-nav-wrapper .global-nav-button.is-open .text::after {
  margin : 0;
  transform-origin : center;
  transform : translateX(-50%) rotate(-45deg);
}

.str-header-02 .global-nav-button.is-open + .search-wrapper {
  display : block;
}

.str-header-02 .search-wrapper {
  display : none;
  position : absolute;
}

.str-header-02 .search-wrapper .search-box {
  align-items : center;
  display : flex;
  padding-bottom : 7px;
  position : relative;
}

.str-header-02 .search-wrapper .search-box::before {
  background-image : linear-gradient(to right, #b2d9de 0%, #7aafc8 100%);
  bottom : 0;
  content : '';
  display : block;
  height : 1px;
  left : 0;
  position : absolute;
  width : 100%;
}

.str-header-02 .search-wrapper .search-box .search-input {
  border : none;
  font-size : 1.2rem;
}

.str-header-02 .search-wrapper .search-box .search-button {
  cursor : pointer;
  padding : 0;
}

.str-header-02 .search-wrapper .search-box .search-button > .text {
  display : block;
  font-size : 0;
  height : 14px;
  position : relative;
  width : 14px;
}

.str-header-02 .search-wrapper .search-box .search-button > .text::before,
.str-header-02 .search-wrapper .search-box .search-button > .text::after {
  content : '';
  display : block;
  position : absolute;
}

.str-header-02 .search-wrapper .search-box .search-button > .text::before {
  border : 2px solid #83b6cc;
  border-left-color : #b2d8de;
  border-top-color : #b2d8de;
  border-radius : 50%;
  height : 12px;
  left : 0;
  top : 0;
  width : 12px;
}

.str-header-02 .search-wrapper .search-box .search-button > .text::after {
  background-color : #83b6cc;
  border-radius : 2px;
  bottom : 0;
  height : 5px;
  right : 2px;
  width : 2px;
  transform : rotate(-45deg);
}

.str-header-02 .global-nav > li .navi-child {
  background-color : #eceef1;
}

.str-header-02 .global-nav > li .navi-child a {
  color : #333;
  display : block;
  font-weight : bold;
  position : relative;
  text-decoration : none;
}

.str-header-02 .global-nav > li .navi-child a::after {
  background-image : url(../images/ico_arrow_03.png);
  background-size : contain;
  content : '';
  display : block;
  height : 14px;
  position : absolute;
  right : 15px;
  transform : translateY(-50%);
  top : 50%;
  width : 9px;
}

.str-header-02 .global-nav > li .navi-child .index-title > a {
  font-weight : bold;
  padding : 16px 40px 16px 15px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame {
  border-top : 1px solid #ccc;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._about .page-list > li + li {
  border-top : 1px solid #ccc;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._about .page-list > li > a {
  align-items : center;
  display : flex;
  font-size : 1.4rem;
  padding : 10px 40px 10px 15px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._about .page-list .image {
  flex : 0 1 60px;
  min-width : 60px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._about .page-list .image > img {
  display : block;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._about .page-list .text {
  padding-left : 15px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business {
  padding-bottom : 15px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list {
  display : flex;
  flex-wrap : wrap;
  margin-top : -9px;
  padding : 0 15px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li {
  background-color : #fff;
  margin-top : 9px;
  width : 100%;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a {
  font-size : 1.3rem;
  display : flex;
  flex-direction : row-reverse;
  align-items : center;
  justify-content : space-between;
  padding : 5px 10px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a::after {
  content : none;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .image > img {
  display : block;
  width : 72px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .text {
  color : #043d84;
  display : block;
  line-height : 1.25;
  font-size : 1.5rem;
  padding : 0 0 0 25px;
  position : relative;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .text::before,
.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .text::after {
  content : '';
  display : block;
  position : absolute;
  left : 0;
  top : 0;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list > li > a .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 5px;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list._col3 > li {
  margin : 9px 0 0 2.608%;
  width : 31.594%;
}

.str-header-02 .global-nav > li .navi-child .feature-frame._business .page-list._col3 > li:nth-child(3n+1) {
  margin-left : 0;
}

.str-header-02 .global-nav > li .navi-child .feature-frame .purpose {
  font-size : 1.5rem;
  font-weight : bold;
  padding : 14px 15px;
}

.str-header-02 .global-nav > li .navi-child .basic-frame .page-list {
  border-top : 1px solid #ccc;
  display : flex;
  flex-wrap : wrap;
}

.str-header-02 .global-nav > li .navi-child .basic-frame .page-list > li {
  border-bottom : 1px solid #ccc;
  border-right : 1px solid #ccc;
  width : 50%;
}

.str-header-02 .global-nav > li .navi-child .basic-frame .page-list > li:nth-child(2n) {
  border-right : none;
}

.str-header-02 .global-nav > li .navi-child .basic-frame .page-list > li > a {
  display : flex;
  flex-direction : column;
  font-size : 1.3rem;
  justify-content : center;
  height : 100%;
  min-height : 45px;
  padding : 5px 40px 5px 15px;
}

@media screen and (max-width: 812px) {
  .str-header-02 .global-nav-button.is-open + .search-wrapper {
    display : block;
  }
  .str-header-02 .language-wrapper .select-language > .mobile-hidden {
    display : none;
  }
  .str-header-02 .language-wrapper .language {
    background-color : #eceef1;
    border-radius : 3px;
    display : block;
    height : 44px;
    position : relative;
    width : 44px;
    text-decoration : none;
  }
  .str-header-02 .language-wrapper .language::before {
    border-bottom : 2px solid #709bb0;
    border-top : 2px solid #709bb0;
    content : '';
    display : block;
    height : 10px;
    left : 50%;
    position : absolute;
    top : 11px;
    transform : translateX(-50%);
    width : 19px;
  }
  .str-header-02 .language-wrapper .language > .text {
    color : #709bb0;
    display : block;
    font-family : 'Dosis', sans-serif;
    font-size : 1.3rem;
    padding-top : 26px;
    position : relative;
    text-align : center;
  }
  .str-header-02 .language-wrapper .language > .text::before,
  .str-header-02 .language-wrapper .language > .text::after {
    border : 2px solid #709bb0;
    border-radius : 50%;
    content : '';
    display : block;
    position : absolute;
    left : 50%;
    top : 5px;
    transform : translateX(-50%);
  }
  .str-header-02 .language-wrapper .language > .text::before {
    height : 22px;
    width : 22px;
  }
  .str-header-02 .language-wrapper .language > .text::after {
    height : 22px;
    width : 11px;
  }
  .str-header-02 .search-wrapper {
    background-color : #709bb0;
    display : none;
    left : 0;
    padding : 15px;
    top : 100%;
    width : 100%;
  }
  .str-header-02 .search-wrapper .search-box {
    background-color : #fff;
    padding : 8px 15px;
  }
  .str-header-02 .search-wrapper .search-box .search-input {
    font-size : 1.6rem;
    flex : 1 1 auto;
    height : 24px;
    line-height : 1;
  }
  .str-header-02 .search-wrapper .search-box .search-button {
    height : 18px;
    width : 18px;
  }
  .str-header-02 .search-wrapper .search-box .search-button > .text {
    height : 18px;
    width : 18px;
  }
  .str-header-02 .search-wrapper .search-box .search-button > .text::before {
    height : 15px;
    width : 15px;
  }
  .str-header-02 .search-wrapper .search-box .search-button > .text::after {
    height : 7px;
  }
  .str-header-02 .global-nav {
    background-color : #4b596e;
    left : 0;
    margin-top : 70px;
    position : absolute;
    top : 100%;
    width : 100%;
  }
  .str-header-02 .global-nav > li + li {
    border-top : 1px solid #ccc;
  }
  .str-header-02 .global-nav > li > a {
    color : #fff;
    display : block;
    font-weight : bold;
    padding : 17px 40px 17px 15px;
    position : relative;
    text-decoration : none;
  }
  .str-header-02 .global-nav > li > a::after {
    background-image : url(../images/ico_arrow_02.png);
    background-size : contain;
    content : '';
    display : block;
    height : 14px;
    position : absolute;
    right : 15px;
    transform : translateY(-50%);
    transition : transform .3s;
    top : 50%;
    width : 9px;
  }
  .str-header-02 .global-nav > li > a > .icon-window {
    display : none;
  }
  .str-header-02 .global-nav > li > a:not(:only-child)::after {
    transform-origin : center;
    transform : translateY(-50%) rotate(90deg);
  }
  .str-header-02 .global-nav > li > a:not(:only-child).is-open::after {
    transform : translateY(-50%) rotate(-90deg);
  }
  [lang="en"] .str-header-02 .language-wrapper {
    padding-right : 19px;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner {
    display : block;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner .header-nav {
    display : block;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner .global-nav-button {
    display : none;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner .search-wrapper {
    display : block;
    position : static;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner .global-nav {
    margin-top : 0;
    position : static;
  }
  .js-on header .str-header-02 .lyt-inner .global-nav {
    display : none;
  }
}

@media screen and (min-width: 813px) {
  .str-header-02 .lyt-inner {
    min-height : 106px;
  }
  .str-header-02 .logo {
    padding-left : 10px;
  }
  .str-header-02 .logo > a > img {
    width : 241px;
  }
  .str-header-02 .header-nav {
    display : block;
    margin-top : 15px;
    padding-right : 10px;
    width : 75%;
  }
  .str-header-02 .language-wrapper .select-language {
    display : flex;
    justify-content : flex-end;
  }
  .str-header-02 .language-wrapper .select-language > li {
    min-width : 29px;
  }
  .str-header-02 .language-wrapper .select-language > li:first-child {
    border-radius : 3px 0 0 3px;
    overflow : hidden;
  }
  .str-header-02 .language-wrapper .select-language > li:last-child {
    border-radius : 0 3px 3px 0;
    overflow : hidden;
  }
  .str-header-02 .language-wrapper .select-language > li > a {
    background-color : #eceef1;
    color : #666;
    display : block;
    font-size : 1.2rem;
    padding : 4px 7px;
    text-align : center;
    text-decoration : none;
    transition : background-color .3s;
  }
  .str-header-02 .language-wrapper .select-language > li > a[aria-current="true"],
  .str-header-02 .language-wrapper .select-language > li > a:hover,
  .str-header-02 .language-wrapper .select-language > li > a:focus {
    background-color : #598ba3;
    color : #fff;
  }
  .str-header-02 .language-wrapper .select-language > li > a > .text {
    font-family : 'Frank Ruhl Libre', serif;
    display : inline;
  }
  .str-header-02 .search-wrapper {
    display : block;
    position : relative;
  }
  .str-header-02 .search-wrapper .search-box {
    max-width : 215px;
    padding-top : 5px;
    position : absolute;
    right : 90px;
    top : -30px;
    width : 100%;
  }
  .str-header-02 .search-wrapper .search-box .search-input {
    width : 100%;
  }
  .str-header-02 .search-wrapper .search-box .search-button {
    height : 14px;
    width : 14px;
  }
  .str-header-02 .global-nav-wrapper .global-nav-button {
    display : none;
  }
  .str-header-02 .global-nav-wrapper .global-nav {
    display : flex !important;
    justify-content : flex-end;
    margin-top : 3px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li > a {
    color : #404a4f;
    display : block;
    font-size : 1.4rem;
    padding : 20px;
    position : relative;
    text-decoration : none;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li > a::after {
    bottom : 10px;
    content : '';
    display : block;
    height : 3px;
    left : 0;
    margin : 0 auto;
    opacity : 0;
    position : absolute;
    right : 0;
    width : 0;
    transition : opacity .3s, width .3s;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li > a:hover::after,
  .str-header-02 .global-nav-wrapper .global-nav > li > a:focus::after {
    background-color : #164182;
    opacity : 1;
    width : 100%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li > a .icon-window {
    margin-left : 7px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child {
    border-top : 1px solid #ccc;
    box-shadow : 0 5px 10px 0 rgba(0, 0, 0, .16);
    left : 0;
    position : absolute;
    overflow : hidden;
    top : 100%;
    width : 100%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title {
    margin : 0 auto;
    max-width : 1210px;
    padding : 0 15px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a {
    display : inline-block;
    font-size : 1.7rem;
    padding : 25px 10px 25px 35px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a:hover,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a:focus {
    text-decoration : underline;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a::before,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a::after {
    content : '';
    display : block;
    position : absolute;
    left : 0;
    top : 50%;
    transform : translateY(-50%);
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a::before {
    background-color : #043d84;
    border-radius : 50%;
    height : 17px;
    width : 17px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-title > a::after {
    background-image : none;
    border-bottom : 1px solid #fff;
    border-right : 1px solid #fff;
    height : 6px;
    width : 6px;
    transform-origin : center;
    transform : translateY(-50%) rotate(-45deg);
    margin : 0 0 0 5px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-content {
    display : flex;
    margin : 0 auto;
    max-width : 1210px;
    padding : 20px 15px 30px;
    position : relative;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .index-content::before {
    background-color : #709bb0;
    content : '';
    display : block;
    height : 1px;
    opacity : .2;
    position : absolute;
    top : 0;
    left : -50%;
    width : 1000%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame {
    border-top : none;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame .purpose {
    font-size : 1.7rem;
    padding : 10px 0 25px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about {
    flex : 0 1 570px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list {
    display : flex;
    flex-wrap : wrap;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li {
    border-top : none;
    margin : 15px 0 0 2.456%;
    width : 31.578%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li:nth-child(-n+3) {
    margin-top : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a {
    display : block;
    padding : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a::after {
    content : none;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a .text {
    padding : 10px 0 10px 30px;
    position : relative;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a .text::before,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a .text::after {
    content : '';
    display : block;
    position : absolute;
    left : 0;
    top : 50%;
    transform : translateY(-50%);
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a .text::before {
    background-color : #043d84;
    border-radius : 50%;
    height : 17px;
    width : 17px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about .page-list > li > a .text::after {
    background-image : none;
    border-bottom : 1px solid #fff;
    border-right : 1px solid #fff;
    height : 6px;
    width : 6px;
    transform-origin : center;
    transform : translateY(-50%) rotate(-45deg);
    margin : 0 0 0 5px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about + .basic-frame {
    flex : 0 1 580px;
    margin-left : 30px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about + .basic-frame .page-list {
    display : flex;
    flex-wrap : wrap;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about + .basic-frame .page-list > li {
    margin : 8px 0 0 1.379%;
    width : 32.413%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about + .basic-frame .page-list > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._about + .basic-frame .page-list > li:nth-child(-n+3) {
    margin-top : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business {
    flex : 0 1 780px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business._narrow {
    flex : 0 1 180px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business._narrow + .basic-frame {
    flex : 0 1 370px;
    padding-top : 10px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business._narrow + .basic-frame .page-list > li {
    margin : 8px 0 0 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business._narrow + .basic-frame .page-list > li:first-child {
    margin-top : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list {
    padding : 0;
    column-gap : 10px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list > li {
    width : 48%;
    background-color : #fff;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list > li > a {
    padding : 7px 10px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list > li > a .image > img {
    width : 90px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list._col3 > li {
    margin : 16px 0 0 2.464%;
    width : 31.690%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list._col3 > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business .page-list._col3 > li > a {
    font-size : 1.4rem;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame._business + .basic-frame {
    flex : 0 1 370px;
    margin-left : 30px;
    padding-top : 60px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame + .feature-frame {
    margin-left : 30px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame a .image {
    position : relative;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame a .image::before {
    background-color : transparent;
    content : '';
    display : block;
    height : 100%;
    left : 0;
    position : absolute;
    top : 0;
    transition : background-color .3s;
    width : 100%;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame a:hover .image::before,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .feature-frame a:focus .image::before {
    background-color : #1d242e;
    opacity : .7;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list {
    border-top : none;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li {
    border : none;
    width : 100%;
    background-color : #fff;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li + li {
    margin-top : 10px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a {
    color : #043d84;
    display : flex;
    flex-direction : column;
    font-size : 1.5rem;
    height : 100%;
    line-height : 1.25;
    justify-content : center;
    min-height : 62px;
    padding : 15px 10px 15px 35px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a:hover,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a:focus {
    color : #cfd3d8;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a:hover::before,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a:focus::before {
    background-color : #cfd3d8;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a::before,
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a::after {
    content : '';
    display : block;
    position : absolute;
    left : 10px;
    top : 50%;
    transform : translateY(-50%);
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a::before {
    background-color : #043d84;
    border-radius : 50%;
    height : 17px;
    width : 17px;
  }
  .str-header-02 .global-nav-wrapper .global-nav > li .navi-child .basic-frame .page-list > li > a::after {
    background-image : none;
    border-bottom : 1px solid #fff;
    border-right : 1px solid #fff;
    height : 6px;
    width : 6px;
    transform-origin : center;
    transform : translateY(-50%) rotate(-45deg);
    margin : 0 0 0 5px;
  }
  header:not(.js-menu) .str-header-02 .lyt-inner {
    display : block;
  }
  header:not(.js-menu) .str-header-02 .header-nav {
    width : auto;
  }
  header:not(.js-menu) .str-header-02 .global-nav-wrapper .global-nav {
    display : block;
  }
  header:not(.js-menu) .str-header-02 .global-nav-wrapper .navi-child {
    position : static;
  }
  .js-on header .str-header-02 .lyt-inner .navi-child {
    display : none;
  }
}

.str-footer .lyt-outer {
  background-color : #043d84;
}

.str-footer .lyt-inner {
  margin : 0 auto;
  max-width : 1200px;
  padding : 30px 10px 15px;
  text-align : center;
}

.str-footer .lyt-inner > .copyright:first-child {
  margin-top : 0;
}

.str-footer .footer-link,
.str-footer .group-list {
  display : flex;
  flex-wrap : wrap;
  justify-content : center;
  line-height : 1.6;
  text-align : left;
}

.str-footer .footer-link > li,
.str-footer .group-list > li {
  padding : 0 8px;
}

.str-footer .footer-link > li > a,
.str-footer .group-list > li > a {
  color : #fff;
  font-size : 1.2rem;
  text-decoration : none;
}

.str-footer .footer-link > li > a:hover,
.str-footer .footer-link > li > a:focus,
.str-footer .group-list > li > a:hover,
.str-footer .group-list > li > a:focus {
  text-decoration : underline;
}

.str-footer .footer-link {
  padding : 0 30px;
}

.str-footer .group {
  margin-top : 15px;
}

.str-footer .group > .title {
  color : #fff;
  font-size : 1.3rem;
  font-weight : 600;
}

.str-footer .copyright {
  color : #fff;
  display : block;
  font-size : 1rem;
  margin-top : 15px;
  padding-top : 15px;
  position : relative;
}

.str-footer .copyright::before {
  background-color : #bbd4e0;
  background-image : linear-gradient(0deg, #b2d9de 0%, #bbd4e0 45%, #b2d9de 100%);
  content : '';
  display : block;
  height : 1px;
  position : absolute;
  opacity : .302;
  width : 100%;
  top : 0;
}

.str-footer .copyright:only-child::before {
  content : none;
}

@media screen and (min-width: 813px) {
  .str-footer .lyt-inner {
    padding-top : 40px;
  }
  .str-footer .footer-link > li,
  .str-footer .group-list > li {
    padding : 0 20px;
  }
  .str-footer .footer-link > li > a,
  .str-footer .group-list > li > a {
    font-size : 1.3rem;
  }
  .str-footer .group {
    margin-top : 30px;
  }
  .str-footer .group > .title {
    font-size : 1.5rem;
  }
  .str-footer .group .group-list {
    margin-top : 10px;
  }
  .str-footer .copyright {
    font-size : 1.2rem;
    margin-top : 25px;
  }
}

main > .str-container:first-of-type .lyt-inner {
  margin-top : 15px;
  padding-top : 0;
}

main > .str-container:first-of-type .lyt-inner > .mod-heading-01:first-child {
  margin-top : 45px;
}

main > .str-container:last-of-type .lyt-inner {
  padding-bottom : 70px;
}

@media screen and (min-width: 813px) {
  main > .str-container:first-of-type .lyt-inner {
    margin-top : 25px;
  }
  main > .str-container:first-of-type .lyt-inner > .mod-heading-01:first-child {
    margin-top : 60px;
  }
  main > .str-container:last-of-type .lyt-inner {
    padding-bottom : 90px;
  }
}

.str-container-wrapper._with-bg-gray {
  background-color : #eceef1;
}

.str-container .lyt-inner {
  margin : 0 auto;
  max-width : 1180px;
  padding : 40px 15px;
}

.str-container .lyt-inner > [class^="mod-"]:first-child {
  margin-top : 0;
}

.str-container + .str-container .lyt-inner {
  padding-top : 0;
}

.str-container._with-bg-gray .lyt-outer {
  background-color : #eceef1;
}

.str-container._with-bg-gray .lyt-inner {
  padding-top : 40px;
}

.str-container._with-bg-gray + .str-container .lyt-inner {
  padding-top : 40px;
}

.str-container._tight .lyt-inner {
  max-width : 1010px;
}

@media screen and (min-width: 813px) {
  .str-container-wrapper {
    display : flex;
    justify-content : center;
    width : 100%;
  }
  .str-container-wrapper .str-container {
    flex : 0 1 50%;
    max-width : 590px;
  }
  .str-container-wrapper .str-container:only-child {
    flex : none;
    max-width : none;
    width : 100%;
  }
  .str-container-wrapper .str-container .lyt-inner {
    padding-top : 60px;
  }
  .str-container-wrapper .mod-heading-01 .text {
    text-align : left;
  }
  .str-container-wrapper .mod-heading-01 .text::before {
    left : 0;
    transform : none;
  }
  .str-container-wrapper .mod-text._with-heading {
    text-align : left;
  }
  .str-container .lyt-inner {
    padding : 60px 15px;
  }
  .str-container._with-bg-gray .lyt-inner {
    padding-top : 60px;
  }
  .str-container._with-bg-gray + .str-container .lyt-inner {
    padding-top : 60px;
  }
}

.breadcrumb-wrapper {
  border-top : 1px solid #ccc;
}

.breadcrumb-wrapper .breadcrumb {
  display : flex;
  flex-wrap : wrap;
  margin : 0 auto;
  max-width : 1200px;
  padding : 5px 10px;
}

.breadcrumb-wrapper .breadcrumb > li > a {
  color : #043d84;
  display : inline-block;
  font-size : 1.2rem;
  padding-left : 30px;
  position : relative;
  text-decoration : none;
}

.breadcrumb-wrapper .breadcrumb > li > a[aria-current="true"] {
  color : #666;
}

.breadcrumb-wrapper .breadcrumb > li > a::before {
  content : '>';
  display : block;
  height : 10px;
  left : 10px;
  position : absolute;
  top : -2px;
  width : 10px;
}

.breadcrumb-wrapper .breadcrumb > li:first-child > a {
  padding-left : 0;
}

.breadcrumb-wrapper .breadcrumb > li:first-child > a::before {
  content : none;
}

/* Module
 * ======================================================================== */
/* ----------------------------------------------------------------------------
* PC/SP表示調整
* ------------------------------------------------------------------------- */
@media screen and (max-width: 813px) {
  .sp-hide {
    display : none !important;
  }
}

@media screen and (min-width: 813px) {
  .pc-hide {
    display : none !important;
  }
}

/* ----------------------------------------------------------------------------
* 左寄せ・中央寄せ・右寄せ
* ------------------------------------------------------------------------- */
._left {
  text-align : left !important;
}

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

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

.icon-window {
  margin-left : 4px;
  width : 10px;
}

.icon-pdf {
  margin : 0 0 -2px 4px;
  width : 14px;
}

.scroll-top {
  bottom : 95px;
  height : 0;
  margin : 0 auto;
  max-width : 1200px;
  position : -webkit-sticky;
  position : sticky;
  top : 0;
  z-index : 200;
}

.scroll-top > a {
  background-color : rgba(255, 255, 255, .8);
  border : 1px solid rgba(112, 155, 176, .18);
  display : block;
  font-size : 0;
  height : 55px;
  margin : 0 10px 0 auto;
  position : relative;
  top : -30px;
  transition : all .3s;
  width : 60px;
}

.scroll-top > a:hover,
.scroll-top > a:focus {
  background-color : rgba(4, 61, 132, .8);
  border-color : rgba(204, 204, 204, .6);
}

.scroll-top > a:hover::before,
.scroll-top > a:focus::before {
  background-color : #fff;
}

.scroll-top > a:hover::after,
.scroll-top > a:focus::after {
  border-color : #fff;
}

.scroll-top > a::before,
.scroll-top > a::after {
  content : '';
  display : block;
  left : 50%;
  position : absolute;
  top : 50%;
  transform : translate(-50%, -50%);
}

.scroll-top > a::before {
  background-color : #043d84;
  height : 30px;
  width : 2px;
}

.scroll-top > a::after {
  border-right : 2px solid #043d84;
  border-top : 2px solid #043d84;
  height : 19px;
  width : 19px;
  transform-origin : center;
  transform : rotate(-45deg) translate(10%, -80%);
}

@media screen and (min-width: 813px) {
  .scroll-top > a {
    height : 73px;
    width : 77px;
  }
}

.tab-list {
  border-bottom : 2px solid #404a4f;
  display : flex;
  margin-top : 20px;
}

.tab-list .tab {
  display : flex;
  width : 100%;
}

.tab-list .tab + .tab {
  padding-left : 4px;
}

.tab-list .tab > a {
  background-color : #eceef1;
  color : #333;
  display : block;
  font-size : 1.3rem;
  padding : 16px 16px 12px;
  text-align : center;
  text-decoration : none;
  width : 100%;
}

.tab-list .tab > a.is-selected,
.tab-list .tab > a:hover,
.tab-list .tab > a:focus {
  background-color : #404a4f;
  color : #fff;
}

@media screen and (min-width: 813px) {
  .tab-list {
    border-bottom-width : 3px;
    margin-top : 40px;
  }
  .tab-list .tab + .tab {
    padding-left : 20px;
  }
  .tab-list .tab > a {
    font-size : 1.5rem;
    padding : 25px 25px 21px;
  }
}

.main-visual-wrapper .main-visual {
  display : flex;
  flex-direction : column;
  position : relative;
  width : 100%;
}

.main-visual-wrapper .slogan-box,
.main-visual-wrapper .page-title-box {
  align-items : center;
  display : flex;
  min-height : 250px;
  margin : 0 auto;
  max-width : 1400px;
  width : 100%;
}

.main-visual-wrapper .slogan-box > .inner,
.main-visual-wrapper .page-title-box > .inner {
  background-color : rgba(255, 255, 255, .96);
  display : inline-flex;
  flex-direction : column;
  justify-content : center;
  padding : 15px 5px 15px 20px;
  position : relative;
  z-index : 1;
}

.main-visual-wrapper .slogan-box > .inner::before {
  background-image : linear-gradient(90deg, #deedee 0%, #f5ffff 36%, #f4edf3 67%, #f5f9f9 100%);
  content : '';
  display : block;
  height : 100%;
  left : 0;
  position : absolute;
  opacity : .37;
  top : 0;
  width : 100%;
  z-index : -1;
}

.main-visual-wrapper .slogan,
.main-visual-wrapper .page-title {
  color : #404a4f;
  font-family : 'Noto Serif JP', sans-serif;
  font-size : 1.8rem;
  letter-spacing : .2em;
}

.main-visual-wrapper p {
  margin : 10px 0;
  text-align : left;
}

.main-visual-wrapper p > .phone {
  padding-left : 20px;
}

.main-visual-wrapper p > .small-text {
  font-size : 1rem;
}

.main-visual-wrapper p > .tag {
  background-color : #b9c8da;
  color : #1d242e;
  min-width : 122px;
  padding : 3px 7px;
  text-align : center;
  margin-right : 10px;
}

.main-visual-wrapper p br {
  display : none;
}

.main-visual-wrapper p br.display-pc-br {
  display : block;
  text-align : left;
}

.main-visual-wrapper p.business-hours {
  font-size : 1.2rem;
}

.main-visual-wrapper .slogan {
  line-height : 1.5;
}

[lang="en"] .main-visual-wrapper .slogan {
  font-size : 1.5rem;
}

.main-visual-wrapper .page-title-box > .inner {
  min-height : 96px;
  padding : 10px 22px;
}

.main-visual-wrapper .page-title-box > .inner .page-title {
  font-weight : normal;
}

.main-visual-wrapper .page-title-box > .inner .sub-text {
  font-family : 'Noto Serif JP', sans-serif;
  font-size : 1.2rem;
  padding-bottom : 10px;
}

.main-visual-wrapper .carousel-wrapper {
  margin-top : -250px;
  width : 100%;
}

.main-visual-wrapper .carousel .image {
  height : 250px;
  overflow : hidden;
  position : relative;
  width : 100%;
}

.main-visual-wrapper .carousel .image img {
  height : 250px;
  left : 50%;
  max-width : none;
  position : absolute;
  top : 0;
  transform : translateX(-50%);
}

.main-visual-wrapper._top .carousel .image img {
  height : 330px;
}

.main-visual-wrapper._top .carousel .image img#helicopter-shot,
.main-visual-wrapper._top .carousel .image img[src$="0acfebd09bc2e6a42534e908c04e1db9.jpg"] {
  left : 25%;
  transform : translateX(-25%);
}

.main-visual-wrapper._carousel-first {
  background-color : #fff;
}

.main-visual-wrapper._carousel-first .page-title-box {
  height : auto;
  justify-content : center;
  min-height : 1px;
}

.main-visual-wrapper._carousel-first .page-title-box .inner {
  background-color : transparent;
  padding : 20px 15px 0;
}

.main-visual-wrapper._carousel-first .page-title-box .inner .page-title {
  min-height : 1px;
}

.main-visual-wrapper._carousel-first .page-title-box .inner .sub-text {
  font-family : "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", 游ゴシック体, "Yu Gothic", YuGothic, Arial, メイリオ, Meiryo, sans-serif;
  padding : 10px 0 0;
}

.main-visual-wrapper._carousel-first .carousel-wrapper {
  margin-top : 0;
  position : static;
}

.main-visual-wrapper._carousel-first .caption-box {
  align-items : center;
  display : flex;
  margin : 0 auto;
  max-width : 1400px;
  height : 250px;
  position : relative;
  z-index : 1;
}

.main-visual-wrapper._carousel-first .caption-box .inner {
  background-color : rgba(255, 255, 255, .9);
  padding : 10px 22px;
}

.main-visual-wrapper._carousel-first .caption-box .inner .caption-title,
.main-visual-wrapper._carousel-first .caption-box .inner .caption {
  display : block;
  font-family : 'Noto Serif JP', sans-serif;
  text-shadow : 0 0 2px #fff;
}

.main-visual-wrapper._carousel-first .caption-box .inner .caption-title {
  font-size : 1.8rem;
  font-weight : normal;
  letter-spacing : .2em;
}

.main-visual-wrapper._carousel-first .caption-box .inner .caption {
  font-size : 1.2rem;
  padding-bottom : 10px;
}

.main-visual-wrapper .indicator-wrapper {
  align-items : center;
  display : flex;
  justify-content : space-between;
  margin-top : 4px;
  padding : 0 25px 5px;
  width : 100%;
}

.main-visual-wrapper .indicator-wrapper .indicator {
  display : flex !important;
  width : 100%;
}

.main-visual-wrapper .indicator-wrapper .indicator > li {
  flex : 1 0 auto;
  padding-right : 4px;
}

.main-visual-wrapper .indicator-wrapper .indicator > li > button {
  display : block;
  font-size : 0;
  padding : 5px 0;
  trantition : background-color .3s;
  width : 100%;
}

.main-visual-wrapper .indicator-wrapper .indicator > li > button:hover::before,
.main-visual-wrapper .indicator-wrapper .indicator > li > button:focus::before,
.main-visual-wrapper .indicator-wrapper .indicator > li > button[aria-selected="true"]::before {
  background-color : #709bb0;
}

.main-visual-wrapper .indicator-wrapper .indicator > li > button::before {
  background-color : #d1d2d3;
  content : '';
  display : block;
  height : 3px;
  width : 100%;
}

.main-visual-wrapper .indicator-wrapper .button-ui {
  height : 21px;
  margin-left : 5px;
  position : relative;
  width : 17px;
}

.main-visual-wrapper .indicator-wrapper .button-ui span {
  display : block;
  font-size : 0;
  left : 50%;
  position : absolute;
  top : 50%;
  transform : translate(-50%, -50%);
}

.main-visual-wrapper .indicator-wrapper .button-ui span::before {
  border-left : 2px solid #709bb0;
  border-right : 2px solid #709bb0;
  content : '';
  display : block;
  height : 11px;
  width : 7px;
}

.main-visual-wrapper .indicator-wrapper .button-ui.is-push span::before {
  border : 5px solid transparent;
  border-left : 8px solid #709bb0;
  height : 0;
  transform : translateX(4px);
  width : 0;
}

.main-visual-wrapper + .str-container .lyt-inner {
  margin-top : 20px;
  padding-top : 0;
}

[lang="en"] .main-visual-wrapper .slogan-box > .inner {
  padding : 15px 5px;
}

@media screen and (min-width: 813px) {
  .main-visual-wrapper {
    background-color : #eceef1;
  }
  .main-visual-wrapper .main-visual {
    min-height : 450px;
    margin : 0 auto;
    padding-bottom : 0;
    overflow : hidden;
  }
  .main-visual-wrapper .slogan-box > .inner,
  .main-visual-wrapper .page-title > .inner {
    box-shadow : 0 0 16px 0 rgba(0, 0, 0, .02);
    left : 60px;
    padding : 50px;
  }
  .main-visual-wrapper .slogan-box {
    height : 570px;
  }
  .main-visual-wrapper .slogan-box > .inner::before {
    content : none;
  }
  .main-visual-wrapper .slogan,
  .main-visual-wrapper .page-title {
    color : #333;
    font-size : 3.4rem;
    letter-spacing : .2em;
    line-height : 2.264;
    padding-left : 1px;
  }
  .main-visual-wrapper p {
    margin-bottom : 0 0 10px 0;
    text-align : center;
  }
  .main-visual-wrapper p > .phone {
    padding-left : 20px;
  }
  .main-visual-wrapper p > .small-text {
    font-size : 1.2rem;
  }
  .main-visual-wrapper p > .tag {
    background-color : #b9c8da;
    color : #1d242e;
    min-width : 122px;
    padding : 3px 7px;
    text-align : center;
    margin-right : 10px;
  }
  .main-visual-wrapper p br {
    display : none;
  }
  .main-visual-wrapper p.business-hours {
    font-size : 1.4rem;
  }
  [lang="en"] .main-visual-wrapper .slogan {
    font-size : 2.8rem;
  }
  .main-visual-wrapper .page-title-box {
    height : 450px;
    padding-right : 110px;
  }
  .main-visual-wrapper .page-title-box > .inner {
    left : 110px;
    margin-right : 110px;
    margin-top : -20px;
    min-height : 180px;
    min-width : 400px;
    padding : 50px 40px;
  }
  .main-visual-wrapper .page-title-box > .inner .sub-text {
    display : block;
    font-size : 1.5rem;
    letter-spacing : .3em;
    line-height : 2;
  }
  .main-visual-wrapper .carousel-wrapper {
    margin-top : -450px;
  }
  .main-visual-wrapper .carousel {
    height : 450px;
    text-align : center;
  }
  .main-visual-wrapper .carousel .image {
    height : 450px;
  }
  .main-visual-wrapper .carousel .image img {
    height : 450px;
  }
  .main-visual-wrapper._top .main-visual {
    min-height : 570px;
  }
  .main-visual-wrapper._top .carousel {
    height : 570px;
  }
  .main-visual-wrapper._top .carousel .image {
    height : 570px;
  }
  .main-visual-wrapper._top .carousel .image img {
    height : 570px;
  }
  .main-visual-wrapper._top .carousel-wrapper {
    margin-top : -570px;
  }
  .main-visual-wrapper._carousel-first .page-title-box {
    padding-right : 0;
  }
  .main-visual-wrapper._carousel-first .page-title-box .inner {
    align-items : center;
    display : flex;
    flex-direction : row;
    margin : 0 auto;
    padding : 20px 15px 0;
    position : static;
    width : 100%;
  }
  .main-visual-wrapper._carousel-first .page-title-box .inner .page-title,
  .main-visual-wrapper._carousel-first .page-title-box .inner .sub-text {
    flex : 0 1 50%;
  }
  .main-visual-wrapper._carousel-first .page-title-box .inner .page-title > img {
    display : block;
  }
  .main-visual-wrapper._carousel-first .page-title-box .inner .sub-text {
    padding : 0 0 0 40px;
  }
  .main-visual-wrapper._carousel-first .caption-box {
    height : 450px;
  }
  .main-visual-wrapper._carousel-first .caption-box .inner {
    padding : 40px;
  }
  .main-visual-wrapper._carousel-first .caption-box .inner .caption-title,
  .main-visual-wrapper._carousel-first .caption-box .inner .caption {
    text-align : left;
  }
  .main-visual-wrapper._carousel-first .caption-box .inner .caption-title {
    font-size : 3.4rem;
  }
  .main-visual-wrapper._carousel-first .caption-box .inner .caption {
    font-size : 1.5rem;
  }
  .main-visual-wrapper .indicator-wrapper {
    bottom : 30px;
    justify-content : flex-end;
    left : 50%;
    max-width : 1200px;
    padding : 0 10px;
    position : absolute;
    transform : translateX(-50%);
  }
  .main-visual-wrapper .indicator-wrapper .indicator {
    align-self : stretch;
    justify-content : flex-end;
  }
  .main-visual-wrapper .indicator-wrapper .indicator > li {
    align-items : center;
    background-color : rgba(37, 28, 28, .46);
    display : flex;
    flex : 0 1 70px;
  }
  .main-visual-wrapper .indicator-wrapper .indicator > li:first-child {
    border-radius : 10px 0 0 10px;
    padding-left : 15px;
  }
  .main-visual-wrapper .indicator-wrapper .button-ui {
    background-color : rgba(37, 28, 28, .46);
    border-radius : 0 10px 10px 0;
    margin-left : 0;
    padding : 5px 15px;
  }
  .main-visual-wrapper .indicator-wrapper .button-ui:hover span::before,
  .main-visual-wrapper .indicator-wrapper .button-ui:focus span::before {
    border-color : #598ba3;
  }
  .main-visual-wrapper .indicator-wrapper .button-ui span::before {
    border-color : #fff;
  }
  .main-visual-wrapper .indicator-wrapper .button-ui.is-push:hover span::before,
  .main-visual-wrapper .indicator-wrapper .button-ui.is-push:focus span::before {
    border-color : transparent;
    border-left-color : #598ba3;
  }
  .main-visual-wrapper .indicator-wrapper .button-ui.is-push span::before {
    border-left-color : #fff;
  }
  .main-visual-wrapper + .str-container .lyt-inner {
    margin-top : 40px;
  }
  [lang="en"] .main-visual-wrapper .slogan-box > .inner {
    padding : 50px 25px;
  }
  header:not(.js-menu) + main .main-visual-wrapper .carousel {
    height : auto;
  }
}

@media screen and (min-width: 1400px) {
  .main-visual-wrapper .carousel .image img {
    height : auto;
    width : 100%;
  }
  .main-visual-wrapper._top .carousel .image img {
    height : auto;
  }
}

.slick-slider {
  position : relative;
  display : block;
  box-sizing : border-box;
  -webkit-touch-callout : none;
  -webkit-user-select : none;
  -khtml-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);
  -moz-transform : translate3d(0, 0, 0);
  -ms-transform : translate3d(0, 0, 0);
  -o-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-nest {
  display : none;
}

.dialog-wrapper {
  align-items : center;
  display : none;
  height : 100%;
  justify-content : center;
  opacity : 0;
  padding : 15px;
  position : absolute;
  top : 0;
  width : 100%;
  z-index : 1000;
}

.dialog-wrapper.is-active {
  display : flex;
}

.dialog-wrapper.is-show {
  opacity : 1;
}

.dialog-wrapper::before {
  background-color : rgba(64, 74, 79, .6);
  content : '';
  display : block;
  height : 100%;
  left : 0;
  position : fixed;
  top : 0;
  width : 100%;
}

.dialog {
  background-color : #fff;
  max-width : 900px;
  padding : 30px 15px;
  position : relative;
  width : 100%;
  z-index : 1100;
}

.dialog > .close-button {
  background-color : #043d84;
  border-radius : 50%;
  display : block;
  font-size : 0;
  height : 30px;
  position : absolute;
  right : -13px;
  top : -13px;
  width : 30px;
}

.dialog > .close-button::before,
.dialog > .close-button::after {
  background-color : #fff;
  content : '';
  display : block;
  height : 2px;
  left : 50%;
  position : absolute;
  top : 50%;
  transform : translate(-50%, -50%) rotate(45deg);
  transform-origin : center;
  width : 15px;
}

.dialog > .close-button::after {
  transform : translate(-50%, -50%) rotate(-45deg);
}

.dialog > .image {
  text-align : center;
}

.dialog-content {
  display : none;
}

.dialog-content > [class^="mod-"]:first-child {
  margin-top : 0;
}

header:not(.js-menu) + main .dialog-content {
  display : block;
}

.dialog {
  display : none;
}

.dialog.is-active {
  display : block;
}

.dialog .dialog-content {
  display : block;
}

@media screen and (min-width: 813px) {
  .dialog {
    padding : 30px;
  }
  .dialog > .close-button {
    height : 40px;
    width : 40px;
  }
  .dialog > .close-button::before,
  .dialog > .close-button::after {
    width : 25px;
  }
  .dialog .dialog-content {
    padding : 30px;
  }
}

.top-news-wrapper._pages {
  background-color : #eceef1;
}

.top-news-wrapper._pages .top-news {
  padding : 10px 15px;
}

.top-news {
  padding : 15px 15px 0;
}

.top-news .title {
  color : #fff;
  background-color : #c53b3b;
  display : inline-block;
  font-size : 1.1rem;
  font-style : normal;
  font-weight : bold;
  letter-spacing : .05em;
  line-height : 1;
  padding : 5px 8px;
  vertical-align : middle;
}

.top-news .list > li strong {
  color : #525252;
  font-size : 1.2rem;
  font-weight : normal;
}

.top-news .list > li > a {
  color : #222;
  display : block;
  font-size : 1.4rem;
  margin-top : 10px;
  padding-left : 25px;
  position : relative;
  text-decoration : none;
}

.top-news .list > li > a:hover,
.top-news .list > li > a:focus {
  text-decoration : underline;
}

.top-news .list > li > a > img {
  margin-left : 5px;
  vertical-align : middle;
}

.top-news .list > li > a::before,
.top-news .list > li > a::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 2px;
}

.top-news .list > li > a::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.top-news .list > li > a::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

@media screen and (min-width: 813px) {
  .top-news-wrapper._pages {
    margin-top : 0;
  }
  .top-news-wrapper._pages .top-news {
    padding : 35px 10px;
  }
  .top-news-wrapper._pages + .str-container .lyt-inner {
    padding-top : 80px;
  }
  .top-news {
    display : flex;
    margin : 0 auto;
    max-width : 1200px;
    padding : 35px 10px;
  }
  .top-news .title {
    align-self : flex-start;
    font-size : 1.2rem;
    padding : 7px 15px;
  }
  .top-news .list {
    margin : 1px 0 0 18px;
  }
  .top-news .list > li strong {
    font-size : 1.5rem;
  }
  .top-news .list > li > a {
    font-size : 1.5rem;
    font-weight : bold;
  }
  .top-news .list > li:first-child > a {
    margin-top : 0;
  }
}

.section-title {
  text-align : center;
}

.section-title .deco-letter {
  color : #222;
  display : block;
  font-family : 'Frank Ruhl Libre', serif;
  font-size : 3rem;
  font-weight : normal;
  letter-spacing : .1em;
}

.section-title .title {
  color : #222;
  display : block;
  font-size : 1.2rem;
  font-style : normal;
  font-weight : bold;
  letter-spacing : .05em;
  margin-top : 5px;
}

@media screen and (min-width: 813px) {
  .section-title .deco-letter,
  .section-title .title {
    text-shadow : 0 2px 10px rgba(255, 255, 255, .9);
  }
  .section-title .deco-letter {
    font-size : 4rem;
  }
  .section-title .title {
    font-size : 1.6rem;
  }
}

.intro-wrapper {
  margin-top : 12px;
}

main > .intro-box:last-of-type .lyt-inner {
  padding-bottom : 70px;
}

.intro-box .lyt-inner {
  margin-top : 2px;
  padding : 30px 15px 40px;
}

.intro-box .intro .intro-text {
  font-size : 1.5rem;
  letter-spacing : .05em;
  margin-top : 20px;
  text-align : center;
}

.intro-box .intro .mod-button {
  margin-top : 25px;
}

.intro-box._company .lyt-outer {
  background-image : url(../../images/index-intro_01_sp.jpg);
  background-position : center top;
  background-size : cover;
}

.intro-box._service .lyt-outer {
  background-image : url(../../images/index-intro_02_sp.jpg);
  background-position : center top;
  background-size : cover;
}

.intro-box._press .lyt-outer,
.intro-box._greetings .lyt-outer {
  position : relative;
  text-align : center;
}

.intro-box._press .lyt-outer::before,
.intro-box._greetings .lyt-outer::before {
  background-image : linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, white 100%), linear-gradient(90deg, #deedee 0%, #e3f8f9 36%, #f4edf3 67%, #f5f9f9 100%);
  content : '';
  display : block;
  height : 375px;
  left : 0;
  position : absolute;
  top : 0;
  width : 100%;
  z-index : -1;
}

.intro-box._press .news-release,
.intro-box._greetings .news-release {
  margin-top : 50px;
}

.intro-box._press .news-release .title,
.intro-box._greetings .news-release .title {
  font-size : 1.6rem;
  font-style : normal;
  font-weight : bold;
}

.intro-box._press .news-release .mod-list-news,
.intro-box._greetings .news-release .mod-list-news {
  margin-top : 7px;
  text-align : left;
}

.intro-box._press .mod-link,
.intro-box._greetings .mod-link {
  margin-top : 26px;
}

.intro-box._greetings .intro {
  text-align : left;
}

.intro-box._news .lyt-outer,
.intro-box._overview .lyt-outer {
  background-color : #fafafa;
}

.intro-box._news .mod-link,
.intro-box._overview .mod-link {
  margin-top : 26px;
}

@media screen and (min-width: 813px) {
  .intro-wrapper {
    display : flex;
    margin-top : 0;
  }
  .intro-wrapper .intro-box {
    flex : 1 0 auto;
    max-width : 50%;
  }
  .intro-wrapper .intro-box .lyt-outer {
    min-height : 358px;
  }
  main > .intro-box:last-of-type .lyt-inner {
    padding-bottom : 85px;
  }
  .intro-box .lyt-inner {
    margin : 0 auto;
    max-width : 1200px;
    padding : 60px 10px 55px;
  }
  .intro-box .lyt-inner .intro .intro-text {
    margin-top : 35px;
    text-shadow : 0 2px 10px rgba(255, 255, 255, .9);
  }
  .intro-box .lyt-inner .intro .mod-button {
    font-size : 1.6rem;
    margin : 35px auto 0;
    max-width : 392px;
  }
  .intro-box .lyt-inner .intro .mod-list-news {
    max-width : 980px;
    margin : auto;
  }
  .intro-box._company .lyt-outer {
    background-image : url(../../images/index-intro_01_pc.jpg);
    background-position : center top;
    background-size : cover;
  }
  .intro-box._service .lyt-outer {
    background-image : url(../../images/index-intro_02_pc.jpg);
    background-size : cover;
  }
  .intro-box._press .lyt-outer::before {
    height : 450px;
  }
  .intro-box._press .lyt-inner {
    padding-top : 50px;
    text-align : center;
  }
  .intro-box._press .news-release {
    margin-top : 60px;
  }
  .intro-box._press .news-release .mod-list-news {
    margin-top : 10px;
  }
  .intro-box._news .lyt-inner .mod-list-news {
    margin-top : 35px;
  }
  .intro-box._news .lyt-inner .mod-link {
    margin-top : 20px;
  }
  .intro-box._recruit .lyt-inner {
    padding-top : 50px;
  }
}

.contact-info {
  font-size : 1.5rem;
}

.contact-info .number {
  display : flex;
  margin-top : 5px;
}

.contact-info .number dt {
  font-weight : bold;
}

.contact-info .number dt::after {
  content : '：';
}

.site-search-wrapper {
  margin : 30px auto 0;
}

.site-search-wrapper .site-search-box {
  border : 1px solid #b2d9de;
  align-items : center;
  display : flex;
  margin : 0 auto;
  max-width : 422px;
  padding : 10px;
  position : relative;
}

.site-search-wrapper .site-search-box .search-input {
  border : none;
  font-size : 1.6rem;
  flex : 1 1 auto;
}

.site-search-wrapper .site-search-box .search-button {
  cursor : pointer;
  padding : 0;
}

.site-search-wrapper .site-search-box .search-button > .text {
  display : block;
  font-size : 0;
  height : 20px;
  position : relative;
  width : 20px;
}

.site-search-wrapper .site-search-box .search-button > .text::before,
.site-search-wrapper .site-search-box .search-button > .text::after {
  content : '';
  display : block;
  position : absolute;
}

.site-search-wrapper .site-search-box .search-button > .text::before {
  border : 2px solid #83b6cc;
  border-left-color : #b2d8de;
  border-top-color : #b2d8de;
  border-radius : 50%;
  height : 17px;
  left : 0;
  top : 0;
  width : 17px;
}

.site-search-wrapper .site-search-box .search-button > .text::after {
  background-color : #83b6cc;
  border-radius : 2px;
  bottom : 0;
  height : 7px;
  right : 2px;
  width : 2px;
  transform : rotate(-45deg);
}

@media screen and (min-width: 813px) {
  .site-search-wrapper .site-search-box {
    padding : 13px 10px;
  }
  .site-search-wrapper .site-search-box .search-input {
    font-size : 1.8rem;
  }
  .site-search-wrapper .site-search-box .search-button > .text {
    height : 26px;
    width : 26px;
  }
  .site-search-wrapper .site-search-box .search-button > .text::before {
    border-width : 3px;
    height : 22px;
    width : 22px;
  }
  .site-search-wrapper .site-search-box .search-button > .text::after {
    height : 10px;
    width : 3px;
  }
}

.guide-wrapper {
  background-color : #164182;
  position : -webkit-sticky;
  position : sticky;
  top : 0;
  z-index : 10;
  box-shadow : 0 10px 10px rgba(0, 0, 0, .3);
}

.guide-wrapper > .inner {
  padding : 35px 10px;
  margin : 0 auto;
  max-width : 1200px;
  color : #fff;
}

.guide-wrapper > .inner > .contact {
  align-items : center;
  flex-wrap : wrap;
  justify-content : center;
}

.guide-wrapper > .inner > .contact > p {
  margin-bottom : 10px;
  text-align : center;
}

.guide-wrapper > .inner > .contact > p > a > .phone {
  padding-left : 20px;
  color : #fff;
}

.guide-wrapper > .inner > .contact > p > .small-text {
  font-size : 1.2rem;
}

.guide-wrapper > .inner > .contact > p > .tag {
  background-color : #b9c8da;
  color : #1d242e;
  min-width : 122px;
  padding : 3px 7px;
  text-align : center;
  margin-right : 10px;
}

.guide-wrapper > .inner > .contact > p br {
  display : none;
}

.guide-wrapper > .inner > .contact > p.business-hours {
  font-size : 1.4rem;
}

@media screen and (max-width: 812px) {
  .guide-wrapper > .inner > .contact > p {
    font-size : 1.4rem;
  }
  .guide-wrapper > .inner > .contact > p > .small-text {
    font-size : 1.1rem;
  }
  .guide-wrapper > .inner > .contact > p > a > .phone {
    padding-left : 15px;
  }
  .guide-wrapper > .inner > .contact > p br {
    display : block;
  }
  .guide-wrapper > .inner > .contact > p.business-hours {
    display : none;
  }
}

.guide-wrapper > .inner .button-list {
  display : flex;
  flex-wrap : wrap;
  margin-top : 20px;
  justify-content : center;
}

.guide-wrapper > .inner .button-list > li {
  display : flex;
  width : 100%;
}

.guide-wrapper > .inner .button-list > li + li {
  margin-top : 20px;
}

.guide-wrapper > .inner .button-list .mod-button {
  display : flex;
  width : 100%;
}

.guide-wrapper > .inner .button-list .mod-button .inner {
  width : 100%;
}

@media screen and (max-width: 812px) {
  .guide-wrapper > .inner .button-list .mod-button .inner {
    padding : 5px;
    font-size : 1.4rem;
  }
  .guide-wrapper > .inner .button-list .mod-button .inner::before,
  .guide-wrapper > .inner .button-list .mod-button .inner::after {
    display : none;
  }
  .guide-wrapper > .inner .button-list._mobile-2 > li {
    width : 48.546%;
  }
  .guide-wrapper > .inner .button-list._mobile-2 > li:nth-child(2n) {
    margin-left : 2.906%;
  }
  .guide-wrapper > .inner .button-list._mobile-2 > li:nth-child(-n+2) {
    margin-top : 0;
  }
  .guide-wrapper > .inner .button-list._mobile-3 > li {
    width : 30.990%;
    margin-left : 1.975%;
  }
  .guide-wrapper > .inner .button-list._mobile-3 > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .guide-wrapper > .inner .button-list._mobile-3 > li:nth-child(-n+3) {
    margin-top : 0;
  }
}

@media screen and (min-width: 813px) {
  .guide-wrapper > .inner .button-list {
    margin : 20px auto 0;
    max-width : 980px;
  }
  .guide-wrapper > .inner .button-list._desktop-2 > li,
  .guide-wrapper > .inner .button-list._desktop-3 > li,
  .guide-wrapper > .inner .button-list._desktop-4 > li {
    margin-left : 2.040%;
  }
  .guide-wrapper > .inner .button-list._desktop-2 > li {
    width : 48.979%;
  }
  .guide-wrapper > .inner .button-list._desktop-2 > li:nth-child(2n+1) {
    margin-left : 0;
  }
  .guide-wrapper > .inner .button-list._desktop-2 > li:nth-child(-n+2) {
    margin-top : 0;
  }
  .guide-wrapper > .inner .button-list._desktop-3 > li {
    width : 31.972%;
  }
  .guide-wrapper > .inner .button-list._desktop-3 > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .guide-wrapper > .inner .button-list._desktop-3 > li:nth-child(-n+3) {
    margin-top : 0;
  }
  .guide-wrapper > .inner .button-list._desktop-4 > li {
    width : 23.469%;
  }
  .guide-wrapper > .inner .button-list._desktop-4 > li:nth-child(4n+1) {
    margin-left : 0;
  }
  .guide-wrapper > .inner .button-list._desktop-4 > li:nth-child(-n+4) {
    margin-top : 0;
  }
}

.social-list {
  display : flex;
  justify-content : flex-end;
  margin-top : 20px;
}

.social-list > li {
  align-items : flex-start;
  display : flex;
}

.social-list > li + li {
  margin-left : 5px;
}

.social-list > li > .fb-like > span {
  display : block;
}

.str-container .lyt-inner > .social-list:first-child {
  margin-top : 0;
}

.ckediter > :first-child {
  margin-top : 0;
}

.ckediter .mod-media > .content > :first-child {
  margin-top : 0;
}

.ckediter h3 {
  border-bottom : 1px solid #ccc;
  font-size : 1.7rem;
  margin-top : 20px;
  padding-bottom : 7px;
  position : relative;
}

.ckediter h3::before {
  background-color : #043d84;
  bottom : -1px;
  content : '';
  display : block;
  height : 1px;
  left : 0;
  position : absolute;
  width : 50px;
}

.ckediter h4 {
  background-color : #eceef1;
  font-size : 1.6rem;
  margin-top : 20px;
  padding : 3px 10px;
}

.ckediter p {
  font-size : 1.5rem;
  margin-top : 15px;
}

.ckediter strong {
  color : #222;
  font-weight : bold;
}

.ckediter ul {
  margin-top : 10px;
}

.ckediter ul > li {
  font-size : 1.5rem;
  padding-left : 10px;
  position : relative;
}

.ckediter ul > li + li {
  margin-top : 7px;
}

.ckediter ul > li::before {
  background-color : #043d84;
  border-radius : 50%;
  content : '';
  display : block;
  height : 5px;
  left : 0;
  position : absolute;
  top : 9px;
  width : 5px;
}

.ckediter ul > li ul > li::before {
  background-color : #709bb0;
}

.ckediter ol {
  color : #666;
  counter-reset : order;
  margin-top : 10px;
}

.ckediter ol > li {
  counter-increment : order;
  font-size : 1.4rem;
  padding-left : 20px;
  position : relative;
}

.ckediter ol > li + li {
  margin-top : 7px;
}

.ckediter ol > li::before {
  content : counter(order) ".";
  display : block;
  left : 0;
  position : absolute;
  top : 1px;
}

.ckediter blockquote {
  border : 1px solid #ccc;
  margin : 15px 0 0 0;
  padding : 18px 15px;
}

.ckediter blockquote > :first-child {
  margin-top : 0;
}

.ckediter hr {
  border : none;
  border-top : 1px dotted #ccc;
  margin-top : 20px;
}

@media screen and (min-width: 813px) {
  .ckediter h3 {
    font-size : 2.2rem;
    padding-bottom : 12px;
  }
  .ckediter h3::before {
    width : 80px;
  }
  .ckediter h4 {
    font-size : 1.8rem;
    margin-top : 25px;
    padding : 7px 15px;
  }
  .ckediter p {
    margin-top : 25px;
  }
  .ckediter ul {
    margin-top : 25px;
  }
  .ckediter ul > li {
    padding-left : 15px;
  }
  .ckediter ul > li ul:first-child {
    margin-top : 10px;
  }
  .ckediter ol {
    margin-top : 25px;
  }
  .ckediter ol > li ol:first-child {
    margin-top : 10px;
  }
  .ckediter blockquote {
    margin-top : 25px;
    padding : 23px 30px;
  }
  .ckediter hr {
    margin-top : 30px;
  }
}

.anchor {
  display : block;
  padding-top : 250px;
  margin-top : -250px;
}

.icon-inner {
  display : flex;
  flex-wrap : wrap;
  margin-right : -20px;
}

.icon-inner .mod-heading-05 {
  font-size : 1.2rem;
}

.icon-inner img {
  width : 35px;
  height : 35px;
  margin-right : 5px;
}

@media screen and (min-width: 813px) {
  .icon-inner .mod-heading-05 {
    font-size : 1.6rem;
  }
  .icon-inner img {
    width : 50px;
    height : 50px;
  }
}

.external-link {
  text-align : center;
}

.external-link > .link {
  position : relative;
  display : inline-block;
  margin-top : 40px;
  text-decoration : none;
}

.external-link > .link::before {
  content : "";
  position : absolute;
  inset : 0;
  background-color : #1d242e;
  opacity : 0;
  transition : opacity .3s;
}

.external-link > .link:hover::before,
.external-link > .link:focus::before {
  opacity : .7;
}

.external-link > .link img {
  display : block;
  width : 100%;
  max-width : none;
}

.mod-button {
  border : 1px solid transparent;
  background-color : #043d84;
  color : #fff;
  cursor : pointer;
  display : flex;
  letter-spacing : .05em;
  font-size : 1.4rem;
  padding : 0;
  text-decoration : none;
  transition : background-color .3s;
  width : 100%;
}

.mod-button:hover,
.mod-button:focus {
  border : 1px solid #043d84;
  background-color : #fff;
  color : #333;
}

.mod-button:hover .inner::before,
.mod-button:focus .inner::before {
  background-color : #043d84;
}

.mod-button:hover .inner::after,
.mod-button:focus .inner::after {
  border-bottom : 1px solid #043d84;
  border-right : 1px solid #043d84;
}

.mod-button._conversion {
  background-color : #dd4646;
}

.mod-button._conversion .inner::before {
  background-color : transparent;
  background-image : url(../images/ico_window_01_o.png);
  background-size : contain;
  height : 10px;
  opacity : 0;
  right : 26px;
  width : 10px;
  z-index : 1;
}

.mod-button._conversion .inner::after {
  content : none;
}

.mod-button._conversion .inner .icon-window {
  position : absolute;
  right : 26px;
  top : 50%;
  transform : translateY(-50%);
}

.mod-button._conversion:hover,
.mod-button._conversion:focus {
  border : 1px solid #dd4646;
  background-color : #fff;
}

.mod-button._conversion:hover .inner::before,
.mod-button._conversion:focus .inner::before {
  opacity : 1;
}

.mod-button .inner {
  align-items : center;
  display : flex;
  justify-content : center;
  min-height : 58px;
  padding : 5px 60px;
  position : relative;
  text-align : center;
  width : 100%;
}

.mod-button .inner::before,
.mod-button .inner::after {
  content : '';
  display : block;
  position : absolute;
  top : 50%;
  transform : translateY(-50%);
}

.mod-button .inner::before {
  background-color : #fff;
  height : 1px;
  right : 25px;
  width : 26px;
}

.mod-button .inner::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 12px;
  right : 26px;
  width : 12px;
  transform-origin : center;
  transform : rotate(-45deg) translate(4px, -40%);
}

.mod-button.type-2 {
  background-color : #fff;
  border : 1px solid #043d84;
  color : #043d84;
}

.mod-button.type-2 .inner.type-2 {
  padding : 5px 30px;
}

.mod-button.type-2 .inner::before {
  background-color : #043d84;
}

.mod-button.type-2 .inner::after {
  border-bottom : 1px solid #043d84;
  border-right : 1px solid #043d84;
}

.mod-button.type-2:hover .inner,
.mod-button.type-2:focus .inner {
  color : #92a2b6;
}

.mod-button.type-2:hover .inner::before,
.mod-button.type-2:focus .inner::before {
  background-color : #92a2b6;
}

.mod-button.type-2:hover .inner::after,
.mod-button.type-2:focus .inner::after {
  border-bottom : 1px solid #92a2b6;
  border-right : 1px solid #92a2b6;
}

.mod-button.type-3 {
  background-color : #dd4646;
  border : 1px solid #dd4646;
}

.mod-button.type-3 .inner::before {
  background-color : #fff;
}

.mod-button.type-3 .inner::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
}

.mod-button.type-3:hover,
.mod-button.type-3:focus {
  background-color : #fff;
}

.mod-button.type-3:hover .inner,
.mod-button.type-3:focus .inner {
  color : #dd4646;
}

.mod-button.type-3:hover .inner::before,
.mod-button.type-3:focus .inner::before {
  background-color : #dd4646;
}

.mod-button.type-3:hover .inner::after,
.mod-button.type-3:focus .inner::after {
  border-bottom : 1px solid #dd4646;
  border-right : 1px solid #dd4646;
}

.mod-button.type-4 {
  background-color : #b9c8da;
  border : 1px solid #b9c8da;
  color : #164182;
}

.mod-button.type-4 .inner::before {
  background-color : #164182;
}

.mod-button.type-4 .inner::after {
  border-bottom : 1px solid #164182;
  border-right : 1px solid #164182;
}

.mod-button.type-4:hover,
.mod-button.type-4:focus {
  background-color : #fff;
}

.mod-button.type-4:hover .inner,
.mod-button.type-4:focus .inner {
  color : #043d84;
}

.mod-button.type-4:hover .inner::before,
.mod-button.type-4:focus .inner::before {
  background-color : #043d84;
}

.mod-button.type-4:hover .inner::after,
.mod-button.type-4:focus .inner::after {
  border-bottom : 1px solid #043d84;
  border-right : 1px solid #043d84;
}

.mod-button.type-5 {
  background-color : #fff;
  border : 1px solid #164182;
  color : #164182;
}

.mod-button.type-5 .inner::before {
  background-color : #164182;
}

.mod-button.type-5 .inner::after {
  border-bottom : 1px solid #164182;
  border-right : 1px solid #164182;
}

.mod-button.type-5:hover,
.mod-button.type-5:focus {
  background-color : #dfeff2;
}

.mod-button.type-5:hover .inner,
.mod-button.type-5:focus .inner {
  color : #164182;
}

.mod-button.type-5:hover .inner::before,
.mod-button.type-5:focus .inner::before {
  background-color : #164182;
}

.mod-button.type-5:hover .inner::after,
.mod-button.type-5:focus .inner::after {
  border-bottom : 1px solid #164182;
  border-right : 1px solid #164182;
}

.mod-button._progress {
  display : inline-flex;
  width : auto;
}

.mod-button._progress .inner {
  width : auto;
}

.mod-button[href$=".pdf"] .inner::before,
.mod-button[href$=".pdf"] .inner::after {
  content : none;
}

.mod-button[href$=".pdf"] .inner .icon-pdf {
  position : absolute;
  right : 26px;
  top : 50%;
  transform : translateY(-50%);
}

.mod-button[href$=".pdf"] .inner .icon-pdf.type-2 {
  right : 10px;
}

.mod-button._panorama .inner {
  padding : 5px 45px;
}

.mod-button._panorama .inner::after {
  content : none;
}

.mod-button._panorama .inner::before {
  background-color : transparent;
  background-image : url(../images/ico_360.png);
  background-repeat : no-repeat;
  background-size : contain;
  height : 24px;
  right : 15px;
  width : 30px;
}

.mod-button._panorama:hover .inner::before,
.mod-button._panorama:focus .inner::before {
  background-image : url(../images/ico_360_o.png);
}

.mod-button.js-dialog .inner::after {
  content : none;
}

.mod-button.js-dialog .inner::before {
  background-color : transparent;
  background-image : url(../images/ico_dialog_o.png);
  height : 15px;
  width : 15px;
}

.mod-button.js-dialog.type-2 .inner::before,
.mod-button.js-dialog:hover .inner::before,
.mod-button.js-dialog:focus .inner::before {
  background-image : url(../images/ico_dialog.png);
}

.mod-button.js-dialog.type-2:hover .inner::before,
.mod-button.js-dialog.type-2:focus .inner::before {
  background-color : transparent;
}

@media screen and (min-width: 813px) {
  .mod-button {
    font-size : 1.6rem;
  }
  .mod-button._conversion .inner::before {
    height : 15px;
    width : 15px;
  }
  .mod-button._conversion .inner .icon-window {
    width : 15px;
  }
  .mod-button._panorama {
    font-size : 1.5rem;
  }
  .mod-button._panorama .inner {
    padding : 5px 60px;
  }
  .mod-button._panorama .inner::before {
    height : 30px;
    width : 37px;
  }
}

.mod-button-align {
  display : flex;
  margin-top : 30px;
}

.mod-button-align._left {
  justify-content : flex-start;
}

.mod-button-align._center {
  justify-content : center;
}

.mod-button-align._right {
  justify-content : flex-end;
}

.mod-button-align .mod-button {
  width : 100%;
}

.mod-button-align .mod-button._progress {
  width : auto;
}

@media screen and (min-width: 813px) {
  .mod-button-align .mod-button {
    max-width : 392px;
  }
  .mod-button-align .mod-button._progress {
    max-width : none;
  }
}

.mod-button-list {
  display : flex;
  flex-wrap : wrap;
  margin-top : 20px;
}

.mod-button-list > li {
  display : flex;
  width : 100%;
}

.mod-button-list > li + li {
  margin-top : 20px;
}

.mod-button-list .mod-button {
  display : flex;
  width : 100%;
}

.mod-button-list .mod-button .inner {
  width : 100%;
}

@media screen and (max-width: 812px) {
  .mod-button-list._mobile-2 > li {
    width : 48.546%;
  }
  .mod-button-list._mobile-2 > li:nth-child(2n) {
    margin-left : 2.906%;
  }
  .mod-button-list._mobile-2 > li:nth-child(-n+2) {
    margin-top : 0;
  }
}

@media screen and (min-width: 813px) {
  .mod-button-list {
    margin : 40px auto 0;
    max-width : 980px;
  }
  .mod-button-list._desktop-2 > li,
  .mod-button-list._desktop-3 > li,
  .mod-button-list._desktop-4 > li,
  .mod-button-list._desktop-5 > li {
    margin-left : 2.040%;
  }
  .mod-button-list._desktop-2 > li {
    width : 48.979%;
  }
  .mod-button-list._desktop-2 > li:nth-child(2n+1) {
    margin-left : 0;
  }
  .mod-button-list._desktop-2 > li:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-button-list._desktop-3 > li {
    width : 31.972%;
  }
  .mod-button-list._desktop-3 > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .mod-button-list._desktop-3 > li:nth-child(-n+3) {
    margin-top : 0;
  }
  .mod-button-list._desktop-4 > li {
    width : 23.469%;
  }
  .mod-button-list._desktop-4 > li:nth-child(4n+1) {
    margin-left : 0;
  }
  .mod-button-list._desktop-4 > li:nth-child(-n+4) {
    margin-top : 0;
  }
  .mod-button-list._desktop-5 > li {
    width : 18.368%;
  }
  .mod-button-list._desktop-5 > li:nth-child(5n+1) {
    margin-left : 0;
  }
  .mod-button-list._desktop-5 > li:nth-child(-n+5) {
    margin-top : 0;
  }
  .mod-button-list._desktop-5 > li .inner {
    padding : 5px 40px;
  }
}

.mod-list,
.mod-list-order {
  font-size : 1.5rem;
  line-height : 1.6;
  margin-top : 15px;
}

.mod-list > li,
.mod-list-order > li {
  margin-top : 4px;
  padding-left : 15px;
  position : relative;
}

.mod-list > li::before,
.mod-list-order > li::before {
  background-color : #043d84;
  border-radius : 4px;
  content : '';
  display : block;
  height : 5px;
  left : 0;
  position : absolute;
  top : 10px;
  width : 5px;
}

.mod-list > li + li,
.mod-list-order > li + li {
  margin-top : 4px;
}

.mod-list > li > .mod-list > li::before,
.mod-list-order > li > .mod-list > li::before {
  background-color : #709bb0;
}

.mod-list > li > [class^="mod-"]:first-child,
.mod-list-order > li > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-list-order {
  counter-reset : order;
}

.mod-list-order > li {
  counter-increment : order;
  padding-left : 20px;
}

.mod-list-order > li::before {
  background-color : transparent;
  border-radius : 0;
  content : counter(order) ".";
  height : auto;
  top : 0;
  width : auto;
}

.mod-list-order > li > .mod-list-order:first-child {
  margin-top : 0;
}

.mod-list-order > li:nth-child(n+10) {
  padding-left : 30px;
}

@media screen and (min-width: 813px) {
  .mod-list,
  .mod-list-order {
    margin-top : 30px;
  }
}

.mod-list-news {
  margin-top : 27px;
}

.mod-list-news .list {
  border-bottom : 1px dotted #ccc;
  padding : 19px 0;
}

.mod-list-news .list:first-child {
  border-top : 1px dotted #ccc;
}

.mod-list-news dt .time {
  font-size : 1.3rem;
  padding : 3px 5px 3px 0;
}

.mod-list-news dt .tag {
  background-color : #dedfe0;
  font-size : 1.2rem;
  min-width : 122px;
  padding : 3px 7px;
  text-align : center;
}

.mod-list-news dt .tag._category1 {
  background-color : #ffffcc;
}

.mod-list-news dt .tag._category2 {
  background-color : #ffcccc;
}

.mod-list-news dt .tag._category3 {
  background-color : #ccffcc;
}

.mod-list-news dt .tag._category4 {
  background-color : #66ccff;
}

.mod-list-news dt .time,
.mod-list-news dt .tag {
  color : #222;
  display : inline-block;
}

.mod-list-news dd .text {
  color : #222;
  display : block;
  font-size : 1.4rem;
  line-height : 1.35;
  margin-top : 7px;
  position : relative;
  text-decoration : none;
}

.mod-list-news dd a.text {
  padding-left : 26px;
}

.mod-list-news dd a.text:hover,
.mod-list-news dd a.text:focus {
  text-decoration : underline;
}

.mod-list-news dd a.text::before,
.mod-list-news dd a.text::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 0;
}

.mod-list-news dd a.text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.mod-list-news dd a.text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

@media screen and (min-width: 813px) {
  .mod-list-news {
    margin-top : 35px;
  }
  .mod-list-news dt {
    display : flex;
    flex : 1 0 auto;
  }
  .mod-list-news dt .time,
  .mod-list-news dt .tag {
    align-self : flex-start;
  }
  .mod-list-news dd {
    width : 100%;
  }
  .mod-list-news dd .text {
    font-size : 1.5rem;
  }
}

.mod-list-notice {
  color : #666;
  font-size : 1.4rem;
  margin-top : 7px;
}

.mod-list-notice > li {
  display : flex;
}

.mod-list-notice > li + li {
  margin-top : 5px;
}

.mod-list-notice .mark {
  padding-right : 5px;
}

.mod-list-notice._center {
  text-align : center;
}

.mod-list-notice._center > li {
  display : block;
}

@media screen and (min-width: 813px) {
  .mod-list-notice {
    margin-top : 15px;
  }
}

.mod-list-description {
  font-size : 1.5rem;
  line-height : 1.6;
  margin-top : 15px;
}

.mod-list-description dt,
.mod-list-description dd {
  margin-top : 10px;
}

.mod-list-description dt {
  font-weight : bold;
}

.mod-list-description dt:first-of-type {
  margin-top : 0;
}

.mod-list-description dd > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-list-description._row > .list {
  display : flex;
}

.mod-list-description._row > .list + .list {
  margin-top : 10px;
}

.mod-list-description._row dt,
.mod-list-description._row dd {
  margin-top : 0;
}

@media screen and (min-width: 813px) {
  .mod-list-description {
    margin-top : 30px;
  }
}

.mod-list-qa {
  background-color : #eceef1;
  margin-top : 15px;
  line-height : 1.6;
}

.mod-list-qa + .mod-list-qa {
  margin-top : 4px;
}

.mod-list-qa dt {
  color : #043d84;
  font-size : 1.5rem;
  position : relative;
  padding : 10px 50px;
}

.mod-list-qa dt .mark {
  position : absolute;
  top : 2px;
  left : 20px;
  font-family : 'Frank Ruhl Libre', serif;
  font-size : 2.6rem;
  margin-right : 5px;
  font-weight : bold;
}

.mod-list-qa dt .func-toggle-button {
  font-size : 0;
  position : absolute;
  top : 0;
  left : 0;
  width : 100%;
  height : 100%;
}

.mod-list-qa dt .func-toggle-button::before {
  content : "";
  display : block;
  background-color : #043d84;
  width : 2px;
  height : 18px;
  position : absolute;
  top : 50%;
  right : 25px;
  transform : translateY(-50%);
  transition : transform 200ms ease-in-out;
}

.mod-list-qa dt .func-toggle-button::after {
  content : "";
  display : block;
  background-color : #043d84;
  width : 18px;
  height : 2px;
  position : absolute;
  top : 50%;
  right : 17px;
  transform : translateY(-50%);
}

.mod-list-qa dd {
  font-size : 1.5rem;
  color : #333;
  padding : 10px 25px 20px 50px;
  position : relative;
}

.mod-list-qa dd::before {
  content : "";
  display : inline-block;
  position : absolute;
  top : 0;
  left : 50%;
  transform : translateX(-50%);
  width : calc(100% - 30px);
  height : 1px;
  background-color : #fff;
}

.mod-list-qa dd .mark {
  position : absolute;
  top : 2px;
  left : 20px;
  font-family : 'Frank Ruhl Libre', serif;
  font-size : 2.6rem;
  margin-right : 5px;
  color : #dd4646;
  font-weight : bold;
}

.mod-list-qa.is-toggle-opened dt .func-toggle-button::before {
  transform : translateY(-50%) rotate(90deg);
}

.mod-list-qa.is-toggle-opened dt .func-toggle-button::after {
  content : none;
}

.str-container._with-bg-gray .mod-list-qa {
  background-color : #fff;
}

.str-container._with-bg-gray .mod-list-qa dd::before {
  background-color : #ccc;
}

@media screen and (min-width: 813px) {
  .mod-list-qa {
    margin-top : 30px;
  }
  .mod-list-qa dt,
  .mod-list-qa dd {
    padding-left : 60px;
  }
  .mod-list-qa dt .mark,
  .mod-list-qa dd .mark {
    top : 9px;
  }
  .mod-list-qa dt {
    padding-top : 17px;
    padding-bottom : 17px;
  }
  .mod-list-qa dd {
    padding-top : 15px;
    padding-bottom : 30px;
  }
}

.mod-link {
  display : flex;
  margin-top : 20px;
}

.mod-link._center {
  justify-content : center;
}

.mod-link._right {
  justify-content : flex-end;
}

.mod-link > a {
  color : #222;
  font-size : 1.4rem;
  text-decoration : none;
}

.mod-link > a:hover,
.mod-link > a:focus {
  text-decoration : underline;
}

.mod-link > a .text {
  position : relative;
  padding-left : 24px;
}

.mod-link > a .text::before,
.mod-link > a .text::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 2px;
}

.mod-link > a .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.mod-link > a .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

.mod-link-list {
  margin-top : 15px;
}

.mod-link-list._row {
  display : flex;
  flex-wrap : wrap;
  margin-left : -24px;
}

.mod-link-list._row > li {
  margin-left : 24px;
}

.mod-link-list > li > a {
  color : #222;
  font-size : 1.4rem;
  text-decoration : none;
}

.mod-link-list > li > a:hover,
.mod-link-list > li > a:focus {
  text-decoration : underline;
}

.mod-link-list > li > a .text {
  position : relative;
  padding-left : 24px;
}

.mod-link-list > li > a .text::before,
.mod-link-list > li > a .text::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 0;
}

.mod-link-list > li > a .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.mod-link-list > li > a .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

@media screen and (min-width: 813px) {
  .mod-link-list {
    margin-top : 30px;
  }
  .mod-link-list._row {
    margin-left : -30px;
  }
  .mod-link-list._row > li {
    margin-left : 30px;
  }
  .mod-link-list > li > a {
    font-size : 1.5rem;
  }
  .mod-link-list > li > a .text::before,
  .mod-link-list > li > a .text::after {
    top : 2px;
  }
}

.mod-link-anchor {
  display : flex;
  flex-wrap : wrap;
  margin-top : 20px;
}

.mod-link-anchor > li {
  border : 1px solid #709bb0;
  width : 100%;
}

.mod-link-anchor > li + li {
  border-top : none;
}

.mod-link-anchor > li > a {
  align-items : center;
  color : #043d84;
  font-size : 1.4rem;
  display : flex;
  padding : 16px 19px;
  text-decoration : none;
  width : 100%;
}

.mod-link-anchor > li > a:hover,
.mod-link-anchor > li > a:focus {
  color : #92a2b6;
}

.mod-link-anchor > li > a:hover .text::before,
.mod-link-anchor > li > a:focus .text::before {
  background-color : #cfd3d8;
}

.mod-link-anchor > li > a .text {
  display : block;
  padding-right : 25px;
  position : relative;
  width : 100%;
}

.mod-link-anchor > li > a .text::before,
.mod-link-anchor > li > a .text::after {
  content : '';
  display : block;
  position : absolute;
  right : 0;
  top : 50%;
}

.mod-link-anchor > li > a .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
  transform : translateY(-50%);
}

.mod-link-anchor > li > a .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(45deg) translateY(-50%);
  margin : -2px 8px 0 0;
}

@media screen and (max-width: 812px) {
  .mod-link-anchor._mobile-2 > li {
    display : flex;
    width : 50%;
  }
  .mod-link-anchor._mobile-2 > li:nth-child(2n) {
    border-left : none;
  }
  .mod-link-anchor._mobile-2 > li:nth-child(-n+2) {
    border-top : 1px solid #709bb0;
  }
}

@media screen and (min-width: 813px) {
  .mod-link-anchor {
    margin-top : 30px;
  }
  .mod-link-anchor > li + li {
    border-top : 1px solid #709bb0;
    margin-top : 10px;
  }
  .mod-link-anchor > li > a {
    display : flex;
    flex-direction : column;
    font-size : 1.4rem;
    height : 100%;
    justify-content : center;
  }
  .mod-link-anchor > li > a .text {
    text-align : center;
  }
  .mod-link-anchor._desktop-2 > li,
  .mod-link-anchor._desktop-3 > li,
  .mod-link-anchor._desktop-4 > li,
  .mod-link-anchor._desktop-5 > li,
  .mod-link-anchor._desktop-6 > li {
    margin-left : 1.020%;
  }
  .mod-link-anchor._desktop-2 > li {
    width : 49.489%;
  }
  .mod-link-anchor._desktop-2 > li:nth-child(2n+1) {
    margin-left : 0;
  }
  .mod-link-anchor._desktop-2 > li:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-link-anchor._desktop-3 > li {
    width : 32.653%;
  }
  .mod-link-anchor._desktop-3 > li:nth-child(3n+1) {
    margin-left : 0;
  }
  .mod-link-anchor._desktop-3 > li:nth-child(-n+3) {
    margin-top : 0;
  }
  .mod-link-anchor._desktop-4 > li {
    width : 24.234%;
  }
  .mod-link-anchor._desktop-4 > li:nth-child(4n+1) {
    margin-left : 0;
  }
  .mod-link-anchor._desktop-4 > li:nth-child(-n+4) {
    margin-top : 0;
  }
  .mod-link-anchor._desktop-5 > li {
    width : 19.183%;
  }
  .mod-link-anchor._desktop-5 > li:nth-child(5n+1) {
    margin-left : 0;
  }
  .mod-link-anchor._desktop-5 > li:nth-child(-n+5) {
    margin-top : 0;
  }
  .mod-link-anchor._desktop-6 > li {
    width : 15.816%;
  }
  .mod-link-anchor._desktop-6 > li:nth-child(6n+1) {
    margin-left : 0;
  }
  .mod-link-anchor._desktop-6 > li:nth-child(-n+6) {
    margin-top : 0;
  }
}

.mod-link-block {
  border-left : 1px solid #709bb0;
  border-top : 1px solid #709bb0;
  display : flex;
  flex-wrap : wrap;
  margin-top : 20px;
}

.mod-link-block > li {
  align-items : center;
  border-bottom : 1px solid #709bb0;
  border-right : 1px solid #709bb0;
  display : flex;
  width : 100%;
}

.mod-link-block > li > a {
  color : #043d84;
  font-size : 1.3rem;
  display : block;
  padding : 16px 19px;
  text-decoration : none;
  transition : color .3s;
  width : 100%;
}

.mod-link-block > li > a:hover,
.mod-link-block > li > a:focus {
  color : #92a2b6;
}

.mod-link-block > li > a:hover .text::before,
.mod-link-block > li > a:focus .text::before {
  background-color : #cfd3d8;
}

.mod-link-block > li > a .text {
  display : block;
  padding-left : 25px;
  position : relative;
}

.mod-link-block > li > a .text::before,
.mod-link-block > li > a .text::after {
  content : '';
  display : block;
  position : absolute;
  left : 0;
  top : 50%;
  transform : translateY(-50%);
}

.mod-link-block > li > a .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
  transition : background-color .3s;
}

.mod-link-block > li > a .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : -3px 0 0 4px;
}

.mod-link-block._blue li {
  background-color : #dfeff2;
  transition : background-color .3s;
}

.mod-link-block._blue li > a {
  color : #164182;
}

.mod-link-block._blue li > a .text {
  text-align : center;
}

.mod-link-block._blue li > a .text::before {
  background-color : #164182;
}

.mod-link-block._blue li:hover {
  background-color : #fff;
}

@media screen and (max-width: 812px) {
  .mod-link-block._mobile-2 > li {
    width : 50%;
  }
  .mod-link-block._mobile-2 > li > a {
    align-self : stretch;
    display : flex;
    flex-direction : column;
    justify-content : center;
    min-height : 40px;
    padding : 2px 10px;
  }
}

@media screen and (min-width: 813px) {
  .mod-link-block {
    margin-top : 40px;
  }
  .mod-link-block > li > a {
    font-size : 1.5rem;
    padding : 16px 10px;
  }
  .mod-link-block > li > a > .text {
    display : flex;
    justify-content : center;
  }
  .mod-link-block._desktop-2 > li {
    width : 50%;
  }
  .mod-link-block._desktop-3 > li {
    width : 33.333%;
  }
  .mod-link-block._desktop-4 > li {
    width : 25%;
  }
  .mod-link-block._desktop-5 > li {
    width : 20%;
  }
  .mod-link-block._desktop-6 > li {
    width : 16.666%;
  }
}

.mod-link-local > .local-navi {
  margin : 0 auto;
  max-width : 1200px;
  padding : 20px 0;
}

.mod-link-local > .local-navi > li + li {
  margin-top : 16px;
}

.mod-link-local > .local-navi > li > a {
  border-left : 3px solid transparent;
  color : #404a4f;
  display : inline-block;
  font-size : 1.5rem;
  letter-spacing : .14em;
  line-height : 1;
  padding : 0 10px;
  text-decoration : none;
}

.mod-link-local > .local-navi > li > a[aria-current="true"] {
  border-left : 3px solid #164182;
}

.mod-page-title + .mod-link-local {
  display : none;
}

main .mod-link-local:last-child {
  border-top : 1px solid #ccc;
}

main .mod-link-local:last-child > .local-navi {
  margin : 0 15px 40px;
}

main .mod-link-local.is-emphasis > .local-navi {
  background-color : #edeef2;
}

main .mod-link-local.is-emphasis > .local-navi > li + li {
  position : relative;
  margin-top : 8px;
  padding-top : 8px;
}

main .mod-link-local.is-emphasis > .local-navi > li + li::before {
  content : "";
  position : absolute;
  top : 0;
  left : 0;
  height : 1px;
  width : 100%;
  background-color : #999;
}

@media screen and (min-width: 813px) {
  .mod-link-local > .local-navi {
    display : flex;
    flex-wrap : wrap;
    justify-content : center;
  }
  .mod-link-local > .local-navi > li {
    margin-top : 10px;
  }
  .mod-link-local > .local-navi > li + li {
    margin : 10px 10px 0;
  }
  .mod-link-local > .local-navi > li > a {
    border-bottom : 3px solid transparent;
    border-left : none;
    font-size : 1.4rem;
    padding : 10px;
    transition : border-color .3s;
  }
  .mod-link-local > .local-navi > li > a:hover,
  .mod-link-local > .local-navi > li > a:focus,
  .mod-link-local > .local-navi > li > a[aria-current="true"] {
    border-bottom : 3px solid #164182;
    border-left : none;
  }
  .mod-page-title + .mod-link-local {
    border-bottom : 1px solid #ccc;
    display : block;
  }
  .mod-page-title + .mod-link-local > .local-navi {
    border-top : none;
    padding-top : 10px;
  }
  .mod-link-local.is-emphasis[class] {
    background-color : #edeef2;
  }
  .mod-link-local.is-emphasis[class] > .local-navi {
    gap : 18px;
  }
  .mod-link-local.is-emphasis[class] > .local-navi > li + li {
    margin : 10px 0 0;
    padding-top : 0;
    position : relative;
  }
  .mod-link-local.is-emphasis[class] > .local-navi > li + li::before {
    content : "";
    position : absolute;
    top : 0;
    left : -9px;
    height : 100%;
    width : 1px;
    background-color : #999;
  }
  main .mod-link-local:last-child {
    display : none;
  }
}

.mod-link-local-sticky {
  position : sticky;
  top : 0;
  left : 0;
  background-color : #fff;
  z-index : 10;
}

.mod-link-local-sticky .local-navi {
  display : flex;
  position : relative;
  border-bottom : 1px solid #ccc;
  box-shadow : 0 5px 10px 0 rgba(0, 0, 0, .05);
}

.mod-link-local-sticky .local-navi > li {
  padding : 0;
}

.mod-link-local-sticky .local-navi > li:last-child a {
  border-right : none;
}

.mod-link-local-sticky .local-navi > li > a {
  text-decoration : none;
  padding : 10px 23px;
  position : relative;
  color : #404a4f;
  display : flex;
  align-items : center;
  height : 100%;
  border-right : 1px solid #ccc;
}

.mod-link-local-sticky .local-navi > li > a::after {
  content : '';
  position : absolute;
  left : 15px;
  width : calc(100% - 30px);
  height : 3px;
  bottom : 0;
  transform : scale(0, 1);
  transform-origin : center top;
  transition : transform .4s;
  background-color : #164182;
}

.mod-link-local-sticky .local-navi > li > a:hover::after,
.mod-link-local-sticky .local-navi > li > a:focus::after {
  transform : scale(1, 1);
}

.mod-link-local-sticky .local-navi > li .icon-window {
  margin-left : 7px;
}

@media screen and (min-width: 813px) {
  .mod-link-local-sticky .local-navi > li {
    padding : 20px 0;
  }
}

.local-nav-child {
  width : 100%;
  background-color : #edeef2;
  position : absolute;
  top : 100%;
  left : 0;
  border-bottom : 1px solid #d3dde4;
  box-shadow : 0 5px 10px 0 rgba(0, 0, 0, .05);
}

.local-nav-child .local-navi-child-title-wrap {
  border-bottom : solid 1px #d3dde4;
}

.local-nav-child .local-navi-child-title {
  max-width : 1200px;
  margin : 0 auto;
}

.local-nav-child .local-navi-child-title > a {
  text-decoration : none;
  color : #404a4f;
  padding : 20px 0 20px 10px;
  display : inline-block;
}

.local-nav-child .local-navi-child-title > a > .text {
  position : relative;
  padding-left : 27px;
}

.local-nav-child .local-navi-child-title > a > .text::before,
.local-nav-child .local-navi-child-title > a > .text::after {
  content : '';
  display : block;
  position : absolute;
  top : 3px;
  left : 0;
}

.local-nav-child .local-navi-child-title > a > .text::before {
  border-radius : 50%;
  width : 17px;
  height : 17px;
  background-color : #cbd7e9;
}

.local-nav-child .local-navi-child-title > a > .text::after {
  border-bottom : 1px solid #3f494e;
  border-right : 1px solid #3f494e;
  width : 6px;
  height : 6px;
  margin : 5px 0 0 4px;
  transform-origin : center;
  transform : rotate(-45deg);
}

.local-nav-child > .local-navi-child-content {
  padding : 30px 0;
  margin : 0 auto;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list {
  display : flex;
  justify-content : center;
  gap : 20px;
  flex-wrap : wrap;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li {
  text-align : center;
  width : 40%;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content {
  text-decoration : none;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .image {
  position : relative;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .image::before {
  content : '';
  display : block;
  position : absolute;
  left : 0;
  top : 0;
  width : 100%;
  height : 100%;
  transition : background-color .3s;
  background-color : transparent;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .image > img {
  vertical-align : bottom;
  width : 100%;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content[href]:hover .image::before,
.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content[href]:focus .image::before {
  background-color : #1d242e;
  opacity : .7;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head {
  color : #404a4f;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head > .text {
  position : relative;
  padding-left : 27px;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head > .text::before,
.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head > .text::after {
  content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 3px;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head > .text::before {
  background-color : #fff;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.local-nav-child > .local-navi-child-content > .local-navi-child-list > li > .local-navi-child-list-content > .head > .text::after {
  border-bottom : 1px solid #3f494e;
  border-right : 1px solid #3f494e;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-title-sp {
  padding-left : 24px;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-title-sp > a {
  text-decoration : none;
  position : relative;
  color : #525252;
  padding : 15px 0 15px 21px;
  display : inline-block;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-title-sp > a::after {
  content : "";
  position : absolute;
  top : 0;
  left : 0;
  bottom : 0;
  margin : auto;
  transform : rotate(45deg);
  width : 8px;
  height : 8px;
  border-top : 1px solid #164182;
  border-right : 1px solid #164182;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list {
  display : flex;
  justify-content : center;
  flex-wrap : wrap;
  border-bottom : 1px solid #d3dde4;
  padding-bottom : 9px;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list > li {
  width : 50%;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list > li:nth-child(odd) {
  padding-left : 46.5px;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list > li > a {
  position : relative;
  text-decoration : none;
  color : #525252;
  font-size : 1.5rem;
  padding : 9px 0 9px 16px;
  display : block;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list > li > a::before {
  content : "";
  position : absolute;
  top : 0;
  left : 0;
  bottom : 0;
  margin : auto;
  transform : rotate(45deg) translateY(-1px);
  width : 6px;
  height : 6px;
  border-top : 1px solid #999;
  border-right : 1px solid #999;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp {
  display : flex;
  flex-wrap : wrap;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li {
  width : 50%;
  border-bottom : 1px solid #d3dde4;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li:nth-child(odd) {
  padding-left : 24px;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li:last-child {
  border : none;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li > a {
  position : relative;
  padding-left : 16px;
  text-decoration : none;
  color : #525252;
  padding : 15px 15px 15px 21px;
  display : block;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li > a::before {
  content : "";
  position : absolute;
  top : 0;
  left : 0;
  bottom : 0;
  margin : auto;
  transform : rotate(45deg) translateY(-1px);
  width : 8px;
  height : 8px;
  border-top : 1.3px solid #164182;
  border-right : 1.3px solid #164182;
}

.local-nav-child > .local-navi-child-content-sp > .local-navi-child-list-sp > li .icon-window {
  margin-left : 7px;
}

.mod-link-local-pc {
  display : none;
}

.mod-link-local-sp .js-toggle-control {
  position : relative;
  padding : 15px 0 15px 40px;
  left : 14px;
}

.mod-link-local-sp .js-toggle-control::before {
  content : "";
  position : absolute;
  width : 18px;
  height : 16px;
  border-top : 2px solid #999;
  border-bottom : 2px solid #999;
  top : 0;
  bottom : 0;
  margin : auto;
  left : 13px;
  transition : all .4s;
}

.mod-link-local-sp .js-toggle-control::after {
  content : "";
  position : absolute;
  width : 18px;
  height : 2px;
  top : 0;
  bottom : 0;
  margin : auto;
  left : 13px;
  background-color : #999;
  transition : all .4s;
}

.mod-link-local-sp .js-toggle-control > .func-toggle-button {
  font-size : 0;
  position : absolute;
  top : 0;
  left : 0;
  width : 100%;
  height : 100%;
}

.mod-link-local-sp.is-toggle-opened {
  position : relative;
}

.mod-link-local-sp.is-toggle-opened .js-toggle-control::before,
.mod-link-local-sp.is-toggle-opened .js-toggle-control::after {
  height : 2px;
  width : 18px;
  position : absolute;
  left : 20px;
}

.mod-link-local-sp.is-toggle-opened .js-toggle-control::before {
  background-color : #999;
  border : none;
  transform-origin : center;
  transform : translateX(-50%) rotate(45deg);
}

.mod-link-local-sp.is-toggle-opened .js-toggle-control::after {
  margin : auto;
  transform-origin : center;
  transform : translateX(-50%) rotate(-45deg);
}

@media screen and (min-width: 813px) {
  .display-pc {
    display : none;
  }
  .mod-link-local-pc {
    display : block;
  }
  .mod-link-local-sp {
    display : none;
  }
  .local-navi {
    justify-content : center;
  }
  .local-nav-child {
    border : none;
  }
  .local-nav-child > .local-navi-child-content {
    width : 700px;
  }
  .local-nav-child > .local-navi-child-content > .local-navi-child-list {
    flex-wrap : nowrap;
  }
  .local-nav-child > .local-navi-child-content > .local-navi-child-list > li {
    text-align : left;
  }
  .local-navi-toggle .js-toggle-control {
    position : relative;
    padding : 10px 35px 10px 23px;
  }
  .local-navi-toggle .func-toggle-button {
    position : absolute;
    top : 0;
    left : 0;
    width : 100%;
    height : 100%;
    padding : 0;
    font-size : 0;
    cursor : pointer;
    border-right : 1px solid #ccc;
  }
  .local-navi-toggle .func-toggle-button::after {
    content : "";
    position : absolute;
    top : 50%;
    right : 16px;
    transform : translateY(-50%) rotate(135deg);
    width : 8px;
    height : 8px;
    border-top : 1px solid #333;
    border-right : 1px solid #333;
  }
  .local-navi-toggle .func-toggle-button::before {
    content : '';
    position : absolute;
    left : 15px;
    width : calc(100% - 30px);
    height : 3px;
    bottom : 0;
    transform : scale(0, 1);
    transform-origin : center top;
    transition : transform .3s;
    background-color : #164182;
  }
  .local-navi-toggle .func-toggle-button:hover::before,
  .local-navi-toggle .func-toggle-button:focus::before {
    transform : scale(1, 1);
  }
}

.mod-index,
.mod-index-card {
  display : flex;
  flex-wrap : wrap;
  margin-top : 25px;
}

.mod-index .index,
.mod-index-card .index{
  width : 100%;
}

.mod-index .index + .index,
.mod-index-card .index + .index {
  margin-top : 20px;
}

.mod-index .index > a,
.mod-index-card .index > a {
  color : #333;
  display : block;
  text-decoration : none;
}

.mod-index .index > a:hover .image::before,
.mod-index .index > a:focus .image::before,
.mod-index-card .index > a:hover .image::before,
.mod-index-card .index > a:focus .image::before {
  background-color : #1d242e;
  opacity : .7;
}

.mod-index .index > a > .text,
.mod-index-card .index > a > .text {
  margin-top : 2px;
  padding-bottom : 5px;
}

.mod-index .index .title,
.mod-index-card .index .title {
  align-items : center;
  bottom : 0;
  display : flex;
  left : 0;
  padding : 10px 0 0;
  width : 100%;
}

.mod-index .index .title .text,
.mod-index-card .index .title .text {
  display : block;
  padding-left : 25px;
  position : relative;
}

.mod-index .index .title .text::before,
.mod-index .index .title .text::after,
.mod-index-card .index .title .text::before,
.mod-index-card .index .title .text::after {
content : '';
  display : block;
  left : 0;
  position : absolute;
  top : 3px;
}

.mod-index .index .title .text::before,
.mod-index-card .index .title .text::before {
  background-color : #043d84;
  border-radius : 50%;
  height : 17px;
  width : 17px;
}

.mod-index .index .title .text::after,
.mod-index-card .index .title .text::after {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  height : 6px;
  width : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
  margin : 5px 0 0 4px;
}

.mod-index .index
.image,
.mod-index-card
.index .image {
  position : relative;
}

.mod-index .index .image::before,
.mod-index-card .index .image::before {
  background-color : transparent;
  content : '';
  display : block;
  height : 100%;
  left : 0;
  position : absolute;
  top : 0;
  transition : background-color .3s;
  width : 100%;
}

.mod-index .index .image img,
.mod-index-card .index .image img {
  display : block;
  max-width : none;
  width : 100%;
}

.mod-index-card .index {
  letter-spacing : 0.8px;
}

.mod-index-card .index > a > .text {
  margin-top : 10px;
}

.mod-index-card .index .title {
  font-weight : 600;
}

@media screen and (max-width: 812px) {
  .mod-index._mobile-2 .index,
  .mod-index-card._mobile-2 .index {
    width : 48.546%;
  }
  .mod-index._mobile-2 .index:nth-child(2n),
  .mod-index-card._mobile-2 .index:nth-child(2n) {
    margin-left : 2.906%;
  }
  .mod-index._mobile-2 .index:nth-child(-n+2),
  .mod-index-card._mobile-2 .index:nth-child(-n+2) {
    margin-top : 0;
  }
}

@media screen and (min-width: 813px) {
  .mod-index,
  .mod-index-card {
    margin-top : 40px;
  }
  .mod-index .index + .index,
  .mod-index-card .index + .index {
    margin-top : 30px;
  }
  .mod-index._desktop-2 .index,
  .mod-index._desktop-3 .index,
  .mod-index._desktop-4 .index,
  .mod-index-card._desktop-2 .index,
  .mod-index-card._desktop-3 .index,
  .mod-index-card._desktop-4 .index {
    margin-left : 1.694%;
  }
  .mod-index._desktop-2 .index,
  .mod-index-card._desktop-2 .index {
    width : 49.152%;
  }
  .mod-index._desktop-2 .index:nth-child(2n+1),
  .mod-index-card._desktop-2 .index:nth-child(2n+1) {
    margin-left : 0;
  }
  .mod-index._desktop-2 .index:nth-child(-n+2),
  .mod-index-card._desktop-2 .index:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-index._desktop-3 .index,
  .mod-index-card._desktop-3 .index {
    width : 32.203%;
  }
  .mod-index._desktop-3 .index:nth-child(3n+1),
  .mod-index-card._desktop-3 .index:nth-child(3n+1) {
    margin-left : 0;
  }
  .mod-index._desktop-3 .index:nth-child(-n+3),
  .mod-index-card._desktop-3 .index:nth-child(-n+3) {
    margin-top : 0;
  }
  .mod-index._desktop-4 .index,
  .mod-index-card._desktop-4 .index {
    width : 23.728%;
  }
  .mod-index._desktop-4 .index:nth-child(4n+1),
  .mod-index-card._desktop-4 .index:nth-child(4n+1) {
    margin-left : 0;
  }
  .mod-index._desktop-4 .index:nth-child(-n+4),
  .mod-index-card._desktop-4 .index:nth-child(-n+4) {
    margin-top : 0;
  }
}

.mod-page-title {
  background-color : #d6dbe2;
  color : #333;
  display : flex;
}

.mod-page-title._company {
  background-image : url(../../about/images/bg_page_title.jpg);
  background-position : center top;
  background-size : cover;
}

.mod-page-title._press-room {
  background-image : url(../../press-room/images/bg_page_title.jpg);
  background-position : center top;
  background-size : cover;
}

.mod-page-title._business {
  background-image : url(../../business/images/bg_page_title.jpg);
  background-position : center top;
  background-size : cover;
}

.mod-page-title._company,
.mod-page-title._press-room,
.mod-page-title._business {
  color : #fff;
}

.mod-page-title._under .inner {
  min-height : 75px;
}

.mod-page-title._under .category {
  font-size : 1.2rem;
  font-weight : normal;
}

.mod-page-title._under .category + .title {
  margin-top : 5px;
}

.mod-page-title._under .title {
  font-size : 1.8rem;
  font-weight : bold;
}

.mod-page-title .inner {
  align-items : center;
  display : flex;
  flex-direction : column;
  justify-content : center;
  min-height : 100px;
  width : 100%;
}

.mod-page-title .deco-letter {
  display : block;
  font-family : 'Frank Ruhl Libre', serif;
  font-size : 2.2rem;
  font-weight : normal;
  letter-spacing : .15em;
}

.mod-page-title .title {
  display : flex;
  font-size : 1.4rem;
  font-weight : normal;
  justify-content : center;
  letter-spacing : .05em;
  margin-top : 0;
  padding : 0 10px;
  width : 100%;
}

@media screen and (min-width: 813px) {
  .mod-page-title._under .inner {
    min-height : 150px;
  }
  .mod-page-title._under .category {
    font-size : 1.4rem;
  }
  .mod-page-title._under .category + .title {
    margin-top : 15px;
  }
  .mod-page-title._under .title {
    font-size : 2.2rem;
  }
  .mod-page-title .inner {
    min-height : 200px;
  }
  .mod-page-title .deco-letter {
    font-size : 4rem;
  }
  .mod-page-title .title {
    font-size : 1.8rem;
  }
}

.mod-page-title-detail {
  background-color : #eceef1;
}

.mod-page-title-detail .inner {
  margin : 0 auto;
  max-width : 1210px;
  padding : 10px 15px;
}

.mod-page-title-detail._tight .inner {
  max-width : 1010px;
}

.mod-page-title-detail .time,
.mod-page-title-detail .tag {
  color : #222;
  display : inline-block;
  font-size : 1.2rem;
}

.mod-page-title-detail .time {
  padding : 3px 5px 3px 0;
}

.mod-page-title-detail .tag {
  background-color : #dedfe0;
  min-width : 122px;
  padding : 3px 7px;
  text-align : center;
}

.mod-page-title-detail .tag._category1 {
  background-color : #ffffcc;
}

.mod-page-title-detail .tag._category2 {
  background-color : #ffcccc;
}

.mod-page-title-detail .tag._category3 {
  background-color : #ccffcc;
}

.mod-page-title-detail .tag._category4 {
  background-color : #66ccff;
}

.mod-page-title-detail .title {
  font-size : 1.4rem;
  margin-top : 7px;
}

.mod-page-title-detail + .str-container .lyt-inner {
  padding-top : 20px;
}

@media screen and (min-width: 813px) {
  .mod-page-title-detail .inner {
    padding : 20px 15px;
  }
  .mod-page-title-detail .title {
    font-size : 2rem;
  }
  .mod-page-title-detail + .str-container .lyt-inner {
    padding-top : 30px;
  }
}

.mod-heading-01 {
  margin-top : 37px;
  text-align : center;
}

.mod-heading-01 .text {
  color : #222;
  display : block;
  font-size : 1.8rem;
  font-weight : bold;
  letter-spacing : .05em;
  line-height : 1.27;
  padding-bottom : 18px;
  position : relative;
}

.mod-heading-01 .text::before {
  background-color : #164182;
  bottom : 0;
  content : '';
  display : block;
  height : 2px;
  position : absolute;
  left : 50%;
  transform : translateX(-50%);
  width : 40px;
}

@media screen and (min-width: 813px) {
  .mod-heading-01 {
    margin-top : 50px;
  }
  .mod-heading-01 .text {
    font-size : 2.4rem;
    padding-bottom : 27px;
  }
  .mod-heading-01 .text::before {
    width : 71px;
  }
}

.mod-heading-02 {
  margin-top : 37px;
}

.mod-heading-02 .text {
  border-bottom : 1px solid #ccc;
  color : #222;
  display : block;
  font-size : 1.7rem;
  font-weight : bold;
  letter-spacing : .05em;
  line-height : 1.27;
  padding-bottom : 14px;
  position : relative;
}

.mod-heading-02 .text::before {
  background-color : #164182;
  bottom : -1px;
  content : '';
  display : block;
  height : 1px;
  position : absolute;
  left : 0;
  width : 50px;
}

@media screen and (min-width: 813px) {
  .mod-heading-02 {
    margin-top : 50px;
  }
  .mod-heading-02 .text {
    font-size : 2.2rem;
    padding-bottom : 20px;
  }
  .mod-heading-02 .text::before {
    width : 80px;
  }
}

.mod-heading-03 {
  color : #043d84;
  margin : 40px 0 20px;
  display : flex;
  align-items : center;
}

.mod-heading-03 > img {
  margin-right : 10px;
}

.mod-heading-04 {
  margin-top : 37px;
  display : flex;
  align-items : center;
  border-bottom : 1px solid #ccc;
  color : #222;
  font-size : 1.7rem;
  font-weight : bold;
  letter-spacing : .05em;
  line-height : 1.27;
  padding-bottom : 14px;
  position : relative;
}

.mod-heading-04::before {
  background-color : #164182;
  bottom : -1px;
  content : '';
  display : block;
  height : 1px;
  position : absolute;
  left : 0;
  width : 50px;
}

.mod-heading-04 > img {
  margin-right : 10px;
}

@media screen and (min-width: 813px) {
  .mod-heading-04 {
    margin-top : 50px;
  }
  .mod-heading-04 .text {
    font-size : 2.2rem;
  }
  .mod-heading-04 .text::before {
    width : 80px;
  }
}

.mod-heading-05 {
  color : #043d84;
  display : flex;
  align-items : center;
  margin : 10px 20px 0 0;
}

.mod-heading-05 > img {
  margin-right : 10px;
}

.mod-heading-06 .head-content {
  color : #043d84;
  border-bottom : 1px solid #043d84;
  display : inline-block;
  padding : 0 5px 2.5px;
}

.mod-heading-06 .head-content .text {
  font-style : italic;
  font-weight : 600;
  vertical-align : 6px;
}

.mod-heading-06 .head-content .number {
  font-size : 4rem;
  font-family : 'Frank Ruhl Libre', serif;
  font-style : italic;
  line-height : 1;
  margin-left : -5px;
}

.mod-heading-06 > h2 {
  margin-top : 3px;
}

.mod-box {
  border : 1px solid #ccc;
  margin-top : 40px;
  padding : 0 16px;
}

.mod-box + .mod-box {
  margin-top : 10px;
}

.mod-box .head,
.mod-box .body {
  padding : 15px 0;
}

.mod-box .head {
  border-bottom : 1px dotted #ccc;
  display : flex;
  flex-direction : column;
  justify-content : center;
}

.mod-box .heading {
  color : #333;
  font-size : 1.6rem;
  font-weight : bold;
  letter-spacing : .05em;
  line-height : 1.375;
  text-align : center;
}

.mod-box .body > [class^="mod-"]:first-child {
  margin-top : 0;
}

@media screen and (min-width: 813px) {
  .mod-box {
    display : flex;
    margin-top : 50px;
    padding : 15px 0;
  }
  .mod-box + .mod-box {
    margin-top : 20px;
  }
  .mod-box .head,
  .mod-box .body {
    min-height : 56px;
    padding : 0 20px;
  }
  .mod-box .head {
    border-bottom : none;
    border-right : 1px dotted #ccc;
    max-width : 263px;
    flex : 1 0 auto;
    width : 100%;
  }
  .mod-box .body {
    display : flex;
    flex-direction : column;
    justify-content : center;
    width : 100%;
  }
}

.mod-box-emphasis {
  background-color : #eceef1;
  margin-top : 25px;
  padding : 25px 20px;
}

.mod-box-emphasis .head .heading {
  font-size : 1.6rem;
  font-weight : bold;
  text-align : center;
}

.mod-box-emphasis .head .sub-text {
  font-size : 1.5rem;
  margin-top : 10px;
  text-align : center;
}

.mod-box-emphasis .head + .body {
  padding-top : 15px;
}

.mod-box-emphasis .body > [class^="mod-"]:first-child {
  margin-top : 0;
}

.str-container._with-bg-gray .mod-box-emphasis {
  background-color : #fff;
}

@media screen and (min-width: 813px) {
  .mod-box-emphasis {
    margin-top : 50px;
    padding : 30px;
  }
  .mod-box-emphasis .head + .body {
    padding-top : 30px;
  }
}

.mod-text {
  color : #222;
  font-size : 1.5rem;
  letter-spacing : .05em;
  line-height : 1.6;
  margin-top : 26px;
}

.mod-text._with-heading,
.mod-text._center {
  text-align : center;
}

.mod-text._jc-center {
  display : flex;
  justify-content : center;
}

.mod-text._right {
  text-align : right;
}

@media screen and (min-width: 813px) {
  .mod-text {
    margin-top : 40px;
  }
}

.mod-text-lead {
  color : #222;
  font-weight : bold;
  letter-spacing : .05em;
  margin-top : 20px;
}

.mod-text-lead._center {
  text-align : center;
}

.mod-text-lead._jc-center {
  display : flex;
  justify-content : center;
}

.mod-text-lead._right {
  text-align : right;
}

.mod-text-lead > strong {
  color : #dd4646;
}

@media screen and (min-width: 813px) {
  .mod-text-lead {
    font-size : 1.8rem;
    margin-top : 40px;
  }
}

.mod-panel {
  display : flex;
  flex-wrap : wrap;
  margin-top : 25px;
}

.mod-panel .list {
  display : flex;
  flex-direction : column;
  width : 100%;
}

.mod-panel .list + .list {
  margin-top : 25px;
}

.mod-panel .list > .image {
  order : -1;
}

.mod-panel .list > .image > img {
  width : 100%;
}

.mod-panel .list > .title {
  font-weight : bold;
  margin-top : 10px;
}

.mod-panel .list > .title._center {
  text-align : center;
}

.mod-panel .list > .title_support {
  margin-top : 15px;
  font-weight : bold;
}

.mod-panel .list > .text {
  margin-top : 10px;
}

@media screen and (max-width: 812px) {
  .mod-panel._mobile-2 .list {
    width : 48.546%;
  }
  .mod-panel._mobile-2 .list:nth-child(2n) {
    margin-left : 2.906%;
  }
  .mod-panel._mobile-2 .list:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-panel._mobile-2 .list > a {
    min-height : 131px;
    padding-top : 44.910%;
  }
  .mod-panel._mobile-2 .list .band {
    min-height : 56px;
  }
}

@media screen and (min-width: 813px) {
  .mod-panel {
    margin-top : 40px;
  }
  .mod-panel .list + .list {
    margin-top : 20px;
  }
  .mod-panel .list > .image {
    min-height : 1%;
  }
  .mod-panel .list > .title {
    font-size : 1.6rem;
  }
  .mod-panel._desktop-2 .list,
  .mod-panel._desktop-3 .list,
  .mod-panel._desktop-4 .list {
    margin-left : 1.694%;
  }
  .mod-panel._desktop-2 .list {
    width : 49.152%;
  }
  .mod-panel._desktop-2 .list:nth-child(2n+1) {
    margin-left : 0;
  }
  .mod-panel._desktop-2 .list:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-panel._desktop-3 .list {
    width : 32.203%;
  }
  .mod-panel._desktop-3 .list:nth-child(3n+1) {
    margin-left : 0;
  }
  .mod-panel._desktop-3 .list:nth-child(-n+3) {
    margin-top : 0;
  }
  .mod-panel._desktop-4 .list {
    width : 23.728%;
  }
  .mod-panel._desktop-4 .list:nth-child(4n+1) {
    margin-left : 0;
  }
  .mod-panel._desktop-4 .list:nth-child(-n+4) {
    margin-top : 0;
  }
  .mod-panel-wrap {
    max-width : 913px;
    margin : 0 auto;
  }
}

._desktop-tight {
  max-width : 684px;
}

.mod-panel-contact {
  background-color : #eceef1;
  margin-top : 25px;
  padding : 25px 20px;
}

.mod-panel-contact._bg-transparent {
  background-color : transparent;
  margin-top : 10px;
}

.mod-panel-contact .head .heading {
  font-size : 1.6rem;
  font-weight : bold;
  text-align : center;
}

.mod-panel-contact .head .sub-text {
  font-size : 1.5rem;
  margin-top : 10px;
  text-align : center;
}

.mod-panel-contact .head + .body {
  padding-top : 15px;
}

.mod-panel-contact .body > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-panel-contact .body .contact {
  margin-top : 13px;
}

.mod-panel-contact .body .contact:first-child {
  margin-top : 0;
}

.mod-panel-contact .body .contact .department,
.mod-panel-contact .body .contact .phone,
.mod-panel-contact .body .contact .business-hours,
.mod-panel-contact .body .contact .mail {
  display : block;
  text-align : center;
}

.mod-panel-contact .body .contact .department {
  font-weight : bold;
}

.mod-panel-contact .body .contact .phone {
  font-size : 2rem;
  font-weight : bold;
}

.mod-panel-contact .body .contact .business-hours,
.mod-panel-contact .body .contact .mail {
  font-size : 1.5rem;
  margin-top : 5px;
}

.str-container._with-bg-gray .mod-panel-contact:not(._bg-transparent) {
  background-color : #fff;
}

@media screen and (min-width: 813px) {
  .mod-panel-contact {
    margin-top : 50px;
    padding : 30px;
  }
  .mod-panel-contact._bg-transparent {
    margin-top : 15px;
  }
  .mod-panel-contact .head + .body {
    padding-top : 30px;
  }
  .mod-panel-contact .body .contact {
    align-items : center;
    display : flex;
    flex-wrap : wrap;
    justify-content : center;
    margin-top : 30px;
  }
  .mod-panel-contact .body .contact .department,
  .mod-panel-contact .body .contact .mail {
    width : 100%;
  }
  .mod-panel-contact .body .contact .phone,
  .mod-panel-contact .body .contact .business-hours {
    text-align : left;
  }
  .mod-panel-contact .body .contact .business-hours {
    margin-top : 0;
  }
}

.mod-panel-flow {
  margin-top : 20px;
}

.mod-panel-flow > li {
  position : relative;
}

.mod-panel-flow > li + li {
  margin-top : 48px;
}

.mod-panel-flow > li + li::before,
.mod-panel-flow > li + li::after {
  background-color : #709bb0;
  border-radius : 50%;
  content : '';
  display : block;
  height : 10px;
  left : 50%;
  position : absolute;
  transform : translateX(-50%);
  width : 10px;
}

.mod-panel-flow > li + li::before {
  top : -35px;
}

.mod-panel-flow > li + li::after {
  top : -20px;
}

.mod-panel-flow > li.target {
  display : flex;
  font-size : 1.8rem;
  font-weight : bold;
  justify-content : center;
  line-height : 1.2;
}

.mod-panel-flow > li > .head {
  align-items : center;
  background-color : #043d84;
  color : #fff;
  display : flex;
  padding : 6px 20px;
}

.mod-panel-flow > li > .head .number {
  font-family : 'Frank Ruhl Libre', serif;
  font-size : 4rem;
  font-style : italic;
  line-height : 1;
  padding-right : 15px;
}

.mod-panel-flow > li > .head .text {
  font-weight : bold;
  letter-spacing : .05em;
}

.mod-panel-flow > li > .body {
  border : 1px solid #ccc;
  padding : 10px 20px;
}

.mod-panel-flow > li > .body > [class^="mod-"]:first-child {
  margin-top : 0;
}

@media screen and (min-width: 813px) {
  .mod-panel-flow {
    margin-top : 40px;
  }
  .mod-panel-flow > li {
    display : flex;
  }
  .mod-panel-flow > li.target {
    font-size : 2.4rem;
    line-height : 2;
  }
  .mod-panel-flow > li > .head {
    flex-direction : column;
    flex : 0 1 196px;
    justify-content : center;
    min-height : 184px;
    min-width : 196px;
  }
  .mod-panel-flow > li > .head .number {
    border-bottom : 1px solid #fff;
    margin-bottom : 5px;
    padding : 0 10px 2px;
    text-align : center;
  }
  .mod-panel-flow > li > .head .text {
    font-size : 1.8rem;
    text-align : center;
    width : 100%;
  }
  .mod-panel-flow > li > .body {
    display : flex;
    flex : 1 1 784px;
    flex-direction : column;
    justify-content : center;
  }
}

.mod-panel-feature {
  display : flex;
  flex-wrap : wrap;
  justify-content : center;
  margin : 20px -5px 0;
}

.mod-panel-feature .feature {
  border-radius : 500px;
  margin : 5px 1.449%;
  position : relative;
  overflow : hidden;
  width : 30.434%;
}

.mod-panel-feature .feature::before {
  content : '';
  display : block;
  padding-top : 100%;
}

.mod-panel-feature .feature > .inner {
  align-items : center;
  background-image : linear-gradient(-64deg, #deedee 0%, #e3f8f9 36%, #f5f9f9 100%);
  display : flex;
  height : 100%;
  justify-content : center;
  padding : 10px;
  position : absolute;
  left : 0;
  top : 0;
  width : 100%;
}

.mod-panel-feature .feature > .inner > .text {
  color : #043d84;
  font-size : 2.328vw;
  font-weight : bold;
  text-align : center;
}

@media screen and (min-width: 730px) {
  .mod-panel-feature {
    margin : 20px -15px 0;
  }
  .mod-panel-feature .feature {
    margin : 10px;
    width : 216px;
  }
  .mod-panel-feature .feature > .inner > .text {
    font-size : 1.7rem;
  }
}

@media screen and (max-width: 430px) {
  .mod-panel-feature .feature > .inner > .text {
    font-size : 1rem;
  }
}

.mod-grid {
  display : flex;
  flex-wrap : wrap;
  margin-top : 25px;
}

.mod-grid .column {
  width : 100%;
}

.mod-grid .column > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-grid .column > img {
  display : block;
}

.mod-grid .column + .column {
  margin-top : 10px;
}

.mod-grid .column + .column > [class^="mod-heading"]:first-child {
  margin-top : 20px;
}

.mod-grid._no-gutter .column + .column {
  margin-top : 0;
}

.mod-grid.mod-link-list .column + .column {
  margin-top : 0;
}

@media screen and (max-width: 812px) {
  .mod-grid._mobile-2 .column {
    width : 48.546%;
  }
  .mod-grid._mobile-2 .column:nth-child(2n) {
    margin-left : 2.906%;
  }
  .mod-grid._mobile-2 .column:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-grid._mobile-2._no-gutter .column {
    width : 50%;
  }
  .mod-grid._mobile-2._no-gutter .column + .column {
    margin : 0;
  }
}

@media screen and (min-width: 813px) {
  .mod-grid {
    margin-top : 40px;
  }
  .mod-grid .column + .column {
    margin-top : 20px;
  }
  .mod-grid .column + .column > [class^="mod-heading"]:first-child {
    margin-top : 40px;
  }
  .mod-grid._desktop-2 .column,
  .mod-grid._desktop-3 .column,
  .mod-grid._desktop-4 .column {
    margin-left : 1.694%;
  }
  .mod-grid._desktop-2._no-gutter .column,
  .mod-grid._desktop-3._no-gutter .column,
  .mod-grid._desktop-4._no-gutter .column {
    margin : 0;
  }
  .mod-grid._desktop-2 .column {
    width : 49.152%;
  }
  .mod-grid._desktop-2 .column:nth-child(2n+1) {
    margin-left : 0;
  }
  .mod-grid._desktop-2 .column:nth-child(-n+2) {
    margin-top : 0;
  }
  .mod-grid._desktop-2 .column:nth-child(-n+2) > [class^="mod-heading"]:first-child {
    margin-top : 0;
  }
  .mod-grid._desktop-2._no-gutter .column {
    width : 50%;
  }
  .mod-grid._desktop-3 .column {
    width : 32.203%;
  }
  .mod-grid._desktop-3 .column:nth-child(3n+1) {
    margin-left : 0;
  }
  .mod-grid._desktop-3 .column:nth-child(-n+3) {
    margin-top : 0;
  }
  .mod-grid._desktop-3 .column:nth-child(-n+3) > [class^="mod-heading"]:first-child {
    margin-top : 0;
  }
  .mod-grid._desktop-3._no-gutter .column {
    width : 33.333%;
  }
  .mod-grid._desktop-4 .column {
    width : 23.728%;
  }
  .mod-grid._desktop-4 .column:nth-child(4n+1) {
    margin-left : 0;
  }
  .mod-grid._desktop-4 .column:nth-child(-n+4) {
    margin-top : 0;
  }
  .mod-grid._desktop-4 .column:nth-child(-n+4) > [class^="mod-heading"]:first-child {
    margin-top : 0;
  }
  .mod-grid._desktop-4._no-gutter .column {
    width : 25%;
  }
}

.mod-media-fulid {
  margin-top : 20px;
}

+ .mod-media-fulid {
  margin-top : 20px;
}

.mod-media-fulid > a {
  display : inline-block;
}

.mod-media-fulid > a + a,
.mod-media-fulid > a + .media,
.mod-media-fulid > .media + a,
.mod-media-fulid > .media + .media {
  margin-top : 20px;
}

@media screen and (min-width: 813px) {
  .mod-media-fulid > a + a,
  .mod-media-fulid > a + .media,
  .mod-media-fulid > .media + a,
  .mod-media-fulid > .media + .media {
    margin-top : 0;
    margin-left : 10px;
  }
}

.mod-media-fulid > a > .media > [class^="mod-"]:first-child,
.mod-media-fulid > .media > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-media-fulid > a > .media img,
.mod-media-fulid > .media img {
  display : block;
  margin : 0 auto;
  max-width : 100%;
}

.mod-media-fulid._height-fixation > .media {
  align-items : center;
  border : 1px solid #d1d2d3;
  display : flex;
  min-height : 212px;
  padding : 10px;
}

.mod-media-fulid._movie,
.mod-media-fulid._iframe-content {
  margin : 40px auto 0;
  max-width : 810px;
}

.mod-media-fulid._movie > .media,
.mod-media-fulid._iframe-content > .media {
  position : relative;
  padding-bottom : 56.25%;
  height : 0;
  overflow : hidden;
}

.mod-media-fulid._movie > .media > iframe,
.mod-media-fulid._iframe-content > .media > iframe {
  position : absolute;
  height : 100%;
  left : 0;
  top : 0;
  width : 100%;
}

.mod-media-fulid._iframe-content > .media {
  padding-bottom : 75%;
}

.mod-media-fulid > a > .caption,
.mod-media-fulid > .caption {
  font-size : 1.3rem;
  margin-top : 5px;
  text-align : center;
}

.mod-media-fulid._left > .media img {
  margin-left : 0;
}

.mod-media-fulid._center {
  text-align : center;
}

.mod-media-fulid._right {
  text-align : right;
}

.mod-media-fulid._right > .media img {
  margin-right : 0;
}

.mod-media-fulid._caption-left > a > .caption,
.mod-media-fulid._caption-left > .caption {
  text-align : left;
}

.mod-media-fulid._caption-right > a > .caption,
.mod-media-fulid._caption-right > .caption {
  text-align : right;
}

@media screen and (min-width: 813px) {
  .mod-media-fulid {
    margin-top : 40px;
  }
  .mod-media-fulid._height-fixation > .media {
    height : 312px;
    width : 392px;
  }
  .mod-media-fulid._height-fixation > .media > img {
    max-height : 100%;
    max-width : 372px;
    width : auto;
  }
  .mod-media-fulid > .caption {
    font-size : 1.4rem;
    margin-top : 10px;
  }
}

.mod-media {
  margin-top : 20px;
}

.mod-media > .media > [class^="mod-"]:first-child,
.mod-media > .content > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-media > .media .mod-media-fulid > .media img {
  width : 100%;
}

.mod-media > .media + .content {
  margin-top : 10px;
}

.mod-media > .content + .media {
  margin-top : 10px;
}

@media screen and (max-width: 812px) {
  .mod-media._mobile-image-first {
    display : flex;
    flex-direction : column;
  }
  .mod-media._mobile-image-first > .media {
    margin-top : 0;
    order : -1;
  }
  .mod-media._mobile-image-first > .content {
    margin-top : 10px;
  }
}

@media screen and (min-width: 813px) {
  .mod-media {
    display : flex;
    margin : 40px -10px 0 -10px;
    min-height : 1%;
  }
  .mod-media > .media + .content,
  .mod-media > .content + .media {
    margin-top : 0;
  }
  .mod-media > .media {
    flex : 0 1 40%;
    margin : 0 10px;
  }
  .mod-media > .media .mod-media-fulid._height-fixation > .media img {
    width : auto;
  }
  .mod-media > .content {
    flex : 1 1 60%;
    margin : 0 10px;
  }
}

.mod-media-02 {
  display : flex;
  flex-wrap : wrap;
  justify-content : center;
  gap : 20px 10px;
  margin-top : 20px;
}

.mod-media-02 > .link {
  text-decoration : none;
  width : calc(50% - 5px);
}

.mod-media-02 > .link .image {
  position : relative;
}

.mod-media-02 > .link .image::before {
  content : '';
  display : block;
  position : absolute;
  left : 0;
  top : 0;
  width : 100%;
  height : 100%;
  transition : background-color .3s;
  background-color : transparent;
}

.mod-media-02 > .link .image > img {
  vertical-align : bottom;
  width : 100%;
}

.mod-media-02 > .link[href]:hover .image::before,
.mod-media-02 > .link[href]:focus .image::before {
  background-color : #1d242e;
  opacity : .7;
}

.mod-media-02 > .link > .mod-media-02-container > .media-02 {
  width : 100%;
  margin-right : 10px;
  flex-shrink : 0;
}

.mod-media-02 > .link > .mod-media-02-container > .content > .title {
  font-weight : bold;
  margin : 10px 0 15px;
  text-decoration : none;
  color : #525252;
  display : table;
}

.mod-media-02 > .link > .mod-media-02-container > .content > .title > .text {
  position : relative;
  padding-left : 27px;
  display : table-cell;
}

.mod-media-02 > .link > .mod-media-02-container > .content > .title > .text::before,
.mod-media-02 > .link > .mod-media-02-container > .content > .title > .text::after {
  content : '';
  display : block;
  position : absolute;
  top : 4px;
  left : 0;
}

.mod-media-02 > .link > .mod-media-02-container > .content > .title > .text::before {
  border-radius : 50%;
  width : 17px;
  height : 17px;
  background-color : #043d84;
}

.mod-media-02 > .link > .mod-media-02-container > .content > .title > .text::after {
  margin : 5px 0 0 4px;
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  width : 6px;
  height : 6px;
  transform-origin : center;
  transform : rotate(-45deg);
}

.mod-media-02 > .link > .mod-media-02-container > .content > .text {
  display : none;
  color : #525252;
}

._mobile-1 {
  display : flex;
  flex-flow : column;
}

._mobile-1 .link {
  width : 100%;
}

._mobile-1 .link .mod-media-02-container {
  display : flex;
}

._mobile-1 .link .mod-media-02-container .media-02 {
  width : auto;
}

._mobile-1 .link .mod-media-02-container .content .title {
  margin : 0 0 15px;
}

._mobile-1 .link .image > img {
  max-width : 101px;
}

@media screen and (min-width: 813px) {
  .mod-media-02 {
    flex-wrap : wrap;
    flex-direction : row;
    gap : 30px 40px;
    margin : 40px 0 40px;
  }
  .mod-media-02 > .link {
    width : calc(50% - 20px);
  }
  .mod-media-02 > .link .mod-media-02-container {
    display : flex;
  }
  .mod-media-02 > .link .mod-media-02-container .media-02 {
    flex-shrink : 0;
    width : auto;
    margin-right : 10px;
  }
  .mod-media-02 > .link .mod-media-02-container > .content > .title {
    margin : 0 0 10px;
  }
  .mod-media-02 > .link .mod-media-02-container > .content > .text {
    display : block;
  }
  ._mobile-1 .link .image > img {
    max-width : 100%;
  }
}

.mod-media-voicearea {
  margin-top : 40px;
}

.mod-media-voicearea > .mod-media-voice {
  flex-flow : column;
  padding : 20px 30px;
  border : 1px solid #d1d2d3;
  margin-bottom : 30px;
  background-color : #fff;
}

.mod-media-voicearea > .mod-media-voice > .voice-text-content {
  display : flex;
  align-items : center;
  margin-top : 20px;
}

.mod-media-voicearea > .mod-media-voice > .media-voice-img-content {
  text-align : center;
}

.mod-media-voicearea > .mod-media-voice > .media-voice-img-content .media-voice-img-text {
  font-weight : bold;
}

.mod-media-voicearea > .mod-media-voice > .media-voice-img-content .media-voice-img {
  text-align : center;
}

.mod-media-voicearea > .mod-media-voice > .media-voice-img-content .media-voice-img > img {
  width : 35%;
}

.br-sp {
  display : none;
}

@media screen and (min-width: 813px) {
  .mod-media-voicearea {
    display : flex;
    flex-wrap : wrap;
    flex-direction : row;
    gap : 30px;
  }
  .mod-media-voicearea .mod-media-voice {
    display : flex;
    flex-direction : row;
    width : calc(50% - 15px);
    margin-bottom : 0;
  }
  .mod-media-voicearea .mod-media-voice > .voice-text-content {
    margin-top : 0;
  }
  .mod-media-voicearea .mod-media-voice > .media-voice-img-content {
    margin-right : 20px;
    flex-shrink : 0;
    display : flex;
    flex-direction : column;
    justify-content : center;
    align-items : center;
  }
  .mod-media-voicearea .mod-media-voice > .media-voice-img-content .media-voice-img > img {
    width : 100%;
  }
  .br-sp {
    display : block;
  }
}

.mod-media-reason-01 {
  display : flex;
  flex-flow : column;
  justify-content : center;
  min-height : 1%;
  padding-bottom : 20px;
}

.mod-media-reason-01 > .media *:first-child {
  margin-top : 30px;
}

.mod-media-reason-01 > .media .mod-media-fulid._height-fixation > .media img {
  width : auto;
}

.mod-media-reason-01 > .content {
  text-align : center;
}

.mod-media-reason-01 > .content .mod-text {
  line-height : 1.6;
  margin-top : 12px;
  text-align : left;
}

.mod-media-reason-01 > .content .reason-pc-button {
  display : none;
}

@media screen and (min-width: 813px) {
  .mod-media-reason-01 {
    display : flex;
    flex-direction : row;
    padding : 20px 0 30px 0;
  }
  .mod-media-reason-01 > .media {
    flex : 1 1 30%;
    margin-left : 30px;
  }
  .mod-media-reason-01 > .media *:first-child {
    margin-top : 0;
  }
  .mod-media-reason-01 > .content {
    flex : 1 1 40%;
    margin-right : 30px;
    text-align : left;
  }
  .mod-media-reason-01 > .content .mod-text {
    margin-top : 27px;
    line-height : 2.4;
  }
  .mod-media-reason-01 > .content .reason-pc-button {
    display : block;
  }
  .mod-media-reason-01 .reason-sp-button {
    display : none;
  }
}

.mod-media-reason-02 {
  padding : 20px 0 20px 0;
  text-align : center;
}

.mod-media-reason-02 > .text {
  margin-top : 23px;
  text-align : left;
  font-size : 1.5rem;
  line-height : 1.6;
}

.mod-media-reason-02 > .media {
  margin-top : 30px;
}

.mod-media-reason-02 .reason-img02-pc {
  display : none;
}

@media screen and (min-width: 813px) {
  .mod-media-reason-02 {
    padding : 30px 0;
    text-align : left;
  }
  .mod-media-reason-02 > .media {
    margin-top : 60px;
  }
  .mod-media-reason-02 > .text {
    line-height : 2.4;
  }
  .mod-media-reason-02 .reason-img02-pc {
    display : block;
  }
  .mod-media-reason-02 .reason-img02-sp {
    display : none;
  }
}

.mod-media-reason-03 {
  display : flex;
  flex-flow : column;
  justify-content : center;
  margin-top : 80px;
  min-height : 1%;
  padding : 20px 0 40px 0;
}

.mod-media-reason-03 > .media {
  order : 2;
}

.mod-media-reason-03 > .media *:first-child {
  margin-top : 30px;
}

.mod-media-reason-03 > .media .mod-media-fulid._height-fixation > .media img {
  width : auto;
}

.mod-media-reason-03 > .content {
  text-align : center;
  order : 1;
}

.mod-media-reason-03 > .content .mod-text {
  line-height : 1.6;
  margin-top : 12px;
  text-align : left;
}

.mod-media-reason-03 > .content .reason-pc-button {
  display : none;
}

.mod-media-reason-03 .reason-sp-button {
  order : 3;
}

@media screen and (min-width: 813px) {
  .mod-media-reason-03 {
    display : flex;
    flex-direction : row;
    padding : 30px 0;
  }
  .mod-media-reason-03 > .media {
    flex : 1 1 30%;
    margin-right : 30px;
    order : 1;
  }
  .mod-media-reason-03 > .media *:first-child {
    margin-top : 0;
  }
  .mod-media-reason-03 > .content {
    flex : 1 1 40%;
    margin-left : 30px;
    text-align : left;
  }
  .mod-media-reason-03 > .content .mod-text {
    margin-top : 27px;
    line-height : 2.4;
  }
  .mod-media-reason-03 > .content .reason-pc-button {
    display : block;
  }
  .mod-media-reason-03 .reason-sp-button {
    display : none;
  }
}

.mod-table,
.mod-table-row,
.mod-table-row-primary,
.mod-table-row-sub {
  margin-top : 25px;
}

.mod-table > table,
.mod-table-row > table {
  border-collapse : collapse;
  border-left : 1px solid #fff;
  border-top : 1px solid #fff;
  margin : 0 -1px;
  width : 100%;
}

.mod-table > table th,
.mod-table > table td,
.mod-table-row > table th,
.mod-table-row > table td {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  color : #333;
  font-size : 1.3rem;
  font-weight : normal;
  padding : 11px 10px;
}

.mod-table > table th._center,
.mod-table > table td._center,
.mod-table-row > table th._center,
.mod-table-row > table td._center {
  text-align : center;
}

.mod-table > table th._right,
.mod-table > table td._right,
.mod-table-row > table th._right,
.mod-table-row > table td._right {
  text-align : right;
}

.mod-table > table tbody th,
.mod-table > table tbody td,
.mod-table-row > table tbody th,
.mod-table-row > table tbody td {
  background-color : #eceef1;
  text-align : left;
}

.mod-table > table tbody th > [class^="mod-"]:first-child,
.mod-table > table tbody td > [class^="mod-"]:first-child,
.mod-table-row > table tbody th > [class^="mod-"]:first-child,
.mod-table-row > table tbody td > [class^="mod-"]:first-child {
  margin-top : 0;
}

.mod-table > table tbody:not(._unification) tr:nth-child(even) th,
.mod-table > table tbody:not(._unification) tr:nth-child(even) td,
.mod-table-row > table tbody:not(._unification) tr:nth-child(even) th,
.mod-table-row > table tbody:not(._unification) tr:nth-child(even) td {
  background-color : #dbe0e8;
}

.mod-table > table + .mod-text,
.mod-table-row > table + .mod-text {
  margin-top : 10px;
}

.mod-table > table .width-10,
.mod-table-row > table .width-10 {
  width : 10%;
}

.mod-table > table .width-20,
.mod-table-row > table .width-20 {
  width : 20%;
}

.mod-table > table .width-30,
.mod-table-row > table .width-30 {
  width : 30%;
}

.mod-table > table .width-40,
.mod-table-row > table .width-40 {
  width : 40%;
}

.mod-table > table .width-50,
.mod-table-row > table .width-50 {
  width : 50%;
}

.mod-table > table .width-60,
.mod-table-row > table .width-60 {
  width : 60%;
}

.mod-table > table .width-70,
.mod-table-row > table .width-70 {
  width : 70%;
}

.mod-table > table .width-80,
.mod-table-row > table .width-80 {
  width : 80%;
}

.mod-table > table .width-90,
.mod-table-row > table .width-90 {
  width : 90%;
}

.mod-table > table thead th {
  background-color : #b9c8da;
}

.mod-table-row-primary > table {
  border-collapse : collapse;
  border-left : 1px solid #fff;
  border-top : 1px solid #fff;
  margin : 0 -1px;
  width : 100%;
}

.mod-table-row-primary > table th,
.mod-table-row-primary > table td {
  border-bottom : 1px solid #fff;
  border-right : 1px solid #fff;
  color : #333;
  font-size : 1.5rem;
  font-weight : 300;
  letter-spacing : 0.75px;
  padding : 11px 10px;
}


.mod-table-row-primary > table th._center,
.mod-table-row-primary > table td._center {
  text-align : center;
}

.mod-table-row-primary > table th._right,
.mod-table-row-primary > table td._right {
  text-align : right;
}

.mod-table-row-primary > table tbody th {
  background-color : #b9c8da;
}

.mod-table-row-primary > table tbody td {
  background-color : #eceef1;
}

.mod-table-row-primary > table tbody th,
.mod-table-row-primary > table tbody td {
  text-align : left;
}

.mod-table-row-primary > table + .mod-text {
  margin-top : 10px;
}

.mod-table-row-primary > table .width-10 { width : 10%; }
.mod-table-row-primary > table .width-20 { width : 20%; }
.mod-table-row-primary > table .width-30 { width : 30%; }
.mod-table-row-primary > table .width-40 { width : 40%; }
.mod-table-row-primary > table .width-50 { width : 50%; }
.mod-table-row-primary > table .width-60 { width : 60%; }
.mod-table-row-primary > table .width-70 { width : 70%; }
.mod-table-row-primary > table .width-80 { width : 80%; }
.mod-table-row-primary > table .width-90 { width : 90%; }

.mod-table-row-sub > table {
  border-collapse : collapse;
  border-left : 1px solid #eceef1;
  border-top : 1px solid #eceef1;
  margin : 0 -1px;
  width : 100%;
}

.mod-table-row-sub > table th,
.mod-table-row-sub > table td {
  border-bottom : 1px solid #eceef1;
  border-right : 1px solid #eceef1;
  color : #333;
  font-size: 1.3rem;
  font-weight : 300;
  line-height : 1.6;
  letter-spacing : 0.65px;
  padding : 11px 10px;
}

.mod-table-row-sub > table th._center,
.mod-table-row-sub > table td._center {
  text-align : center;
}

.mod-table-row-sub > table th._right,
.mod-table-row-sub > table td._right {
  text-align : right;
}

.mod-table-row-sub > table tbody th {
  background-color : #b9c8da;
}

.mod-table-row-sub > table tbody td {
  background-color : #fff;
}

.mod-table-row-sub > table tbody th,
.mod-table-row-sub > table tbody td {
  text-align : left;
}

.mod-table-row-sub > table + .mod-text {
  margin-top : 10px;
}

.mod-table-row-sub > table .width-10 { width : 10%; }
.mod-table-row-sub > table .width-20 { width : 20%; }
.mod-table-row-sub > table .width-30 { width : 30%; }
.mod-table-row-sub > table .width-40 { width : 40%; }
.mod-table-row-sub > table .width-50 { width : 50%; }
.mod-table-row-sub > table .width-60 { width : 60%; }
.mod-table-row-sub > table .width-70 { width : 70%; }
.mod-table-row-sub > table .width-80 { width : 80%; }
.mod-table-row-sub > table .width-90 { width : 90%; }

.str-container._with-bg-gray .mod-table > table,
.str-container._with-bg-gray .mod-table-row > table {
  border-left : 1px solid #eceef1;
  border-top : 1px solid #eceef1;
}

.str-container._with-bg-gray .mod-table > table th,
.str-container._with-bg-gray .mod-table > table td,
.str-container._with-bg-gray .mod-table-row > table th,
.str-container._with-bg-gray .mod-table-row > table td {
  border-bottom : 1px solid #eceef1;
  border-right : 1px solid #eceef1;
}

.str-container._with-bg-gray .mod-table > table tbody th,
.str-container._with-bg-gray .mod-table > table tbody td,
.str-container._with-bg-gray .mod-table-row > table tbody th,
.str-container._with-bg-gray .mod-table-row > table tbody td {
  background-color : #fff;
}

.str-container._with-bg-gray .mod-table > table tbody:not(._unification) tr:nth-child(even) th,
.str-container._with-bg-gray .mod-table > table tbody:not(._unification) tr:nth-child(even) td,
.str-container._with-bg-gray .mod-table-row > table tbody:not(._unification) tr:nth-child(even) th,
.str-container._with-bg-gray .mod-table-row > table tbody:not(._unification) tr:nth-child(even) td {
  background-color : #dae0e8;
}

.mod-table._scroll,
.mod-table-row._scroll {
  overflow-x : auto;
}

.mod-table._scroll > table,
.mod-table-row._scroll > table {
  min-width : 510px;
}

@media screen and (min-width: 813px) {
  .mod-table,
  .mod-table-row,
  .mod-table-row-primary,
  .mod-table-row-sub {
    margin-top : 40px;
  }
  .mod-table > table th,
  .mod-table > table td,
  .mod-table-row > table th,
  .mod-table-row > table td,
  .mod-table-row-primary > table th,
  .mod-table-row-primary > table td,
  .mod-table-row-sub > table th,
  .mod-table-row-sub > table td {
    font-size : 1.5rem;
  }
  .mod-table > table th,
  .mod-table > table td,
  .mod-table-row > table th,
  .mod-table-row > table td,
  .mod-table-row-primary > table th,
  .mod-table-row-primary > table td,
  .mod-table-row-sub > table th,
  .mod-table-row-sub > table td {
    letter-spacing : 0.75px;
  }
}

.mod-table-row > table tbody tr th:not(.td-cell-color) {
  background-color : #b9c8da;
}

.str-container._with-bg-gray .mod-table-row > table tbody th:not(.td-cell-color) {
  background-color : #b9c8da;
}

.mod_lyt_floormap .dmc_map .btn_zoom {
  z-index : 6;
}

.mod_lyt_floormap .dmc_map .map {
  position : relative;
  transform-origin : 0 0;
}

.mod_lyt_floormap .dmc_img .map.isZoom {
  transform : scale(2);
}

.mod_lyt_floormap {
  width : 100%;
}

@media screen and (min-width: 813px) {
  .mod_lyt_floormap {
    max-width : 800px;
    margin : 0 auto;
  }
}

.mod_lyt_floormap .dmc_map {
  position : relative;
  width : 100%;
  margin-top : 10px;
  overflow : hidden;
}

.mod_lyt_floormap .dmc_map .btn_zoom {
  position : absolute;
  top : 25px;
  left : 20px;
}

.mod_lyt_floormap .dmc_map .btn_zoom button {
  display : block;
  position : relative;
  width : 42px;
  height : 42px;
  text-indent : -1000%;
  overflow : hidden;
  background-color : #043d84;
  border-radius : 50%;
  cursor : pointer;
}

.mod_lyt_floormap .dmc_map .btn_zoom button._plus {
  margin-bottom : 5px;
  background-color : #043d84;
}

.mod_lyt_floormap .dmc_map .btn_zoom button._plus::before,
.mod_lyt_floormap .dmc_map .btn_zoom button._plus::after {
  content : '';
  display : inline-block;
  position : absolute;
  top : 50%;
  left : 50%;
  width : 15px;
  height : 3px;
  margin-top : -1px;
  margin-left : -7px;
  background-color : #fff;
  border-radius : 2px;
}

.mod_lyt_floormap .dmc_map .btn_zoom button._plus::after {
  transform : rotate(90deg);
}

.mod_lyt_floormap .dmc_map .btn_zoom button._minus::before {
  content : '';
  display : inline-block;
  position : absolute;
  top : 50%;
  left : 50%;
  width : 15px;
  height : 3px;
  margin-top : -1px;
  margin-left : -7px;
  background-color : #fff;
  border-radius : 2px;
}

.mod_lyt_floormap .dmc_map .btn_zoom button[disabled] {
  background-color : #ccc;
  pointer-events : none;
}

.mod_lyt_floormap .dmc_map .dmc_img {
  margin-bottom : 30px;
  overflow : auto;
  border : 1px solid #bebebe;
  background-color : #fff;
  cursor : grab;
}

@media screen and (min-width: 813px) {
  .mod_lyt_floormap .dmc_map .dmc_img {
    margin-bottom : 20px;
  }
}

.mod_lyt_floormap .dmc_map .dmc_img:active {
  cursor : grabbing;
}

.mod_lyt_floormap .map-link:hover {
  transition : opacity .3s;
  opacity : .7;
}

.mod_lyt_floormap .cls-1 {
  fill : #e6e4e2;
}

.mod_lyt_floormap .cls-2 {
  fill : #d5dedf;
}

.mod_lyt_floormap .cls-3 {
  stroke-width : 1.42px;
}

.mod_lyt_floormap .cls-3,
.mod_lyt_floormap .cls-4,
.mod_lyt_floormap .cls-5,
.mod_lyt_floormap .cls-6,
.mod_lyt_floormap .cls-7,
.mod_lyt_floormap .cls-8,
.mod_lyt_floormap .cls-9 {
  fill : none;
}

.mod_lyt_floormap .cls-3,
.mod_lyt_floormap .cls-4,
.mod_lyt_floormap .cls-7,
.mod_lyt_floormap .cls-8,
.mod_lyt_floormap .cls-9,
.mod_lyt_floormap .cls-10 {
  stroke-linecap : round;
}

.mod_lyt_floormap .cls-3,
.mod_lyt_floormap .cls-11,
.mod_lyt_floormap .cls-5,
.mod_lyt_floormap .cls-7 {
  stroke-miterlimit : 10;
}

.mod_lyt_floormap .cls-3,
.mod_lyt_floormap .cls-5,
.mod_lyt_floormap .cls-7 {
  stroke : #283337;
}

.mod_lyt_floormap .cls-12 {
  fill : #d3cdcf;
}

.mod_lyt_floormap .cls-13 {
  fill : #c1c3c1;
}

.mod_lyt_floormap .cls-4 {
  stroke : #0068b6;
  stroke-dasharray : 0 0 0 3.31;
  stroke-width : 2.32px;
}

.mod_lyt_floormap .cls-4,
.mod_lyt_floormap .cls-8,
.mod_lyt_floormap .cls-9,
.mod_lyt_floormap .cls-10 {
  stroke-linejoin : round;
}

.mod_lyt_floormap .cls-14,
.mod_lyt_floormap .cls-11,
.mod_lyt_floormap .cls-15,
.mod_lyt_floormap .cls-10,
.mod_lyt_floormap .cls-16 {
  fill : #fff;
}

.mod_lyt_floormap .cls-17 {
  fill : #81a6b5;
}

.mod_lyt_floormap .cls-18 {
  fill : #b7d1dd;
}

.mod_lyt_floormap .cls-19 {
  fill : #f2efe7;
}

.mod_lyt_floormap .cls-20 {
  opacity : .5;
}

.mod_lyt_floormap .cls-11,
.mod_lyt_floormap .cls-15 {
  stroke : #043d84;
}

.mod_lyt_floormap .cls-21 {
  fill : #938283;
}

.mod_lyt_floormap .cls-22 {
  fill : #eef1f2;
}

.mod_lyt_floormap .cls-23 {
  fill : #f1f2f0;
}

.mod_lyt_floormap .cls-24 {
  fill : #ddc7aa;
}

.mod_lyt_floormap .cls-25 {
  fill : #afaba3;
}

.mod_lyt_floormap .cls-26 {
  fill : #f6f8f7;
}

.mod_lyt_floormap .cls-27 {
  fill : #9ab472;
}

.mod_lyt_floormap .cls-27,
.mod_lyt_floormap .cls-28 {
  fill-rule : evenodd;
}

.mod_lyt_floormap .cls-29 {
  clip-path : url(#clippath-2);
}

.mod_lyt_floormap .cls-30 {
  isolation : isolate;
}

.mod_lyt_floormap .cls-31 {
  fill : #a0a6a8;
}

.mod_lyt_floormap .cls-32 {
  fill : #ede1c7;
}

.mod_lyt_floormap .cls-33 {
  fill : #e3ddd2;
}

.mod_lyt_floormap .cls-34 {
  clip-path : url(#clippath-6);
}

.mod_lyt_floormap .cls-35 {
  fill : #f2ead6;
}

.mod_lyt_floormap .cls-36 {
  fill : #eef3f4;
}

.mod_lyt_floormap .cls-37 {
  fill : #283337;
}

.mod_lyt_floormap .cls-38 {
  fill : #96a8ad;
}

.mod_lyt_floormap .cls-39 {
  fill : #b8d8d2;
}

.mod_lyt_floormap .cls-40 {
  fill : #e6d2b1;
}

.mod_lyt_floormap .cls-41 {
  fill : #95a7ad;
}

.mod_lyt_floormap .cls-42 {
  clip-path : url(#clippath-1);
}

.mod_lyt_floormap .cls-43 {
  clip-path : url(#clippath-4);
}

.mod_lyt_floormap .cls-44 {
  fill : #90b8c7;
}

.mod_lyt_floormap .cls-45 {
  fill : #ebeae9;
}

.mod_lyt_floormap .cls-46 {
  fill : #b5d8e0;
}

.mod_lyt_floormap .cls-47 {
  fill : #e6ebec;
}

.mod_lyt_floormap .cls-48 {
  fill : #d9dcdd;
}

.mod_lyt_floormap .cls-49 {
  fill : #8fb7c7;
}

.mod_lyt_floormap .cls-50 {
  fill : #a9d1ca;
}

.mod_lyt_floormap .cls-51 {
  fill : #a6bac0;
}

.mod_lyt_floormap .cls-52 {
  fill : #cbe7f4;
}

.mod_lyt_floormap .cls-53 {
  fill : #a3bac5;
}

.mod_lyt_floormap .cls-54 {
  fill : #d9dddd;
}

.mod_lyt_floormap .cls-55 {
  fill : #82a7b5;
}

.mod_lyt_floormap .cls-56 {
  fill : #dedad8;
}

.mod_lyt_floormap .cls-57 {
  fill : #008cc4;
}

.mod_lyt_floormap .cls-58 {
  fill : #709aaf;
}

.mod_lyt_floormap .cls-59 {
  fill : #f6f8f8;
}

.mod_lyt_floormap .cls-60 {
  fill : #dbe2e3;
}

.mod_lyt_floormap .cls-61 {
  fill : #eeeeef;
}

.mod_lyt_floormap .cls-62 {
  fill : #fdfdfd;
}

.mod_lyt_floormap .cls-63 {
  fill : #c0a985;
}

.mod_lyt_floormap .cls-28 {
  fill : #90ad64;
}

.mod_lyt_floormap .cls-64 {
  fill : #b0aaa9;
}

.mod_lyt_floormap .cls-65 {
  fill : #e6ebeb;
}

.mod_lyt_floormap .cls-66 {
  fill : #ced0ce;
}

.mod_lyt_floormap .cls-67 {
  clip-path : url(#clippath);
}

.mod_lyt_floormap .cls-68 {
  fill : #a7bbc1;
}

.mod_lyt_floormap .cls-69 {
  fill : #ebebeb;
}

.mod_lyt_floormap .cls-70 {
  fill : #5f8fa0;
}

.mod_lyt_floormap .cls-5 {
  stroke-width : .71px;
}

.mod_lyt_floormap .cls-71 {
  fill : #ab9261;
}

.mod_lyt_floormap .cls-72 {
  fill : #043d84;
}

.mod_lyt_floormap .cls-73 {
  clip-path : url(#clippath-3);
}

.mod_lyt_floormap .cls-74 {
  fill : #eee2c7;
}

.mod_lyt_floormap .cls-75 {
  fill : #f7f6f2;
}

.mod_lyt_floormap .cls-76 {
  fill : #ded7cd;
}

.mod_lyt_floormap .cls-77 {
  fill : #e9d9b6;
}

.mod_lyt_floormap .cls-78 {
  fill : #c0bbb2;
}

.mod_lyt_floormap .cls-7 {
  stroke-width : 1.42px;
}

.mod_lyt_floormap .cls-79 {
  fill : #709bb0;
}

.mod_lyt_floormap .cls-80 {
  clip-path : url(#clippath-5);
}

.mod_lyt_floormap .cls-8,
.mod_lyt_floormap .cls-10 {
  stroke : #fff;
  stroke-width : .89px;
}

.mod_lyt_floormap .cls-81 {
  fill : #e5e3da;
}

.mod_lyt_floormap .cls-82 {
  fill : #e8805a;
}

.mod_lyt_floormap .cls-9 {
  stroke : #ada4a0;
  stroke-width : 1.83px;
}

.mod_lyt_floormap .cls-83 {
  fill : #9fa5a7;
}

.mod_lyt_floormap .cls-84 {
  fill : #0075c1;
}

.mod_lyt_floormap .cls-85 {
  fill : #c1c6c7;
}

.mod_lyt_floormap .cls-86 {
  fill : #f3f6f6;
}

.mod_lyt_floormap .cls-87 {
  mix-blend-mode : multiply;
}

.mod_lyt_floormap .cls-88 {
  fill : #eae9e6;
}

.mod_lyt_floormap .cls-16 {
  stroke : #717071;
  stroke-width : .42px;
}

.mod_lyt_floormap .cls-89 {
  fill : #81aca5;
}

.mod_lyt_floormap .cls-90 {
  fill : #cab78e;
}
