@charset "UTF-8";
/* line 17, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* line 22, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
html {
  line-height: 1;
}

/* line 24, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
ol, ul {
  list-style: none;
}

/* line 26, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* line 28, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

/* line 30, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
q, blockquote {
  quotes: none;
}
/* line 103, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

/* line 32, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
a img {
  border: none;
}

/* line 116, ../../../../../../../../../Ruby27-x64/lib/ruby/gems/2.7.0/gems/compass-0.12.6/frameworks/compass/stylesheets/compass/reset/_utilities.scss */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

/* Slider */
/* line 3, ../../../src/cmn/css/_slick.scss */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

/* line 17, ../../../src/cmn/css/_slick.scss */
.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
/* line 24, ../../../src/cmn/css/_slick.scss */
.slick-list:focus {
  outline: none;
}
/* line 28, ../../../src/cmn/css/_slick.scss */
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

/* line 34, ../../../src/cmn/css/_slick.scss */
.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* line 42, ../../../src/cmn/css/_slick.scss */
.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
/* line 51, ../../../src/cmn/css/_slick.scss */
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
/* line 56, ../../../src/cmn/css/_slick.scss */
.slick-track:after {
  clear: both;
}
/* line 60, ../../../src/cmn/css/_slick.scss */
.slick-loading .slick-track {
  visibility: hidden;
}

/* line 64, ../../../src/cmn/css/_slick.scss */
.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
/* line 68, ../../../src/cmn/css/_slick.scss */
[dir="rtl"] .slick-slide {
  float: right;
}
/* line 71, ../../../src/cmn/css/_slick.scss */
.slick-slide img {
  display: block;
}
/* line 74, ../../../src/cmn/css/_slick.scss */
.slick-slide.slick-loading img {
  display: none;
}
/* line 80, ../../../src/cmn/css/_slick.scss */
.slick-slide.dragging img {
  pointer-events: none;
}
/* line 84, ../../../src/cmn/css/_slick.scss */
.slick-initialized .slick-slide {
  display: block;
}
/* line 88, ../../../src/cmn/css/_slick.scss */
.slick-loading .slick-slide {
  visibility: hidden;
}
/* line 92, ../../../src/cmn/css/_slick.scss */
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

/* line 98, ../../../src/cmn/css/_slick.scss */
.slick-arrow.slick-hidden {
  display: none;
}

