@charset "UTF-8";
/******************** NEWS ********************/

/*** --------------- News All --------------- ***/
.news_area {
  padding: 60px 0 0;
}

@media screen and (max-width: 991px) {
  .news_area {
    padding: 50px 0 0;
  }
}

@media screen and (max-width: 575px) {
  .news_area {
    padding: 40px 0 0;
  }
}

/*** --------------- News Archive --------------- ***/
.news_area .news_main {
  padding-right: 30px;
}

@media screen and (max-width: 991px) {
  .news_area .news_main {
    padding: 0;
  }
}

/* ----- News List ----- */
.news_area .news_list {
  position: relative;
}

.news_area .news_list::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #EFEFEF;
  border-radius: 2px;
  position: absolute;
  top: -1px;
  left: 0;
}

.news_area .news_list .news_box {
  position: relative;
}

.news_area .news_list .news_box::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #efefef;
  border-radius: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
}

.news_area .news_list .news_box a {
  display: flex;
  align-items: center;
  padding: 20px 55px 20px 15px;
}

.news_area .news_list .news_box a::before {
  content: '';
  width: 100%;
  height: 100%;
  background: #F3F7DE;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: scale(0, 1);
  transform-origin: right bottom;
  transition: transform 0.3s;
}

.news_area .news_list .news_box a:hover::before {
  transform: scale(1, 1);
  transform-origin: left bottom;
}

.news_area .news_list .news_box a::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background-color: #ADC054;
  clip-path: path("M.355,11.855,5.069,6.994.355,2.133a1.278,1.278,0,0,1,0-1.767A1.186,1.186,0,0,1,2.032.33l.036.036L7.645,6.117a1.276,1.276,0,0,1,0,1.767l-5.577,5.75a1.184,1.184,0,0,1-1.674.039l-.039-.039a1.3,1.3,0,0,1,0-1.779");
  right: 16px;
  top: calc(50% - 7px);
  transition: 0.3s;
}

.news_area .news_list .news_box a:hover::after {
  transform: translate(4px);
}

.news_area .news_list .news_box a .news_info {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 270px;
}

.news_area .news_list .news_box a .news_info .news_date {
  min-width: 145px;
  margin: 0;
}

.news_area .news_list .news_box a h2 {
  font-size: 112.5%;
  line-height: 1.8;
}

.news_area .news_list .news_box a .new {
  background-color: #FF7600;
  color: #fff;
  padding: 4px 12px;
  border-radius: 2px;
  font-size: 62.5%;
  margin-left: 20px;
  font-family: "Inter", sans-serif;
}

@media screen and (max-width: 767px) {
  .news_area .news_list .news_box a {
    flex-wrap: wrap;
    gap: 10px;
  }

  .news_area .news_list .news_box a .news_info {
    gap: 15px;
    width: 100%;
  }
}

@media screen and (max-width: 575px) {
  .news_area .news_list .news_box a {
    padding: 20px 40px 20px 15px;
  }

  .news_area .news_list .news_box a::after {
    right: 10px;
  }

  .news_area .news_list .news_box a:hover::after {
    right: 5px;
  }
}

/* ----- News Category ----- */
.news_cate {
  display: inline-block;
  min-width: 85px;
  margin-right: 20px;
  padding: 4px 12px;
  border-radius: 2px;
  color: #707070;
  border: 1px solid #DAE9B5;
  background-color: #fff;
  font-size: 75%;
  text-align: center;
}

.news_cate.important {
  border: 1px solid #D93330;
}

/* ----- News 新規 ----- */

.news_info .new {
  background-color: #FF7600;
  color: #fff;
  padding: 4px 12px;
  border-radius: 2px;
  font-size: 62.5%;
  font-family: "Inter", sans-serif;
}

/*** --------------- News Content --------------- ***/
.news_content {
  padding-bottom: 120px;
}

.news_content .news_info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
  padding: 0 15px;
}

.news_content .news_info.last {
  margin-top: 50px;
  justify-content: flex-end;
}

.news_content .news_info .news_date {
  margin: 0;
}

.news_content .news_info .news_cate {
  margin: 0;
}

.news_content .news_info .news_cate:hover {
  opacity: 0.8;
}

