@charset "UTF-8";
/*
 * 変数
 */
/*
 * ブレークポイント
 */
/*
 * スマホは改行
 */
@media (min-width: 560px) {
  .br_sp {
    display: none;
  }
}

/*
 * スマホ以外は改行
 */
@media (max-width: 560px) {
  .sp_br {
    display: none;
  }
}

/*
 * パソコンだけ改行
 */
@media (min-width: 900px) {
  .br_tab {
    display: none;
  }
}

/*
 * パソコン以外は改行
 */
@media (max-width: 900px) {
  .pc_br {
    display: none;
  }
}

/*
 * トランジション
 */
.Oswald {
  font-family: Oswald;
}

.arc-main-top {
  width: 100%;
  margin: 0 auto;
  position: relative;
  max-height: 593px;
  overflow: hidden;
  background-image: url("../images/top-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left top -18px;
  z-index: -1;
}
.arc-main-top-overlay {
  background-image: url("../images/top-bg-ob.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left bottom 86%;
  width: 100%;
  height: 67%;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 1;
}
@media (max-width: 560px) {
  .arc-main-top-overlay {
    height: 57%;
  }
}

.arc-main-tit {
  position: relative;
  text-align: center;
  z-index: 1;
  padding-top: 4%;
  margin-bottom: 7%;
  padding-top: 8%;
  padding-bottom: 10%;
  margin-right: 11%;
  text-align: end;
}
.arc-main-tit .main-tit {
  display: flex;
  align-items: baseline;
  border-bottom: 1px solid #0081CC;
}
.arc-main-tit h2 {
  display: inline-block;
  color: #0081CC;
  padding-bottom: 3px;
  font-weight: 500;
  font-family: serif;
  font-size: 5vw;
  font-size: max(12px, min(5vw, 70px));
  font-size: clamp(12px, 5vw, 70px);
}
@media (max-width: 560px) {
  .arc-main-tit h2 {
    font-size: clamp(12px, 9.4vw, 55px);
  }
}
.arc-main-tit span {
  color: #000000;
  display: block;
  font-weight: 500;
  margin-top: 5px;
  font-size: 2vw;
  font-size: max(12px, min(2vw, 18px));
  font-size: clamp(12px, 2vw, 18px);
  margin-left: 6%;
}
@media (max-width: 560px) {
  .arc-main-tit span {
    font-size: clamp(12px, 4vw, 23px);
  }
}
.arc-main-tit h2 {
  color: white;
}
.arc-main-tit span {
  display: inline-block;
}
@media (max-width: 900px) {
  .arc-main-tit {
    padding-top: 12%;
    padding-bottom: 18%;
  }
}

.content--block {
  position: relative;
  margin-bottom: 5%;
  margin-top: 3%;
}

.content--block-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 93%;
  max-width: 1400px;
  margin: 0 auto;
  background-color: white;
  border-radius: 2em;
}
@media (max-width: 900px) {
  .content--block-inner {
    flex-direction: column-reverse;
    align-items: center;
  }
}
@media (max-width: 560px) {
  .content--block-inner {
    padding: 0;
    margin-bottom: 14%;
  }
}

article.article-content {
  width: 71%;
  padding: 6% 5%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 900px) {
  article.article-content {
    width: 100%;
    padding: 6% 5%;
  }
}
@media (max-width: 560px) {
  article.article-content {
    padding: 5%;
    padding-bottom: 10%;
  }
}

.article-info {
  width: 100%;
  border-bottom: 2px solid #0081CC;
}

.arc-info-box {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 2%;
}
.arc-info-box .single-day {
  color: #AFAFAF;
}
.arc-info-box .single-cat {
  color: white;
  font-size: 13px;
  padding: 1px 3px;
  white-space: nowrap;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 5px;
}
.arc-info-box .single-cat::before {
  content: "";
  position: absolute;
  left: 0;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 100%;
  border-top: 12px solid #0081CC;
  border-right: 6px solid transparent;
  border-bottom: 12px solid #0081CC;
  border-left: 0;
  border-radius: 3px;
  z-index: -1;
}
.arc-info-box .single-cat p {
  padding-right: 10px;
  padding-left: 7px;
}

.article-title-s {
  text-align: justify;
  margin: 0 0 1%;
  position: relative;
  font-size: clamp(22px, 2vw, 28px);
}
@media (max-width: 560px) {
  .article-title-s {
    margin: 3% 0 5%;
  }
}
.article-title-s:before {
  position: absolute;
  bottom: -7px;
  width: 100%;
  height: 4px;
  content: "";
}

.single-inner {
  height: 100%;
  margin-top: 1em;
  width: 100%;
}
.single-inner h2 {
  font-size: clamp(20px, 2vw, 27px);
}
.single-inner p {
  text-align: justify;
  line-height: 1.7;
}
.single-inner .single-linkbtn {
  margin-bottom: 10px;
  text-align: center;
  transition: all 0.5s ease;
}
.single-inner .single-linkbtn a {
  margin: 0 auto;
  padding: 10px 5em 10px 4em;
  text-align: center;
  transition: all 0.5s ease;
  background-size: 200% auto;
  color: white;
  display: block;
  border: 0px;
  font-weight: 700;
  background-color: #0081CC;
  position: relative;
  font-size: initial;
  margin-top: 5%;
  border-radius: 2em;
}
.single-inner .single-linkbtn a::before {
  content: "";
  background-image: url(../images/file-pdf-solid.svg);
  display: inline-block;
  margin-right: 10px;
  width: 1.8em;
  height: 1.8em;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: bottom;
}
@media (max-width: 560px) {
  .single-inner .single-linkbtn a {
    padding: 10px 1em;
  }
}
.single-inner .single-linkbtn:hover {
  transform: translateY(-5px);
}
.single-inner .single-linkbtn:hover a {
  background-color: #7fb4d3;
}
.single-inner .youtube-link {
  border: 1px solid #DA1725;
  display: block;
  width: 60%;
  margin: 0 auto;
  margin-top: 5%;
  transition: all 0.5s ease;
}
.single-inner .youtube-link a {
  margin: 0 auto;
  padding: 7px 5em 7px 4em;
  text-align: center;
  transition: all 0.5s ease;
  background-size: 200% auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0px;
  font-weight: 700;
  position: relative;
  font-size: initial;
  color: #ffffff;
  background-color: #da1825;
  transition: all 0.5s ease;
}
.single-inner .youtube-link a::before {
  content: "";
  background-image: url(../images/youtube-link.svg);
  display: inline-block;
  margin-right: 11px;
  width: 3em;
  height: 3em;
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 560px) {
  .single-inner .youtube-link a::before {
    margin-right: 4px;
  }
}
@media (max-width: 560px) {
  .single-inner .youtube-link a {
    padding: 7px 0;
  }
}
.single-inner .youtube-link:hover {
  transform: translateY(-5px);
}
.single-inner .youtube-link:hover a {
  box-shadow: 0 0 20px #f21d1d;
}
@media (max-width: 560px) {
  .single-inner .youtube-link {
    width: 100%;
  }
}

.link-url {
  color: #ECFBFF;
}

p.single-in-tit {
  color: #0081CC;
  font-weight: bold;
}

.wp-block-image {
  margin-top: 1em;
  text-align: center;
}
.wp-block-image img {
  height: auto;
  border: 1px solid #8f8f8f;
}

.pdf-link-block {
  text-align: center;
}

.wp-block-embed {
  width: 100%;
  margin: 0 auto;
  margin-top: 4%;
  aspect-ratio: 16/9;
}
.wp-block-embed__wrapper {
  width: 100%;
  height: 100%;
}
.wp-block-embed__wrapper iframe {
  width: 100%;
  height: 100%;
}

.youtube {
  width: 100%;
  margin: 0 auto;
  margin-top: 4%;
  aspect-ratio: 16/9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

aside#sidebar {
  width: 24%;
  font-size: 16px;
}
@media (max-width: 900px) {
  aside#sidebar {
    width: 100%;
  }
}
@media (max-width: 560px) {
  aside#sidebar {
    width: 90%;
    margin: 0 auto;
    margin-top: 9%;
  }
}

