html {
  box-sizing: border-box;
  font-size: 62.5%;
  line-height: 1.6;
}

body {
  box-sizing: border-box;
  color: #303030;
  font-family: 'Noto Sans JP', "¥á¥¤¥ê¥ª", Meiryo, "¥Ò¥é¥®¥Î½Ç¥´ Pro W3", "Hiragino Kaku Gothic Pro", Helvetica, Arial, Verdana, sans-serif;
  font-size: 100%;
  line-height: 1.8;
  margin: 0;
  padding: 0;
  text-align: center;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0;
}

dl,
dt,
dd,
form,
fieldset,
input,
textarea,
button {
  margin: 0;
  padding: 0;
}

p {
  margin: 1.4em 0;
}

img {
  border: none;
  vertical-align: middle;
}

img a {
  border: none;
}

.hidden {
  display: none;
}

h1 {
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

h2 {
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 1.8;
  margin: 0;
  padding: 0;
  text-align: left;
}

h3 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  padding-left: 3rem;
  position: relative;
}

h3:before {
  border: none;
  border-bottom: solid 1.5rem #007bc1;
  border-left: solid 1.5rem transparent;
  bottom: -.3rem;
  content: '';
  height: 0;
  left: 0;
  position: absolute;
  width: 0;
}

h3:after {
  border-bottom: solid .3rem #007bc1;
  bottom: -.3rem;
  content: '';
  left: 1rem;
  position: absolute;
  width: 100%;
}

h4 {
  border-bottom: .2rem dotted #007bc1;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 1rem 0;
  padding: .5rem;
}

h5 {
  color: #007bc1;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  margin: .8rem 0;
}

h6 {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.4;
  margin: .6rem 0;
}

table {
  border: .1rem solid #bbb;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 2rem 0;
  width: 100%;
}

th,
thead {
  background: #e0ebf8;
  padding: .8rem 1rem;
  text-align: left;
  white-space: nowrap;
}

td {
  border: .1rem solid #bbb;
  margin: 0;
  padding: .8rem 1rem;
}

tr:nth-child(even) {
  background-color: #e9e9e9;
}

.clearfix:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

.clearfix {
  display: flex;
  gap: 2rem;
}

.inner {
  margin: 0 auto;
}

/*  **************************************************************************** */
/* Header */
/*  **************************************************************************** */


#top-head {
  background: #fff;
  line-height: 1;
  padding: 3rem 0 3.3rem;
  width: 100%;
  z-index: 999;
}

#top-head a,
#top-head {
  text-decoration: none;
}

#top-head .inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  max-width: 164rem;
  position: relative;
}

#top-head .logo {
  align-items: center;
  display: flex;
  float: left;
  font-size: 2.4rem;
  font-weight: 900;
  margin: 0 2rem 0;
}

.logo-sp {
  display: none;
}

#top-head .logo a {
  color: #303030;
}

#top-head .logo .top_head__subtitle {
  background: #077ec3;
  border-radius: .5rem;
  color: #fff;
  display: inline-block;
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: .061em;
  line-height: 1.2;
  margin: 0 0 0 1em;
  padding: .8rem 1rem;
  text-align: left;
}

#global-nav ul li a:hover {
  filter: alpha(opacity=50);
  -ms-filter: "alpha(opacity=50)";
  opacity: .5;
}

#global-nav ul li a span.uoy {
  background-color: #fff;
  border: .1rem solid #007bc1;
  box-sizing: border-box;
  color: #007bc1;
  display: inline-block;
  font-size: 1.4rem;
  height: 4rem;
  padding: 1rem .8rem;
}

#top-head.fixed {
  backdrop-filter: blur(1.7rem);
  -webkit-backdrop-filter: blur(1.7rem);
  background-color: #f5f5f57d;
  border-radius: 3.5rem;
  margin-top: 0;
  max-width: 168rem;
  padding: 1rem 0;
  position: fixed;
  text-align: center;
  top: 2rem;
  transform: translate(5%, 0);
  -moz-transition: top .65s ease-in;
  transition: top .65s ease-in;
  -webkit-transition: top .65s ease-in;
  width: 100%;
}

#top-head.fixed .logo {
  font-size: 2.4rem;
  font-weight: 900;
}

#top-head.fixed #global-nav ul {
  font-size: 1.4rem;
  list-style: none;
}

#top-head.fixed #global-nav ul li a {
  color: #333;
  padding: .5rem;
}

.link {
  display: flex;
  justify-content: flex-end;
}

.link a {
  align-items: center;
  background: #5f2381;
  border-radius: .6rem;
  color: #fff;
  display: flex;
  font-size: 1.6rem;
  justify-content: center;
  padding: 1.2rem 2.5rem;
  position: relative;
  transition: .2s ease-in-out;
}

.link a:hover {
  background: #5f2381;
  color: #fff;
  transition: .2s ease-in-out;
}

#nav-toggle {
  background-color: #007bc1;
  cursor: pointer;
  display: none;
  height: 3rem;
  padding: 1rem;
  width: 3rem;
  z-index: 101;
}

#nav-toggle div {
  position: relative;
}

#nav-toggle span {
  background: #fff;
  display: block;
  height: .3rem;
  left: 0;
  position: absolute;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  -webkit-transition: .35s ease-in-out;
  width: 100%;
}

#nav-toggle span:nth-child(1) {
  top: 0;
}

#nav-toggle span:nth-child(2) {
  top: 1.1rem;
}

#nav-toggle span:nth-child(3) {
  top: 2.2rem;
}

#uoy-menu {
  align-items: center;
  display: flex;
  position: relative;
}