.news_content .news_info .news_tag {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.news_content .news_info.last .news_tag {
  justify-content: flex-end;
}

.news_content .news_info .news_tag li a {
  display: inline-block;
  padding: 4px 10px;
  background: #F5F2ED;
  border: 1px solid #F5F2ED;
  border-radius: 5px;
  font-size: 75%;
}

.news_content .news_info .news_tag li a:hover {
  background: #FFF;
  border-color: #BFBAB1;
}

.news_content .news_info .news_tag li a::before {
  content: '#';
  padding-right: 3px;
}

.news_content .news_h1 {
  margin-bottom: 30px;
  padding: 15px 15px 20px;
  font-size: 150%;
  line-height: 1.5;
  position: relative;
}

.news_content .news_h1::after {
  content: '';
  width: 100%;
  height: 2px;
  background: #ADC054;
  border-radius: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.news_content .news_in {
  padding: 0 15px;
  overflow: hidden;
}

.news_content .wp-block-image,
.news_content .wp-block-columns {
  margin: 15px 0 0;
}

.news_content .wp-block-columns .wp-block-image {
  margin: 0;
}

.news_content .wp-block-image a:hover {
  opacity: 0.8;
}

.news_content .wp-block-image figcaption {
  margin: 5px 0 0;
  font-size: 87.5%;
  text-align: center;
}

.news_content img {
  border-radius: 10px;
}

.news_content .no_radius img {
  border-radius: 0;
}

.news_content h2 {
  width: calc(100% + 30px);
  margin-top: 50px;
  padding: 20px 20px;
  background: #F3F7DE;
  border-radius: 15px;
  font-size: 137.5%;
  line-height: 1.5;
  position: relative;
  left: -15px;
}

.news_content h3 {
  width: calc(100% + 30px);
  margin-top: 50px;
  padding: 15px 15px 17px;
  font-size: 125%;
  line-height: 1.5;
  position: relative;
  left: -15px;
}

.news_content h3::before {
  content: '';
  width: 100%;
  height: 4px;
  background: #DAE9B5;
  border-radius: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.news_content h4 {
  width: calc(100% + 30px);
  margin-top: 40px;
  padding: 10px 15px;
  background: #F5F2ED;
  border-radius: 10px;
  font-size: 112.5%;
  line-height: 1.5;
  position: relative;
  left: -15px;
}

.news_content p {
  margin-top: 1rem;
}

.news_content p a {
  border-bottom: 1px solid #ADC054;
}

.news_content p a:hover {
  color: #0E2247;
  border-bottom: 1px solid #ADC054;
  opacity: 0.7;
}

.news_content p a[target="_blank"] {
  position: relative;
  padding-right: 20px;
}

.news_content p a[target="_blank"]::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f2d2";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.news_content p img {
  vertical-align: middle;
}

.news_content .wp-block-button {
  margin-top: 15px;
}

.news_content .wp-block-button a {
  padding: 10px 45px 10px 20px;
  background: #7A6959;
  border-radius: 10px;
  position: relative;
}

.news_content .wp-block-button a:hover {
  color: #FFF;
  background: #5B5046;
}

.news_content .wp-block-button a::after {
  content: '';
  width: 20px;
  height: 10px;
  background: url(../img/icon_arrow_w.png) center center / contain no-repeat;
  position: absolute;
  top: calc(50% - 5px);
  right: 15px;
  transition: 0.3s;
}

.news_content .wp-block-button a:hover::after {
  right: 10px;
}

.news_content .wp-block-button a[target="_blank"]::after {
  width: 14px;
  height: 14px;
  background: url(../img/icon_window_w.png) center center / contain no-repeat;
  top: calc(50% - 7px);
  right: 18px;
}

.news_content .wp-block-button a[target="_blank"]:hover::after {
  right: 18px;
}

.news_content .wp-block-list {
  margin: 15px 0 0 30px;
}

.news_content .wp-block-list li:not(:first-of-type) {
  margin-top: 5px;
}

.news_content ul.wp-block-list li {
  position: relative;
}

.news_content ul.wp-block-list li::before {
  content: '';
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #ADC054;
  position: absolute;
  top: 7px;
  left: -22px;
}

.news_content code {
  background: #efefef;
  padding: 5px 10px;
  border-radius: 5px;
  color: #5B5046;
  margin: 0 5px;
}

.news_content .wp-block-quote {
  margin-top: 15px;
  padding: 20px 20px 20px 65px;
  background: #F6F8F8;
  border-radius: 10px;
  position: relative;
}

.news_content .wp-block-quote::before {
  content: '';
  width: 3px;
  height: calc(100% - 30px);
  background: #BFBAB1;
  border-radius: 1.5px;
  position: absolute;
  top: 15px;
  left: 15px;
}

.news_content .wp-block-quote::after {
  content: '“';
  color: #BFBAB1;
  font-family: "Hiragino Kaku Gothic ProN";
  font-size: 500%;
  position: absolute;
  top: -20px;
  left: 25px;
}

.news_content .wp-block-quote p:first-of-type {
  margin-top: 0;
}

.news_content .wp-block-quote cite {
  margin-top: 10px;
  color: #7A6959;
  font-size: 87.5%;
  text-align: right;
}

@media screen and (max-width: 991px) {
  .news_content {
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 575px) {
  .news_content {
    padding-bottom: 80px;
  }

  .news_content .news_h1 {
    font-size: 150%;
  }

  .news_content .news_in {
    padding: 0;
  }

  .news_content h2,
  .news_content h3,
  .news_content h4,
  .news_content h5,
  .news_content h6 {
    width: 100%;
    left: 0;
  }
}

/* ----- News Mokuji ----- */
.wp-block-aioseo-table-of-contents {
  width: calc(100% + 20px);
  margin-top: 30px;
  border: 5px solid #F5F2ED;
  border-radius: 10px;
  padding: 10px;
  font-size: 14px;
  position: relative;
  left: -10px;
}

.wp-block-aioseo-table-of-contents ul ul {
  margin-left: 10px;
}

.wp-block-aioseo-table-of-contents li a {
  display: inline-block;
  width: 100%;
  padding: 3px 30px;
  border-radius: 10px;
  position: relative;
  transition: 0.3s;
}

.wp-block-aioseo-table-of-contents li a::before {
  content: '';
  width: 14px;
  height: 14px;
  background: #F5F2ED;
  border-radius: 5px;
  position: absolute;
  top: calc(50% - 7px);
  left: 10px;
  transition: 0.3s;
}

.wp-block-aioseo-table-of-contents li a:hover::before {
  background: #FFF;
}

.wp-block-aioseo-table-of-contents>ul>li>ul>li>a::before,
.wp-block-aioseo-table-of-contents>ul>li>ul>li>ul>li>ul>li>a::before {
  background: #FFF;
  border: 2px solid #F5F2ED;
}

.wp-block-aioseo-table-of-contents li a:hover::before {
  background: #FFF;
}

.wp-block-aioseo-table-of-contents>ul>li>ul>li>a:hover::before,
.wp-block-aioseo-table-of-contents>ul>li>ul>li>ul>li>ul>li>a:hover::before {
  background: #F5F2ED;
  border: 2px solid #FFF;
}

.wp-block-aioseo-table-of-contents li a::after {
  content: '';
  width: 7px;
  height: 12px;
  background: url(../img/icon_pankuzu.png) center center / contain no-repeat;
  position: absolute;
  top: calc(50% - 5px);
  right: 20px;
  transform: rotate(90deg);
}

.wp-block-aioseo-table-of-contents li a:hover {
  background: #F5F2ED;
}

@media screen and (max-width: 575px) {
  .wp-block-aioseo-table-of-contents {
    width: 100%;
    left: 0;
  }
}

/* ----- News Author ----- */
.news_author {
  margin-top: 30px;
  padding: 20px;
  background: #F5F2ED;
  border-radius: 20px;
}

.news_author h2 {
  width: 100%;
  margin: 0;
  padding: 5px 15px 15px;
  background: none;
  font-size: 112.5%;
  position: relative;
  left: 0;
}

.news_author h2::before {
  content: none;
}

.news_author h2::after {
  content: '';
  width: 100%;
  height: 1.5px;
  background: #BFBAB1;
  border-radius: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.news_author .author_box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 20px;
  gap: 20px;
}

.news_author .img_box img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

.news_author .text_box {
  width: calc(100% - 120px);
}

.news_author h3 {
  width: 100%;
  margin: 0;
  padding: 0 0 0 30px;
  font-size: 100%;
  position: relative;
  left: 0;
}

.news_author h3::before {
  content: '';
  width: 20px;
  height: 20px;
  background: url(../img/back_works_title.png) center center / contain no-repeat;
  position: absolute;
  top: calc(50% - 10px);
  left: 0;
}

.news_author h3::after {
  content: none;
}

.news_author .author_info {
  margin-top: 10px;
  font-size: 14px;
}

@media screen and (max-width: 575px) {
  .news_author .text_box {
    width: 100%;
  }
}

/* ----- News PrevNext ----- */
.news_prevnext {
  display: flex;
  justify-content: space-between;
}

.news_prevnext li {
  width: calc((100% - 60px) / 3);
}

.news_prevnext li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 12px 12px;
  color: #0E2247;
  border: 2px solid #ADC054;
  border-radius: 8px;
  text-align: center;
  line-height: 1.5;
  position: relative;
}

.news_prevnext li.prev a {
  padding-left: 40px;
}

.news_prevnext li.next a {
  padding-right: 40px;
}

.news_prevnext li a:hover {
  background-color: #DAE9B5;
}

.news_prevnext li.next a::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background-color: #ADC054;
  clip-path: path("M.355,11.855,5.069,6.994.355,2.133a1.278,1.278,0,0,1,0-1.767A1.186,1.186,0,0,1,2.032.33l.036.036L7.645,6.117a1.276,1.276,0,0,1,0,1.767l-5.577,5.75a1.184,1.184,0,0,1-1.674.039l-.039-.039a1.3,1.3,0,0,1,0-1.779");
  right: 16px;
  top: calc(50% - 7px);
  transition: 0.3s;
}

.news_prevnext li.prev a::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background-color: #ADC054;
  clip-path: path("M7.646,2.146,2.932,7.007l4.714,4.861a1.278,1.278,0,0,1,0,1.767,1.186,1.186,0,0,1-1.677.036l-.036-.036L.356,7.884a1.276,1.276,0,0,1,0-1.767L5.933.367A1.184,1.184,0,0,1,7.607.328l.039.039a1.3,1.3,0,0,1,0,1.779");
  left: 15px;
  top: calc(50% - 7px);
  transition: 0.3s;
}