.sidebar-wrapper {
  margin-bottom: 20%;
}
@media (max-width: 900px) {
  .sidebar-wrapper {
    margin-bottom: 6%;
  }
}

.sidebar-title {
  color: #383838;
  padding: 3px 0;
  position: relative;
  max-width: 328px;
  margin: auto;
  border-bottom: 2px solid #ECFBFF;
}
@media (max-width: 900px) {
  .sidebar-title {
    max-width: 624px;
  }
}

.calender-wrapper {
  margin-bottom: 5%;
}
@media (max-width: 900px) {
  .calender-wrapper {
    margin-bottom: 2%;
  }
}
@media (max-width: 560px) {
  .calender-wrapper {
    margin-bottom: 5%;
  }
}

.calender-block {
  max-width: 272px;
  margin: 0 auto;
  margin-top: 6%;
}
@media (max-width: 900px) {
  .calender-block {
    max-width: 450px;
    margin: 0 auto;
  }
}

.wp-calendar-table {
  width: 100%;
  font-size: 15px;
}
.wp-calendar-table caption {
  margin-bottom: 7px;
}
.wp-calendar-table thead {
  border-bottom: 1px solid;
}
.wp-calendar-table thead th {
  display: block;
  margin-bottom: 7px;
  width: 14.2857142857%;
  text-align: center;
}
.wp-calendar-table tbody tr {
  padding-bottom: 10px;
}
.wp-calendar-table tbody tr:first-of-type {
  justify-content: flex-end;
  margin-top: 5px;
}
.wp-calendar-table tr {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.wp-calendar-table tr td {
  text-align: center;
  width: 14.2857142857%;
}
.wp-calendar-table tr td a {
  color: white;
  background: #0081CC;
  display: inline-block;
  padding: 2px 4px;
  transition: 0.3s ease;
}
.wp-calendar-table tr td a:hover {
  opacity: 0.8;
}
.wp-calendar-table .sat {
  color: #205dc5;
}
.wp-calendar-table .sun {
  color: rgb(224, 53, 53);
}

.wp-calendar-nav {
  font-size: 15px;
}
.wp-calendar-nav a {
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
  transition-duration: 0.2s;
  transition-property: color;
}
.wp-calendar-nav a:hover {
  color: #ECFBFF;
}

.year-archive-inner {
  position: relative;
  overflow: hidden;
  margin-top: 10px;
}
@media (max-width: 900px) {
  .year-archive-inner {
    max-width: 624px;
    margin: 0 auto;
  }
}

.sidemenu-year-all a {
  padding: 0 0 5px 13px;
  display: block;
  position: relative;
  font-size: 16px;
}
.sidemenu-year-all a:hover {
  color: #ECFBFF;
}

p.year-current {
  position: relative;
  cursor: pointer;
  padding: 6px 5px;
}
p.year-current::after {
  content: "";
  position: absolute;
  top: 0;
  left: auto;
  right: 21px;
  bottom: 4px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-bottom: solid 2px #0081CC;
  border-right: solid 2px #0081CC;
  -webkit-transform: translateY(0) rotate(45deg);
  transform: translateY(0) rotate(45deg);
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
}

/* 開いたときのアイコン*/
p.year-current.on::after {
  content: "";
  position: absolute;
  top: 0;
  left: auto;
  right: 21px;
  bottom: 4px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-bottom: solid 2px #0081CC;
  border-right: solid 2px #0081CC;
  -webkit-transform: translateY(4px) rotate(226deg);
  transform: translateY(4px) rotate(226deg);
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
}

ul.side_menu {
  background: white;
}
ul.side_menu li + li {
  border-top: 0;
}
ul.side_menu li a {
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
  color: #444444;
  padding: 6px;
  display: block;
}
ul.side_menu li a:hover {
  color: #0081CC;
  opacity: 0.8;
}

ul.side_menu {
  background: white;
}

.sidemenu-year-all {
  display: none;
  background: white;
}
.sidemenu-year-all a {
  padding: 6px 23px;
  display: block;
  position: relative;
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
}
.sidemenu-year-all:hover a {
  color: #0081CC;
}

/* acv_openクラスをもたないリスト項目の子リスト（month-archive-list）は、デフォルト非表示に */
.archive-list > li:not(.acv_open) > ul {
  display: none;
}

ul.side-item-list {
  padding-top: 12px;
  max-width: 328px;
  margin: 0 auto;
}
ul.side-item-list li {
  padding-left: 6px;
}
ul.side-item-list li a {
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
  transition-duration: 0.2s;
  transition-property: color;
  position: relative;
  padding: 4px 0 2px 13px;
  display: inline-block;
}
ul.side-item-list li a:hover {
  color: #0081CC;
}
ul.side-item-list li a::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border: solid 6px transparent;
  border-left: solid 8px #0081CC;
  top: 33%;
  left: 0;
}
@media (max-width: 900px) {
  ul.side-item-list {
    max-width: 624px;
    margin: 0 auto;
  }
}
@media (max-width: 560px) {
  ul.side-item-list {
    width: 100%;
  }
}