/*============================
mixin
============================*/
/*
* keyframes animationの定義
* ※_anim.scssに定義
*/
/*
* keyframesで定義したkeyframes animationの設定
* @include animation(animation_name $time linear infinite);
*/
/*
* css animationの時間とeasing指定
*/
/*
* position:absoluteで縦横中央ぞろえ
*/
/*
* 左右に均等のマージンをとった幅指定
*/
/*============================
easing
============================*/
/*============================
animation
============================*/
/*============================
mixin
============================*/
/*
* keyframes animationの定義
* ※_anim.scssに定義
*/
/*
* keyframesで定義したkeyframes animationの設定
* @include animation(animation_name $time linear infinite);
*/
/*
* css animationの時間とeasing指定
*/
/*
* position:absoluteで縦横中央ぞろえ
*/
/*
* 左右に均等のマージンをとった幅指定
*/
/*============================
easing
============================*/
/*============================
animation
============================*/
/*
@include animation(rotate 10s linear infinite);
*/
@-webkit-keyframes loading {
  /* line 9, ../../../src/cmn/css/_anim.scss */
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  /* line 12, ../../../src/cmn/css/_anim.scss */
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-moz-keyframes loading {
  /* line 9, ../../../src/cmn/css/_anim.scss */
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  /* line 12, ../../../src/cmn/css/_anim.scss */
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes loading {
  /* line 9, ../../../src/cmn/css/_anim.scss */
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  /* line 12, ../../../src/cmn/css/_anim.scss */
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/*color*/
/*anim*/
/*============================
mixin
============================*/
/*
* keyframes animationの定義
* ※_anim.scssに定義
*/
/*
* keyframesで定義したkeyframes animationの設定
* @include animation(animation_name $time linear infinite);
*/
/*
* css animationの時間とeasing指定
*/
/*
* position:absoluteで縦横中央ぞろえ
*/
/*
* 左右に均等のマージンをとった幅指定
*/
/*============================
easing
============================*/
/*============================
animation
============================*/
/* line 3, ../../../src/cmn/css/_all.scss */
body {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, "ＭＳ Ｐゴシック", sans-serif;
  color: black;
  position: relative;
  width: 100%;
  background: white;
  font-feature-settings: "palt";
  /***********************************
  * debug
  ************************************/
}
/* line 9, ../../../src/cmn/css/_all.scss */
body ::selection {
  background: #999999;
}
/* line 10, ../../../src/cmn/css/_all.scss */
body ::-moz-selection {
  background: #999999;
}
/* line 11, ../../../src/cmn/css/_all.scss */
body img::selection {
  background: none;
}
/* line 12, ../../../src/cmn/css/_all.scss */
body img::-moz-selection {
  background: none;
}
/* line 15, ../../../src/cmn/css/_all.scss */
body .grecaptcha-badge {
  visibility: hidden;
}
/* line 17, ../../../src/cmn/css/_all.scss */
body #loader {
  width: 100%;
  height: 100%;
  float: left;
  position: fixed;
  z-index: 5000;
  text-align: center;
  background: white;
}
/* line 25, ../../../src/cmn/css/_all.scss */
body #loader img {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
/* line 30, ../../../src/cmn/css/_all.scss */
body #wrapper {
  width: 100%;
  float: left;
  position: relative;
  z-index: 2;
  overflow: hidden;
}
/* line 37, ../../../src/cmn/css/_all.scss */
body #wrapper #main {
  width: 100%;
  float: left;
  position: relative;
  overflow: hidden;
}
/* line 43, ../../../src/cmn/css/_all.scss */
body #wrapper #main section {
  width: 100%;
  float: left;
  position: relative;
  overflow: hidden;
}
/* line 49, ../../../src/cmn/css/_all.scss */
body #wrapper #main a {
  cursor: pointer;
}
/* line 56, ../../../src/cmn/css/_all.scss */
body a {
  text-decoration: none;
}
/* line 60, ../../../src/cmn/css/_all.scss */
body .hide {
  display: none !important;
}
/* line 64, ../../../src/cmn/css/_all.scss */
body .banish {
  visibility: hidden !important;
}
/* line 68, ../../../src/cmn/css/_all.scss */
body .show {
  -webkit-transform: translate(0, 0%);
  -moz-transform: translate(0, 0%);
  -ms-transform: translate(0, 0%);
  -o-transform: translate(0, 0%);
  transform: translate(0, 0%);
}
/* line 72, ../../../src/cmn/css/_all.scss */
body .area {
  width: 100%;
  float: left;
  position: relative;
}
/* line 78, ../../../src/cmn/css/_all.scss */
body .box {
  width: 100%;
  float: left;
  text-align: center;
}
/* line 88, ../../../src/cmn/css/_all.scss */
body .iScrollIndicator {
  border: none !important;
}
/* line 89, ../../../src/cmn/css/_all.scss */
body .iScrollVerticalScrollbar {
  width: 2px !important;
}
/* line 90, ../../../src/cmn/css/_all.scss */
body .iScrollHorizontalScrollbar {
  height: 2px !important;
}
/* line 91, ../../../src/cmn/css/_all.scss */
body .iScrollIndicator {
  background: rgba(75, 157, 207, 0.8) !important;
}
/* line 96, ../../../src/cmn/css/_all.scss */
body #stats {
  z-index: 5000;
}