#uoy-menu ul.menulist {
  display: flex;
  gap: 4.1rem;
  list-style: none;
  margin: 0;
  padding: 0;
  padding-right: 5rem;
}

#uoy-menu ul.menulist li a {
  box-sizing: border-box;
  color: #333;
  display: inline-block;
  font-size: 1.8rem;
  padding: .5rem;
  text-decoration: none;
  width: 100%;
}

#uoy-menu ul.menulist li a:hover {
  background: #007bc1;
  color: #fff !important;
}

  .uoymenu-sp {
    display: none;
  }

  #uoy-menu {
    display: none;
  }

  #top-head,
  .inner {
    max-width: 100%;
    padding: 0;
    width: 100%;
  }

  #top-head {
    justify-content: space-between;
    margin: 0;
    margin-top: 0;
    top: 0;
  }

  #top-head.fixed {
    backdrop-filter: unset;
    background: transparent;
    left: -1.9rem;
    max-width: 100%;
    padding-top: 0;
    position: relative;
    right: 0;
  }

  #mobile-head {
    background: #fff;
    display: flex;
    height: 5rem;
    justify-content: space-between;
    max-width: 100%;
    position: relative;
    z-index: 999;
  }

  #global-nav {
    background: #ebf4ff;
    box-shadow: 0 .3rem .6rem #00000029;
    display: none;
    margin: 0;
    max-width: 80%;
    padding: 0;
    position: absolute;
    right: 0;
    text-align: center;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    -webkit-transition: .5s ease-in-out;
    width: 100%;
    z-index: 9999;
  }

  #global-nav ul.uoymenu-sp {
    display: flex;
    flex-direction: column;
    gap: 2.6rem;
    list-style: none;
    margin: 0;
    padding: 0;
    position: static;
  }

  #global-nav ul.uoymenu-sp li {
    box-sizing: border-box;
    margin: 0;
    max-width: 26.8rem;
    padding: 0;
    text-align: left;
    width: 100%;
  }

  #top-head #global-nav ul.uoymenu-sp li a,
  #top-head.fixed #global-nav ul.uoymenu-sp li a {
    background-color: #ebf4ff;
    color: #000;
    display: block;
    font-size: 2.1rem;
    width: 100%;
  }

  #global-nav ul.social-icon {
    bottom: 0;
    font-size: 1.4rem;
    list-style: none;
    margin: 0;
    padding: 0;
    position: static;
    right: 0;
  }

  #global-nav ul.social-icon li {
    float: none;
    margin: 0;
    position: static;
  }

  #top-head #global-nav ul.social-icon li a,
  #top-head.fixed #global-nav ul.social-icon li a {
    color: #fff;
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  #global-nav ul.social-icon li a span.uoy {
    background-color: #007bc1;
    border: none;
    color: #fff;
    font-size: 1.4rem;
    height: auto;
    padding: 2rem 0;
    width: 100%;
  }

  .social-icon a,
  .social-icon i {
    font-size: 1.8rem;
    padding: 1rem 0;
    width: 100%;
  }

  #nav-toggle {
    display: block;
  }

  nav#global-nav {
    padding: 3.8rem 3.1rem;
    width: 64%;
  }

  .open #nav-toggle span:nth-child(1) {
    top: 1.1rem;
    -moz-transform: rotate(315deg);
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
  }

  .open #nav-toggle span:nth-child(2) {
    left: 50%;
    width: 0;
  }

  .open #nav-toggle span:nth-child(3) {
    top: 1.1rem;
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
    -webkit-transform: rotate(-315deg);
  }

  .open #global-nav {
    display: block;
    transition: .3s ease-in-out;
  }

  .link {
    display: block;
    margin-top: 2.7rem;
    position: relative;
    right: 0;
    top: 0;
    width: 100%;
  }

  .open #nav-toggle {
    background-color: #fff;
    border: .1rem solid #007bc1;
  }

  .open #nav-toggle span {
    background-color: #007bc1;
  }

  #top-head .logo-pc {
    display: none;
  }

  #top-head .logo-sp {
    display: block;
  }

  #top-head .logo .top_head__subtitle {
    font-size: 1.2rem;
    line-height: 1.3;
    margin: 0 0 0 .5em;
    padding-top: .3em;
  }

  header#top-head {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    width: 100%;
  }

  #top-head .inner {
    display: block;
  }

  #top-head .logo {
    margin-left: 1rem;
    padding: .8rem 1.5rem .8rem 0;
  }


/*  **************************************************************************** */
/* FOOTER */
/*  **************************************************************************** */

footer,
#footer {
  background-color: #f6f6f6;
  font-size: .8rem;
  margin: 7rem auto 0;
  padding: 0;
  text-align: center;
}

#footer-inner {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 148rem;
  padding: 2rem;
  text-align: left;
}

#footer-inner p {
  align-items: center;
  display: flex;
  gap: 2.1rem;
}

#footer-inner p span {
  font-size: 1.9rem;
  letter-spacing: .095rem;
  line-height: 2.9rem;
}

.page-main a {
  align-items: center;
  color: #007bc1;
  display: flex;
  font-size: 1.6rem;
  justify-content: flex-end;
  text-decoration: none;
  width: 100%;
}

.logo-footer-sp {
  display: none;
}

.footer-inner__right {
  max-width: 50%;
  width: 100%;
}

#copyright {
  font-size: 1.4rem;
  text-align: left;
  width: 100%;
  word-break: keep-all;
}

