@charset "UTF-8";
@font-face {
  font-family: 'NotosansCjkjp-Regular';
  src: url("../fonts/notosans-cjkjp-regular.woff2") format("woff2"), url("../fonts/notosans-cjkjp-regular.woff") format("woff"), url("../fonts/notosans-cjkjp-regular.otf") format("opentype");
  font-display: swap;
}
@font-face {
  font-family: 'NotosansCjkjp-Medium';
  src: url("../fonts/notosans-cjkjp-medium.woff2") format("woff2"), url("../fonts/notosans-cjkjp-medium.woff") format("woff"), url("../fonts/notosans-cjkjp-medium.otf") format("opentype");
  font-display: swap;
}
@font-face {
  font-family: 'fontello';
  src: url("../fonts/fontello.eot?62376253");
  src: url("../fonts/fontello.eot?62376253#iefix") format("embedded-opentype"), url("../fonts/fontello.woff2?62376253") format("woff2"), url("../fonts/fontello.woff?62376253") format("woff"), url("../fonts/fontello.ttf?62376253") format("truetype"), url("../fonts/fontello.svg?62376253#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?62376253#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-left-dir:before {
  content: '\e800';
}

/* '' */
.icon-right-dir:before {
  content: '\e801';
}

/* '' */
.icon-up-dir:before {
  content: '\e802';
}

/* '' */
.icon-down-dir:before {
  content: '\e803';
}

/* '' */
.icon-left-open:before {
  content: '\e804';
}

/* '' */
.icon-right-open:before {
  content: '\e805';
}

/* '' */
.icon-up-open:before {
  content: '\e806';
}

/* '' */
.icon-down-open:before {
  content: '\e807';
}

/* '' */
.icon-left:before {
  content: '\e808';
}

/* '' */
.icon-right:before {
  content: '\e809';
}

/* '' */
.icon-up:before {
  content: '\e80a';
}

/* '' */
.icon-donw:before {
  content: '\e80b';
}

/* '' */
.icon-blank:before {
  content: '\e80c';
}

/* '' */
.icon-mail:before {
  content: '\e80d';
}

/* '' */
.icon-pdf:before {
  content: '\e80e';
}

/* '' */
.icon-cancel:before {
  content: '\e80f';
}

/* '' */
.icon-inq:before {
  content: '\e810';
}

/* '' */
/* # reset
---------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, fieldset,
footer, header, hgroup, menu, nav, section, summary, main, picture {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  outline: 0;
  box-sizing: border-box;
  font-style: normal;
}

article, aside, canvas, details, figcaption, figure, fieldset,
footer, header, hgroup, menu, nav, section, summary, main, picture {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

:focus {
  outline: 0;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  box-sizing: border-box;
  font-weight: normal;
}

html, body {
  width: 100%;
}

html {
  font-size: 62.5%;
}

body {
  word-break: break-word;
  -webkit-text-size-adjust: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
}

img {
  max-width: 100%;
  height: auto;
}

input {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

select {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
}

/* --------------------------------------------------
  keyframes
-------------------------------------------------- */
@-webkit-keyframes fadeAnimation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeAnimation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* --------------------------------------------------
  html tags
-------------------------------------------------- */
body {
  font-family: sans-serif;
  font-family: 'NotosansCjkjp-Regular' , sans-serif;
  font-size: 1.6rem;
  line-height: 1.875;
  color: #171717;
  overflow-x: hidden;
  position: relative;
  padding-top: 64px;
}
@media print, screen and (min-width: 1001px) {
  body {
    padding-top: 0;
  }
}

@media print, screen and (max-width: 1000px) {
  body.hidden,
  body.modal_open {
    overflow: hidden;
  }
}

a {
  font-family: 'NotosansCjkjp-Medium';
  color: #28A7CA;
  text-decoration: none;
}
@media print, screen and (min-width: 1001px) {
  a {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
}

b {
  font-weight: 600;
}

h1, h2, h3,
h4, h5, h6,
.heading_style_h2,
.heading_style_h3,
.heading_style_h4,
.heading_style_h5 {
  font-family: 'NotosansCjkjp-Medium';
  line-height: 1.47368;
}
h1 a, h2 a, h3 a,
h4 a, h5 a, h6 a,
.heading_style_h2 a,
.heading_style_h3 a,
.heading_style_h4 a,
.heading_style_h5 a {
  text-decoration: none;
}
h1 a::after, h2 a::after, h3 a::after,
h4 a::after, h5 a::after, h6 a::after,
.heading_style_h2 a::after,
.heading_style_h3 a::after,
.heading_style_h4 a::after,
.heading_style_h5 a::after {
  display: inline-block;
  margin-left: 2px;
  content: "\e805";
  font-family: fontello;
  font-weight: 400;
}
h1 a[href$=".pdf"]::after, h2 a[href$=".pdf"]::after, h3 a[href$=".pdf"]::after,
h4 a[href$=".pdf"]::after, h5 a[href$=".pdf"]::after, h6 a[href$=".pdf"]::after,
.heading_style_h2 a[href$=".pdf"]::after,
.heading_style_h3 a[href$=".pdf"]::after,
.heading_style_h4 a[href$=".pdf"]::after,
.heading_style_h5 a[href$=".pdf"]::after {
  display: inline-block;
  margin-left: 4px;
  content: "\e80e";
  font-family: fontello;
  font-weight: 400;
}
h1 a[target]::after, h2 a[target]::after, h3 a[target]::after,
h4 a[target]::after, h5 a[target]::after, h6 a[target]::after,
.heading_style_h2 a[target]::after,
.heading_style_h3 a[target]::after,
.heading_style_h4 a[target]::after,
.heading_style_h5 a[target]::after {
  transform: scale(1.25);
  display: inline-block;
  margin-left: 4px;
  content: "\e80c";
  font-family: fontello;
  font-weight: 400;
}

/* --------------------------------------------------
  main
-------------------------------------------------- */
.main {
  padding-top: 40px;
  padding-bottom: 70px;
}
@media print, screen and (min-width: 1001px) {
  .main {
    padding-top: 90px;
    padding-bottom: 60px;
  }
}

.main_unique {
  padding-top: 0;
}

/* --------------------------------------------------
  header
-------------------------------------------------- */
.header {
  border-top: solid 12px #28A7CA;
  background-color: #fff;
  width: 100%;
  height: 64px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
.header p + p {
  margin-top: 0;
}
@media print, screen and (min-width: 1001px) {
  .header {
    border-top: solid 35px #28A7CA;
    height: auto;
    position: relative;
    top: auto;
    left: auto;
  }
}

@media print, screen and (min-width: 1001px) {
  .header_container {
    max-width: 1230px;
    margin: 0 auto;
    padding: 32px 15px;
  }
}

.header_logo {
  width: 198px;
  margin-left: 12px;
}
@media print, screen and (min-width: 1001px) {
  .header_logo {
    width: 262px;
    margin-left: 0;
  }
}
.header_logo a, .header_logo img {
  display: block;
}
.header_logo a {
  padding: 14px 0;
}
@media print, screen and (min-width: 1001px) {
  .header_logo a {
    padding: 0;
  }
}

.header_menu {
  background-color: #28A7CA;
  color: #fff;
  position: fixed;
  width: 59px;
  height: 57px;
  top: 0;
  right: 0;
  z-index: 20;
  text-align: center;
  font-size: 12px;
  border-radius: 0 0 0 5px;
  padding-top: 8px;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  .header_menu {
    display: none;
  }
}
.header_menu::before, .header_menu::after {
  content: "";
  display: block;
  width: 32px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: 14px;
  z-index: 10;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.header_menu::before {
  top: 32px;
}
.header_menu::after {
  top: 40px;
}
.header_menu .open {
  display: block;
}
.header_menu .close {
  display: none;
}

.header_menu.active::before, .header_menu.active::after {
  width: 17px;
  top: 36px;
  left: 22px;
}
.header_menu.active::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.header_menu.active::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.header_menu.active .open {
  display: none;
}
.header_menu.active .close {
  display: block;
}

.header_contact {
  position: absolute;
  top: -35px;
  right: 0;
  z-index: 20;
}
@media print, screen and (max-width: 1000px) {
  .header_contact {
    display: none;
  }
}
.header_contact a {
  display: block;
  color: #fff;
  background: #28A7CA;
  text-decoration: none;
  border-radius: 0 0 0 8px;
  font-size: 1rem;
  font-weight: 600;
  padding: 54px 10px 8px 10px;
  text-align: center;
}
.header_contact a:before {
  position: absolute;
  top: 12px;
  left: 0;
  right: 0;
  display: block;
  content: "\E810";
  font-family: fontello;
  font-weight: 400;
  font-size: 36px;
  text-align: center;
  line-height: 1;
}
.header_contact a:hover {
  color: rgba(255, 255, 255, 0.7);
}

.header_nav {
  background-color: #fff;
}
@media print, screen and (max-width: 1000px) {
  .header_nav {
    display: none;
    position: fixed;
    top: 64px;
    left: 0;
    z-index: 10;
    width: 100%;
    max-height: calc( 100vh - 64px );
    overflow: auto;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav {
    border-top: solid 1px #D8D8D8;
    display: block !important;
  }
}
.header_nav a {
  text-decoration: none;
}

@media print, screen and (min-width: 1001px) {
  .header_nav_main {
    max-width: 1200px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.header_nav_main > li {
  border-top: solid 1px #D8D8D8;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li {
    border-top: none;
    width: calc( 100% / 4 );
  }
}
.header_nav_main > li > span,
.header_nav_main > li > a {
  display: block;
  color: #171717;
  padding: 15px 30px 15px 28px;
  position: relative;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span,
  .header_nav_main > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 60px;
    text-align: center;
    font-size: 16px;
    line-height: 1.2;
    padding: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span:hover, .header_nav_main > li > span.active,
  .header_nav_main > li > a:hover,
  .header_nav_main > li > a.active {
    background-color: #28A7CA;
    color: #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span:hover::before, .header_nav_main > li > span.active::before,
  .header_nav_main > li > a:hover::before,
  .header_nav_main > li > a.active::before {
    display: none;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span::before,
  .header_nav_main > li > a::before {
    content: "";
    display: block;
    width: 0;
    height: 25px;
    border-left: solid 1px #A7A7A7;
    position: absolute;
    top: 15px;
    right: 0;
    z-index: 10;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li:last-child > span::before,
  .header_nav_main > li:last-child > a::before {
    display: none;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span.icon_next::after {
    -webkit-transform: translate(0, -25%) rotate(90deg);
    transform: translate(0, -25%) rotate(90deg);
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li > span:hover::after, .header_nav_main > li > span.active::after {
    border-left: solid 7px #fff;
  }
}
.header_nav_main > li .icon_next::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: solid 5px transparent;
  border-left: solid 7px #28A7CA;
  position: absolute;
  top: 50%;
  right: 15px;
  z-index: 10;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.header_nav_main > li .icon_link::after {
  display: inline-block;
  line-height: 1;
  font-size: 12px;
  position: absolute;
  top: 50%;
  right: 20px;
  z-index: 10;
  content: "\E805";
  font-family: fontello;
  font-weight: 400;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main > li .icon_link::after {
    font-size: 14px;
  }
}
.header_nav_main .header_subnav {
  position: fixed;
  top: 64px;
  left: 100%;
  z-index: 100;
  width: 100%;
  height: calc( 100vh - 65px );
  background-color: #fff;
  overflow: auto;
}
@media print, screen and (max-width: 1000px) {
  .header_nav_main .header_subnav {
    -webkit-transition: left .6s ease;
    transition: left .6s ease;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav {
    display: none;
    position: absolute;
    top: auto;
    left: 0;
    height: auto;
    background-color: rgba(17, 122, 152, 0.9);
  }
}
@media print, screen and (max-width: 1000px) {
  .header_nav_main .header_subnav ul {
    background-color: #F8F7F6;
    border-bottom: solid 1px #D8D8D8;
  }
}
.header_nav_main .header_subnav li {
  border-top: solid 1px #D8D8D8;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav li {
    border-top: none;
  }
}
.header_nav_main .header_subnav li span,
.header_nav_main .header_subnav li a {
  display: block;
  color: #171717;
  padding: 15px 35px 15px 12px;
  position: relative;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav li span,
  .header_nav_main .header_subnav li a {
    color: #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner {
    max-width: 1230px;
    margin: 0 auto;
    padding: 32px 15px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin-top: -10px;
    margin-left: -10px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li {
    width: calc(20% - 10px);
    margin-top: 10px;
    margin-left: 10px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > span,
  .header_nav_main .header_subnav_inner .subnav_list > li > a {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    height: 70px;
    padding: 10px 20px;
    border-radius: 5px;
    background: #fff;
    color: #171717;
    line-height: 1.4;
  }
  .header_nav_main .header_subnav_inner .subnav_list > li > span:after,
  .header_nav_main .header_subnav_inner .subnav_list > li > a:after {
    position: absolute;
    top: 50%;
    right: 17px;
    transform: translateY(-50%);
    content: "\E805";
    font-family: fontello;
    font-weight: 400;
    color: #D8D8D8;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > span.open {
    background-color: #28A7CA;
    color: #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > span.open::after {
    border-left: solid 7px #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > span:hover {
    background-color: #28A7CA;
    color: #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > span:hover::after {
    border-left: solid 7px #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav_inner .subnav_list > li > a:hover {
    background-color: #28A7CA;
    color: #fff;
  }
}
.header_nav_main .header_subnav.active {
  left: 0;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .header_subnav.active {
    display: block;
    -webkit-animation-name: fadeAnimation;
    animation-name: fadeAnimation;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
  }
}
.header_nav_main .subnav_heading {
  width: 100%;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading {
    position: relative;
    z-index: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 163px;
    margin-bottom: 30px;
    padding: 1em 64px 1em 297px;
    border-radius: 9px;
  }
}
.header_nav_main .subnav_heading .subnav_heading_inner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  height: 26.66667vw;
  width: 100%;
  padding-left: 50%;
  padding-right: 12px;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading .subnav_heading_inner {
    display: block;
    height: auto;
    padding: 0;
    background: none !important;
  }
}
.header_nav_main .subnav_heading .heading {
  font-family: 'NotosansCjkjp-Medium';
  font-size: 4.26667vw;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading .heading {
    font-size: 2.4rem;
  }
}
.header_nav_main .subnav_heading .btn_prev {
  position: absolute;
  bottom: 0;
  right: 12px;
  z-index: 10;
  font-size: 10px;
  padding: 10px 0;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading .btn_prev {
    display: none;
  }
}
.header_nav_main .subnav_heading .btn_prev span {
  display: inline-block;
  border: solid 1px #707070;
  background-color: #fff;
  text-align: center;
  padding: 2px 6px 2px 4px;
  border-radius: 5px;
}
.header_nav_main .subnav_heading .btn_prev span:before {
  content: "\E804";
  font-family: fontello;
  font-weight: 400;
  margin-right: 2px;
}
.header_nav_main .subnav_heading .subnav_heading_text {
  padding: 18px 12px;
  font-size: 10px;
  line-height: 2.4;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading .subnav_heading_text {
    padding: 5px 0 0;
    font-size: 1.4rem;
    line-height: 1.7;
  }
}
.header_nav_main .subnav_heading_1 .subnav_heading_inner {
  background: url(../img/common/img_subnav_heading_mobile_1.png) no-repeat left top/cover;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading_1 {
    background: url(../img/common/img_subnav_heading_laptop_1.png) no-repeat left top/cover;
  }
}
.header_nav_main .subnav_heading_2 .subnav_heading_inner {
  background: url(../img/common/img_subnav_heading_mobile_2.png) no-repeat left top/cover;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading_2 {
    background: url(../img/common/img_subnav_heading_laptop_2.png) no-repeat left top/cover;
  }
}
.header_nav_main .subnav_heading_3 .subnav_heading_inner {
  background: url(../img/common/img_subnav_heading_mobile_3.png) no-repeat left top/cover;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_heading_3 {
    background: url(../img/common/img_subnav_heading_laptop_3.png) no-repeat left top/cover;
  }
}
.header_nav_main .subnav_list_inner {
  display: none;
  border-top: solid 1px #D8D8D8;
  padding: 5px;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner {
    padding: 0;
    border-top: none;
    position: absolute;
    top: 0;
    left: 245px;
    z-index: 10;
    width: calc( 100% - 240px );
  }
}
.header_nav_main .subnav_list_inner ul {
  border: none;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.header_nav_main .subnav_list_inner li {
  padding: 5px;
  border: none;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner li {
    width: calc( 25% - 10px );
    background-color: #fff;
    margin: 5px;
    border-radius: 5px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner li:first-child {
    width: calc( 100% - 10px );
    margin-top: 0;
  }
}
.header_nav_main .subnav_list_inner li a {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  height: 100%;
  background-color: #fff;
  border-radius: 3px;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner li a {
    padding-top: 0;
    padding-bottom: 0;
    min-height: 70px;
    line-height: 1.5;
    color: #171717;
  }
}
.header_nav_main .subnav_list_inner li a::after {
  content: "\f054";
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-size: 12px;
  position: absolute;
  top: 50%;
  right: 15px;
  z-index: 10;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner li a:hover {
    color: #28A7CA;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_main .subnav_list_inner.open {
    display: block;
  }
}

.header_nav_sub {
  margin-top: 0;
  padding: 30px 0;
  background: #28A7CA;
}
.header_nav_sub a {
  position: relative;
  display: block;
  padding: 8px 30px 8px 28px;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.38;
}
.header_nav_sub a:before {
  position: absolute;
  left: 8px;
  top: 8px;
  transform: scale(0.8);
  content: "\E805";
  font-family: fontello;
  font-weight: 400;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_sub {
    display: none;
  }
}

.header_nav_en {
  position: absolute;
  top: 6px;
  right: 70px;
  z-index: 20;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_en {
    top: -35px;
    right: 80px;
  }
}
.header_nav_en a {
  display: block;
  color: #555;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  padding: 10px 0;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_en a {
    color: #fff;
    font-size: 1.2rem;
    padding: 6px 10px;
    height: 35px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_en a:hover {
    color: #28A7CA;
    background-color: #fff;
  }
}
.header_nav_en span {
  display: inline-block;
  border: solid 1px #D8D8D8;
  border-radius: 3px;
  text-align: center;
  padding: 0 8px;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_en span {
    padding: 0;
    border: none;
  }
}

.header_nav_controller {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  padding: 30px 10px 150px;
  background-color: #fff;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_controller {
    padding: 30px;
    background-color: transparent;
  }
}
.header_nav_controller .btn_controller {
  width: calc( 50% - 10px );
  max-width: 340px;
}
@media print, screen and (min-width: 1001px) {
  .header_nav_controller .btn_controller {
    width: 120px;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_controller .btn_controller {
    width: 100px;
    border: solid 1px #fff;
    color: #fff;
  }
}
@media print, screen and (min-width: 1001px) {
  .header_nav_controller .btn_controller:hover {
    color: rgba(255, 255, 255, 0.7);
  }
}

/* --------------------------------------------------
  #pageTitle
-------------------------------------------------- */
#pageTitle {
  background-color: #EDF5FB;
  font-size: 2.1rem;
  line-height: 1.4;
}
@media print, screen and (min-width: 1001px) {
  #pageTitle {
    font-size: 3.6rem;
  }
}
@media print, screen and (min-width: 1001px) {
  #pageTitle .pieceContainer {
    max-width: 1300px;
    padding-left: 50px;
    padding-right: 50px;
    margin: 0 auto;
  }
}
#pageTitle .pieceBody {
  display: table;
  width: 100%;
  min-height: 120px;
}
@media print, screen and (min-width: 1001px) {
  #pageTitle .pieceBody {
    min-height: 260px;
  }
}
#pageTitle .pieceBody h1 {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
  padding: 12px;
}
@media print, screen and (min-width: 1001px) {
  #pageTitle .pieceBody h1 {
    padding: 15px 0;
  }
}

@media print, screen and (min-width: 1001px) {
  .page_title_narrow #pageTitle .pieceContainer {
    width: 900px;
  }
}

/* --------------------------------------------------
  #breadCrumbs
-------------------------------------------------- */
#breadCrumbs {
  margin-bottom: 10px;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1001px) {
  #breadCrumbs {
    font-size: 1.4rem;
  }
}
#breadCrumbs .pieceBody {
  padding-left: 12px;
  padding-right: 12px;
}
@media print, screen and (min-width: 1001px) {
  #breadCrumbs .pieceBody {
    max-width: 1300px;
    margin: 0 auto;
    padding-left: 50px;
    padding-right: 50px;
  }
}
#breadCrumbs a, #breadCrumbs span {
  color: #171717;
  text-decoration: none;
}
#breadCrumbs a:last-child, #breadCrumbs span:last-child {
  color: #28A7CA;
}

