@charset "UTF-8";
/*メニュー、テキストなど*/
.for-pc {
  display: block;
}

.for-sp {
  display: none;
}

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

  .for-sp {
    display: block;
  }
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
  position: relative;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

* {
  box-sizing: border-box;
}

*:before, *:after {
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}

body {
  font-size: 1.4rem;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  line-height: 1.76;
  letter-spacing: 1px;
  color: #343434;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  -webkit-text-size-adjust: 100%;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  object-fit: cover;
}

svg {
  width: auto;
  height: auto;
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

ul {
  list-style: none;
}

button {
  background: transparent;
  border: none;
  border-radius: 0;
  cursor: pointer;
  outline: none;
  padding: 0;
}

a {
  display: inline-block;
  color: #343434;
  opacity: 1;
  text-decoration: none;
  cursor: pointer;
}

input {
  border-radius: 0;
}

.container {
  width: 100%;
  box-sizing: border-box;
}

@-webkit-keyframes menu-barTop {
  0% {
    -webkit-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(7px) rotate(0);
    transform: translateY(7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
@keyframes menu-barTop {
  0% {
    -webkit-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(7px) rotate(0);
    transform: translateY(7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes menu-barBottom {
  0% {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-7px) rotate(0);
    transform: translateY(-7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
@keyframes menu-barBottom {
  0% {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-7px) rotate(0);
    transform: translateY(-7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes active-menu-barTop {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(7px) rotate(0);
    transform: translateY(7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
  }
}
@keyframes active-menu-barTop {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(7px) rotate(0);
    transform: translateY(7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
  }
}
@-webkit-keyframes active-menu-barBottom {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-7px) rotate(0);
    transform: translateY(-7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
  }
}
@keyframes active-menu-barBottom {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-7px) rotate(0);
    transform: translateY(-7px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
  }
}
/* --------------------------------
 * 共通アイテム
 * -------------------------------- */
.entry-button {
  text-align: center;
  padding: 10vh 0;
}
.entry-button :hover {
  opacity: 0.7;
}
.entry-button button {
  color: white;
  width: 20vw;
  height: 10vh;
  z-index: 3000;
  font-family: "Arial";
  text-shadow: 1px 1px 1px gray;
  border-radius: 15px;
  font-size: 2vw;
  margin-top: 1vh;
  outline: none;
  cursor: pointer;
  border: none;
  display: inline-block;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
}

/* --------------------------------
 * 共通アイテム smart phone
 * -------------------------------- */
/* --------------------------------
 * jQuery
 * -------------------------------- */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(200px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeRight {
  animation-name: fadeRightAnime;
  animation-duration: 3s;
  animation-fill-mode: forwarda;
  opacity: 1;
}

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(400px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeLeft {
  animation-name: fadeLeftAnime;
  animation-duration: 3s;
  animation-fill-mode: forwarda;
  opacity: 1;
}

@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-400px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.page-head {
  z-index: -100;
}

/* ------------------------------------------------
#. Layouts :prefix[l-]
------------------------------------------------ */
#pg-error .search-form {
  margin-top: 5%;
}

#pg-error .search-form .search-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
}

#pg-error .search-form .search-box .search-input {
  padding: 0 18px;
  width: 412px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  border: 1px solid #d0d0d0;
  background-color: transparent;
  outline: none;
}

#pg-error .search-form .search-box .button-submit {
  margin-left: 10px;
  padding: 0;
  width: auto;
  min-width: 90px;
  font-size: 1.6rem;
  color: #fff;
  background-color: #333;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-error .search-form {
    margin-top: 11.4%;
  }

  #pg-error .search-form .search-box {
    height: 35.5px;
  }

  #pg-error .search-form .search-box .search-input {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 14px;
    width: auto;
    font-size: 1.4rem;
  }

  #pg-error .search-form .search-box .button-submit {
    min-width: 80px;
    font-size: 1.4rem;
  }
}
#company {
  background-image: url("../images/common/back-2.jpeg");
  background-repeat: no-repeat;
  background-size: cover;
}

#pg-company .infoList {
  margin-top: calc(-79px + 5%);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#pg-company .infoList-item {
  margin-top: 79px;
  width: 48.4375%;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

#pg-company .infoList-item:hover {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

#pg-company .infoList-item:hover .info-body .title, #pg-company .infoList-item:hover .info-body .seeDetail {
  color: #127dd6;
}

#pg-company .infoList-item:hover .info-body .seeDetail::after {
  background-image: url("../images/svg/icon-next-hover.svg");
}

#pg-company .infoList-item .info-link {
  width: 100%;
}

#pg-company .infoList-item .info-body {
  padding: 12px 20px;
}

#pg-company .infoList-item .info-body .title {
  font-size: 2.2rem;
  font-weight: 700;
}

#pg-company .infoList-item .info-body .lead {
  margin: 7px 0 36px;
  font-size: 1.6rem;
}

#pg-profile .dataList-inner, #pg-history .dataList-inner {
  margin-top: 5.4%;
}

#pg-profile .dataList-inner dl, #pg-history .dataList-inner dl {
  padding: 16px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  border-top: 1px solid #d0d0d0;
}

#pg-profile .dataList-inner dl:last-child, #pg-history .dataList-inner dl:last-child {
  border-bottom: 1px solid #d0d0d0;
}

#pg-profile .dataList-inner dt, #pg-history .dataList-inner dt {
  width: 15%;
  font-size: 1.6rem;
}

#pg-profile .dataList-inner dd, #pg-history .dataList-inner dd {
  width: 85%;
  font-size: 1.6rem;
}

#pg-business .page-lead {
  margin-top: 5%;
  font-size: 1.8rem;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.25em;
}

#pg-business .overview-box {
  margin-top: 11%;
}

#pg-business .overview-box .overview-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

#pg-business .overview-box .overview-item + .overview-item {
  margin-top: 13%;
}

#pg-business .overview-box .overview-item .overview-image {
  width: 33.33333%;
}

#pg-business .overview-box .overview-item .overview-body {
  padding-left: 27px;
  width: 66.66666%;
  letter-spacing: 0.15em;
}

#pg-business .overview-box .overview-item .overview-body .title {
  font-size: 2.2rem;
  font-weight: 700;
}

#pg-business .overview-box .overview-item .overview-body .caption {
  margin-top: 13px;
  font-size: 1.6rem;
  letter-spacing: 0.15em;
}

#pg-access .googleMap-container {
  margin-top: 5%;
}

#pg-access .googleMap-container .map {
  width: 100%;
  height: 350px;
}

#pg-access .access-detail {
  margin-top: 3.3%;
}

#pg-access .access-detail dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  line-height: 1.4;
}

#pg-access .access-detail dl + dl {
  margin-top: 2.4%;
}

#pg-access .access-detail dl dt {
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  padding-left: 5px;
  width: 8.3%;
  font-size: 1.4rem;
  border-right: 1px solid #d0d0d0;
}

#pg-access .access-detail dl dd {
  padding-left: 16px;
  width: 91.7%;
  font-size: 1.4rem;
}

#pg-access .access-detail dl dd span {
  display: block;
}

#pg-access .access-detail dl dd span + span {
  margin-top: 11px;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-company .infoList {
    margin-top: calc(-32.5px + 10%);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #pg-company .infoList-item {
    margin-top: 32.5px;
    width: 100%;
  }

  #pg-company .infoList-item .info-image img {
    height: 120px;
  }

  #pg-company .infoList-item .info-body {
    padding: 12px;
  }

  #pg-company .infoList-item .info-body .title {
    font-size: 1.3rem;
  }

  #pg-company .infoList-item .info-body .lead {
    margin: 7px 0 22px;
    font-size: 1.2rem;
  }

  #pg-profile .dataList-inner {
    margin-top: 4.8%;
  }

  #pg-profile .dataList-inner dl {
    padding: 14px 0;
    border-top: none;
  }

  #pg-profile .dataList-inner dl:last-child {
    border-bottom: none;
  }

  #pg-profile .dataList-inner dt {
    width: 26%;
    border-right: 1px solid #d0d0d0;
    font-size: 1.2rem;
    font-weight: 700;
  }

  #pg-profile .dataList-inner dd {
    padding-left: 6%;
    width: 74%;
    font-size: 1.2rem;
  }

  #pg-history .dataList-inner {
    margin-top: 4.8%;
  }

  #pg-history .dataList-inner dl {
    padding: 11px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    border-top: none;
    border-bottom: 1px solid #d0d0d0;
  }

  #pg-history .dataList-inner dt {
    width: 100%;
    font-size: 1.2rem;
    font-weight: 700;
  }

  #pg-history .dataList-inner dd {
    margin-top: 2px;
    width: 100%;
    font-size: 1.2rem;
  }

  #pg-business .page-lead {
    margin-top: 8%;
    font-size: 1.2rem;
    line-height: 1.8;
    letter-spacing: 0;
  }

  #pg-business .overview-box {
    margin-top: 17%;
  }

  #pg-business .overview-box .overview-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }

  #pg-business .overview-box .overview-item + .overview-item {
    margin-top: 15%;
  }

  #pg-business .overview-box .overview-item .overview-image {
    margin-top: 4%;
    width: 100%;
  }

  #pg-business .overview-box .overview-item .overview-image img {
    height: 145px;
  }

  #pg-business .overview-box .overview-item .overview-body {
    padding-left: 0;
    width: 100%;
  }

  #pg-business .overview-box .overview-item .overview-body .title {
    font-size: 1.6rem;
  }

  #pg-business .overview-box .overview-item .overview-body .caption {
    margin-top: 6px;
    font-size: 1.2rem;
  }

  #pg-access .googleMap-container {
    margin-top: 9%;
  }

  #pg-access .googleMap-container .map {
    height: 180px;
  }

  #pg-access .access-detail {
    margin-top: 5%;
  }

  #pg-access .access-detail dl {
    line-height: 1.8;
  }

  #pg-access .access-detail dl + dl {
    margin-top: 3%;
  }

  #pg-access .access-detail dl dt {
    padding-left: 0;
    width: 19%;
    font-size: 1.2rem;
  }

  #pg-access .access-detail dl dd {
    width: 81%;
    font-size: 1.2rem;
  }

  #pg-access .access-detail dl dd span + span {
    margin-top: 0;
  }
}
#pg-contact {
  text-align: center;
}

#pg-contact .lead {
  margin-top: 5%;
  font-size: 1.8rem;
}

#pg-contact .lead strong {
  font-weight: 700;
}

#pg-contact .lead a {
  text-decoration: underline;
}

#pg-contact .lead a:hover {
  color: #127dd6;
}

#pg-contact .form-inner {
  margin: 8% auto 5%;
  width: 75%;
}

#pg-contact .form-inner .contact-form {
  margin: auto;
}

#pg-contact .form-inner .contact-form .input-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  text-align: left;
}

#pg-contact .form-inner .contact-form .input-box:not(:first-child) {
  margin-top: 6.7%;
}

#pg-contact .form-inner .contact-form .input-box .label-area {
  padding: 6px 0;
  width: 25%;
  font-size: 1.6rem;
}

#pg-contact .form-inner .contact-form .input-box .input-area {
  width: 75%;
  color: #d0d0d0;
  position: relative;
}

#pg-contact .form-inner .contact-form .input-box .input-area input {
  padding: 9px 12px;
  width: 100%;
  font-size: 1.6rem;
  color: #d0d0d0;
  border: 1px solid #d0d0d0;
}

#pg-contact .form-inner .contact-form .input-box .input-area textarea {
  resize: none;
  padding: 9px 12px;
  width: 100%;
  height: 243px;
  font-size: 1.6rem;
  color: #d0d0d0;
  border: 1px solid #d0d0d0;
}

#pg-contact .form-inner .contact-form .input-box .input-area input:focus, #pg-contact .form-inner .contact-form .input-box .input-area textarea:focus {
  outline: none;
  color: #343434;
  border: 1px solid #127dd6;
  box-shadow: 0 0 1px 0 rgba(18, 125, 214, 0.45);
}