/*前の記事、次の記事*/
.p_page_pager_block {
  width: 100%;
  font-size: 16px;
  border-top: 1px solid #0081CC;
  margin-top: 5%;
  margin-bottom: 3%;
}
@media (max-width: 900px) {
  .p_page_pager_block {
    margin-top: 8%;
  }
}

.p_page_pager {
  width: 100%;
  margin: 0 auto;
  margin-top: 5%;
  position: relative;
  display: flex;
  align-items: center;
}
@media (max-width: 560px) {
  .p_page_pager {
    padding-top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 9%;
  }
}

.p_pager_prev, .p_pager_next, .top_next {
  text-align: left;
  position: relative;
  display: inline-block;
  width: 30%;
}
.p_pager_prev a, .p_pager_next a, .top_next a {
  display: block;
}
@media (max-width: 560px) {
  .p_pager_prev, .p_pager_next, .top_next {
    font-size: 14px;
  }
}

.p_pager_prev, .p_pager_next {
  position: absolute;
}
@media (max-width: 560px) {
  .p_pager_prev, .p_pager_next {
    position: relative;
    width: 85%;
    margin-bottom: 2%;
  }
}

.p_pager_prev {
  left: 0;
}
@media (max-width: 560px) {
  .p_pager_prev {
    margin-bottom: 4%;
  }
}