/* --------------------------------------------------
  footer
-------------------------------------------------- */
.footer {
  position: relative;
  padding-top: 120px;
  position: relative;
  font-size: 1.3rem;
}
@media print, screen and (min-width: 1001px) {
  .footer {
    padding-top: 80px;
  }
  .footer .footer_nav_en {
    margin-bottom: 60px;
    padding-right: 80px;
    background: #28A7CA;
    text-align: right;
  }
  .footer .footer_nav_en a {
    display: inline-block;
    height: 35px;
    padding: 6px 10px;
    color: #fff;
    font-size: 1.2rem;
  }
  .footer .footer_nav_en a:hover {
    background: #fff;
    color: #28A7CA;
  }
  .footer .footer_contact {
    position: absolute;
    top: 50px;
    right: 0;
    z-index: 20;
  }
  .footer .footer_contact a {
    display: block;
    color: #fff;
    background: #28A7CA;
    text-decoration: none;
    border-radius: 0 0 0 8px;
    font-size: 1rem;
    font-weight: 600;
    padding: 54px 10px 8px 10px;
    text-align: center;
  }
  .footer .footer_contact a:before {
    position: absolute;
    top: 12px;
    left: 0;
    right: 0;
    display: block;
    content: "\E810";
    font-family: fontello;
    font-weight: 400;
    font-size: 36px;
    text-align: center;
    line-height: 1;
  }
  .footer .footer_contact a:hover {
    color: rgba(255, 255, 255, 0.7);
  }
}
.footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 42px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  background: url(../img/common/img_illustration.svg) repeat-x left bottom/auto 42px;
  border-bottom: solid 45px #28A7CA;
}
@media print, screen and (min-width: 1001px) {
  .footer::before {
    height: 80px;
    border-bottom: 0;
    background-size: auto 52px;
  }
}
.footer .footer_column {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer .footer_column_logo {
  width: 100%;
  margin-bottom: 40px;
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_column_logo {
    width: 25.83333%;
  }
  .footer .footer_column_logo img {
    width: 187px;
  }
}
.footer .footer_column .footer_column_subnav {
  width: 50%;
}
.footer .footer_column .footer_column_subnav .subnav > li {
  position: relative;
  padding-left: 18px;
  line-height: 1.38;
}
.footer .footer_column .footer_column_subnav .subnav > li:before {
  position: absolute;
  top: 1px;
  left: 0;
  color: #28A7CA;
  content: "\E805";
  font-family: fontello;
  font-weight: 400;
}
.footer .footer_column .footer_column_subnav .subnav > li + li {
  margin-top: 36px;
}
.footer .footer_column .footer_column_subnav .subnav_list > li {
  margin-top: 16px;
}
.footer .footer_column .footer_column_subnav .subnav_list a {
  color: #171717;
}
.footer .footer_column .footer_column_subnav .subnav + .subnav {
  margin-top: 40px;
}
.footer .footer_column .footer_column_subnav .subnav span {
  color: #28A7CA;
  font-family: "NotosansCjkjp-Medium";
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_column .footer_column_subnav {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 37.08333%;
  }
  .footer .footer_column .footer_column_subnav a:hover {
    color: #28A7CA;
  }
  .footer .footer_column .footer_column_subnav .subnav {
    flex: 1;
  }
  .footer .footer_column .footer_column_subnav .subnav + .subnav {
    margin-top: 0;
  }
  .footer .footer_column .footer_column_subnav .subnav > li + li {
    margin-top: 28px;
  }
  .footer .footer_column .footer_column_subnav .subnav .subnav_list > li {
    margin-top: 13px;
  }
}
.footer .footer_content_info {
  margin-top: 55px;
  padding-top: 36px;
  padding-bottom: 36px;
  background: #28A7CA;
  color: #fff;
}
.footer .footer_content_info a {
  color: #fff;
}
.footer .footer_content_info .footer_column .footer_column_subnav {
  width: 100%;
}
.footer .footer_content_info .footer_column .footer_column_subnav a {
  color: #fff;
}
.footer .footer_content_info .footer_column .footer_column_subnav a:hover {
  color: #ECE800;
}
.footer .footer_content_info .footer_column .footer_column_subnav .subnav > li:before {
  color: #fff;
}
.footer .footer_content_info .footer_column .footer_column_subnav .subnav > li + li {
  margin-top: 15px;
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_content_info .footer_column .footer_column_subnav .subnav > li + li {
    margin-top: 20px;
  }
}
.footer .footer_content_info .footer_column .footer_column_subnav .subnav + .subnav {
  margin-top: 12px;
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_content_info .footer_column .footer_column_subnav .subnav + .subnav {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_content_info .footer_column {
    width: 74.16667%;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 1001px) {
  .footer .footer_content_info {
    margin-top: 40px;
    padding-top: 40px;
    padding-bottom: 36px;
  }
  .footer .footer_content_info a:hover {
    color: rgba(255, 255, 255, 0.7);
  }
}
.footer .footer_invoice {
  background-color: #28A7CA;
  color: #fff;
  text-align: center;
  padding-bottom: 20px;
}
.footer .copyright {
  background-color: #ECE800;
  text-align: center;
  font-size: 1rem;
  padding: 24px 12px 30px;
}
@media print, screen and (min-width: 1001px) {
  .footer .copyright {
    text-align: right;
    font-size: 1.2rem;
    padding: 15px 25px;
  }
}

/* --------------------------------------------------
  section_recommended
-------------------------------------------------- */
.section_recommended {
  margin-top: 50px;
  padding: 25px 0 80px;
  overflow: hidden;
  background-color: #28A7CA;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended {
    padding: 80px 0 130px;
  }
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .section_container {
    width: 800px;
    height: 265px;
    margin: 0 auto;
    position: relative;
  }
}
@media print, screen and (min-width: 1921px) {
  .section_recommended .section_container {
    width: 100%;
    height: auto;
  }
}
.section_recommended .slick-arrow {
  opacity: 1;
  color: #fff;
  background-color: #28A7CA;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 16px;
  border-radius: 20px;
  position: absolute;
  top: 50%;
  z-index: 10;
  margin-top: -20px;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-arrow {
    width: 66px;
    height: 66px;
    line-height: 66px;
    border-radius: 33px;
    margin-top: -33px;
  }
}
@media print, screen and (max-width: 1000px) {
  .section_recommended .slick-arrow.prev {
    left: 5px;
  }
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-arrow.prev {
    left: 50%;
    margin-left: -433px;
  }
}
@media print, screen and (min-width: 1921px) {
  .section_recommended .slick-arrow.prev {
    left: 20px;
    margin-left: 0;
  }
}
@media print, screen and (max-width: 1000px) {
  .section_recommended .slick-arrow.next {
    right: 5px;
  }
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-arrow.next {
    right: 50%;
    margin-right: -433px;
  }
}
@media print, screen and (min-width: 1921px) {
  .section_recommended .slick-arrow.next {
    right: 20px;
    margin-right: 0;
  }
}
.section_recommended .slick-dotted.slick-slider {
  margin-bottom: 0;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-dotted.slick-slider {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 10;
    width: 1920px;
    margin-left: -960px;
  }
}
@media print, screen and (min-width: 1921px) {
  .section_recommended .slick-dotted.slick-slider {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    margin-left: 0;
  }
}
.section_recommended .slick-initialized .slick-slide {
  padding: 6px 25px;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-initialized .slick-slide {
    padding: 6px 40px;
    -webkit-transition: transform .3s ease;
    transition: transform .3s ease;
  }
}
.section_recommended .slick-initialized .slick-slide a, .section_recommended .slick-initialized .slick-slide img {
  display: block;
  width: 100%;
}
.section_recommended .slick-initialized .slick-slide a {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 8px;
  overflow: hidden;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-initialized .slick-slide:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
}
.section_recommended .slick-dots {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  bottom: -40px;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-dots {
    bottom: -56px;
  }
}
.section_recommended .slick-dots li {
  display: block;
  padding: 10px;
  width: auto;
  height: auto;
  margin: 0;
}
.section_recommended .slick-dots li button {
  width: 12px;
  height: 12px;
  opacity: 1;
  border-radius: 6px;
  border: solid 2px #fff;
  padding: 0;
}
@media print, screen and (min-width: 1001px) {
  .section_recommended .slick-dots li button {
    width: 16px;
    height: 16px;
    border-radius: 8px;
  }
}
.section_recommended .slick-dots li button:before {
  display: none;
}
.section_recommended .slick-dots li.slick-active button {
  background-color: #fff;
}

/* --------------------------------------------------
  #newCampaignBanner
-------------------------------------------------- */
#newCampaignBanner {
  padding-top: 40px;
  padding-bottom: 95px;
  overflow: hidden;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner {
    padding-top: 80px;
    padding-bottom: 167px;
  }
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .pieceBody {
    width: 375px;
    height: 400px;
    margin: 0 auto;
    position: relative;
  }
}
@media print, screen and (min-width: 1921px) {
  #newCampaignBanner .pieceBody {
    width: 100%;
    height: auto;
  }
}
#newCampaignBanner .slick-arrow {
  opacity: 1;
  color: #fff;
  background-color: #28A7CA;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 16px;
  border-radius: 20px;
  position: absolute;
  top: 50%;
  z-index: 10;
  margin-top: -20px;
  cursor: pointer;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-arrow {
    width: 66px;
    height: 66px;
    line-height: 66px;
    border-radius: 33px;
    margin-top: -33px;
  }
}
@media print, screen and (max-width: 1000px) {
  #newCampaignBanner .slick-arrow.prev {
    left: 5px;
  }
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-arrow.prev {
    left: 50%;
    margin-left: -600px;
  }
}
@media print, screen and (min-width: 1921px) {
  #newCampaignBanner .slick-arrow.prev {
    left: 20px;
    margin-left: 0;
  }
}
@media print, screen and (max-width: 1000px) {
  #newCampaignBanner .slick-arrow.next {
    right: 5px;
  }
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-arrow.next {
    right: 50%;
    margin-right: -600px;
  }
}
@media print, screen and (min-width: 1921px) {
  #newCampaignBanner .slick-arrow.next {
    right: 20px;
    margin-right: 0;
  }
}
#newCampaignBanner .slick-dotted.slick-slider {
  margin-bottom: 0;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-dotted.slick-slider {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 10;
    width: 1920px;
    margin-left: -960px;
  }
}
@media print, screen and (min-width: 1921px) {
  #newCampaignBanner .slick-dotted.slick-slider {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    margin-left: 0;
  }
}
#newCampaignBanner .slick-initialized .slick-slide {
  padding: 25px;
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 8px;
  overflow: hidden;
  margin: 0 10px;
  height: auto;
  float: none;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-initialized .slick-slide {
    -webkit-transition: transform .3s ease;
    transition: transform .3s ease;
    margin: 0 20px;
  }
}
#newCampaignBanner .slick-initialized .slick-slide .image {
  display: block;
  margin: -25px -25px 25px;
}
#newCampaignBanner .slick-initialized .slick-slide .image img {
  width: 100%;
}
#newCampaignBanner .slick-initialized .slick-slide .summary {
  color: #28A7CA;
  font-size: 1rem;
  font-weight: 600;
  display: block;
}
#newCampaignBanner .slick-initialized .slick-slide .title a {
  color: #171717;
  font-size: 1.5rem;
  font-weight: 600;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-initialized .slick-slide:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  #newCampaignBanner .slick-initialized .slick-slide:hover a {
    color: #28A7CA;
  }
}
@media print, screen and (max-width: 1000px) {
  #newCampaignBanner .slick-list {
    padding-left: 2% !important;
    padding-right: 15% !important;
  }
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-list {
    padding-left: 19.5% !important;
    padding-right: 19.5% !important;
    overflow: unset;
  }
}
#newCampaignBanner .slick-track {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 6px 0;
}
#newCampaignBanner .slick-dots {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  bottom: -60px;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-dots {
    bottom: -96px;
  }
}
#newCampaignBanner .slick-dots li {
  display: block;
  padding: 10px;
  width: auto;
  height: auto;
  margin: 0;
}
#newCampaignBanner .slick-dots li button {
  width: 12px;
  height: 12px;
  opacity: 1;
  border-radius: 12px;
  border: solid 2px #28A7CA;
  padding: 0;
}
@media print, screen and (min-width: 1001px) {
  #newCampaignBanner .slick-dots li button {
    width: 17px;
    height: 17px;
  }
}
#newCampaignBanner .slick-dots li button:before {
  display: none;
}
#newCampaignBanner .slick-dots li.slick-active button {
  background-color: #28A7CA;
}