#pg-contact .form-inner .contact-form .input-box .input-area .input-error {
  display: none;
  position: absolute;
  bottom: -30px;
  left: 0;
  color: #c00;
}

#pg-contact .form-inner .contact-form .input-box .input-area .input-error.wpcf7-not-valid-tip {
  display: block;
}

#pg-contact .form-inner .contact-form .action-box {
  margin-top: 7%;
}

#pg-contact .form-inner .note {
  margin-top: 4%;
}

#pg-contact .form-inner .note small {
  font-size: 1.4rem;
  line-height: 2.4;
  letter-spacing: 0.2em;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-contact .lead {
    margin-top: 8.8%;
    font-size: 1.2rem;
  }

  #pg-contact .form-inner {
    margin: 18% auto 0;
    width: 100%;
  }

  #pg-contact .form-inner .contact-form .input-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #pg-contact .form-inner .contact-form .input-box:not(:first-child) {
    margin-top: 6.7%;
  }

  #pg-contact .form-inner .contact-form .input-box .label-area {
    padding: 6px 0;
    width: 100%;
    font-size: 1.6rem;
  }

  #pg-contact .form-inner .contact-form .input-box .input-area {
    width: 100%;
  }

  #pg-contact .form-inner .contact-form .input-box .input-area input {
    padding: 13px 18px;
    font-size: 1.4rem;
  }

  #pg-contact .form-inner .contact-form .input-box .input-area textarea {
    padding: 13px 18px;
    height: 160px;
    font-size: 1.4rem;
  }

  #pg-contact .form-inner .contact-form .input-box .input-area .input-error {
    padding: 0 18px;
    bottom: -20px;
    font-size: 1.1rem;
  }

  #pg-contact .form-inner .contact-form .action-box {
    margin-top: 9%;
  }

  #pg-contact .form-inner .note {
    margin-top: 10%;
  }

  #pg-contact .form-inner .note small {
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 1px;
  }
}
#contribution {
  background-image: url("../images/bg-section-contribution.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}

#contribution .articles {
  margin: 6% auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 960px;
  text-align: left;
}

#contribution .articles .article-card {
  width: 31.25%;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

#contribution .articles .article-card:hover {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

#contribution .articles .article-card .card-link {
  width: 100%;
}

#contribution .articles .article-card .card-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

#contribution .articles .article-card .card-image {
  width: 100%;
}

#contribution .articles .article-card .card-body {
  padding: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

#contribution .articles .article-card .card-body .title {
  font-size: 1.8rem;
}

#contribution .articles .article-card .card-body .excerpt {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin: 8px 0 65px;
  font-size: 1.4rem;
}

#pg-contribution .articles {
  margin: 5% auto 0;
  text-align: left;
}

#pg-contribution .articles .article-card {
  width: 100%;
  position: relative;
}

#pg-contribution .articles .article-card:not(:first-child) {
  margin-top: 12%;
}

#pg-contribution .articles .article-card:last-child {
  margin-bottom: 44px;
}

#pg-contribution .articles .article-card:nth-child(odd) .card-image {
  float: left;
}

#pg-contribution .articles .article-card:nth-child(odd) .card-body {
  right: 0;
}

#pg-contribution .articles .article-card:nth-child(even) .card-image {
  float: right;
}

#pg-contribution .articles .article-card:nth-child(even) .card-body {
  left: 0;
}

#pg-contribution .articles .article-card:hover .card-body {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

#pg-contribution .articles .article-card:hover .card-body .title, #pg-contribution .articles .article-card:hover .card-body .seeDetail {
  color: #127dd6;
}

#pg-contribution .articles .article-card:hover .card-body .seeDetail::after {
  background-image: url("../images/svg/icon-next-hover.svg");
}

#pg-contribution .articles .article-card .card-link {
  width: inherit;
}

#pg-contribution .articles .article-card .card-image {
  width: 71.875%;
}

#pg-contribution .articles .article-card .card-image img {
  width: 100%;
  height: 280px;
}

#pg-contribution .articles .article-card .card-body {
  position: absolute;
  top: 87px;
  padding: 20px 22px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 40.625%;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

#pg-contribution .articles .article-card .card-body .postDay {
  color: #787878;
  font-size: 1.4rem;
}

#pg-contribution .articles .article-card .card-body .title {
  margin-top: 5px;
  padding-bottom: 8px;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
}

#pg-contribution .articles .article-card .card-body .title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 31px;
  height: 1px;
  background-color: #343434;
}

#pg-contribution .articles .article-card .card-body .excerpt {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin-top: 22px;
  font-size: 1.6rem;
}

.article-body .article-inner > *:first-child {
  margin-top: 0;
}

.article-body h3 {
  margin-top: 4.6%;
  font-size: 2.2rem;
  font-weight: 700;
}

.article-body h3 + p {
  margin-top: 3%;
}

.article-body p {
  margin-top: 6%;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.1em;
}

.article-body p::after {
  content: "";
  display: block;
  clear: both;
}

.article-body .wp-block-image {
  margin: 1% 3.4% 0 0;
  width: 48.3%;
  display: inline-block;
}

.article-body .wp-block-image + .wp-block-image {
  float: none;
  margin: 1% 0 0 0;
}

.side-box {
  margin-left: 50px;
  box-shadow: 0 2.85px 6.8px 0 rgba(0, 0, 0, 0.15);
}

.side-box .side-inner {
  padding: 30px 20px 18px;
}

.side-box .side-inner .title {
  padding: 0 7px 20px 7px;
  font-size: 1.8rem;
  font-weight: 700;
  border-bottom: 1px solid #d0d0d0;
}

.side-box .side-inner .sub_navi li {
  border-bottom: 1px solid #d0d0d0;
}

.side-box .side-inner .sub_navi li a {
  display: block;
  padding: 12px 7px;
}

.side-box .side-inner .sub_navi li a:hover .postDay, .side-box .side-inner .sub_navi li a:hover .postTitle {
  text-decoration: underline;
}

.side-box .side-inner .sub_navi li a .postDay {
  font-size: 1.2rem;
}

.side-box .side-inner .sub_navi li a .postTitle {
  font-size: 1.6rem;
}

.side-box .side-inner .see-all {
  margin-top: 20px;
  text-align: right;
}

.side-box .side-inner .see-all a:hover {
  text-decoration: underline;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #contribution .articles {
    margin: 11% auto 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #contribution .articles .article-card {
    width: 100%;
  }

  #contribution .articles .article-card:not(:first-child) {
    margin-top: 19px;
  }

  #contribution .articles .article-card .card-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  #contribution .articles .article-card .card-image {
    width: 38.7%;
  }

  #contribution .articles .article-card .card-image img {
    height: 100%;
  }

  #contribution .articles .article-card .card-body {
    width: 61.3%;
  }

  #contribution .articles .article-card .card-body .title {
    font-size: 1.3rem;
    font-weight: 700;
  }

  #contribution .articles .article-card .card-body .excerpt {
    margin: 8px 0 0;
    font-size: 1.2rem;
  }

  #pg-contribution .articles {
    margin: 8% auto 0;
  }

  #pg-contribution .articles .article-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #pg-contribution .articles .article-card:not(:first-child) {
    margin-top: 9%;
  }

  #pg-contribution .articles .article-card:last-child {
    margin-bottom: 0;
  }

  #pg-contribution .articles .article-card:nth-child(odd) .card-image {
    float: none;
  }

  #pg-contribution .articles .article-card:nth-child(even) .card-image {
    float: none;
  }

  #pg-contribution .articles .article-card:hover .card-body .seeDetail::after {
    background-image: url("../images/svg/icon-next-short-hover.svg");
  }

  #pg-contribution .articles .article-card .card-image {
    width: 100%;
  }

  #pg-contribution .articles .article-card .card-image img {
    height: 120px;
  }

  #pg-contribution .articles .article-card .card-body {
    position: relative;
    top: 0;
    padding: 13px 10px;
    width: 100%;
  }

  #pg-contribution .articles .article-card .card-body .postDay {
    display: none;
  }

  #pg-contribution .articles .article-card .card-body .title {
    margin-top: 0;
    padding-bottom: 0;
    font-size: 1.3rem;
  }

  #pg-contribution .articles .article-card .card-body .title::after {
    content: none;
  }

  #pg-contribution .articles .article-card .card-body .excerpt {
    margin-top: 8px;
    font-size: 1.15rem;
  }

  .article-body .article-inner:first-child {
    margin-top: 0;
  }

  .article-body h3 {
    margin-top: 5.4%;
    font-size: 1.6rem;
  }

  .article-body h3 + p {
    margin-top: 2%;
  }

  .article-body p {
    margin-top: 4.8%;
    font-size: 1.2rem;
    line-height: 1.8;
  }

  .article-body p img {
    float: none;
    margin: 0;
    width: 100%;
    height: 54vw;
  }

  .article-body p img + img {
    margin-left: 0;
    margin: 15px 0 0 0;
  }

  .side-box {
    margin-left: 0;
  }

  .side-box .side-inner {
    padding: 16px 24px 12px;
  }

  .side-box .side-inner .title {
    padding: 0 4px 14px 4px;
    font-size: 1.4rem;
  }

  .side-box .side-inner .sub_navi li a {
    padding: 7px 4px;
  }

  .side-box .side-inner .sub_navi li a .postDay {
    font-size: 1.1rem;
  }

  .side-box .side-inner .sub_navi li a .postTitle {
    font-size: 1.2rem;
  }

  .side-box .side-inner .see-all {
    margin-top: 12px;
  }

  .side-box .side-inner .see-all a {
    font-size: 1.1rem;
  }
}
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #news .news {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 6% auto 0;
  }

  #news .news-item {
    padding: 15px 0;
    width: 100%;
    border-bottom: 1px solid #d0d0d0;
  }

  #news .news-item:not(:first-child) {
    border-left: none;
  }

  #news .news-item .time {
    font-size: 1.2rem;
    color: #787878;
  }

  #news .news-item .title {
    margin-top: 0;
    font-size: 1.3rem;
    font-weight: 700;
  }

  #news .news-item .news-text {
    margin-top: 3px;
    font-size: 1.2rem;
    line-height: 1.5;
  }

  #pg-news .main-container {
    background-size: cover;
    background-position: center;
  }

  #pg-news .main-container .main-wrapper {
    padding: 4% 4% 60px;
  }

  #pg-news .newsLists .news-body {
    padding: 14px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #pg-news .newsLists .news-body .release {
    width: 100%;
    font-size: 1.2rem;
  }

  #pg-news .newsLists .news-body .title {
    margin-top: 3px;
    width: 100%;
    font-size: 1.3rem;
    font-weight: 700;
  }

  #pg-news .newsLists .news-body .capton {
    display: block;
    margin-top: 4px;
    font-size: 1.2rem;
    line-height: 1.6;
  }

  #pg-news .pager {
    margin: 12% auto 0;
  }

  #pg-newsDetail .main-container {
    background-size: contain;
    background-position: bottom center;
  }

  #pg-newsDetail .main-container .main-wrapper {
    padding: 6% 4% 60px;
  }

  #pg-newsDetail .news .release {
    padding-left: 0;
    font-size: 1.2rem;
  }

  #pg-newsDetail .news .title {
    margin-top: 0.5%;
    padding-left: 0;
    font-size: 1.6rem;
  }

  #pg-newsDetail .news .news-body {
    margin-top: 3%;
    padding-bottom: 10%;
  }

  #pg-newsDetail .news .news-body p {
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }

  #pg-newsDetail .news .news-body p + p {
    margin-top: 4%;
  }

  #pg-newsDetail .more-news {
    margin-top: 9.4%;
    display: flex;
    justify-content: space-between;
  }

  #pg-newsDetail .more-news .prev, #pg-newsDetail .more-news .next {
    position: relative;
  }

  #pg-newsDetail .more-news .prev .another-link, #pg-newsDetail .more-news .next .another-link {
    font-size: 1rem;
  }

  #pg-newsDetail .more-news .prev .another-link {
    padding-left: 37px;
  }

  #pg-newsDetail .more-news .prev .another-link::before {
    width: 30px;
    background-image: url("../images/svg/icon-prev-short.svg");
  }

  #pg-newsDetail .more-news .next .another-link {
    padding-right: 37px;
  }

  #pg-newsDetail .more-news .next .another-link::after {
    width: 30px;
    background-image: url("../images/svg/icon-next-short.svg");
  }
}
.page-contents .page-head {
  width: 100%;
  height: 400px;
  text-align: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.page-contents .page-head .wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #343434;
  filter: drop-shadow(5px 5px 10px #fff);
  background-color: rgba(255, 255, 255, 0.3);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(5px);
  padding: 12px 0;
}

.page-contents .page-head .wrapper .page-title-en {
  font-size: 2.2rem;
  font-family: "Vollkorn", serif;
  font-style: italic;
}

.page-contents .page-head .wrapper .page-title {
  margin-top: 12px;
  margin-bottom: 18px;
  font-size: 3.8rem;
  font-weight: 400;
  font-family: "Shippori Mincho", serif;
  line-height: 1;
}

.page-contents .page-container {
  width: 100%;
  position: relative;
}

.page-contents .page-container .Breadcrumbs {
  margin: auto;
  padding: 14px 0;
  width: 960px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

.page-contents .page-container .Breadcrumbs-item {
  margin-right: 15px;
  z-index: 1;
}

.page-contents .page-container .Breadcrumbs-item:not(:first-child) {
  padding-left: 20px;
  position: relative;
}

.page-contents .page-container .Breadcrumbs-item:not(:first-child)::before {
  content: "/";
  position: absolute;
  left: 0;
}

.page-contents .page-container .Breadcrumbs-item .page-name {
  font-size: 1.3rem;
}

.page-contents .page-container .Breadcrumbs-item .page-name.active {
  color: #bdbdbd;
  pointer-events: none;
}

.page-contents .page-container .Breadcrumbs-item .page-name:hover {
  text-decoration: underline;
}

.page-contents .page-inner {
  margin: auto;
  max-width: 960px;
  position: relative;
}

.page-contents .page-inner.full-width {
  max-width: 100vw;
}

.page-contents .page-inner.full-width .page-main {
  padding: 0 0 0;
}

.page-contents .page-inner.two-column {
  max-width: 972px;
  background-image: url(../images/bg-news.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}

.page-contents .page-inner.two-column .content {
  margin-top: 4.2%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.page-contents .page-inner.two-column .content-main {
  width: calc(100% - 319px);
}

.page-contents .page-inner.two-column .content-side {
  width: 319px;
}

.page-contents .page-inner .page-main {
  padding: 0 0 120px;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  .page-contents .page-head .wrapper .page-caption {
    font-size: 11px;
  }

  .page-contents .page-head .wrapper .page-title {
    margin-top: 5px;
    font-size: 2.1rem;
    font-family: "Shippori Mincho", serif;
    line-height: 1.4;
  }

  .page-contents .page-container .Breadcrumbs {
    display: none;
  }

  .page-contents .page-inner.two-column {
    max-width: 972px;
  }

  .page-contents .page-inner.two-column .content {
    margin-top: 7%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .page-contents .page-inner.two-column .content-main {
    width: 100%;
  }

  .page-contents .page-inner.two-column .content-side {
    margin-top: 9%;
    width: 100%;
  }

  .page-contents .page-inner .page-main {
    padding: 0 0 60px;
  }
}
#pg-privacy .basic-box {
  margin-top: 4.3%;
}

#pg-privacy .basic-box .title {
  font-size: 2.6rem;
  font-weight: 700;
}

#pg-privacy .basic-box .caption {
  margin-top: 1%;
  font-size: 1.6rem;
  line-height: 1.9;
}

#pg-privacy .privacyList-wrapper {
  margin-top: 5.8%;
}

#pg-privacy .privacyList-wrapper dl + dl {
  margin-top: 5.8%;
}