.footer-inner__right ul.menulist {
  align-items: center;
  border-bottom: .1rem solid #e3e3e3;
  display: flex;
  gap: 4rem;
  justify-content: space-between;
  list-style: none;
  padding: 0 0 2rem;
}

.footer-inner__right .menulist li a {
  color: #000;
  font-size: 1.6rem;
  text-decoration: none;
}

  #footer-inner {
    display: flex;
    flex-direction: column;
  }

  #footer-inner p {
    padding: 0;
    width: 100%;
  }

  #footer-inner p span {
    font-size: 1.2rem;
    line-height: 1.4;
  }

  .logo-footer-pc {
    display: none;
  }

  .logo-footer-sp {
    display: block;
    margin-left: 2rem;
  }

  .footer-inner__right {
    max-width: 100%;
    width: 100%;
  }

  .footer-inner__right ul.menulist {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2.2rem;
    padding: 0 0 3rem;
  }

  .footer-inner__right .menulist li a {
    color: #000;
    font-size: 1.6rem;
    font-weight: bold;
    text-decoration: none;
  }

  .page-main a {
    align-items: center;
    justify-content: center;
    padding-top: 2.2rem;
  }

  #copyright {
    font-size: 1.3rem;
    text-align: center;
  }

#pagetop {
  bottom: 3rem;
  display: none;
  position: fixed;
  right: 1.5rem;
  z-index: 5;
}

#pagetop a {
  align-items: center;
  background-color: #007bc1;
  border-radius: 100%;
  box-sizing: border-box;
  display: flex;
  font-size: 2.4rem;
  height: 9.4rem;
  justify-content: center;
  padding: .3rem 0;
  text-align: center;
  text-decoration: none;
  width: 9.4rem;
}

#pagetop i {
  color: #ece952;
  font-size: 3.5rem;
}

#pagetop a:hover {
  filter: alpha(opacity=50);
  -ms-filter: "alpha( opacity=50 )";
  opacity: .5;
}

  #pagetop a {
    height: 4rem;
    width: 4rem;
  }

  #pagetop i {
    font-size: 1.5rem;
  }

.swift-up-text {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
}

.swift-up-text.glow span {
  animation: swiftUp .5s ease-out forwards;
  display: inline-block;
  opacity: 0;
  transform: translateY(100%);
}

@keyframes swiftUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#particles-js {
  height: 100%;
  position: absolute;
  transform-origin: center center;
  width: 100%;
  will-change: transform;
}

#particles {
  height: 100%;
  position: absolute;
  transform-origin: center center;
  width: 100%;
  will-change: transform;
}

#particle-news {
  height: 100%;
  position: absolute;
  transform-origin: top right 18rem;
  width: 100%;
  will-change: transform;
}

.zoom-in {
  animation: zoomIn 1s ease-out;
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

#hero {
  margin: 0 auto;
  max-width: 128rem;
  position: relative;
  text-align: center;
  width: 100%;
}

.video {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  width: 100%;
}

iframe {
  border: unset;
}

.responsive-iframe {
  height: 100%;
  pointer-events: none;
  width: 100%;
}

.banner-content {
  color: #fff;
  font-size: 2rem;
  left: 2.1em;
  position: absolute;
  top: 3.5em;
}

.banner-content h2 {
  font-size: 1em;
  font-weight: bold;
  letter-spacing: .08em;
  line-height: 1.4;
  text-shadow: 0 .3rem .6rem #00000029;
}

.banner-content__des {
  filter: drop-shadow(0 .3rem .6rem #00000029);
}

.banner-content p {
  align-items: center;
  background-color: #fff;
  clip-path: polygon(0% 8%, 95% 11%, 100% 52%, 95% 92%, 0% 94%);
  color: #303030;
  display: flex;
  font-size: 2.3rem;
  justify-content: center;
  letter-spacing: .115rem;
  margin: 1.4rem 0 0;
  position: relative;
}

.overlay {
  align-items: center;
  background: transparent linear-gradient(62deg, #0f659640 0%, #d0e1ea32 40%, #ffffff00 100%) 0% 0% no-repeat padding-box;
  display: flex;
  height: 100%;
  justify-content: center;
  position: absolute;
  top: 0;
  width: 100%;
}

  #hero {
    margin: 0 0 5rem;
  }

  .banner-content {
    bottom: 2rem;
  }

  .banner-content p {
    margin-top: 0;
  }

.main h2 {
  color: #000;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: .2rem;
  line-height: 5.8rem;
  position: relative;
  text-align: center;
  top: -8rem;
}

.title-p {
  color: #007bc1;
  font-family: Arial Black, sans-serif;
  font-size: 11.6rem;
  line-height: 9.5rem;
  text-align: center;
  -webkit-text-fill-color: #fff;
  -webkit-text-stroke-color: #c9eaff;
  -webkit-text-stroke-width: .1rem;
  text-transform: uppercase;
  white-space: nowrap;
}

.sns .title-p {
  text-transform: capitalize;
}

  .title-p {
    font-size: 8rem;
  }

  .main h2 {
    font-size: 2.5rem;
    top: -7.5rem;
  }

  .sns-inner .title-p {
    font-size: 5rem;
  }

  .title-p {
    font-size: 8rem;
  }

  .main h2 {
    font-size: 2.5rem;
  }

  .sns-inner .title-p {
    font-size: 4rem;
  }

  .sns-logo {
    gap: 2rem;
  }

.select_form {
  margin-top: 2rem;
  position: relative;
}

.select-contents-list {
  display: flex;
  justify-content: flex-end;
  position: relative;
  width: 100%;
}

.select_form select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: .1rem solid #e3e3e3;
  border-radius: .6rem;
  cursor: pointer;
  font-size: 1.6rem;
  max-width: 14rem;
  padding: .6rem 1.2rem;
  position: relative;
  width: 100%;
}