/* --------------------------------------------------
  section_heading
-------------------------------------------------- */
.section_heading {
  position: relative;
  margin-bottom: 35px;
  padding-bottom: 24px;
  line-height: 1.5;
  text-align: center;
}
@media print, screen and (min-width: 1001px) {
  .section_heading {
    margin-bottom: 50px;
    padding-bottom: 28px;
  }
}
.section_heading::after {
  content: "";
  display: block;
  width: 100%;
  height: 19px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22232.5%22%20height%3D%2238.501%22%20viewBox%3D%220%200%20232.5%2038.501%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_800%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20800%22%20transform%3D%22translate(-383.931%20-157.043)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4761%22%20data-name%3D%22%E3%83%91%E3%82%B9%204761%22%20d%3D%22M489.443%2C199.574c-31.706-6.983-67.441-10.726-105.512%2C10.089l.782%2C1.425c37.466-20.567%2C72.938-16.852%2C104.38-9.927%2C8.234%2C1.813%2C15.633%2C3.259%2C22.394%2C4.364l.258-1.6c-6.943-1.136-13.675-2.446-22.3-4.346%22%20transform%3D%22translate(0%20-15.544)%22%20fill%3D%22%23ece800%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4762%22%20data-name%3D%22%E3%83%91%E3%82%B9%204762%22%20d%3D%22M697.641%2C157.043c-39.629%2C21.462-74.026%2C21.365-118.221%2C12.492l-.258%2C1.6c45.182%2C8.988%2C79.337%2C8.884%2C119.261-12.672%22%20transform%3D%22translate(-81.992)%22%20fill%3D%22%23ece800%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center/116px 19px;
}
@media print, screen and (min-width: 1001px) {
  .section_heading::after {
    height: 30px;
    background-size: 186px 30px;
  }
}
.section_heading .en {
  display: block;
  color: #354149;
  font-size: 1rem;
  text-transform: capitalize;
}
@media print, screen and (min-width: 1001px) {
  .section_heading .en {
    font-size: 1.4rem;
  }
}
.section_heading .ja {
  display: block;
  font-size: 2.4rem;
  color: #28A7CA;
  font-family: 'NotosansCjkjp-Medium';
}
@media print, screen and (min-width: 1001px) {
  .section_heading .ja {
    font-size: 3.6rem;
  }
}
.section_heading.-blue::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22232.5%22%20height%3D%2238.501%22%20viewBox%3D%220%200%20232.5%2038.501%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_800%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20800%22%20transform%3D%22translate(-383.931%20-157.043)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4761%22%20data-name%3D%22%E3%83%91%E3%82%B9%204761%22%20d%3D%22M489.443%2C199.574c-31.706-6.983-67.441-10.726-105.512%2C10.089l.782%2C1.425c37.466-20.567%2C72.938-16.852%2C104.38-9.927%2C8.234%2C1.813%2C15.633%2C3.259%2C22.394%2C4.364l.258-1.6c-6.943-1.136-13.675-2.446-22.3-4.346%22%20transform%3D%22translate(0%20-15.544)%22%20fill%3D%22%2328a7ca%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4762%22%20data-name%3D%22%E3%83%91%E3%82%B9%204762%22%20d%3D%22M697.641%2C157.043c-39.629%2C21.462-74.026%2C21.365-118.221%2C12.492l-.258%2C1.6c45.182%2C8.988%2C79.337%2C8.884%2C119.261-12.672%22%20transform%3D%22translate(-81.992)%22%20fill%3D%22%2328a7ca%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
}