/*size*/
@media screen and (min-width: 1025px) {
  /* line 4, ../../../src/cmn/css/_pc.scss */
  body {
    float: left;
    min-width: 1120px;
  }
  /* line 7, ../../../src/cmn/css/_pc.scss */
  body .pc_view {
    display: block;
  }
  /* line 8, ../../../src/cmn/css/_pc.scss */
  body .sp_view {
    display: none;
  }
  /* line 9, ../../../src/cmn/css/_pc.scss */
  body .pc_view_i {
    display: inline;
  }
  /* line 10, ../../../src/cmn/css/_pc.scss */
  body .sp_view_i {
    display: none;
  }
  /* line 12, ../../../src/cmn/css/_pc.scss */
  body.under {
    background: url(../img/kv_btm.png) no-repeat 0% 100%;
  }
  /* line 17, ../../../src/cmn/css/_pc.scss */
  body #loader img {
    width: 30px;
    height: 30px;
  }
  /* line 23, ../../../src/cmn/css/_pc.scss */
  body img {
    width: 100%;
    height: auto;
  }
  /* line 28, ../../../src/cmn/css/_pc.scss */
  body .inner {
    width: 1120px;
    margin: auto;
    position: relative;
  }
  /* line 34, ../../../src/cmn/css/_pc.scss */
  body .btn {
    float: left;
    background: #21b5a6;
    color: white;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    border-radius: 8px;
    text-align: center;
    display: inline-block;
    text-align: center;
    padding: 0 10px;
    height: 50px;
    line-height: 50px;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  /* line 46, ../../../src/cmn/css/_pc.scss */
  body .btn:hover {
    -webkit-transform: scale(1.05, 1.05);
    -moz-transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -o-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
  }
  /* line 51, ../../../src/cmn/css/_pc.scss */
  body #header {
    width: calc(100% - 120px);
    /* 2025.06.23 TOPページと同じ幅にメニュー幅を変更 otsuka */
    min-width: 890px;
    height: 80px;
    margin: auto;
    float: left;
    position: fixed;
    background: white;
    padding: 0 30px;
    box-sizing: border-box;
    z-index: 500;
    top: 24px;
    left: 50%;
    border-radius: 40px;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    font-family: 'Noto Sans JP', sans-serif;
    /* 2025.06.23 フォント変更(ヘッダーのみTOPページと同じに) otsuka */
  }
  
  /* 2025.06.23 ヘッダーメニュー右ロゴについて追記 otsuka */
  .toppage-header-logo-right {
    width: 120px;
  }
  .toppage-header-logo-right img{
    display: block;
    margin-top: 14px;
  }
  /* line 67, ../../../src/cmn/css/_pc.scss */
  body #header .logo {
    float: left;
    margin-top: 13px;
  }
  /* line 71, ../../../src/cmn/css/_pc.scss */
  body #header .logo a {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
  }
  /* line 75, ../../../src/cmn/css/_pc.scss */
  body #header .logo a img {
    width: auto;
    height: 53px;
  }
  /* line 78, ../../../src/cmn/css/_pc.scss */
  body #header .logo a p {
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0em;
    line-height: 1.33333;
    margin-left: 9px;
    color: #21B5A6;
  }
  /* line 86, ../../../src/cmn/css/_pc.scss */
  body #header .area {
    float: right;
    height: 80px;
    width: auto;
  /* 2025.06.23 ヘッダーメニューTOPページと同じにするために追記 otsuka*/
    display: flex;
    align-items: center;
  }
  /* line 91, ../../../src/cmn/css/_pc.scss */
  body #header #header_scroll {
    height: 80px;
  }
  /* line 94, ../../../src/cmn/css/_pc.scss */
  body #header nav {
    float: right;
    position: relative;
    right: 40px;
    height: 80px;
  }
  /* line 100, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top {
    width: 100%;
    float: left;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  /* line 106, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .menu_item {
    float: left;
    list-style: none;
    margin: 0 0 0 0;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0em;
    line-height: 1.33333;
    position: relative;
    height: 80px;
  }
  /* line 114, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .menu_item:hover .menu_item_link {
    background: #ebf8f7;
  }
  /* line 118, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .menu_item .menu_item_link {
    display: inline-block;
    color: #4b9dcf;
    height: 80px;
    line-height: 80px;
    padding: 0 35px;
  }
  /* line 126, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top a {
    color: #4b9dcf;
  }
  /* line 129, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull {
    position: absolute;
    width: 100vw;
    top: 80px;
    display: flex;
    justify-content: center;
  }
  /* line 135, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull.mid {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  /* line 139, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull.right {
    right: 0;
  }
  /* line 142, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main {
    float: left;
    background: #EBF8F7;
    padding: 37px 51px 37px 40px;
  }
  /* line 146, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item {
    float: left;
    margin: 0 60px 0 0;
  }
  /* line 149, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item:last-child {
    margin-right: 0;
  }
  /* line 152, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item a {
    float: left;
    line-height: 1.4;
    white-space: nowrap;
  }
  /* line 156, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item a:hover {
    text-decoration: underline;
  }
  /* line 160, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item .main_top {
    font-weight: bold;
    font-size: 15px;
  }
  /* line 164, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item .sub {
    clear: both;
    float: left;
    margin-top: 19px;
  }
  /* line 168, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item .sub li {
    clear: both;
  }
  /* line 170, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .pull .pull_main .main_item .sub li a {
    color: #3b3b3b;
    font-weight: normal;
    font-size: 13px;
    line-height: 2.1;
    display: inline-block;
  }
  /* line 185, ../../../src/cmn/css/_pc.scss */
  #menu_btn {
    /* 2025.06.11 TOPページ、ヘッダメニューの閉じるボタンを非表示に変更 */
    display: none !important;
  }
  body #menu_btn {
    position: fixed;
    right: 60px;
    top: 24px;
    width: 68px;
    height: 68px;
    
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    z-index: 501;
    cursor: pointer;
  }
  /* line 196, ../../../src/cmn/css/_pc.scss */
  body #menu_btn:hover span {
    margin: 26px auto;
  }
  /* line 198, ../../../src/cmn/css/_pc.scss */
  body #menu_btn:hover span:after {
    top: 16px;
  }
  /* line 203, ../../../src/cmn/css/_pc.scss */
  body #menu_btn span {
    width: 22px;
    height: 2px;
    background: #4b9dcf;
    display: block;
    position: relative;
    margin: 28px auto;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  /* line 211, ../../../src/cmn/css/_pc.scss */
  body #menu_btn span:after {
    content: " ";
    width: 22px;
    height: 2px;
    background: #4b9dcf;
    display: block;
    position: absolute;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  /* line 220, ../../../src/cmn/css/_pc.scss */
  body #menu_btn span:after {
    top: 12px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  /* line 226, ../../../src/cmn/css/_pc.scss */
  body #menu_btn.open span {
    top: 5px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    background: #B1B1B1;
  }
  /* line 232, ../../../src/cmn/css/_pc.scss */
  body #menu_btn.open span:after {
    background: #B1B1B1;
    top: 0;
    -webkit-transform: rotate(-93deg);
    -moz-transform: rotate(-93deg);
    -ms-transform: rotate(-93deg);
    -o-transform: rotate(-93deg);
    transform: rotate(-93deg);
  }
  /* line 240, ../../../src/cmn/css/_pc.scss */
  body #wrapper {
    min-height: 110vh;
  }
  /* line 243, ../../../src/cmn/css/_pc.scss */
  body #footer {
    width: 1120px;
    height: 70px;
    margin: auto;
    box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.16);
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-border-radius: 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0;
    -ms-border-radius: 8px 8px 0 0;
    -o-border-radius: 8px 8px 0 0;
    border-radius: 8px 8px 0 0;
    z-index: 300;
    background: white;
    display: flex;
    justify-content: space-between;
  }
  /* line 257, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner {
    display: flex;
    flex-wrap: wrap;
  }
  /* line 260, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner img {
    width: 50px;
    height: 50px;
    margin-top: 12px;
    margin-left: 24px;
  }
  /* line 266, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner ul {
    width: 528px;
    display: flex;
    justify-content: space-between;
  }
  /* line 270, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner ul li {
    width: 140px;
    float: left;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0em;
    line-height: 1.33333;
  }
  /* line 277, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner ul li:nth-child(4) {
    margin-left: -22px;
  }
  /* line 280, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner ul li a {
    color: #585858;
  }
  /* line 282, ../../../src/cmn/css/_pc.scss */
  body #footer .footer_inner ul li a:hover {
    text-decoration: underline;
  }
  /* line 289, ../../../src/cmn/css/_pc.scss */
  body #footer small {
    width: 438px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #4b9dcf;
    font-weight: 600;
    font-size: 10px;
    letter-spacing: 0em;
    line-height: 1.4;
  }
  /* line 299, ../../../src/cmn/css/_pc.scss */
  body .top_btn {
    width: 68px;
    position: fixed;
    bottom: 20px;
    right: 50px;
    z-index: 1000;
    cursor: pointer;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  /* line 307, ../../../src/cmn/css/_pc.scss */
  body .top_btn:hover {
    -webkit-transform: scale(1.05, 1.05);
    -moz-transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -o-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
  }
  /* line 312, ../../../src/cmn/css/_pc.scss */
  body #site-content .post {
    float: left;
    width: 100%;
    background: white;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  /* line 318, ../../../src/cmn/css/_pc.scss */
  body #site-content .post.open {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
  }
  /* line 323, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header {
    width: 100%;
    height: 320px;
    background-image: url(../img/kv_bg.png);
    background-size: cover;
    position: relative;
    box-sizing: border-box;
    padding: 110px 0 0 0;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    z-index: 10;
  }
  /* line 334, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header.open {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
  }
  /* line 337, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area {
    position: relative;
    color: white;
  }
  /* line 340, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area h1 {
    font-weight: 600;
    font-size: 28px;
    letter-spacing: 0em;
    line-height: 1.57143;
    width: 1120px;
    margin: auto;
    float: left;
    width: 100%;
  }
  /* line 347, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread {
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0em;
    line-height: 1.33333;
    width: 1062px;
    display: block;
    float: left;
    margin: 0 0 53px 30px;
  }
  /* line 353, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread li {
    float: left;
    margin: 0 30px 0 0;
    position: relative;
    color: #C7C7C7;
  }
  /* line 358, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread li:after {
    content: ">";
    position: absolute;
    top: 50%;
    right: -19px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    color: white;
  }
  /* line 367, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread li:last-child:after {
    display: none;
  }
  /* line 371, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread li a {
    color: white;
  }
  /* line 373, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .kv_txt_area .bread li a:hover {
    text-decoration: underline;
  }
  /* line 380, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .item {
    position: absolute;
  }
  /* line 382, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .item.item_r {
    width: 752px;
    right: -237px;
    top: -229px;
  }
  /* line 387, ../../../src/cmn/css/_pc.scss */
  body #site-content .under_header .item.item_l {
    width: 520px;
    left: -365px;
    top: -218px;
  }
  /* 2025.03.06 top page slider otsuka */
  body .info-tv {
    position: fixed;
    right: 55px;
    bottom: 170px;
    border-radius: 15px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
	border: 10px solid #222;
	width: 350px;
	background: #000;
	opacity: 0;
    transform: translateY(20px);
	animation: fadeInUp 1.5s ease-out forwards;
  }
  body #n2-ss-6-align {
	  overflow: hidden;
	  border-radius: 5px;
  }
  @keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
  }
}

