@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

body { margin: 0; }

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

hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

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

a { background-color: transparent; }

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

b, strong { font-weight: bolder; }

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

small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; }

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

button, input { /* 1 */ overflow: visible; }

button, select { /* 1 */ 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: 0.35em 0.75em 0.625em; }

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

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ }

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

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

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

::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

details { display: block; }

summary { display: list-item; }

template { display: none; }

[hidden] { display: none; }

/******************************************************************
reset
******************************************************************/
main { display: block; }

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dd, figure { margin: 0; padding: 0; }

li { list-style: none; }

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

iframe { border: 0; }

button { background-color: transparent; border: none; cursor: pointer; padding: 0; appearance: none; }

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

fieldset { border: 0; padding: 0; margin: 0; }

address { font-style: normal; }

/******************************************************************
base
******************************************************************/
body { min-width: 375px; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.2rem; color: #282828; line-height: 1.8; -webkit-font-smoothing: antialiased; }

@media screen and (max-width: 768px) { body { font-size: 1rem; } }

body[data-menu-open="true"] { overflow: hidden; }

a { color: #2b60d9; text-decoration: none; }

a:hover { color: #2b60d9; text-decoration: underline; }

h1, h2 { line-height: 1.5; }

h3 { line-height: 1.6; }

h4 { line-height: 1.7; }

small { line-height: 1.6; }

img { max-width: 100%; height: auto; vertical-align: middle; -webkit-backface-visibility: hidden; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #29a9e9; }

button, input, optgroup, select, textarea { color: #444444; line-height: inherit; }

/******************************************************************
layout - wrapper
******************************************************************/
.l-wrapper { background: url(/common/img/body-bg.png) right top no-repeat; width: 100%; overflow: hidden; }

@media print, screen and (max-width: 1230px) { .l-wrapper { background-position: right -4vw top; background-size: 30vw; } }

/******************************************************************
layout - header
******************************************************************/
@media print, screen and (min-width: 769px) { header { position: absolute; width: 100%; box-sizing: border-box; z-index: +1; padding-left: 30px; padding-right: 30px; } }

@media screen and (max-width: 768px) { .l-header { display: none; } }

.l-header__inner { position: relative; max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; background: #fff; border-radius: 50px; }

@media print, screen and (max-width: 1230px) { .l-header__inner { padding-left: 2.43902vw; padding-left: 2.43902vw; border-radius: 4.06504vw; } }

.l-header__inner2 { display: flex; justify-content: space-between; align-items: center; }

.l-header__logo img { max-width: 32vw; }

/******************************************************************
layout - header-sp
******************************************************************/
.l-header-sp { background-color: #fff; }

@media print, screen and (min-width: 769px) { .l-header-sp { display: none; } }

.l-header-sp__inner { display: flex; align-items: center; }

.l-header-sp__logo { flex-grow: 1; padding: 3vw 0 3vw 3vw; }

.l-header-sp__logo img { max-width: 60vw; }

/******************************************************************
layout - nav
******************************************************************/
.l-subnav { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; display: flex; justify-content: flex-end; padding: 15px 0; line-height: 1; }

@media screen and (max-width: 768px) { .l-subnav { display: none; } }

.l-subnav li:not(:first-child) { margin-left: 10px; padding-left: 10px; border-left: 1px solid #fff; }

.l-subnav a { color: #fff; font-weight: bold; opacity: .6; }

.l-subnav a:hover { color: #fff; }

.l-subnav a.is-active { opacity: 1; }

/******************************************************************
layout - nav-main
******************************************************************/
.l-nav-main { display: flex; }

.l-nav-main > .l-nav-main__search { display: flex; align-items: center; }

.l-nav-main > .l-nav-main__search a { display: block; width: 40px; height: 40px; border: 2px solid #29a9e9; border-radius: 100%; display: flex; align-items: center; justify-content: center; }

.l-nav-main > .l-nav-main__search a:hover { background-color: #e9f7fe; }

.l-nav-main > .l-nav-main__search[data-menu-item="event,true"] > a { background-color: #e9f7fe; }

.l-nav-main > .l-nav-main__item { flex-grow: 1; margin-right: 30px; }

@media print, screen and (max-width: 1230px) { .l-nav-main > .l-nav-main__item { margin-right: 2.03252vw; font-size: 1.5vw; } }

.l-nav-main > .l-nav-main__item > a { position: relative; display: flex; align-items: center; box-sizing: border-box; height: 100%; text-align: center; line-height: 1.5; color: inherit; font-weight: bold; }

.l-nav-main > .l-nav-main__item > a > span { flex-grow: 1; display: block; padding: 36px 0; }

@media print, screen and (max-width: 1230px) { .l-nav-main > .l-nav-main__item > a > span { padding: 2.92683vw 0; } }

.l-nav-main > .l-nav-main__item > a:hover { text-decoration: none; }

.l-nav-main > .l-nav-main__item > a:hover::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; right: 0; bottom: 0; left: 0; width: 100%; height: 6px; background-color: #526ce7; }

.l-nav-main > .l-nav-main__item[data-menu-item="event,true"] > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; right: 0; bottom: 0; left: 0; width: 100%; height: 6px; background-color: #526ce7; }

/******************************************************************
layout - nav-mega
******************************************************************/
.l-nav-mega-search { position: absolute; display: none; margin-top: 10px; right: 0; }

.l-nav-mega-search__inner { padding: 25px; background-color: #fff; border-radius: 60px; }

.l-nav-mega { display: none; }

.l-nav-mega__inner { padding: 40px 0; }

.l-nav-mega dl { display: flex; }

.l-nav-mega dl dt { border-right: 1px solid #dbe1e4; white-space: nowrap; padding-right: 4em; margin-right: 1.5em; font-size: 20px; font-weight: bold; }

@media print, screen and (max-width: 1230px) { .l-nav-mega dl dt { font-size: 1.62602vw; } }

.l-nav-mega dl dt a { display: inline-block; color: inherit; background: url(/common/img/arrow-right.png) left center no-repeat; padding-left: 28px; }

.l-nav-mega dl dt a:hover { color: #2b60d9; text-decoration: none; }

.l-nav-mega dl div { display: flex; flex-grow: 1; flex-wrap: wrap; margin-right: -15px; margin-bottom: -15px; }

@media print, screen and (max-width: 1230px) { .l-nav-mega dl div { font-size: 1.54472vw; } }

.l-nav-mega dl dd { width: calc(33.33333% - 15px); margin-right: 15px; margin-bottom: 15px; }

@media print, screen and (max-width: 1230px) { .l-nav-mega dl dd { font-size: 1.54472vw; } }

/******************************************************************
layout - sp-nav-control
******************************************************************/
@media print, screen and (min-width: 769px) { .l-sp-nav-control { display: none; } }

@media screen and (max-width: 768px) { .l-sp-nav-control { display: inline-block; padding: 8px 16px 16px 10px; }
  .l-sp-nav-control__item { display: inline-block; top: -1px; position: relative; height: 2px; width: 24px; background-color: #2b60d9; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before, .l-sp-nav-control__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; width: 0; height: 0; left: 0; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before { height: 2px; width: 24px; background-color: #2b60d9; width: 24px; bottom: 8px; }
  .l-sp-nav-control__item::after { height: 2px; width: 24px; background-color: #2b60d9; width: 24px; bottom: -8px; }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item { background-color: transparent; }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::before { bottom: 0; transform: rotate(-45deg); }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::after { bottom: 0; transform: rotate(45deg); } }

/******************************************************************
layout - sp-nav
******************************************************************/
@media print, screen and (min-width: 769px) { .l-sp-nav { display: none; } }

@media screen and (max-width: 768px) { .l-sp-nav { display: none; background-color: #fff; padding: 0.75rem 0.75rem 0 0.75rem; }
  .l-sp-nav--fixed { z-index: 1000; position: absolute; width: 100%; box-sizing: border-box; }
  .l-sp-nav__close a { margin: 0 -0.75rem 0 -0.75rem; display: block; padding: .8em; background-color: #2b60d9; color: #fff; text-align: center; }
  .l-sp-nav__close a span { display: inline-block; position: relative; padding-left: 20px; }
  .l-sp-nav__close a span::before, .l-sp-nav__close a span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .l-sp-nav__close a span::before { border-top: 1px solid #fff; width: 15px; height: 0; top: 0; bottom: 0; left: 0; transform: rotate(45deg); }
  .l-sp-nav__close a span::after { border-left: 1px solid #fff; width: 0; height: 15px; top: 0; bottom: 0; left: 7px; transform: rotate(45deg); } }

/******************************************************************
layout - sp-navs
******************************************************************/
.l-sp-navs { border-top: 1px solid #dcdcdc; }

.l-sp-navs a:hover { text-decoration: none; }

.l-sp-navs__item1 { border-bottom: 1px solid #dcdcdc; }

.l-sp-navs__item1 > a { display: block; color: #282828; }

.l-sp-navs__item1:not(.js-l-sp-navs-button) > a { position: relative; padding-right: 25.5px; padding: 15px 36px 15px 20px; }

.l-sp-navs__item1:not(.js-l-sp-navs-button) > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-20px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 1px solid #2b60d9; border-right: 1px solid #2b60d9; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.l-sp-navs__item1:not(.js-l-sp-navs-button) > span { display: block; padding: 15px 36px 15px 20px; }

.l-sp-navs__item1.js-l-sp-navs-button > a { position: relative; padding: 15px 36px 15px 20px; }

.l-sp-navs__item1.js-l-sp-navs-button > a::before, .l-sp-navs__item1.js-l-sp-navs-button > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }

.l-sp-navs__item1.js-l-sp-navs-button > a::before { border-top: 1px solid #2b60d9; width: 13px; height: 0; top: 0; bottom: 0; right: 0; }

.l-sp-navs__item1.js-l-sp-navs-button > a::after { border-left: 1px solid #2b60d9; width: 0; height: 13px; top: 0; bottom: 0; right: 6px; transition-property: all; transition-duration: 0.3s; }

.l-sp-navs__item1.js-l-sp-navs-button > a::before { right: 16px; }

.l-sp-navs__item1.js-l-sp-navs-button > a::after { right: 22px; }

.l-sp-navs__item1.js-l-sp-navs-button[aria-expanded="true"] > a::after { height: 0; }

.l-sp-navs__item1 > ul { display: none; border-top: 1px solid #dcdcdc; }

.l-sp-navs__item2:not(:last-child) { border-bottom: 1px solid #dcdcdc; }

.l-sp-navs__item2 > a { display: block; color: #282828; }

.l-sp-navs__item2:not(.js-l-sp-navs-button) > a { position: relative; padding-right: 25.5px; padding: 15px 36px 15px 34px; }

.l-sp-navs__item2:not(.js-l-sp-navs-button) > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-20px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 1px solid #2b60d9; border-right: 1px solid #2b60d9; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.l-sp-navs__item2:not(.js-l-sp-navs-button) > span { display: block; padding: 15px 36px 15px 34px; }

.l-sp-navs__item2.js-l-sp-navs-button > a { position: relative; padding: 15px 36px 15px 34px; }

.l-sp-navs__item2.js-l-sp-navs-button > a::before, .l-sp-navs__item2.js-l-sp-navs-button > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }

.l-sp-navs__item2.js-l-sp-navs-button > a::before { border-top: 1px solid #2b60d9; width: 13px; height: 0; top: 0; bottom: 0; right: 0; }

.l-sp-navs__item2.js-l-sp-navs-button > a::after { border-left: 1px solid #2b60d9; width: 0; height: 13px; top: 0; bottom: 0; right: 6px; transition-property: all; transition-duration: 0.3s; }

.l-sp-navs__item2.js-l-sp-navs-button > a::before { right: 16px; }

.l-sp-navs__item2.js-l-sp-navs-button > a::after { right: 22px; }

.l-sp-navs__item2.js-l-sp-navs-button[aria-expanded="true"] > a::after { height: 0; }

.l-sp-navs__item2 > ul { display: none; border-top: 1px solid #dcdcdc; }

/******************************************************************
layout - subnav-sp
******************************************************************/
.l-subnav-sp { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; display: flex; justify-content: center; padding: 30px 0; line-height: 1; }

.l-subnav-sp li:not(:first-child) { margin-left: 10px; padding-left: 10px; border-left: 1px solid #dcdcdc; }

.l-subnav-sp a { font-weight: bold; opacity: .6; }

.l-subnav-sp a.is-active { opacity: 1; }

/******************************************************************
layout - top-visual
******************************************************************/
.l-top-visual { position: relative; overflow: hidden; margin-bottom: 6rem; padding-bottom: 40px; }

@media print, screen and (min-width: 769px) { .l-top-visual { background: linear-gradient(to right, #49c6f6 0%, #5c8ee9 100%); mix-blend-mode: multiply; } }

@media screen and (max-width: 768px) { .l-top-visual { padding-bottom: 0; margin-bottom: 3rem; } }

.l-top-visual__img { width: 50%; padding-bottom: 40px; }

@media screen and (max-width: 768px) { .l-top-visual__img { width: 100%; padding-bottom: 0; } }

.l-top-visual__img .slick-list { overflow: hidden; }

@media print, screen and (min-width: 769px) { .l-top-visual__img .slick-list { border-bottom-right-radius: 20px; } }

.l-top-visual__img img { width: 100%; }

.l-top-visual__inner { color: #fff; position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; z-index: -1; padding: 240px 0 0 0; }

@media print, screen and (max-width: 1230px) { .l-top-visual__inner { padding-top: 19.5122vw; } }

@media screen and (max-width: 768px) { .l-top-visual__inner { position: relative; z-index: initial; padding: 0; background: url(/common/img/body-bg.png) right top no-repeat; background-position: right -4vw top; background-size: 30vw; } }

.l-top-visual__body { width: 45%; margin: 0 0 0 auto; }

@media screen and (max-width: 768px) { .l-top-visual__body { box-sizing: border-box; width: 100%; padding: 40px 18px; background: linear-gradient(to right, #49c6f6 0%, #5c8ee9 100%); mix-blend-mode: multiply; } }

.l-top-visual__title { font-weight: bold; font-size: 35px; }

@media print, screen and (max-width: 1230px) { .l-top-visual__title { font-size: 2.84553vw; } }

@media screen and (max-width: 768px) { .l-top-visual__title { font-size: 23px; position: relative; z-index: +1; } }

.l-top-visual__copy { margin-top: 50px; font-size: 18px; font-weight: bold; }

@media print, screen and (max-width: 1230px) { .l-top-visual__copy { font-size: 1.46341vw; } }

@media screen and (max-width: 768px) { .l-top-visual__copy { margin-top: 25px; font-size: 0.75rem; } }

/******************************************************************
layout - visual
******************************************************************/
.l-visual { background: linear-gradient(to right, #49c6f6 0%, #5c8ee9 100%); mix-blend-mode: multiply; }

.l-visual__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 200px; padding-bottom: 100px; color: #fff; }

@media print, screen and (max-width: 1230px) { .l-visual__inner { padding-top: 16.26016vw; padding-bottom: 8.13008vw; } }

@media screen and (max-width: 768px) { .l-visual__inner { padding-top: 6vw; padding-bottom: 6vw; } }

.l-visual h1 { font-size: 50px; }

@media print, screen and (max-width: 1230px) { .l-visual h1 { font-size: 4.06504vw; } }

@media screen and (max-width: 768px) { .l-visual h1 { font-size: 26px; } }

/******************************************************************
layout - breadcrumb
******************************************************************/
.l-breadcrumb__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 2rem; padding-bottom: 2rem; }

@media screen and (max-width: 768px) { .l-breadcrumb__inner { padding-left: 18px; padding-right: 18px; } }

/******************************************************************
layout - contents
******************************************************************/
.l-contents--2row .l-contents__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; display: flex; justify-content: space-between; }

.l-contents--2row .l-contents__side { width: 200px; }

.l-contents--2row .l-contents__main { width: calc(100% - 200px - 60px); }

/******************************************************************
layout - side
******************************************************************/
.l-side { margin-bottom: 40px; }

.l-side dl { overflow: hidden; border: 2px solid #dcdcdc; }

.l-side dl:first-child { border-radius: 18px 18px 0 0; }

.l-side dl:last-child { border-radius: 0 0 18px 18px; }

.l-side dl:not(:last-child) { border-bottom: 0; }

.l-side dt a { display: block; padding: 20px; font-size: 18px; color: #444444; font-weight: bold; position: relative; padding-right: 29px; }

.l-side dt a:hover { text-decoration: none; background-color: #f2fbff; }

.l-side dt a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-15px, 1.5px) rotate(45deg); transform-origin: top right; border-bottom: 2px solid #526ce7; border-right: 2px solid #526ce7; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.l-side dl.is-active dt a::after { transform: translate(-29px, 7px) rotate(-135deg); }

.l-side dl.is-active dt a::after { border-color: #dcdcdc; }

.l-side div { display: none; border-top: 2px solid #dcdcdc; background-color: #fafafa; }

.l-side dd a { display: block; padding: .4em 40px; color: #526ce7; font-size: 16px; }

.l-side dd a:hover, .l-side dd a.is-active { background-color: #ebeeff; color: #444444; text-decoration: none; }

/******************************************************************
layout - pagetop
******************************************************************/
[data-pagetop] { position: relative; }

@media print { [data-pagetop] { display: none; } }

[data-pagetop] .l-pagetop__btn { display: none; position: absolute; bottom: 30px; right: 30px; }

[data-pagetop="fixed"] .l-pagetop__btn { position: fixed; z-index: 100; }

@media screen and (max-width: 768px) { [data-pagetop] .l-pagetop__btn { bottom: 10px; right: 10px; } }

.l-pagetop__btn { display: block; box-sizing: border-box; }

.l-pagetop__btn:hover { opacity: .8; }

/******************************************************************
layout - banner
******************************************************************/
.l-banner__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-bottom: 6rem; }

@media screen and (max-width: 768px) { .l-banner__inner { padding-left: 18px; padding-right: 18px; padding-bottom: 3rem; } }

.l-banner__flex { display: flex; flex-wrap: wrap; margin-right: -60px; margin-top: -60px; }

@media screen and (max-width: 768px) { .l-banner__flex { margin-right: -20px; margin-top: -20px; } }

.l-banner__item { width: calc(100%/3 - 60px); margin-right: 60px; margin-top: 60px; text-align: center; }

@media screen and (max-width: 768px) { .l-banner__item { width: calc(100%/2 - 20px); margin-right: 20px; margin-top: 20px; } }

.l-banner__item-4 { width: calc(100%/4 - 60px); margin-right: 60px; margin-top: 60px; text-align: center; }

@media screen and (max-width: 768px) { .l-banner__item-4 { width: calc(100%/2 - 20px); margin-right: 20px; margin-top: 20px; } }

/******************************************************************
layout - footer
******************************************************************/
.l-footer { background: linear-gradient(to right, #49c6f6 0%, #5c8ee9 100%); color: #fff; text-align: center; }

.l-footer__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 4rem; padding-bottom: 4rem; }

@media screen and (max-width: 768px) { .l-footer__inner { padding-top: 3rem; padding-bottom: 3rem; font-size: 90%; } }

.l-footer__title { font-weight: bold; }

.l-footer__nav { margin-top: 1rem; display: flex; justify-content: center; flex-wrap: wrap; font-weight: bold; }

.l-footer__nav li:not(:first-child) { margin-left: 35px; }

@media screen and (max-width: 768px) { .l-footer__nav li:not(:first-child) { margin-left: 12px; margin-right: 12px; } }

.l-footer__nav a { color: #fff; }

.l-footer__nav a:hover { color: #fff; }

.l-footer__logo { margin-top: 60px; }

@media screen and (max-width: 768px) { .l-footer__logo { margin-top: 40px; } }

.l-footer__address { margin-top: 20px; font-weight: bold; }

.l-footer__copy { margin-top: 60px; font-size: 12px; color: #9adcfd; }

@media screen and (max-width: 768px) { .l-footer__copy { margin-top: 40px; } }

/******************************************************************
component - section
******************************************************************/
.c-section { position: relative; padding-top: 0.1px; padding-bottom: 0.1px; }

.c-section__fit { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; }

@media screen and (max-width: 768px) { .c-section__fit { padding-right: 18px; padding-left: 18px; } }

.c-section__top { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; margin-top: 6rem; }

@media screen and (max-width: 768px) { .c-section__top { padding-right: 18px; padding-left: 18px; } }

.c-section__bottom { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; margin-bottom: 6rem; }

@media screen and (max-width: 768px) { .c-section__bottom { padding-right: 18px; padding-left: 18px; } }

.c-section__vertical { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; margin-top: 6rem; margin-bottom: 6rem; }

@media screen and (max-width: 768px) { .c-section__vertical { padding-right: 18px; padding-left: 18px; } }

.c-section--teams { background: #f4f6f7; margin-bottom: 6rem; }

@media screen and (max-width: 768px) { .c-section--teams { margin-bottom: 3rem; } }

.c-section--contentsrow > * { padding-right: 0; padding-left: 0; width: auto; }

@media screen and (max-width: 768px) { .c-section__top { margin-top: 3rem; }
  .c-section__bottom { margin-bottom: 3rem; }
  .c-section__vertical { margin: 3rem auto 3rem auto; } }

@media screen and (max-width: 768px) { .c-sp-section-side-clear { padding-right: 0; padding-left: 0; }
  .c-sp-section-side { padding-right: 18px; padding-left: 18px; }
  .c-sp-section-vertical-clear { margin-top: 0; margin-bottom: 0; }
  .c-sp-section-top-clear { margin-top: 0; }
  .c-sp-section-bottom-clear { margin-bottom: 0; }
  .c-sp-section-vertical { margin-top: 3rem; margin-bottom: 3rem; }
  .c-sp-section-top { margin-top: 3rem; }
  .c-sp-section-bottom { margin-bottom: 3rem; } }

/******************************************************************
component - grid2
******************************************************************/
.c-grid2 { overflow: hidden; display: flex; flex-wrap: wrap; margin-right: -1rem; margin-top: -1rem; }

.c-grid2__flex { display: flex; flex-direction: column; }

.c-grid2__grow { flex-grow: 1; }

.c-grid2--center { justify-content: center; }

.c-grid2--right { justify-content: flex-end; }

.c-grid2--bottom { align-items: flex-end; }

@media screen and (max-width: 768px) { .c-grid2.sp-left { justify-content: flex-start; }
  .c-grid2.sp-center { justify-content: center; }
  .c-grid2.sp-right { justify-content: flex-end; }
  .c-grid2.sp-bottom { align-items: flex-end; } }

.c-grid2 > [class*="c-grid2__item"], .c-grid2 > .c-grid2__item5col { position: relative; box-sizing: border-box; margin-right: 1rem; margin-top: 1rem; }

.c-grid2 > .c-grid2__item1 { width: calc( 8.33333% - 1rem); }

.c-grid2 > .c-grid2__item2 { width: calc( 16.66667% - 1rem); }

.c-grid2 > .c-grid2__item3 { width: calc( 25% - 1rem); }

.c-grid2 > .c-grid2__item4 { width: calc( 33.33333% - 1rem); }

.c-grid2 > .c-grid2__item5 { width: calc( 41.66667% - 1rem); }

.c-grid2 > .c-grid2__item6 { width: calc( 50% - 1rem); }

.c-grid2 > .c-grid2__item7 { width: calc( 58.33333% - 1rem); }

.c-grid2 > .c-grid2__item8 { width: calc( 66.66667% - 1rem); }

.c-grid2 > .c-grid2__item9 { width: calc( 75% - 1rem); }

.c-grid2 > .c-grid2__item10 { width: calc( 83.33333% - 1rem); }

.c-grid2 > .c-grid2__item11 { width: calc( 91.66667% - 1rem); }

.c-grid2 > .c-grid2__item12 { width: calc( 100% - 1rem); }

.c-grid2 > .c-grid2__item5col { width: calc( 20% - 1rem); }

.c-grid2--vertical > [class*="c-grid2__item"], .c-grid2--vertical > .c-grid2__item5col { display: flex; align-items: center; }

@media screen and (max-width: 900px) { .c-grid2 > .m-item1 { width: calc( 8.33333% - 1rem); }
  .c-grid2 > .m-item2 { width: calc( 16.66667% - 1rem); }
  .c-grid2 > .m-item3 { width: calc( 25% - 1rem); }
  .c-grid2 > .m-item4 { width: calc( 33.33333% - 1rem); }
  .c-grid2 > .m-item5 { width: calc( 41.66667% - 1rem); }
  .c-grid2 > .m-item6 { width: calc( 50% - 1rem); }
  .c-grid2 > .m-item7 { width: calc( 58.33333% - 1rem); }
  .c-grid2 > .m-item8 { width: calc( 66.66667% - 1rem); }
  .c-grid2 > .m-item9 { width: calc( 75% - 1rem); }
  .c-grid2 > .m-item10 { width: calc( 83.33333% - 1rem); }
  .c-grid2 > .m-item11 { width: calc( 91.66667% - 1rem); }
  .c-grid2 > .m-item12 { width: calc( 100% - 1rem); }
  .c-grid2 > .m-item5col { width: calc( 20% - 1rem); } }

@media screen and (max-width: 768px) { .c-grid2 { margin-right: -0.75rem; margin-top: -0.75rem; }
  .c-grid2 > [class*="c-grid2__item"], .c-grid2 > .c-grid2__item5col { margin-right: 0.75rem; margin-top: 0.75rem; }
  .c-grid2 > .c-grid2__item1 { width: calc( 8.33333% - 0.75rem); }
  .c-grid2 > .c-grid2__item2 { width: calc( 16.66667% - 0.75rem); }
  .c-grid2 > .c-grid2__item3 { width: calc( 25% - 0.75rem); }
  .c-grid2 > .c-grid2__item4 { width: calc( 33.33333% - 0.75rem); }
  .c-grid2 > .c-grid2__item5 { width: calc( 41.66667% - 0.75rem); }
  .c-grid2 > .c-grid2__item6 { width: calc( 50% - 0.75rem); }
  .c-grid2 > .c-grid2__item7 { width: calc( 58.33333% - 0.75rem); }
  .c-grid2 > .c-grid2__item8 { width: calc( 66.66667% - 0.75rem); }
  .c-grid2 > .c-grid2__item9 { width: calc( 75% - 0.75rem); }
  .c-grid2 > .c-grid2__item10 { width: calc( 83.33333% - 0.75rem); }
  .c-grid2 > .c-grid2__item11 { width: calc( 91.66667% - 0.75rem); }
  .c-grid2 > .c-grid2__item12 { width: calc( 100% - 0.75rem); }
  .c-grid2 > .c-grid2__item5col { width: calc( 20% - 0.75rem); }
  .c-grid2 > .sp-item1 { width: calc( 8.33333% - 0.75rem); }
  .c-grid2 > .sp-item2 { width: calc( 16.66667% - 0.75rem); }
  .c-grid2 > .sp-item3 { width: calc( 25% - 0.75rem); }
  .c-grid2 > .sp-item4 { width: calc( 33.33333% - 0.75rem); }
  .c-grid2 > .sp-item5 { width: calc( 41.66667% - 0.75rem); }
  .c-grid2 > .sp-item6 { width: calc( 50% - 0.75rem); }
  .c-grid2 > .sp-item7 { width: calc( 58.33333% - 0.75rem); }
  .c-grid2 > .sp-item8 { width: calc( 66.66667% - 0.75rem); }
  .c-grid2 > .sp-item9 { width: calc( 75% - 0.75rem); }
  .c-grid2 > .sp-item10 { width: calc( 83.33333% - 0.75rem); }
  .c-grid2 > .sp-item11 { width: calc( 91.66667% - 0.75rem); }
  .c-grid2 > .sp-item12 { width: calc( 100% - 0.75rem); }
  .c-grid2 > .sp-item5col { width: calc( 20% - 0.75rem); } }

.c-grid2--3x { margin-right: -3rem; margin-top: -3rem; }

.c-grid2--3x > [class*="c-grid2__item"], .c-grid2--3x > .c-grid2__item5col { margin-right: 3rem; margin-top: 3rem; }

.c-grid2--3x > .c-grid2__item1 { width: calc( 8.33333% - 3rem); }

.c-grid2--3x > .c-grid2__item2 { width: calc( 16.66667% - 3rem); }

.c-grid2--3x > .c-grid2__item3 { width: calc( 25% - 3rem); }

.c-grid2--3x > .c-grid2__item4 { width: calc( 33.33333% - 3rem); }

.c-grid2--3x > .c-grid2__item5 { width: calc( 41.66667% - 3rem); }

.c-grid2--3x > .c-grid2__item6 { width: calc( 50% - 3rem); }

.c-grid2--3x > .c-grid2__item7 { width: calc( 58.33333% - 3rem); }

.c-grid2--3x > .c-grid2__item8 { width: calc( 66.66667% - 3rem); }

.c-grid2--3x > .c-grid2__item9 { width: calc( 75% - 3rem); }

.c-grid2--3x > .c-grid2__item10 { width: calc( 83.33333% - 3rem); }

.c-grid2--3x > .c-grid2__item11 { width: calc( 91.66667% - 3rem); }

.c-grid2--3x > .c-grid2__item12 { width: calc( 100% - 3rem); }

.c-grid2--3x > .c-grid2__item5col { width: calc( 20% - 3rem); }

@media screen and (max-width: 900px) { .c-grid2--3x { margin-right: -3rem; margin-top: -3rem; }
  .c-grid2--3x > [class*="c-grid2__item"], .c-grid2--3x > .c-grid2__item5col { margin-right: 3rem; margin-top: 3rem; }
  .c-grid2--3x > .c-grid2__item1 { width: calc( 8.33333% - 3rem); }
  .c-grid2--3x > .c-grid2__item2 { width: calc( 16.66667% - 3rem); }
  .c-grid2--3x > .c-grid2__item3 { width: calc( 25% - 3rem); }
  .c-grid2--3x > .c-grid2__item4 { width: calc( 33.33333% - 3rem); }
  .c-grid2--3x > .c-grid2__item5 { width: calc( 41.66667% - 3rem); }
  .c-grid2--3x > .c-grid2__item6 { width: calc( 50% - 3rem); }
  .c-grid2--3x > .c-grid2__item7 { width: calc( 58.33333% - 3rem); }
  .c-grid2--3x > .c-grid2__item8 { width: calc( 66.66667% - 3rem); }
  .c-grid2--3x > .c-grid2__item9 { width: calc( 75% - 3rem); }
  .c-grid2--3x > .c-grid2__item10 { width: calc( 83.33333% - 3rem); }
  .c-grid2--3x > .c-grid2__item11 { width: calc( 91.66667% - 3rem); }
  .c-grid2--3x > .c-grid2__item12 { width: calc( 100% - 3rem); }
  .c-grid2--3x > .c-grid2__item5col { width: calc( 20% - 3rem); }
  .c-grid2--3x > .m-item1 { width: calc( 8.33333% - 3rem); }
  .c-grid2--3x > .m-item2 { width: calc( 16.66667% - 3rem); }
  .c-grid2--3x > .m-item3 { width: calc( 25% - 3rem); }
  .c-grid2--3x > .m-item4 { width: calc( 33.33333% - 3rem); }
  .c-grid2--3x > .m-item5 { width: calc( 41.66667% - 3rem); }
  .c-grid2--3x > .m-item6 { width: calc( 50% - 3rem); }
  .c-grid2--3x > .m-item7 { width: calc( 58.33333% - 3rem); }
  .c-grid2--3x > .m-item8 { width: calc( 66.66667% - 3rem); }
  .c-grid2--3x > .m-item9 { width: calc( 75% - 3rem); }
  .c-grid2--3x > .m-item10 { width: calc( 83.33333% - 3rem); }
  .c-grid2--3x > .m-item11 { width: calc( 91.66667% - 3rem); }
  .c-grid2--3x > .m-item12 { width: calc( 100% - 3rem); }
  .c-grid2--3x > .m-item5col { width: calc( 20% - 3rem); } }

@media screen and (max-width: 768px) { .c-grid2--3x { margin-right: -2.25rem; margin-top: -2.25rem; }
  .c-grid2--3x > [class*="c-grid2__item"], .c-grid2--3x > .c-grid2__item5col { margin-right: 2.25rem; margin-top: 2.25rem; }
  .c-grid2--3x > .c-grid2__item1 { width: calc( 8.33333% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item2 { width: calc( 16.66667% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item3 { width: calc( 25% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item4 { width: calc( 33.33333% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item5 { width: calc( 41.66667% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item6 { width: calc( 50% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item7 { width: calc( 58.33333% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item8 { width: calc( 66.66667% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item9 { width: calc( 75% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item10 { width: calc( 83.33333% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item11 { width: calc( 91.66667% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item12 { width: calc( 100% - 2.25rem); }
  .c-grid2--3x > .c-grid2__item5col { width: calc( 20% - 2.25rem); }
  .c-grid2--3x > .sp-item1 { width: calc( 8.33333% - 2.25rem); }
  .c-grid2--3x > .sp-item2 { width: calc( 16.66667% - 2.25rem); }
  .c-grid2--3x > .sp-item3 { width: calc( 25% - 2.25rem); }
  .c-grid2--3x > .sp-item4 { width: calc( 33.33333% - 2.25rem); }
  .c-grid2--3x > .sp-item5 { width: calc( 41.66667% - 2.25rem); }
  .c-grid2--3x > .sp-item6 { width: calc( 50% - 2.25rem); }
  .c-grid2--3x > .sp-item7 { width: calc( 58.33333% - 2.25rem); }
  .c-grid2--3x > .sp-item8 { width: calc( 66.66667% - 2.25rem); }
  .c-grid2--3x > .sp-item9 { width: calc( 75% - 2.25rem); }
  .c-grid2--3x > .sp-item10 { width: calc( 83.33333% - 2.25rem); }
  .c-grid2--3x > .sp-item11 { width: calc( 91.66667% - 2.25rem); }
  .c-grid2--3x > .sp-item12 { width: calc( 100% - 2.25rem); }
  .c-grid2--3x > .sp-item5col { width: calc( 20% - 2.25rem); } }

@media screen and (max-width: 900px) { .c-grid2.m-3x { margin-right: -3rem; margin-top: -3rem; }
  .c-grid2.m-3x > [class*="c-grid2__item"], .c-grid2.m-3x > .c-grid2__item5col { margin-right: 3rem; margin-top: 3rem; }
  .c-grid2.m-3x > .c-grid2__item1 { width: calc( 8.33333% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item2 { width: calc( 16.66667% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item3 { width: calc( 25% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item4 { width: calc( 33.33333% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item5 { width: calc( 41.66667% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item6 { width: calc( 50% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item7 { width: calc( 58.33333% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item8 { width: calc( 66.66667% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item9 { width: calc( 75% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item10 { width: calc( 83.33333% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item11 { width: calc( 91.66667% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item12 { width: calc( 100% - 3rem); }
  .c-grid2.m-3x > .c-grid2__item5col { width: calc( 20% - 3rem); }
  .c-grid2.m-3x > .m-item1 { width: calc( 8.33333% - 3rem); }
  .c-grid2.m-3x > .m-item2 { width: calc( 16.66667% - 3rem); }
  .c-grid2.m-3x > .m-item3 { width: calc( 25% - 3rem); }
  .c-grid2.m-3x > .m-item4 { width: calc( 33.33333% - 3rem); }
  .c-grid2.m-3x > .m-item5 { width: calc( 41.66667% - 3rem); }
  .c-grid2.m-3x > .m-item6 { width: calc( 50% - 3rem); }
  .c-grid2.m-3x > .m-item7 { width: calc( 58.33333% - 3rem); }
  .c-grid2.m-3x > .m-item8 { width: calc( 66.66667% - 3rem); }
  .c-grid2.m-3x > .m-item9 { width: calc( 75% - 3rem); }
  .c-grid2.m-3x > .m-item10 { width: calc( 83.33333% - 3rem); }
  .c-grid2.m-3x > .m-item11 { width: calc( 91.66667% - 3rem); }
  .c-grid2.m-3x > .m-item12 { width: calc( 100% - 3rem); }
  .c-grid2.m-3x > .m-item5col { width: calc( 20% - 3rem); } }

@media screen and (max-width: 768px) { .c-grid2.sp-3x { margin-right: -2.25rem; margin-top: -2.25rem; }
  .c-grid2.sp-3x > [class*="c-grid2__item"], .c-grid2.sp-3x > .c-grid2__item5col { margin-right: 2.25rem; margin-top: 2.25rem; }
  .c-grid2.sp-3x > .c-grid2__item1 { width: calc( 8.33333% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item2 { width: calc( 16.66667% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item3 { width: calc( 25% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item4 { width: calc( 33.33333% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item5 { width: calc( 41.66667% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item6 { width: calc( 50% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item7 { width: calc( 58.33333% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item8 { width: calc( 66.66667% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item9 { width: calc( 75% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item10 { width: calc( 83.33333% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item11 { width: calc( 91.66667% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item12 { width: calc( 100% - 2.25rem); }
  .c-grid2.sp-3x > .c-grid2__item5col { width: calc( 20% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item1 { width: calc( 8.33333% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item2 { width: calc( 16.66667% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item3 { width: calc( 25% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item4 { width: calc( 33.33333% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item5 { width: calc( 41.66667% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item6 { width: calc( 50% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item7 { width: calc( 58.33333% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item8 { width: calc( 66.66667% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item9 { width: calc( 75% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item10 { width: calc( 83.33333% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item11 { width: calc( 91.66667% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item12 { width: calc( 100% - 2.25rem); }
  .c-grid2.sp-3x > .sp-item5col { width: calc( 20% - 2.25rem); } }

/******************************************************************
component - grid-button
******************************************************************/
.c-grid-button { color: inherit; text-decoration: none; display: inline-block; text-align: center; cursor: pointer; vertical-align: middle; box-sizing: border-box; border: 1px solid transparent; line-height: 1.5; position: relative; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; font-size: 18px; border-radius: 3em; text-align: left; padding: 1.0em 3.0em; text-align: center; color: #fff; font-weight: bold; background: #29a9e9 url(/common/img/arrow-button.png) right 15px center no-repeat; transition-property: background; transition-duration: 0.3s; }

.c-grid-button:hover { color: inherit; text-decoration: none; }

.c-grid-button--top { align-items: flex-start; }

.c-grid-button--bottom { align-items: flex-end; }

.c-grid-button__inner { box-sizing: border-box; width: 100%; display: block; }

.c-grid-button:hover { background-color: #179bdd; color: #fff; }

/******************************************************************
component - grid-button-anker
******************************************************************/
.c-grid-button-anker { color: inherit; text-decoration: none; display: inline-block; text-align: center; cursor: pointer; vertical-align: middle; box-sizing: border-box; border: 1px solid transparent; line-height: 1.5; position: relative; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; font-size: 18px; border-radius: 3em; text-align: left; padding: 1.0em 2.0em; text-align: center; color: #526ce7; font-weight: bold; border: 2px solid #526ce7; background: #fff url(/common/img/arrow-bottom.png) right 15px center no-repeat; transition-property: background; transition-duration: 0.3s; }

.c-grid-button-anker:hover { color: inherit; text-decoration: none; }

.c-grid-button-anker--top { align-items: flex-start; }

.c-grid-button-anker--bottom { align-items: flex-end; }

.c-grid-button-anker__inner { box-sizing: border-box; width: 100%; display: block; }

.c-grid-button-anker:hover { background-color: #ebeeff; color: #526ce7; }

/******************************************************************
component - more-read
******************************************************************/
.c-more-read__taeget { display: none; }

.c-more-read__button { text-align: center; }

.c-more-read__button a { box-sizing: border-box; display: inline-block; color: inherit; text-decoration: none; border: 1px solid #dcdcdc; border-radius: 20px; width: 250px; padding: .8rem; margin-top: 60px; transition-property: background; transition-duration: 0.3s; }

.c-more-read__button a:hover { color: inherit; text-decoration: none; }

@media screen and (max-width: 768px) { .c-more-read__button a { margin-top: 40px; } }

.c-more-read__button a:hover { background-color: #f2fbff; }

.c-more-read__button a[aria-expanded="false"] { display: none; }

/******************************************************************
component - tab
******************************************************************/
.c-tab__menu { margin-bottom: 1rem; display: flex; max-width: 1000px; margin-left: auto; margin-right: auto; }

@media screen and (max-width: 768px) { .c-tab__menu { margin-bottom: 0.75rem; } }

.c-tab__menu li { flex-grow: 1; }

.c-tab__menu--full > * { flex-grow: 1; }

.c-tab__item { display: block; cursor: pointer; box-sizing: border-box; position: relative; }

.c-tab__body { display: none; }

.c-tab__menu { padding-bottom: 2rem; }

.c-tab__item { text-align: center; width: 100%; padding: 1em 1em; color: inherit; transition-property: background; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .c-tab__item { padding: 1em .21em; } }

@media print, screen and (max-width: 414px) { .c-tab__item { font-size: 4vw; } }

.c-tab__item.is-active, .c-tab__item[aria-expanded="true"] { font-weight: bold; }

.c-tab__item.is-active::after, .c-tab__item[aria-expanded="true"]::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border-bottom: 3px solid #29a9e9; bottom: -1px; }

.c-tab__item:hover { color: inherit; text-decoration: none; background-color: #f2fbff; }

/******************************************************************
component - nav-inline
******************************************************************/
.c-nav-inline { position: relative; background-color: #fff; z-index: +2; width: 300px; margin-left: auto; }

.c-nav-inline a { color: #282828; font-weight: 400; text-decoration: none; }

.c-nav-inline__inner { position: relative; }

.c-nav-inline__head { display: block; border: 1px solid #dcdcdc; overflow: hidden; border-radius: 20px; margin-bottom: 10px; }

.c-nav-inline__head a { display: block; position: relative; padding-right: 29px; padding: 15px 28px 15px 20px; }

.c-nav-inline__head a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-15px, 1.5px) rotate(45deg); transform-origin: top right; border-bottom: 2px solid #29a9e9; border-right: 2px solid #29a9e9; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

[aria-expanded="true"] .c-nav-inline__head a::after { transform: translate(-29px, 7px) rotate(-135deg); }

@media print, screen and (min-width: 769px) { .c-nav-inline__head a { transition-property: background; transition-duration: 0.3s; }
  .c-nav-inline__head a:hover { background-color: #f2fbff; } }

.c-nav-inline__body { display: none; box-sizing: border-box; position: absolute; z-index: +1; width: 100%; border: 1px solid #dcdcdc; background-color: #fff; padding: 10px 0; border-radius: 20px; }

.c-nav-inline__body li > a { display: block; color: #282828; padding: 7px 10px 7px 20px; }

@media print, screen and (min-width: 769px) { .c-nav-inline__body li > a { transition-property: color; transition-duration: 0.3s; }
  .c-nav-inline__body li > a:hover { color: #29a9e9; } }

/******************************************************************
component - qa
******************************************************************/
.c-qa--bordersand { border-top: 1px solid #29a9e9; border-bottom: 1px solid #29a9e9; }

.c-qa--border .c-qa__head:not(:first-child) { border-top: 1px solid #29a9e9; }

.c-qa__item { border: 1px solid #29a9e9; border-radius: 12px; margin-left: 10px; }

.c-qa__head { font-size: 1rem; font-weight: bold; cursor: pointer; outline: 0; user-select: none; position: relative; border-top-left-radius: 12px; border-top-right-radius: 12px; transition-property: background; transition-duration: 0.3s; padding-right: 1rem; padding-left: 1em; }

.c-qa__head[aria-expanded="true"] { background: #f2fbff; }

@media screen and (max-width: 768px) { .c-qa__head { padding-right: 0.75rem; } }

.c-qa__headinner { display: block; position: relative; padding: 30px 50px 30px 100px; font-size: 18px; }

.c-qa__headinner::before, .c-qa__headinner::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }

.c-qa__headinner::before { border-top: 2px solid #29a9e9; width: 30px; height: 0; top: 0; bottom: 0; right: 0; }

.c-qa__headinner::after { border-left: 2px solid #29a9e9; width: 0; height: 30px; top: 0; bottom: 0; right: 14px; transition-property: all; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .c-qa__headinner { position: relative; padding: 20px 24px 20px 50px; font-size: 16px; }
  .c-qa__headinner::before, .c-qa__headinner::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .c-qa__headinner::before { border-top: 2px solid #29a9e9; width: 16px; height: 0; top: 0; bottom: 0; right: 0; }
  .c-qa__headinner::after { border-left: 2px solid #29a9e9; width: 0; height: 16px; top: 0; bottom: 0; right: 7px; transition-property: all; transition-duration: 0.3s; } }

.c-qa__head[aria-expanded="true"] .c-qa__headinner::after { height: 0; }

.c-qa__head::before { transform: translate(-10px, -10px); position: absolute; left: 0; content: "Q"; background: #29a9e9; width: 90px; height: 90px; border-radius: 12px; mix-blend-mode: multiply; font-size: 36px; color: #fff; display: flex; align-items: center; justify-content: center; }

@media screen and (max-width: 768px) { .c-qa__head::before { width: 60px; height: 60px; border-radius: 10px; font-size: 26px; } }

.c-qa--border .c-qa__body { padding-top: 1rem; padding-bottom: 1rem; }

@media screen and (max-width: 768px) { .c-qa--border .c-qa__body { padding-top: 0.75rem; padding-bottom: 0.75rem; } }

.c-qa__body { display: none; background: #f2fbff; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; border-top: 1px solid #29a9e9; }

.c-qa__bodyinner { padding: 30px 50px 30px 120px; }

.c-qa__bodyinner { position: relative; }

.c-qa__bodyinner::before { position: absolute; top: 22px; left: 70px; content: "A．"; color: #29a9e9; font-size: 24px; font-weight: bold; padding-left: 0.5em; }

/******************************************************************
component - gutter
******************************************************************/
.c-gutter > *:not(:last-child) { margin-bottom: 1rem; }

.c-gutter-2l > *:not(:last-child) { margin-bottom: 1.5rem; }

.c-gutter-2x > *:not(:last-child) { margin-bottom: 2rem; }

@media screen and (max-width: 768px) { .c-gutter > *:not(:last-child) { margin-bottom: 0.75rem; }
  .c-gutter-2l > *:not(:last-child) { margin-bottom: 1.125rem; }
  .c-gutter-2x > *:not(:last-child) { margin-bottom: 1.5rem; }
  .c-sp-gutter > *:not(:last-child) { margin-bottom: 0.75rem; }
  .c-sp-gutter-2l > *:not(:last-child) { margin-bottom: 1.125rem; }
  .c-sp-gutter-2x > *:not(:last-child) { margin-bottom: 1.5rem; } }

/******************************************************************
component - text-row2
******************************************************************/
.c-text-row2 { display: flex; }

.c-text-row2--inline { display: inline-flex; }

.c-text-row2--vertical { align-items: center; }

.c-text-row2 > .c-text-row2__head-left, .c-text-row2 > .c-text-row2__head-right { box-sizing: border-box; flex-shrink: 0; max-width: 50%; }

.c-text-row2 > .c-text-row2__head-left { margin-right: 1rem; order: 1; }

.c-text-row2 > .c-text-row2__head-right { margin-left: 1rem; order: 2; }

.c-text-row2 > .c-text-row2__body-right, .c-text-row2 > .c-text-row2__body-left { box-sizing: border-box; flex-grow: 1; }

.c-text-row2 > .c-text-row2__body-right { order: 2; }

.c-text-row2 > .c-text-row2__body-left { order: 1; }

@media screen and (max-width: 768px) { .c-text-row2.sp-top { align-items: stretch; }
  .c-text-row2.sp-vertical { align-items: center; }
  .c-text-row2 > .c-text-row2__head-left { margin-right: 0.75rem; }
  .c-text-row2 > .c-text-row2__head-right { margin-left: 0.75rem; }
  .c-text-row2.sp-column { flex-direction: column; }
  .c-text-row2.sp-column--center { align-items: flex-start; }
  .c-text-row2.sp-column > .c-text-row2__head-left, .c-text-row2.sp-column > .c-text-row2__head-right { order: 1; margin-bottom: 0.75rem; margin-right: 0; margin-left: 0; text-align: center; width: 100% !important; max-width: none !important; }
  .c-text-row2.sp-column > .c-text-row2__body-right, .c-text-row2.sp-column > .c-text-row2__body-left { order: 2; width: 100%; }
  .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__head-left, .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__head-right { order: 2; margin-top: 0.75rem; margin-bottom: 0; }
  .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__body-right, .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__body-left { order: 1; } }

.c-text-row2--2x > .c-text-row2__head-left { margin-right: 2rem; }

.c-text-row2--2x > .c-text-row2__head-right { margin-left: 2rem; }

@media screen and (max-width: 768px) { .c-text-row2--2x > .c-text-row2__head-left { margin-right: 1.5rem; }
  .c-text-row2--2x > .c-text-row2__head-right { margin-left: 1.5rem; }
  .c-text-row2--2x.sp-column > .c-text-row2__head-left, .c-text-row2--2x.sp-column > .c-text-row2__head-right { margin-bottom: 1.5rem; }
  .c-text-row2--2x.sp-column.sp-column-reverse > .c-text-row2__head-left, .c-text-row2--2x.sp-column.sp-column-reverse > .c-text-row2__head-right { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-text-row2.sp-2x > .c-text-row2__head-left { margin-right: 1.5rem; }
  .c-text-row2.sp-2x > .c-text-row2__head-right { margin-left: 1.5rem; }
  .c-text-row2.sp-2x.sp-column > .c-text-row2__head-left, .c-text-row2.sp-2x.sp-column > .c-text-row2__head-right { margin-bottom: 1.5rem; margin-right: 0; margin-left: 0; }
  .c-text-row2.sp-2x.sp-column.sp-column-reverse > .c-text-row2__head-left, .c-text-row2.sp-2x.sp-column.sp-column-reverse > .c-text-row2__head-right { margin-top: 1.5rem; } }

/******************************************************************
component - table
******************************************************************/
.c-table-scroll .c-table { min-width: 800px; }

.c-table { width: 100%; }

.c-table--stripe *:not(thead) tr:nth-child(odd) { background-color: #fafafa; }

.c-table--stripe-even *:not(thead) tr:nth-child(even) { background-color: #fafafa; }

.c-table__caption { font-weight: bold; font-size: 1.2rem; line-height: 1.6; text-align: left; }

@media screen and (max-width: 768px) { .c-table__caption { font-size: 1rem; } }

@media screen and (max-width: 768px) { .c-table.sp-column { display: block; width: 100%; border-top: 1px solid #dcdcdc; }
  .c-table.sp-column tbody, .c-table.sp-column tr { display: block; width: 100%; }
  .c-table.sp-column .c-table__data { display: block; width: 100%; border-top: 0; } }

.c-table__data { box-sizing: border-box; border: 1px solid #29a9e9; text-align: left; padding-right: 1rem; padding-left: 1rem; padding-top: 0.75rem; padding-bottom: 0.75rem; }

@media screen and (max-width: 768px) { .c-table__data { padding-right: 0.75rem; padding-left: 0.75rem; } }

@media screen and (max-width: 768px) { .c-table__data { padding-top: 0.5625rem; padding-bottom: 0.5625rem; } }

.c-table__data--bg { background-color: #f2f2f2; color: #444444; }

.c-table__data--bg a { color: #444444; }

/******************************************************************
component - table-scroll
******************************************************************/
.c-table-scroll { overflow-x: auto; }

.c-table-scroll::-webkit-scrollbar { width: 5px; background: #F1F1F1; }

.c-table-scroll::-webkit-scrollbar:horizontal { height: 5px; background: #F1F1F1; }

.c-table-scroll::-webkit-scrollbar-thumb { background: #BCBCBC; border-radius: 2px; }

.c-table-scroll::-webkit-scrollbar-thumb:horizontal { background: #BCBCBC; border-radius: 2px; }

@media screen and (max-width: 768px) { .c-sp-table-scroll { overflow-x: auto; }
  .c-sp-table-scroll::-webkit-scrollbar { width: 5px; background: #F1F1F1; }
  .c-sp-table-scroll::-webkit-scrollbar:horizontal { height: 5px; background: #F1F1F1; }
  .c-sp-table-scroll::-webkit-scrollbar-thumb { background: #BCBCBC; border-radius: 2px; }
  .c-sp-table-scroll::-webkit-scrollbar-thumb:horizontal { background: #BCBCBC; border-radius: 2px; } }

/******************************************************************
component - news-icon-row
******************************************************************/
.p-news__title + .c-news-icon-row { margin-top: 50px; }

.c-more-read .c-news-icon-row__item:first-child { border-top: 0; }

.c-news-icon-row { border-bottom: 1px solid #dcdcdc; }

.c-news-icon-row__item { padding: 20px 0; border-top: 1px solid #dcdcdc; align-items: center; min-height: 3em; }

.c-news-icon-row__time { display: block; float: left; color: #9fa1a2; width: 7em; }

.c-news-icon-row__icon span { white-space: nowrap; width: 120px; }

.c-news-icon-row__body { display: block; padding-top: .4em; }

.c-news-icon-row__body a { color: #444444; }

.c-news-icon-row__body a:hover { text-decoration: underline; color: #526ce7; }

/******************************************************************
component - list
******************************************************************/
.c-list__item:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-list__item:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list__item:not(:first-child) { margin-top: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list__item:not(:first-child) { margin-top: 0.9rem; } }

/******************************************************************
component - list-disc
******************************************************************/
.c-list-disc__item { margin-left: 1.5em; list-style: disc; }

.c-list-disc .c-list-disc__item:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-list-disc .c-list-disc__item:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-disc .c-list-disc__item:not(:first-child) { margin-top: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-disc .c-list-disc__item:not(:first-child) { margin-top: 0.9rem; } }

/******************************************************************
component - list-order
******************************************************************/
.c-list-order__item { margin-left: 1.5em; list-style: decimal; }

.c-list-order .c-list-order__item:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-list-order .c-list-order__item:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-order .c-list-order__item:not(:first-child) { margin-top: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-order .c-list-order__item:not(:first-child) { margin-top: 0.9rem; } }

/******************************************************************
component - list-notes
******************************************************************/
.c-list-notes { display: table; width: 100%; }

.c-list-notes--bordersand { border-top: 1px solid #29a9e9; border-bottom: 1px solid #29a9e9; padding-top: 2rem; padding-bottom: 2rem; }

@media screen and (max-width: 768px) { .c-list-notes--bordersand { padding-top: 1.5rem; padding-bottom: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-notes--bordersand { padding-top: 1.2rem; padding-bottom: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-notes--bordersand { padding-top: 0.9rem; padding-bottom: 0.9rem; } }

.c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 2rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 0.9rem; } }

.c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { border-top: 1px solid #29a9e9; padding-top: 2rem; padding-bottom: 2rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { padding-top: 1.5rem; padding-bottom: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { padding-top: 1.2rem; padding-bottom: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { padding-top: 0.9rem; padding-bottom: 0.9rem; } }

.c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { border-top: 1px solid #29a9e9; padding-top: 2rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { padding-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { padding-top: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { padding-top: 0.9rem; } }

.c-list-notes--s { font-size: 0.75rem; line-height: 1.6; }

@media screen and (max-width: 768px) { .c-list-notes--s { font-size: 0.75rem; } }

.c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__head, .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__body { padding-top: 2rem; }

@media screen and (max-width: 768px) { .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__head, .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__body { padding-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__head, .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__body { padding-top: 1.2rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__head, .c-list-notes > .c-list-notes__row:not(:first-child) > .c-list-notes__body { padding-top: 0.9rem; } }

@media screen and (max-width: 768px) { .c-list-notes.sp-vertial > .c-list-notes__row:not(:first-child) > .c-list-notes__body { padding-top: 0; } }

.c-list-notes__row { display: table-row; }

.c-list-notes__head { display: table-cell; white-space: nowrap; padding-right: 0.5em; width: 0.1%; vertical-align: top; }

.c-list-notes__head--wide { padding-right: 1.5em; font-weight: 400; }

.c-list-notes__head--fit { padding-right: 0; }

.c-list-notes__body { display: table-cell; vertical-align: top; }

@media screen and (max-width: 768px) { .c-list-notes.sp-vertial { display: block; }
  .c-list-notes.sp-vertial > .c-list-notes__row { display: block; }
  .c-list-notes.sp-vertial > .c-list-notes__row > .c-list-notes__head { display: block; white-space: normal; padding-right: 0; width: auto; }
  .c-list-notes.sp-vertial > .c-list-notes__row > .c-list-notes__body { display: block; }
  .c-list-notes.sp-vertial > .c-list-notes__row:not(:first-child) > .c-list-notes__head--wide { margin-top: 5px; }
  .c-list-notes.sp-vertial > .c-list-notes__row > .c-list-notes__head--wide + .c-list-notes__body { margin-top: 5px; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { border-top: 0; padding-top: 0; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row:last-child > .c-list-notes__body { border-top: 0; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row > .c-list-notes__head { padding-bottom: 0 !important; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row > .c-list-notes__body { padding-top: 0 !important; } }

/******************************************************************
component - image
******************************************************************/
.js-image-size-sync a { display: block; color: inherit; text-decoration: none; }

.js-image-size-sync a:hover { color: inherit; text-decoration: none; }

.js-image-size-sync.c-image--center a { margin-right: auto; margin-left: auto; }

.js-image-size-sync.c-image--right a { margin-left: auto; }

.c-image--center { text-align: center; }

.c-image--right { text-align: right; }

.c-image img { border-radius: 20px; }

.c-image__title { display: block; text-align: left; line-height: 1.5; font-weight: bold; font-size: 1.2rem; line-height: 1.6; }

@media screen and (max-width: 768px) { .c-image__title { font-size: 1rem; } }

.c-image--center .c-image__title { margin-right: auto; margin-left: auto; }

.c-image--right .c-image__title { margin-left: auto; }

.c-image__title:first-child { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .c-image__title:first-child { margin-bottom: 0.375rem; } }

.c-image__title:last-child { margin-top: 0.5rem; }

@media screen and (max-width: 768px) { .c-image__title:last-child { margin-top: 0.375rem; } }

.c-image__caption { display: block; text-align: left; line-height: 1.5; font-size: 13px; }

.c-image--center .c-image__caption { margin-right: auto; margin-left: auto; }

.c-image--right .c-image__caption { margin-left: auto; }

.c-image__caption:first-child { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .c-image__caption:first-child { margin-bottom: 0.375rem; } }

.c-image__caption:last-child { margin-top: 0.5rem; }

@media screen and (max-width: 768px) { .c-image__caption:last-child { margin-top: 0.375rem; } }

/******************************************************************
component - c-image-youtube
******************************************************************/
.c-image-youtube { position: relative; display: inline-block; max-width: 100%; }

.c-image-youtube__main { position: absolute; z-index: +1; top: 0; left: 0; width: 100%; height: 100%; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAABoCAYAAAAdHLWhAAALDklEQVR4nO2dy48cRx3HP9WvKdvxyiZR2HVs4uBHNkYgUFCCyJOHEoULJw4ITogbFyTOcODfgCviEIEUIaFEkRIncaQEgRQhYdaJk9ix42wiv9jYmdrp7moOXTWu7Z3ZefVM98z2R2rNbM9s92/q27/6VVdX1U9kWcacsAf4EnAQWAL2m33SbAIIzXdjIAOU2drA58AGcAO4bvbVHtFu19NOKeXdwLLZvgzcVfIpbgGfAuvAulLqWsnHnxgpZb0EklIeBo6Ti7LkfpZlWXfTWmM9v/hqEUJse/U8DyFEdyuwQS7WeaXU5XJ/2XjUQiDjKSfIRbnX7rdC2K3sqtgKZreCYJ+Ri/VelZ5VqUBSyq8Cq8Bhuy/LMtI0JU3T0gUZhBAC3/fxfb8o1mVgTSn1wUwNoiKBpJQngAeBQ3DHU9I0RWs9U1v64Xkevu8XPesKcE4p9d6s7JipQFLK4+Qe0xUmSRLSNJ3J+cfF932CICgKtaaUOj/tc89EICnlAeAR4CjMjzBFegh1EXhbKXVzWuecukBSyseBUzC/whTpIdRZpdSZaZxragJJKfcDjwNHANI0JUmSmQf+aSGEIAgCfN+3uy4BZ5RSn5d5nqkIJKU8CTwGhFmWEcdxbYJ/2XieRxiG1pti4E2l1LtlHb90gaSUT5G30EjTlDiOSzt2nQnD0PWmc0qp18o4rpSSoKQDRcDTmIZAHMdzH2tGwdYSYRgCPCilbAGnlVKdSY/tTXoAKeU+4FngaJZldDqdXSWOJU1TOp2OjbNHgWdN2UzERAJJKe8iF2fFirOo8WYYtNauSCvkIk3UyTu2QObEzwH3FAzb1RQu1HuA5yYRaSyBjOs+AxxsxNlOQaSDwDPjijSyQKZB8AMcz2noTcGTvm/KbiTG8aCngWV7j9OwM07tsgx8b9T/H0kgKeWTOK21plobDqes7jdlODRDC2R6CFYhb/c34gxPobZZNWU5FEMJZALcd4GF7rqZJlprV6THTH/lQIb1oCeAyD7tbBgPp/xC8s7kgQwUyDwyONI0CsrBCQ9HTNnuyI4CmYdtp+yBG8rBKctTpoz7MsiDHgFqNV5gEbBjMAyP7PTdvgJJKY9hmtRJkpRoXgPgPsA8asZr9GQnD3qocKCGEilc+Kv9vtdTICnlKeCQHafWMB2c8X+HTJlvo58HHQOaqm0GOGV8rNfn2wQyd7krjffMBseLVnr1MPTyoOPQeM8sccp6W2Nhi0BSynuBw433zBbHiw4bDboUPWjV/kPDbHHKfEuLrijQcuHLtUIIsQfwB35xDnHKfNnd3x12JaW8Hzgwjbk4ZdBqtX4hhHgUQGv9RhzHz2dZtlm1XWVhZ3l4nndASnm/UuoibPWgB4BadukIIfYIIR61F47neU+0Wq3fRVH0o4pNKxWn7I/aN65Ata3ePM+7D/If0G63rY33eJ7341ar9ZsgCL5VrYXl4JT9in0TQHca4pKdA1pntNYopfB9nyiK8DzvZBAEJ33ffydJkr+laVqL+aXjYMtfCLFkNLlmPWgZ6lm99SNNU9rtdvd5vxDim2EY/jaKop9TwojZqnA0WIY7P2TuBLLEcUy73e4+Y7HxKQzDH1Zs2lgUBQrcP+ZRILgzUDBJEqIowvf9Fd/3f+J53tfTNH01SZJ3qrZxWLYJJKXcA+ybh/gziB7xaTUIglXf9/8Vx/ELWutPq7ZxEE4c2gfs8ciXV5l7cVx6xKeHoyj6fRRFP2MO4pOjxd0B+djhhRLIEsdxt9oLggDP855stVontNan4zg+XbV9/XC0OOBhllyZ1/gziCzL2Nzc7N4/CSFWfN//aavV+nUQBF+r2r5eOFosBeSrRi2kB7nY+BQEAVEUIYR4KAiCh0x8+ovWujaLKTlaLAXAxLPA5okkSUiShDAM7QTgh6Moelhr/Xqn0/lT1fYV2BuQr7W28B5UpE98ekBrfabq+ORoIT1g5Dkri4Ibn7TWCCGOmPj0K8/zDlZtHxB55CsV7joPcrGdsJubm7ZZ/o0wDH9ZlT2OFsLjzjKSu54kSVxvOu77/n0VmxSWsk7CouD0QJBl2fk0TT+u2qaAfAmTXe1FQgharVZ3tZAsy87HcfzHis0CiAPy1XERQuy6OCSE6Da3DRta6zOdTueFqu0yZAHQYRe25JwbVgCyLHu70+k8n2VZqStWTUgnIF9X+q7d4kGe59FqtfC8vM80y7L/pGn6YpIkpa1SNSmOB6kAuE0+j3+hEUJ0b0oBsiy7VIeb0gF8EZCvyN5rHemFwenWAaCm3TpdHC02AvIFvfE8r5YjegwaRr+I3GYzQJZlc/HgztqLEegm1N6DRhqg6HmeffQNQJZla/P06NvR4mYAXCvsnFt6NJuvpmn6ehzHL1Vp16g4WlwPlFJtKeVtIcS+eW7JFZvN8zo82MkrcRvTSIA8T8GxmsehnvSIM/9OkuTvaZp+WLFpY+HEn3W4M+xq7gTq0Wz+QGv9WhzHb1Vs2kTsJJD7Ya2JosiNM19orU9X3T1TFj0FUkpdk1JuCCGW6hiHtNb/g9xr9u7d63bP/COO479qrW9UamBJOPFnw2iyZVnmdWDJ9/3azU/NsuxWlmX/FEJ82/z9X9M9s1a1bWXirL29bt+4An0InKxrNbe5ufkHIcSfhRCR1vp61fZMA6fsuw2c7h4zo+tmj2xUtSHLsluLKo7NCAbctLPrYPsw2HXY4moNM6JX9QbbBVorfLlhRjhlviWubhFIKfUZcNnmc2uYDU7evMtGgy69WgTnge4NYMP0ccp6W9q1bQKZ/DefNF40Gxzv+aRX7qF+ber3ofGiWeCU8fu9Pu8pkFLqLHCl8aLp4njPFVPm29jprnQNKCbUaygJmwfP0LdHpK9AJk/oxcKBGkrCufA/2ikn66B+nbeBblbehnKwmY4NOz4e2bHUTRLXs4Dbvd8wIU5Znh2UKHegW5gkrpfs8/6GyXCGf10aJkHusPXWGSC22eIbxsMpv5i8TAcylEAmw+6bkF8BTTwaHZsU1/DmsFmLhy5pc5d7Dra4acMQFMLDuVGyFY/kCibD7kU7YKNhOJzhYBdHzVI8Tl31KrDeiDQcjjjr5GU3EiMLZNIfvwJctUNsG3rjjNe7CrwyTurosaK9UuoW8DJww4rUxKQ72NrFiHMDeNmU2ciM3RwzrZAXcTypEWmbOFeBF4dtsfViovayOfFLODFpNzfBCxfqOvDSJOJACWunKaVuk3vSBSvSbryZtWPEjTgXyD3n9qTHFe12e9JjdJFSPgU8CPmiersl710Yhu5FeW7UpnQ/pJTlCmQOehJ4DAht5shFXYvO9g4Yr4nJewhKm4w8FYHMgfeT5149DLk3LVKqNfuMzPGay8Abk8abIlMTyDnB45g0nzZn27xMb+mH7/vFp8xnh+mVHoepC2ROcgD4DvAVmF+hegjzEfDWoOc5kzATgZyTHSfPjXMI5keoHsJcAdZ2ekxdFjMVyDnpKfKEeiuQC2VzXNclRtnRTM6oG4BPgPf7jb6ZBpUI5Jz8BHAS6K7JprXuZumdtVhWFM/zijfbHwPvKqXem6lBVCyQY8S95FXfMtDNa20THtmtbMHsdA+7FbqpbpL3BKwVx0rPkloI5CKlPEqe3GgZs563xS6Zb8WyghVfLbbA3VcrijPV0GWDXJQLSqkLJf6ssamdQC4mf86ys5W9fPQX5HFlHVhXStVm3WxLrQUqYpKA3E2eymA/uYdJYA/QIu9XtCMsE/L1fTaBNvmSaxvkC0fdAK4ppWr/w6WU/B8kUdXk0o5nqQAAAABJRU5ErkJggg==); background-repeat: no-repeat; background-position: center center; background-size: 104px 104px; }

.c-image-youtube img { border-radius: 20px; }

/******************************************************************
component - heading
******************************************************************/
.c-heading2 { font-size: 40px; margin-bottom: 60px !important; }

.c-heading2:not(:first-child) { margin-top: 6rem; }

@media screen and (max-width: 768px) { .c-heading2 { font-size: 34px; margin-bottom: 50px !important; } }

.c-heading3 { font-size: 24px; margin-bottom: 40px !important; color: #29a9e9; }

@media screen and (max-width: 768px) { .c-heading3 { font-size: 20px; margin-bottom: 35px !important; } }

.c-heading4 { font-size: 18px; position: relative; padding-bottom: 20px; }

@media screen and (max-width: 768px) { .c-heading4 { font-size: 16px; } }

.c-heading4::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; bottom: 0; left: 0; width: 100px; height: 2px; background: #29a9e9; }

.c-heading4.u-center::after { right: 0; }

/******************************************************************
component - news-date
******************************************************************/
.c-news-date { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; margin-bottom: 30px; text-align: right; }

.c-news-date > *:not(:last-child) { margin-right: 1rem; }

@media screen and (max-width: 768px) { .c-news-date > *:not(:last-child) { margin-right: 0.75rem; } }

@media screen and (max-width: 768px) { .c-news-date { padding-left: 18px; padding-right: 18px; } }

.c-news-date time { color: #9fa1a2; font-size: 18px; }

/******************************************************************
component - button
******************************************************************/
.c-button { color: inherit; text-decoration: none; display: inline-block; text-align: center; cursor: pointer; vertical-align: middle; box-sizing: border-box; border: 1px solid transparent; line-height: 1.5; padding: 0.5em 1.5em; }

.c-button:hover { color: inherit; text-decoration: none; }

.c-button--radius { border-radius: 6px; }

.c-button--circle { border-radius: 3em; }

.c-button--full { display: block; width: 100%; padding: 0.5em 1em; min-width: none; }

.c-button--basic { font-size: 18px; border-radius: 3em; text-align: left; padding: 1.0em 3.0em; min-width: 18em; min-width: min(18em, 100%); text-align: center; color: #fff; font-weight: bold; background: #29a9e9 url(/common/img/arrow-button.png) right 15px center no-repeat; transition-property: background; transition-duration: 0.3s; }

.c-button--basic:hover { background-color: #179bdd; color: #fff; }

.c-button--back { background: url(/common/img/arrow-back.png) left center no-repeat; padding-left: 45px; color: #29a9e9; font-weight: bold; font-size: 20px; }

.c-button--back:hover { color: #209ce6; }

/******************************************************************
component - badge
******************************************************************/
.c-badge { display: inline-block; text-align: center; vertical-align: 1px; box-sizing: border-box; line-height: 1; font-size: 18px; color: #fff; border: 1px solid transparent; padding: 0.55em 1em 0.65em; border-radius: 30px; min-width: 9em; }

.c-badge--s { font-size: 14px; padding: 0.55em 0.5em 0.55em; min-width: 0; }

.c-badge--news { background-color: #529eeb; }

.c-badge--press { background-color: #778bec; }

.c-badge--result { background-color: #bea74d; }

.c-badge--recruit { background-color: #54b762; }

.c-badge--event { background-color: #a2ce5e; }

.c-badge--other { background-color: #ababab; }

.c-badge--new { color: #FF0000; font-weight: bold; min-width: initial; width: auto !important; padding: 0 1em; vertical-align: middle; display: none; }

.c-badge--new.is-active { display: inline-block; }

.c-badge--full { display: block; width: 100%; }

/******************************************************************
component - input-group
******************************************************************/
.c-input-group { display: inline-flex; }

.c-input-group--borderless { border: 0; }

.c-input-group--full { display: flex; width: 100%; }

.c-input-group__button { background-color: #29a9e9; border-radius: 40px; color: #fff; padding: 0 1.5em; margin-left: 10px; }

.c-input-group__input { box-sizing: border-box; vertical-align: middle; padding: 0.25em 1.5em; background-color: #ffffff; border: 1px solid transparent; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; -webkit-appearance: none; width: 20em; flex-grow: 1; border: 1px solid #29a9e9; border-radius: 40px; }

.c-input-group__input:focus { outline: 0; }

.c-input-group > *:not(input) { flex-shrink: 0; white-space: nowrap; }

.c-input-group > * { display: flex; align-items: center; }

/******************************************************************
project - top-nav
******************************************************************/
.p-top-nav > *:not(:last-child) { margin-bottom: 40px; }

.p-top-nav a { display: block; max-width: 1000px; margin-left: 200px; aspect-ratio: 1000 / 160; background-repeat: no-repeat; background-position: center center; background-size: cover; position: relative; z-index: +1; border-radius: 15px; margin-left: auto; transition-property: opacity; transition-duration: 0.3s; }

@media print, screen and (max-width: 1230px) { .p-top-nav a { margin-left: 16.26016vw; } }

.p-top-nav a:hover { text-decoration: none; opacity: .7; }

.p-top-nav a::after { box-sizing: border-box; position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: -20px; left: -200px; width: 500px; height: 120px; background: #5c87e9; mix-blend-mode: multiply; border-radius: 15px; z-index: -1; }

@media print, screen and (max-width: 1230px) { .p-top-nav a::after { left: -16.26016vw; } }

@media screen and (max-width: 768px) { .p-top-nav a::after { width: 70vw; } }

.p-top-nav__text { box-sizing: border-box; display: flex; align-items: center; color: #fff; width: 500px; height: 120px; font-size: 24px; font-weight: bold; transform: translate(-200px, -20px); padding: 0 60px 0 40px; background: url(/common/img/arrow-button.png) right 15px center no-repeat; }

@media print, screen and (max-width: 1230px) { .p-top-nav__text { transform: translate(-16.26016vw, -20px); } }

@media screen and (max-width: 768px) { .p-top-nav__text { width: 70vw; font-size: 1.2rem; } }

/******************************************************************
project - teams-nav
******************************************************************/
.p-teams-nav-title { font-size: 60px; position: relative; z-index: +1; padding-top: 40px; padding-left: 120px; line-height: 1; padding-bottom: 3rem; }

@media screen and (max-width: 768px) { .p-teams-nav-title { font-size: 38px; padding-top: 32px; padding-left: 80px; padding-bottom: 1.2rem; } }

.p-teams-nav-title::after { z-index: -1; position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: -40px; left: 0; width: 136px; height: 137px; background: url(/common/img/teams-nav.png) left top no-repeat; }

@media screen and (max-width: 768px) { .p-teams-nav-title::after { top: -30px; width: 90px; height: 90px; background-size: 100% auto; } }

.p-teams-nav-title small { display: inline-block; color: #29a9e9; font-size: 16px; padding-left: 20px; }

@media screen and (max-width: 768px) { .p-teams-nav-title small { font-size: 14px; padding-left: 16px; } }

.p-teams-nav { display: flex; flex-wrap: wrap; padding-top: 70px; margin-left: 20px; margin-right: -60px; margin-bottom: -120px; }

@media print, screen and (max-width: 1230px) { .p-teams-nav { margin-right: -40px; } }

.p-teams-nav li { margin-right: 60px; margin-bottom: 120px; width: calc(33.33333% - 60px); }

@media print, screen and (max-width: 1230px) { .p-teams-nav li { margin-right: 40px; width: calc(50% - 40px); } }

@media screen and (max-width: 768px) { .p-teams-nav li { width: calc(100% - 60px); } }

.p-teams-nav a { display: block; width: 352px; height: 198px; background-repeat: no-repeat; background-position: top right; position: relative; z-index: +1; border-radius: 15px; transition-property: opacity; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .p-teams-nav a { width: 100%; height: auto; aspect-ratio: 352 / 198; background-size: 100% auto; } }

.p-teams-nav a:hover { text-decoration: none; opacity: .7; }

.p-teams-nav a::after { box-sizing: border-box; position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: -70px; left: -20px; width: 290px; height: 80px; background: #209ce6; mix-blend-mode: multiply; border-radius: 15px; z-index: -1; }

.p-teams-nav__text { box-sizing: border-box; display: flex; align-items: center; color: #fff; width: 290px; height: 80px; font-size: 18px; font-weight: bold; transform: translate(-20px, -70px); padding: 0 50px 0 25px; line-height: 1.4; background: url(/common/img/arrow-button.png) right 15px center no-repeat; }

.p-teams-nav2 { display: flex; flex-wrap: wrap; margin-right: -60px; margin-bottom: -60px; }

@media print, screen and (max-width: 1230px) { .p-teams-nav2 { margin-right: -40px; } }

.p-teams-nav2 li { margin-right: 60px; margin-bottom: 60px; width: calc(33.33333% - 60px); }

@media print, screen and (max-width: 1230px) { .p-teams-nav2 li { margin-right: 4.87805vw; margin-bottom: 4.87805vw; width: calc(33.33333% - 4.87805vw); } }

@media screen and (max-width: 1000px) { .p-teams-nav2 li { width: calc(50% - 4.87805vw); } }

@media screen and (max-width: 768px) { .p-teams-nav2 li { margin-right: 40px; margin-bottom: 40px; width: calc(100% - 40px); } }

.p-teams-nav2 a { display: block; background-repeat: no-repeat; background-position: top right; position: relative; z-index: +1; border-radius: 15px; background: #209ce6; transition-property: opacity; transition-duration: 0.3s; }

.p-teams-nav2 a:hover { text-decoration: none; opacity: .7; }

.p-teams-nav2__text { box-sizing: border-box; display: flex; align-items: center; color: #fff; width: 100%; min-height: 80px; font-size: 18px; font-weight: bold; padding: 0 50px 0 25px; line-height: 1.4; background: url(/common/img/arrow-button.png) right 15px center no-repeat; }

/******************************************************************
project - breadcrumb
******************************************************************/
.p-breadcrumb::after { content: ""; display: block; clear: both; }

.p-breadcrumb__item { float: left; padding-right: 0.5em; font-size: 14px; }

.p-breadcrumb__item a { font-weight: bold; }

.p-breadcrumb__item:not(:last-child)::after { content: '>'; padding-left: 0.5em; }

/******************************************************************
project - important-news
******************************************************************/
.p-important-news__title { color: #29a9e9; font-size: 18px; position: relative; z-index: +1; margin-bottom: 20px; }

.p-important-news__title::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 0; width: 100%; height: 0; border-top: 1px solid #29a9e9; z-index: -1; }

.p-important-news__title span { display: inline-block; background-color: #fff; padding-right: 1em; }

.p-important-news__body { font-weight: bold; }

.p-important-news__body li:not(:last-child) { margin-bottom: 10px; }

.p-important-news__body a { display: inline-block; background: url(/common/img/arrow-right.png) left 6px no-repeat; padding-left: 30px; }

.p-news__title { font-size: 36px; margin-bottom: 10px; }

@media screen and (max-width: 768px) { .p-news__title { font-size: 26px; } }

.p-news__btn { margin-bottom: 20px; text-align: right; }

.p-news__btn a { display: inline-block; background: url(/common/img/arrow-news.png) right center no-repeat; padding-right: 45px; color: #29a9e9; font-weight: bold; font-size: 20px; }

@media screen and (max-width: 768px) { .p-news__btn a { font-size: 1rem; background-size: auto 100%; } }

.p-news__btn a:hover { color: #209ce6; text-decoration: none; }

/******************************************************************
project - modal (Modaal)
******************************************************************/
/*! Modaal - accessible modals - v0.4.4 by Humaan, for all humans. http://humaan.com */
.modaal-noscroll { overflow: hidden; }

.modaal-accessible-hide { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999; opacity: 0; }

.modaal-wrapper { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; overflow: auto; opacity: 1; box-sizing: border-box; -webkit-overflow-scrolling: touch; transition: all 0.3s ease-in-out; }

.modaal-wrapper * { box-sizing: border-box; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-backface-visibility: hidden; }

.modaal-wrapper .modaal-close { border: none; background: transparent; padding: 0; -webkit-appearance: none; }

.modaal-wrapper.modaal-start_none { display: none; opacity: 1; }

.modaal-wrapper.modaal-start_fade { opacity: 0; }

.modaal-wrapper *[tabindex="0"] { outline: none !important; }

.modaal-wrapper.modaal-fullscreen { overflow: hidden; }

.modaal-outer-wrapper { display: table; position: relative; width: 100%; height: 100%; }

.modaal-fullscreen .modaal-outer-wrapper { display: block; }

.modaal-inner-wrapper { display: table-cell; width: 100%; height: 100%; position: relative; vertical-align: middle; text-align: center; padding: 80px 25px; }

.modaal-fullscreen .modaal-inner-wrapper { padding: 0; display: block; vertical-align: top; }

.modaal-container { position: relative; display: inline-block; width: 100%; margin: auto; text-align: left; color: #000; max-width: 1000px; border-radius: 0px; background: #fff; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); cursor: auto; }

.modaal-container.is_loading { height: 100px; width: 100px; overflow: hidden; }

.modaal-fullscreen .modaal-container { max-width: none; height: 100%; overflow: auto; }

.modaal-close { position: fixed; right: 20px; top: 20px; color: #fff; cursor: pointer; opacity: 1; width: 50px; height: 50px; background: rgba(0, 0, 0, 0); border-radius: 100%; transition: all 0.2s ease-in-out; }

.modaal-close:focus, .modaal-close:hover { outline: none; background: #fff; }

.modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after { background: #b93d0c; }

.modaal-close span { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-close:before, .modaal-close:after { display: block; content: " "; position: absolute; top: 14px; left: 23px; width: 4px; height: 22px; border-radius: 4px; background: #fff; transition: background 0.2s ease-in-out; }

.modaal-close:before { transform: rotate(-45deg); }

.modaal-close:after { transform: rotate(45deg); }

.modaal-fullscreen .modaal-close { background: #afb7bc; right: 10px; top: 10px; }

.modaal-content-container { padding: 30px; }

.modaal-confirm-wrap { padding: 30px 0 0; text-align: center; font-size: 0; }

.modaal-confirm-btn { font-size: 14px; display: inline-block; margin: 0 10px; vertical-align: middle; cursor: pointer; border: none; background: transparent; }

.modaal-confirm-btn.modaal-ok { padding: 10px 15px; color: #fff; background: #555; border-radius: 3px; transition: background 0.2s ease-in-out; }

.modaal-confirm-btn.modaal-ok:hover { background: #2f2f2f; }

.modaal-confirm-btn.modaal-cancel { text-decoration: underline; }

.modaal-confirm-btn.modaal-cancel:hover { text-decoration: none; color: #2f2f2f; }

@keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-o-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-moz-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-webkit-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-ms-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

.modaal-instagram .modaal-container { width: auto; background: transparent; box-shadow: none !important; }

.modaal-instagram .modaal-content-container { padding: 0; background: transparent; }

.modaal-instagram .modaal-content-container > blockquote { width: 1px !important; height: 1px !important; opacity: 0 !important; }

.modaal-instagram iframe { opacity: 0; margin: -6px !important; border-radius: 0 !important; width: 1000px !important; max-width: 800px !important; box-shadow: none !important; animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper { padding-left: 140px; padding-right: 140px; }

.modaal-image .modaal-container { width: auto; max-width: 100%; }

.modaal-gallery-wrap { position: relative; color: #fff; }

.modaal-gallery-item { display: none; }

.modaal-gallery-item img { display: block; }

.modaal-gallery-item.is_active { display: block; }

.modaal-gallery-label { position: absolute; left: 0; width: 100%; margin: 20px 0 0; font-size: 18px; text-align: center; color: #fff; }

.modaal-gallery-label:focus { outline: none; }

.modaal-gallery-control { position: absolute; top: 50%; transform: translateY(-50%); opacity: 1; cursor: pointer; color: #fff; width: 50px; height: 50px; background: rgba(0, 0, 0, 0); border: none; border-radius: 100%; transition: all 0.2s ease-in-out; }

.modaal-gallery-control.is_hidden { opacity: 0; cursor: default; }

.modaal-gallery-control:focus, .modaal-gallery-control:hover { outline: none; background: #fff; }

.modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after { background: #afb7bc; }

.modaal-gallery-control span { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-gallery-control:before, .modaal-gallery-control:after { display: block; content: " "; position: absolute; top: 16px; left: 25px; width: 4px; height: 18px; border-radius: 4px; background: #fff; transition: background 0.2s ease-in-out; }

.modaal-gallery-control:before { margin: -5px 0 0; transform: rotate(-45deg); }

.modaal-gallery-control:after { margin: 5px 0 0; transform: rotate(45deg); }

.modaal-gallery-next-inner { left: 100%; margin-left: 40px; }

.modaal-gallery-next-outer { right: 45px; }

.modaal-gallery-prev:before, .modaal-gallery-prev:after { left: 22px; }

.modaal-gallery-prev:before { margin: 5px 0 0; transform: rotate(-45deg); }

.modaal-gallery-prev:after { margin: -5px 0 0; transform: rotate(45deg); }

.modaal-gallery-prev-inner { right: 100%; margin-right: 40px; }

.modaal-gallery-prev-outer { left: 45px; }

.modaal-video-wrap { margin: auto 10px; position: relative; }

.modaal-video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); background: #000; max-width: 1300px; margin-left: auto; margin-right: auto; }

.modaal-video-container iframe, .modaal-video-container object, .modaal-video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.modaal-iframe .modaal-content { width: 100%; height: 100%; }

.modaal-iframe-elem { width: 100%; height: 100%; display: block; }

@media only screen and (min-width: 1400px) { .modaal-video-container { padding-bottom: 0; height: 731px; } }

@media only screen and (max-width: 1140px) { .modaal-image .modaal-inner-wrapper { padding-left: 25px; padding-right: 25px; }
  .modaal-gallery-control { top: auto; bottom: 20px; transform: none; background: rgba(0, 0, 0, 0.7); }
  .modaal-gallery-control:before, .modaal-gallery-control:after { background: #fff; }
  .modaal-gallery-next { left: auto; right: 20px; }
  .modaal-gallery-prev { left: 20px; right: auto; } }

@media screen and (max-width: 900px) { .modaal-instagram iframe { width: 500px !important; } }

@media screen and (max-height: 1100px) { .modaal-instagram iframe { width: 700px !important; } }

@media screen and (max-height: 1000px) { .modaal-inner-wrapper { padding-top: 60px; padding-bottom: 60px; }
  .modaal-instagram iframe { width: 600px !important; } }

@media screen and (max-height: 900px) { .modaal-instagram iframe { width: 500px !important; }
  .modaal-video-container { max-width: 900px; max-height: 510px; } }

@media only screen and (max-width: 600px) { .modaal-instagram iframe { width: 280px !important; } }

@media only screen and (max-height: 820px) { .modaal-gallery-label { display: none; } }

.modaal-loading-spinner { background: none; position: absolute; width: 200px; height: 200px; top: 50%; left: 50%; margin: -100px 0 0 -100px; transform: scale(0.25); }

@-ms-keyframes modaal-loading-spinner { 0% { opacity: 1; -ms-transform: scale(1.5); -moz-transform: scale(1.5); -webkit-transform: scale(1.5); -o-transform: scale(1.5); transform: scale(1.5); }
  100% { opacity: .1; -ms-transform: scale(1); -moz-transform: scale(1); -webkit-transform: scale(1); -o-transform: scale(1); transform: scale(1); } }

@-moz-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@-webkit-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@-o-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

.modaal-loading-spinner > div { width: 24px; height: 24px; margin-left: 4px; margin-top: 4px; position: absolute; }

.modaal-loading-spinner > div > div { width: 100%; height: 100%; border-radius: 15px; background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: 0s; -moz-animation-delay: 0s; -webkit-animation-delay: 0s; -o-animation-delay: 0s; animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) { -ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .12s; -moz-animation-delay: .12s; -webkit-animation-delay: .12s; -o-animation-delay: .12s; animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) { -ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .25s; -moz-animation-delay: .25s; -webkit-animation-delay: .25s; -o-animation-delay: .25s; animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) { -ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .37s; -moz-animation-delay: .37s; -webkit-animation-delay: .37s; -o-animation-delay: .37s; animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) { -ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .5s; -moz-animation-delay: .5s; -webkit-animation-delay: .5s; -o-animation-delay: .5s; animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) { -ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .62s; -moz-animation-delay: .62s; -webkit-animation-delay: .62s; -o-animation-delay: .62s; animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) { -ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .75s; -moz-animation-delay: .75s; -webkit-animation-delay: .75s; -o-animation-delay: .75s; animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) { -ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .87s; -moz-animation-delay: .87s; -webkit-animation-delay: .87s; -o-animation-delay: .87s; animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) { -ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

/******************************************************************
project - carousel-slick
******************************************************************/
.slick-slider { position: relative; box-sizing: border-box; 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.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { 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; }

.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-slider { display: none; }

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

.slick { display: none; }

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

.slick-slide { line-height: 0; }

.slick-slide img { width: 100%; }

.slick-slide a { display: block; outline: 0; }

.slick-dotted.slick-slider { margin-bottom: 26px; }

@media screen and (max-width: 768px) { .slick-dotted.slick-slider { margin-bottom: 22px; } }

.slick-dots { position: absolute; left: 50%; transform: translate(-50%, 0); display: flex; justify-content: center; bottom: -26px; height: 12px; }

@media screen and (max-width: 768px) { .slick-dots { bottom: -22px; height: 8px; } }

.slick-dots li { margin: 0 14px; }

@media screen and (max-width: 768px) { .slick-dots li { margin: 0 6px; } }

.slick-dots li button { display: block; outline: none; transition-property: background; transition-duration: 0.3s; overflow: hidden; text-indent: -999px; background: #fff; border-radius: 100%; width: 10px; height: 10px; }

@media screen and (max-width: 768px) { .slick-dots li button { width: 8px; height: 8px; } }

.slick-dots li button:hover { background: #e6e6e6; }

.slick-dots li.slick-active button { background: #9bd6fa; }

/******************************************************************
utility - mediaQuery
******************************************************************/
.u-sp-media { display: none; }

@media screen and (max-width: 768px) { .u-pc-media { display: none; }
  .u-sp-media { display: block; }
  img.u-sp-media { display: inline-block; }
  br.u-sp-media { display: inline-block; }
  table.u-sp-media { display: table; } }

.u-se-media { display: none; }

/******************************************************************
utility - display
******************************************************************/
.u-block { display: block; }

.u-none { display: none; }

.u-inline { display: inline; }

.u-inline-block { display: inline-block; }

.u-table { display: table; }

.u-table-row { display: table-row; }

.u-table-cell { display: table-cell; }

.u-flex { display: flex; }

.u-inline-flex { display: inline-flex; }

@media screen and (max-width: 768px) { .u-sp-block { display: block; }
  .u-sp-none { display: none; }
  .u-sp-inline { display: inline; }
  .u-sp-inline-block { display: inline-block; }
  .u-sp-table { display: table; }
  .u-sp-table-row { display: table-row; }
  .u-sp-table-cell { display: table-cell; }
  .u-sp-flex { display: flex; }
  .u-sp-inline-flex { display: inline-flex; } }

/******************************************************************
utility - display-off
******************************************************************/
.u-display-off { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; padding: 0; clip: rect(0, 0, 0, 0); }

@media screen and (max-width: 768px) { .u-sp-display-off { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; padding: 0; clip: rect(0, 0, 0, 0); } }

/******************************************************************
utility - text-align
******************************************************************/
.u-center { text-align: center; }

.u-right { text-align: right; }

.u-left { text-align: left; }

@media screen and (max-width: 768px) { .u-sp-center { text-align: center; }
  .u-sp-right { text-align: right; }
  .u-sp-left { text-align: left; } }

/******************************************************************
utility - over-opacity
******************************************************************/
.u-over-opacity { transition-property: opacity; transition-duration: 0.3s; }

.u-over-opacity:hover { opacity: 0.7; }

/******************************************************************
utility - icon-blank
******************************************************************/
.u-icon-blank { position: relative; padding-left: 20px; margin-left: 0.3em; }

.u-icon-blank::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 0; width: 20px; height: 20px; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAWklEQVQ4jWP8//8/AzrQSbyFKUgkYCJXIy7Agk/yynw1RmINgvmK6i4cAgbqJN76T0msYhhILYNGDRzEBuLNeuQkJ/q4kJRCAR0M/khh1E64SVY+xhUsVHchAA7NFlnuoi9IAAAAAElFTkSuQmCC") no-repeat left center; }

/******************************************************************
utility - icon-pdf
******************************************************************/
.u-icon-pdf { position: relative; padding-left: 20px; margin-left: 0.3em; }

.u-icon-pdf::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 0; width: 20px; height: 20px; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAB7UlEQVQ4ja3SPUhbURjG8f/JvbcxHy3WNAnYOhQhNLEiGQKO7ko2BQXJ7Kabg4tOTk7i6KC4iMsdJCHooC5ZBA1EEgpJh0S0tjXX5uMmJjcdKi0SGmPMu57Dj+c95xExq7VBF8f01AXF5cI2MtI2KLc6lOx2vJEIGAbfNje52th4WcKewUHujo642drCOTvbVsKWYKNWw2Q2o7jdmGy2tsCWK+vpNBafD0PXqeZyL09olMvUCwVej45SOj9/OQigRaMIRSF/cNAd8M3YGAB1TWsLFK2K/aq/H38qRfHsjHqxSHJ8nEa93nlCZygEJhO51VVuVZWBlZXOE5osFvypFDVNI+73I8xmPqkq5YsLDF1H7utDSBL319fc7u9zd3ICtKiNMxRCdjjQMxm84TByby+F01MUpxPr8DCZ+Xmq2Sz2QABvJMKXmRl+qmozKGQZx+Qk7xcXqWaz3Gxvkw+HH/XQMTXFwPIylXQaJOnPRg/Ff7Ty24kJPiwtobhcKG43yWAQ7fDwP48lsA4N0ePxcH95ya9Y7B8oJImP6+sIReHH3h6e3V2+7+yQnpt74guaRwZ4Nz2NUalwtbaGLxqlFI/zdWHh2Rg81KaWz2MPBPh8fEwpkSAZDGLoekfg3ze0+HwIISglEh1BTWC35jfE0LM4biiCzAAAAABJRU5ErkJggg==") no-repeat center center; }