/* --------------------------------------------------
  top space
-------------------------------------------------- */
p + h2,
p + h3,
p + h4,
p + h5,
p + h6,
ul + h2,
ul + h3,
ul + h4,
ul + h5,
ul + h6,
ol + h2,
ol + h3,
ol + h4,
ol + h5,
ol + h6,
dl + h2,
dl + h3,
dl + h4,
dl + h5,
dl + h6,
blockquote + h2,
blockquote + h3,
blockquote + h4,
blockquote + h5,
blockquote + h6,
hr + h2,
hr + h3,
hr + h4,
hr + h5,
hr + h6,
pre + h2,
pre + h3,
pre + h4,
pre + h5,
pre + h6,
table + h2,
table + h3,
table + h4,
table + h5,
table + h6,
form + h2,
form + h3,
form + h4,
form + h5,
form + h6,
figure + h2,
figure + h3,
figure + h4,
figure + h5,
figure + h6,
.l-button_column + h2,
.l-button_column + h3,
.l-button_column + h4,
.l-button_column + h5,
.l-button_column + h6 {
  margin-top: 40px;
}
@media print, screen and (min-width: 1001px) {
  p + h2,
  p + h3,
  p + h4,
  p + h5,
  p + h6,
  ul + h2,
  ul + h3,
  ul + h4,
  ul + h5,
  ul + h6,
  ol + h2,
  ol + h3,
  ol + h4,
  ol + h5,
  ol + h6,
  dl + h2,
  dl + h3,
  dl + h4,
  dl + h5,
  dl + h6,
  blockquote + h2,
  blockquote + h3,
  blockquote + h4,
  blockquote + h5,
  blockquote + h6,
  hr + h2,
  hr + h3,
  hr + h4,
  hr + h5,
  hr + h6,
  pre + h2,
  pre + h3,
  pre + h4,
  pre + h5,
  pre + h6,
  table + h2,
  table + h3,
  table + h4,
  table + h5,
  table + h6,
  form + h2,
  form + h3,
  form + h4,
  form + h5,
  form + h6,
  figure + h2,
  figure + h3,
  figure + h4,
  figure + h5,
  figure + h6,
  .l-button_column + h2,
  .l-button_column + h3,
  .l-button_column + h4,
  .l-button_column + h5,
  .l-button_column + h6 {
    margin-top: 50px;
  }
}
p + ul,
p + ol,
p + p,
ul + ul,
ul + ol,
ul + p,
ol + ul,
ol + ol,
ol + p,
dl + ul,
dl + ol,
dl + p,
blockquote + ul,
blockquote + ol,
blockquote + p,
hr + ul,
hr + ol,
hr + p,
pre + ul,
pre + ol,
pre + p,
table + ul,
table + ol,
table + p,
form + ul,
form + ol,
form + p,
figure + ul,
figure + ol,
figure + p,
.l-button_column + ul,
.l-button_column + ol,
.l-button_column + p {
  margin-top: 30px;
}

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

