@charset "UTF-8";

.header {
  -webkit-transition: 1s;
  transition: 1s;
  position: fixed;
  top: 0;
  z-index: 9999;
  width: 100%;
  padding: 25px 10px 35px 15px;
}

.header-inner {
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.header-nav {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.header-nav ul li {
  display: block;
  text-align: center;
  margin-right: 34px;
}

.header-nav ul li a {
  font-size: 0.875rem;
  color: #FFFFFF;
  font-weight: bold;
}

.header-nav ul .navItem a::after {
  color: #FFFFFF;
  display: block;
  margin-top: 0.1rem;
  font-size: 0.625rem;
  font-weight: bold;
  letter-spacing: 2px;
}

.header-nav ul .nav-news a::after {
  content: "NEWS";
}

.header-nav ul .nav-message a::after {
  content: "MESSAGE";
}

.header-nav ul .nav-work a::after {
  content: "WORK";
}

.header-nav ul .nav-history a::after {
  content: "HISTORY";
}

.header-nav ul .nav-rule a::after {
  content: "RULE";
}

.header-nav ul .nav-newsletter a::after {
  content: "NEWS LETTER";
}

.header-nav ul .nav-letter a::after {
  content: "LETTER";
}

.header-nav ul .nav-connection a::after {
  content: "CONNECTION";
}

.header-nav ul .nav-support a::after {
  content: "SUPPORT";
}

.header-nav .nav-contact {
  display: none;
}

.header-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-logo img {
  width: 154px;
  height: 42px;
}

.header-btns .contact-btn {
  color: #ffff;
  font-size: 0.875rem;
  padding: 13px 20px 11px;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.header-btns a {
  font-size: 0.875rem;
  font-weight: bold;
}

.header-archive,
.header-single {
  padding: 25px 10px 20px 15px;
  background: #802223;
  -webkit-transition: 1s;
  transition: 1s;
}

.header .header-logo-sp img {
  width: 154px;
  height: 35px;
  position: absolute;
  top: 3%;
  left: 6%;
  display: none;
}

.news-cards {
  padding-top: 3rem;
  padding-bottom: 2rem;
  width: 80%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 2em auto 0 auto;
  max-width: 960px;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.news-cards .news-card {
  padding: 0 40px;
  width: 100%;
  margin: 20px 0;
  width: calc(96% / 3);
  border-right: 1px solid rgba(187, 187, 187, 0.5);
}

.news-cards .news-card:nth-child(3) {
  border-right: none;
}

.news-cards img {
  max-width: 100%;
  height: auto;
  margin-bottom: 12px;
}

.news-cards .image-wrap {
  position: relative;
  overflow: hidden;
  padding-top: 95%;
  margin-bottom: 13px;
}

.news-cards .image-wrap img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.news-cards-card-img-box {
  width: 100%;
}

.news-cards .news-card_date {
  padding-bottom: 16px;
  text-align: left;
  font-size: 0.75rem;
  line-height: 24px;
}

.news-cards .news-card_date span {
  font-size: 14px;
  color: #FFFFFF;
  letter-spacing: 3px;
}

.news-cards .news-card-text {
  font-size: 1rem;
  color: #FFFFFF;
  margin-bottom: 20px;
  text-align: justify;
}

.news-cards::after {
  content: "";
  display: block;
  width: calc(100% / 3);
}

.newsletter {
  /* 全体のスタイル */
  /* 全スライド共通スタイル */
}

.newsletter .s-pdf-images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 80%;
}

.newsletter .s-pdf-images .s-pdf-img {
  width: 10.65%;
}

.newsletter .s-pdf-images .s-pdf-img img {
  width: auto;
}

.newsletter .s-pdf-images p {
  letter-spacing: 1px;
  margin-top: 24px;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  color: #454545;
}

.newsletter .swiper-wrapper {
  width: 100%;
}
.newsletter .swiper-wrapper_pc {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.newsletter .swiper-wrapper.sp {
  display: none;
}
@media only screen and (max-width: 959px){
	.newsletter .swiper-wrapper_pc {
	  display: none;
	}
	.newsletter .swiper-wrapper.sp {
	  display: flex;
	}
}
.newsletter .swiper-wrapper_pc .s-pdf-img {
  width: 25%;
  height: auto;
}
.newsletter .swiper-wrapper_pc .s-pdf-img:nth-child(n + 5) {
	margin-top: 50px;
}

.newsletter .swiper-slide {
  width: 100%;
  text-align: center;
}

.newsletter .swiper-button-prev {
  background-image: url(../img/prev-next.png);
  height: 100px;
  top: 39%;
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
  display: none;
}

.newsletter .swiper-button-next {
  background-image: url(../img/prev-next.png);
  top: 39%;
  height: 100px;
  display: none;
}

.work-contents {
  background: url(../img/work_background.png) no-repeat center center/cover;
  padding-top: 133px;
  padding-bottom: 61px;
  position: relative;
}

.work-content {
  padding: 1.8rem 4.75rem 1.8rem 4rem;
  background-color: rgba(255, 255, 255, 0.9);
  position: relative;
}

.work-year {
  margin-bottom: 1rem;
  color: #802223;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 4px;
}

.work-content-first {
  width: 43.05%;
  margin-left: 184px;
  margin-bottom: 45px;
}

.work-content-second {
  width: 48.32%;
  margin-left: 513px;
  margin-bottom: 51px;
}

.work-content-third {
  width: 57.39%;
  margin-left: 145px;
  margin-bottom: 132px;
}

.work-content-four {
  width: 49.32%;
  margin-left: 513px;
}

.work-table tr {
  text-align: left;
  padding-bottom: 20px;
  padding-right: 45px;
  vertical-align: baseline;
  letter-spacing: 2px;
}

.work-table th {
  font-size: 0.875rem;
  font-weight: bold;
  padding-bottom: 20px;
  padding-right: 45px;
  width: 30%;
}

.work-table th .responsive-br {
  display: none;
}

.work-table td {
  font-size: 1rem;
  padding-bottom: 20px;
  font-weight: bold;
  line-height: 27px;
}

.work-table td .responsive-br-c {
  display: none;
}

.work-table td .responsive-br-sp {
  display: none;
}

.work-precautions {
  font-size: 0.875rem;
  font-weight: bold;
  letter-spacing: 1px;
  padding-bottom: 20px;
}

.work-documents {
  background: url(../img/work_history.png) center;
  background-color: rgba(204, 172, 172, 0.1);
  /* 回答部分が開いている時は文字削除*/
}

.work-documents-inner {
  padding: 121px 0;
  width: 80%;
  margin: 0 auto;
}

.work-documents-history {
  border-top: 1px solid rgba(118, 41, 39, 0.4);
  border-bottom: 1px solid rgba(118, 41, 39, 0.4);
  margin: 0 auto;
}

.work-documents-history-ttl {
  margin-top: 64px;
  text-align: center;
  font-size: 1.5rem;
  color: #802223;
  font-weight: bold;
  letter-spacing: 4px;
}

.work-documents-history-text {
  margin-top: 45px;
  text-align: center;
  font-size: 1rem;
  color: #802223;
  font-weight: bold;
  line-height: 38px;
  letter-spacing: 4px;
}

.work-documents-history-text .responsive-br-sp {
  display: none;
}

.work-documents .detail {
  cursor: pointer;
  letter-spacing: 2px;
  text-align: center;
  font-size: 0.875rem;
  color: #802223;
  font-weight: bold;
  width: 97px;
  text-align: center;
  margin: 38px auto 62px auto;
  border-bottom: 1px solid rgba(118, 41, 39, 0.4);
}

.work-documents .detail-all {
  letter-spacing: 2px;
  display: none;
  /* 非表示にしておく */
  padding: 21px 5px 21px 5px;
  font-size: 18px;
  position: relative;
  margin-bottom: 10px;
  font-size: 1rem;
}

.work-documents .detail-table {
  margin: 0 auto;
}

.work-documents .detail-table tr {
  text-align: left;
  padding-bottom: 20px;
  padding-right: 45px;
  vertical-align: baseline;
  color: #802223;
}

.work-documents .detail-table th {
  font-size: 0.75rem;
  font-weight: bold;
  padding-bottom: 10px;
  padding-right: 45px;
}

.work-documents .detail-table td {
  font-size: 0.875rem;
  padding-bottom: 10px;
  font-weight: bold;
  line-height: 27px;
}

.work-documents .open {
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  margin-bottom: 0;
}

.work-documents .close {
  display: none;
}

.work-documents .detail-constitution ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  padding-bottom: 20px;
  vertical-align: baseline;
  color: #802223;
  width: 100%;
}

.work-documents .detail-constitution ul li {
  padding-bottom: 20px;
  width: 100%;
}

.work-documents .detail-constitution h4 {
  font-size: 1.125rem;
  margin-bottom: 7px;
  margin-left: -12px;
}

.work-documents .detail-constitution .last-mes {
  margin-top: 50px;
}

.work-documents .detail-constitution p {
  font-size: 0.875rem;
  line-height: 30px;
  letter-spacing: 2px;
  text-align: justify;
}

.work-documents .detail-constitution ol li {
  font-size: 0.875rem;
  line-height: 30px;
  letter-spacing: 2px;
  text-align: justify;
  margin-left: 26px;
  padding-bottom: 0;
}

.work-documents .detail-constitution .chapter1,
.work-documents .detail-constitution .chapter2,
.work-documents .detail-constitution .chapter6,
.work-documents .detail-constitution .chapter7 {
  list-style-type: none;
}

.work-documents .detail-constitution .chapter1 li,
.work-documents .detail-constitution .chapter2 li,
.work-documents .detail-constitution .chapter6 li,
.work-documents .detail-constitution .chapter7 li {
  font-size: 0.875rem;
  line-height: 30px;
  letter-spacing: 2px;
  text-align: justify;
  margin-left: 26px;
  padding-bottom: 0;
}

.work-documents .detail-constitution .chapter1,
.work-documents .detail-constitution .chapter2,
.work-documents .detail-constitution .chapter4,
.work-documents .detail-constitution .chapter6,
.work-documents .detail-constitution .chapter7 {
  list-style-type: none;
  margin-left: 42px;
  /* マーカーを3文字寄せた分、ULにマージンを設定*/
}

.work-documents .detail-constitution ol.chapter1 li:nth-child(1)::before {
  content: "第1条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter1 li:nth-child(2)::before {
  content: "第2条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter1 li:nth-child(3)::before {
  content: "第3条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter4 li:nth-child(1)::before {
  content: "第6条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter4 li:nth-child(2)::before {
  content: "第7条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter2 li:nth-child(1)::before {
  content: "第4条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -67px;
}

.work-documents .detail-constitution ol.chapter6 li:nth-child(1)::before {
  content: "第11条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -72px;
}

.work-documents .detail-constitution ol.chapter6 li:nth-child(2)::before {
  content: "第12条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -72px;
}

.work-documents .detail-constitution ol.chapter6 li:nth-child(3)::before {
  content: "第13条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -72px;
}

.work-documents .detail-constitution ol.chapter6 li:nth-child(4)::before {
  content: "第14条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -72px;
}

.work-documents .detail-constitution ol.chapter6 li:nth-child(5)::before {
  content: "第15条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -72px;
}

.work-documents .detail-constitution ol.chapter7 li:nth-child(1)::before {
  content: "第16条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -74px;
}

.work-documents .detail-constitution ol.chapter7 li:nth-child(2)::before {
  content: "第17条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -74px;
}

.work-documents .detail-constitution ol.chapter7 li:nth-child(3)::before {
  content: "第18条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -74px;
}

.work-documents .detail-constitution ol.chapter7 li:nth-child(4)::before {
  content: "第19条　";
  /* ←ここにリストマーカーにしたい文字列を設定 */
  margin-left: -74px;
}

.work-documents .detail-constitution .numbersnone {
  list-style-type: none;
}

.work-documents .detail-constitution .second-text {
  margin-left: 45px;
}

.work-documents .close-area {
  letter-spacing: 2px;
  text-align: center;
  margin-top: 60px;
}

.work-documents .close-area .close-btn {
  letter-spacing: 2px;
  text-align: center;
  color: #802223;
  font-size: 0.875rem;
  font-weight: bold;
  cursor: pointer;
}

.work-documents-constitution {
  border-top: 1px solid rgba(118, 41, 39, 0.4);
  border-bottom: 1px solid rgba(118, 41, 39, 0.4);
  margin: 46px auto;
}

.work-documents-constitution-ttl {
  letter-spacing: 4px;
  margin-top: 64px;
  text-align: center;
  font-size: 1.5rem;
  color: #802223;
  font-weight: bold;
}

.work-documents-constitution-text {
  letter-spacing: 4px;
  margin-top: 45px;
  text-align: center;
  font-size: 1rem;
  color: #802223;
  font-weight: bold;
  line-height: 38px;
}

.work-documents-constitution-text .responsive-br-sp {
  display: none;
}

.work-documents .detail-table {
  margin: 0 auto;
}

.work-documents .detail-table tr {
  color: #802223;
  text-align: left;
  padding-bottom: 20px;
  padding-right: 45px;
  vertical-align: baseline;
  letter-spacing: 2px;
}

.work-documents .detail-table th {
  font-size: 0.875rem;
  font-weight: bold;
  padding-bottom: 20px;
  padding-right: 45px;
  width: 30%;
}

.work-documents .detail-table th .responsive-br {
  display: none;
}

.work-documents .detail-table td {
  font-size: 1rem;
  padding-bottom: 20px;
  font-weight: bold;
  line-height: 27px;
}

.work-documents .detail-table td .responsive-br-c {
  display: none;
}

.work-documents .detail-table td .responsive-br-sp {
  display: none;
}

.work-documents .detail-part {
  margin: 0 auto;
}

.work-documents .detail-part tr {
  color: #802223;
  text-align: left;
  padding-bottom: 20px;
  padding-right: 45px;
  vertical-align: baseline;
  letter-spacing: 2px;
}

.work-documents .detail-part th {
  font-size: 0.875rem;
  font-weight: bold;
  padding-right: 45px;
}

.work-documents .detail-part th .responsive-br {
  display: none;
}

.work-documents .detail-part td {
  font-size: 1rem;
  font-weight: bold;
  line-height: 27px;
}

.work-documents .detail-part td .responsive-br-c {
  display: none;
}

.work-documents .detail-part td .responsive-br-sp {
  display: none;
}

.work-documents .close-area {
  width: 68px;
  text-align: center;
  margin: 60px auto 0 auto;
  border-bottom: 1px solid rgba(118, 41, 39, 0.4);
  text-align: center;
}

.work-documents .close-area .close-btn {
  cursor: pointer;
  letter-spacing: 2px;
  text-align: center;
  color: #802223;
  font-size: 0.875rem;
  font-weight: bold;
}

.main {
  /*スクロールダウン全体の場所*/
  /*Scrollテキストの描写*/
  /* 丸の描写 */
  /*下からの距離が変化して丸の全体が上から下に動く*/
  /*上から下にかけて丸が透過→不透明→透過する*/
  /* 線の描写 */
}

.main .scrolldown2 {
  position: absolute;
  bottom: 0;
  right: 3%;
}

.main .scrolldown2 span {
  /*描画位置*/
  position: absolute;
  left: 10px;
  bottom: 10px;
  /*テキストの形状*/
  color: #eee;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
  /*縦書き設定*/
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

.main .scrolldown2:before {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: -1.8px;
  /*丸の形状*/
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #FFFF;
  /*丸の動き1.6秒かけて透過し、永遠にループ*/
  -webkit-animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
  animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}

@-webkit-keyframes circlemove {
  0% {
    bottom: 80px;
  }

  100% {
    bottom: -5px;
  }
}

@keyframes circlemove {
  0% {
    bottom: 80px;
  }

  100% {
    bottom: -5px;
  }
}

@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    opacity: 0;
  }
}

@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    opacity: 0;
  }
}