.news_prevnext li.prev a:hover::after {
  transform: translateX(-4px);
}

.news_prevnext li.next a:hover::after {
  transform: translateX(4px);
}

@media screen and (max-width: 991px) {
  .news_prevnext li {
    width: calc((100% - 40px) / 3);
  }

  .news_prevnext li a {
    font-size: 87.5%;
  }
}

@media screen and (max-width: 575px) {
  .news_prevnext li {
    width: calc((100% - 30px) / 3);
  }

  .news_prevnext li a {
    padding: 10px;
  }

  .news_prevnext li.prev a {
    padding-left: 10px;
  }

  .news_prevnext li.next a {
    padding-right: 10px;
  }

  .news_prevnext li.prev a::after,
  .news_prevnext li.next a::after {
    content: none;
  }
}

/*** --------------- News Sidebar --------------- ***/
.news_side .side_box {
  margin-top: 50px;
  padding: 20px;
  background: #F3F7DE;
  border-radius: 20px;
}

.news_side .side_box:first-of-type {
  margin-top: 0;
}

.news_side .side_box h2 {
  padding-bottom: 15px;
  font-size: 112.5%;
  text-align: center;
  position: relative;
}

.news_side .side_box h2::after {
  content: '';
  width: 100%;
  height: 1.5px;
  background: #ADC054;
  border-radius: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.news_side .side_box ul {
  margin-top: 12px;
}

.news_side .side_box ul.tag_list {
  display: flex;
  flex-wrap: wrap;
}

.news_side .side_box ul li a {
  display: inline-block;
  width: 100%;
  padding: 8px 40px 8px 15px;
  border-radius: 10px;
  font-size: 87.5%;
  transition: 0.3s;
  position: relative;
}

.news_side .side_box ul.tag_list li a {
  padding: 4px 8px;
  font-size: 75%;
}

.news_side .side_box ul li a:hover {
  background: #FFF;
}

.news_side .side_box ul li a::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background-color: #ADC054;
  clip-path: path("M.355,11.855,5.069,6.994.355,2.133a1.278,1.278,0,0,1,0-1.767A1.186,1.186,0,0,1,2.032.33l.036.036L7.645,6.117a1.276,1.276,0,0,1,0,1.767l-5.577,5.75a1.184,1.184,0,0,1-1.674.039l-.039-.039a1.3,1.3,0,0,1,0-1.779");
  right: 16px;
  top: calc(50% - 7px);
  transition: 0.3s;
}