p + div {
  margin-top: 30px;
}
p + .l-button_column {
  margin-top: 30px;
}
@media print, screen and (min-width: 1001px) {
  p + .l-button_column {
    margin-top: 50px;
  }
}

/* --------------------------------------------------
  content_jump
-------------------------------------------------- */
.content_jump {
  padding-top: 30px;
}
@media print, screen and (min-width: 1001px) {
  .content_jump {
    padding-top: 60px;
  }
}
.content_jump .content_jump_heading {
  text-align: center;
  color: #28A7CA;
  font-size: 24px;
  font-weight: 600;
}
@media print, screen and (min-width: 1001px) {
  .content_jump .content_jump_heading {
    font-size: 30px;
  }
}
.content_jump .content_jump_url {
  color: #28A7CA;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  text-align: center;
}
.content_jump .content_jump_text {
  text-align: center;
}
.content_jump .content_jump_button {
  max-width: 700px;
  margin: 50px auto 0;
}
.content_jump .content_jump_button .column_item a {
  margin: 0 auto;
}
.content_jump .content_jump_button .column_item:nth-child(1) {
  margin-bottom: 30px;
}
@media print, screen and (min-width: 1001px) {
  .content_jump .content_jump_button .column_item:nth-child(1) {
    margin-bottom: 0;
  }
}