.select-contents-list select {
  -webkit-appearance: inherit;
  background-image: url(/wp-content/themes/ac-yamanashi-ja-sp/img/feature/icon-awesome-caret-down.png);
  background-position: right 1.5rem center;
  background-repeat: no-repeat;
  width: 100%;
}

.select_form select:focus-visible {
  outline: unset;
}

.breadcrumb {
  align-items: center;
  background: #f6f6f6;
  border: .1rem solid #e3e3e3;
  display: flex;
}

.breadcrumb-content {
  display: flex;
  margin: 0 auto;
  max-width: 120rem;
  text-align: left;
  width: 100%;
}

.breadcrumb img {
  border: .1rem solid #e3e3e3;
  border-bottom: unset;
  border-right: unset;
  border-top: unset;
  padding: 1.5rem 1.5rem;
}

.breadcrumb span {
  background: #fff;
  border: .1rem solid #e3e3e3;
  border-bottom: unset;
  border-top: unset;
  color: #000;
  font-size: 1.6rem;
  margin: 0;
  padding: 1.5rem 1.5rem;
}

.breadcrumb span a {
  color: #000;
  text-decoration: none;
}

.term-life .list-cat__title span {
  background-color: #feeef0;
}

.term-event .list-cat__title span {
  background-color: #cab8d9;
}

.term-event .list-cat__title span {
  background-color: #cab8d9;
}

.term-study .list-cat__title span {
  background-color: #c9eaff;
}

.term-activity .list-cat__title span {
  background-color: #ec9e51;
}

.term-international .list-cat__title span {
  background-color: #00d084;
}

.term-career .list-cat__title span {
  background-color: #fffebc;
}

.new {
  align-items: center;
  background: #ece952;
  border-radius: 100%;
  color: #007bc1;
  display: flex;
  font-size: 1.6rem;
  height: 5.6rem;
  justify-content: center;
  position: absolute;
  right: 2rem;
  top: 2rem;
  width: 5.6rem;
  z-index: 5;
}

  .breadcrumb {
    padding-left: 0;
  }

#about {
  box-sizing: border-box;
  margin: 4rem auto 6rem;
  max-width: 100%;
  position: relative;
  width: 100%;
}