.news_side .side_box ul li a:hover::after {
  transform: translateX(4px);
}

.news_side .side_box ul.tag_list li a::after {
  content: none;
}

.news_side .side_box .date {
  display: inline-block;
  width: 100%;
  font-size: 92.9%;
}

.news_side .side_box ul li button {
  display: inline-block;
  width: 100%;
  padding: 8px 40px 8px 15px;
  border-radius: 10px;
  font-size: 87.5%;
  letter-spacing: 0.1em;
  border: none;
  transition: 0.3s;
  position: relative;
}

.news_side .side_box ul li button:hover {
  background: #FFF;
}

.news_side .side_box ul li button::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 9px;
  background-color: #ADC054;
  clip-path: path("M2.145.355,7.007,5.069,11.868.355a1.277,1.277,0,0,1,1.767,0,1.186,1.186,0,0,1,0,1.713L7.884,7.645a1.275,1.275,0,0,1-1.767,0L.366,2.068a1.184,1.184,0,0,1,0-1.713,1.3,1.3,0,0,1,1.779,0Z");
  right: 16px;
  top: calc(50% - 4px);
  transition: 0.3s;
}

.side_box ul li button[aria-expanded="true"]::before {
  transform: rotate(180deg);
}

@media screen and (max-width: 991px) {
  .news_side .side_box {
    margin-top: 40px;
  }

  .news_side .side_box:first-of-type {
    margin-top: 50px;
  }
}