#pg-privacy .privacyList-wrapper dl dt {
  font-size: 2.2rem;
  font-weight: 700;
}

#pg-privacy .privacyList-wrapper dl dd {
  margin-top: 1%;
  font-size: 1.6rem;
  line-height: 1.9;
}

#pg-privacy .privacyList-wrapper dl dd ul {
  margin-top: 2%;
  padding-left: 21px;
  list-style-type: disc;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  .page-contents .page-container {
    padding: 0;
  }

  #pg-privacy .basic-box {
    margin-top: 7.4%;
  }

  #pg-privacy .basic-box .title {
    font-size: 1.6rem;
  }

  #pg-privacy .basic-box .caption {
    margin-top: 1.6%;
    font-size: 1.2rem;
  }

  #pg-privacy .privacyList-wrapper {
    margin-top: 9%;
  }

  #pg-privacy .privacyList-wrapper dl + dl {
    margin-top: 9%;
  }

  #pg-privacy .privacyList-wrapper dl dt {
    font-size: 1.3rem;
  }

  #pg-privacy .privacyList-wrapper dl dd {
    margin-top: 2%;
    font-size: 1.2rem;
    line-height: 1.7;
  }

  #pg-privacy .privacyList-wrapper dl dd ul {
    margin-top: 4%;
    padding-left: 17px;
  }
}
#pg-search .search-form {
  margin-top: 5%;
}

#pg-search .search-form .search-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
}

#pg-search .search-form .search-box .search-input {
  padding: 0 18px;
  width: 412px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  border: 1px solid #d0d0d0;
  background-color: transparent;
  outline: none;
}

#pg-search .search-form .search-box .button-submit {
  margin-left: 10px;
  padding: 0;
  width: auto;
  min-width: 90px;
  font-size: 1.6rem;
  color: #fff;
  background-color: #333;
}

#pg-search .searchResult-wrapper {
  margin-top: 4.2%;
}

#pg-search .searchResult-wrapper .searchResult-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #d0d0d0;
  line-height: 1.4;
}

#pg-search .searchResult-wrapper .searchResult-head .title {
  font-size: 2.2rem;
  font-weight: 700;
}

#pg-search .searchResult-wrapper .searchResult-head .total {
  margin-left: 29px;
  font-size: 1.6rem;
  letter-spacing: 0.18em;
}

#pg-search .searchResult-wrapper .searchResult-head .emptiness {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
  padding: 0px 5px;
}

#pg-search .searchResult-wrapper .searchResultLlist-item {
  border-bottom: 1px solid #d0d0d0;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a {
  display: block;
  padding: 40px 0;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper .image {
  min-width: 158px;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-left: 30px;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl dt {
  margin-top: 4px;
  font-size: 2.2rem;
  font-weight: 700;
  color: #00a5e3;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl .description {
  margin-top: 10px;
  font-size: 1.6rem;
  line-height: 1.9;
  letter-spacing: 0.1em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper:hover dl dt {
  text-decoration: underline;
}

#pg-search .searchResult-wrapper .no-result {
  margin-top: 3.6%;
  font-size: 1.6rem;
}

#pg-search .pager {
  margin: 6.5% auto 0;
}

#pg-search .pager .pagerList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#pg-search .pager .pagerList-item {
  margin: 0 6.5px;
  width: 36px;
  height: 36px;
  text-align: center;
  border: 1px solid #d0d0d0;
  position: relative;
}

#pg-search .pager .pagerList-item.current {
  border: 1px solid #343434;
  background-color: #343434;
}

#pg-search .pager .pagerList-item.current a {
  color: #fff;
}

#pg-search .pager .pagerList-item.ellipsis a, #pg-search .pager .pagerList-item.ellipsis span, #pg-search .pager .pagerList-item.next a, #pg-search .pager .pagerList-item.next span {
  text-indent: -9999em;
  background-position: center;
  background-repeat: no-repeat;
}

#pg-search .pager .pagerList-item.ellipsis {
  width: 14px;
  border: none;
}

#pg-search .pager .pagerList-item.ellipsis span {
  display: block;
  width: inherit;
  height: inherit;
  background-image: url(../images/svg/icon-three-dots.svg);
  background-size: contain;
}

#pg-search .pager .pagerList-item.next a {
  background-image: url(../images/svg/icon-rightArrow-black.svg);
  background-size: 6px 11px;
}

#pg-search .pager .pagerList-item a {
  width: 100%;
  height: 100%;
  font-size: 1.4rem;
  line-height: 36px;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-search .search-form {
    margin-top: 11.4%;
  }

  #pg-search .search-form .search-box {
    height: 35.5px;
  }

  #pg-search .search-form .search-box .search-input {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 14px;
    width: auto;
    font-size: 1.4rem;
  }

  #pg-search .search-form .search-box .button-submit {
    min-width: 80px;
    font-size: 1.4rem;
  }

  #pg-search .searchResult-wrapper {
    margin-top: 8%;
  }

  #pg-search .searchResult-wrapper .searchResult-head {
    padding-bottom: 14px;
  }

  #pg-search .searchResult-wrapper .searchResult-head .title {
    font-size: 1.6rem;
  }

  #pg-search .searchResult-wrapper .searchResult-head .total {
    margin-left: 14px;
    font-size: 1.1rem;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a {
    padding: 25px 0;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper .image {
    min-width: 29%;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl {
    padding-left: 18px;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl dt {
    margin: 0;
    font-size: 1.6rem;
  }

  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl .description {
    margin-top: 5px;
    font-size: 1.2rem;
  }

  #pg-search .searchResult-wrapper .no-result {
    margin-top: 4%;
    font-size: 1.2rem;
  }

  #pg-search .pager {
    margin: 12% auto 0;
  }
}
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  .section-contents {
    padding: 40px 4% 60px;
  }

  .section-contents .section-title-en {
    font-size: 1.65rem;
  }

  .section-contents .section-title {
    margin-top: 8px;
    padding-bottom: 15px;
    font-size: 2.1rem;
  }

  .section-contents .section-title::after {
    width: 20px;
  }

  .section-contents .section-lead {
    margin-top: 20px;
    font-size: 1.4rem;
  }

  .section-contents .section-buttons {
    margin-top: 15%;
  }
}
#shop {
  background-image: url("../images/common/malta.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
}

#shop .shops {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: calc(-147px + 12.6%) auto 0;
  max-width: 960px;
}

#shop .shops-item {
  margin: 80px 0 68px;
  width: 48.4375%;
  position: relative;
}

#shop .shops-item .shop-body {
  position: absolute;
  right: 6.45%;
  bottom: -68px;
  padding: 20px 22px;
  width: 65%;
  text-align: left;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

#shop .shops-item .shop-body .name {
  font-size: 2.2rem;
}

#shop .shops-item .shop-body .location {
  font-size: 2rem;
  font-family: "Vollkorn", serif;
  font-style: italic;
  color: #bdbdbd;
}

#shop .shops-item:hover .shop-body {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

#shop .shops-item:hover .shop-body .name, #shop .shops-item:hover .shop-body .seeDetail {
  color: #127dd6;
}

#shop .shops-item:hover .shop-body .seeDetail::after {
  background-image: url("../images/svg/icon-next-hover.svg");
}

#pg-common .commons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: calc(-80px + 5.4%) auto 0;
  max-width: 960px;
}

#pg-common .common-item {
  margin: 80px 0 113px;
  width: 48.4375%;
  position: relative;
}

#pg-common .common-item .common-body {
  position: absolute;
  right: 4.55%;
  bottom: -112px;
  padding: 13.5px 22px;
  width: 80%;
  text-align: left;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

#pg-common .common-item .common-body .name {
  font-size: 2.2rem;
}

#pg-common .common-item .common-body .caption {
  margin: 10px 0 20px;
  font-size: 1.6rem;
}

#pg-common .common-item:hover .common-body {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

#pg-shop .shops-item:hover .shop-body .name, #pg-shop .shops-item:hover .shop-body .seeDetail {
  color: #127dd6;
}

#pg-shop .shops-item:hover .shop-body .seeDetail::after {
  background-image: url("../images/svg/icon-next-hover.svg");
}

#pg-shopDetail .lead-inner {
  width: 100%;
}

#pg-shopDetail .lead-inner .shop-lead {
  padding-top: 6.7%;
  font-size: 1.8rem;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.25em;
}