.about-inner {
  box-sizing: border-box;
  margin: 12rem auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.about-content {
  align-items: center;
  display: flex;
  justify-content: space-around;
  position: relative;
  width: 100%;
}

.about-content::after {
  background-color: #ebf4ff;
  content: "";
  height: 32.7rem;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.about-detail {
  align-items: center;
  display: flex;
  justify-content: space-between;
  max-width: 133.8rem;
  width: 100%;
}

.about-content__img {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  justify-content: space-between;
  max-width: 69.5rem;
  position: relative;
}

.about-content__img img {
  border-radius: 2rem;
  box-shadow: 0 .3rem .6rem #00000048;
  max-width: 100%;
}

.about-content__img img:nth-child(1) {
  max-width: 18.7rem;
  position: relative;
  top: -8rem;
}

.about-content__img img:nth-child(2) {
  max-width: 13.6rem;
  position: relative;
  top: -3rem;
}

.about-content__img img:nth-child(3) {
  max-width: 13.6rem;
  position: relative;
  top: -6rem;
}

.about-content__img img:nth-child(4) {
  max-width: 18.7rem;
  position: relative;
  top: -2rem;
}

.about-content__text {
  margin: 0 auto;
  max-width: 40.6rem;
}

.about-content__text p {
  color: #000;
  font-feature-settings: "palt" on;
  font-size: 1.6rem;
  max-width: 33.3rem;
  padding-bottom: 2rem;
  text-align: left;
}

.about-content__text a {
  border: .1rem solid #007bc1;
  border-radius: .6rem;
  color: #007bc1;
  font-size: 2rem;
  padding: 1.45rem 5.4rem;
  position: relative;
  text-decoration: none;
  text-decoration: underline;
  text-decoration-color: #ece952;
  text-decoration-style: double;
  text-decoration-style: solid;
  text-underline-offset: -.1rem;
}

.about-content__text a::after {
  background: currentColor;
  background-color: #007bc1;
  box-sizing: border-box;
  content: "";
  display: block;
  height: .1rem;
  position: absolute;
  right: -3.5rem;
  top: 2.6rem;
  width: 6.5rem;
}

.about-content__text a::before {
  background-color: #007bc1;
  content: "";
  height: .1rem;
  position: absolute;
  right: -3.5rem;
  top: 2.2rem;
  transform: rotate(26deg);
  width: 1.5rem;
}

  .about-inner {
    margin: 0;
  }

  .about-content::after {
    height: 100%;
  }

  .about-content {
    box-sizing: border-box;
    margin-top: 6.5rem;
    padding: 0 1.5rem;
  }

  .about-detail {
    flex-direction: column;
  }

  .about-content__text {
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
  }

  .about-content__text p {
    max-width: 100%;
  }

  .about-content__text a {
    display: block;
    max-width: 28rem;
    padding: 1rem 2rem;
    position: relative;
    width: 100%;
  }

  .about-content__text a::after {
    right: -2rem;
    width: 4rem;
  }

  .about-content__text a::before {
    right: -2rem;
  }

  .about-content__img img:nth-child(5) {
    width: 100%;
  }

/* ****************************************************************** */
/* NEWS SLIDER */
/* ****************************************************************** */
.news-slider {
  box-sizing: border-box;
  margin: 0 auto 8rem;
  max-width: 100%;
  position: relative;
  width: 100%;
}

.news-slider .title {
  margin: 0 auto;
  padding-left: 25rem;
  padding-right: 25rem;
  position: relative;
  text-align: left;
}

.news-slider .title-p {
  position: relative;
  text-align: left;
  text-transform: capitalize;
}

.news-slider .title-p::after {
  display: none;
}

.news-slider h2 {
  left: 5rem;
  top: -7rem;
}

.news-inner {
  padding: 0;
  position: relative;
}

.wheel-slide-full {
  padding: 0 1.5rem 0 1rem;
}

.wheel-slider::after {
  background-color: #ebF4ff;
  bottom: 0;
  content: "";
  height: 46%;
  left: 0;
  margin-bottom: 0;
  position: absolute;
  top: 46.5rem;
  width: 100%;
  z-index: -1;
}

.flex {
  display: flex;
}

.wheel-slider {
  overflow: hidden;
  padding-bottom: 0;
  position: relative;
}

.wheel-slider-wrap .swiper-wrapper {
  padding: 0;
}

.wheel-slider .item {
  flex-grow: 0;
  flex-shrink: 0;
  list-style: none;
}

.wheel-slider-scroll {
  background: #007bc1;
  height: .1rem;
  left: 25.5rem;
  position: absolute;
  top: 65%;
  width: 74%;
}

.wheel-slider .swiper-scrollbar-drag {
  background-color: #ece952;
  height: .6rem;
  position: absolute;
  top: -.3rem;
  width: 10rem;
}

.item a {
  position: relative;
  text-decoration: none;
}

.item-photo img {
  border-radius: 2rem;
  height: 24.3rem;
  max-width: 34.5rem;
  object-fit: cover;
  width: 100%;
}

.item-title {
  color: #404040;
  display: flex;
  font-size: 1.7rem;
  gap: 1rem;
  letter-spacing: .085rem;
  padding: 1.5rem .5rem;
  text-align: left;
}

.item-tags {
  display: flex;
  flex-direction: column;
  max-width: 25%;
  width: 100%;
}

.item-title span,
.item-title time {
  color: #000;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: .08rem;
}

.item-title__desc {
  align-items: center;
  align-items: flex-start;
  display: flex;
}

.item-title__desc p {
  font-feature-settings: "palt" on;
  font-size: 1.6rem;
  margin: 0;
}

.news-btn {
  background: #007bc1;
  border: unset;
  border-radius: 5rem;
  cursor: pointer;
  margin: 0 auto;
  max-width: 38.6rem;
  position: relative;
  width: 100%;
}

.news-btn a {
  color: #fff;
  display: block;
  font-size: 1.6rem;
  padding: 2rem 0;
  position: relative;
  text-decoration: none;
  transition: all .2s ease;
  width: 100%;
}

.news-btn a span {
  align-items: center;
  background-color: #fff;
  border-radius: 100%;
  color: #007bc1;
  display: flex;
  font-size: 1.4rem;
  height: 5.4rem;
  justify-content: center;
  position: absolute;
  right: .7rem;
  right: 0;
  top: .7rem;
  transform: translateX(-.9rem);
  transition: all .2s ease-in-out;
  width: 5.4rem;
}

.news-btn a span i {
  align-items: center;
  display: flex;
  justify-content: center;
  left: 46%;
  position: absolute;
}

  .news-slider .title {
    padding: 0 1.5rem;
  }

  .wheel-slider::after {
    display: none;
  }

  .wheel-slider-wrap {
    margin-bottom: 0;
  }

  .wheel-slider-scroll {
    background: #007bc1;
    height: .1rem;
    left: 1.5rem;
    position: absolute;
    top: 65%;
    width: 94%;
  }

  .news-slider .title-p::after {
    display: none;
  }

  .news-btn {
    max-width: 31.5rem;
  }

  .item-photo img {
    border-radius: 2rem;
    height: 37.4rem;
    max-width: 74rem;
    object-fit: cover;
    width: 100%;
  }

  .news-slider .title {
    padding: 0;
  }

  .wheel-slider-scroll {
    background: #007bc1;
    height: .1rem;
    left: .5rem;
    position: absolute;
    top: 65%;
    width: 99%;
  }

  .item-photo img {
    height: 24.3rem;
    max-width: 34.4rem;
  }

/*  **************************************************************************** */
/* SNS */
/*  **************************************************************************** */

.sns {
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 100%;
}

.sns-inner {
  padding: 17.3rem 0 0;
  position: relative;
  width: 100%;
}

.sns-inner .title-p {
  text-transform: capitalize;
}

.sns-inner h2 {
  top: -6.5rem;
}

.sns-logo {
  display: flex;
  gap: 3rem;
  justify-content: center;
  position: relative;
  width: 100%;
}

.sns-logo a {
  align-items: center;
  border-radius: 100%;
  color: #fff;
  display: flex;
  flex-direction: row;
  font-size: 5rem;
  height: 9rem;
  justify-content: center;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  transition: .2s ease-in;
  width: 9rem;
}

.sns-logo a {
  background: transparent;
  box-shadow: 0 .3rem .6rem #00000029;
}

.sns-logo a.fb {
  background: #4676ed;
  transition: .2s ease-in;
}

.sns-logo a.youtube {
  background: #da0000;
  transition: .2s ease-in;
}

.sns-logo img {
  background: #000;
  max-width: 4.5rem;
  max-width: 100%;
  padding: 2rem 2.25rem;
}

.logo-black {
  background-color: #fff;
  display: none;
}

.sns-logo a {
  text-decoration: none;
}

.sns-logo a:hover .sns-logo .fb i {
  background: #4676ed;
}

.sns-logo a.spacex img {
  background: #fff;
}

.sns-logo a.spacex .logo-white {
  display: none;
}

.sns-logo a.spacex .logo-black {
  display: block;
}

.banner-subpage {
  align-items: center;
  display: flex;
  position: relative;
}

.banner-subpage img {
  opacity: 0;
  width: 100%;
}

.banner-subpage-img {
  background-image: url('/wp-content/themes/ac-yamanashi-ja-sp/img/feature/subpage.png');
  background-position: center center;
  background-size: cover;
  height: 100%;
  height: 14rem;
}

.banner-subpage-title {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  position: absolute;
  width: 100%;
}

.banner-subpage-title h1 {
  color: #fff;
  font-size: 4rem;
  font-weight: bold;
  line-height: 4rem;
  text-shadow: 0 .3rem .6rem #00000029;
}

  .banner-subpage {
    margin-top: 0;
  }

  .banner-subpage-title h1 {
    font-size: 2.8rem;
  }

  .sns-inner {
    padding: 6.8rem 0 0;
    position: relative;
    width: 100%;
  }

  .sns-inner h2 {
    top: -7.5rem;
  }

  .sns-logo {
    top: -5rem;
  }

  .banner-subpage {}

  .banner-subpage-title h1 {
    font-size: 2.8rem;
  }

  .sns-inner {
    padding: 0;
  }

.head-title {
  align-items: center;
  display: flex;
  max-width: 120rem;
  position: relative;
  z-index: 2;
}

.head-title h2 {
  align-items: center;
  background-color: #f4e653;
  border: .1rem solid #007bc1;
  border-radius: .6rem;
  color: #007bc1;
  display: flex;
  font-size: 3rem;
  justify-content: center;
  line-height: 2.7rem;
  margin: 0 auto;
  padding: .8rem 3.5rem;
  position: relative;
  text-align: center;
}

.head-title h2::before {
  background-image: url(/wp-content/themes/ac-yamanashi-ja-sp/img/feature/h2-img.png);
  background-size: 3.2rem;
  content: "";
  height: 1.5rem;
  margin: 0 auto;
  max-width: 3.2rem;
  position: absolute;
  top: -1.7rem;
  width: 3.2rem;
  z-index: 222;
}

.head-title::before,
.head-title::after {
  content: "";
  height: .3rem;
  max-width: 51rem;
  width: 100%;
  z-index: -1;
}

.head-title::before,
.head-title::after {
  content: "";
  height: .3rem;
  max-width: 57rem;
  width: 100%;
  z-index: -1;
}

.head-title::before {
  background-color: #007bc1;
  content: "";
  left: 0;
  position: absolute;
}

.head-title::after {
  background-color: #ece952;
  content: "";
  position: absolute;
  right: -.6rem;
}

.main-content {
  box-sizing: border-box;
  margin: 0 auto;
  margin-top: 5.5rem;
  max-width: 120rem;
  position: relative;
  width: 100%;
}

.list-cat__title {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0 1.5rem .6rem;
}

.list-cat__title span {
  border-radius: .6rem;
  color: #000;
  font-size: 1.6rem;
  line-height: 1.6rem;
  padding: .45rem 1rem;
}

.cards_item time {
  color: #000;
  font-size: 1.6rem;
  line-height: 1.6rem;
  position: relative;
  text-decoration: underline;
  text-decoration-color: #000;
  text-decoration-style: solid;
  text-underline-offset: .2rem;
}

.cards {
  display: grid;
  gap: 3rem 3.8rem;
  grid-template-columns: repeat(auto-fit, minmax(36.5rem, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.cards_item {
  display: flex;
  flex-direction: column;
}

.card_image {
  height: 12rem;
  position: relative;
}

.card_image img {
  border-top-left-radius: 2rem;
  border-top-right-radius: 2rem;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.card {
  border-radius: 2rem;
  box-shadow: 0 0 .8rem #00000016;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
}

.card_content {
  padding: 1.5rem 2rem;
  text-align: left;
}

.list-cat li a {
  position: relative;
  text-decoration: none;
}

.list-cat li a p {
  color: #000;
  font-feature-settings: "palt" on;
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0;
  text-align: left;
}

  .main-content {
    max-width: 100%;
    padding: 0 1.5rem;
    width: 100%;
  }

  .head-title h2 {
    font-size: 2rem;
    padding: .9rem 3.5rem;
  }

  .head-title::before,
  .head-title::after {
    max-width: 23rem;
  }

  .main-section {
    padding-top: 3rem;
  }

  .cards {
    gap: 3rem 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(21.5rem, 1fr));
  }

  .list-cat__title {
    justify-content: center;
  }

  .cards {
    gap: 3rem 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }

  .cards {
    gap: 3rem 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }

.list-news {
  margin: .5rem -1.5rem;
  padding: 0;
}

.list-news li {
  align-items: start;
  border-bottom: .1rem solid #e3e3e3;
  display: grid;
  grid-template-columns: 26% 74%;
  justify-content: space-between;
  list-style: none;
  padding: 2.5rem 0 4.5rem;
}

.list-news li a {
  color: #000;
  text-decoration: none;
}

.list-news li a h2 {
  font-feature-settings: "palt" on;
  font-size: 2rem;
  font-weight: bold;
}

.list-news__time time {
  display: flex;
  flex-direction: column;
  font-size: 4rem;
  justify-content: center;
  line-height: 1;
  line-height: 4rem;
  padding-left: 13rem;
  position: relative;
  text-align: left;
}

.list-news__time time::after {
  background-color: #ece952;
  content: "";
  height: .2rem;
  left: 0;
  position: absolute;
  top: 2.5rem;
  width: 8.1rem;
}

.list-news__time time span {
  font-size: 1.6rem;
  line-height: 1.5rem;
}

.list-news__content {
  text-align: left;
}

.list-news__content p {
  font-feature-settings: "palt" on;
  font-size: 1.6rem;
  font-weight: normal;
  margin: 0;
}

  .list-news {
    margin: 0;
  }

  .list-news li {
    align-items: start;
    border-bottom: .1rem solid #e3e3e3;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    justify-content: space-between;
    list-style: none;
    padding: 1rem 0 2.5rem;
  }

  .list-news li a h2 {
    font-size: 1.5rem;
    padding-bottom: 2.5rem;
  }

  .list-news__content p {
    font-size: 1.5rem;
  }

  .list-news__content {
    padding-left: 1.5rem;
    text-align: left;
  }

  .list-news__time time {
    padding-bottom: 1.3rem;
    padding-left: 5rem;
  }

  .list-news__time time::after {
    width: 4rem;
  }

  .list-news__time time::after {
    top: 2.5rem;
  }

.wp-pagenavi-sp {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 4.3rem;
  width: 100%;
}

.wp-pagenavi-sp a {
  color: #000;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
}

.wp-pagenavi-sp .prev,
.wp-pagenavi-sp .next {
  background-color: #0f6596;
  border-radius: 1rem;
  color: #fff;
  font-size: 1.5rem;
  padding: 1.3rem 1.6rem;
  text-decoration: none;
}

.wp-pagenavi-sp .current {
  color: #ece952;
  font-size: 1.5rem;
}

.pagenavi-sp-prev {
  align-items: center;
  display: flex;
  width: 100%;
}

.pagenavi-sp-next {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

#main-inner {
  margin: 5.5rem auto;
  max-width: 120rem;
}

.post-info {
  margin: 5rem auto 1rem;
  max-width: 120rem;
  text-align: right;
  width: 100%;
}

.date {
  display: inline-block;
  margin-right: 1.5rem;
}

.tags {
  display: inline-block;
}

.tags a {
  color: #303030;
  font-size: .9rem;
  text-decoration: none;
}

.tags a:hover {
  background-color: #007bc1;
  color: #fff;
}

.item-tag {
  display: inline-block;
  margin-right: .25rem;
}

  .post-info {
    margin: 7rem auto 1rem;
  }

  .date {
    display: block;
    margin-right: 0;
  }

  .tags {
    display: block;
  }

.post {
  padding: 0 2rem 2rem;
  text-align: left;
}

.head-title .post-title {
  line-height: 1.2;
  max-width: 80rem;
}

.post h2 {
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.4;
}

#lightbox img {
  max-width: 100%;
  height: auto;
}

/*¡¡Ó›ÊÂ¥¹¥¿¥¤¥ë */

.contents {
  font-size: 1.6rem;
  overflow: hidden;

  h1 {
    width: fit-content;
    max-width: 30.666em;
    align-items: center;
    background-color: #f4e653;
    border: .1rem solid #007bc1;
    border-radius: .2em;
    color: #007bc1;
    display: flex;
    font-size: 1.875em;
    justify-content: center;
    line-height: .9em;
    margin: 2em auto 1em;
    padding: .2666em 1.1666em;
    position: relative;
    text-align: center;
    font-weight: normal;

    &::before {
      content: "";
      display: block;
      position: absolute;
      z-index: -1;
      width: 100vw;
      height: .1em;
      background: linear-gradient(to right, #007bc1 50%, #ece952 50%);
    }

    &::after {
      background-image: url(/wp-content/themes/ac-yamanashi-ja-sp/img/feature/h2-img.png);
      background-size: 1.0666em;
      content: "";
      height: .5em;
      margin: 0 auto;
      max-width: 1.0666em;
      position: absolute;
      top: -.5666em;
      width: 1.0666em;
      z-index: 222;
    }
  }

  h2 {
    background-color: #fff;
    font-size: 1.5625em;
    margin: 2em 0 1em;
    padding: .2em .5em;
    width: fit-content;
    border-radius: .24em;
    font-weight: bold;
    position: relative;
    line-height: 1.3;

    &::before {
      content: "";
      display: block;
      position: absolute;
      height: .12em;
      background: linear-gradient(to right, #007bc1 50%, #ece952 50%);
      bottom: 0;
      left: 0;
      right: 0;
    }

    &::after {
      content: "";
      display: block;
      background: #ECE952;
      height: calc(tan(60deg) * .44em / 2);
      width: .4em;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      position: absolute;
      left: 0;
      right: 0;
      bottom: -.24em;
      margin: auto;
    }
  }

  h3 {
    background-color: #fff;
    border: #ECE952 solid .2rem;
    font-size: 1.5625em;
    margin: 2em 0 1em;
    padding: .1em 1.4em;
    width: fit-content;
    color: #007BC1;
    box-shadow: .16em .2em .04em #ECE952;
    border-radius: .24em;
    font-weight: bold;

    &::before {
      display: none;
    }

    &::after {
      display: none;
    }
  }

  h4 {
    background-color: #fff;
    border: none;
    font-size: 1em;
    font-weight: bold;
    position: relative;
    margin: 2em 0 1em;
    margin-left: 1em;

    &::before {
      content: "";
      position: absolute;
      top: .6em;
      left: -1em;
      display: block;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDExIDEyIj4KICA8ZyBpZD0i44Kw44Or44O844OXXzE4NTUiIGRhdGEtbmFtZT0i44Kw44Or44O844OXIDE4NTUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zNTkgLTEzNDgpIj4KICAgIDxnIGlkPSLplbfmlrnlvaJfMTQ4OCIgZGF0YS1uYW1lPSLplbfmlrnlvaIgMTQ4OCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzU5IDEzNDgpIiBmaWxsPSIjZWNlOTUyIiBzdHJva2U9IiNlY2U5NTIiIHN0cm9rZS13aWR0aD0iMSI+CiAgICAgIDxyZWN0IHdpZHRoPSI4IiBoZWlnaHQ9IjgiIHN0cm9rZT0ibm9uZSIvPgogICAgICA8cmVjdCB4PSIwLjUiIHk9IjAuNSIgd2lkdGg9IjciIGhlaWdodD0iNyIgZmlsbD0ibm9uZSIvPgogICAgPC9nPgogICAgPGcgaWQ9IumVt+aWueW9ol8xNDg5IiBkYXRhLW5hbWU9IumVt+aWueW9oiAxNDg5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNjQgMTM1NCkiIGZpbGw9IiMwMDdiYzEiIHN0cm9rZT0iIzAwN2JjMSIgc3Ryb2tlLXdpZHRoPSIxIj4KICAgICAgPHJlY3Qgd2lkdGg9IjYiIGhlaWdodD0iNiIgc3Ryb2tlPSJub25lIi8+CiAgICAgIDxyZWN0IHg9IjAuNSIgeT0iMC41IiB3aWR0aD0iNSIgaGVpZ2h0PSI1IiBmaWxsPSJub25lIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K");
      width: .6875em;
      height: .75em;
    }

    &::after {
      display: none;
    }
  }

  h5 {
    background-color: #F1EF85;
    border: #7E7E7E solid .1rem;
    font-size: 1em;
    margin: 2em 0 1em;
    padding: .3em 1.2em;
    width: fit-content;
    border-radius: .375em;
    font-weight: bold;
    color: unset;
    position: relative;

    &::before {
      content: "";
      display: block;
      background: #7E7E7E;
      height: calc(tan(60deg) * 1em / 2);
      width: 1em;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      position: absolute;
      left: .91em;
      bottom: -.63em;
      z-index: -1;
    }

    &::after {
      content: "";
      display: block;
      background: #F1EF85;
      height: calc(tan(60deg) * .625em / 2);
      width: .625em;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      position: absolute;
      left: 1.1em;
      bottom: -.52em;
    }
  }

  h6 {
    background-color: #C9EAFF;
    border: #7E7E7E solid .1rem;
    font-size: 1em;
    margin: 2em 0 1em;
    padding: .3em 1.2em;
    width: fit-content;
    border-radius: .6rem;
    font-weight: bold;
    color: unset;
    position: relative;

    &::before {
      content: "";
      display: block;
      background: #7E7E7E;
      height: calc(tan(60deg) * 1em / 2);
      width: 1em;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      position: absolute;
      left: .91em;
      bottom: -.63em;
      z-index: -1;
    }

    &::after {
      content: "";
      display: block;
      background: #C9EAFF;
      height: calc(tan(60deg) * .625em / 2);
      width: .625em;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      position: absolute;
      left: 1.1em;
      bottom: -.52em;
    }
  }
  
  p {
    font-size: 1em;
  }

  tr {
    &:nth-child(even) {
      background-color: #f6f6f6;
    }
  }

  th, td {
    border: .1rem solid #9f9f9f;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  pre {
    font-family: unset;
    margin: 1em 0;
    white-space: pre-wrap;
    color: #E6312E;
    font-size: .75em;
  }
  
  .alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
  }
  
  .alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
  }
  
  .aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  
  img.alignleft {
    float: left;
    margin-right: 1.5em;
    margin-bottom: 1em;
  }

    img.alignleft {
      max-width: 50%;
    }
  
  img.alignright {
    float: right;
    margin-left: 1.5em;
    margin-bottom: 1em;
  }
  
    img.alignright {
      max-width: 50%;
    }
  
  .wp-caption,
  .gallery-caption {
    color: #666;
    max-width: 100%;
  }
  
  .wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  
  .wp-caption .wp-caption-text {
    margin: .8075em 0 0;
    line-height: 1.2;
    font-size: .875em;
  }
  
  .gallery {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(2, 1fr);
    justify-content: space-around;
    margin: auto;
    max-width: 120rem;
  }
  
  .gallery .gallery-item {
    margin: 0;
    text-align: center;
    width: 100% !important;
  }
  
  .gallery img {
    border-radius: .6rem;
    max-width: 28rem;
    width: 100%;
    box-sizing: border-box;
  }
  
  .gallery .gallery-caption {
    font-size: 1.6rem;
    margin-left: 0;
  }
  
  #gallery-1 br {
    display: none;
  }

}

.return-top {
  margin: 0 auto 4rem;
  max-width: 108rem;
  width: 100%;
}

.return-top a {
  background-color: #fff;
  border: .1rem solid #bbb;
  color: #007bc1;
  display: block;
  padding: .5rem;
  text-decoration: none;
}

.return-top a:hover {
  background-color: #007bc1;
  border: .1rem solid #007bc1;
  color: #fff;
}

@media screen and (max-width: 640px) {
  .head-title .post-title {
    max-width: 19.4rem;
    padding: .9rem 1.5rem;
  }
}

/* Youtube Âñ¤áÞz¤ß */

.contents .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.contents .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