@media screen and (max-width: 575px) {
  .news_side .side_box {
    margin-top: 30px;
  }

  .news_side .side_box:first-of-type {
    margin-top: 40px;
  }
}

/*** --------------- Post Page --------------- ***/
.post_page {
  margin-top: 60px;
}

.post_page .nav-links {
  width: 100%;
}

.post_page ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.post_page ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Inter", sans-serif;
  min-width: 50px;
  min-height: 50px;
  padding: 5px 10px;
  border: 1.5px solid #ADC054;
  border-radius: 10px;
}

.post_page ul li a:hover {
  background: #DAE9B5;
}

.post_page ul li .current {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 50px;
  min-height: 50px;
  padding: 5px 10px;
  background: #ADC054;
  border-radius: 10px;
  color: #FFF;
}

@media screen and (max-width: 991px) {
  .post_page {
    margin-top: 50px;
  }
}

@media screen and (max-width: 575px) {
  .post_page {
    margin-top: 40px;
  }
}

/*** --------------- Archive H1 --------------- ***/
.archive_h1 {
	padding: 0 20px 40px;
	font-size: 175%;
	text-align: center;
	position: relative;
}
.archive_h1::before {
	content: '';
	width: 100%;
	height: 1.5px;
	background: #ADC054;
	border-radius: 1px;
	position: absolute;
	top: calc(50% - 21px);
	left: 0;
	z-index: -3;
}
.archive_h1 span {
	display: inline-block;
	padding: 0 50px;
	position: relative;
}
.archive_h1 span::after {
	content: '';
	width: 100%;
	height: 100%;
	background: #FFF;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

@media screen and (max-width: 575px) {
	.archive_h1 {
		padding: 0 15px 30px;
		font-size: 150%;
	}
	.archive_h1::before {
		top: calc(50% - 16px);
	}
	.archive_h1 span {
		padding: 0 15px;
	}
}