@charset "UTF-8";
/* CSS Document */
/* ========================================================
変数
======================================================== */
/* ========================================================
mixin
======================================================== */
/*margin
------------------------------------------------------------------------------------------------------------------*/
/*content
------------------------------------------------------------------------------------------------------------------*/
/*font-weight
------------------------------------------------------------------------------------------------------------------*/
/*formパーツ　input
------------------------------------------------------------------------------------------------------------------*/
/*moduleスライドパーツ
------------------------------------------------------------------------------------------------------------------*/
/*list あしらい付き見出し用共通設定
------------------------------------------------------------------------------------------------------------------*/
/*title_set
------------------------------------------------------------------------------------------------------------------*/
/*midashi　全般　あしらいset
------------------------------------------------------------------------------------------------------------------*/
/* 2色重なってる横棒デザイン　変数で長さ位置調整 */
/* 左に2色の縦線 */
/* 横幅いっぱいに下線　1本 */
/* 下線　丸い点線 */
/* 下線　横長点線 */
/* 左に縦線 */
/* 背景色を引いた見出し */
/* 左に横棒 */
/*cms_midashi　文字サイズと基本スタイル
------------------------------------------------------------------------------------------------------------------*/
/*cms_midashi_pict アイコン付見出しセット
------------------------------------------------------------------------------------------------------------------*/
/*midashi_set　文字サイズと基本スタイル
------------------------------------------------------------------------------------------------------------------*/
/*title_set モノクロアイコン用
------------------------------------------------------------------------------------------------------------------*/
img {
  pointer-events: none !important;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

.image-link.image-wrap {
  cursor: pointer;
  display: inline-block;
}

.contents_title {
  padding: 0.8em 0;
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
}

.mian_width {
  padding-bottom: 2rem;
}

.mian_text {
  line-height: 1.8;
  font-size: 2rem;
}

.main_scroll_area {
  /*   height: 100%;
  overflow-y: scroll;
  padding-top: 1vw;
  padding-bottom: 1vw; */
  box-sizing: border-box;
  display: grid;
  align-items: baseline;
  overflow: hidden;
  padding-top: 2rem;
  /*  > *{
    height: 100%;
  } */
}

a:focus {
  border: var(--base-color4) solid 1px;
}

/*top_cate_list 学校日記SPカテゴリ用
---------------------------------------------------------------------------------------------------------------------------------------------------*/
.top_cate {
  display: none;
}

@media screen and (max-width: 680px) {
  .top_cate {
    display: block;
    color: var(--fontsub-color);
    background: var(--base-color1);
  }
  .top_cate_title {
    position: relative;
    font-size: 1rem;
    padding: 0.8rem 0.5rem 0.8rem 3rem;
  }
  .top_cate_title:before {
    position: absolute;
    content: "";
    background: url("../images/parts/arrow.svg") no-repeat;
    width: 1rem;
    height: 1rem;
    left: 1rem;
    top: 1rem;
  }
  .top_cate_title.active:before {
    transform: rotate(90deg);
  }
  .top_cate_box {
    display: none;
  }
  .top_cate_list a {
    border-top: 1px #fff solid;
    font-size: 1.5rem;
    color: var(--fontsub-color);
    display: block;
    padding: 1rem;
  }
  .top_cate_list li:last-child a {
    border-bottom: 1px #fff solid;
  }
  .top_cate_close {
    padding: 0.5rem 0;
    width: 2rem;
    margin: auto;
  }
  .top_cate_close img {
    width: 100%;
  }
}
/*page_title_area　下層ページタイトル
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.page_title_area {
  text-align: center;
  background: var(--bg-color2);
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.page_title_area_w {
  max-width: 1200px;
  margin: auto;
}

.page_title_area:before {
  content: "";
  background: var(--base-color1);
  height: 5px;
  width: 15rem;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  z-index: 3;
}

.page_title {
  font-weight: bold;
  font-size: 3.4rem;
  padding: 4rem 0;
  z-index: 2;
  position: relative;
}

.page_title_img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.page_title_img img {
  width: 100%;
  opacity: 0.3;
}

@media screen and (max-width: 480px) {
  .page_title {
    padding: 3rem 0;
    font-size: 2.2rem;
  }
}
/*shadow_box
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.shadow_box {
  box-shadow: var(--shadow);
  padding: 5rem;
  background: var(--base-color0);
}

@media screen and (max-width: 680px) {
  .shadow_box {
    padding: 2rem;
  }
}
/*module_pd
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.module_pd {
  padding: 8rem 0 8rem 0;
}

@media screen and (max-width: 680px) {
  .module_pd {
    padding: 4rem 0 5rem 0;
  }
}
/*disc_list
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.disc_list a {
  text-decoration: underline;
  color: var(--base-color3);
  position: relative;
  padding-left: 1em;
  display: block;
}
.disc_list a:hover {
  text-decoration: none;
}

ul.disc_list li a:before {
  content: "・";
  position: absolute;
  left: 0;
}

/*top____
=======================================================================================================================================*/
/*top_emergency
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.top_emergency {
  background: var(--bg-color_y1);
}

.top_emergency_flex {
  display: flex;
  overflow: hidden;
}

/*top_emergency_title*/
.top_emergency_title {
  position: relative;
  width: 20%;
  z-index: 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.2rem;
  margin-left: 2%;
  margin-bottom: 0;
  margin-top: 0;
  font-weight: bold;
}
.top_emergency_title:before {
  position: absolute;
  content: "";
  background: var(--bg-color_y2);
  width: 100%;
  height: 101%;
  z-index: -1;
  transform: skewX(-15deg);
}

.top_emergency .text_box {
  width: 100%;
  padding: 4rem 3rem;
  color: var(--color-black);
}

@media screen and (max-width: 1200px) {
  .top_emergency_flex {
    max-width: 90%;
  }
}
@media screen and (max-width: 680px) {
  .top_emergency_flex {
    display: block;
    max-width: 100%;
  }
  /*top_emergency_title*/
  .top_emergency_title {
    padding: 0.5em 0;
    width: 100%;
    font-size: 1.7rem;
    margin-left: auto;
    /*  &:before {
         width: 100%;
         height: 100%;
       }
    */
  }
  .top_emergency_title:before {
    width: 100%;
    transform: skewX(0deg);
  }
  .top_emergency .text_box {
    width: 90%;
    margin: auto;
    padding: 2rem 0rem;
    font-size: 1.5rem;
  }
}
/*info_list
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.info_list > li + li {
  margin-top: 1rem;
}
.info_list .info_list_inner {
  display: flex;
  justify-content: space-between;
  display: flex;
}
.info_list .info_list_inner .date {
  width: 20%;
}
.info_list .info_list_inner .text_box {
  width: 85%;
}
.info_list .info_list_inner .text_box a {
  text-decoration: underline;
  color: var(--base-color3);
}
.info_list .info_list_inner .text_box a:hover {
  text-decoration: none;
}

@media screen and (max-width: 680px) {
  .info_list > li + li {
    margin-top: 2rem;
  }
  .info_list .info_list_inner {
    font-size: 1.5rem;
    display: block;
  }
  .info_list .info_list_inner .date,
  .info_list .info_list_inner .text_box {
    width: auto;
  }
}
/* info_list_02
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.info_list_02 > li {
  padding: 2rem 6rem 1.5rem 6rem;
  box-shadow: var(--shadow);
}
.info_list_02 > li + li {
  margin-top: 2rem;
}
.info_list_02 .info_list_inner {
  display: flex;
  justify-content: space-between;
  display: flex;
}
.info_list_02 .info_list_inner .date {
  width: 20%;
}
.info_list_02 .info_list_inner .text_box {
  width: 80%;
  font-size: 1.3rem;
  color: var(--color-gray);
}

.info_list_02_title {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 0.5rem;
}

.info_list_02 .info_list_inner .text_box .tag_list {
  margin-top: 1rem;
}

@media screen and (max-width: 680px) {
  .info_list_02 > li {
    padding: 1.5rem 3rem 1rem 3rem;
  }
  .info_list_02 > li + li {
    margin-top: 2rem;
  }
  .info_list_02 .info_list_inner {
    display: block;
  }
  .info_list_02 .info_list_inner .date,
  .info_list_02 .info_list_inner .text_box {
    width: auto;
  }
}
/*  handout_list
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.handout_list > li {
  background: var(--base-color0);
  padding: 2rem 6rem 1.5rem 6rem;
  box-shadow: var(--shadow);
}
.handout_list > li + li {
  margin-top: 2rem;
}

.handout_list_title {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 0.5rem;
}
.handout_list_title a {
  text-decoration: underline;
  color: var(--base-color3);
}
.handout_list_title a:hover {
  text-decoration: none;
}

.handout_list .handout_list_inner .tag_list {
  margin-top: 1rem;
}

.handout_list_inner {
  width: 100%;
  font-size: 1.3rem;
  color: var(--color-gray);
}
.handout_list_inner > * {
  margin-bottom: 1rem;
}
.handout_list_inner .card_date {
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 680px) {
  .handout_list > li {
    padding: 1.5rem 2rem 1.5rem 2rem;
  }
}
/*  handout_all_list
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.handout_box {
  background: var(--base-color0);
  box-shadow: var(--shadow);
}
.handout_box .handout_all_list {
  padding-top: 3rem;
  max-width: 90%;
  margin: auto;
}
.handout_box .handout_all_list > li {
  padding: 1rem 0;
}
.handout_box_title {
  font-weight: bold;
  margin-top: 3em;
  margin-bottom: 3em;
  font-size: 1.8rem;
  padding: 1rem 1.5rem;
  background: var(--base-color1);
  font-weight: bold;
  color: var(--fontsub-color-f0);
  display: block;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}
@media screen and (max-width: 680px) {
  .handout_box_title {
    font-weight: bold;
    margin-top: 3em;
    margin-bottom: 3em;
    font-size: 1.5rem;
  }
}
.handout_box_title .ico_img {
  margin-right: 0.5em;
}

/*  handout_center_flex センターTOP用
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.handout_center_flex {
  display: flex;
  flex-wrap: wrap;
}
.handout_center_flex > * {
  width: 48%;
  margin-right: 4%;
  margin-bottom: 4%;
}
.handout_center_flex > *:nth-child(2n) {
  margin-right: auto;
}

@media screen and (max-width: 960px) {
  .handout_center_flex .btn_basic * {
    min-width: 12em;
  }
}
@media screen and (max-width: 680px) {
  .handout_center_flex {
    display: block;
  }
  .handout_center_flex .btn_basic * {
    min-width: 15em;
  }
  .handout_center_flex > * {
    width: 100%;
    margin-top: 10%;
    margin-right: auto;
  }
  .handout_center_flex > *:nth-child(2n) {
    margin-right: auto;
  }
}
/*  handout_detail_list 横に線
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.handout_detail_list {
  padding-bottom: 3rem;
}
.handout_detail_list > li {
  position: relative;
  margin: 2rem auto;
  padding: 0 3rem;
  display: flex;
  border-bottom: 1px dashed #707070;
}
.handout_detail_list > li:before {
  content: "";
  height: calc(100% - 1.5rem);
  /*    height: calc(100% - 3.3rem);*/
  width: 4px;
  background: var(--base-color1);
  position: absolute;
  top: 0rem;
  left: 0;
}
.handout_detail_list > li .cate {
  margin-top: 0;
}

@media screen and (max-width: 680px) {
  .handout_detail_list {
    padding-top: 4rem;
    padding-bottom: 2rem;
  }
}
/* sq_link_list
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.sq_link_list {
  display: flex;
  flex-wrap: wrap;
}
.sq_link_list li {
  overflow: hidden;
  width: 33.3%;
  position: relative;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  background: var(--grd-color1);
  transition: all 0.15s ease;
  box-sizing: border-box;
  z-index: 0;
  /* &:nth-child(odd) {
       background: var(--grd-color2);
     }
  */
}
.sq_link_list li .img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.sq_link_list li .img img {
  opacity: 0.3;
  width: 100%;
  height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.sq_link_list li:nth-child(3n) {
  border-right: none;
}
.sq_link_list li:before, .sq_link_list li:after {
  content: "";
  position: absolute;
  z-index: 2;
}
.sq_link_list li:before {
  background: var(--base-color0);
  width: 3rem;
  height: 3rem;
  bottom: 1rem;
  right: 1rem;
}
.sq_link_list li:after {
  position: absolute;
  bottom: 2.2rem;
  right: 2.3rem;
  display: inline-block;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 1px solid var(--base-color1);
  border-right: 1px solid var(--base-color1);
  transform: rotate(45deg);
}
.sq_link_list li:hover {
  opacity: 0.7;
}
.sq_link_list li a {
  color: var(--fontsub-color);
  padding: 8rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  position: relative;
  z-index: 5;
}
.sq_link_list li a span {
  display: inline-block;
  position: relative;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  padding: 0.5em 1em;
  z-index: 5;
}

@media screen and (max-width: 680px) {
  .sq_link_list li {
    width: 50%;
  }
  .sq_link_list li:nth-child(3n) {
    border-right: solid 1px #fff;
  }
  .sq_link_list li:nth-child(odd) {
    background: var(--grd-color1);
  }
  .sq_link_list li:nth-child(4n-1), .sq_link_list li:nth-child(4n-2) {
    background: var(--grd-color2);
  }
  .sq_link_list li:nth-child(2n) {
    border-right: none;
  }
  .sq_link_list li a {
    padding: 3rem 0;
    font-size: 1.6rem;
  }
  .sq_link_list li a span {
    border-top: none;
    border-bottom: none;
  }
  .sq_link_list li:before {
    bottom: 0.5rem;
    right: 0.5rem;
    width: 1.5rem;
    height: 1.5rem;
  }
  .sq_link_list li:after {
    bottom: 1rem;
    right: 1.1rem;
    width: 0.4rem;
    height: 0.4rem;
  }
}
/* card_list
===============================================================================*/
/*スライドあり*/
.card_list.slick-slider > div > div > li {
  margin: auto 1.5rem;
  padding: 1rem 0;
}

@media screen and (max-width: 680px) {
  .card_list.slick-slider > div > div > li {
    margin: auto 0.8rem;
  }
}
/*スライドなし*/
.card_list_inner {
  background: var(--base-color0);
  font-size: 1.5rem;
  box-shadow: var(--shadow);
}
.card_list_inner .img {
  position: relative;
  border-bottom: solid 2px var(--base-color1);
}
.card_list_inner .img:before {
  content: "";
  background: var(--base-color2);
  width: 10%;
  height: 2px;
  position: absolute;
  bottom: -2px;
  left: 0;
}
.card_list_inner .text_box {
  padding: 1rem 2rem;
}

@media screen and (max-width: 680px) {
  .card_list > li + li {
    margin-top: 3rem;
  }
}
/*card_parts
--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*element、center_mess_list、でも使用*/
.card_parts .img img {
  width: 100%;
  height: 16rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}

.card_parts_title {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 0.5rem;
  position: relative;
}
.card_parts_title:focus {
  border: solid 1px var(--base-color4) !important;
}
.card_parts_title.b_l {
  padding-left: 1rem;
  border-left: 6px solid var(--base-color1);
}

/* 2カラム時 */
.column2_flex .card_parts .img img {
  height: 16rem;
}

/*center_mess_list_date
--------------------------------------------------------------------------------------------------------------------------------------------------*/
.center_mess_list .card_parts .img img {
  height: 16rem;
}

@media screen and (max-width: 960px) {
  .center_mess_list .card_parts .img img {
    height: 13vw;
  }
}
/* 2カラム時 */
.column2_flex .center_mess_list .card_parts .img img {
  height: 11rem;
}

@media screen and (max-width: 960px) {
  .column2_flex .center_mess_list .card_parts .img img {
    height: 8vw;
  }
}
@media screen and (max-width: 680px) {
  .column2_flex .center_mess_list .card_parts .img img {
    height: 13vw;
  }
}
.card_date {
  display: flex;
  font-size: 1.1rem;
  color: var(--color-gray);
  flex-wrap: wrap;
  margin-top: 1rem;
}
.card_date dl {
  display: flex;
  font-size: 1.1rem;
  color: var(--color-gray);
}
.card_date dl + dl {
  margin-left: 3%;
}
.card_date dl dt {
  padding-right: 0.5rem;
  position: relative;
}
.card_date dl dt:before {
  content: "：";
  position: absolute;
  right: 0rem;
  height: 100%;
  width: 0.5rem;
}

.date {
  line-height: 1.2;
  font-size: 1.5rem;
}

.cate {
  font-size: 1.3rem;
  display: inline-block;
  background: var(--bg-color1);
  padding: 0.5rem;
  margin-top: 1rem;
}

.place {
  color: var(--color-gray);
  font-size: 1.4rem;
}

@media screen and (max-width: 680px) {
  .card_parts_title {
    font-size: 1.5rem;
  }
  .cate {
    background: var(--bg-color2);
  }
  .place {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 480px) {
  .center_mess_list > li:nth-child(-n+2) .card_date {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0;
  }
}
/*ico_normal ico_normal
--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*pdf exel 緊急　鍵　他画像アイコン　画像テキストの前*/
.ico_front {
  font-size: 1.1rem !important;
  margin-right: 0.5rem;
}

/*pdf exel 緊急　鍵　他画像アイコン　テキストの後ろ*/
.ico_back {
  font-size: 1.1rem !important;
  margin-left: 0.5rem;
}

/*ico_front_img*/
.ico_img > * {
  height: 1.2em;
}

.ico_img_front {
  line-height: 1;
  vertical-align: middle;
}
.ico_img_front > * {
  height: 1.2em;
  margin-right: 0.5em;
  vertical-align: middle;
}

/*new
--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*new_front　テキストの前*/
.new_front {
  position: relative;
  padding-left: 5rem;
}
.new_front:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 4rem;
  height: 1.5rem;
  background: url("../images/parts/ico_new.svg") no-repeat;
  background-size: contain;
}

/*new_back　テキストの後ろ*/
.new_back {
  padding-right: 5rem;
  position: relative;
}
.new_back:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0.5rem;
  width: 4rem;
  height: 1.5rem;
  background: url("../images/parts/ico_new.svg") no-repeat;
  background-size: contain;
}

