@charset "utf-8";
/*----------------------------------------------------
　PC common
----------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
/*---　フォーマットからの調整　----*/
.topicPath, .loading {
  display: none
}
#main {
  margin-top: -18px;
  padding-top: 0px;
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #000000;
  scroll-behavior: smooth;
  position: relative;
  font-weight: 500;
}
#footer {
  margin-top: 0;
}
.txt {
  font-size: 125%;
  line-height: 1.8em;
  font-weight: 500;
  margin-bottom: 1em;
}
/*----------------------------------------------------
　マージン
----------------------------------------------------*/
.margin_bot_0em {
  margin-bottom: 0em;
}
.margin_bot_1em {
  margin-bottom: 1em;
}
.margin_bot_2em {
  margin-bottom: 2em;
}
.margin_bot_4em {
  margin-bottom: 4em;
}
.margin_bot_6em {
  margin-bottom: 6em;
}
.margin_bot_8em {
  margin-bottom: 8em;
}
.padding_top_2em {
  padding-top: 2em;
}
.padding_top_4em {
  padding-top: 4em;
}
.padding_top_6em {
  padding-top: 6em;
}
.padding_top_8em {
  padding-top: 8em;
}
.padding_bot_2em {
  padding-bottom: 2em;
}
.padding_bot_4em {
  padding-bottom: 4em;
}
.padding_bot_6em {
  padding-bottom: 6em;
}
.padding_bot_8em {
  padding-bottom: 8em;
}
@media screen and (max-width: 767px) {
.padding_top_4em {
  padding-top: 2em;
}
.padding_bot_4em {
  padding-bottom: 2em;
}
.margin_bot_4em {
  margin-bottom: 2em;
}
	}
	
/*----------------------------------------------------
　カラム
----------------------------------------------------*/
.flex{
  display: flex;
  justify-content: space-between;
	flex-wrap: wrap;
}

.collum_2,
.collum_3,
.collum_4,
.collum_5,
.collum_6 {
  display: flex;
  justify-content: space-between;
	flex-wrap: wrap;
}
.collum_2 > div {
	width: 49%;
	margin-bottom: 1em;
}
.collum_3 > div {
  width: 33%;
	margin-bottom: 1em;
}
.collum_4 > div {
  width: 24.5%;
	margin-bottom: 1em;
}
.collum_5 > div {
  width: 19%;
}
.collum_6 > div {
  width: 16%;
	margin-bottom: 1em;
}

@media screen and (max-width: 767px) {	
.collum_2,.collum_3  {
  display: block;
}
.collum_2 > div,
.collum_3 > div,
.collum_4 > div{
  width: 100%;
}	
}	

/*----------------------------------------------------
　インデックス
----------------------------------------------------*/
#index_box a {
  text-decoration: none;
}
#index_box a:hover {
  color: #FFF;
}
.index_item {
  position: relative;
}
.index_no {
  position: absolute;
  left: 0px;
  z-index: 10;
  width: 25%;
}
.index_no img {
  width: 100%;
}
.index_copy {
  width: 80%;
  margin-right: auto;
  margin-left: auto;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 90%;
  font-weight: 600;
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-bottom: 4%;
  background-size: 100% 12%;
  line-height: 1.6em;
  height: 4em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.index_title {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 100%;
  font-weight: 600;
  line-height: 1.6em;
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-bottom: 1em;
  background-size: 100% 5%;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.index_title {
  font-size: 93%;
}

	}


/*== 画像裏返し */
.index_img {
  width: 100%; /* 任意の横幅を指定 */
  position: relative;
  cursor: pointer;
  margin-right: auto;
  margin-left: auto;
}
/* 擬似要素とpadding-topでカードの高さを指定 */
.index_img::before {
  content: "";
  display: block;
  padding-top: 136.5%;
}
/* カード内の画像 */
.index_img img {
  width: 100%;
}
/* カード裏面・表面の共通スタイル */
.index_img .back, .index_img .front {
  transition: all 0.6s;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  backface-visibility: hidden;
}
/* カード表面のスタイル */
.index_img .front {
  transform: rotateY(-180deg);
}
/* ホバー時のカード裏面 */
.index_img:hover .back {
  transform: rotateY(180deg);
}
/* ホバー時のカード表面 */
.index_img:hover .front {
  transform: rotateY(0);
}
/*----------------------------------------------------
　SP common レスポンシブ設定767以下
----------------------------------------------------*/
@media screen and (max-width: 767px) {
  body {
    padding-top: 0.4rem;
  }
  #main {
    margin-top: 0px;
  }
  .txt {
    font-size: 115%;
    line-height: 1.7em;
    font-weight: 500;
    margin-bottom: 1em;
  }
}
/* pcで非表示
---------------------------------------------------------- */
.no-pc {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .no-sp {
    display: none !important;
  }
  .no-pc {
    display: block !important;
  }
}