#pg-shopDetail .lead-inner .bg-shop {
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: 34vw;
  background-image: url(../images/bg-shopDetail.jpg);
  background-position: bottom center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  z-index: -1;
}

#pg-shopDetail .shopList-Container {
  margin-top: 6.4%;
  width: 100%;
}

#pg-shopDetail .shopList-Container .shopList-head {
  text-align: center;
}

#pg-shopDetail .shopList-Container .shopList-head .title-en {
  font-size: 2.2rem;
  font-family: "Vollkorn", serif;
  font-style: italic;
  color: #127dd6;
}

#pg-shopDetail .shopList-Container .shopList-head .title {
  margin-top: 12px;
  padding-bottom: 30px;
  font-size: 3.8rem;
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 400;
  line-height: 1;
  position: relative;
}

#pg-shopDetail .shopList-Container .shopList-head .title::after {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
  width: 31px;
  height: 1px;
  background-color: #343434;
}

#pg-shopDetail .shopList-Container .shopList-inner {
  margin-top: 4%;
  padding: 0 0 120px;
  width: 100%;
  background-image: url(../images/bg-shopListDetail.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

#pg-shopDetail .shopList-Container .shopList {
  margin: auto;
  max-width: 960px;
}

#pg-shopDetail .shopList-Container .shopList-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#pg-shopDetail .shopList-Container .shopList-item:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

#pg-shopDetail .shopList-Container .shopList-item:nth-child(odd) .shop-body {
  padding-left: 30px;
}

#pg-shopDetail .shopList-Container .shopList-item:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

#pg-shopDetail .shopList-Container .shopList-item:nth-child(even) .shop-body {
  padding-right: 30px;
}

#pg-shopDetail .shopList-Container .shopList-item:not(:first-child) {
  margin-top: 9%;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-image {
  width: 45%;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 55%;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-title {
  font-size: 2.2rem;
  font-weight: 700;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-caption {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin-top: 16px;
  font-size: 1.4rem;
  letter-spacing: 0.15em;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail {
  padding: 23px;
  background-color: #fff;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  font-size: 1.6rem;
  line-height: 1;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl + dl {
  margin-top: 15px;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl dt {
  min-width: 22%;
}

#pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl dd {
  padding-left: 15px;
  min-width: 78%;
  border-left: 1px solid #d0d0d0;
}

#pg-shopDetail .shopList-Container .bg-shopList {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #shop .shops {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: calc(-30px + 8.5%) auto 0;
  }

  #shop .shops-item {
    margin: 32px 0 56px;
    width: 48.55072%;
  }

  #shop .shops-item .shop-image img {
    height: 32vw !important;
  }

  #shop .shops-item .shop-body {
    position: absolute;
    right: 4.5%;
    bottom: -56px;
    padding: 8px 13px;
    width: 91%;
    text-align: left;
    background-color: #fff;
    box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  }

  #shop .shops-item .shop-body .name {
    font-size: 1.4rem;
  }

  #shop .shops-item .shop-body .location {
    font-size: 1.2rem;
  }

  #shop .shops-item:hover .shop-body .seeDetail::after {
    background-image: url("../images/svg/icon-next-short-hover.svg");
  }

  #pg-shop .shops {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: calc(-30px + 8.5%) auto 0;
  }

  #pg-common .common-item:nth-child(-n+2) {
    margin: 60px 0 0;
  }

  #pg-common .common-item {
    margin: 30px 0 0;
    width: 48.55072%;
  }

  #pg-common .common-item .common-image img {
    height: 32vw;
  }

  #pg-common .common-item .common-body {
    position: relative;
    right: 0;
    bottom: 0;
    padding: 14px 8px 8px;
    width: 100%;
  }

  #pg-common .common-item .common-body .name {
    font-size: 1.3rem;
    font-weight: 700;
  }

  #pg-common .common-item .common-body .caption {
    display: none;
  }

  #pg-shop .shops-item:hover .shop-body .seeDetail::after {
    background-image: url("../images/svg/icon-next-short-hover.svg");
  }

  #pg-shopDetail .lead-inner .shop-lead {
    padding: 6.7% 4% 0;
    font-size: 1.2rem;
    line-height: 1.8;
    letter-spacing: 0;
  }

  #pg-shopDetail .lead-inner .bg-shop {
    height: 60vw;
    background-size: contain;
  }

  #pg-shopDetail .shopList-Container {
    margin-top: 13.4%;
  }

  #pg-shopDetail .shopList-Container .shopList-head .title-en {
    font-size: 1.65rem;
  }

  #pg-shopDetail .shopList-Container .shopList-head .title {
    margin-top: 8px;
    padding-bottom: 15px;
    font-size: 2.1rem;
  }

  #pg-shopDetail .shopList-Container .shopList-head .title::after {
    width: 20px;
  }

  #pg-shopDetail .shopList-Container .shopList-inner {
    margin-top: 6%;
    padding: 0 4% 60px;
  }

  #pg-shopDetail .shopList-Container .shopList-item:nth-child(odd), #pg-shopDetail .shopList-Container .shopList-item:nth-child(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  #pg-shopDetail .shopList-Container .shopList-item:nth-child(odd) .shop-body, #pg-shopDetail .shopList-Container .shopList-item:nth-child(even) .shop-body {
    padding-left: 0;
    padding-right: 0;
  }

  #pg-shopDetail .shopList-Container .shopList-item:not(:first-child) {
    margin-top: 12%;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-image {
    width: 100%;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-image img {
    height: 48vw;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body {
    padding: 14px 0;
    width: 100%;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-title {
    font-size: 1.6rem;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-caption {
    margin-top: 3px;
    font-size: 1.2rem;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail {
    margin-top: 14px;
    padding: 13px;
    background-color: #fff;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl {
    font-size: 1.2rem;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl + dl {
    margin-top: 10px;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl dt {
    min-width: 25.5%;
  }

  #pg-shopDetail .shopList-Container .shopList-item .shop-body .shop-detail dl dd {
    min-width: 74.4%;
  }

  #pg-shopDetail .shopList-Container .bg-shopList {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
#pg-sitemap .siteList {
  margin-top: -2.9%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#pg-sitemap .siteList::after {
  content: "";
  display: block;
  width: 21.875%;
}

#pg-sitemap .siteList-item {
  margin-top: 8.4%;
  width: 21.875%;
}

#pg-sitemap .siteList-item dl {
  padding-top: 11%;
}

#pg-sitemap .siteList-item dl dt {
  font-size: 1.8rem;
  font-weight: 700;
}

#pg-sitemap .siteList-item dl dd {
  margin-top: 6%;
  font-size: 1.6rem;
}

#pg-sitemap .siteList-item .siteLink:hover {
  text-decoration: underline;
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-sitemap .siteList {
    margin-top: -3.6%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  #pg-sitemap .siteList::after {
    width: 47.8%;
  }

  #pg-sitemap .siteList-item {
    margin-top: 12%;
    width: 47.8%;
  }

  #pg-sitemap .siteList-item .image img {
    height: 25.5vw;
  }

  #pg-sitemap .siteList-item dl {
    padding-top: 12%;
  }

  #pg-sitemap .siteList-item dl dt {
    font-size: 1.3rem;
  }

  #pg-sitemap .siteList-item dl dd {
    margin-top: 8%;
    font-size: 1.2rem;
  }
}
/* ------------------------------------------------
#. Components :prefix[c-]
------------------------------------------------ */
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  .button {
    padding: 9px 23px;
    width: auto;
    min-width: 183px;
    font-size: 1.3rem;
  }

  .buttonBox .seeDetail {
    padding-right: 38px;
    font-size: 1rem;
  }

  .buttonBox .seeDetail::after {
    content: "";
    top: 2px;
    width: 32px;
    height: 10px;
    background-image: url("../images/svg/icon-next-short.svg");
  }
}
span.search-highlight {
  background: yellow;
}

.place, .place a {
  font-size: 1.4rem;
  color: #1381d6;
}

.more-news {
  position: relative;
}

.next {
  position: absolute;
  right: 0;
}

.prev {
  position: absolute;
  left: 0;
}

.page-template-page-shop-detail .lead-inner {
  margin: 0 auto;
  padding-top: 6.7%;
}

.lead-inner {
  max-width: 1260px;
  margin: 0 auto 5%;
  padding: 0 3vw;
}

#pg-shopDetail .lead-inner p {
  padding-top: 0px;
}

.wp-block-media-text.alignwide {
  margin-top: 11%;
  display: flex;
  align-items: flex-start;
}

.wp-block-media-text.alignwide figure {
  width: 33%;
}

.wp-block-media-text.alignwide .wp-block-media-text__content {
  padding-left: 27px;
  width: 66.66666%;
  letter-spacing: 0.15em;
}

.wp-block-media-text.alignwide .wp-block-media-text__content .has-large-font-size {
  font-size: 2.2rem;
  font-weight: 700;
}

.wp-block-media-text.alignwide .wp-block-media-text__content p {
  font-size: 1.5rem;
  letter-spacing: 0.15em;
}

.wp-block-table {
  margin: 5.4% 0;
  width: 100%;
}

.wp-block-table tr {
  padding: 16px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  border-top: 1px solid #d0d0d0;
  align-items: center;
}

.wp-block-table tr:last-child {
  border-bottom: 1px solid #d0d0d0;
}

.wp-block-table tr td:first-child {
  width: 15%;
  font-size: 1.6rem;
}

.wp-block-table tr td:last-child {
  width: 85%;
  font-size: 1.6rem;
}

.sns-navi {
  display: flex;
}

.sns-navi li {
  background-size: contain !important;
  width: 30px;
  margin-right: 15px;
}

.sns-navi li a {
  width: 30px;
  height: 30px;
}

.sns-navi li:last-child {
  margin-right: 0px;
}

.sns-navi .twitter {
  background: url("###") no-repeat;
}

.sns-navi .facebook {
  background: url("###") no-repeat;
}

.sns-navi .instagram {
  background: url("###") no-repeat;
}