/*pin
--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*pon_top　テキストの上*/
.pin_top {
  position: relative;
  padding-top: 1.5em;
}
.pin_top:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0em;
  width: 1.2em;
  height: 1.5em;
  background: url("../images/parts/ico_pin.svg") no-repeat;
  background-size: contain;
}

/* ピンのアイコン */
.ico_pin {
  position: relative;
  padding-left: 1.5em !important;
}
.ico_pin:before {
  content: "";
  position: absolute;
  width: 1.2em;
  height: 1.5em;
  left: 0;
  background: url("../images/parts/ico_pin.svg") no-repeat;
  background-size: contain;
}

/* 学校日記タイトル用 */
.diary_top_list .ico_pin {
  padding: 0 0 2.5rem 0;
}
.diary_top_list .ico_pin:before {
  width: 0.9em;
  height: 0.9em;
}

/*cate_emergency　テキストの上
--------------------------------------*/
.ico_cate {
  /*    padding-top: 2.6rem;*/
  /*  position: absolute;*/
  font-size: 1.1rem;
  /*    top: -0rem;*/
  display: table-cell;
}

/*emergency*/
.ico_red {
  color: var(--color-red);
  border: solid 1px var(--color-red);
  padding: 0.5rem 0.5rem;
}

/*ico_green*/
.ico_green {
  color: var(--color-green);
  border: solid 1px var(--color-green);
  padding: 0.5rem 0.5rem;
}

/*ico_blue*/
.ico_blue {
  color: var(--color-blue);
  border: solid 1px var(--color-blue);
  padding: 0.5rem 0.5rem;
}

/*normal*/
.noraml {
  color: var(--color-blue2);
  border: solid 1px var(--color-blue2);
  padding: 0.5rem 0.5rem;
}

/* 塗りつぶし　アイコン */
/*purple*/
.ico_purple_fill {
  color: var(--fontsub-color);
  background: var(--color-purple);
  padding: 0.2em 1em;
  border-radius: 0.5em;
  font-size: 1rem;
}

/*slide
===============================================================================*/
.slick-slider {
  margin-bottom: 0 !important;
}

/*矢印 slide-module-01 slide-module-02　slide-module-03　slide-module-04
-------------------------------------------------------------------*/
/*矢印デザイン
---------------------------------------------------------*/
.slide-module-01 .slick-prev:before,
.slide-module-01 .slick-next:before,
.slide-module-02 .slick-prev:before,
.slide-module-02 .slick-next:before,
.slide-module-03 .slick-prev:before,
.slide-module-03 .slick-next:before,
.slide-module-04 .slick-prev:before,
.slide-module-04 .slick-next:before {
  /*リセット*/
  content: none;
}

.slide-module-01 .slick-prev:after,
.slide-module-01 .slick-next:after,
.slide-module-02 .slick-prev:after,
.slide-module-02 .slick-next:after,
.slide-module-03 .slick-prev:after,
.slide-module-03 .slick-next:after,
.slide-module-04 .slick-prev:after,
.slide-module-04 .slick-next:after {
  content: "";
  position: absolute;
  background: url("../images/top/slide_arrow_black.svg") no-repeat;
  background-position: center;
  background-size: contain;
  width: 7px;
  height: 12px;
  font-family: none;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  filter: brightness(0) invert(1);
}

.slide-module-01 .slick-prev:after,
.slide-module-02 .slick-prev:after,
.slide-module-03 .slick-prev:after,
.slide-module-04 .slick-prev:after {
  transform: translate(-50%, -50%) scaleX(-1);
  top: 48%;
}

.slide-module-01 .slick-prev,
.slide-module-01 .slick-next,
.slide-module-02 .slick-prev,
.slide-module-02 .slick-next,
.slide-module-03 .slick-prev,
.slide-module-03 .slick-next,
.slide-module-04 .slick-prev,
.slide-module-04 .slick-next {
  left: auto;
  width: 5rem;
  height: 5rem;
  top: auto;
  transform: translate(0%, 0%);
  z-index: 2;
  background: var(--base-color1a85);
}

/*hover*/
.slide-module-01 .slick-prev:hover,
.slide-module-01 .slick-next:hover,
.slide-module-01 .slick-prev:focus,
.slide-module-02 .slick-prev:hover,
.slide-module-02 .slick-next:hover,
.slide-module-02 .slick-prev:focus,
.slide-module-03 .slick-prev:hover,
.slide-module-03 .slick-next:hover,
.slide-module-03 .slick-prev:focus {
  background: var(--base-color2a85);
}

/*矢印位置
---------------------------------------------------------*/
.slide-module-01 .slick-prev,
.slide-module-01 .slick-next {
  bottom: -6rem;
}

.slide-module-02 .slick-prev,
.slide-module-02 .slick-next {
  bottom: -8rem;
}

.slide-module-01 .slick-prev,
.slide-module-02 .slick-prev {
  right: 8rem;
}

.slide-module-01 .slick-next,
.slide-module-02 .slick-next {
  right: 1.5rem;
}

@media screen and (max-width: 680px) {
  .slide-module-01 {
    padding-bottom: 3rem;
  }
  .slide-module-01 .slick-prev,
  .slide-module-01 .slick-next {
    width: 3rem;
    height: 3rem;
    bottom: -2rem;
  }
  .slide-module-02 .slick-prev,
  .slide-module-02 .slick-next {
    width: 3rem;
    height: 3rem;
  }
  .slide-module-02 .slick-prev,
  .slide-module-02 .slick-next {
    bottom: -4.5rem;
  }
  .slide-module-01 .slick-prev,
  .slide-module-02 .slick-prev {
    right: auto;
    left: calc(50% - 1.5rem);
    transform: translate(-50%, 0%);
  }
  .slide-module-01 .slick-next,
  .slide-module-02 .slick-next {
    right: auto;
    left: calc(50% + 1.5rem);
    transform: translate(-50%, 0%);
  }
}
/*矢印位置　slide-module-03 slide-module-04
---------------------------------------------------------*/
.slide-module-03 .slick-prev,
.slide-module-03 .slick-next {
  bottom: -8rem;
}

.slide-module-04 .slick-prev,
.slide-module-04 .slick-next {
  bottom: -8rem;
}

.slide-module-03 .slick-prev,
.slide-module-04 .slick-prev {
  left: 1.2rem;
}

.slide-module-03 .slick-next,
.slide-module-04 .slick-next {
  right: 1.2rem;
}

@media screen and (max-width: 680px) {
  .slide-module-03 .slick-prev,
  .slide-module-03 .slick-next {
    bottom: -6rem;
  }
  .slide-module-04 .slick-prev,
  .slide-module-04 .slick-next {
    bottom: -6rem;
  }
}
/*サムネのサイズ
---------------------------------------------------------*/
.slide-module-01 .card_parts .img img {
  height: 23rem;
}

.slide-module-02 .img {
  overflow: hidden;
}
.slide-module-02 .img img {
  height: 68vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}

@media screen and (max-width: 960px) {
  .slide-module-01 .card_parts .img img {
    height: 47vw;
  }
}
/* slide-module-02 movie_card_list
==========================================================================*/
/*スライドあり*/
.movie_card_list.slick-slider > div > div > li {
  margin: auto 1.5rem;
  padding: 1rem 0;
}