@media screen and (max-width: 1070px) {
  /* line 398, ../../../src/cmn/css/_pc.scss */
  body #header nav .menu_top .menu_item {
    font-size: 12px;
  }
}
/*size*/
@media screen and (max-width: 1024px) {
  /* line 4, ../../../src/cmn/css/_sp.scss */
  body {
    font-size: 3vw;
    float: left;
  }
  /* line 7, ../../../src/cmn/css/_sp.scss */
  body .pc_view {
    display: none;
  }
  /* line 8, ../../../src/cmn/css/_sp.scss */
  body .sp_view {
    display: block;
  }
  /* line 9, ../../../src/cmn/css/_sp.scss */
  body .pc_view_i {
    display: none;
  }
  /* line 10, ../../../src/cmn/css/_sp.scss */
  body .sp_view_i {
    display: inline;
  }
  /* line 12, ../../../src/cmn/css/_sp.scss */
  body.under {
    background: url(../img/kv_btm_sp.png) no-repeat 0% 100%;
    background-size: 72% auto;
  }
  /* line 17, ../../../src/cmn/css/_sp.scss */
  body img {
    width: 100%;
    height: auto !important;
  }
  /* line 23, ../../../src/cmn/css/_sp.scss */
  body #loader img {
    width: 7vw;
    height: 7vw;
  }
  /* line 29, ../../../src/cmn/css/_sp.scss */
  body .inner {
    width: 94%;
    margin: 0 3%;
    float: left;
    position: relative;
  }
  /* line 36, ../../../src/cmn/css/_sp.scss */
  body .btn {
    float: left;
    background: #21b5a6;
    color: white;
    -webkit-border-radius: 2vw;
    -moz-border-radius: 2vw;
    -ms-border-radius: 2vw;
    -o-border-radius: 2vw;
    border-radius: 2vw;
    text-align: center;
    display: inline-block;
    text-align: center;
    padding: 0 40px;
    height: 50px;
    line-height: 50px;
  }
  /* line 49, ../../../src/cmn/css/_sp.scss */
  body #header {
    width: 92%;
    height: 16vw;
    float: left;
    position: fixed;
    background: white;
    box-sizing: border-box;
    z-index: 500;
    top: 2.5vw;
    left: 4%;
    border-radius: 10.66667vw;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    overflow: hidden;
  }
  /* line 62, ../../../src/cmn/css/_sp.scss */
  body #header .bg {
    content: " ";
    position: absolute;
    z-index: -1;
    top: 20vw;
    left: 0;
    width: 100%;
    height: 100vh;
    opacity: 0;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    transition-timing-function: cubic-bezier(0.43, 0.12, 0.35, 0.98);
    pointer-events: none;
  }
  /* line 75, ../../../src/cmn/css/_sp.scss */
  body #header #header_scroll {
    width: 100%;
    float: left;
    overflow: hidden;
    background: white;
    position: relative;
    margin-top: -7vw;
    display: none;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    border-radius: 0 0 10.66667vw 10.66667vw;
    max-height: 80vh;
  }
  /* line 90, ../../../src/cmn/css/_sp.scss */
  body #header.open {
    background: white;
    opacity: 1;
    pointer-events: all;
    overflow: visible;
  }
  /* line 95, ../../../src/cmn/css/_sp.scss */
  body #header.open .bg {
    opacity: 1;
    pointer-events: auto;
  }
  /* line 99, ../../../src/cmn/css/_sp.scss */
  body #header.open #header_scroll {
    display: block;
  }
  /* line 103, ../../../src/cmn/css/_sp.scss */
  body #header .logo {
    width: 61.33333vw;
    float: left;
    margin-top: 3.5vw;
    margin-left: 5vw;
    margin-bottom: 3vw;
    position: relative;
    z-index: 10;
    background: white;
  }
  /* line 112, ../../../src/cmn/css/_sp.scss */
  body #header .logo a {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
  }
  /* line 116, ../../../src/cmn/css/_sp.scss */
  body #header .logo a img {
    width: 25.27733vw;
  }
  /* line 119, ../../../src/cmn/css/_sp.scss */
  body #header .logo a p {
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0em;
    line-height: 1.33333;
    margin-left: 2.4vw;
    font-size: 3.2vw;
    color: #21B5A6;
  }
  /* line 127, ../../../src/cmn/css/_sp.scss */
  body #header h1 {
    width: 76%;
    float: left;
    margin: 6%;
  }
  /* line 131, ../../../src/cmn/css/_sp.scss */
  body #header h1 a {
    width: 100%;
    float: left;
    line-height: 0;
  }
  /* line 139, ../../../src/cmn/css/_sp.scss */
  body #header nav {
    width: 100%;
    float: left;
    padding: 10vw 6% 3vw 6%;
    box-sizing: border-box;
  }
  /* line 145, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top {
    width: 100%;
    float: left;
    border-top: 1px solid #B1B1B1;
    padding: 4vw 0 0 0;
  }
  /* line 150, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item {
    width: 100%;
    float: left;
    border-bottom: 1px solid #B1B1B1;
    box-sizing: border-box;
    position: relative;
  }
  /* line 156, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item:last-child {
    border-bottom: none;
  }
  /* line 159, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .menu_item_link {
    color: #4b9dcf;
    font-size: 4vw;
    padding: 5vw 0;
  }
  /* line 164, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .menu_item_link.open:after {
    -webkit-transform: translateY(-50%) rotate(0deg);
    -moz-transform: translateY(-50%) rotate(0deg);
    -ms-transform: translateY(-50%) rotate(0deg);
    -o-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg);
  }
  /* line 168, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .menu_item_link:before {
    content: "";
    display: block;
    background: #4b9dcf;
    width: 4vw;
    height: 0.6vw;
    position: absolute;
    top: 50%;
    right: 3vw;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  /* line 179, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .menu_item_link:after {
    content: "";
    display: block;
    background: #4b9dcf;
    width: 4vw;
    height: 0.6vw;
    position: absolute;
    top: 50%;
    right: 3vw;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-transform: translateY(-50%) rotate(90deg);
    -moz-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    -o-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
  }
  /* line 192, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item a {
    width: 100%;
    float: left;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    color: #3b3b3b;
    font-size: 3.46667vw;
  }
  /* line 201, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull {
    width: 100%;
    float: left;
    padding: 0 0 4vw 0;
    position: absolute;
    left: 0;
    top: 14vw;
  }
  /* line 208, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull .pull_main {
    width: 100%;
    float: left;
  }
  /* line 211, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull .pull_main .main_item {
    width: 100%;
    float: left;
  }
  /* line 214, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull .pull_main .main_item .sub {
    width: 100%;
    float: left;
    display: flex;
    flex-wrap: wrap;
  }
  /* line 219, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull .pull_main .main_item .sub .sub_item {
    width: 50%;
    float: left;
    margin-bottom: 3vw;
  }
  /* line 225, ../../../src/cmn/css/_sp.scss */
  body #header nav .menu_top .menu_item .pull .pull_main .main_item .main_top {
    color: #4b9dcf;
    font-size: 4vw;
    padding: 5vw 0;
  }
  /* line 237, ../../../src/cmn/css/_sp.scss */
  body #menu_btn {
    position: fixed;
    right: 7vw;
    top: 7vw;
    width: 8vw;
    height: 8vw;
    background: white;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    z-index: 501;
    display: block !important;
  }
  /* line 247, ../../../src/cmn/css/_sp.scss */
  body #menu_btn span {
    width: 6vw;
    height: 0.65vw;
    background: #4b9dcf;
    display: block;
    position: relative;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    margin: 2vw 4vw 0 0;
    float: right;
  }
  /* line 256, ../../../src/cmn/css/_sp.scss */
  body #menu_btn span:after {
    content: " ";
    width: 6vw;
    height: 0.65vw;
    background: #4b9dcf;
    display: block;
    position: absolute;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  /* line 265, ../../../src/cmn/css/_sp.scss */
  body #menu_btn span:after {
    top: 2vw;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  /* line 271, ../../../src/cmn/css/_sp.scss */
  body #menu_btn.open span {
    top: 5px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    background: #B1B1B1;
  }
  /* line 277, ../../../src/cmn/css/_sp.scss */
  body #menu_btn.open span:after {
    background: #B1B1B1;
    top: 0;
    -webkit-transform: rotate(-93deg);
    -moz-transform: rotate(-93deg);
    -ms-transform: rotate(-93deg);
    -o-transform: rotate(-93deg);
    transform: rotate(-93deg);
  }
  /* line 285, ../../../src/cmn/css/_sp.scss */
  body #footer {
    width: 92%;
    height: 23.33333vw;
    margin: auto;
    box-shadow: 0 0px 5px 0px rgba(0, 0, 0, 0.16);
    float: left;
    z-index: 300;
    margin: 0 0 0 4%;
    background: white;
    padding-top: 5.86667vw;
    border-radius: 2vw;
  }
  /* line 296, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner {
    display: flex;
    flex-wrap: wrap;
    position: relative;
  }
  /* line 300, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner img {
    width: 13.33333vw;
    position: absolute;
    left: 3vw;
    top: 0vw;
  }
  /* line 306, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner ul {
    width: 73vw;
    margin-left: 13vw;
  }
  /* line 309, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner ul li {
    width: 36vw;
    float: left;
    display: flex;
    justify-content: center;
    font-weight: 600;
    font-size: 3.2vw;
    letter-spacing: 0em;
    line-height: 1.33333;
  }
  /* line 316, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner ul li:nth-child(3), body #footer .footer_inner ul li:nth-child(4) {
    margin-top: 3.66667vw;
  }
  /* line 319, ../../../src/cmn/css/_sp.scss */
  body #footer .footer_inner ul li a {
    color: #585858;
  }
  /* line 325, ../../../src/cmn/css/_sp.scss */
  body #footer small {
    display: block;
    text-align: center;
    margin-top: 3.46667vw;
    margin-left: 14.66667vw;
    color: #4b9dcf;
    font-weight: 600;
    font-size: 2.13333vw;
    letter-spacing: 0em;
    line-height: 1.375;
  }
  /* line 336, ../../../src/cmn/css/_sp.scss */
  body .top_btn {
    width: 22.13333vw;
    position: absolute;
    bottom: 4vw;
    right: 2vw;
    z-index: 1000;
  }
  /* line 344, ../../../src/cmn/css/_sp.scss */
  body #site-content .post {
    float: left;
    width: 100%;
    background: white;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  /* line 350, ../../../src/cmn/css/_sp.scss */
  body #site-content .post.open {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
  }
  /* line 355, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header {
    width: 100%;
    height: 53.33333vw;
    background-image: url(../img/kv_bg.png);
    position: relative;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    z-index: 10;
  }
  /* line 363, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header.open {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
  }
  /* line 366, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header .kv_txt_area {
    position: relative;
    top: 24vw;
  }
  /* line 369, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header .kv_txt_area h1 {
    font-weight: 600;
    font-size: 5.33333vw;
    letter-spacing: 0em;
    line-height: 1.7;
    width: 81.33333vw;
    margin: auto;
    color: white;
  }
  /* line 376, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header .item {
    position: absolute;
  }
  /* line 378, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header .item.item_r {
    width: 50vw;
    right: -27vw;
    top: 14vw;
  }
  /* line 383, ../../../src/cmn/css/_sp.scss */
  body #site-content .under_header .item.item_l {
    width: 51vw;
    left: -26vw;
    top: -16vw;
  }
  body .sp-none {
	display: none !important;
	}
  /* 2025.03.06 top page slider otsuka */
  body .info-tv {
	position: fixed;
	left: 50%;
	bottom: 32%;
	border-radius: 15px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
	border: 8px solid #333;
	z-index: 3;
	width: 90%;
	max-width: 400px;
	background: #000;
	opacity: 0;
    transform: translate(-50%, 20px);
	animation: fadeInUp 2s ease-out forwards;
  }
  body #n2-ss-6-align {
	overflow: hidden;
	border-radius: 5px;
  }
  @keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate(-50%, 20px);
    }
    to {
        opacity: 1;
        transform: translate(-50%, 0);
    }
  }
}
@media screen and (max-width: 767px) {
    #engage-contributions-widget-wrapper {
    width:100% !important;
  }
}