.category_image {
  width: 100%;
  height: 330px;
  text-align: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

input[type=submit] {
  transition: all 0.3s ease 0.2s;
  border: 1px solid #343434;
  background: transparent;
  -webkit-transition: all 0.3s ease 0.2s;
  z-index: 1;
  padding: 17px 0;
  width: 260px;
  font-size: 1.6rem;
  font-family: "Noto Sans Japanese", sans-serif;
  letter-spacing: 0.18em;
  overflow: hidden;
  position: relative;
}

input[type=submit]:hover {
  background: linear-gradient(to right, #127dd6, #4ec9e5);
  transition: all 0.3s ease 0.2s;
  color: #fff;
}

input[type=submit]::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-linear-gradient(left, #127dd6, #4ec9e5);
  background: linear-gradient(to right, #127dd6, #4ec9e5);
  z-index: -1;
  opacity: 0;
  -webkit-transition: all 0.3s ease 0.2s;
  transition: all 0.3s ease 0.2s;
}

#pg-search > div > ul > li > a > div > div > img {
  width: 160px;
  height: 160px;
  object-fit: cover;
  object-position: center;
}

.pager .pagerList-item.current {
  color: #fff;
}

.pager .pagerList-item {
  line-height: 36px;
}

.page-head > img {
  width: 100%;
  height: 400px;
  text-align: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.map {
  height: 350px;
}

.news-body h2 {
  font-size: 1.8rem;
  margin-bottom: 20px;
}

.box26 {
  position: relative;
  margin: 2em 0;
  padding: 0.5em 1em;
  border: solid 3px #00a5e3;
  border-radius: 8px;
}

.box26 .box-title {
  position: absolute;
  display: inline-block;
  top: -13px;
  left: 10px;
  padding: 0 9px;
  line-height: 1;
  font-size: 19px;
  background: #fff;
  color: #00a5e3;
  font-weight: bold;
}

.box26 p {
  margin: 0;
  padding: 0;
}

.contribution {
  margin: 5% auto 0;
  text-align: left;
}

.contribution article {
  width: 100%;
  position: relative;
  height: 280px;
}

.contribution article:nth-child(n+2) {
  margin-top: 12%;
}

.contribution article time {
  color: #787878;
  font-size: 1.4rem;
}

.contribution article .title {
  margin-top: 5px;
  padding-bottom: 8px;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
}

.lead-inner > p {
  padding-top: 3%;
  font-size: 1.5vw;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.25em;
}

.contribution article .excerpt {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin-top: 22px;
  font-size: 1.6rem;
}

.contribution article a {
  width: inherit;
}

.contribution article:nth-child(odd) .image {
  float: left;
}

.contribution article:nth-child(even) .image {
  float: right;
}

.contribution article:nth-child(odd) .body {
  right: 0;
}

.contribution article a .image {
  width: 71.875%;
}

.contribution article a .image img {
  width: 100%;
  height: 280px;
}

.contribution article:hover .body {
  box-shadow: 2px 8px 20px 0 rgba(31, 32, 68, 0.25);
  -webkit-transform: scale(1.01);
  -ms-transform: scale(1.01);
  transform: scale(1.01);
}

.contribution article .body {
  position: absolute;
  top: 87px;
  padding: 20px 22px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 40.625%;
  background-color: #fff;
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

/* ぱんくず */
.bread_crumb {
  max-width: 960px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: 14px 0;
}

.bread_crumb li {
  font-size: 14px;
  color: rgb(180, 180, 180);
  float: left;
  list-style: none outside none;
}

.bread_crumb li:after {
  content: ">";
  padding-left: 10px;
  margin-right: 10px;
}

.bread_crumb li:last-child:after {
  content: "";
}

.bread_crumb li a {
  color: rgb(120, 120, 120);
}

/* ページナビゲーション */
.page_navi {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.page_navi li {
  margin: 0 6.5px;
  width: 36px;
  height: 36px;
  border: 1px solid #d0d0d0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page_navi li a {
  width: 36px;
  height: 36px;
  text-align: center;
  position: relative;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page_navi li.current {
  color: #fff;
  font-weight: bold;
  padding: 3px 7px;
  background: #127dd6;
  border: solid 1px #127dd6;
}

.page_navi li:hover {
  opacity: 0.8;
}

.page_navi li.page_nums span {
  color: #fff;
  padding: 3px 7px;
  background: #666;
  display: inline-block;
  border: solid 1px #333;
}

#pg-common .common-item .common-image img {
  height: 252px;
}

@media (max-width: 768px) {
  .privacy h2 {
    font-size: 1.6rem;
  }

  .privacy h2 + p, .privacy .lead-inner ul {
    margin-top: 1.6%;
    font-size: 1.2rem;
  }

  .privacy .lead-inner ul {
    margin-left: 17px;
  }

  .contribution article {
    height: auto;
  }

  .lead-inner {
    line-height: 1.8;
    letter-spacing: 0;
  }

  .lead-inner > p {
    font-size: 1.4rem;
  }

  iframe {
    width: 100%;
    height: 400px;
  }

  #pg-search > div > ul > li > a > div > div > img {
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
  }

  .contribution article {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .contribution article a .image {
    width: 100%;
  }

  .contribution article .body {
    position: relative;
    top: 0;
    padding: 13px 10px;
    width: 100%;
  }

  .contribution article a .image img {
    width: 100%;
    height: auto;
  }

  .contribution article .title {
    margin-top: 0;
    padding-bottom: 0;
    font-size: 1.3rem;
  }

  .contribution article .excerpt {
    margin-top: 8px;
    font-size: 1.15rem;
  }

  .contribution article time {
    font-size: 1rem;
  }

  .page-contents .page-head {
    height: 212px;
  }

  .page-contents .page-head img {
    height: 212px;
  }

  .wp-block-table tr {
    border-top: none;
  }

  .wp-block-table tr:last-child {
    border-bottom: none;
  }

  .wp-block-table tr td:first-child {
    width: 26%;
    border-right: 1px solid #d0d0d0;
    font-size: 1.2rem;
    font-weight: 700;
  }

  .wp-block-table tr td:last-child {
    padding-left: 6%;
    width: 74%;
    font-size: 1.2rem;
  }

  .wp-block-media-text.alignwide {
    margin-top: 5%;
    display: block;
  }

  .wp-block-media-text.alignwide:last-child {
    margin-bottom: 5%;
  }

  .wp-block-media-text.alignwide figure {
    width: 100%;
  }

  .wp-block-media-text.alignwide .wp-block-media-text__content {
    width: 100%;
    letter-spacing: 0.15em;
    padding: 0;
  }

  .wp-block-media-text.alignwide .wp-block-media-text__content .has-large-font-size {
    font-size: 1.6rem;
    font-weight: 700;
  }

  .wp-block-media-text.alignwide .wp-block-media-text__content p {
    font-size: 1.2rem;
    letter-spacing: 0.15em;
  }

  .place {
    font-size: 1rem;
    color: #1381d6;
  }

  /* ぱんくず */
  .bread_crumb {
    padding: 0;
  }
}
.single-daily_contribution .main-container {
  width: 100%;
  background-image: url(../images/bg-news.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}

.single-daily_contribution .main-container .main-wrapper {
  margin: 0 auto;
  padding: 3.4% 0 120px;
  max-width: 960px;
}

.single-daily_contribution .news .release {
  padding-left: 2px;
  font-size: 1.4rem;
  color: #787878;
}

.single-daily_contribution .news .title {
  margin-top: 1.2%;
  padding-left: 2px;
  font-size: 2.2rem;
  font-weight: 700;
}

.single-daily_contribution .news .news-body {
  margin-top: 2.5%;
  padding-bottom: 4%;
  border-bottom: 1px solid #d0d0d0;
}

.single-daily_contribution .news .news-body p {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.15em;
}

.single-daily_contribution .news .news-body p + p {
  margin-top: 3%;
}

.single-daily_contribution .more-news {
  margin-top: 1.5%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.single-daily_contribution .more-news .prev .another-link, .single-daily_contribution .more-news .next .another-link {
  font-size: 1.4rem;
  font-family: "Vollkorn", serif;
  font-style: italic;
}

.single-daily_contribution .more-news .prev .another-link {
  padding-left: 74px;
}

.single-daily_contribution .more-news .prev .another-link::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 62px;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/svg/icon-prev.svg");
}

.single-daily_contribution .more-news .prev .another-link:hover {
  color: #127dd6;
}

.single-daily_contribution .more-news .prev .another-link:hover::before {
  background-image: url("../images/svg/icon-prev-hover.svg");
}

.single-daily_contribution .more-news .next .another-link {
  padding-right: 74px;
}

.single-daily_contribution .more-news .next .another-link::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 0;
  width: 62px;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/svg/icon-next.svg");
}

.single-daily_contribution .more-news .next .another-link:hover {
  color: #127dd6;
}

.single-daily_contribution .more-news .next .another-link:hover::after {
  background-image: url("../images/svg/icon-next-hover.svg");
}

/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  .single-daily_contribution .main-container {
    background-size: contain;
    background-position: bottom center;
  }

  .single-daily_contribution .main-container .main-wrapper {
    padding: 6% 4% 60px;
  }

  .single-daily_contribution .news .release {
    padding-left: 0;
    font-size: 1.2rem;
  }

  .single-daily_contribution .news .title {
    margin-top: 0.5%;
    padding-left: 0;
    font-size: 1.6rem;
  }

  .single-daily_contribution .news .news-body {
    margin-top: 3%;
    padding-bottom: 10%;
  }

  .single-daily_contribution .news .news-body p {
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }

  .single-daily_contribution .news .news-body p + p {
    margin-top: 4%;
  }

  .single-daily_contribution .more-news {
    margin-top: 9.4%;
  }

  .single-daily_contribution .more-news .prev, .single-daily_contribution .more-news .next {
    position: relative;
  }

  .single-daily_contribution .more-news .prev .another-link, .single-daily_contribution .more-news .next .another-link {
    font-size: 1rem;
  }

  .single-daily_contribution .more-news .prev .another-link {
    padding-left: 37px;
  }

  .single-daily_contribution .more-news .prev .another-link::before {
    width: 30px;
    background-image: url("../images/svg/icon-prev-short.svg");
  }

  .single-daily_contribution .more-news .next .another-link {
    padding-right: 37px;
  }

  .single-daily_contribution .more-news .next .another-link::after {
    width: 30px;
    background-image: url("../images/svg/icon-next-short.svg");
  }
}
/* --------------------------------
 * header
 * -------------------------------- */
#header {
  position: absolute;
  top: 0;
  right: 0;
  padding: 5px 0;
  width: 100%;
  z-index: 100;
  background-color: transparent;
  box-sizing: border-box;
  align-items: center;
  padding: 10px 3vw;
  width: 100%;
  box-sizing: border-box;
}
#header .header-inner {
  min-width: auto;
  width: auto;
}
#header .header-inner .toggle-menu {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  padding: 20px;
}
#header .header-inner #g-nav {
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 989;
  /*ナビのスタート位置と形状*/
  top: 0;
  right: -120%;
  width: 20%;
  height: 100vh;
  /*ナビの高さ*/
  background-color: rgba(0, 0, 0, 0.7);
  /*動き*/
  transition: 0.6s ease-in-out;
}
#header .header-inner #g-nav.panelactive {
  right: 0;
}
#header .header-inner #g-nav ul {
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#header .header-inner #g-nav li {
  list-style: none;
  text-align: center;
}
#header .header-inner #g-nav li a {
  color: white;
  text-decoration: none;
  padding: 10px;
  display: block;
  letter-spacing: 0.1em;
  font-size: 1.5vw;
}

/* --------------------------------
 * header smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #header {
    position: absolute;
    top: 0;
    right: 0;
    padding: 5px 0;
    width: 100%;
    z-index: 100;
    background-color: transparent;
    box-sizing: border-box;
    align-items: center;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
  }
  #header .header-inner {
    min-width: auto;
    width: auto;
  }
  #header .header-inner .logo {
    display: flex;
    justify-content: center;
  }
  #header .header-inner .logo img {
    width: 15vw;
  }
  #header .header-inner .logo .fixed-logo {
    display: none;
  }
  #header .header-inner .toggle-menu {
    position: fixed;
    z-index: 999;
    top: 90vh;
    right: 0;
    padding: 0 20px;
  }
  #header .header-inner #g-nav {
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position: fixed;
    z-index: 989;
    /*ナビのスタート位置と形状*/
    top: 0;
    right: -120%;
    width: 100%;
    height: 100vh;
    /*ナビの高さ*/
    background-color: rgba(0, 0, 0, 0.7);
    /*動き*/
    transition: 0.6s ease-in-out;
  }
  #header .header-inner #g-nav.panelactive {
    right: 0;
  }
  #header .header-inner #g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #header .header-inner #g-nav li {
    list-style: none;
    text-align: center;
  }
  #header .header-inner #g-nav li a {
    color: white;
    text-decoration: none;
    padding: 10px;
    display: block;
    letter-spacing: 0.1em;
    font-size: 15px;
  }
}
/* -------------------------------- */
.openbtn1 {
  position: relative;
  /*ボタン内側の基点となるためrelativeを指定*/
  background: transparent;
  cursor: pointer;
  width: 100px;
  height: 100px;
  border-radius: 5px;
}

/*ボタン内側*/
.openbtn1 span {
  display: inline-block;
  transition: all 0.5s;
  /*アニメーションの設定*/
  position: absolute;
  left: 14px;
  height: 2px;
  background-color: white;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
  width: 45%;
}

.openbtn1 span:nth-of-type(1) {
  top: 15px;
}

.openbtn1 span:nth-of-type(2) {
  top: 23px;
}

.openbtn1 span:nth-of-type(3) {
  top: 31px;
}

/*activeクラスが付与されると線が回転して×に*/
.openbtn1.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 30%;
  background-color: white;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
  /*真ん中の線は透過*/
}

.openbtn1.active span:nth-of-type(3) {
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 30%;
  background-color: white;
}