.main .scrolldown2:after {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: 0;
  /*線の形状*/
  width: 1px;
  height: 88px;
  background: rgba(255, 255, 255, 0.7);
}

.form .tab-wrap {
  margin: 0 auto;
}

.form .tab-wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 25%;
  margin: 0 auto;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.form .tab-btn {
  cursor: pointer;
  color: #ffff;
  font-size: 0.875rem;
  padding: 13px 20px 11px;
  text-align: center;
}

.form .tab-btn.show {
  cursor: pointer;
  color: #ffff;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.form .tab-contents {
  display: none;
  text-align: center;
}

.form .tab-contents.show {
  display: block;
}

.form iframe {
  width: 80%;
  height: 2297px;
  margin: 60px auto;
}

.form .iframe-small {
  width: 80%;
  height: 1000px;
  margin: 60px auto;
}

*,
*::after,
*::before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

dl,
dt,
dd {
  margin: 0;
  padding: 0;
}

header.scroll-nav {
  padding: 25px 10px 20px 15px;
  background: #802223;
  -webkit-transition: 1s;
  transition: 1s;
}

*:focus {
  outline: none;
}

.top {
  background: url(../img/top.jpg) no-repeat center center/cover;
  background-position: top;
}

.main {
  padding-top: 120px;
  padding-bottom: 192px;
  position: relative;
  height: 100vh;
}