.p_pager_next {
  right: 0;
}
@media (max-width: 560px) {
  .p_pager_next {
    margin-top: 4%;
  }
}

.p_pager_next a, .p_pager_prev a {
  color: #0081CC;
  display: inline-block;
  border: none;
  text-align: center;
  width: 100%;
  transition: color 0.5s;
  cursor: pointer;
  padding: 2% 0;
  border: 1px solid;
  border-radius: 2em;
}
.p_pager_next p, .p_pager_prev p {
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: padding 0.5s;
}
.p_pager_next:hover a, .p_pager_prev:hover a {
  color: #7fb4d3;
}

.p_pager_next p:after {
  content: "»";
  position: absolute;
  opacity: 0;
  top: 0;
  right: -15px;
  transition-duration: 0.5s;
  transition-property: opacity, right, left;
}

.p_pager_prev p:before {
  content: "«";
  position: absolute;
  opacity: 0;
  top: 0;
  left: -15px;
  transition-duration: 0.5s;
  transition-property: opacity, right, left;
}

.p_pager_next:hover p {
  padding-right: 15px;
}

.p_pager_prev:hover p {
  padding-left: 15px;
}

.p_pager_next:hover p:after {
  opacity: 1;
  right: 0;
}

.p_pager_prev:hover p:before {
  opacity: 1;
  left: 0;
}

/*記事一覧に戻る*/
.top_next {
  text-align: center;
  position: relative;
  margin: 0 auto;
  display: block;
  color: #383838;
}
.top_next a {
  transition: all 0.5s cubic-bezier(0.37, 0.16, 0.12, 1);
  transition-property: color, border;
  position: relative;
  z-index: 0;
  display: inline;
}
.top_next a::before, .top_next a::after {
  position: absolute;
  width: 100%;
  height: 1px;
  background: #7fb4d3;
  top: 100%;
  left: 0;
  pointer-events: none;
}
.top_next a::before {
  content: "";
  transform-origin: 100% 50%;
  transform: scale3d(0, 1, 1);
  transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}
.top_next a::after {
  content: "";
  top: calc(100% + 4px);
  transform-origin: 0% 50%;
  transform: scale3d(0, 1, 1);
  transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}
.top_next a:hover {
  color: #7fb4d3;
}
.top_next a:hover::before {
  transform-origin: 0% 50%;
  transform: scale3d(1, 1, 1);
  transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
}
.top_next a:hover::after {
  transform-origin: 100% 50%;
  transform: scale3d(1, 1, 1);
  transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
}
@media (max-width: 560px) {
  .top_next {
    width: 97%;
    margin: 0 auto;
    display: block;
  }
}

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