@media screen and (max-width: 769px) {
  .openbtn1 {
    position: relative;
    /*ボタン内側の基点となるためrelativeを指定*/
    background: #343434;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
  }

  /*ボタン内側*/
  .openbtn1 span {
    display: inline-block;
    transition: all 0.5s;
    /*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 2px;
    background: white;
    width: 45%;
  }

  .openbtn1 span:nth-of-type(1) {
    top: 15px;
  }

  .openbtn1 span:nth-of-type(2) {
    top: 23px;
  }

  .openbtn1 span:nth-of-type(3) {
    top: 31px;
  }

  /*activeクラスが付与されると線が回転して×に*/
  .openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
    background-color: white;
  }

  .openbtn1.active span:nth-of-type(2) {
    opacity: 0;
    /*真ん中の線は透過*/
  }

  .openbtn1.active span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
    background-color: white;
    position: absolute;
    color: white;
  }
}
/* --------------------------------

 * footer

 * -------------------------------- */
#footer {
  margin: 0 auto;
  background-color: #DFDFD7;
  font-family: "Shippori Mincho", serif;
  background-color: white;
  z-index: 1;
  position: relative;
}
#footer .footerContents {
  max-width: 1200px;
  margin: 0 auto;
}
#footer .footerContents .page-btn {
  display: flex;
  text-align: center;
}
#footer .footerContents .page-btn .page-top {
  width: 50%;
  padding: 1.5vh 0;
  background-color: #ACACAC;
  font-family: "Roboto";
  font-weight: lighter;
  font-size: 1.2vw;
}
#footer .footerContents .page-btn .page-top a {
  color: white;
}
#footer .footerContents .page-btn .company-btn {
  width: 50%;
  padding: 1.5vh 0;
  background-color: #4D4D4D;
  font-family: "Roboto";
  font-weight: lighter;
  font-size: 1.2vw;
}
#footer .footerContents .page-btn .company-btn a {
  color: white;
}
#footer .footerContents .footer-menu {
  display: flex;
  justify-content: space-between;
}
#footer .footerContents .footer-menu .footer-logo {
  width: 50%;
  padding: 3vh 8vw 2vh;
}
#footer .footerContents .footer-menu .footer-logo img {
  width: 100px;
}
#footer .footerContents .footer-menu #page-link-footer {
  display: flex;
  width: 50%;
  padding-top: 8vh;
}
#footer .footerContents .footer-menu #page-link-footer li {
  display: inline;
}
#footer .footerContents .footer-menu #page-link-footer li a {
  color: #343434;
  font-size: 16px;
  padding-left: 2vw;
}
#footer .footerContents .sns {
  display: flex;
  padding-left: 9vw;
}
#footer .footerContents .sns img {
  margin-right: 1vw;
  width: 30px;
}
#footer .copyright {
  text-align: center;
  padding: 2vh 0;
  font-size: 1.2rem;
}
#footer .copyright small {
  text-align: center;
}

/* --------------------------------

 * footer smart phone

 * -------------------------------- */
@media screen and (max-width: 769px) {
  #footer {
    background-color: #DFDFD7;
    font-family: "Shippori Mincho", serif;
  }
  #footer .footerContents .page-btn {
    display: flex;
    text-align: center;
  }
  #footer .footerContents .page-btn .page-top {
    width: 50%;
    padding: 1.5vh 0;
    background-color: #ACACAC;
    font-family: "Roboto";
    font-weight: lighter;
    font-size: 13px;
  }
  #footer .footerContents .page-btn .page-top a {
    color: white;
  }
  #footer .footerContents .page-btn .company-btn {
    width: 50%;
    padding: 1.5vh 0;
    background-color: #4D4D4D;
    font-family: "Roboto";
    font-weight: lighter;
    font-size: 13px;
  }
  #footer .footerContents .page-btn .company-btn a {
    color: white;
  }
  #footer .footerContents .footer-menu li {
    display: none !important;
  }
  #footer .footerContents .footer-menu .footer-logo {
    display: block !important;
    width: 50%;
    padding: 3vh 8vw 2vh;
  }
  #footer .footerContents .footer-menu .footer-logo img {
    width: 100px;
  }
  #footer .footerContents .sns {
    display: flex;
    width: 5%;
    margin-left: 5vw;
    padding-top: 3vh;
    padding-bottom: 3vh;
  }
  #footer .footerContents .sns img {
    margin-right: 3vw;
  }
  #footer .copyright {
    text-align: center;
    font-size: 10px;
    padding-bottom: 1vh;
  }
  #footer .copyright small {
    text-align: center;
  }
}
/* --------------------------------

 * keyvisual

 * -------------------------------- */
#keyvisual {
  width: 100vw;
  padding: 0;
  height: 100vh;
  position: relative;
  overflow: hidden;
}
#keyvisual .key-container {
  margin: 0 auto;
}
#keyvisual .key-container img {
  object-fit: cover;
  height: 100vh;
  width: 100%;
}
#keyvisual .key-container .slick1 {
  width: 100%;
}
#keyvisual .key-container .slick1 h1 {
  display: none;
}
#keyvisual .key-container .slick1 .logo {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
}
#keyvisual .key-container .slick1 .logo img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: contain;
}
#keyvisual .key-container .slick1 .logo .fixed-logo {
  display: none;
}
#keyvisual .key-container .slick1 .key-v-text {
  position: absolute;
  top: 39vh;
  width: 100%;
  margin: 0 auto;
}
#keyvisual .key-container .slick1 .key-v-text p {
  display: table;
  margin: 0 auto;
  padding-left: 24px;
  font-family: "Shippori Mincho", serif;
  font-size: 35px;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #343434;
  text-align: center;
  filter: drop-shadow(5px 5px 10px #fff);
  background-color: rgba(255, 255, 255, 0.01);
  /* 背景色 */
  -webkit-backdrop-filter: blur(3px);
  /* ぼかしエフェクト */
  backdrop-filter: blur(3px);
  border-radius: 2px;
}

/*========= 光りながら出現させるためのCSS ===============*/
.glowAnime span {
  opacity: 0;
}

/*アニメーションで透過を0から1に変化させtext-shadowをつける*/
.glowAnime.glow span {
  animation: glow_anime_on 1s ease-out forwards;
}

@keyframes glow_anime_on {
  0% {
    opacity: 0;
    text-shadow: 0 0 0 #666, 0 0 0 #666;
  }
  50% {
    opacity: 1;
    text-shadow: 0 0 10px #666, 0 0 15px #666;
  }
  100% {
    opacity: 1;
    text-shadow: 0 0 0 #666, 0 0 0 #666;
  }
}
/* --------------------------------
 * keyvisual smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #keyvisual .key-container .slick1 .logo {
    width: 35%;
    left: 32.5%;
    margin-top: 5vh;
  }
  #keyvisual .key-container .slick1 .key-v-text p {
    padding-left: 22px;
    top: 45vh;
    font-size: 15px;
  }
}
/* --------------------------------

 * mission

 * -------------------------------- */
#mission {
  max-width: 1100px;
  margin: 15vh auto 20vh;
  padding-top: 15vh;
  box-sizing: border-box;
  width: 100%;
  font-family: "Shippori Mincho", serif;
  color: white;
}
#mission .container {
  display: flex;
  flex-direction: column;
  background: url("../images/common/mission-back.jpg");
  background-size: cover;
  padding: 15vh 5vw 18vh 8vw;
}
#mission .container .section-title {
  margin-bottom: 3vh;
  font-family: "Shippori Mincho", serif;
  font-size: 60px;
  font-weight: lighter;
}
#mission .container__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#mission .container__text p {
  padding: 1vh 0;
  letter-spacing: 5px;
  font-family: "Shippori Mincho", serif;
  font-size: 13px;
}

/*==================================================
じわっ
===================================*/
.blur {
  animation-name: blurAnime;
  animation-delay: 0.5s;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

@keyframes blurAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.blurTrigger {
  opacity: 0;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* --------------------------------

 * service

 * -------------------------------- */
#service {
  max-width: 1100px;
  margin: 10vh auto 5vh;
  padding-top: 0;
  box-sizing: border-box;
  width: 100%;
  font-family: "Shippori Mincho", serif;
  color: #343434;
}
#service .section-title {
  font-family: "Shippori Mincho", serif;
  font-size: 60px;
  font-weight: lighter;
}
#service .container {
  display: block;
}
#service .container .section-subtitle {
  margin-top: 72px;
}
#service .container .section-subtitle h3 {
  position: relative;
  font-size: 35px;
  z-index: -1;
}
#service .container .section-subtitle h4 {
  font-family: "Shippori Mincho", serif;
  font-size: 20px;
  font-weight: lighter;
  position: relative;
  top: -5px;
}
#service .container__box {
  display: flex;
  margin: 5vh 0;
}
#service .container__box--images {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto;
  width: 45%;
}
#service .container__box--images img {
  position: relative;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
#service .container__box--text {
  display: flex;
  flex-direction: column;
  width: 55%;
  padding: 7vh 0 0;
}
#service .container__box--text p {
  font-size: 13px;
  line-height: 2.5;
}
#service .container__box--text h4 {
  display: flex;
  align-items: center;
  height: 5vh;
  margin-bottom: 2vh;
  color: #343434;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
}
#service .container__box--text button {
  margin-top: 24px;
}
#service .container__box .upper {
  padding-left: 3vw;
}
#service .container__box .lower {
  padding-right: 3vw;
}

/* --------------------------------

 * officer

 * -------------------------------- */
#officer {
  max-width: 1100px;
  margin: 10vh auto;
  padding: 0 1vw;
  box-sizing: border-box;
  width: 100%;
  font-family: "Shippori Mincho", serif;
  color: #343434;
}
#officer .section-title {
  margin-bottom: 3vh;
  font-family: "Shippori Mincho", serif;
  font-size: 60px;
  font-weight: lighter;
}
#officer .container__box {
  display: flex;
}
#officer .container__box--images {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 30%;
}
#officer .container__box--images img {
  position: relative;
}
#officer .container__box--text {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 70%;
  padding-left: 5vw;
}
#officer .container__box--text h4 {
  text-align: left;
  margin-bottom: 3vh;
  font-size: 30px;
}
#officer .container__box--text p {
  margin-bottom: 2vh;
  line-height: 2;
  font-size: 13px;
}

/* --------------------------------

 * news

 * -------------------------------- */
#news {
  max-width: 1100px;
  margin: 5vh auto 10vh;
  padding: 0 5vw;
  width: 100%;
}
#news .wrapper .section-title {
  font-size: 25px;
}
#news .wrapper .news-box .news-item {
  padding-left: 10vw;
}
#news .wrapper .news-box .news-item .detail-link {
  margin-bottom: 2vh;
}
#news .wrapper .news-box .news-item .detail-link .title {
  font-size: 18px;
}
#news .wrapper .news-box .news-item .detail-link .time {
  font-family: "Noto Sans JP";
  font-size: 11px;
}
#news .wrapper .section-buttons {
  width: 100%;
  padding-left: 10vw;
}
#news .wrapper .section-buttons button {
  margin: 0 auto;
  color: #343434;
  font-size: 18px;
  cursor: pointer;
}
#news .wrapper .section-buttons button:hover {
  opacity: 0.7;
}

/* --------------------------------
 * company
 * -------------------------------- */
/* -------------------------------- */
/* --------------------------------

 * mission smart phone

 * -------------------------------- */
@media (max-width: 769px) {
  #mission {
    padding-top: 5vh;
  }
  #mission .container {
    padding: 10vh 5vw 12vh 5vw;
  }
  #mission .container .section-title {
    font-size: 25px;
  }
  #mission .container__text p {
    font-size: 11px;
  }
}
/* --------------------------------

 * service smart phone

 * -------------------------------- */