.main-inner {
  padding-top: 130px;
  width: 80%;
  margin: 0 auto;
}

.main-title {
  font-size: 1rem;
  color: #FFFFFF;
  font-weight: bold;
  margin-bottom: 21px;
  letter-spacing: 4px;
}

.main-text {
  font-size: 1.625rem;
  color: #FFFFFF;
  font-weight: bold;
  margin-bottom: 64px;
  letter-spacing: 5px;
}

.main-text .responsive-br {
  display: none;
}

.main .contact {
  display: block;
  color: #FFFFFF;
  text-decoration: underline;
}

.news {
  background-color: #802223;
  background: url(../img/news_background.png) no-repeat center center/cover;
  padding-top: 146px;
  padding-bottom: 107px;
  margin: 0 auto;
  position: relative;
}

.news-inner {
  margin-right: auto;
  margin-left: auto;
}

.news .section-ttl {
  position: relative;
}

.news .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.news-ttl {
  color: #FFFFFF;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.news-ttl span {
  font-size: 0.75rem;
  color: #FFFFFF;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.news .more-text {
  border-bottom: 1px solid rgba(187, 187, 187, 0.5);
  width: 97px;
  text-align: center;
  margin: 0 auto;
}

.news .more-text a.card-more {
  letter-spacing: 4px;
  font-size: 0.875rem;
  color: #FFFFFF;
}