/* --------------------------------------------------
  youtube_wrap
-------------------------------------------------- */
.youtube_wrap {
  max-width: 640px;
  margin-top: 40px;
  margin-bottom: 40px;
}
.youtube_wrap .youtube_container {
  position: relative;
  padding-top: 56.25%;
}
.youtube_wrap .youtube_container iframe {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
}

/* --------------------------------------------------
  btn_scroll
-------------------------------------------------- */
.btn_scroll {
  position: absolute;
  right: 20px;
  top: -76px;
  z-index: 100;
  line-height: 1;
  cursor: pointer;
  margin: 0;
  opacity: 0;
  transition: opacity .3s ease;
}
@media print, screen and (max-width: 1000px) {
  .btn_scroll {
    display: none !important;
  }
}
.btn_scroll.btn_fixed {
  position: fixed;
  top: auto;
  bottom: 30px;
}
.btn_scroll.btn_show {
  opacity: 1;
}

/* --------------------------------------------------
  column_activities
-------------------------------------------------- */
.column_activities {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 1001px) {
  .column_activities {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.column_activities .column_activities_photo {
  display: block;
  max-width: 550px;
  margin: 0 auto 15px;
}
@media print, screen and (min-width: 1001px) {
  .column_activities .column_activities_photo {
    width: 50%;
    margin: 0;
  }
}
.column_activities .column_activities_photo .slideshow {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
  margin-bottom: 0;
}
.column_activities .column_activities_photo .slideshow img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  aspect-ratio: 16 / 9;
  width: 100% !important;
  height: auto !important;
  object-fit: contain;
  background-color: #fff;
}
@media print, screen and (min-width: 1001px) {
  .column_activities .column_activities_photo .slideshow img {
    width: 100%;
  }
}
@media print, screen and (min-width: 1001px) {
  .column_activities .column_activities_content {
    width: 50%;
    padding-left: 30px;
  }
}