@media (max-width: 769px) {
  #service {
    margin: 10vh 0 15vh;
  }
  #service .section-title {
    margin-bottom: 0;
    padding-left: 8vw;
    font-size: 25px;
  }
  #service .container {
    display: block;
  }
  #service .container .section-subtitle {
    margin: 3vh 0 1vh;
    padding-left: 5vw;
    font-family: "Shippori Mincho", serif;
    font-size: 15px;
    font-weight: lighter;
  }
  #service .container .left {
    flex-direction: column-reverse !important;
  }
  #service .container__box {
    display: flex;
    flex-direction: column;
    padding: 0 2vw;
    margin: 0 0 5vh 0;
  }
  #service .container__box--images {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
  }
  #service .container__box--images img {
    position: relative;
  }
  #service .container__box--text {
    padding: 0 2vw;
    margin-top: 0;
    width: 100%;
  }
  #service .container__box--text h4 {
    height: auto;
    margin-top: 1vh;
    margin-bottom: 1vh;
    color: #343434;
    white-space: nowrap;
    font-size: 15px;
    font-weight: lighter;
  }
  #service .container__box--text p {
    font-size: 11px;
    line-height: 1.8;
  }
}
/* --------------------------------

 * officer smart phone

 * -------------------------------- */
@media (max-width: 769px) {
  #officer {
    margin: 10vh 0;
    padding: 0;
    box-sizing: border-box;
    width: 100%;
    font-family: "Shippori Mincho", serif;
    color: #343434;
  }
  #officer .section-title {
    margin-bottom: 2vh;
    text-align: center;
    font-family: "Shippori Mincho", serif;
    font-size: 25px;
    font-weight: lighter;
  }
  #officer .container__box {
    display: flex;
    flex-direction: column;
  }
  #officer .container__box--images {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 15vw;
    align-items: center;
    width: 100%;
  }
  #officer .container__box--images img {
    position: relative;
  }
  #officer .container__box--images h4 {
    position: absolute;
    color: white;
    white-space: nowrap;
    font-size: 20px;
    font-weight: lighter;
  }
  #officer .container__box--text {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  #officer .container__box--text h4 {
    text-align: center;
    margin-top: 1vh;
    margin-bottom: 1.5vh;
    font-size: 20px;
    font-weight: lighter;
  }
  #officer .container__box--text p {
    font-size: 11px;
  }
}
/* --------------------------------

 * news smart phone

 * -------------------------------- */
@media (max-width: 769px) {
  #news {
    max-width: 1100px;
    margin: 5vh auto 10vh;
    padding: 0 5vw;
    width: 100%;
  }
  #news .wrapper .section-title {
    padding-left: 3vw;
    font-size: 20px;
    font-weight: lighter;
  }
  #news .wrapper .news-box .news-item {
    padding-left: 10vw;
  }
  #news .wrapper .news-box .news-item .detail-link {
    margin-bottom: 2vh;
  }
  #news .wrapper .news-box .news-item .detail-link .title {
    font-size: 15px;
    font-weight: 400;
  }
  #news .wrapper .news-box .news-item .detail-link .time {
    font-family: "Noto Sans JP";
    font-size: 8px;
  }
  #news .wrapper .section-buttons {
    padding-left: 10vw;
  }
  #news .wrapper .section-buttons button {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: left;
    color: #343434;
    font-size: 18px;
    cursor: pointer;
  }
  #news .wrapper .section-buttons button:hover {
    opacity: 0.7;
  }
}
/* --------------------------------

 * カテゴリータイトル

 * -------------------------------- */
.categoryName {
  padding: 10vh 0;
  color: #d3d3d3;
  font-size: 5.5vw;
}
.categoryName::after {
  content: "_";
}
@media screen and (max-width: 820px) {
  .categoryName {
    padding: 3vh 5vw;
    color: #d3d3d3;
    font-size: 50px;
  }
}

.main-container {
  max-width: 1100px;
  padding: 0 5vw;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  .main-container {
    padding: 0 3vw;
  }
}

/* --------------------------------

 * アーカイブ

 * -------------------------------- */
.newsLists {
  padding-top: 10vh;
}
.newsLists a {
  display: block;
}
.newsLists .news-body {
  display: flex;
  align-items: flex-end;
  width: 100%;
  padding: 3vh 0 2vh;
  border-bottom: solid 1px #d3d3d3;
  font-family: "Shippori Mincho", serif;
}
.newsLists .news-body time {
  color: #666666;
  font-size: 12px;
}
.newsLists .news-body .title {
  padding-left: 3vw;
  color: #343434;
  font-size: 13px;
  font-weight: 400;
}
.newsLists .news-body .news-link {
  width: 50%;
  cursor: pointer;
  display: block;
}
.newsLists .news-body img {
  transform: scale(1);
  /*速さの変更*/
  transition: 0.5s ease-in-out;
  height: 100%;
}
.newsLists .news-body img:hover {
  transform: scale(1.2);
  /*拡大率の変更*/
}
.newsLists .news-body .thumbnail {
  width: 100%;
}
.newsLists .news-body .mask {
  display: block;
  line-height: 0;
  overflow: hidden;
  box-shadow: 1px 3px 3px 3px #d3d3d3;
}
.newsLists .news-body .title-container {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: space-between;
  justify-content: space-between;
  height: auto;
  width: 50%;
  padding: 3vw 0 2vh 5vw;
}
.newsLists .news-body .title-container .title {
  color: #343434;
  font-size: 3vw;
}
.newsLists .news-body .title-container .news-text {
  padding-top: 1vh;
  color: #343434;
  font-size: 1.2vw;
}
.newsLists .news-body .title-container .news-link-text {
  display: flex;
  align-items: center;
  width: 30%;
  padding-top: 1vh;
  color: #343434;
  font-size: 1.5vw;
  cursor: pointer;
}
.newsLists .news-body .title-container .news-link-text:hover .stickarrow {
  transition: all 1s ease;
  left: 9vw;
}
.newsLists .news-body .title-container .news-link-text:hover p {
  opacity: 0.5;
  transition: all 1s ease;
}
.newsLists .news-body .title-container .news-link-text:active .stickarrow {
  transition: all 0.3s ease;
  width: 150px;
  border-bottom: 3px solid coral;
  border-right: 3px solid coral;
}
.newsLists .news-body .title-container .news-link-text p {
  width: 8vw;
  text-align: left;
  white-space: nowrap;
  color: #343434;
  font-size: 1.1vw;
  transition: all 1s ease;
}
.newsLists .news-body .title-container .news-link-text .stickarrow {
  position: absolute;
  left: 8vw;
  transition: all 1s ease;
  object-fit: contain;
  width: 40px;
  height: 10px;
  box-shadow: 2px 2px 2px #d3d3d3;
  transform: skew(45deg);
}
.newsLists .news-body .title-container .btnripple3 {
  /*波紋の基点とするためrelativeを指定*/
  position: relative;
  /*リンクの形状*/
  margin: 0 10px 20px 10px;
  text-decoration: none;
  color: #333;
  outline: none;
}
.newsLists .news-body .title-container .btnripple3:hover::before {
  content: "";
  /*絶対配置で波形の位置を決める*/
  position: absolute;
  left: 30%;
  top: 0;
  /*波形の形状*/
  border: 1px solid #333;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  /*はじめは不透明*/
  opacity: 1;
  /*アニメーションの設定*/
  animation: 1s circleanime2 forwards;
}

/* ページナビゲーション */
.page_navi {
  margin: 5vh 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.page_navi li {
  margin: 0 6.5px;
  width: 36px;
  height: 36px;
  border: 1px solid #d0d0d0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page_navi li a {
  width: 36px;
  height: 36px;
  text-align: center;
  position: relative;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page_navi li.current {
  color: #fff;
  font-weight: bold;
  padding: 3px 7px;
  background: #666666;
  border: solid 1px #666666;
}

.page_navi li:hover {
  opacity: 0.8;
}

.page_navi li.page_nums span {
  color: #fff;
  padding: 3px 7px;
  background: #666;
  display: inline-block;
  border: solid 1px #333;
}

/*波形が広がるアニメーション*/
@keyframes circleanime2 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
/* --------------------------------

 * アーカイブ smart phone

 * -------------------------------- */
@media screen and (max-width: 820px) {
  .newsLists {
    margin-bottom: 10vh;
  }
  .newsLists .news-body {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 100%;
    padding: 5vh 0;
    border-bottom: 1px solid #d3d3d3;
  }
  .newsLists .news-body .thumbnail {
    width: 100%;
  }
  .newsLists .news-body .mask {
    box-shadow: 1px 1px 1px 1px #d3d3d3;
  }
  .newsLists .news-body .title-container {
    width: 100%;
    padding-top: 3vh;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  .newsLists .news-body .title-container .title {
    font-size: 20px;
  }
  .newsLists .news-body .title-container .news-text {
    padding-top: 1vh;
    font-size: 12px;
  }
}
/* --------------------------------

 * ニュース

 * -------------------------------- */
.news {
  max-width: 950px;
  margin: 10vh auto 20vh;
  font-family: "Shippori Mincho", serif;
  color: #343434;
}
.news .time {
  color: #666666;
  font-size: 13px;
}
.news .title {
  margin: 2vh 0 3vh;
  color: #343434;
  font-size: 20px;
  font-weight: bold;
}
.news .news-body {
  border-bottom: 1px solid #d3d3d3;
  padding-bottom: 5vh;
  margin-bottom: 3vh;
}
.news .news-body p {
  line-height: 1.5;
  font-size: 13px;
}

/* --------------------------------
 * company
 * -------------------------------- */
.company {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  color: #343434;
  z-index: -5;
  width: 100%;
}
.company .company-profile {
  padding: 5vh 15vw;
  background-color: #fff;
  margin: 10vh 0;
}
.company .company-profile .container {
  display: flex;
  padding-left: 5vw;
  border-bottom: 1px solid #777777;
}
.company .company-profile .container .title {
  width: 25%;
  padding: 2vh 3vw;
  font-size: 20px;
  color: #343434;
  font-family: "Shippori Mincho", serif;
}
.company .company-profile .container .info {
  width: 75%;
  padding: 2vh 0;
  font-size: 20px;
  color: #343434;
}
.company .company-profile .container p {
  font-family: "Shippori Mincho", serif;
}

/* -------------------------------- */
/* --------------------------------
 * company smart phone
 * -------------------------------- */
@media (max-width: 769px) {
  .company {
    margin-bottom: 10vh;
    font-weight: 400;
    color: #343434;
  }
  .company .company-profile {
    padding: 3vh 3vw 4vh;
    background-color: #fff;
    margin: 3vh 0;
  }
  .company .company-profile .container {
    display: flex;
    padding-left: 5vw;
    border-bottom: 1px solid #777777;
  }
  .company .company-profile .container .title {
    width: 25%;
    padding: 2vh 1.5vw;
    font-size: 2.3vw;
    color: #343434;
  }
  .company .company-profile .container .info {
    width: 75%;
    padding: 2vh 0;
    padding-left: 1.3vw;
    font-size: 2.3vw;
    color: #343434;
  }
}
#contact {
  padding-top: 100px;
  padding-bottom: 100px;
  min-height: 60vh;
  background-color: #f9f9f9;
}
#contact .boxInner {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
#contact .boxInner .pitch-intro {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 50px;
  text-align: center;
}
#contact .brandRegFormBox {
  padding: 4%;
  background-color: #FFFFFF;
  border-radius: 20px;
  margin: 0 auto;
  margin-bottom: 20px;
  background-color: #FFFFFF;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  border: transparent;
  max-width: none;
  margin-left: 4%;
  margin-right: 4%;
  box-sizing: border-box;
}
#contact .brandRegFormBox .fieldset {
  margin-bottom: 30px;
}
#contact .brandRegFormBox .formGroup label {
  display: block;
  text-align: left;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 1;
}
@media (max-width: 769px) {
  #contact {
    text-align: left;
  }
  #contact h4 {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 25px;
  }
  #contact p {
    font-size: 12px;
    margin-bottom: 20px;
    line-height: 1.8;
    letter-spacing: 0.13rem;
  }
  #contact small {
    font-size: 8px;
  }
}

.brandRegFormBox {
  padding: 4%;
  background-color: #FFFFFF;
  border-radius: 20px;
  margin: 0 auto;
  margin-bottom: 20px;
  background-color: #FFFFFF;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  border: transparent;
  max-width: none;
  margin-left: 4%;
  margin-right: 4%;
  box-sizing: border-box;
}

.brandRegFormBox fieldset {
  margin-bottom: 30px;
}