.message {
  background-color: #FFFFFF;
  padding-top: 196px;
  position: relative;
  overflow: hidden;
}

.message-inner {
  margin-right: auto;
  margin-left: auto;
}

.message .section-ttl {
  position: relative;
}

.message .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.message-img-background-flower {
  width: auto;
  height: auto;
  position: absolute;
  top: -26%;
  left: -65%;
}

.message-img-topline {
  width: 100px;
  height: 418px;
  position: absolute;
  top: 0;
}

.message-img-rightline {
  width: 84px;
  height: 1088px;
  position: absolute;
  top: 17%;
  right: 0;
}

.message-img-bottom {
  width: 98px;
  height: 340px;
  position: absolute;
  bottom: 15%;
  left: 0;
}

.message-ttl {
  color: #802223;
  margin-bottom: 105px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.message-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.message-text,
.message-second-text {
  text-align: center;
  line-height: 3.375rem;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 94px;
  letter-spacing: 4px;
}

.message .text-res {
  text-align: center;
  line-height: 3.375rem;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 54px;
  letter-spacing: 4px;
}

.message-personal {
  text-align: right;
  font-size: 1rem;
  line-height: 2.125rem;
  font-weight: bold;
  letter-spacing: 3px;
  width: 90%;
}

.message-personal span {
  font-size: 20px;
}

.message .section-ttl-work {
  position: relative;
}

.message .flower-img-work img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: 171px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.work {
  position: relative;
}

.work-inner {
  margin-right: auto;
  margin-left: auto;
}

.work-ttl {
  color: #802223;
  padding-top: 216px;
  margin-bottom: 112px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.work-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.work-img {
  display: flex;
  justify-content: center;
  align-items: center;
}

.work-img img {
  width: 430px;
  height: auto;
}

.newsletter {
  position: relative;
  padding: 180px 0 160px 0;
}

.newsletter-inner {
  margin: 0 auto;
}

.newsletter .section-ttl {
  position: relative;
}

.newsletter .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.newsletter-ttl {
  color: #802223;
  margin-bottom: 112px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.newsletter-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.newsletter .pdf-images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.newsletter .pdf-images .pdf-img {
  width: 10.65%;
  margin: 0 22px;
}

.newsletter .pdf-images .pdf-img img {
  width: auto;
}

.newsletter .pdf-images p {
  letter-spacing: 1px;
  margin-top: 24px;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
}

.letter {
  background-color: rgba(128, 34, 35, 0.1);
  position: relative;
  padding-top: 159px;
}

.letter-inner {
  margin: 0 auto;
}

.letter .section-ttl {
  position: relative;
}

.letter .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.letter-ttl {
  color: #802223;
  margin-bottom: 112px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.letter-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.letter-message {
  margin-top: 114px;
}

.letter-message-ttl {
  letter-spacing: 4px;
  font-weight: bold;
  font-size: 1.125rem;
  text-align: center;
  margin-bottom: 76px;
}

.letter-message-ttl .responsive-br {
  display: none;
}

.letter-message-card {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 102px;
}

.letter-message-card .letter-message-img {
  width: 22%;
  margin-right: 68px;
  margin-top: 10px;
}

.letter-message-card .letter-message-text {
  width: 54%;
  line-height: 36px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 4px;
}

.connection {
  position: relative;
  padding-top: 170px;
  background-color: rgba(204, 172, 172, 0.1);
}

.connection-inner {
  margin: 0 auto;
}

.connection .section-ttl {
  position: relative;
}

.connection .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.connection-ttl {
  color: #802223;
  margin-bottom: 99px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.connection-ttl .responsive-br {
  display: none;
}

.connection-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.connection-text {
  padding: 0 160px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 48px;
  text-align: justify;
}

.connection-img {
  display: flex;
  justify-content: center;
  align-items: center;
}

.connection-img img {
  width: 430px;
  height: auto;
}

.connection-btn {
  margin-top: 88px;
  margin-bottom: 153px;
  text-align: center;
}

.connection-contact-btn {
  letter-spacing: 2px;
  color: #ffff;
  font-size: 1rem;
  padding: 20px 63px;
  background-color: #802223;
}

.support {
  position: relative;
  padding-top: 240px;
}

.support-inner {
  margin: 0 auto;
}

.support .section-ttl {
  position: relative;
}

.support .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.support-ttl {
  color: #802223;
  margin-bottom: 99px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.support-ttl .responsive-br {
  display: none;
}

.support-ttl span {
  font-size: 0.75rem;
  color: #802223;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.support-text {
  padding: 0 160px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 48px;
  text-align: justify;
}

.support-personal {
  font-size: 0.875rem;
  font-weight: bold;
  letter-spacing: 3px;
  margin-top: 61px;
  margin-bottom: 87px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  width: 72%;
  background-color: rgba(204, 172, 172, 0.1);
  padding: 20px 0;
  color: #802223;
}

.support-personal .responsive-br-sp {
  display: none;
}

.support-img {
  display: flex;
  justify-content: center;
  align-items: center;
}

.support-img img {
  width: 430px;
  height: auto;
}

.support-btn {
  margin-top: 88px;
  margin-bottom: 153px;
  text-align: center;
}

.support-contact-btn {
  color: #ffff;
  font-size: 1rem;
  padding: 20px 63px;
  background-color: #802223;
}

.support-lib-inner {
  padding: 0 314px;
}

.support-lib {
  border-top: 1px solid rgba(118, 41, 39, 0.4);
  border-bottom: 1px solid rgba(118, 41, 39, 0.4);
  margin: 105px auto 86px auto;
}

.support-lib-ttl {
  letter-spacing: 2px;
  margin-top: 64px;
  text-align: center;
  font-size: 1.3rem;
  color: #802223;
  font-weight: bold;
}

.support-lib-text {
  letter-spacing: 2px;
  margin-top: 45px;
  margin-bottom: 74px;
  text-align: center;
  font-size: 1rem;
  color: #802223;
  font-weight: bold;
  line-height: 38px;
}

.support-mes-img {
  margin: 0 auto;
  padding: 74px 100px;
}

.support .contact-tel {
  background-color: #802223;
  background: url(../img/news_background.png) no-repeat center center/cover;
  padding: 45px 0 153px 0;
  margin-bottom: 38px;
  letter-spacing: 3px;
  position: relative;
}

.support .contact-tel .contact-tel-ttl .responsive-br-sp {
  display: none;
}

.support .contact-tel p {
  font-size: 1.125rem;
  text-align: center;
  color: #FFFFFF;
}

.support .contact-tel p .responsive-br-sp {
  display: none;
}

.support .contact-tel .end-text {
  font-size: 0.85rem;
  margin-top: 42px;
  margin-bottom: 32px;
}

.support .contact-tel ul {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.support .contact-tel h2 {
  font-size: 2rem;
  color: #FFFFFF;
  white-space: nowrap;
}

.support .contact-tel img {
  width: 42px;
  height: 29px;
}

.form {
  background-color: #802223;
  padding-top: 132px;
  padding-bottom: 84px;
}

.form-inner {
  margin: 0 auto;
  position: relative;
}

.form-ttl {
  color: #FFFFFF;
  margin-bottom: 99px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.form-ttl span {
  font-size: 0.75rem;
  color: #FFFFFF;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.form .section-ttl {
  position: relative;
}

.form .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.form-year p {
  color: #FFFFFF;
  font-size: 0.625rem;
  text-align: center;
  letter-spacing: 2px;
  font-size: 0.625rem;
}

.news-archivel {
  background-color: #802223;
  background: url(../img/news_background.png) center center/cover;
  background-size: 100%;
  padding-top: 206px;
  padding-bottom: 114px;
  margin: 0 auto;
  position: relative;
}

.news-archivel-inner {
  margin-right: auto;
  margin-left: auto;
}

.news-archivel .section-ttl {
  position: relative;
}

.news-archivel .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.news-archivel-ttl {
  color: #FFFFFF;
  margin-bottom: 139px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.news-archivel-ttl span {
  font-size: 0.75rem;
  color: #FFFFFF;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.news-archivel-cards {
  width: 80%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1000px;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.news-archivel-cards .news-archivel-card {
  padding: 0 20px;
  width: 100%;
  margin: 20px 0;
  width: calc(96% / 3);
  /* 96%幅を3で割るという指定 */
}

.news-archivel-cards li:nth-child(3n+1)::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  /* 位置調整 */
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
  /* 位置調整 */
  width: 90%;
  /* 下線の幅 */
  height: 0.3px;
  /* 下線の太さ */
  background-color: rgba(187, 187, 187, 0.5);
  /* 下線の色 */
}

.news-archivel-cards li:nth-child(7)::after {
  display: none;
}

.news-archivel-cards .image-wrap {
  position: relative;
  overflow: hidden;
  padding-top: 95%;
  margin-bottom: 13px;
}

.news-archivel-cards .image-wrap img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  margin-bottom: 12px;
}

.news-archivel-cards-card-img-box {
  width: 100%;
}

.news-archivel-cards .news-archivel-card_date {
  padding-bottom: 16px;
  text-align: left;
  font-size: 0.75rem;
  line-height: 24px;
}

.news-archivel-cards .news-archivel-card_date span {
  font-size: 14px;
  color: #FFFFFF;
  letter-spacing: 3px;
}

.news-archivel-cards .news-archivel-card-text {
  height: 44px;
  font-size: 1rem;
  color: #FFFFFF;
  margin-bottom: 40px;
  text-align: justify;
}

.news-archivel-cards::after {
  content: "";
  display: block;
  width: calc(100% / 3);
}

.news-archivel .pagination .nav-links span {
  color: #FFFFFF;
  padding: 8px 26px;
  text-decoration: none;
  font-size: 1rem;
}

.news-archivel .pagination .nav-links .dots {
  color: #707070;
}

.news-archivel .pagination .nav-links a.page-numbers {
  color: #707070;
  padding: 8px 26px;
  text-decoration: none;
  font-size: 1rem;
}

.news-archivel .pagination .nav-links a.page-numbers::after {
  color: #FFFFFF;
}

.news-archivel .pagination .nav-links a.prev.page-numbers {
  padding-right: 30px;
}

.news-archivel .pagination .nav-links a.next.page-numbers {
  padding-left: 30px;
}

.news-archivel .pagenations {
  text-align: center;
  margin-top: 100px;
  margin-bottom: 271px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}

.news-archivel .pagenations ul.pagination {
  display: inline-block;
}

.news-archivel .pagenations ul.pagination li {
  display: inline;
}

.news-archivel .pagenations ul.pagination li a {
  color: #FFFFFF;
  padding: 8px 26px;
  text-decoration: none;
}

.news-archivel-year p {
  color: #FFFFFF;
  font-size: 0.625rem;
  text-align: center;
  letter-spacing: 2px;
  font-size: 0.625rem;
}

.news-single {
  background-color: #802223;
  background: url(../img/news_background.png) center center/cover;
  background-size: 100%;
  padding-top: 206px;
  padding-bottom: 114px;
  margin: 0 auto;
}

.news-single-inner {
  margin-right: auto;
  margin-left: auto;
}

.news-single .section-ttl {
  position: relative;
}

.news-single .flower-img img {
  width: 146px;
  height: 158px;
  position: absolute;
  top: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.news-single-ttl {
  color: #FFFFFF;
  margin-bottom: 139px;
  font-size: 1.5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 8px;
}

.news-single-ttl span {
  font-size: 0.75rem;
  color: #FFFFFF;
  display: block;
  margin-top: 5px;
  letter-spacing: 8px;
}

.news-single .news-single-box {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 80px 76px 93px 76px;
  width: 90%;
  margin: 0 auto;
}

.news-single .news-single-box h2 {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #802223;
  margin-bottom: 59px;
  letter-spacing: 2px;
}

.news-single .news-single-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.news-single .news-single-box li {
  width: 50%;
}

.news-single .news-single-box p {
  color: #000;
  text-align: justify;
  letter-spacing: 1px;
}

.news-single .news-single-box .rightstyle {
  text-align: right !important;
}

.news-single .news-single-box .spright {
  display: inline-block;
  text-align: left;
}

.news-single .news-single-box .news-single-text {
  margin-left: 40px;
}

.news-single .news-single-box .news-single-date {
  text-align: left;
  font-size: 12px;
  margin-bottom: 15px;
  letter-spacing: 2px;
}

.news-single .news-single-box .news-single-date-only {
  text-align: left;
  font-size: 12px;
  margin-bottom: 15px;
  letter-spacing: 2px;
}

.news-single .news-single-box .news-single-main-text {
  font-size: 16px;
  letter-spacing: 3px;
  line-height: 32px;
  text-align: left;
}

.news-single .news-single-box .news-single-main-text-only {
  font-size: 16px;
  letter-spacing: 3px;
  line-height: 32px;
  text-align: left;
  margin: 0 auto 0 auto;
}

.news-single .thumbnail {
  max-width: 700px;
  margin-bottom: 10px;
  padding: 0;
}

.news-single .thumbnail img,
.news-single .thumbnail-nav img {
  width: 100%;
}

.news-single .slick-slide {
  font-size: 0;
}

.news-single .thumbnail-thumb {
  margin: 0 auto;
}

.news-single .thumbnail-thumb .thumbnail-slide1,
.news-single .thumbnail-thumb .thumbnail-slide2,
.news-single .thumbnail-thumb .thumbnail-slide3 {
  width: 95%;
  margin: 0 auto;
}

.news-single .thumbnail-thumb li {
  margin: 5px;
}

.news-single .slick-track {
  margin: 0;
  width: 100%;
}

.news-single .thumbnial-thumb .slick-next {
  right: 20px;
  z-index: 100;
  display: none;
}

.news-single .thumbnail-thumb .slick-prev {
  left: 15px;
  z-index: 100;
  display: none;
}

.news-single .thumbnail-thumb .slick-current {
  opacity: 0.5;
}

.news-single .thumbnail-thumb div div div {
  cursor: pointer;
}

.news-single .pagenations {
  text-align: center;
  margin-top: 100px;
  margin-bottom: 271px;
}

.news-single .pagenations ul.pagination {
  display: inline-block;
}

.news-single .pagenations ul.pagination li {
  display: inline;
}

.news-single .pagenations ul.pagination li a {
  color: #FFFFFF;
  padding: 8px 26px;
  text-decoration: none;
}

.news-single .more-text {
  text-align: center;
  margin: 88px auto 180px auto;
  padding-top: 64px;
  border-bottom: 1px solid rgba(187, 187, 187, 0.5);
  text-align: center;
  width: 110px;
}

.news-single .more-text a.card-more {
  letter-spacing: 4px;
  font-size: 0.875rem;
  color: #FFFFFF;
  padding-bottom: 5px;
  text-align: center;
  margin: 0 auto;
}

.news-single-year p {
  color: #FFFFFF;
  font-size: 0.625rem;
  text-align: center;
  letter-spacing: 2px;
  font-size: 0.625rem;
}

/* -----------------------------------------------
* Page エントリーポイント
-------------------------------------------------- */
/*!
 * ress.css • v3.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
}

*,
:after,
:before {
  background-repeat: no-repeat;
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

:after,
:before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
}

details,
main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline-width: 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b,
strong {
  font-weight: bolder;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

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

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

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

textarea {
  overflow: auto;
  resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role=button],
[type=button],
[type=reset],
[type=submit],
button {
  cursor: pointer;
  color: inherit;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset],
[type=submit],
button,
html [type=button] {
  -webkit-appearance: button;
}

button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  white-space: normal;
  max-width: 100%;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

body {
  font-family: minion-pro, A1 Mincho, "A1明朝", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
  color: #333;
  margin-right: 0;
  margin-left: 0;
}

img {
  height: auto;
  width: 100%;
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

@media only screen and (max-width: 1017px) {
  .header-btns .contact-btn {
    display: none;
  }

  .header {
    /* 回答部分が開いている時は縦棒を横にする*/
    /* 回答部分が開いている時は縦棒を横にする*/
    /* 回答部分が開いている時は縦棒を横にする*/
  }

  .header .header-logo-sp img {
    display: block;
  }

  .header .btn-gNav {
    position: fixed;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
  }

  .header .btn-gNav span {
    position: absolute;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
  }

  .header .btn-gNav span:nth-child(1) {
    top: 0;
  }

  .header .btn-gNav span:nth-child(2) {
    top: 10px;
  }

  .header .btn-gNav span:nth-child(3) {
    top: 20px;
  }

  .header .btn-gNav.open span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 33px;
    top: 5px;
    background: #762927;
  }

  .header .btn-gNav.open span:nth-child(2) {
    opacity: 0;
  }

  .header .btn-gNav.open span:nth-child(3) {
    background: #762927;
    top: 5px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 33px;
  }

  .header #gNav {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    background-color: #FFFF;
    font-size: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 2;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .header #gNav.open {
    right: 0px;
  }

  .header #gNav .gNav-menu {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    position: relative;
    margin-top: 80px;
    margin-bottom: 35px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .header #gNav .gNav-menu li {
    display: block;
    width: 80%;
    margin: 0 auto;
    padding: 8px 30px;
    border-top: 1px solid rgba(118, 41, 39, 0.4);
    border-bottom: 1px solid rgba(118, 41, 39, 0.4);
  }

  .header #gNav .gNav-menu li+li {
    border-top: none;
  }

  .header #gNav .gNav-menu li a {
    font-weight: bold;
    letter-spacing: 3px;
    color: #802223;
  }

  .header .nav-contact {
    display: block;
    padding: 10px;
    border: 1px solid rgba(118, 41, 39, 0.4);
    width: 70%;
    margin: 0 auto;
    font-weight: bold;
    letter-spacing: 3px;
    color: #802223;
  }

  .header #gNav .gNav-menu li a::after {
    color: #802223;
    display: block;
    margin-top: 0.1rem;
    font-size: 0.625rem;
    font-weight: bold;
  }
}

@media only screen and (max-width: 959px) {
  .header {
    position: fixed;
    z-index: 9999;
  }

  .news-cards .image-wrap {
    padding-top: 95%;
  }

  .news-cards img {
    height: auto;
  }

  .news-cards {
    padding: 3rem 0 0 0;
  }

  .news .news-card {
    width: 90%;
    margin: 0;
    padding: 0 10px;
    border: none;
    width: calc(96% / 2);
  }

  .newsletter .s-pdf-images {
    width: 95%;
  }

  .newsletter .swiper-button-prev {
    display: block;
  }

  .newsletter .swiper-button-next {
    display: block;
  }

  .work-content {
    padding: 1.8rem 1.8rem 1.8rem 2rem;
  }

  .work-content-first {
    width: 90%;
    margin: 0 auto 45px auto;
  }

  .work-content-second {
    width: 90%;
    margin: 0 auto 45px auto;
  }

  .work-content-third {
    width: 90%;
    margin: 0 auto 45px auto;
  }

  .work-content-four {
    width: 90%;
    margin: 0 auto 45px auto;
  }

  .work-documents-inner {
    padding: 121px 0 60px 0;
    width: 92%;
  }

  .work-documents .detail-constitution ul {
    display: block;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 0px;
  }

  .work-documents .detail-constitution ol {
    width: calc(100% - 21px);
  }

  .work-documents .detail-constitution ol li {
    margin-left: 21px;
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter1 {
    width: calc(100% - 69px);
  }

  .work-documents .detail-constitution ol.chapter1 li {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter1 li:nth-child(1)::before {
    content: "第1条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter1 li:nth-child(2)::before {
    content: "第2条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter1 li:nth-child(3)::before {
    content: "第3条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter2 {
    width: calc(100% - 69px);
  }

  .work-documents .detail-constitution ol.chapter2 li {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter2 li:nth-child(1)::before {
    content: "第4条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter4 {
    width: calc(100% - 69px);
  }

  .work-documents .detail-constitution ol.chapter4 li {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter4 li:nth-child(1)::before {
    content: "第6条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter4 li:nth-child(2)::before {
    content: "第7条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -64px;
  }

  .work-documents .detail-constitution ol.chapter6 {
    width: calc(100% - 69px);
  }

  .work-documents .detail-constitution ol.chapter6 li {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter7 {
    width: calc(100% - 74px);
  }

  .work-documents .detail-constitution ol.chapter7 li {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution ol.chapter7 li:nth-child(1)::before {
    content: "第16条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -69px;
  }

  .work-documents .detail-constitution ol.chapter7 li:nth-child(2)::before {
    content: "第17条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -69px;
  }

  .work-documents .detail-constitution ol.chapter7 li:nth-child(3)::before {
    content: "第18条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -69px;
  }

  .work-documents .detail-constitution ol.chapter7 li:nth-child(4)::before {
    content: "第19条　";
    /* ←ここにリストマーカーにしたい文字列を設定 */
    margin-left: -69px;
  }

  .work-documents .detail-constitution p {
    letter-spacing: 1px;
  }

  .work-documents .detail-constitution .second-text {
    margin-left: 0;
  }

  .form .tab-wrap ul {
    display: block;
    width: 50%;
  }

  .form .tab-btn {
    margin-bottom: 30px;
    font-size: 1rem;
  }

  .form iframe {
    width: 90%;
  }

  .form .iframe-small {
    width: 90%;
  }

  .news {
    padding-bottom: 77px;
  }

  .news .more-text {
    padding-top: 40px;
  }

  .message {
    padding-top: 139px;
  }

  .message-img-background-flower {
    top: -37%;
    left: -1000px;
  }

  .message-img-topline {
    display: none;
  }

  .message-img-rightline {
    display: none;
  }

  .message-img-bottom {
    display: none;
  }

  .message-text {
    text-align: left;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 30px;
    line-height: 31px;
    text-align: justify;
    letter-spacing: 1px;
    margin-bottom: 30px;
  }

  .message-text .responsive-br {
    display: none;
  }

  .message-second-text {
    text-align: left;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 30px;
    line-height: 34px;
    text-align: justify;
    letter-spacing: 1px;
  }

  .message-second-text .responsive-br {
    display: none;
  }

  .message .text-res {
    text-align: center;
    font-size: 1rem;
    font-weight: normal;
    margin-bottom: 30px;
  }

  .message-personal {
    text-align: right;
    width: 90%;
    font-weight: normal;
    letter-spacing: 1px;
    margin: 0 auto;
  }

  .newsletter .pdf-images {
    display: none;
  }

  .letter-message-ttl .responsive-br {
    display: block;
  }

  .letter-message-card {
    display: block;
  }

  .letter-message-card .letter-message-img {
    width: 90%;
    margin: 0 auto;
  }

  .letter-message-card .letter-message-text {
    width: 90%;
    margin-top: 30px;
    margin: 30px auto 0 auto;
  }

  .connection-text {
    line-height: 31px;
    margin: 0 auto;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .connection-img {
    display: block;
  }

  .connection-img img {
    width: 100%;
    height: auto;
  }

  .support {
    padding-top: 100px;
  }

  .support-text {
    line-height: 31px;
    margin: 0 auto;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .support-personal {
    width: 93%;
    line-height: 24px;
  }

  .support-personal .responsive-br-sp {
    display: block;
  }

  .support-img {
    display: block;
  }

  .support-img img {
    width: 100%;
    height: auto;
  }

  .support-lib-inner {
    padding: 0;
    width: 90%;
    margin: 0 auto;
  }

  .support-mes-img {
    padding: 68px 50px;
    overflow-x: auto;
    direction: rtl;
  }

  .support-mes-img img {
    width: auto;
    height: 217px;
  }

  .support .contact-tel {
    padding: 45px 13px 133px 13px;
    letter-spacing: 1px;
    margin-bottom: 0;
  }

  .support .contact-tel .contact-tel-ttl .responsive-br-sp {
    display: block;
  }

  .support .contact-tel .contact-tel-ttl .responsive-br {
    display: none;
  }

  .support .contact-tel p {
    font-size: 0.85rem;
  }

  .support .contact-tel p .responsive-br-sp {
    display: block;
  }

  .support .contact-tel h2 {
    font-size: 1.5rem;
    color: #FFFFFF;
  }

  .support .contact-tel .mail-text {
    font-size: 1.4rem;
  }

  .support .contact-tel img {
    width: 31px;
    height: 22px;
  }

  .form-year p {
    letter-spacing: 0;
    width: 90%;
    margin: 0 auto;
  }

  .news-archivel-cards li:nth-child(3n+1)::after {
    height: 0;
  }

  .news-archivel-cards .image-wrap {
    padding-top: 95%;
  }

  .news-archivel .pagination .nav-links span {
    color: #FFFFFF;
    padding: 8px 10px;
    text-decoration: none;
    font-size: 1rem;
  }

  .news-archivel .pagination .nav-links a.page-numbers {
    color: #707070;
    padding: 8px 10px;
    text-decoration: none;
    font-size: 1rem;
  }

  .news-archivel-cards {
    border: none;
    width: 100%;
    padding: 0 13px;
  }

  .news-archivel .news-archivel-card {
    padding: 0;
    width: calc(96% / 2);
    /* 96%幅を2で割るという指定 */
  }

  .news-archivel-year p {
    letter-spacing: 0;
    width: 90%;
    margin: 0 auto;
  }

  .news-single .news-single-box h2 {
    padding: 0 20px;
    line-height: 34px;
  }

  .news-single .news-single-box ul {
    display: block;
  }

  .news-single .news-single-box li {
    width: 90%;
    margin: 0 auto;
  }

  .news-single .news-single-box .news-single-text {
    margin-left: 0;
  }

  .news-single .news-single-box .news-single-date {
    margin-top: 25px;
    margin-bottom: 25px;
  }

  .news-single .news-single-date-only {
    margin: 0 auto;
    width: 90%;
  }

  .news-single .news-single-main-text-only {
    margin: 29px auto 0 auto;
    width: 90%;
  }

  .news-single .news-single-box {
    padding: 80px 0 83px 0;
    width: 90%;
    margin: 0 auto;
  }

  .news-single-year p {
    letter-spacing: 0;
    width: 90%;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 519px) {
  .news-cards img {
    height: auto;
  }

  .work-contents {
    background: url(../img/work_background_sp.png) no-repeat center center/cover;
    background-size: 100%;
    background-size: cover;
  }

  .work-table th {
    font-size: 0.8rem;
    font-weight: bold;
    padding-bottom: 20px;
    padding-right: 0;
    width: 29%;
    text-align: justify;
  }

  .work-table th .responsive-br {
    display: block;
  }

  .work-table td {
    letter-spacing: 0;
  }

  .work-table td .responsive-br-sp {
    display: block;
  }

  .work-documents-history-text {
    line-height: 31px;
  }

  .work-documents-history-text .responsive-br-sp {
    display: block;
  }

  .work-documents-constitution-text {
    line-height: 31px;
  }

  .work-documents-constitution-text .responsive-br-sp {
    display: block;
  }

  .work-documents .detail-table th {
    font-size: 0.75rem;
    font-weight: bold;
    padding-bottom: 20px;
    padding-right: 0;
    width: 36%;
    text-align: justify;
  }

  .work-documents .detail-table th .responsive-br {
    display: block;
  }

  .work-documents .detail-table td {
    letter-spacing: 0;
    font-size: 0.8rem;
  }

  .work-documents .detail-table td .responsive-br-sp {
    display: block;
  }

  .work-documents .detail-part th {
    font-size: 0.75rem;
    font-weight: bold;
    padding-right: 0;
    width: 36%;
    text-align: justify;
  }

  .work-documents .detail-part th .responsive-br {
    display: block;
  }

  .work-documents .detail-part td {
    letter-spacing: 0;
    font-size: 0.8rem;
  }

  .work-documents .detail-part td .responsive-br-sp {
    display: block;
  }

  .main .scrolldown2 {
    right: 38px;
  }

  .form iframe {
    width: 90%;
    height: 2400px;
  }

  .top {
    background: url(../img/sp_main_background.jpg) no-repeat center center/cover;
    background-position: top;
  }

  .main {
    padding-top: 135px;
    padding-bottom: 192px;
    height: calc(100vh - 90px);
  }

  .main-inner {
    padding: 0;
    width: 85%;
  }

  .main-text {
    margin-bottom: 30px;
    font-size: 1.625rem;
    line-height: 54px;
  }

  .main-text .responsive-br {
    display: block;
  }

  .news-ttl {
    letter-spacing: 4px;
  }

  .work-img {
    display: block;
  }

  .work-img img {
    width: 100%;
    height: auto;
  }

  .work img {
    height: 180px;
  }

  .newsletter {
    padding: 130px 0 130px 0;
  }

  .letter-ttl {
    letter-spacing: 4px;
    font-size: 1.3rem;
    width: 95%;
  }

  .connection {
    padding-top: 130px;
  }

  .connection-ttl .responsive-br {
    display: block;
  }

  .connection-img img {
    height: auto;
  }

  .support-ttl .responsive-br {
    display: block;
  }

  .support-lib-text {
    line-height: 31px;
    letter-spacing: 1px;
    text-align: justify;
    width: 86%;
    margin-left: auto;
    margin-right: auto;
  }

  .support-lib-text .responsive-br {
    display: none;
  }

  .news-archivel-ttl {
    letter-spacing: 4px;
  }

  .news-single-ttl {
    letter-spacing: 4px;
  }

  .news-single .news-single-box .rightstyle {
    text-align: right !important;
  }

  .news-single .news-single-box .spright {
    display: inline-block;
    text-align: left;
  }
}

@media only screen and (max-width: 340px) {
  .main {
    height: auto;
  }
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }

  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}