@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Outfit:wght@100..900&display=swap");

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

body {
  color: #002033;
}

body.scroll-lock {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  overflow: hidden;

}

@media (max-width: 960px) {
  body header {
    height: auto;
  }
}

@media screen and (max-width: 750px) {

  body br.pc,
  body img.pc {
    display: none;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {

  body br.ppc,
  body img.ppc {
    display: none;
  }
}

@media screen and (max-width: 750px) {

  body br.ppc,
  body img.ppc {
    display: none;
  }
}

@media print,
screen and (min-width: 1281px) {

  body br.not-pc,
  body img.not-pc {
    display: none;
  }
}

@media print,
screen and (min-width: 751px) {

  body br.sp,
  body img.sp {
    display: none;
  }
}

@media screen and (max-width: 750px) {

  body br.not-sp,
  body img.not-sp {
    display: none;
  }
}

@media print,
screen and (min-width: 1281px) {

  body br.tb,
  body img.tb {
    display: none;
  }
}

@media screen and (max-width: 750px) {

  body br.tb,
  body img.tb {
    display: none;
  }
}

body ul,
body ol {
  margin: 0;
}

body svg {
  max-width: 100%;
  max-height: 100%;
  vertical-align: top;
}

body .svg-symbols {
  width: 0;
  height: 0;
  overflow: hidden;
}

.ccm-toolbar-visible body {
  padding-top: 48px;
}

@media print,
screen and (min-width: 751px) {
  .std-section .section-title {
    padding: 60px 0 60px 0;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title {
    padding: 15.2vw 0 8vw 0;
  }
}

.std-section .section-title>.wrap {
  margin: 0 auto;
}

@media print,
screen and (min-width: 1281px) {
  .std-section .section-title>.wrap {
    width: 1240px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .std-section .section-title>.wrap {
    width: 100%;
    padding: 0 140px;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title>.wrap {
    width: 92vw;
  }
}

.std-section .section-title>.wrap .title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-color: #CCDAE1;
  margin: 0;
}

@media print,
screen and (min-width: 751px) {
  .std-section .section-title>.wrap .title {
    padding: 0 0 32px 0;
    row-gap: 20px;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title>.wrap .title {
    padding: 0 0 6.1333333333vw 0;
    row-gap: 2.1333333333vw;
  }
}

.std-section .section-title>.wrap .title:after {
  background: linear-gradient(45deg, rgb(37, 80, 148) 0%, rgb(86, 197, 203) 100%);
  border: none;
}

@media print,
screen and (min-width: 751px) {
  .std-section .section-title>.wrap .title:after {
    width: 100px;
    height: 3px;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title>.wrap .title:after {
    width: 21.3333333333vw;
    height: 0.8vw;
  }
}

.std-section .section-title>.wrap .title .sub {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  color: #377cc5;
}

@media print,
screen and (min-width: 751px) {
  .std-section .section-title>.wrap .title .sub {
    font-size: 16px;
    line-height: 20px;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title>.wrap .title .sub {
    font-size: 4.2666666667vw;
    line-height: 5.3333333333vw;
  }
}

.std-section .section-title>.wrap .title .main {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #002033;
}

@media print,
screen and (min-width: 751px) {
  .std-section .section-title>.wrap .title .main {
    font-size: 36px;
    line-height: 48px;
  }
}

@media screen and (max-width: 750px) {
  .std-section .section-title>.wrap .title .main {
    font-size: 8vw;
    line-height: 9.6vw;
  }
}

.std-section .section-body.colored {
  background: linear-gradient(45deg, rgb(44, 99, 190) 0%, rgb(86, 197, 203) 100%);
}

.std-section:not(.plain) .section-title {
  background: linear-gradient(45deg, rgb(44, 99, 190) 0%, rgb(86, 197, 203) 100%);
}

.std-section:not(.plain) .section-title>.wrap .title {
  border-color: #CCDAE1;
}

.std-section:not(.plain) .section-title>.wrap .title .sub,
.std-section:not(.plain) .section-title>.wrap .title .main {
  color: #ffffff;
}

.tabset .stage [role=tabpanel][aria-hidden=true] {
  display: none;
}

.tabset-stage [role=tabpanel][aria-hidden=true] {
  display: none;
}

.accordionset {
  --height: 0;
}

.accordionset>[role=tabpanel] {
  height: var(--height);
  overflow: hidden;
}

.accordionset.is-open>[role=tabpanel].lock {
  overflow: visible;
}

.accordionset.is-ready>[role=tabpanel] {
  transition: height 0.5s;
}

.form-popup {
  z-index: 99999 !important;
}

.top-header {
  width: 100%;
  overflow: visible;
  position: relative;
  z-index: 3000;
}

@media print,
screen and (min-width: 1271px) {
  .top-header {
    height: 70px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header {
    height: 16vw;
    height: 70px;
  }

  .top-header #sp-navi-content {
    --height: 0;
    height: var(--height);
    overflow: hidden;
  }

  .top-header.is-open #sp-navi-content.lock {
    overflow: visible;
  }

  .top-header.is-ready #sp-navi-content {
    transition: height 0.5s;
  }
}

@media screen and (max-width: 750px) {
  .top-header {
    height: 16vw;
  }

  .top-header #sp-navi-content {
    --height: 0;
    height: var(--height);
    overflow: hidden;
  }

  .top-header.is-open #sp-navi-content.lock {
    overflow: visible;
  }

  .top-header.is-ready #sp-navi-content {
    transition: height 0.5s;
  }
}

.top-header .cover {
  background-color: #ffffff;
}

@media print,
screen and (min-width: 751px) {
  .top-header .cover {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover {
    box-shadow: 0 0 0.6666666667vw rgba(0, 0, 0, 0.2);
  }
}

.top-header .cover>.layout {
  display: flex;
  align-items: center;
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover>.layout {
    width: 1240px;
    height: 70px;
    margin: 0 auto;
    justify-content: space-between;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover>.layout {
    width: 100%;
    height: 70px;
    justify-content: space-between;
    padding: 0 20px 0 20px;
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover>.layout {
    width: 100%;
    height: 16vw;
    justify-content: space-between;
    padding: 2.9vw 2.6666666667vw 0 4vw;
  }
}

.top-header .cover>.layout h1.logo {
  margin: 0;
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover>.layout h1.logo {
    width: 169.48px;
    height: 25.95px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover>.layout h1.logo {
    width: 169.48px;
    height: 25.95px;
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover>.layout h1.logo {
    width: 38.4vw;
    height: 5.88vw;
  }
}

.top-header .cover>.layout h1.logo svg {
  width: 100%;
  height: 100%;
}

.top-header .cover>.layout .pc-navi {
  position: relative;
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover>.layout .pc-navi .tablist {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 20px;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs {
    display: flex;
    align-items: center;
    height: 70px;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li a {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #002033;
    display: flex;
    align-items: center;
    column-gap: 5px;
    transition: color 0.4s;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li a .icon {
    width: 9.24px;
    height: 9.24px;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li a .icon svg {
    width: 100%;
    height: 100%;
    vertical-align: top;
    fill: #007cc5;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li a:hover {
    color: #007cc5;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li+li {
    margin-left: 28px;
  }

  .top-header .cover>.layout .pc-navi .tablist .tabs li.tab+li {
    margin-left: 25px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons {
    display: flex;
    align-items: center;
    column-gap: 10px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li {
    height: 40px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li a {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 7px;
    width: 100%;
    height: 100%;
    color: #ffffff;
    border-radius: 6px;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
    position: relative;
    overflow: hidden;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li a .icon svg {
    width: 100%;
    height: 100%;
    fill: #ffffff;
    vertical-align: top;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li a:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0);
    transition: background-color 0.4s;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li a:hover:after {
    background-color: rgba(255, 255, 255, 0.3);
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b1 {
    width: 150px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b1 a {
    background-color: #f59326;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b1 a .icon {
    width: 14.22px;
    height: 14.22px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b2 {
    width: 130px;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b2 a {
    background-color: #007cc5;
  }

  .top-header .cover>.layout .pc-navi .tablist .buttons li.b2 a .icon {
    width: 12.82px;
    height: 12.82px;
  }

  .top-header .cover>.layout .pc-navi .stage {
    position: absolute;
    left: 0;
    top: 70px;
    width: 100%;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover>.layout .pc-navi {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover>.layout .pc-navi {
    display: none;
  }
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover>.layout .sp-navi-button {
    display: none;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover>.layout .sp-navi-button {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    width: 50px;
    height: 50px;
  }

  .top-header .cover>.layout .sp-navi-button a {
    display: block;
    position: relative;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    background-color: #007cc5;
    border-radius: 1.3333333333vw;
    transition: all 0.4s;
    box-shadow: 0 0.4vw 0.6666666667vw rgba(0, 0, 0, 0.2);
  }

  .top-header .cover>.layout .sp-navi-button a .bar {
    display: block;
    width: 4.2666666667vw;
    height: 0.2666666667vw;
    background-color: #ffffff;
    transition: all 0.4s;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b1 {
    transform: translate3d(0, -1.3333333333vw, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b2 {
    transform: translate3d(0, 0, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b3 {
    transform: translate3d(0, 1.3333333333vw, 0);
  }

  .top-header .cover>.layout .sp-navi-button a {
    width: 50px;
    height: 50px;
    background-color: #007cc5;
    border-radius: 5px;
  }

  .top-header .cover>.layout .sp-navi-button a .bar {
    width: 16px;
    height: 1px;
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b1 {
    transform: translate3d(0, -5px, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b2 {
    transform: translate3d(0, 0, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b3 {
    transform: translate3d(0, 5px, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover>.layout .sp-navi-button {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }

  .top-header .cover>.layout .sp-navi-button a {
    display: block;
    position: relative;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    background-color: #007cc5;
    border-radius: 1.3333333333vw;
    transition: all 0.4s;
    box-shadow: 0 0.4vw 0.6666666667vw rgba(0, 0, 0, 0.2);
  }

  .top-header .cover>.layout .sp-navi-button a .bar {
    display: block;
    width: 4.2666666667vw;
    height: 0.2666666667vw;
    background-color: #ffffff;
    transition: all 0.4s;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b1 {
    transform: translate3d(0, -1.3333333333vw, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b2 {
    transform: translate3d(0, 0, 0);
  }

  .top-header .cover>.layout .sp-navi-button a .bar.b3 {
    transform: translate3d(0, 1.3333333333vw, 0);
  }
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover .pc-navi-stage {
    position: relative;
    z-index: 3003;
    width: 100%;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set {
    width: 100%;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout {
    width: 1240px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 34px 0 49px 0;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout h2.title {
    display: flex;
    align-items: center;
    border: none;
    padding: 0;
    column-gap: 12px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout h2.title .icon {
    width: 13px;
    height: 13px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout h2.title .icon img {
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout h2.title .label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 20px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout h2.title:after {
    display: none;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list {
    width: 921px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    column-gap: 30px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li {
    width: 287px;
    height: 50px;
    border-bottom: 1px solid #d5d5d5;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    position: relative;
    color: #002033;
    transition: color 0.4s;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li a .label {
    flex-grow: 1;
    display: block;
    font-size: 14px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li a .std-icon-arrow {
    flex-shrink: 0;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li a .std-icon-arrow svg {
    fill: #007cc5;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set>.layout .list ul li a:hover {
    color: #007cc5;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set.s1>.layout .list {
    height: 150px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set.s2>.layout .list {
    height: 150px;
  }

  .top-header .cover .pc-navi-stage .pc-navi-set.s3>.layout .list {
    height: 150px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover .pc-navi-stage {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover .pc-navi-stage {
    display: none;
  }
}

@media print,
screen and (min-width: 1271px) {
  .top-header .cover .sp-navi-content {
    display: none;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1270px) {
  .top-header .cover .sp-navi-content .scroll {
    padding: 0 5.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1.6vw 0;
    border-style: solid;
    border-color: #d5d5d5;
    border-width: 0.2666666667vw 0 0 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .label,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .label,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .label {
    flex-grow: 1;
    font-size: 3.7333333333vw;
    line-height: 8vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .icon {
    flex-shrink: 0;
    display: block;
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .icon svg,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .icon svg,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .icon svg {
    width: 100%;
    height: 100%;
    fill: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon {
    position: relative;
    width: 3.408vw;
    height: 3.408vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar {
    display: block;
    width: 3.408vw;
    height: 0.5333333333vw;
    background-color: #007cc5;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transition: all 0.4s;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar.b1,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar.b1 {
    rotate: 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar.b2,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar.b2 {
    rotate: 90deg;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul {
    padding: 4.5333333333vw 0 5.8666666667vw 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a {
    display: flex;
    align-items: center;
    width: 100%;
    column-gap: 1.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .label {
    flex-grow: 1;
    font-size: 3.7333333333vw;
    line-height: 8vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .icon {
    flex-shrink: 0;
    display: block;
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .icon svg {
    width: 100%;
    height: 100%;
    fill: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a {
    border-width: 0.2666666667vw 0 0.2666666667vw 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a .icon .bar.b1,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a .icon .bar.b1 {
    rotate: 360deg;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a .icon .bar.b2,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a .icon .bar.b2 {
    rotate: 360deg;
  }

  .top-header .cover .sp-navi-content .scroll .buttons {
    display: flex;
    justify-content: center;
    column-gap: 2.4vw;
    margin-top: 5.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li {
    width: 43.4666666667vw;
    height: 10.6666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li a {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 2vw;
    width: 100%;
    height: 100%;
    font-size: 3.2vw;
    color: #ffffff;
    border-radius: 1.6vw;
    box-shadow: 0 0.4vw 0.6666666667vw rgba(0, 0, 0, 0.2);
  }

  .top-header .cover .sp-navi-content .scroll .buttons li a .icon svg {
    width: 100%;
    height: 100%;
    fill: #ffffff;
    vertical-align: top;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b1 a {
    background-color: #f59326;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b1 a .icon {
    width: 4.592vw;
    height: 4.592vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b2 a {
    background-color: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b2 a .icon {
    width: 4.1946666667vw;
    height: 4.1946666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .phone {
    margin-top: 3.4666666667vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    column-gap: 1.8666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .phone .num a {
    font-size: 4.8vw;
    line-height: 5.8666666667vw;
    color: #002033;
  }

  .top-header .cover .sp-navi-content .scroll .phone .note p {
    font-size: 2.6666666667vw;
    line-height: 5.8666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll {
    padding: 0 20px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a {
    padding: 6px 0;
    border-width: 1px 0 0 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .label,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .label {
    font-size: 14px;
    line-height: 30px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .icon {
    width: 13px;
    height: 13px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon {
    width: 12.78px;
    height: 12.78px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar {
    width: 12.78px;
    height: 2px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul {
    padding: 17px 0 22px 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a {
    column-gap: 5px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .label {
    font-size: 14px;
    line-height: 30px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .icon {
    width: 13px;
    height: 13px;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a {
    border-width: 1px 0 1px 0;
  }

  .top-header .cover .sp-navi-content .scroll .buttons {
    column-gap: 9px;
    margin-top: 20px;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li {
    width: 163px;
    height: 40px;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li a {
    column-gap: 7.5px;
    font-size: 12px;
    border-radius: 6px;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b1 a .icon {
    width: 17.22px;
    height: 17.22px;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b2 a .icon {
    width: 15.73px;
    height: 15.73px;
  }

  .top-header .cover .sp-navi-content .scroll .phone {
    margin-top: 13px;
    column-gap: 7px;
  }

  .top-header .cover .sp-navi-content .scroll .phone .num a {
    font-size: 18px;
    line-height: 22px;
  }

  .top-header .cover .sp-navi-content .scroll .phone .note p {
    font-size: 10px;
    line-height: 22px;
  }
}

@media screen and (max-width: 750px) {
  .top-header .cover .sp-navi-content .scroll {
    padding: 0 5.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 1.6vw 0;
    border-style: solid;
    border-color: #d5d5d5;
    border-width: 0.2666666667vw 0 0 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .label,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .label,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .label {
    flex-grow: 1;
    font-size: 3.7333333333vw;
    line-height: 8vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .icon {
    flex-shrink: 0;
    display: block;
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li>a .icon svg,
  .top-header .cover .sp-navi-content .scroll .list>li>.button a .icon svg,
  .top-header .cover .sp-navi-content .scroll .list>li>.accordion-button a .icon svg {
    width: 100%;
    height: 100%;
    fill: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon {
    position: relative;
    width: 3.408vw;
    height: 3.408vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar {
    display: block;
    width: 3.408vw;
    height: 0.5333333333vw;
    background-color: #007cc5;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transition: all 0.4s;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar.b1,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar.b1 {
    rotate: 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.button a .icon .bar.b2,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child>.accordion-button a .icon .bar.b2 {
    rotate: 90deg;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul {
    padding: 4.5333333333vw 0 5.8666666667vw 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a {
    display: flex;
    align-items: center;
    width: 100%;
    column-gap: 1.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .label {
    flex-grow: 1;
    font-size: 3.7333333333vw;
    line-height: 8vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .icon {
    flex-shrink: 0;
    display: block;
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child .content ul li a .icon svg {
    width: 100%;
    height: 100%;
    fill: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a {
    border-width: 0.2666666667vw 0 0.2666666667vw 0;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a .icon .bar.b1,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a .icon .bar.b1 {
    rotate: 360deg;
  }

  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.button a .icon .bar.b2,
  .top-header .cover .sp-navi-content .scroll .list>li.has-child.is-open>.accordion-button a .icon .bar.b2 {
    rotate: 360deg;
  }

  .top-header .cover .sp-navi-content .scroll .buttons {
    display: flex;
    justify-content: center;
    column-gap: 2.4vw;
    margin-top: 5.3333333333vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li {
    width: 43.4666666667vw;
    height: 10.6666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li a {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 2vw;
    width: 100%;
    height: 100%;
    font-size: 3.2vw;
    color: #ffffff;
    border-radius: 1.6vw;
    box-shadow: 0 0.4vw 0.6666666667vw rgba(0, 0, 0, 0.2);
  }

  .top-header .cover .sp-navi-content .scroll .buttons li a .icon svg {
    width: 100%;
    height: 100%;
    fill: #ffffff;
    vertical-align: top;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b1 a {
    background-color: #f59326;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b1 a .icon {
    width: 4.592vw;
    height: 4.592vw;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b2 a {
    background-color: #007cc5;
  }

  .top-header .cover .sp-navi-content .scroll .buttons li.b2 a .icon {
    width: 4.1946666667vw;
    height: 4.1946666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .phone {
    margin-top: 3.4666666667vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    column-gap: 1.8666666667vw;
  }

  .top-header .cover .sp-navi-content .scroll .phone .num a {
    font-size: 4.8vw;
    line-height: 5.8666666667vw;
    color: #002033;
  }

  .top-header .cover .sp-navi-content .scroll .phone .note p {
    font-size: 2.6666666667vw;
    line-height: 5.8666666667vw;
  }
}

.top-header .cover .sp-navi-content ul.list li:nth-child(2) div:last-child ul li:first-child {
  display: none;
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .top-header.is-open .cover>.layout .sp-navi-button a {
    background-color: #ffffff;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar {
    background-color: #002033;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b1 {
    transform: translate3d(0, 0, 0) rotate(405deg);
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b2 {
    transform: translate3d(0, 0, 0) rotate(360deg);
    opacity: 0;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b3 {
    transform: translate3d(0, 0, 0) rotate(315deg);
  }
}

@media screen and (max-width: 750px) {
  .top-header.is-open .cover>.layout .sp-navi-button a {
    background-color: #ffffff;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar {
    background-color: #002033;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b1 {
    transform: translate3d(0, 0, 0) rotate(405deg);
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b2 {
    transform: translate3d(0, 0, 0) rotate(360deg);
    opacity: 0;
  }

  .top-header.is-open .cover>.layout .sp-navi-button a .bar.b3 {
    transform: translate3d(0, 0, 0) rotate(315deg);
  }
}

@media print,
screen and (min-width: 751px) {
  #header-content {
    height: 70px;
  }
}

@media screen and (min-width: 751px) {

  body:has(#header-content .accordion-button) #header-content {
    position: sticky;
    top: 0;
    z-index: 1000;
    height: 70px;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  #header-content {
    position: sticky !important;
    top: 0;
    z-index: 3000;
    width: 100%;
  }
}


@media screen and (max-width: 750px) {
  #header-content {
    position: static;
    height: 16vw;
    width: 100%;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

@media screen and (max-width: 750px) {
  #header-content {
    height: 16vw;
  }
}

@media (min-width: 960px) {
  #header-content .top-header {
    position: relative;
  }
}

@media print,
screen and (min-width: 751px) {

  html.has-importantNews .top-header,
  html.has-otherNews .top-header {
    height: 116px;
  }
}

@media screen and (max-width: 750px) {

  html.has-importantNews .top-header,
  html.has-otherNews .top-header {
    height: 32vw;
  }
}

@media print,
screen and (min-width: 751px) {

  html.has-importantNews #header-content,
  html.has-otherNews #header-content {
    height: 116px;
  }
}

@media screen and (max-width: 750px) {

  html.has-importantNews #header-content,
  html.has-otherNews #header-content {
    height: 32vw;
  }
}

@media print,
screen and (min-width: 751px) {
  html.has-importantNews.has-otherNews .top-header {
    height: 162px;
  }
}

@media screen and (max-width: 750px) {
  html.has-importantNews.has-otherNews .top-header {
    height: 48vw;
  }
}

@media print,
screen and (min-width: 751px) {
  html.has-importantNews.has-otherNews #header-content {
    height: 162px;
  }
}

@media screen and (max-width: 750px) {
  html.has-importantNews.has-otherNews #header-content {
    height: 48vw;
  }
}

.important-news {
  background-color: #FCE1E2;
}

@media print,
screen and (min-width: 1281px) {
  .important-news {
    height: 46px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news {
    height: 46px;
  }
}

@media screen and (max-width: 750px) {
  .important-news {
    height: 16vw;
  }
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame {
    width: 1240px;
    height: 46px;
    margin: auto;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame {
    width: 100%;
    height: 46px;
    margin: 0;
    padding: 0 20px;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame {
    width: 100%;
    height: 100%;
  }
}

.important-news>.frame>.wrap {
  width: 100%;
  height: 100%;
  position: relative;
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap {
    padding-right: 76px;
    padding-left: 30px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap {
    padding-right: 76px;
    padding-left: 30px;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap {
    padding-left: 20.2666666667vw;
    padding-right: 12.2666666667vw;
  }
}

.important-news>.frame>.wrap:before {
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  content: "";
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap:before {
    display: block;
    padding: 18px 0 0 0;
    width: 18px;
    height: 0;
    overflow: hidden;
    background-image: url("/application/themes/stuccov2/css/img/topv4/in_ico.png");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    text-indent: -5000px;
    left: 0;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap:before {
    display: block;
    padding: 18px 0 0 0;
    width: 18px;
    height: 0;
    overflow: hidden;
    background-image: url("/application/themes/stuccov2/css/img/topv4/in_ico.png");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    text-indent: -5000px;
    left: 0;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap:before {
    display: block;
    padding: 4.8vw 0 0 0;
    width: 4.8vw;
    height: 0;
    overflow: hidden;
    background-image: url("/application/themes/stuccov2/css/img/topv4/in_ico.png");
    background-repeat: no-repeat;
    background-size: 4.8vw 4.8vw;
    text-indent: -5000px;
    left: 12.2666666667vw;
  }
}

.important-news>.frame>.wrap .in-container {
  height: 100%;
  overflow: hidden;
}

.important-news>.frame>.wrap .in-container .in-wrapper {
  height: 100%;
}

.important-news>.frame>.wrap .in-container .in-wrapper .in-item {
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

.important-news>.frame>.wrap .in-container .in-wrapper .in-item p {
  margin: 0;
  padding: 0;
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    line-height: 46px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    line-height: 46px;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    font-size: 12px;
    line-height: 18px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap nav {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 76px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap nav {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 76px;
  }
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap nav .in-button {
    position: static;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap nav .in-button {
    position: static;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap nav .in-button {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
  }
}

.important-news>.frame>.wrap nav .in-button:after {
  display: none;
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap nav .in-button {
    width: 10px;
    height: 10px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap nav .in-button {
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap nav .in-button {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}

.important-news>.frame>.wrap nav .in-button svg {
  width: 100%;
  height: 100%;
  fill: #007cc5;
  vertical-align: top;
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap nav .in-button.prev {
    left: 4vw;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap nav .in-button.next {
    right: 4vw;
  }
}

@media print,
screen and (min-width: 1281px) {
  .important-news>.frame>.wrap nav .in-pagination {
    display: block;
    font-size: 13px;
    line-height: 13px;
    height: 13px;
    color: #002033;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .important-news>.frame>.wrap nav .in-pagination {
    display: block;
    font-size: 13px;
    line-height: 13px;
    height: 13px;
    color: #002033;
  }
}

@media screen and (max-width: 750px) {
  .important-news>.frame>.wrap nav .in-pagination {
    display: none;
  }
}

.important-news-data {
  width: 0;
  height: 0;
  overflow: 0;
}

.ccm-toolbar-visible .important-news-data {
  width: auto;
  height: 100px;
  background-color: #ffcccc;
}

.other-news {
  background-color: #ffffff;
}

@media print,
screen and (min-width: 1281px) {
  .other-news {
    height: 46px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news {
    height: 46px;
  }
}

@media screen and (max-width: 750px) {
  .other-news {
    height: 16vw;
  }
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame {
    width: 1240px;
    height: 46px;
    margin: auto;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame {
    width: 100%;
    height: 46px;
    margin: 0;
    padding: 0 20px;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame {
    width: 100%;
    height: 100%;
  }
}

.other-news>.frame>.wrap {
  width: 100%;
  height: 100%;
  position: relative;
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap {
    padding-right: 76px;
    padding-left: 93px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap {
    padding-right: 76px;
    padding-left: 93px;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap {
    padding-left: 29.8666666667vw;
    padding-right: 12.2666666667vw;
  }
}

.other-news>.frame>.wrap .ttl {
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap .ttl {
    width: 93px;
    column-gap: 6px;
    left: 0;
  }

  .other-news>.frame>.wrap .ttl .icon {
    width: 10px;
    height: 10px;
  }

  .other-news>.frame>.wrap .ttl .icon img {
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  .other-news>.frame>.wrap .ttl .label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 14px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap .ttl {
    width: 93px;
    column-gap: 6px;
    left: 0;
  }

  .other-news>.frame>.wrap .ttl .icon {
    width: 10px;
    height: 10px;
  }

  .other-news>.frame>.wrap .ttl .icon img {
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  .other-news>.frame>.wrap .ttl .label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 14px;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap .ttl {
    width: 19.2vw;
    column-gap: 0.8vw;
    left: 10.6666666667vw;
  }

  .other-news>.frame>.wrap .ttl .icon {
    width: 2.9333333333vw;
    height: 2.9333333333vw;
  }

  .other-news>.frame>.wrap .ttl .icon img {
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  .other-news>.frame>.wrap .ttl .label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 3.2vw;
  }
}

.other-news>.frame>.wrap .in-container {
  height: 100%;
  overflow: hidden;
}

.other-news>.frame>.wrap .in-container .in-wrapper {
  height: 100%;
}

.other-news>.frame>.wrap .in-container .in-wrapper .in-item {
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

.other-news>.frame>.wrap .in-container .in-wrapper .in-item p {
  margin: 0;
  padding: 0;
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    line-height: 46px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    line-height: 46px;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap .in-container .in-wrapper .in-item p {
    font-size: 12px;
    line-height: 18px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap nav {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 76px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap nav {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 76px;
  }
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap nav .in-button {
    position: static;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap nav .in-button {
    position: static;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap nav .in-button {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
  }
}

.other-news>.frame>.wrap nav .in-button:after {
  display: none;
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap nav .in-button {
    width: 10px;
    height: 10px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap nav .in-button {
    width: 10px;
    height: 10px;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap nav .in-button {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}

.other-news>.frame>.wrap nav .in-button svg {
  width: 100%;
  height: 100%;
  fill: #007cc5;
  vertical-align: top;
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap nav .in-button.prev {
    left: 4vw;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap nav .in-button.next {
    right: 4vw;
  }
}

@media print,
screen and (min-width: 1281px) {
  .other-news>.frame>.wrap nav .in-pagination {
    display: block;
    font-size: 13px;
    line-height: 13px;
    height: 13px;
    color: #002033;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .other-news>.frame>.wrap nav .in-pagination {
    display: block;
    font-size: 13px;
    line-height: 13px;
    height: 13px;
    color: #002033;
  }
}

@media screen and (max-width: 750px) {
  .other-news>.frame>.wrap nav .in-pagination {
    display: none;
  }
}

.other-news-data {
  width: 0;
  height: 0;
  overflow: 0;
}

.ccm-toolbar-visible .other-news-data {
  width: auto;
  height: 100px;
  background-color: #cccccc;
}

.top-footer {
  background-color: #000000;
  color: #ffffff;
}

@media print,
screen and (min-width: 1281px) {
  .top-footer {
    padding: 160px 0 40px 0;
  }

  .top-footer a:hover {
    opacity: 1;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .top-footer {
    padding: 160px 0 40px 0;
  }

  .top-footer a:hover {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-footer {
    padding: 21.3333333333vw 0 18.6666666667vw 0;
  }
}

.top-footer>.layout {
  margin: 0 auto;
  display: grid;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout {
    width: 1240px;
    grid-template: "logo sitemap" auto "inq sitemap" auto "phone sitemap" auto "sns sitemap" auto "lang sitemap" 1fr "copyright links" auto/420px 820px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .top-footer>.layout {
    width: auto;
    padding: 0 140px;
    grid-template: "logo sitemap" auto "inq sitemap" auto "phone sitemap" auto "sns sitemap" auto "lang sitemap" 1fr "copyright links" auto/320px 1fr;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout {
    width: 92vw;
    grid-template: "logo" auto "inq" auto "phone" auto "sns" auto "lang" auto "links" auto "copyright" auto/auto;
  }
}

.top-footer>.layout .logo {
  grid-area: logo;
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .logo {
    justify-self: center;
  }
}

.top-footer>.layout .logo img {
  vertical-align: top;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .logo img {
    width: 256px;
    height: 38.6160564347px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .logo img {
    width: 55.7333333333vw;
    height: 8.4070372863vw;
  }
}

.top-footer>.layout .inq {
  grid-area: inq;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq {
    margin-top: 50px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq {
    margin-top: 10.6666666667vw;
  }
}

.top-footer>.layout .inq ul {
  display: flex;
  flex-direction: column;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul {
    row-gap: 15px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul {
    row-gap: 4vw;
    align-items: center;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li {
    width: 240px;
    height: 50px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li {
    width: 80vw;
    height: 13.3333333333vw;
  }
}

.top-footer>.layout .inq ul li a {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li a {
    padding: 0 17px 0 20px;
    border-radius: 5px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li a {
    padding: 0 5.6vw 0 5.8666666667vw;
    border-radius: 1.3333333333vw;
  }
}

.top-footer>.layout .inq ul li a .icon {
  position: relative;
  z-index: 1;
}

.top-footer>.layout .inq ul li a .icon svg {
  width: 100%;
  height: 100%;
  fill: #ffffff;
}

.top-footer>.layout .inq ul li a .label {
  position: relative;
  z-index: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #ffffff;
  flex-grow: 1;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li a .label {
    font-size: 14px;
    margin-left: 12.5px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li a .label {
    font-size: 3.7333333333vw;
    margin-left: 3.5466666667vw;
  }
}

.top-footer>.layout .inq ul li a .arrow {
  position: relative;
  z-index: 1;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li a .arrow {
    width: 13px;
    height: 13px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li a .arrow {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }
}

.top-footer>.layout .inq ul li a .arrow svg {
  width: 100%;
  height: 100%;
  fill: #ffffff;
}

.top-footer>.layout .inq ul li a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0);
  transition: background-color 0.4s;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li a:hover:before {
    background-color: rgba(255, 255, 255, 0.3);
  }
}

.top-footer>.layout .inq ul li.orange a {
  background-color: #f59326;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li.orange a .icon {
    width: 17.45px;
    height: 17.45px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li.orange a .icon {
    width: 4.6533333333vw;
    height: 4.6533333333vw;
  }
}

.top-footer>.layout .inq ul li.blue a {
  background-color: #007cc5;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .inq ul li.blue a .icon {
    width: 15.73px;
    height: 15.73px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .inq ul li.blue a .icon {
    width: 4.1946666667vw;
    height: 4.1946666667vw;
  }
}

.top-footer>.layout .phone {
  grid-area: phone;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .phone {
    margin-top: 40px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .phone {
    margin-top: 6.1333333333vw;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .phone .number {
    text-align: center;
  }
}

.top-footer>.layout .phone .number a {
  color: #ffffff;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .phone .number a {
    font-size: 36px;
    line-height: 56px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .phone .number a {
    font-size: 8vw;
    line-height: 10.1333333333vw;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .phone .note {
    margin-top: 3px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .phone .note {
    margin-top: 0.5333333333vw;
    text-align: center;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .phone .note p {
    font-size: 13px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .phone .note p {
    font-size: 3.4666666667vw;
  }
}

.top-footer>.layout .sns {
  grid-area: sns;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .sns {
    margin-top: 28px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .sns {
    margin-top: 5.8666666667vw;
  }
}

.top-footer>.layout .sns ul {
  display: flex;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .sns ul {
    column-gap: 10px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .sns ul {
    column-gap: 2.6666666667vw;
    justify-content: center;
  }
}

.top-footer>.layout .sns ul li a {
  display: grid;
  justify-content: center;
  align-items: center;
  border-style: solid;
  border-color: rgba(255, 255, 255, 0.25);
  border-radius: 9999px;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .sns ul li a {
    width: 50px;
    height: 50px;
    transition: opacity 0.4s;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .sns ul li a {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .sns ul li a .icon {
    width: 16.4px;
    height: 16.4px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .sns ul li a .icon {
    width: 4.3733333333vw;
    height: 4.3733333333vw;
  }
}

.top-footer>.layout .sns ul li a .icon img {
  width: 100%;
  height: 100%;
  vertical-align: top;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .sns ul li a:hover {
    opacity: 0.8;
  }
}

.top-footer>.layout .lang {
  grid-area: lang;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .lang {
    margin-top: 28px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .lang {
    margin-top: 6.1333333333vw;
  }
}

.top-footer>.layout .lang ul {
  display: flex;
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .lang ul {
    justify-content: center;
  }
}

.top-footer>.layout .lang ul li a,
.top-footer>.layout .lang ul li span.active {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  color: #ffffff;
}

@media print,
screen and (min-width: 751px) {

  .top-footer>.layout .lang ul li a,
  .top-footer>.layout .lang ul li span.active {
    width: 70px;
    padding-bottom: 16px;
    transition: opacity 0.4s;
  }
}

@media screen and (max-width: 750px) {

  .top-footer>.layout .lang ul li a,
  .top-footer>.layout .lang ul li span.active {
    width: 18.6666666667vw;
    padding-bottom: 4.2666666667vw;
  }
}

@media print,
screen and (min-width: 751px) {

  .top-footer>.layout .lang ul li a .label,
  .top-footer>.layout .lang ul li span.active .label {
    font-size: 12px;
    line-height: 12px;
  }
}

@media screen and (max-width: 750px) {

  .top-footer>.layout .lang ul li a .label,
  .top-footer>.layout .lang ul li span.active .label {
    font-size: 3.2vw;
    line-height: 3.2vw;
  }
}

.top-footer>.layout .lang ul li a:after,
.top-footer>.layout .lang ul li span.active:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.25);
}

@media print,
screen and (min-width: 751px) {

  .top-footer>.layout .lang ul li a:after,
  .top-footer>.layout .lang ul li span.active:after {
    bottom: 1px;
    height: 1px;
  }
}

@media screen and (max-width: 750px) {

  .top-footer>.layout .lang ul li a:after,
  .top-footer>.layout .lang ul li span.active:after {
    bottom: 0.2666666667vw;
    height: 0.2666666667vw;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .lang ul li a:hover {
    opacity: 0.8;
  }
}

.top-footer>.layout .lang ul li span.active .label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}

.top-footer>.layout .lang ul li span.active:after {
  background-color: white;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .lang ul li span.active:after {
    bottom: 0;
    height: 3px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .lang ul li span.active:after {
    bottom: 0;
    height: 0.8vw;
  }
}

.top-footer>.layout .sitemap {
  grid-area: sitemap;
}

@media print,
screen and (min-width: 1281px) {
  .top-footer>.layout .sitemap {
    margin-bottom: 120px;
  }

  .top-footer>.layout .sitemap a {
    transition: opacity 0.4s;
  }

  .top-footer>.layout .sitemap a:hover {
    opacity: 0.8;
  }

  .top-footer>.layout .sitemap>.layout {
    display: flex;
    column-gap: 50px;
  }

  .top-footer>.layout .sitemap>.layout .col {
    width: 240px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 {
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.3);
    border-width: 0 0 1px 0;
    padding-bottom: 12px;
    font-size: 16px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 a {
    color: #ffffff;
    font-size: 16px;
    line-height: 22px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev2 a {
    color: #ffffff;
    font-size: 14px;
    line-height: 30px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1+.lev2 {
    margin-top: 17px;
  }

  .top-footer>.layout .sitemap>.layout .col *+.lev1 {
    margin-top: 30px;
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1280px) {
  .top-footer>.layout .sitemap {
    margin-bottom: 120px;
  }

  .top-footer>.layout .sitemap a {
    transition: opacity 0.4s;
  }

  .top-footer>.layout .sitemap a:hover {
    opacity: 0.8;
  }

  .top-footer>.layout .sitemap>.layout {
    display: flex;
    column-gap: 50px;
  }

  .top-footer>.layout .sitemap>.layout .col {
    width: 240px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 {
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.3);
    border-width: 0 0 1px 0;
    padding-bottom: 12px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 a {
    color: #ffffff;
    font-size: 16px;
    line-height: 22px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev2 a {
    color: #ffffff;
    font-size: 14px;
    line-height: 30px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1+.lev2 {
    margin-top: 17px;
  }

  .top-footer>.layout .sitemap>.layout .col *+.lev1 {
    margin-top: 30px;
  }

  .top-footer>.layout .sitemap>.layout {
    flex-wrap: wrap;
    row-gap: 50px;
  }

  .top-footer>.layout .sitemap>.layout .col {
    width: calc((100% - 100px) / 3);
  }
}

@media print,
screen and (min-width: 751px) and (max-width: 1050px) {
  .top-footer>.layout .sitemap {
    margin-bottom: 120px;
  }

  .top-footer>.layout .sitemap a {
    transition: opacity 0.4s;
  }

  .top-footer>.layout .sitemap a:hover {
    opacity: 0.8;
  }

  .top-footer>.layout .sitemap>.layout {
    display: flex;
    column-gap: 50px;
  }

  .top-footer>.layout .sitemap>.layout .col {
    width: 240px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 {
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.3);
    border-width: 0 0 1px 0;
    padding-bottom: 12px;
    font-size: 16px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1 a {
    color: #ffffff;
    font-size: 16px;
    line-height: 22px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev2 a {
    color: #ffffff;
    font-size: 14px;
    line-height: 30px;
  }

  .top-footer>.layout .sitemap>.layout .col .lev1+.lev2 {
    margin-top: 17px;
  }

  .top-footer>.layout .sitemap>.layout .col *+.lev1 {
    margin-top: 30px;
  }

  .top-footer>.layout .sitemap>.layout {
    flex-wrap: wrap;
    column-gap: 25px;
    row-gap: 50px;
  }

  .top-footer>.layout .sitemap>.layout .col {
    width: calc((100% - 25px * 2) / 3);
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .sitemap {
    display: none;
  }
}

.top-footer>.layout .sitemap div.col:nth-child(2) ul li:first-child {
  display: none;
}

.top-footer>.layout .links {
  grid-area: links;
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .links {
    margin-top: 13.3333333333vw;
    padding-top: 10.6666666667vw;
    border-style: solid;
    border-color: #c4c4c4;
    border-width: 0.2666666667vw 0 0 0;
  }
}

.top-footer>.layout .links ul {
  display: flex;
  flex-wrap: wrap;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .links ul {
    column-gap: 25px;
    row-gap: 17px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .links ul {
    column-gap: 6.9333333333vw;
    row-gap: 4vw;
  }
}

.top-footer>.layout .links ul li a {
  color: #ffffff;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .links ul li a {
    font-size: 12px;
    line-height: 12px;
    transition: opacity 0.4s;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .links ul li a {
    font-size: 3.2vw;
    line-height: 3.2vw;
  }
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .links ul li a:hover {
    opacity: 0.8;
  }
}

.top-footer>.layout .copyright {
  grid-area: copyright;
  margin: 0;
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .copyright {
    margin-top: 10.6666666667vw;
  }
}

.top-footer>.layout .copyright p {
  margin: 0;
  font-family: "Outfit", sans-serif;
  font-weight: 400;
}

@media print,
screen and (min-width: 751px) {
  .top-footer>.layout .copyright p {
    font-size: 12px;
  }
}

@media screen and (max-width: 750px) {
  .top-footer>.layout .copyright p {
    font-size: 3.2vw;
  }
}

.std-icon-arrow {
  display: inline-block;
  position: relative;
}

@media print,
screen and (min-width: 751px) {
  .std-icon-arrow {
    width: 13px;
    height: 13px;
  }
}

@media screen and (max-width: 750px) {
  .std-icon-arrow {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}

.std-icon-arrow svg {
  position: absolute;
  transition: all 0.4s;
}

@media print,
screen and (min-width: 751px) {
  .std-icon-arrow svg {
    width: 13px;
    height: 13px;
  }
}

.std-icon-arrow svg.s1 {
  left: 0;
  top: 0;
}

.std-icon-arrow svg.s2 {
  opacity: 0;
  left: -66%;
  top: 0;
}

.std-icon-arrow.upwards {
  rotate: -90deg;
}

.std-icon-arrow.downwards {
  rotate: 90deg;
}

.std-icon-arrow.backwards {
  rotate: 180deg;
}

a:hover .std-icon-arrow svg.s1,
button:hover .std-icon-arrow svg.s1 {
  animation: arrow1 0.4s forwards;
}

a:hover .std-icon-arrow svg.s2,
button:hover .std-icon-arrow svg.s2 {
  animation: arrow2 0.4s 0.2666666667s forwards;
}

@keyframes arrow1 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }

  100% {
    transform: translate3d(66%, 0, 0);
    opacity: 0;
  }
}

@keyframes arrow2 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 0;
  }

  100% {
    transform: translate3d(66%, 0, 0);
    opacity: 1;
  }
}

.components .arrow .sample .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

@media print,
screen and (min-width: 751px) {
  .components .arrow .sample .button {
    width: 50px;
    height: 50px;
  }
}

@media screen and (max-width: 750px) {
  .components .arrow .sample .button {
    width: 8vw;
    height: 8vw;
  }
}