.formGroup label {
  display: block;
  text-align: left;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 1;
}

input[type=text], input[type=email], select, textarea, textarea.form-control {
  height: auto;
  margin: 0;
  padding: 0 20px;
  vertical-align: middle;
  background: #F8F8F8;
  border: 1px solid #DDDDDD;
  font-size: 16px;
  font-weight: normal;
  line-height: 50px;
  color: #000000;
  border-radius: 5px;
  -o-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  box-sizing: border-box;
}

textarea, textarea.form-control {
  line-height: 1.6;
  min-height: 300px;
  padding: 10px 20px;
  min-height: 200px;
}

.formGroup input[type=text], .formGroup input[type=email], .formGroup textarea {
  width: 100%;
}

.formGroup {
  margin-bottom: 30px;
}

.alignC {
  text-align: center;
}

#contactSendBox {
  background-color: #343434;
  color: #FFFFFF;
  font-size: 18px;
}

.btn-primary {
  background-color: #262626;
  color: #FFFFFF;
  font-size: 18px;
}

.btn {
  border-radius: 50px;
  line-height: 1.3;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.alignR {
  text-align: right !important;
}

.pitch-intro-done {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 20vh 0 10vh;
  text-align: center;
}

.donemessage {
  padding-bottom: 10vh;
}
.donemessage p {
  font-size: 18px;
  margin: 10px;
  text-align: center;
}
@media (max-width: 769px) {
  .donemessage p {
    font-size: 10px;
    margin: 10px;
    text-align: center;
  }
}

/* --------------------------------

 * page-service

 * -------------------------------- */
.fade-out {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: white;
  top: -100vh;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
}
.fade-out .title-top {
  display: none;
  font-size: 54px;
}

.fade-out-no-youtube {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: white;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
}
.fade-out-no-youtube .title-top {
  display: none;
  font-size: 60px;
}

.page-head {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}
.page-head img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-head .caption {
  position: relative;
  top: 0;
  left: 61.8%;
  width: 38.2%;
  height: 70%;
  text-orientation: upright;
  writing-mode: vertical-rl;
  z-index: -1;
  padding: 8vh 13.5vw 0 0;
  background-color: white;
}
.page-head .caption h2 {
  font-size: 3.5vw;
  margin-left: 1vw;
  letter-spacing: 0.2em;
}
.page-head .caption h2.title-smaller {
  font-size: 2vw;
}
.page-head .caption p {
  padding-top: 4.5vh;
  font-size: 1.3vw;
}

.page-head {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.page-head img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-head .caption {
  position: relative;
  top: 0;
  left: 61.8%;
  width: 38.2%;
  height: 70%;
  text-orientation: upright;
  writing-mode: vertical-rl;
  z-index: -1;
  padding: 8vh 13.5vw 0 0;
  background-color: white;
}
.page-head .caption h2 {
  font-size: 3.5vw;
  margin-left: 1vw;
  letter-spacing: 0.2em;
}
.page-head .caption h2.title-smaller {
  font-size: 2vw;
}
.page-head .caption p {
  padding-top: 4.5vh;
  font-size: 1.3vw;
}

.page-service {
  background-color: white;
  position: relative;
  z-index: 1;
  margin-top: 100vh;
}
.page-service .container {
  background-color: #fcfcfc;
  margin: 0 auto;
  padding: 96px 0 120px;
}
.page-service .container .box {
  width: 1200px;
  margin: 0 auto;
}
.page-service .container .box h2 {
  margin-bottom: 18px;
  font-size: 35px;
}
.page-service .container .box h4 {
  margin-bottom: 12px;
  font-size: 24px;
  white-space: nowrap;
}
.page-service .container .box h5 {
  font-size: 18px;
  white-space: nowrap;
  line-height: 2.5;
}
.page-service .container .box p {
  font-size: 13px;
  margin-bottom: 12px;
  line-height: 2.5;
  white-space: nowrap;
}
.page-service .container .box__image {
  width: 450px;
  z-index: 2;
}
.page-service .container .box__text {
  width: 450px;
  z-index: 1;
}
.page-service .container .box-1 {
  width: 900px;
  display: flex;
  margin-bottom: 96px;
  align-items: center;
}
.page-service .container .box-1__text {
  padding-right: 24px;
}
.page-service .container .box-2 {
  display: flex;
  width: 900px;
  margin-bottom: 96px;
  align-items: center;
}
.page-service .container .box-2__text {
  padding-left: 36px;
  z-index: 2;
}
.page-service .container .box-3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.page-service .container .box-3__image {
  width: 900px;
  opacity: 0.8;
  z-index: -1;
}
.page-service .container .box-3__text {
  width: 800px;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.3);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(5px);
  padding: 36px 48px;
}
.page-service .container .box-3__text h4 {
  text-align: center;
}
.page-service .container .box-3__text h5 {
  text-align: center;
  margin-bottom: 36px;
  font-size: 18px;
}
.page-service .container .box-4 {
  width: 800px;
  display: flex;
  margin-bottom: 96px;
  align-items: center;
}
.page-service .container .box-4__text {
  width: 400px;
  padding-left: 0;
  padding-right: 60px;
  z-index: 2;
}
.page-service .container .box-4__image {
  z-index: 1;
  width: 400px;
}
.page-service .container .box-5 {
  width: 800px;
  display: flex;
  align-items: center;
}
.page-service .container .box-5__image {
  z-index: 1;
  width: 400px;
}
.page-service .container .box-5__text {
  width: 400px;
  padding-left: 60px;
  padding-right: 0;
  z-index: 2;
}
.page-service .container .box-5 .vertical img {
  width: auto !important;
  height: 254px !important;
}
.page-service .container .box-6 {
  width: 1000px;
  display: flex;
  margin-bottom: 96px;
}
.page-service .container .box-6__text {
  width: 59%;
  padding-left: 0;
  padding-right: 60px;
  z-index: 2;
}
.page-service .container .box-6__image {
  z-index: 1;
  width: 41%;
}
.page-service .container .box-7 {
  width: 1000px;
  display: flex;
}
.page-service .container .box-7__image {
  z-index: 1;
  width: 41%;
}
.page-service .container .box-7__text {
  width: 59%;
  padding-left: 60px;
  padding-right: 0;
  z-index: 2;
}
.page-service .container .box-7 .vertical img {
  width: auto !important;
  height: 254px !important;
}
.page-service .container .movie {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.page-service .container .movie iframe {
  margin: 0 auto;
  width: 900px;
  height: 505px;
  border: 0;
}
.page-service .base-item {
  margin: 0 auto;
  padding: 96px 0;
  width: 900px;
  text-align: center;
}
.page-service .slick-slide {
  margin-right: 5px;
  margin-left: 5px;
}
@media screen and (max-width: 769px) {
  .page-service .container {
    padding: 0;
    margin: 0 auto;
  }
  .page-service .container .box {
    width: 370px;
    margin: 36px auto;
  }
  .page-service .container .box h4 {
    margin-bottom: 12px;
    font-size: 25px;
  }
  .page-service .container .box p {
    font-size: 11px;
    margin-bottom: 6px;
  }
  .page-service .container .box-1 {
    display: flex;
    flex-direction: column;
  }
  .page-service .container .box-1__text {
    width: 370px;
    position: relative;
  }
  .page-service .container .box-1__image {
    width: 370px;
    margin-left: 0;
    opacity: 0;
    z-index: -1;
  }
  .page-service .container .box-2 {
    display: flex;
    flex-direction: column-reverse;
  }
  .page-service .container .box-2__image {
    width: 370px;
    margin-right: 0;
    z-index: -1;
  }
  .page-service .container .box-2__text {
    width: 370px;
    position: relative;
    text-align: left;
  }
  .page-service .container .box-3 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 36px;
  }
  .page-service .container .box-3__image {
    width: 370px;
    opacity: 0.8;
    z-index: -1;
  }
  .page-service .container .box-3__text {
    width: 370px;
    position: relative;
    background-color: rgba(255, 255, 255, 0.3);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(5px);
    padding: 12px 0;
  }
  .page-service .container .box-3__text h4 {
    text-align: center;
  }
  .page-service .container .box-3__text h5 {
    text-align: center;
    margin-bottom: 12px;
    font-size: 14px;
  }
  .page-service .base-item {
    margin: 0 auto;
    padding-bottom: 96px;
    width: 370px;
  }
  .page-service .slick-slide {
    margin-right: 5px;
    margin-left: 5px;
  }
}

.page-caption {
  font-size: 13px;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.base-item *,
.base-item *:before,
.base-item *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}
.base-item .btn,
.base-item a.btn,
.base-item button.btn {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #343434;
  border-radius: 0.5rem;
}
.base-item .btn:hover,
.base-item a.btn:hover,
.base-item button.btn:hover {
  opacity: 0.7;
}
.base-item a.btn-border {
  border-radius: 0;
}
.base-item a.btn-border:before,
.base-item a.btn-border:after {
  position: absolute;
  width: 100%;
  height: 1px;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background: #666666;
}
.base-item a.btn-border:before {
  top: 0;
  left: 0;
}
.base-item a.btn-border:after {
  right: 0;
  bottom: 0;
}
.base-item a.btn-border:hover:before,
.base-item a.btn-border:hover:after {
  width: 0;
}

#service .btn,
#service a.btn,
#service button.btn {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #343434;
  border-radius: 0.5rem;
  margin-left: 350px;
  margin-top: 50px;
}
#service .btn:hover,
#service a.btn:hover,
#service button.btn:hover {
  opacity: 0.5;
}
@media screen and (max-width: 769px) {
  #service .btn,
#service a.btn,
#service button.btn {
    margin-left: 170px;
    margin-top: 24px;
  }
}
#service a.btn-svg {
  font-weight: 700;
  line-height: 54px;
  width: 204px;
  height: 54px;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
  background-color: transparent;
}
#service a.btn-svg svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#service a.btn-svg svg rect {
  -webkit-transition: all 400ms ease;
  transition: all 400ms ease;
  stroke: #4D4D4D;
  stroke-width: 1;
  stroke-dasharray: 200px, 16px;
  stroke-dashoffset: 70px;
}
#service a.btn-svg:hover svg rect {
  stroke-dashoffset: 284px;
}
#service a.btn-svg span {
  color: #000;
}

/* YouTubeエリアの設定 */
#youtube-area {
  position: fixed;
  z-index: 1;
  /* iframeより手前に要素を配置 */
  top: 0;
  left: 31.2vw;
  width: 61.8vw;
  height: 34.7625vw;
  /* 16:9アスペクト比 */
  background-color: white;
  overflow: hidden;
  display: none;
}

#youtube {
  width: 100%;
  height: 100%;
  pointer-events: none;
  /* iframeがクリックイベントをキャッチしないように */
}

#youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}

#youtube-area-2 {
  position: fixed;
  z-index: 1;
  /* iframeより手前に要素を配置 */
  top: 0;
  left: 0;
  width: 100vw;
  height: 56.25vw;
  /* 16:9アスペクト比 */
  background-color: white;
  overflow: hidden;
}

#youtube-2 {
  width: 100%;
  height: 100%;
  pointer-events: none;
  /* iframeがクリックイベントをキャッチしないように */
}

#youtube-2 iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}

#muteButton, #volumeSlider {
  position: fixed;
  z-index: 9999;
  /* ボタンを最前面に配置 */
}

#muteButton {
  top: 92.5%;
  left: 6%;
  transform: translate(-50%, -50%);
  font-size: 1.1vw;
  color: lightgray;
}

#volumeSlider {
  top: 97%;
  left: 4%;
  transform: translate(-50%, -50%);
  width: 4vw;
}

#muteButton2, #volumeSlider2 {
  position: absolute;
  z-index: 9999;
  /* ボタンを最前面に配置 */
}

#muteButton2 {
  top: 92.5%;
  left: 6%;
  transform: translate(-50%, -50%);
  font-size: 1.1vw;
  color: lightgray;
}

#volumeSlider2 {
  top: 97%;
  left: 4%;
  transform: translate(-50%, -50%);
  width: 4vw;
}

/*# sourceMappingURL=styles.css.map */