@media screen and (max-width: 680px) {
  .movie_card_list.slick-slider > div > div > li {
    margin-right: auto;
    margin: auto 2rem;
  }
}
/*スライドなし*/
.movie_card_list_inner {
  background: var(--base-color0);
  padding: 1rem;
  box-shadow: var(--shadow);
}
.movie_card_list_inner .img {
  position: relative;
  display: grid;
  align-items: center;
  justify-content: center;
  /* margin-bottom: 0.5rem;
  border-bottom: solid 2px var(--base-color1); */
}
.movie_card_list_inner .img img {
  width: 100%;
}
.movie_card_list_inner .img:before {
  content: "";
  background: var(--base-color2);
  width: 10%;
  height: 2px;
  position: absolute;
  bottom: -2px;
  left: 0;
}
.movie_card_list_inner .img span {
  position: relative;
}
.movie_card_list_inner .img span:before, .movie_card_list_inner .img span:after {
  content: "";
  position: absolute;
}
.movie_card_list_inner .img span:before {
  background: url("../images/parts/ico_movie.svg") no-repeat;
  width: 6.2rem;
  height: 4.6rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.movie_card_list_inner .img span:after {
  background: rgba(255, 255, 255, 0.2);
  width: 100%;
  height: 100%;
  transition: all 0.15s ease;
  top: 0;
  left: 0;
}
.movie_card_list_inner .img iframe {
  width: 100%;
  height: 11.1111111111vw;
}
.movie_card_list_inner:hover .img span:after {
  background: rgba(255, 255, 255, 0.3);
}

@media screen and (max-width: 960px) {
  .movie_card_list_inner .img iframe {
    height: 55vw;
  }
}
/*bnr_list
==================================================== */
.bnr_list {
  display: flex;
  flex-wrap: wrap;
}
.bnr_list > li {
  width: 32%;
  margin-right: 2%;
  margin-bottom: 2%;
  transition: all 0.15s ease;
}
.bnr_list > li:nth-child(3n) {
  margin-right: 0%;
}
.bnr_list li img {
  width: 100%;
}
.bnr_list > li:hover {
  opacity: 0.8;
}

@media screen and (max-width: 680px) {
  .bnr_list > li {
    width: 48%;
    margin-right: 2%;
    margin-bottom: 2%;
  }
  .bnr_list > li:nth-child(3n) {
    margin-right: 2%;
  }
  .bnr_list > li:nth-child(2n) {
    margin-right: 2%;
  }
}
/* .bnr_list {
  display: flex;
  flex-wrap: wrap;

  > li {
    width: 23%;
    margin-right: 2%;
    margin-bottom: 2%;
    transition: all 0.15s ease;
    &:nth-child(4n) {
      margin-right: 0%;
    }
  }

  li img {
    width: 100%;
  }

  > li:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 680px) {
  .bnr_list > li {
    width: 48%;
    margin-right: 2%;
    margin-bottom: 2%;

    &:nth-child(4n) {
      margin-right: 0%;
    }

    &:nth-child(2n) {
      margin-right: 2%;
    }
  }
}
 */
/*diary
=======================================================================================================================================*/
/*diary page
==========================================================================*/
@media screen and (min-width: 681px), print {
  /*page_menu_list*/
  .page_menu_list {
    display: flex;
    background: var(--bg-color_g2);
    width: 100%;
    gap: 2px;
  }
  .page_menu_list > li {
    width: 100%;
    background: var(--bg-color_g3);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    position: relative;
    z-index: 2;
  }
  .page_menu_list > li a {
    padding: 1rem 4px;
    height: 100%;
    display: flex;
    font-size: 1.3rem;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    text-align: center;
    color: var(--base-color3);
    text-decoration: underline;
    line-height: 1.4;
  }
  .page_menu_list > li.current, .page_menu_list > li:hover {
    background: var(--base-color1);
    color: var(--base-color0);
    text-decoration: none;
  }
  .page_menu_list > li.current a, .page_menu_list > li:hover a {
    color: var(--base-color0);
    text-decoration: none;
  }
  .page_menu_list > li.current a {
    pointer-events: none;
  }
  .page_menu_list > li > ul {
    height: 0;
    overflow: hidden;
    opacity: 0;
    position: absolute;
    background: var(--bg-color_g3);
    text-decoration: none;
    width: 100%;
    top: 50px;
  }
  .page_menu_list > li:hover > ul {
    height: auto;
    overflow: visible;
    opacity: 1;
  }
  .page_menu_list > li > ul li a {
    color: var(--base-color3) !important;
  }
  .page_menu_list > li > ul li:hover {
    background: var(--base-color1);
  }
  .page_menu_list > li > ul li:hover a {
    color: var(--base-color0) !important;
  }
}
.page_menu_title,
.page_menu_list > li > .nav_down {
  display: none;
}

@media screen and (max-width: 680px) {
  .page_menu_title,
  .page_menu_list > li > .nav_down {
    display: block;
  }
  .page_menu_title {
    padding: 0.5rem 2rem 0.5rem 1rem;
    display: block;
    background: var(--base-color1);
    color: var(--base-color0);
    position: relative;
    font-weight: bold;
    font-size: 1.6rem;
  }
  .page_menu_title:after {
    position: absolute;
    content: "";
    vertical-align: middle;
    right: 1.5rem;
    top: -7px;
    bottom: 0;
    margin: auto;
    width: 14px;
    height: 14px;
    border-top: 2px solid var(--base-color0);
    border-right: 2px solid var(--base-color0);
    transform: rotate(135deg);
    transition: all 0.15s ease;
  }
  /*矢印*/
  .page_menu.open .page_menu_title:after {
    top: 5px;
    transform: rotate(-45deg);
  }
  /*page_menu_list
  -----------------------------------------------*/
  .page_menu_list {
    height: 0;
    opacity: 0;
    overflow: hidden;
    transition: all 0.15s ease;
  }
  .page_menu_list li a {
    padding: 0.8rem 1.5rem;
    display: block;
    font-size: 1.2rem;
  }
  .page_menu_list > li {
    border-bottom: 1px solid var(--color-gray3);
  }
  .page_menu_list > li:first-child {
    border-top: 1px solid var(--color-gray3);
  }
  /*open*/
  .page_menu.open .page_menu_list {
    height: auto;
    opacity: 1;
    overflow: visible;
  }
  /*第二階層
  -------------------------------------------------*/
  .page_menu_list > li {
    position: relative;
  }
  .page_menu_list > li > ul {
    display: none;
  }
  .page_menu_list > li > .nav_down {
    position: absolute;
    top: 0;
    height: 2.5em;
    width: 3em;
    display: block;
    right: 0;
  }
  .page_menu_list > li.has_nav > a {
    padding-right: 4em;
  }
  .page_menu_list > li.open > ul {
    display: block;
  }
  .page_menu_list > li.open > a {
    border-bottom: 1px solid var(--color-gray3);
  }
  .page_menu_list > li.open > .nav_down:before {
    transform: translateY(0) rotate(90deg);
  }
  .page_menu_list > li > .nav_down:after {
    content: "";
    display: block;
    position: absolute;
    left: auto;
    bottom: auto;
    right: 14px;
    top: 52%;
    width: 18px;
    height: 2px;
    margin-top: -1px;
    background: var(--base-color1);
    transition: all 0.2s;
    z-index: 9;
  }
  .page_menu_list > li > .nav_down:before {
    content: "";
    display: block;
    position: absolute;
    left: auto;
    bottom: auto;
    right: 22px;
    top: 50%;
    width: 2px;
    height: 18px;
    background: var(--base-color1);
    margin-top: -7px;
    transition: all 0.2s;
  }
}
/* side_menu
==========================================================================*/
.side_menu_area {
  padding-bottom: 3rem;
}

.side_section + .side_section {
  margin-top: 15%;
}

@media screen and (max-width: 680px) {
  .side_section_inner_pd {
    max-width: 90%;
    margin: auto auto;
  }
  .side_section + .sp_no_section {
    margin-top: 0;
  }
}
/*side_title
---------------------------------------------------------------------------*/
.side_title {
  background: var(--base-color1);
  padding: 1rem 1.5rem;
  color: var(--fontsub-color-f0);
  font-weight: bold;
  font-size: 1.8rem;
}
.side_title + * {
  margin-top: 2rem !important;
}
.side_title + .category-wrap {
  margin-top: 0rem !important;
}
.side_title + .category-wrap .side_subtitle {
  margin-top: 0rem !important;
}

.side_subtitle {
  background: var(--bg-color2);
  padding: 1rem 1.5rem;
  font-size: 1.6rem;
  margin-top: 2rem;
}

.side_title + .side_subtitle {
  margin-top: 0rem !important;
}

.side_subtitle + * {
  margin-top: 2rem !important;
}

/*side_dl
---------------------------------------------------------------------------*/
.side_section .side_dl {
  font-size: 1.5rem;
  margin-bottom: 3rem;
}

.side_dl dl {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 1rem;
  padding: 1rem 1rem;
}
.side_dl dt {
  margin-bottom: 0.5rem;
}
.side_dl dd {
  padding-left: 2rem;
  position: relative;
}
.side_dl dd:before {
  position: absolute;
  content: "";
  border: 4px solid transparent;
  border-left: 6px solid var(--base-color1);
  top: 50%;
  left: 1.5rem;
  box-sizing: border-box;
  width: 4px;
  height: 6px;
  transform: translate(-50%, -50%);
}
.side_dl dd a {
  text-decoration: underline;
  color: var(--base-color1);
}
.side_dl dd a:hover {
  text-decoration: none;
}

/*side_btn
---------------------------------------------------------------------------*/
.side_section .side_btn {
  max-width: 90%;
  margin: auto;
}

.side_btn > * {
  box-sizing: border-box;
  display: block;
  font-weight: bold;
  border: solid 3px var(--base-color1);
  padding: 1.5rem 0;
  text-align: center;
  color: var(--base-color1);
  font-size: 1.6rem;
  position: relative;
}
.side_btn > *:after {
  content: "";
  top: 50%;
  right: 1.8rem;
  transform: translate(0%, -50%) rotate(45deg);
  position: absolute;
  width: 1rem;
  height: 1rem;
  display: inline-block;
  border-top: 3px solid var(--base-color1);
  border-right: 3px solid var(--base-color1);
}
.side_btn > *:hover {
  color: var(--white-white-black);
  background: var(--base-color1);
}
.side_btn > *:hover:after {
  border-top: 3px solid var(--white-white-black);
  border-right: 3px solid var(--white-white-black);
}

/*side_list_arrowbox
---------------------------------------------------------------------------*/
ul.side_list_arrowbox > li {
  position: relative;
  font-size: 1.5rem;
  padding: 1rem 2rem 1rem 1rem;
  border-bottom: 1px solid #cccccc;
  display: block;
}
ul.side_list_arrowbox > li :after {
  content: "";
  top: 50%;
  right: 0.5rem;
  transform: translate(0%, -50%) rotate(45deg);
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  display: inline-block;
  border-top: 1px solid #a5a5a5;
  border-right: 1px solid #a5a5a5;
}

/*side_list_square
---------------------------------------------------------------------------*/
.side_section ul.side_list_square {
  max-width: 90%;
  margin: auto auto;
}

ul.side_list_square > li {
  position: relative;
  padding-left: 1em;
  margin-bottom: 1rem;
  font-size: 1.5rem;
}
ul.side_list_square > li:before {
  content: "■";
  position: absolute;
  left: 0;
  top: 0.3em;
  color: var(--color-gray2);
  font-size: 1.2rem;
}

/*前にアイコンがある場合*/
.side_list_square > li.no_sq {
  padding-left: 0;
}
.side_list_square > li.no_sq:before {
  content: normal !important;
}

/*カラーバリエ サイドメニュー*/
ul.side_list_square > li.sq_blue1:before {
  color: var(--color-blue3);
}
ul.side_list_square > li.sq_blue2:before {
  color: var(--color-blue4);
}
ul.side_list_square > li.sq_green1:before {
  color: var(--color-green2);
}
ul.side_list_square > li.sq_green2:before {
  color: var(--color-green3);
}
ul.side_list_square > li.sq_yellow1:before {
  color: var(--color-yellow);
}
ul.side_list_square > li.sq_yellow2:before {
  color: var(--color-yellow2);
}
ul.side_list_square > li.sq_orange1:before {
  color: var(--color-orange);
}
ul.side_list_square > li.sq_orange2:before {
  color: var(--color-orange2);
}
ul.side_list_square > li.sq_purple1:before {
  color: var(--color-purple);
}
ul.side_list_square > li.sq_purple2:before {
  color: var(--color-purple2);
}

/*fullcalender内のカテゴリカラー　カレンダー*/
.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-black,
.schedule-category-black {
  background-color: #000 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-blue,
.schedule-category-blue {
  background-color: #003acc !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-skyblue,
.schedule-category-skyblue {
  background-color: #00808e !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-green,
.schedule-category-green {
  background-color: #027a0e !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-yellow,
.schedule-category-yellow {
  background-color: #726e00 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-orange,
.schedule-category-orange {
  background-color: #af5500 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-red,
.schedule-category-red {
  background-color: #d82424 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-pink,
.schedule-category-pink {
  background-color: #c40d78 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-purple,
.schedule-category-purple {
  background-color: #6903bc !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-brown,
.schedule-category-brown {
  background-color: #5b0000 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-navy,
.schedule-category-navy {
  background-color: #1d2454 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event.schedule-category-gray,
.schedule-category-gray {
  background-color: #636363 !important;
}

.fc-event.fc-h-event.fc-daygrid-event.fc-daygrid-block-event .fc-event-main {
  color: #fff !important;
}

/*back_num
---------------------------------------------------------------------------*/
.back_num select {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid 1px #cccccc;
  outline: none;
  background: #fff url("../images/parts/select_arrow.svg") no-repeat;
  background-size: contain;
  background-position: top 0 right 0;
  padding: 1rem;
  width: 100%;
  font-size: 1.6rem;
  position: relative;
  z-index: 3;
}
.back_num select::-ms-expand {
  display: none;
}
.back_num select:focus-visible {
  border: solid 1px var(--base-color4) !important;
}
.back_num select optgroup {
  /* color: var(--color-red); */
  font-style: normal;
  padding: 0 2px;
  background: var(--base-color1);
  color: var(--white-white-black);
}
.back_num select optgroup option {
  color: var(--font-color);
  background: var(--base-color0);
}

/*ie*/
@media screen and (max-width: 680px) {
  .back_num {
    width: 90%;
    margin: auto;
    font-size: 1.6rem;
  }
}
/*backnum-list-aco
---------------------------------------------------------------------------*/
.backnum-list-aco > li ul {
  display: none;
}

/*backnum_list_aco デザイン*/
.backnum_list_aco > li .backnum_list_title {
  position: relative;
  padding-left: 2rem;
  cursor: pointer;
}
.backnum_list_aco > li .backnum_list_title:before {
  position: absolute;
  content: "";
  border: 4px solid transparent;
  border-left: 6px solid var(--base-color1);
  top: 50%;
  left: 1.5rem;
  box-sizing: border-box;
  width: 4px;
  height: 6px;
  transform: translate(-50%, -50%);
}
.backnum_list_aco > li .backnum_list_title.active:before {
  left: 1.2rem;
  transform: translate(-50%, -50%) rotate(90deg);
}
.backnum_list_aco > li ul {
  padding-left: 2rem;
}
.backnum_list_aco > li ul a {
  text-decoration: underline;
  color: var(--dark-black-white);
}
.backnum_list_aco > li ul a:hover {
  text-decoration: none;
}

/*backnum_list デザイン acoなし*/
.backnum_list > li {
  position: relative;
  padding-left: 2rem;
}
.backnum_list > li:before {
  position: absolute;
  content: "";
  border: 4px solid transparent;
  border-left: 6px solid var(--base-color1);
  top: 50%;
  left: 1.5rem;
  box-sizing: border-box;
  width: 4px;
  height: 6px;
  transform: translate(-50%, -50%);
}
.backnum_list > li a {
  text-decoration: underline;
  color: var(--base-color3);
}
.backnum_list > li a:hover {
  text-decoration: none;
}

/*side_tag_lsit
---------------------------------------------------------------------------*/
.side_section ul.side_tag_lsit {
  width: 90%;
  margin: auto auto 3rem auto;
  display: flex;
  flex-wrap: wrap;
}
.side_section ul.side_tag_lsit > li {
  margin-right: 5%;
  margin-bottom: 2%;
}
.side_section ul.side_tag_lsit > li a {
  color: var(--color-gray);
  text-decoration: underline;
  font-size: 1.3rem;
}
.side_section ul.side_tag_lsit > li a:hover {
  text-decoration: none;
}
.side_section .ico_rss {
  display: block;
  position: relative;
  padding-left: 2rem;
  line-height: 1;
  font-weight: bold;
}
.side_section .ico_rss:before {
  content: "";
  background: url("../images/parts/ico_rss.svg") no-repeat;
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 0;
  left: 0;
}

/*side ico_rsss
---------------------------------------------------------------------------*/
/* pagination
-----------------------------------------------------------------------------------------------------------------------------------*/
.pagination {
  margin: 5% 0 10%;
}

.pagenavi {
  display: flex;
  justify-content: center;
}
.pagenavi span {
  display: block;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  padding: 7px 0;
  margin: 0 5px;
  min-height: 30px;
  position: relative;
  box-sizing: border-box;
}
.pagenavi a {
  display: block;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  padding: 7px 0;
  margin: 0 5px;
  min-height: 30px;
  position: relative;
  box-sizing: border-box;
  color: var(--font-color);
  background: var(--bg-color_g1);
  width: 30px;
}
.pagenavi span.current {
  display: block;
  color: var(--base-color0);
  background: var(--base-color1);
  border-radius: 2px;
  width: 30px;
}
.pagenavi a.current, .pagenavi a:hover {
  display: block;
  color: var(--base-color0);
  background: var(--base-color1);
  border-radius: 2px;
  width: 30px;
}
.pagenavi .previouspostslink,
.pagenavi .nextpostslink {
  background: none;
}

@media screen and (max-width: 768px) {
  .pagination {
    margin: 10% 0 10%;
  }
}
/*cms parts
==========================================================================*/
/*cms_midashi ver_01
------------------------------------------------------------------------------------*/
.cms_midashi {
  /*   > * {
    &:first-of-type {
      margin-top: auto !important;
    }
  } */
}
.cms_midashi h1 {
  font-size: 3rem;
  /* 		margin-top: 2em; */
  margin-bottom: 2em;
  font-weight: bold;
}
.cms_midashi h2 {
  font-size: 2.6rem;
  margin-bottom: 3em;
  /* margin-top: 3em; */
  font-weight: bold;
}
.cms_midashi h3 {
  font-size: 2.4rem;
  /* 	margin-top: 3em; */
  margin-bottom: 3em;
  font-weight: bold;
}
.cms_midashi h4 {
  font-size: 1.9rem;
  /* margin-top: 3em; */
  margin-bottom: 3em;
  font-weight: bold;
}
.cms_midashi h5 {
  font-size: 2.3rem;
  margin-bottom: 3rem;
  font-weight: bold;
}
.cms_midashi h6 {
  font-size: 1.8rem;
  margin-bottom: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 680px) {
  .cms_midashi h2 {
    font-size: 1.7rem;
  }
  .cms_midashi h3 {
    font-size: 1.6rem;
  }
  .cms_midashi h4 {
    font-size: 1.5rem;
  }
  .cms_midashi h5 {
    font-size: 1.5rem !important;
  }
  .cms_midashi h6 {
    font-size: 1.5rem !important;
  }
}
.cms_midashi h1 {
  position: relative;
}
.cms_midashi h1:before {
  content: "";
  position: absolute;
  height: 3px;
  width: 100%;
  left: left;
  text-align: center;
  display: block;
  bottom: -0.5em;
  transform: translate(0, 0);
  background-image: linear-gradient(90deg, var(--base-color2) 0 10%, var(--base-color1) 10%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.cms_midashi h2 {
  position: relative;
  display: block;
}
.cms_midashi h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.5em;
  height: 1px;
  width: 100%;
  background: var(--base-color1);
}
.cms_midashi h3 {
  padding-left: 0.5em;
  border-left: 3px solid var(--base-color1);
  line-height: 1.2;
}
.cms_midashi h4 {
  padding: 0.8em 1em;
  background: var(--bg-color2);
  font-weight: bold;
  color: var(--base-color4);
  display: block;
}
.cms_midashi h5 {
  padding-left: 1.5em;
  position: relative;
}
.cms_midashi h5:before {
  content: "";
  width: 1em;
  background: var(--base-color1);
  height: 3px;
  position: absolute;
  top: 0.8em;
  left: 0;
}
.cms_midashi h6 {
  position: relative;
}
.cms_midashi h6:before {
  position: absolute;
  left: 0;
  bottom: -0.5rem;
  content: "";
  background: #cccccc;
  width: 100%;
  height: 1px;
}

/*cms_midashi ver_02　アイコン付き季節ごと
------------------------------------------------------------------------------------*/
.cms_midashi_pict {
  /*   > * {
    &:first-child {
      margin-top: auto !important;
    }
  } */
}
.cms_midashi_pict h1 {
  font-size: 3rem;
  /* 		margin-top: 2em; */
  margin-bottom: 2em;
  font-weight: bold;
}
.cms_midashi_pict h2 {
  font-size: 2.6rem;
  margin-bottom: 3em;
  /* margin-top: 3em; */
  font-weight: bold;
}
.cms_midashi_pict h3 {
  font-size: 2.4rem;
  /* 	margin-top: 3em; */
  margin-bottom: 3em;
  font-weight: bold;
}
.cms_midashi_pict h4 {
  font-size: 1.9rem;
  /* margin-top: 3em; */
  margin-bottom: 3em;
  font-weight: bold;
}
.cms_midashi_pict h5 {
  font-size: 2.3rem;
  margin-bottom: 3rem;
  font-weight: bold;
}
.cms_midashi_pict h6 {
  font-size: 1.8rem;
  margin-bottom: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 680px) {
  .cms_midashi_pict h2 {
    font-size: 1.7rem;
  }
  .cms_midashi_pict h3 {
    font-size: 1.6rem;
  }
  .cms_midashi_pict h4 {
    font-size: 1.5rem;
  }
  .cms_midashi_pict h5 {
    font-size: 1.5rem !important;
  }
  .cms_midashi_pict h6 {
    font-size: 1.5rem !important;
  }
}
.cms_midashi_pict h1 {
  position: relative;
  padding-left: 2.2em;
}
.cms_midashi_pict h1:before {
  content: "";
  width: 1.8em;
  height: 1.5em;
  background: url("../images/parts/ico_normal_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.cms_midashi_pict h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.cms_midashi_pict h2:before {
  content: "";
  width: 2em;
  height: 1.5em;
  background: url("../images/parts/ico_normal_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.cms_midashi_pict h2:after {
  width: 100%;
  background: #63aa26;
  content: "";
  height: 2px;
  position: absolute;
  bottom: -0.5em;
  left: 0;
}
.cms_midashi_pict h3 {
  position: relative;
  padding-left: 2.2em;
}
.cms_midashi_pict h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_normal_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.cms_midashi_pict h4 {
  border: solid 3px #4F841C;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.cms_midashi_pict h4:before {
  content: normal;
}
.cms_midashi_pict h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.cms_midashi_pict h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_normal_05.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.cms_midashi_pict h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #4f841c;
  margin-bottom: 2rem;
}

.ver_spring h1 {
  position: relative;
  padding-left: 2.2em;
}
.ver_spring h1:before {
  content: "";
  width: 2em;
  height: 1.5em;
  background: url("../images/parts/ico_spring_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_spring h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.ver_spring h2:before {
  content: "";
  width: 2em;
  height: 2.5em;
  background: url("../images/parts/ico_spring_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.ver_spring h2:after {
  width: 100%;
  background: #63aa26;
  content: "";
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ver_spring h3 {
  position: relative;
  padding-left: 2.2em;
}
.ver_spring h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_spring_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_spring h4 {
  border: solid 3px #ffbdba;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.ver_spring h4:before {
  content: normal;
}
.ver_spring h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.ver_spring h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_spring_04.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_spring h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #ffbdba;
  margin-bottom: 2rem;
}

.ver_summer h1 {
  position: relative;
  padding-left: 2.2em;
}
.ver_summer h1:before {
  content: "";
  width: 2em;
  height: 1.6em;
  background: url("../images/parts/ico_summer_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_summer h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.ver_summer h2:before {
  content: "";
  width: 2em;
  height: 2.5em;
  background: url("../images/parts/ico_summer_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.ver_summer h2:after {
  width: 100%;
  background: #63aa26;
  content: "";
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ver_summer h3 {
  position: relative;
  padding-left: 2.2em;
}
.ver_summer h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_summer_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_summer h4 {
  border: solid 3px #ffcfab;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.ver_summer h4:before {
  content: normal;
}
.ver_summer h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.ver_summer h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_summer_04.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_summer h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #ffcfab;
  margin-bottom: 2rem;
}

.ver_autumn h1 {
  position: relative;
  padding-left: 2.2em;
}
.ver_autumn h1:before {
  content: "";
  width: 2em;
  height: 1.6em;
  background: url("../images/parts/ico_autumn_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_autumn h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.ver_autumn h2:before {
  content: "";
  width: 2em;
  height: 2em;
  background: url("../images/parts/ico_autumn_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.ver_autumn h2:after {
  width: 100%;
  background: #db880f;
  content: "";
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ver_autumn h3 {
  position: relative;
  padding-left: 2.2em;
}
.ver_autumn h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_autumn_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_autumn h4 {
  border: solid 3px #db880f;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.ver_autumn h4:before {
  content: normal;
}
.ver_autumn h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.ver_autumn h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_autumn_04.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_autumn h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #db880f;
  margin-bottom: 2rem;
}

.ver_winter h1 {
  position: relative;
  padding-left: 2.2em;
}
.ver_winter h1:before {
  content: "";
  width: 2em;
  height: 1.6em;
  background: url("../images/parts/ico_winter_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_winter h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.ver_winter h2:before {
  content: "";
  width: 2em;
  height: 2em;
  background: url("../images/parts/ico_winter_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.ver_winter h2:after {
  width: 100%;
  background: #bababa;
  content: "";
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ver_winter h3 {
  position: relative;
  padding-left: 2.2em;
}
.ver_winter h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_winter_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_winter h4 {
  border: solid 3px #9ac5ff;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.ver_winter h4:before {
  content: normal;
}
.ver_winter h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.ver_winter h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_winter_04.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_winter h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #9ac5ff;
  margin-bottom: 2rem;
}

.ver_sports h1 {
  position: relative;
  padding-left: 2.2em;
}
.ver_sports h1:before {
  content: "";
  width: 2em;
  height: 1.6em;
  background: url("../images/parts/ico_sports_01.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_sports h2 {
  position: relative;
  padding-left: 2.2em;
  padding-bottom: 0.4em;
}
.ver_sports h2:before {
  content: "";
  width: 2em;
  height: 2em;
  background: url("../images/parts/ico_sports_02.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
}
.ver_sports h2:after {
  width: 100%;
  background: #ba7831;
  content: "";
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ver_sports h3 {
  position: relative;
  padding-left: 2.2em;
}
.ver_sports h3:before {
  content: "";
  width: 1.6em;
  height: 1.5em;
  background: url("../images/parts/ico_sports_03.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_sports h4 {
  border: solid 3px #ba7831;
  font-size: 1.9rem;
  padding: 0.8em 1em;
}
.ver_sports h4:before {
  content: normal;
}
.ver_sports h5 {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.9rem;
}
.ver_sports h5:before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/parts/ico_sports_04.svg") no-repeat;
  /* background: url("../images/parts/ico_normal_01.svg") no-repeat; */
  background-size: contain;
  position: absolute;
  top: 0.2rem;
  left: 0;
}
.ver_sports h6 {
  padding-bottom: 0.2em;
  border-bottom: 2px dashed #ba7831;
  margin-bottom: 2rem;
}

/*cms_list
------------------------------------------*/
ul.cms_list {
  margin-bottom: 2rem;
}
ul.cms_list li {
  position: relative;
  padding-left: 1em;
}
ul.cms_list li:before {
  content: "・";
  position: absolute;
  left: 0;
}

/*cms_contents
------------------------------------------*/
.cms_contents a {
  color: var(--font-link-color);
  text-decoration: underline;
  color: var(--base-color1);
}
.cms_contents a:hover {
  text-decoration: none;
}

.cms_contents table {
  margin: 2rem auto;
  width: 100%;
  table-layout: fixed;
  border-top: solid 1px #cccccc;
  border-left: solid 1px #cccccc;
}
.cms_contents table th,
.cms_contents table td {
  padding: 0.2em 0.5em;
}
.cms_contents table th {
  border-right: solid 1px #cccccc;
  border-bottom: solid 1px #cccccc;
}
.cms_contents table td {
  border-right: solid 1px #cccccc;
  border-bottom: solid 1px #cccccc;
}
.cms_contents table.blue {
  background: #ddeeff;
}
.cms_contents table.red {
  background: #f7d6d6;
}
.cms_contents table.green {
  background: #ddffdd;
}
.cms_contents table.yellow {
  background: #ffffcc;
}
.cms_contents table.type_simple {
  border-left: none;
}
.cms_contents table.type_simple th {
  border-left: none;
  border-right: none;
}
.cms_contents table.type_simple td {
  border-left: none;
  border-right: none;
}
.cms_contents ul {
  margin: 2rem auto;
  position: relative;
}
.cms_contents ul li {
  position: relative;
  padding-left: 1em;
}
.cms_contents ul li:before {
  content: "・";
  position: absolute;
  left: 0;
  top: auto;
  color: #000;
}
.cms_contents ul li > * + * {
  margin-top: auto;
}
.cms_contents ol {
  margin: 2rem auto;
  position: relative;
  list-style-type: decimal;
}
.cms_contents ol li {
  margin-left: 1em;
}

/*cms_text
------------------------------------------*/
.cms_text {
  padding: 0 0 2rem 0;
}

/*cms_aco
------------------------------------------*/
.cms_aco {
  padding: 3rem 0;
}
.cms_aco_btn {
  cursor: pointer;
  color: var(--base-color0);
  background: var(--base-color1);
  padding: 0.5em 3em 0.5em 0.5em;
  font-weight: bold;
  font-size: 1.8rem;
  position: relative;
}
.cms_aco_btn:after {
  position: absolute;
  content: "";
  vertical-align: middle;
  right: 1em;
  top: 0em;
  bottom: 0;
  margin: auto;
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid var(--base-color0);
  border-right: 2px solid var(--base-color0);
  transform: rotate(135deg);
  transition: all 0.15s ease;
}
.cms_aco_btn.active:after {
  top: 0.5rem;
  transform: rotate(-45deg);
}
.cms_aco_cont {
  padding: 2rem;
  display: none;
}

@media screen and (max-width: 680px) {
  .cms_aco_btn {
    font-size: 1.4rem;
  }
}
/*attachment_area　アイコン付きリスト
------------------------------------------*/
.attachment_area {
  padding: 4rem 0;
}
.attachment_area .link_ob {
  color: var(--font-link-color);
  text-decoration: underline;
  display: inline-block;
}
.attachment_area * + * {
  margin-top: 1rem;
}
.attachment_area .link_ob:hover {
  text-decoration: none;
}

/*good_area　いいね
------------------------------------------*/
.good_area {
  padding: 1rem 0 4rem 0;
  text-align: right;
  font-size: 1.4rem;
  border-top: 1px solid #cccccc;
}
.good_area > * {
  color: var(--color-gray);
}

@media screen and (max-width: 680px) {
  .good_area {
    font-size: 1.2rem;
  }
}
/*diary detail____
============================================================================================================================== */
/*diary_title
---------------------------------------------------------------------------*/
.diary_title {
  padding: 2rem 0 4rem 0;
  text-align: center;
  margin: auto;
}
.diary_title > * {
  font-size: 2.4rem;
  font-weight: bold;
  display: inline;
  position: relative;
  z-index: 1;
  background: linear-gradient(transparent 60%, var(--bg-color2) 60%);
}
.diary_title > *.size_s {
  font-size: 1.6rem;
}
.diary_title > *.size_l {
  font-size: 3.6rem;
}

@media screen and (max-width: 480px) {
  .diary_title > * {
    font-size: 1.5rem;
  }
  .diary_title > *.size_s {
    font-size: 1.3rem;
  }
  .diary_title > *.size_l {
    font-size: 2rem;
  }
}
/*center_mess_area
---------------------------------------------------------------------------*/
.center_mess_area {
  border: solid 1px #cccccc;
  margin-bottom: 4rem;
}

.center_mess_title {
  background: var(--bg-color2);
  padding: 0.5em 1em 0.8em 1em;
  font-size: 2.8rem;
  letter-spacing: 1px;
  position: relative;
  font-weight: bold;
}
.center_mess_title:before {
  content: "";
  background: var(--base-color1);
  height: 5px;
  width: 10rem;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (max-width: 480px) {
  .center_mess_title {
    font-size: 1.6rem;
  }
}
/*center_mess_text_box
---------------------------------------------------------------------------*/
.center_mess_text_box {
  padding: 3.5rem;
}

@media screen and (max-width: 480px) {
  .center_mess_text_box {
    padding: 2rem;
  }
  .center_mess_list_flex .text_box {
    width: 73%;
  }
}
/*center_mess_list
-----------------------------------------*/
.center_mess_list > li {
  position: relative;
}
.center_mess_list > li + li {
  margin-top: 3rem;
}
.center_mess_list .card_parts {
  display: flex;
  justify-content: space-between;
}
.center_mess_list .card_parts .img {
  width: 20%;
}
.center_mess_list .card_parts .text_box {
  width: 77%;
}
.center_mess_list .card_parts .img img {
  width: 100%;
}
.center_mess_list .card_parts .card_parts_title {
  font-size: 1.5rem;
  font-weight: bold;
}
.center_mess_list .card_parts .card_date {
  margin-top: 1rem;
}
.center_mess_list > li:nth-child(n+3) .card_parts .img {
  display: none;
}
.center_mess_list > li:nth-child(n+3) .card_parts .text_box {
  width: auto;
}

@media screen and (max-width: 480px) {
  .center_mess_list > li:nth-child(-n+2) {
    padding-bottom: 2.5rem;
  }
}
/*diary_top_area
------------------------------------------------------------------------*/
/*diary_top_list
-----------------------------------------*/
.diary_top_list > li {
  margin-bottom: 6rem;
  padding-bottom: 6rem;
  border-bottom: 2px solid #cccccc;
}

@media screen and (max-width: 480px) {
  .diary_top_list > li {
    margin-bottom: 4rem;
    padding-bottom: 4rem;
  }
}
/*diary_top_title
-----------------------------------------*/
.diary_top_title {
  font-size: 3.2rem;
  padding: 0 0 3rem 0;
  font-weight: bold;
}

@media screen and (max-width: 480px) {
  .diary_top_title {
    font-size: 1.8rem;
    padding: 3rem 0 3rem 0;
  }
}
/*.diary_top_date
---------------------------------------------------------------------------*/
.diary_top_date {
  display: flex;
  font-size: 1.1rem;
  flex-wrap: wrap;
  margin-bottom: 3rem;
}
.diary_top_date dl {
  display: flex;
  font-size: 1.1rem;
}
.diary_top_date dl + dl {
  margin-left: 3%;
}
.diary_top_date dl dt {
  padding-right: 0.5rem;
  position: relative;
}
.diary_top_date dl dt:before {
  content: "：";
  position: absolute;
  right: 0rem;
  height: 100%;
  width: 0.5rem;
}
.diary_top_date .cate {
  font-size: 1.3rem;
  margin-left: 5%;
  margin-top: 0;
  background: var(--bg-color2);
  padding: 0.2rem 0.8rem;
}
.diary_top_date.new {
  position: relative;
}
.diary_top_date.new > *:first-child {
  padding-left: 5rem;
}
.diary_top_date.new > *:first-child:before {
  content: "";
  position: absolute;
  width: 4rem;
  height: 1.5rem;
  left: 0;
  background: url("../images/parts/ico_new.svg") no-repeat;
  background-size: contain;
}

@media screen and (max-width: 480px) {
  .diary_top_date {
    flex-wrap: wrap;
  }
  .diary_top_date > dl {
    width: 40%;
  }
  .diary_top_date .cate {
    margin-left: 0;
    margin-top: 3%;
  }
}
/*new
---------------------------------------------------------------------------*/
.diary_top_list_img {
  margin-bottom: 4rem;
}
.diary_top_list_img img {
  max-width: 100%;
}
.diary_top_list_img > li {
  margin-bottom: 2rem;
}

/*diary_top_list_img　画像ライトボックス　4枚以上
--------------------------------------------------------------------------*/
.diary_top_list_img_area {
  position: relative;
}
.diary_top_list_img_area .lits_num {
  display: none;
}
.diary_top_list_img_area.open_ico .lits_num {
  display: block;
  position: absolute;
  color: var(--base-color0);
  font-weight: bold;
  font-size: 3rem;
  bottom: 2rem;
  left: 3rem;
  /*  text-shadow: 0px 0px 5px rgba(0, 0, 0, 1); */
  z-index: 1;
  background: var(--base-color1);
  padding: 0 0.2em;
  border-radius: 0.1em;
  line-height: 1.2;
}
.diary_top_list_img_area.open_ico .diary_top_list_img > li {
  position: relative;
}
.diary_top_list_img_area.open_ico .diary_top_list_img > li a {
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

@media screen and (max-width: 480px) {
  .diary_top_list_img_area.open_ico .lits_num {
    font-size: 2rem;
  }
}
.diary_top_list_img > li:nth-child(n+4) {
  display: none;
}
.diary_top_list_img > li img {
  max-width: 100%;
}

/* 横並び */
/* 1カラム element*/
.diary_top_list_img_flex .lits_num {
  left: auto !important;
  right: 3rem;
  bottom: auto !important;
  top: 70%;
}
.diary_top_list_img_flex > ul {
  margin-bottom: 2rem;
  display: flex;
}
.diary_top_list_img_flex > ul li img {
  width: 38rem;
  height: 25rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}
.diary_top_list_img_flex > ul > li + li {
  margin-left: 2%;
}

@media screen and (max-width: 960px) {
  .diary_top_list_img_flex .lits_num {
    right: 2rem;
    top: 55%;
  }
  .diary_top_list_img_flex > ul li img {
    height: 15rem;
  }
}
@media screen and (max-width: 480px) {
  .diary_top_list_img > li img {
    width: 100%;
  }
  .diary_top_list_img_flex .lits_num {
    right: 1rem;
    top: 50%;
  }
  .diary_top_list_img_flex > ul li img {
    width: 100%;
    height: 8rem;
  }
  /* 縦並び */
  /* .diary_top_list_img_flex {
    > ul {
      display: block;
      li {
        img {
          width: 100%;
          height: 20rem;
        }
      }
      > li + li {
        margin-left: auto;
      }
      > li + li {
        margin-top: 5%;
      }
    }
  } */
}
/* 2カラム時 */
@media screen and (min-width: 961px) {
  .column2_flex .diary_top_list_img_flex .lits_num {
    right: 2rem;
    top: 60%;
  }
  .column2_flex .diary_top_list_img_flex > ul li img {
    height: 16rem;
  }
}
@media screen and (max-width: 960px) {
  .column2_flex .diary_top_list_img_flex .lits_num {
    right: 1rem;
    top: 50%;
  }
  .column2_flex .diary_top_list_img_flex > ul li img {
    height: 11rem;
  }
}
@media screen and (max-width: 480px) {
  .column2_flex .diary_top_list_img_flex > ul li img {
    /*    height: 18rem; */
    height: 8rem;
  }
}
/*diary_top_list_img_detail スクロールのモーダル
--------------------------------------------------------------------------*/
.diary_top_list_img_detail {
  display: none;
}

/*スクロール非表示*/
.modaal-fullscreen .modaal-container {
  pointer-events: auto;
  scrollbar-width: none !important;
  /*Firefox対応のスクロールバー非表示コード*/
  -ms-overflow-style: none !important;
  /*Internet Explore対応のスクロールバー非表示コード*/
}
.modaal-fullscreen .modaal-container::-webkit-scrollbar {
  display: none;
  /*Google Chrome、Safari、Microsoft Edge対応のスクロールバー非表示コード*/
}

/*開いたモーダル背景色*/
.modaal-container {
  background: #2e2e2e;
}

/* 開いたモーダル　余白、幅調整 */
.modaal-content-container {
  padding: 30px 0;
}

@media screen and (max-height: 1000px) {
  .modaal-content-container {
    max-width: 90%;
    margin: auto;
  }
}
/*開いたモーダルの位置*/
.diary_top_list_img_detail_img {
  max-width: 70%;
  margin: auto auto 3rem auto;
  text-align: center;
}
.diary_top_list_img_detail_img span {
  display: block;
  font-size: 1.6rem;
  color: #fff;
  margin-top: 0.5rem;
  text-align: left;
}
.diary_top_list_img_detail_img img {
  text-align: center;
  max-width: 100%;
  margin: auto;
}

@media screen and (max-width: 680px) {
  .diary_top_list_img_detail_img {
    max-width: 100%;
  }
  .diary_top_list_img_detail_img:first-child {
    margin-top: 5rem;
  }
  .diary_top_list_img_detail_img span {
    font-size: 1.4rem;
  }
}
/*スケジュールモーダル
---------------------------------------------------------------------------*/
.modaal_cont_inner {
  width: 100%;
  margin: auto;
  background-color: var(--base-color0);
}

.modaal_cont_w {
  padding: 3rem;
  font-size: 1.6rem;
}
.modaal_cont_w > * {
  margin-bottom: 1rem;
}
.modaal_cont_w .modaal_title {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 2em;
  position: relative;
  display: block;
}
.modaal_cont_w .modaal_title:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.5em;
  height: 1px;
  width: 100%;
  background: var(--base-color1);
}
.modaal_cont_w .modal_day {
  font-size: 1.4rem;
  padding: 0.8em 1em;
  background: var(--bg-color2);
  font-weight: bold;
  color: var(--base-color4);
  display: block;
}
.modaal_cont_w .modal_place {
  margin-bottom: 2rem;
}

@media screen and (max-width: 680px) {
  .modaal_cont_w {
    font-size: 1.4rem;
  }
  .modaal_cont_w .modaal_title {
    font-size: 1.6rem;
  }
  .modaal_cont_w .modal_day {
    font-size: 1.3rem;
  }
}
/*tag_list
--------------------------------------------------------------------------*/
.tag_list {
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  font-size: 1.3rem;
  color: var(--color-gray);
  padding-left: 2.5rem;
}
.tag_list a {
  color: var(--color-gray);
}
.tag_list:before {
  content: "";
  position: absolute;
  width: 1.1rem;
  height: 1.3rem;
  left: 0;
  top: 0.5rem;
  background: url("../images/parts/ico_tag.svg") no-repeat;
  background-size: contain;
}
.tag_list li {
  margin-right: 1.5%;
}

/*diary_paging
---------------------------------------------------------------------------*/
.diary_paging {
  margin: 5rem auto;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--base-color1);
  border-bottom: 1px solid var(--base-color1);
}
.diary_paging > * {
  width: 50%;
}
.diary_paging > * > * {
  display: block;
  padding: 4rem 0;
}
.diary_paging a {
  position: relative;
}
.diary_paging a:hover {
  background: var(--bg-color2);
}
.diary_paging .pre > * {
  padding-left: 3rem;
  padding-right: 1rem;
}
.diary_paging .next > * {
  padding-right: 3rem;
  padding-left: 1rem;
  text-align: right;
}
.diary_paging .pre a:before,
.diary_paging .next a:before {
  position: absolute;
  content: "";
  display: inline-block;
  top: 50%;
  width: 1.2rem;
  height: 1.2rem;
  border-top: 2px solid var(--base-color1);
  border-right: 2px solid var(--base-color1);
}
.diary_paging .pre a:before {
  left: 0.5rem;
  position: absolute;
  transform: translate(0%, -50%) rotate(-135deg);
}
.diary_paging .next a:before {
  right: 0.5rem;
  transform: translate(0%, -50%) rotate(45deg);
}

@media screen and (max-width: 680px) {
  .diary_paging .pre * {
    padding-left: 4rem;
  }
  .diary_paging .next * {
    padding-right: 4rem;
  }
  .diary_paging .pre a:before {
    left: 2rem;
  }
  .diary_paging .next a:before {
    right: 2rem;
  }
}
/*related
---------------------------------------------------------------------------*/
.related_area {
  padding: 3rem 0;
}

.related_list {
  display: flex;
  flex-wrap: wrap;
}
.related_list > li {
  width: 48%;
  margin-right: 4%;
  margin-bottom: 4%;
}
.related_list > li:nth-child(2n) {
  margin-right: 0%;
}

.related_list_inner {
  font-size: 1.5rem;
  display: flex;
  justify-content: space-between;
}
.related_list_inner .img {
  width: 150px;
}
.related_list_inner .img img {
  width: 100%;
  height: 9rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.related_list_inner .text_box {
  position: relative;
  width: calc(100% - 150px - 5%);
}
.related_list_inner .text_box_in {
  padding-bottom: 4rem;
}
.related_list_inner .text_box .date {
  position: absolute;
  left: 0;
  bottom: 0;
  line-height: 1.2;
}

@media screen and (max-width: 1024px) {
  .related_list_inner .img {
    width: 8vw;
  }
  .related_list_inner .img img {
    height: 6vw;
  }
  .related_list_inner .text_box {
    position: relative;
    width: calc(100% - 8vw - 5%);
  }
}
@media screen and (max-width: 680px) {
  .related_area {
    padding: 2rem 0;
  }
  .related_list {
    display: block;
  }
  .related_list > li {
    width: auto;
    margin-right: auto;
    margin-bottom: 4%;
  }
  .related_list_inner .text_box_in {
    padding-bottom: 0;
  }
  .related_list_inner .text_box .date {
    display: none;
  }
  .related_list_inner .img {
    width: 30vw;
  }
  .related_list_inner .img img {
    height: 10rem;
  }
  .related_list_inner .text_box {
    position: relative;
    width: calc(100% - 30vw - 5%);
  }
}
@media screen and (max-width: 480px) {
  .related_area .img img {
    height: 7rem;
  }
}
/*コメント　comment_tab_area
==========================================================================*/
.comment_tab_area {
  border: solid 1px #cccccc;
}

/*コメントcomment_tab_flex
---------------------------------------*/
.comment_tab_flex {
  display: flex;
  width: 100%;
  border-bottom: solid 1px #cccccc;
  cursor: pointer;
}
.comment_tab_flex > * {
  display: flex;
  font-size: 1.3rem;
  padding: 5px 0;
  width: 50%;
  align-items: center;
  justify-content: center;
  color: var(--color-gray);
  background: var(--base-color0);
}
.comment_tab_flex > * + * {
  border-left: solid 1px #cccccc;
}
.comment_tab_flex > *.is-active {
  /* background: #E8E8E8;*/
  background: var(--bg-color_g1);
}

/*コメント　comment_tab_panel
--------------------------------------*/
.comment_tab_panel {
  padding: 2rem;
  font-size: 1.3rem;
}

.comment_title {
  font-weight: bold;
  font-size: 1.4rem;
  margin-bottom: 1rem;
}

/*コメント　comment_list
-----------------------------------------*/
.comment_list > li + li {
  padding-top: 3rem;
  margin-top: 3rem;
  border-top: 1px solid #cccccc;
}

.comment_list_date {
  margin-top: 1rem;
  display: flex;
  font-size: 1.3rem;
  color: var(--color-gray);
  flex-wrap: wrap;
}
.comment_list_date a {
  color: var(--color-gray);
  text-decoration: underline;
}
.comment_list_date a:hover {
  text-decoration: none;
}
.comment_list_date > * {
  margin-right: 2%;
}

/*コメント　comment_table form
------------------------------------------------------------------------------*/
.comment_table_inner {
  padding: 1rem 2.5rem;
}

.comment_table table {
  width: 100%;
}
.comment_table table th,
.comment_table table td {
  padding: 10px 0;
}
.comment_table table th {
  width: 20%;
  color: #000;
  font-size: 1.4rem;
}
.comment_table table td {
  width: 75%;
  font-size: 1.6rem;
}

@media screen and (max-width: 480px) {
  .comment_table_inner {
    padding: 0.5rem 0rem;
  }
  .comment_table table th,
  .comment_table table td {
    display: block;
    padding: 0;
  }
  .comment_table table th {
    width: auto;
    font-size: 1.2rem;
    padding-bottom: 0.5rem;
  }
  .comment_table table td {
    width: auto;
    font-size: 1.6rem;
    padding-bottom: 1rem;
  }
}
/*comment_scroll*/
.comment_scroll {
  height: 400px;
  overflow-y: scroll;
}

/*コメント　フォームパーツ
---------------------------------------------------------------------------*/
.hiss {
  color: #c40500;
}

input[type=text], input[type=number], input[type=email], input[type=tel], input[type=mail], input[type=password], input[type=date], input[type=time] {
  padding: 4px;
  border-radius: 0;
  outline: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: solid 1px #cccccc;
  width: 100%;
  box-sizing: border-box;
  font-size: 1.6rem;
  background: var(--base-color0);
  color: var(--base-color4);
}

/*textarea*/
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  resize: none;
  outline: none;
  border-radius: 0;
  border: solid 1px #cccccc;
  padding: 4px;
  width: 100%;
  box-sizing: border-box;
  font-size: 1.6rem;
}

.comment_table td .w30 {
  width: 30%;
}

/*cation_text
---------------------------------------------------------------------------*/
.cation_text {
  border-top: solid 1px #cccccc;
  margin-top: 2rem;
  padding-top: 2rem;
  font-size: 1.2rem;
}

/*calender
---------------------------------------------------------------------------*/
.calender_block {
  font-size: 1.2rem;
  border: solid 1px #cccccc;
  padding: 1.5rem 1rem;
  text-align: center;
  background: var(--base-color0);
  position: relative;
}

.calender_title {
  color: #757575;
  margin-bottom: 0.5rem;
}
.calender_title span {
  font-size: 1.8rem;
  color: #757575;
}

.calender_block table {
  width: 100%;
}
.calender_block table th {
  color: #757575;
  font-size: 1rem;
  text-align: center;
}
.calender_block table td {
  border: solid 2px var(--base-color0);
  /*  background: var(--bg-color_g1);*/
  height: 3rem;
}
.calender_block table td a {
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-decoration: underline;
  border-radius: 5rem;
}
.calender_block table td a:hover, .calender_block table td a.select {
  text-decoration: none;
  background: var(--bg-color2);
}

/*calender_arrow*/
.calender_arrow {
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: 90%;
  top: 2rem;
  left: 50%;
  transform: translate(-50%, 0%);
}
.calender_arrow > li.prev img {
  transform: scale(-1, 1);
}
.calender_arrow img {
  width: 100%;
  height: 10px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

@media screen and (max-width: 680px) {
  .side_section .calender_block {
    width: 85%;
    margin: auto;
  }
}
/*diary_aco
---------------------------------------------------------------------------*/
.diary_aco {
  margin-top: 2rem;
  padding-top: 9rem;
  padding-bottom: 5rem;
  position: relative;
}
.diary_aco > *:not(.more_text_box) {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
}
.diary_aco .more_text_box {
  display: none;
}

/*diary element__
============================================================================================================================== */
/*  diary_element_list_01
==========================================================================*/
.diary_element_list_01 > li {
  padding: 1rem 0;
  border-bottom: 1px solid #cccccc;
}
.diary_element_list_01 > li:first-child {
  padding-top: 0;
}
.diary_element_list_01 > li .date {
  margin-top: 0.5em;
  font-size: 1.2rem;
}
.diary_element_list_01 > li .cate {
  font-size: 1.2rem;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.diary_element_list_01 > li .tag_list {
  margin: 0.2em auto auto;
  font-size: 1.2rem;
}

@media screen and (max-width: 680px) {
  .diary_element_list_01 > li {
    padding: 1rem 0 1rem 0;
  }
}
/* diary_element_list_01_num */
ol.diary_element_list_01_num {
  counter-reset: count 0;
}
ol.diary_element_list_01_num > li {
  counter-increment: cnt;
  position: relative;
  list-style-type: none;
  list-style-position: inside;
}
ol.diary_element_list_01_num > li .diary_element_list_01_inner {
  padding-left: 4rem;
}
ol.diary_element_list_01_num > li:after {
  content: counter(cnt);
  position: absolute;
  left: 0;
  top: 1.5em;
  font-weight: bold;
  color: var(--base-color0);
  font-size: 2.4rem;
}
ol.diary_element_list_01_num > li:first-child:after {
  top: -0.2em;
}
ol.diary_element_list_01_num > li:before {
  content: "";
  background-color: var(--base-color1);
  width: 2.5em;
  height: 2.5em;
  position: absolute;
  left: -0.8em;
  top: 2.3em;
}
ol.diary_element_list_01_num > li:first-child:before {
  top: -0.2em;
}

@media screen and (max-width: 960px) {
  /* diary_element_list_01_num */
  ol.diary_element_list_01_num > li:before {
    top: 3em;
  }
}
@media screen and (max-width: 680px) {
  /* diary_element_list_01_num */
  ol.diary_element_list_01_num > li:before {
    top: 2.8em;
  }
}
/*img*/
.diary_element_list_01_inner .card_parts {
  display: flex;
  justify-content: space-between;
  font-size: 1.2rem;
}
.diary_element_list_01_inner .card_parts .img {
  width: 220px;
}
.diary_element_list_01_inner .card_parts .img img {
  width: 100%;
}
.diary_element_list_01_inner .card_parts .img + .text_box {
  width: calc(100% - 220px - 5%);
}
.diary_element_list_01_inner .card_parts .card_parts_title {
  position: relative;
  font-size: 1.4rem;
  /*    padding-left: 2rem;*/
  margin-bottom: 1rem;
}
.diary_element_list_01_inner .card_parts .card_parts_title a {
  text-decoration: underline;
  color: var(--dark-black-white);
}
.diary_element_list_01_inner .card_parts .card_parts_title a:hover {
  text-decoration: none;
}

@media screen and (max-width: 680px) {
  .diary_element_list_01_inner .card_parts {
    display: block;
    font-size: 1.2rem;
  }
  .diary_element_list_01_inner .card_parts .img {
    width: 100%;
    margin-bottom: 1rem;
  }
  .diary_element_list_01_inner .card_parts .img + .text_box {
    width: calc(100% - 0px - 0%);
  }
}
/*  diary_element_list_02
==========================================================================*/
.diary_element_list_02 > li {
  padding: 1rem 0;
  border-bottom: 1px solid #cccccc;
}
.diary_element_list_02 > li:first-child {
  padding-top: 0;
}
.diary_element_list_02 > li .date {
  margin-top: 0.5em;
  font-size: 1.2rem;
}
.diary_element_list_02 > li .cate {
  font-size: 1.2rem;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.diary_element_list_02 > li .tag_list {
  margin: 0.2em auto auto;
  font-size: 1.2rem;
}

@media screen and (max-width: 680px) {
  .diary_element_list_02 {
    display: flex;
    flex-wrap: wrap;
  }
  .diary_element_list_02 > li {
    padding: 1rem 0;
    margin-bottom: 1rem;
    width: 48%;
    margin-right: 4%;
  }
  .diary_element_list_02 > li:first-child {
    padding-top: 1rem;
  }
  .diary_element_list_02 > li:nth-child(2n) {
    margin-right: 0;
  }
}
/*img*/
.diary_element_list_02_inner .card_parts {
  display: flex;
  justify-content: space-between;
  font-size: 1.2rem;
}
.diary_element_list_02_inner .card_parts .img {
  width: 150px;
}
.diary_element_list_02_inner .card_parts .img img {
  width: 100%;
  height: 10rem;
  border: solid 1px #dbdbdb;
}
.diary_element_list_02_inner .card_parts .img + .text_box {
  width: calc(100% - 150px - 3%);
}
.diary_element_list_02_inner .card_parts .card_parts_title {
  font-size: 1.4rem;
  position: relative;
  margin-bottom: 1rem;
}
.diary_element_list_02_inner .card_parts .card_parts_title a {
  text-decoration: underline;
  color: var(--base-color5);
}
.diary_element_list_02_inner .card_parts .card_parts_title a:hover {
  text-decoration: none;
}

@media screen and (max-width: 960px) {
  .diary_element_list_02_inner .card_parts {
    display: block;
  }
  .diary_element_list_02_inner .card_parts .img {
    width: 100%;
    margin-bottom: 1rem;
  }
  .diary_element_list_02_inner .card_parts .img img {
    width: 100%;
    height: 42vw;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    font-family: "object-fit: cover; object-position: center;";
  }
  .diary_element_list_02_inner .card_parts .img + .text_box {
    width: calc(100% - 0px - 0%);
  }
}
@media screen and (max-width: 680px) {
  .diary_element_list_02_inner .card_parts .img img {
    height: 31vw;
  }
}
/*card_parts_title*/
/*diary list______
============================================================================================================================== */
.diary_card_list {
  display: flex;
  flex-wrap: wrap;
}
.diary_card_list > li {
  width: 30.6%;
  margin-right: 4%;
  margin-bottom: 5%;
}
.diary_card_list > li .card_parts .img img {
  height: 23rem;
}
.diary_card_list > li:nth-child(3n) {
  margin-right: 0;
}
.diary_card_list .text_box {
  padding: 1rem 0;
}

@media screen and (max-width: 1200px) {
  .diary_card_list > li dl {
    width: 100%;
  }
  .diary_card_list > li dl:nth-child(1) {
    padding-top: 2rem;
  }
  .diary_card_list > li .card_date dl + dl {
    margin-left: 0;
  }
  .diary_card_list > li .new_front {
    padding-left: 0rem;
  }
  .diary_card_list > li .new_front:before {
    top: 0rem;
  }
}
@media screen and (max-width: 960px) {
  .diary_card_list li .card_parts .img img {
    height: 19vw;
  }
}
@media screen and (max-width: 480px) {
  .diary_card_list {
    display: block;
  }
  .diary_card_list > li {
    width: auto;
    margin-right: auto;
    margin-bottom: 5%;
  }
  .diary_card_list > li .card_parts .img img {
    height: 18rem;
  }
  .diary_card_list > li:nth-child(3n) {
    margin-right: auto;
  }
  .diary_card_list > li dl {
    width: 48%;
    padding-top: 2rem;
  }
}
/* 2カラム時 */
@media screen and (max-width: 960px) {
  .column2_flex .diary_card_list li .card_parts .img img {
    height: 13vw;
  }
}
@media screen and (max-width: 480px) {
  .column2_flex .diary_card_list > li .card_parts .img img {
    height: 23rem;
  }
}
/*diary pdf_iframe
==========================================================================*/
.pdf_iframe iframe {
  height: 80vh;
}

@media screen and (max-width: 960px) {
  .pdf_iframe iframe {
    height: 100vh;
  }
}
/*handout_all_area
============================================================================================================================== */
.handout_all_area {
  padding: 4rem 0;
}

@media screen and (max-width: 680px) {
  .handout_all_area {
    padding: 0rem 0 3rem 0;
  }
  .handout_all_area .col2_box_02 {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
  }
  .handout_all_area .side_menu_area {
    padding-bottom: 0rem;
  }
  .handout_all_area .side_menu_area .side_title {
    display: none;
  }
  .handout_all_area .side_section + .side_section {
    margin-top: 5%;
  }
}
/*sp時順番変更*/
@media screen and (max-width: 680px) {
  .column2_sp_reverse .column2_flex {
    display: flex;
    flex-flow: column;
  }
  .column2_sp_reverse .column2_flex .col2_box_01 {
    order: 3;
  }
  .column2_sp_reverse .column2_flex .col2_box_02 {
    order: 1;
  }
}
/*event_area 行事予定　年間カレンダー
============================================================================================================================== */
/*module_tab_flex
---------------------------------------------------------------------------------------------*/
.module_tab_flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4rem;
}
.module_tab_flex > * {
  width: 100%;
}
.module_tab_flex > * > * {
  width: 100%;
  border-left: 1px solid #fff;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-color_g1);
  text-align: center;
  padding: 1rem 0;
  color: var(--base-color3);
  font-weight: bold;
}
.module_tab_flex > *:first-child > * {
  border-left: none;
}
.module_tab_flex > *.is-active > * {
  background: var(--base-color1);
  color: var(--base-color0);
}

/*event_area
---------------------------------------------------------------------------------------------*/
.event_area .col2_box_01 {
  padding-bottom: 8rem;
}
.event_area .btn_normal {
  font-size: 1.2rem;
}

@media screen and (max-width: 680px) {
  .event_area .col2_box_02 .side_title,
  .event_area .col2_box_02 .side_btn {
    margin-bottom: 2rem;
  }
}
/*サイドメニューが上の時　sp*/
@media screen and (max-width: 680px) {
  /*    .event_area {
      position: relative;
  }
  .event_area .col2_box_01 {
      padding-top: 34rem;
      padding-bottom: 0rem;
  }
  .event_area .module_tab_flex {
      position: absolute;
      top: 3.5rem;
      width: 90%;
      left: 50%;
      -webkit-transform: translate(-50%, -0%);
      -moz-transform: translate(-50%, -0%);
      -ms-transform: translate(-50%, -0%);
      transform: translate(-50%, -0%);
  }*/
  /*event_sp_top*/
  /*  .event_area .event_sp_top {
      position: absolute;
      top: 10rem;
      left: 0;
      width: 100%;
  }
  .event_sp_top .side_title {
      display: none;
  }*/
  /*event_sp_top_02*/
  /*.event_sp_top_02 {
      position: absolute;
      top: 25rem;
      width: 90%;
      left: 50%;
      -webkit-transform: translate(-50%, -0%);
      -moz-transform: translate(-50%, -0%);
      -ms-transform: translate(-50%, -0%);
      transform: translate(-50%, -0%);
  }*/
  /*event_sp_top_03*/
  /*.event_sp_top_03 {
      position: absolute;
      top: 5rem;
      width: 90%;
      left: 50%;
      -webkit-transform: translate(-50%, -0%);
      -moz-transform: translate(-50%, -0%);
      -ms-transform: translate(-50%, -0%);
      transform: translate(-50%, -0%);
  }*/
  /*余白削除*/
  /*.event_area .col2_box_02 {
      border-top: none;
      padding-top: 0;
      margin-top: 5rem;
  }
  .event_area .side_menu_area {
      padding-bottom: 0rem;
  }s
  .event_area .side_section + .side_section {
      margin-top: 5%;
  }*/
}
/*schedule 月間、年間共通 schedule_title_set
---------------------------------------------------------------------------------------------*/
.schedule_title_set {
  position: relative;
}

/*schedule_arrow_set*/
.schedule_arrow_set {
  width: 50%;
  position: absolute;
  left: 0;
  top: 16%;
  display: flex;
  justify-content: space-between;
  max-width: 17rem;
}

.schedule_btn_flex {
  width: 50%;
  display: flex;
  justify-content: space-between;
  border-radius: 0.3em;
  overflow: hidden;
}
.schedule_btn_flex > * {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.5rem 0.5rem;
  background-color: var(--fc-button-bg-color) !important;
  border: var(--fc-button-border-color) !important;
  color: var(--fc-button-text-color) !important;
}
.schedule_btn_flex > *:hover {
  background-color: var(--fc-button-hover-bg-color) !important;
}

@media screen and (max-width: 480px) {
  .schedule_arrow_set {
    max-width: 10rem;
    font-size: 1.2rem;
  }
}
/*今日*/
.schedule_btn_now {
  width: 40%;
  border-radius: 0.3em;
  overflow: hidden;
}
.schedule_btn_now > * {
  padding: 0.5rem 0.5rem;
  display: block;
  width: 100%;
  background-color: var(--fc-button-bg-color) !important;
  border: var(--fc-button-border-color) !important;
  color: var(--fc-button-text-color) !important;
}
.schedule_btn_now > *.active, .schedule_btn_now > *:hover {
  background-color: var(--fc-button-hover-bg-color) !important;
  opacity: 0.65;
}

/*event_area 行事予定 月間
============================================================================================================================== */
/*schedule_manth
---------------------------------------------------------------------------------------------*/
.manth_area_pd {
  padding-top: 4rem;
}

.manth_list > li {
  position: relative;
  padding: 1.5rem 3rem;
  display: flex;
  border-bottom: 1px dashed #707070;
}
.manth_list > li:before {
  content: "";
  height: calc(100% - 3rem);
  width: 4px;
  background: var(--base-color1);
  position: absolute;
  top: 1.5rem;
  left: 0;
}
.manth_list > li .date_d {
  width: 15%;
  font-size: 1.8rem;
}
.manth_list > li .date_d.sunday {
  color: #a30000;
}
.manth_list > li .date_d.saturday {
  color: #026d8e;
}
.manth_list > li .text_box {
  width: 85%;
}
.manth_list > li .schedule_list_title a {
  padding-right: 2.5rem;
  background: url("../images/parts/ico_brank.svg") no-repeat;
  background-size: 0.8em;
  background-position: right;
}
.manth_list .cate {
  margin: 0.5rem auto;
}

.schedule_list_title {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  color: var(--base-color4);
}
.schedule_list_title a {
  font-weight: bold;
  text-decoration: underline;
  color: var(--base-color3);
}
.schedule_list_title a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 680px) {
  /*サイドメニューが上の時*/
  /*    .manth_area .col2_box_01 {
      padding-bottom: 0rem;
  }*/
  .manth_area_pd {
    padding-top: 2rem;
  }
  .manth_list > li {
    display: block;
    padding: 1.5rem 0rem 1.5rem 0rem;
  }
  .manth_list > li:before {
    content: normal;
  }
  .manth_list > li .date_d {
    position: relative;
    width: auto;
    font-size: 1.5rem;
    padding-left: 1.5rem;
  }
  .manth_list > li .date_d:before {
    content: "";
    height: 100%;
    width: 4px;
    background: var(--base-color1);
    position: absolute;
    top: 0;
    left: 0;
  }
  .manth_list > li .text_box {
    width: auto;
    padding-left: 1.5rem;
  }
  .schedule_list_title {
    font-size: 1.5rem;
  }
  /*アコーディオン*/
  .manth_list > li .date_d.sp-aco-tggle + .text_box {
    display: none;
  }
}
/*schedule_year
---------------------------------------------------------------------------------------------*/
.year_area_pd {
  padding-top: 4rem;
}

.year_list > li {
  position: relative;
  padding: 1.5rem 1.5rem 1.5rem 0;
  display: flex;
  align-items: flex-start;
  border-bottom: 1px dashed #707070;
}
.year_list > li:before {
  content: "";
  height: calc(100% - 4rem);
  width: 4px;
  background: var(--base-color1);
  position: absolute;
  top: 2rem;
  left: 0;
}
.year_list > li .date_y {
  width: 4em;
  font-size: 1.8rem;
  background: var(--base-color1);
  color: var(--base-color0);
  padding: 0 1rem;
  text-align: center;
  margin-right: 3%;
}
.year_list > li .text_box {
  width: calc(100% - 4em);
}
.year_list > li .schedule_list_part_day {
  width: 4em;
}
.year_list > li .part_text_box_inner {
  width: calc(100% - 4em);
}
.year_list .cate {
  margin: 0.5rem auto;
}
.year_list .schedule_list_title a {
  padding-right: 2.5rem;
  background: url("../images/parts/ico_brank.svg") no-repeat;
  background-size: 0.8em;
  background-position: right;
}
.year_list .schedule_list_parts > li:first-child {
  display: block !important;
}

/* もっと見るがあるとき */
.year-aco .schedule_list_parts > li:nth-child(n+2) {
  display: none;
}

@media screen and (max-width: 680px) {
  /*サイドメニューが上の時*/
  /*    .manth_area .col2_box_01 {
      padding-bottom: 0rem;
  }*/
  .year_area_pd {
    padding-top: 2rem;
  }
  .year_list > li {
    border-bottom: none;
    display: block;
    padding: 1.5rem 0rem 1.5rem 0rem;
  }
  .year_list > li:before {
    content: normal;
  }
  .year_list > li .date_y {
    width: auto;
    font-size: 1.8rem;
    padding: 0 1rem;
    text-align: left;
    margin-right: auto;
    margin-bottom: 0.5rem;
  }
  .year_list > li .text_box {
    width: auto;
  }
  .year_list > li .text_box.card_parts_title:focus {
    border: var(--base-color4) 1px solid;
  }
  .year_list .schedule_list_parts > li + li {
    border-top: 1px dashed #707070;
    padding-top: 2rem;
  }
}
/*アコーディオン
-----------------------------------------------------------------*/
/*module_btn_open　もっと見る
-----------------------------------------------------------------*/
.module_btn_open {
  cursor: pointer;
  text-align: center;
}
.module_btn_open > span {
  position: relative;
  text-align: center;
  border: solid 1px var(--base-color1);
  display: inline-block;
  margin: 3rem auto auto auto;
  font-size: 1.4rem;
  padding: 0.5rem 0;
  min-width: 20rem;
  color: var(--base-color0);
  background: var(--base-color1);
}
.module_btn_open > span:after {
  position: absolute;
  content: "";
  top: 45%;
  right: 1rem;
  transform: translate(0%, -50%) rotate(135deg);
  width: 1rem;
  height: 1rem;
  border-top: 1px solid var(--base-color0);
  border-right: 1px solid var(--base-color0);
}

/*module_btn_close 閉じる
-----------------------------------------------------------------*/
.module_btn_close {
  cursor: pointer;
  background: var(--base-color0);
  text-align: center;
  border: solid 1px var(--base-color1);
  display: block;
  width: 5rem;
  margin: 3rem auto auto auto;
  font-size: 1.2rem;
  padding: 0.5rem 1rem 0.5rem 3rem;
  position: relative;
  color: var(--base-color1);
}
.module_btn_close:before, .module_btn_close:after {
  content: "";
  position: absolute;
  background: var(--base-color1);
  width: 2rem;
  height: 1px;
  top: 50%;
  left: 2rem;
}
.module_btn_close:before {
  position: absolute;
  transform: translate(-50%, 0%) rotate(-45deg);
}
.module_btn_close:after {
  transform: translate(-50%, 0%) rotate(45deg);
}
.module_btn_close.open {
  background: var(--base-color1);
  color: var(--base-color0);
}
.module_btn_close.open:before, .module_btn_close.open:after {
  background: var(--base-color0);
  width: 1rem;
}
.module_btn_close.open:before {
  left: 2.5rem;
}
.module_btn_close.open:after {
  left: 1.8rem;
}

/*schedule_list_parts
--------------------------------------------------*/
.schedule_list_parts {
  font-size: 1.3rem;
  color: var(--color-gray);
}
.schedule_list_parts > li .tag_list {
  margin-top: 0.5rem;
  margin-bottom: auto;
}
.schedule_list_parts > li + li {
  margin-top: 3rem;
}

/*schedule_list_parts_inner*/
.schedule_list_parts_inner {
  display: flex;
}
.schedule_list_parts_inner .date_d {
  width: 6em;
  font-size: 1.8rem;
}
.schedule_list_parts_inner .date_d.saturday {
  color: #026d8e;
}
.schedule_list_parts_inner .date_d.sunday {
  color: #a30000;
}
.schedule_list_parts_inner .schedule_list_part_text_box {
  width: calc(100% - 6em);
}
.schedule_list_parts_inner .schedule_list_part_text_box .part_text_box_inner + .part_text_box_inner {
  margin-top: 3rem;
}

@media screen and (max-width: 680px) {
  .schedule_list_parts_inner {
    display: block;
  }
  .schedule_list_parts_inner .date_d {
    width: 97%;
    margin: auto 0 auto auto;
    font-size: 1.8rem;
  }
  .schedule_list_parts_inner .date_d.saturday {
    color: #026d8e;
  }
  .schedule_list_parts_inner .date_d.sunday {
    color: #a30000;
  }
  .schedule_list_parts_inner .schedule_list_part_text_box {
    width: 87%;
    margin: auto 0 auto auto;
  }
}
/*schedule fullfullcalendar
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.fc .fc-button {
  padding: 0em 1em;
}

.fc-event {
  border: none !important;
}

.fc-daygrid-event-dot {
  border: solid #f9fbd9 !important;
}

@media screen and (max-width: 480px) {
  .fc-toolbar-title {
    font-size: 1.3rem !important;
  }
  .fc .fc-button {
    padding: 0em 0.8em;
    font-size: 1rem;
  }
  .fc-prev-button,
  .fc-next-button,
  .fc-today-button {
    padding: 0em 0.2em !important;
  }
  .fc-col-header-cell-cushion {
    font-size: 0.4em !important;
  }
}
/*祝日色*/
.is_holiday {
  background: var(--col-holiday);
}
.is_holiday .fc-h-event .fc-event-main,
.is_holiday .fc-daygrid-day-frame .fc-daygrid-day-number {
  color: var(--color-red);
}

.fc-day-sat .fc-daygrid-day-frame .fc-daygrid-day-number,
.fc-day-sun .fc-daygrid-day-frame .fc-daygrid-day-number {
  color: var(--color-red);
}

.is_holiday .fc-event,
.fc-event-dot {
  background-color: var(--base-color0) !important;
}

/*extract 抽出結果
============================================================================================================================== */
/*extract_area
---------------------------------------------------------------------------*/
.extract_area {
  border: solid 1px #cccccc;
  margin-bottom: 4rem;
}

.extract_title {
  background: var(--bg-color2);
  padding: 0.5em 1em 0.8em 1em;
  font-size: 2rem;
  letter-spacing: 1px;
  position: relative;
  font-weight: bold;
}
.extract_title:before {
  content: "";
  background: var(--base-color1);
  height: 3px;
  width: 7rem;
  position: absolute;
  bottom: 0;
  left: 0;
}
.extract_title .module_btn_close {
  position: absolute;
  top: 1.5rem;
  right: 2rem;
  margin: auto auto auto auto;
}

@media screen and (max-width: 480px) {
  .extract_title {
    font-size: 1.6rem;
  }
}
/*閉じる*/
@media screen and (max-width: 480px) {
  .extract_title .module_btn_close {
    top: 0.8rem;
    right: 1rem;
  }
}
/*extract_area .fbox
---------------------------------------------------------------------------*/
@media screen and (max-width: 680px) {
  .extract_list .text_box .fbox_col2.f_pc_tab > * + * {
    margin-top: 5%;
  }
}
/*center_mess_text_box
---------------------------------------------------------------------------*/
.extract_text_box {
  padding: 3.5rem;
  display: none;
}

@media screen and (max-width: 480px) {
  .extract_text_box {
    padding: 2rem;
  }
}
/*extract_chack_list
-----------------------------------------------------------------*/
.extract_list > li {
  padding: 3rem 0;
  border-bottom: 1px dashed #707070;
}
.extract_list > li:first-child {
  padding: 0 0 3rem 0;
}

/*extract_list_flex*/
.extract_list_flex {
  display: flex;
}

.extract_list_flex_title {
  width: 15%;
  font-size: 1.8rem;
  font-weight: bold;
  padding-left: 2rem;
  position: relative;
}
.extract_list_flex_title:before {
  content: "";
  background: var(--base-color2);
  width: 1.5rem;
  height: 3px;
  position: absolute;
  left: 0;
  top: 0.8em;
}

/*text_box*/
.extract_list_flex .text_box {
  width: 85%;
}

/*extract_chack_list*/
.extract_chack_list {
  /*    width: 85%;*/
  display: flex;
  flex-wrap: wrap;
}
.extract_chack_list > li {
  margin-right: 3%;
}

@media screen and (max-width: 480px) {
  .extract_list > li {
    padding: 1.5rem 0;
  }
  .extract_list_flex {
    display: block;
  }
  .extract_list_flex_title {
    width: auto;
    font-size: 1.4rem;
    margin-bottom: 1rem;
  }
  .extract_chack_list {
    width: auto;
  }
  .extract_chack_list > li {
    font-size: 1.2rem;
    margin-right: 4%;
    margin-bottom: 1%;
  }
}
/* multi_select */
.select2-search__field {
  width: auto !important;
}

/*checkbox　デザイン
--------------------------------------------------------------------------------------*/
/*リセット */
input[type=checkbox].module_checkbox {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  padding-left: 1.8em;
  /*label手前にチェックボックス用の余白を開ける*/
  vertical-align: middle;
  position: relative;
}
input[type=checkbox].module_checkbox::before, input[type=checkbox].module_checkbox::after {
  content: "";
  display: block;
  position: absolute;
}
input[type=checkbox].module_checkbox::before {
  background: #fff;
  border-radius: 0%;
  border: 1px solid #898989;
  width: 1.3em;
  /*チェックボックスの横幅*/
  height: 1.3em;
  /*チェックボックスの縦幅*/
  transform: translateY(-50%);
  top: 50%;
  left: 5px;
}
input[type=checkbox].module_checkbox:focus-visible::before {
  background: var(--bg-color_g1);
  border: 1px solid var(--base-color4);
}
input[type=checkbox].module_checkbox::after {
  content: "";
  background: url("../images/parts/ioc_check.svg") no-repeat;
  background-size: contain;
  opacity: 0;
  /*チェック前は非表示*/
  height: 0.8em;
  /*チェックの高さ*/
  width: 0.9em;
  /*チェックの横幅*/
  left: 0.7em;
  top: -0.4em;
}
input[type=checkbox].module_checkbox:checked::after {
  opacity: 1;
  /*チェック後表示*/
}

/*calender_areas
-----------------------------------------------------------------*/
.calender_area {
  display: flex;
}
.calender_area .radio_box p {
  min-width: auto;
}
.calender_area input {
  width: 8em;
}

.calender_box span {
  position: relative;
  display: inline-block;
  padding-right: 2em;
}
.calender_box span:before {
  content: "";
  background: url("../images/parts/ico_calender.svg") no-repeat;
  background-size: contain;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  top: 0.3em;
  right: 0;
}

@media screen and (max-width: 680px) {
  .calender_box span {
    margin-bottom: 1rem;
  }
}
/*password__ 配布文書パスワード ============================================================================================================================== */
.password_check {
  font-size: 1.2rem;
}

.password_area {
  display: flex;
  justify-content: center;
}
.password_area input[type=text] {
  padding: 1.2rem 0.5rem 0.9rem 0.5rem;
  width: 20em;
}
.password_area input[type=password] {
  padding: 1.2rem 0.5rem 0.9rem 0.5rem;
  width: 20em;
}

.pass_btn {
  background: var(--base-color1) url("../images/parts/btn_arrow.svg") no-repeat;
  background-size: 2.5rem;
  background-position: center;
  width: 5rem;
  height: 5rem;
}
.pass_btn:focus {
  outline: auto;
}

@media screen and (max-width: 960px) {
  .password_area input[type=text],
  .password_area input[type=password] {
    padding: 1.25rem 0.5rem 0.4rem 0.5rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 480px) {
  .password_area input[type=text],
  .password_area input[type=password] {
    padding: 1.26rem 0.5rem 0.4rem 0.5rem;
    width: 15em;
  }
}
/*quest　アンケート
============================================================================================================================== */
/*radio_box
---------------------------------------------------------------------------*/
.radio_flex {
  display: flex;
  flex-wrap: wrap;
}
.radio_flex > * {
  margin-right: 5%;
}

/*.radio_box input[type="radio"]:focus-visible +  span {
 border: solid 1px red;
}*/
@media screen and (max-width: 680px) {
  .radio_flex {
    display: block;
  }
  .radio_flex > * {
    margin-right: auto;
    margin-top: 5%;
  }
}
.radio_box p {
  min-width: 5em;
}
.radio_box input[type=radio] {
  opacity: 0;
  position: absolute;
}
.radio_box input[type=radio] + span {
  border: solid 1px transparent;
  box-sizing: border-box;
  border-radius: 5px;
  padding-right: 0.5rem;
}
.radio_box input[type=radio]:focus-visible + span {
  border: solid 1px var(--base-color4);
}
.radio_box span {
  cursor: pointer;
  padding-left: 30px;
  position: relative;
}
.radio_box span::before, .radio_box span::after {
  content: "";
  display: block;
  position: absolute;
}
.radio_box span::before {
  background: #fff;
  border-radius: 20px;
  border: 1px solid #6b6b6b;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  top: 11.5px;
  left: 5px;
  box-sizing: border-box;
}
.radio_box span::after {
  border-radius: 12px;
  opacity: 0;
  top: 5.5px;
  left: 9px;
  width: 12px;
  height: 12px;
  background: #6b6b6b;
}
.radio_box input:checked + span::after {
  opacity: 1;
}

/*tabでのハイライト*/
/*ラジオボタン装飾*/
/*.radio_box input[type="radio"] {
    display: none;
}*/
/*確認モーダル
---------------------------------------------------------------------------*/
.confirm_cont {
  display: none;
}
.confirm_cont_inner {
  width: 100%;
  margin: auto;
  background-color: var(--base-color0);
}
.confirm_cont_w {
  padding: 3rem;
  text-align: center;
  font-size: 1.8rem;
  color: var(--black-black-white);
}

@media screen and (max-width: 1024px) {
  .confirm_cont_inner {
    width: 100%;
  }
}
/*canter センター　top　
============================================================================================================================== */
/*module_tab_flex_map
---------------------------------------------------------------------------------------------*/
.module_tab_flex_map {
  display: flex;
  position: relative;
  top: 1px;
}
.module_tab_flex_map > * {
  cursor: pointer;
}
.module_tab_flex_map > * + * {
  margin-left: 0.5rem;
}
.module_tab_flex_map > * > * {
  padding: 0.2rem 0;
  display: inline-block;
  min-width: 7em;
  border-radius: 10px 10px 0 0;
  background: var(--base-color0);
  color: var(--base-color1);
  border: solid 1px var(--base-color1);
  text-align: center;
  box-sizing: border-box;
}
.module_tab_flex_map > *.is-active > *, .module_tab_flex_map > *:hover > * {
  background: var(--base-color1);
  color: var(--base-color0);
}

.panel_map {
  box-shadow: var(--shadow);
  border: solid 1px var(--base-color1);
}
.panel_map iframe {
  width: 100%;
}

@media screen and (max-width: 680px) {
  .module_tab_flex_map {
    justify-content: space-between;
  }
  .module_tab_flex_map > * {
    display: block;
    width: 100%;
  }
  .module_tab_flex_map > * > * {
    min-width: auto;
    display: block;
    width: 100%;
    font-size: 1.4rem;
    border-radius: 8px 8px 0 0;
  }
  .panel_map iframe {
    height: 460px;
  }
}
/*school_list
---------------------------------------------------------------------------------------------*/
.school_list {
  display: flex;
  flex-wrap: wrap;
}
.school_list > li {
  margin-right: 10%;
  margin-bottom: 2%;
}
.school_list > li:before {
  color: var(--base-color2) !important;
}
.school_list > li a {
  color: var(--base-color1);
  text-decoration: underline;
}
.school_list > li a:hover {
  text-decoration: none;
}

@media screen and (max-width: 680px) {
  /*select*/
  .shop_panel_list .back_num {
    width: 100%;
  }
}
/*canter センター　エレメント　
============================================================================================================================== */
.rank_frame_title {
  color: var(--base-color0);
  text-align: center;
  background: var(--base-color1);
  font-size: 1.8rem;
  padding: 1rem 0;
}

.rank_frame_text {
  font-size: 1.4rem;
}

.rank_frame .text_box {
  padding: 3rem;
  box-shadow: var(--shadow);
}

@media screen and (max-width: 480px) {
  .rank_frame .text_box {
    padding: 2rem 1.5rem;
  }
}
/*連番の番号*/
.rank_frame_flex {
  counter-reset: titlenum;
  display: flex;
  justify-content: space-between;
}
.rank_frame_flex li {
  position: relative;
  padding-left: 3rem;
}
.rank_frame_flex li:after {
  position: absolute;
  counter-increment: titlenum;
  /* counter-resetと同じ文字列 */
  content: counter(titlenum);
  /* デザイン */
  color: var(--fontsub-color);
  left: 2.2rem;
  top: 0.5rem;
  text-align: center;
  font-weight: 900;
  font-size: 2.1rem;
}
.rank_frame_flex li:nth-child(n+5):after {
  left: 1.7rem;
}
.rank_frame_flex .rank_frame_list:first-child li:nth-child(5):after {
  left: 2.2rem;
}
.rank_frame_flex li:before {
  content: "";
  background: var(--base-color1);
  height: 100%;
  width: 7rem;
  position: absolute;
  left: -1.5rem;
  top: 0;
  z-index: -1;
}
.rank_frame_flex > * {
  width: 48%;
}

/*5個ごとの数字の位置指定
-----------------------------------------------*/
/*リストの並び*/
.rank_frame_list > li {
  padding: 0 0 0;
  overflow: hidden;
  border-radius: 50rem;
  box-shadow: var(--shadow);
  margin-bottom: 1.5rem;
}
.rank_frame_list > li * {
  padding: 1rem 3rem 1rem 7rem;
  display: block;
  position: relative;
  display: block;
}
.rank_frame_list > li *:after, .rank_frame_list > li *:before {
  position: absolute;
  content: "";
}
.rank_frame_list > li *:after {
  background: url("../images/parts/btn_arrow.svg") no-repeat;
  background-size: contain;
  height: 1.5rem;
  width: 2rem;
  right: 1.5rem;
  top: 1.6rem;
}
.rank_frame_list > li *:before {
  background: var(--base-color1);
  height: 3.2rem;
  width: 3.2rem;
  border-radius: 3rem;
  right: 1rem;
  top: 0.8rem;
}

@media screen and (max-width: 680px) {
  .rank_frame_flex {
    display: block;
  }
  .rank_frame_flex > * {
    width: 100%;
  }
}
/*ボタン矢印*/
/*center_element_area
-------------------------------------------------------------------------------------------------*/
.center_element_area {
  box-shadow: var(--shadow);
  background: var(--base-color0);
  padding: 4rem;
}

/*center_element_list_01*/
.center_element_list_01 > li + li {
  border-top: 2px solid #cccccc;
  padding-top: 3rem;
  margin-top: 3rem;
}

.center_element_list_01_inner .card_parts > * + * {
  margin-top: 1rem;
}
.center_element_list_01_inner .card_parts .tag_list {
  margin-bottom: auto;
}

@media screen and (max-width: 680px) {
  .center_element_area {
    box-shadow: none;
    padding: 2rem 0;
  }
}
/*center_element_list_02*/
.center_element_list_02 {
  display: flex;
  flex-wrap: wrap;
  max-width: 85%;
  margin: auto;
}
.center_element_list_02 > li {
  width: 31.3%;
  margin-right: 3%;
  margin-bottom: 3%;
}
.center_element_list_02 > li:nth-child(3n) {
  margin-right: auto;
}

.center_element_list_02_inner > * + * {
  margin-top: 1rem;
}
.center_element_list_02_inner .card_parts_title {
  font-size: 1.5rem;
  margin-top: 1rem;
}

@media screen and (max-width: 680px) {
  .center_element_list_02 {
    display: block;
    max-width: 100%;
  }
  .center_element_list_02 > li {
    width: auto;
    margin-right: auto;
    margin-bottom: 8%;
  }
}
/*slide-module-04*/
.slide-module-04 {
  margin-bottom: 10rem !important;
}

/*sitemap_area サイトマップ
============================================================================================================================== */
.sitemap_area .global > li {
  margin-bottom: 4rem;
}
.sitemap_area .global > li > a {
  text-decoration: underline;
  color: var(--dark-black-white);
  border: solid 1px #bfbfbf;
  padding: 1rem 2rem;
  display: block;
  font-size: 2rem;
  background: var(--bg-color2);
}
.sitemap_area .global > li > ul {
  display: flex;
  flex-wrap: wrap;
}
.sitemap_area .global > li > ul > li {
  margin: 3% 3% 0 3%;
  width: 28%;
}
.sitemap_area .global > li > ul > li:nth-child(3n) {
  margin-right: 0;
}
.sitemap_area .global > li > ul > li a {
  display: block;
  position: relative;
  padding-left: 0.8em;
  text-decoration: underline;
  color: var(--dark-black-white);
  font-size: 1.8rem;
}
.sitemap_area .global > li > ul > li a:hover {
  text-decoration: none;
}
.sitemap_area .global > li > ul > li > a:before {
  position: absolute;
  content: "";
  border: 5px solid transparent;
  border-left: 9px solid var(--dark-black-white);
  top: 0.5em;
  left: 0;
  box-sizing: border-box;
  width: 5px;
  height: 7px;
}
.sitemap_area .global > li > ul > li > ul {
  margin-top: 3%;
  margin-left: 1rem;
}
.sitemap_area .global > li > ul > li > ul > li + li {
  margin-top: 1%;
}
.sitemap_area .global > li > ul > li > ul > li a {
  font-size: 1.2rem;
  padding-left: 1.1em;
}
.sitemap_area .global > li > ul > li > ul > li a:before {
  content: "▷";
  position: absolute;
  left: 0;
  font-size: 0.5em;
  color: var(--dark-black-white);
}

@media screen and (max-width: 480px) {
  .sitemap_area .global > li > a {
    font-size: 1.8rem;
  }
  .sitemap_area .global > li > ul {
    display: block;
    flex-wrap: wrap;
  }
  .sitemap_area .global > li > ul > li {
    margin: 3% 3% 0 3%;
    width: auto;
  }
  .sitemap_area .global > li > ul > li:nth-child(3n) {
    margin-right: auto;
  }
  .sitemap_area .global > li > ul > li a {
    font-size: 1.6rem;
  }
  .sitemap_area .global > li > ul > li > ul > li a {
    font-size: 1.4rem;
  }
}
/*nav_ico_kye*/
.nav_ico_kye > a {
  position: relative;
  padding-left: 3rem !important;
}
.nav_ico_kye > a:before {
  content: "" !important;
  background: url("../images/parts/ico_lock.svg") no-repeat !important;
  background-size: contain;
  height: 1.5rem !important;
  width: 1.5rem !important;
  position: absolute;
  top: 20px;
  left: 0.5em;
  border: none !important;
  border-left: none !important;
}
.nav_ico_kye > ul li a:before {
  top: 0.7em;
}

@media screen and (max-width: 960px) {
  .nav_ico_kye > a:before {
    top: 1em;
  }
  .nav_ico_kye > ul li a {
    padding-left: 2.5rem !important;
    background: none !important;
  }
}
/*アンケート
============================================================================================================================== */
/*QA枠　アンケートフォーム枠
------------------------------------------------------------------------------------*/
.quest_dl dl {
  background: var(--base-color0);
  box-shadow: var(--shadow);
}
.quest_dl dl + dl {
  margin-top: 3%;
}
.quest_dl dl dt {
  font-size: 1.8rem;
  padding: 1.5rem;
  display: flex;
  align-items: flex-start;
  border-bottom: 1px dashed #707070;
}
.quest_dl dl dt span {
  text-align: center;
  font-size: 1.6rem;
  background: var(--base-color1);
  color: var(--base-color0);
  border-radius: 1rem;
  min-width: 4em;
  display: block;
  margin-right: 2.5rem;
}
.quest_dl dl dd {
  padding: 1.5rem 2rem;
}

@media screen and (max-width: 680px) {
  .quest_dl dl + dl {
    margin-top: 7%;
  }
  .quest_dl dl dt {
    font-size: 1.6rem;
    display: block;
  }
  .quest_dl dl dt span {
    font-size: 1.4rem;
    max-width: 4em;
    margin-bottom: 0.5rem;
  }
  .quest_dl dl dd {
    padding: 1.5rem 2.5rem;
  }
}
.quest_dl_title {
  background: var(--base-color1);
}

/*results
------------------------------------------------------------------------------*/
.results_flex {
  padding: 2rem 0;
  max-width: 80%;
  margin: auto;
  display: flex;
}
.results_flex > * {
  width: 48%;
}

/*results_list*/
.results_list > li {
  margin-bottom: 2.5rem;
  display: flex;
}
.results_list > li > *:nth-child(1) {
  width: 15rem;
}
.results_list > li > *:nth-child(2) {
  width: 10rem;
  color: var(--base-color1);
  font-size: 1.4rem;
  font-weight: 700;
}
.results_list > li > *:nth-child(2) span {
  width: 10rem;
  font-size: 1.6rem;
  color: var(--base-color1);
}

/*resultsline_list
--------------------------------------------*/
.resultsline_list > li {
  padding: 1rem;
  border: solid 1px #a3a3a3;
}
.resultsline_list > li + li {
  margin-top: 1rem;
}

@media screen and (max-width: 680px) {
  .results_flex {
    max-width: 100%;
    justify-content: center;
    flex-flow: column;
  }
  .results_flex > * {
    width: auto;
  }
  /*results_list*/
  .results_list > li {
    justify-content: center;
  }
}
/*検索結果
============================================================================================================================== */
/*search_results_text*/
.search_results_text {
  position: relative;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
}
.search_results_text p {
  position: relative;
  display: inline-block;
  padding-left: 2em;
  background: url("../images/ico_search.svg") no-repeat;
  background-size: 1.5em;
  background-position: top 1em left 0;
}
.search_results_text p:before {
  content: "";
  background: #000;
  width: 100%;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.search_results_text span {
  font-size: 3.4rem;
}

.search_list_inner a .date,
.search_list_inner a p {
  text-decoration: underline !important;
}

@media screen and (max-width: 480px) {
  .search_results_text span {
    font-size: 2.4rem;
  }
  .search_results_text p {
    padding-left: 1.5em;
    background-size: 1.2em;
    background-position: top 0.6em left 0;
  }
  .search_results_text p:before {
    height: 3px;
  }
}
/*select_flex*/
.select_flex {
  display: flex;
  margin-bottom: 1%;
}
.select_flex .select_flex_title {
  width: 15%;
}

.select_box .back_num {
  width: 15em;
}

@media screen and (max-width: 680px) {
  .select_flex .select_flex_title {
    width: 20%;
    font-size: 1.2rem;
  }
  .select_box .back_num {
    width: 70%;
  }
}
/*free_text
==========================================================================*/
.free_box .inner_title {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 1em;
}

@media screen and (max-width: 680px) {
  .free_box .inner_title {
    font-size: 1.6rem;
  }
}
/* freebox_line */
.freebox_line {
  box-shadow: var(--shadow);
  padding: 5rem;
}
.freebox_line .inner > *:first-child {
  padding-top: 0;
  margin-top: 0;
}

@media screen and (max-width: 680px) {
  .freebox_line {
    padding: 2rem;
  }
}
/* freebox_square */
.freebox_square {
  box-shadow: var(--shadow);
  position: relative;
  overflow: hidden;
}
.freebox_square:before, .freebox_square:after {
  content: "";
  width: 4.4rem;
  height: 4.4rem;
  position: absolute;
  top: 0;
}
.freebox_square:before {
  background: url(../images/parts/square_bg_top_left.svg) no-repeat;
  background-size: contain;
  left: 0;
}
.freebox_square:after {
  background: url(../images/parts/square_bg_top_right.svg) no-repeat;
  background-size: contain;
  right: 0;
}
.freebox_square .inner {
  padding: 5rem;
  position: relative;
}
.freebox_square .inner .inner_title {
  padding-left: 1.5em;
  background: url(../images/parts/square_midashi.svg) no-repeat;
  background-size: 1em;
  background-position: top 0.3em left 0;
}
.freebox_square .inner > *:first-child {
  padding-top: 0;
  margin-top: 0;
}
.freebox_square .inner:before, .freebox_square .inner:after {
  content: "";
  width: 4.4rem;
  height: 4.4rem;
  position: absolute;
  bottom: 0;
}
.freebox_square .inner:before {
  background: url(../images/parts/square_bg_bottom_left.svg) no-repeat;
  background-size: contain;
  left: 0;
}
.freebox_square .inner:after {
  background: url(../images/parts/square_bg_bottom_right.svg) no-repeat;
  background-size: contain;
  right: 0;
}

@media screen and (max-width: 680px) {
  .freebox_square:before, .freebox_square:after {
    width: 2.2em;
    height: 3rem;
  }
  .freebox_square .inner {
    padding: 2rem;
  }
  .freebox_square .inner:before, .freebox_square .inner:after {
    width: 2.2em;
    height: 3rem;
  }
}
/*  freebox_stripe*/
/*  freebox_stripe*/
.freebox_stripe {
  position: relative;
  padding: 5px;
  background: repeating-linear-gradient(45deg, rgb(217, 59, 59), rgb(217, 59, 59) 5px, var(--base-color0) 0, var(--base-color0) 10px);
}
.freebox_stripe .inner {
  position: relative;
  overflow: hidden;
  padding: 3rem;
  background-color: var(--base-color0);
}
.freebox_stripe .inner .inner_title {
  padding-left: 2.5rem;
  color: #d93b3b;
}
.freebox_stripe .inner > *:first-child {
  padding-top: 0;
  margin-top: 0;
}
.freebox_stripe .inner:before {
  content: "";
  position: absolute;
  border: 63px solid transparent;
  border-left: 99px solid #d93b3b;
  top: -91px;
  left: -26px;
  box-sizing: border-box;
  transform: rotate(-15deg);
}
.freebox_stripe .inner .freebox_stripe {
  padding-left: 2em;
  color: #d93b3b;
}

@media screen and (max-width: 680px) {
  .freebox_stripe .inner {
    padding: 2rem;
  }
  .freebox_stripe .inner:before {
    border: 56px solid transparent;
    border-left: 102px solid #d93b3b;
  }
}
/* freebox_rotate */
.freebox_rotate {
  position: relative;
  width: 100%;
  background-color: #999;
}
.freebox_rotate:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #ccc;
  transform: rotate(-1deg);
  display: block;
  z-index: 0;
}
.freebox_rotate .inner {
  position: relative;
  padding: 3rem;
  background-color: #fff;
  border: 1px solid #ccc;
  z-index: 1;
}
.freebox_rotate .inner > *:first-child {
  padding-top: 0;
  margin-top: 0;
}
.freebox_rotate .inner_flex {
  display: flex;
}
.freebox_rotate .inner_flex .title_box {
  border-right: 1px solid var(--color-gray3);
  min-width: 25%;
  padding-right: 3rem;
  margin-right: 3rem;
}
.freebox_rotate .inner_flex .title_box .inner_title {
  position: relative;
  padding-left: 3rem;
}
.freebox_rotate .inner_flex .title_box .inner_title:before, .freebox_rotate .inner_flex .title_box .inner_title:after {
  content: "";
  position: absolute;
}
.freebox_rotate .inner_flex .title_box .inner_title:before {
  background: var(--color-gray3);
  width: 1em;
  height: 1em;
  left: 0;
  top: 0.3em;
}
.freebox_rotate .inner_flex .title_box .inner_title:after {
  left: 0.7em;
  top: 0.8em;
  border: 5px solid transparent;
  border-left: 6px solid var(--base-color0);
  box-sizing: border-box;
  transform: translate(-50%, -50%);
}
.freebox_rotate .inner_flex .text_box {
  width: 100%;
}

@media screen and (max-width: 680px) {
  .freebox_rotate .inner {
    padding: 2rem;
  }
  .freebox_rotate .inner_flex {
    display: block;
  }
  .freebox_rotate .inner_flex .title_box {
    width: auto;
    border-bottom: 1px solid var(--color-gray3);
    border-right: none;
    min-width: normal;
    padding-right: 0;
    margin-right: auto;
    padding-bottom: 0;
    margin-bottom: 2rem;
  }
  .freebox_rotate .inner_flex .text_box {
    width: auto;
  }
}
/*week
==========================================================================*/
.week_w {
  width: 95%;
  margin: 0 auto 0 auto;
}
.week_title {
  padding: 0.2em 0;
  font-weight: bold;
  text-align: center;
  background: var(--base-color1);
  color: var(--base-color0);
}
.week_box .slick-slide {
  width: 100% !important;
}
.week_list li > * {
  box-shadow: none !important;
  height: 21.5vh !important;
  border-bottom: 1px solid var(--base-color1);
}
.week_list .card_parts_flex {
  display: flex;
  align-items: center;
}
.week_list .card_parts_flex .week_day {
  height: 21.5vh !important;
  display: flex;
  justify-content: center;
  align-items: center;
  /* flex-flow: column; */
  line-height: 1;
  width: 10%;
  height: 100%;
  font-size: 2.2rem;
}
.week_list .card_parts_flex .week_day span {
  font-size: 1.5em;
}
.week_list .card_parts_flex .text_box {
  width: 90%;
  padding: 0;
}
.week_list .card_parts_flex .text_box p {
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 1;
  position: relative;
  padding-left: 1em;
  margin-bottom: 0.5em;
}
.week_list .card_parts_flex .text_box p:before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0.4em;
  color: #000;
}
.week_list .card_parts_flex .text_box p > * + * {
  margin-top: auto;
}
.week_list .card_parts_flex .text_box p .cate {
  font-size: 1.8rem;
}
.week_box.tate {
  height: auto;
}
.week_box.tate .week_list {
  height: auto;
}
.week_box.tate .week_list li > * {
  height: 11.5vh !important;
}
.week_box.tate .week_list .card_parts_flex .week_day {
  height: 11.5vh !important;
}

/* schedule_2col */
.schedule_2col .manth_calendar_area {
  border-right: 1px dashed #707070;
  padding-top: 2vh;
  padding-bottom: 2vh;
  padding-right: 3em;
}
.schedule_2col .manth_list_noflex li {
  padding: 0rem 0rem;
  border-bottom: none;
}
.schedule_2col .manth_list_noflex li .schedule_list_title {
  font-size: 2.4rem !important;
  font-weight: normal;
}
.schedule_2col .manth_list_noflex li .date_d {
  margin-bottom: 1em;
  font-size: 2.2rem;
}
.schedule_2col .manth_list_noflex li .date_d span {
  font-size: 1.5em;
}
.schedule_2col .manth_list_noflex li::before {
  content: none;
}

.manth_area_day {
  padding-top: 2vh;
  padding-bottom: 2vh;
}
.manth_area_day > ul > li {
  display: none;
}
.manth_area_day > ul > li:first-of-type {
  display: block;
}

.fc-toolbar-chunk:last-child {
  padding-left: 0 !important;
}

.fc-event {
  /* font-size: 10px !important; */
}

.week_list .card_parts_flex .week_day.saturday {
  color: #026d8e;
}

.week_list .card_parts_flex .week_day.sunday {
  color: #a30000;
}

.vertical_manth_area_day {
  padding-top: 2vh;
  padding-bottom: 2vh;
}

.vertical_manth_area_day > ul > li {
  display: none;
}

.vertical_manth_area_day > ul > li:first-of-type {
  display: block;
}

/*デジタルサイネージ
---------------------------------------------------------------------------------------------------------------------------------------------------*/
.contents_title {
  padding: 0.3em 0;
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
}

.contents_frame {
  position: relative;
  display: block;
  max-width: 100vw;
  margin: 0 auto;
}

.title_frame {
  max-width: 80vw;
}

.pic_frame {
  position: relative;
  display: block;
  max-width: 100vw;
  margin: 0 auto;
}

.mian_width {
  position: relative;
  display: block;
  padding-bottom: 2rem;
  max-width: 80vw;
  max-height: 30vh;
  margin: 0.1em auto 0;
}

.errorMsg {
  padding-top: 6rem;
  font-size: 1.5rem;
}

.mian_text {
  line-height: 1.8;
  font-size: 2rem;
}/*# sourceMappingURL=module.css.map */