@charset "UTF-8";

/* =========================================================
  category-content
========================================================= */
/* contentGpCategoryCategoryTypes(index)
----------------------------------------------- */
.contentGpCategoryCategoryTypes section {
  margin: 0 0 20px;
}

.contentGpCategoryCategoryTypes h2 {
  display: block;
  line-height: 1.3;
  margin: 2rem 0 1rem;
  padding: 14px 1.5rem;
  background-color: #F5ECFF;
  font-size: 1.1rem;
  font-weight: bold;
}

.contentGpCategoryCategoryTypes section>ul {
  display: flex;
  flex-wrap: wrap;
}

.contentGpCategoryCategoryTypes section>ul>li {
  width: calc((100% - 60px) / 2);
  margin: 0 0 24px 30px;
}

.contentGpCategoryCategoryTypes ul {
  margin-bottom: 4px;
}

.contentGpCategoryCategoryTypes ul li {
  margin-left: 1.5rem;
  list-style-type: disc;
}

.contentGpCategoryCategoryTypes ul li li {
  list-style-type: circle;
}

.contentGpCategoryCategoryTypes ol {
  margin-bottom: 20px;
}

.contentGpCategoryCategoryTypes .category_summary {
  display: block;
  color: var(--mono-color-1);
}

/*-----------------------------------------------
 contentGpCategoryCategoryType
----------------------------------------------- */
.contentGpCategoryCategoryTypes .bukai ul,
.contentGpCategoryCategoryType {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}

.contentGpCategoryCategoryTypes .bukai li,
.contentGpCategoryCategoryType section {
  flex-basis: calc((100% - 6rem) / 3);
  margin: 0;
  list-style: none;
}

.contentGpCategoryCategoryTypes .bukai li a,
.contentGpCategoryCategoryType .categoryTypeBukai h2 a {
  padding: 8px 15px 6px 32px;
  background-size: cover;
  display: block;
  text-decoration: none;
  color: var(--mono-color-9);
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 368 / 227;
  font-size: 1.8rem;
  font-weight: normal;
  border-radius: 15px;
  background: no-repeat center/100%;

  transition: background-size 0.4s ease;
}

.contentGpCategoryCategoryTypes li a:hover,
.contentGpCategoryCategoryType h2 a:hover {
  background-size: 110%;
}

.contentGpCategoryCategoryTypes li a[href*="ikuseibu"],
.contentGpCategoryCategoryType h2 a[href*="ikuseibu"] {
  background-image: url("/_themes/site/images/bukai-ikuseibu.png");
}

.contentGpCategoryCategoryTypes li a[href*="fukyobu"],
.contentGpCategoryCategoryType h2 a[href*="fukyobu"] {
  background-image: url("/_themes/site/images/bukai-fukyobu.png");
}

.contentGpCategoryCategoryTypes li a[href*="fujinkai"],
.contentGpCategoryCategoryType h2 a[href*="fujinkai"] {
  background-image: url("/_themes/site/images/bukai-fujin.png");
}

.contentGpCategoryCategoryTypes li a[href*="seinenkai"],
.contentGpCategoryCategoryType h2 a[href*="seinenkai"] {
  background-image: url("/_themes/site/images/bukai-seinenkai.png");
}

.contentGpCategoryCategoryTypes li a[href*="joshiseinen"],
.contentGpCategoryCategoryType h2 a[href*="joshiseinen"] {
  background-image: url("/_themes/site/images/bukai-joshiseinen.png");
}

.contentGpCategoryCategoryTypes li a[href*="gakuseikai"],
.contentGpCategoryCategoryType h2 a[href*="gakuseikai"] {
  background-image: url("/_themes/site/images/bukai-gakuseikai.png");
}

.contentGpCategoryCategoryTypes li a[href*="shonenkai"],
.contentGpCategoryCategoryType h2 a[href*="shonenkai"] {
  background-image: url("/_themes/site/images/bukai-shonenkai.png");
}

.contentGpCategoryCategoryTypes li a[href*="tumesho"],
.contentGpCategoryCategoryType h2 a[href*="tumesho"] {
  background-image: url("/_themes/site/images/bukai-tumesho.png");
}

.contentGpCategoryCategoryType section>a {
  display: block;
  margin: 0 0 12px;
  border: 1px solid var(--mono-color-6);
  border-radius: 5px;
  font-size: 1rem;
  font-weight: normal;
  background: linear-gradient(to bottom, var(--mono-color-9), var(--main-color-9));
}

.contentGpCategoryCategoryType section>a:hover {
  background: linear-gradient(to bottom, var(--main-color-9), var(--mono-color-9));
}

.contentGpCategoryCategoryType ul {
  padding: 0 18px;
}

.contentGpCategoryCategoryType li {
  margin: 0 0 8px;
  padding: 0 0 0 16px;
  background: url("/_themes/site/images/ic-arrow.svg") left 0.5rem no-repeat;
}

.contentGpCategoryCategoryType .category_summary {
  display: block;
  padding: 0 15px 6px 32px;
  color: var(--mono-color-1);
}

.contentGpCategoryCategoryType section.thum-category {
  display: flex;
  flex-wrap: wrap;
  flex-basis: 100%;
  gap: 2rem;
}

.contentGpCategoryCategoryType section.thum-category>section {
  flex-basis: calc(50% - 1rem);
}

.contentGpCategoryCategoryType section.thum-category>section h2 {
  font-size: 1.3rem;
  margin-bottom: 2rem;
  text-align: center;
  font-weight: normal;
  /* border-bottom: 2px solid var(--main-color-7); */
  padding: 0.5rem;
  background-color: #F5ECFF;
}

.contentGpCategoryCategoryType section.thum-category ul,
.contentGpCategoryCategoryType section.thum-category li {
  padding: 0;
  background: none;
}

.contentGpCategoryCategoryType section.thum-category>section .image {
  display: block;
  margin-bottom: 1rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .contentGpCategoryCategoryType {
    gap: 1.5rem;
  }

  .contentGpCategoryCategoryType section {
    flex-basis: calc((100% - 3rem) / 3);
  }

  .contentGpCategoryCategoryType section.thum-category {
    flex-wrap: wrap;
    gap: 5rem;
  }

  .contentGpCategoryCategoryType section.thum-category>section {
    flex-basis: 100%;
  }

  .contentGpCategoryCategoryType section.thum-category a,
  .contentGpCategoryCategoryType section.thum-category span {
    text-align: center;
    display: block;
  }
}

@media only screen and (max-width: 779px) {
  .contentGpCategoryCategoryType section {
    flex-basis: calc((100% - 1.5rem) / 2);
    min-width: 223px;
  }
}

@media only screen and (max-width: 559px) {

  .contentGpCategoryCategoryType section,
  .contentGpCategoryCategoryType section:not(:nth-child(2n + 2)) {
    width: 100%;
    margin-right: 0;
    flex-basis: 100%;
  }
}

/*-----------------------------------------------
 contentGpCategoryCategory
-----------------------------------------------*/
/* =========================================================
  bukai
========================================================= */
/* #categoryList  
-----------------------------------------------*/
#content:has(.contentGpCategoryCategory) #categoryList .level1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 1.3rem;
  margin-bottom: 2rem;
}

#content:has(.contentGpCategoryCategory) #categoryList .level1 h3 {
  font-weight: normal;
}

#content:has(.contentGpCategoryCategory) #categoryList .level1 h3 a {
  color: var(--mono-color-2);
  padding: 0.5rem 1.5rem;
  border-radius: 50px;
  display: block;
}

#content:has(.contentGpCategoryCategory) #categoryList .level1 h3 a.current {
  background-color: var(--ac-color-gold-1);
  color: var(--mono-color-9);
  text-decoration: none;
}

@media only screen and (max-width: 1230px) {

  #content:has(.contentGpCategoryCategory) #categoryList .level1 {
    justify-content: start;
  }

  #content:has(.contentGpCategoryCategory) #categoryList .level1>section {
    text-align: center;
    flex-basis: calc(100% / 7);
    min-width: 150px;
  }
}

body[id*="fukyobu"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-fukyobu.jpg");
}

/* body[id*="ikuseibu"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-ikuseibu.jpg");
} */

body[id*="fujinkai"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-fujinkai.png");
}

body[id*="joshiseinen"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-joshiseinen.jpg");
}

body[id*="seinenkai"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-seinenkai.png");
}

body[id*="shonenkai"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-shonenkai.png");
}

body[id*="gakuseikai"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-gakuseikai.jpg");
}

body[id*="tumesho"] #main>#headerTitle .pieceContainer {
  background-image: url("/_themes/site/images/bg-title-tumesho.png");
}

/* introductionBukai  
-----------------------------------------------*/
#introductionBukai {
  margin-bottom: 2rem;
}

#introductionBukai p {
  margin-bottom: 1rem;
}

#introductionBukai h2 {
  display: block;
  line-height: 1.3;
  margin: 2rem 0 1rem;
  padding: 14px 12px;
  background-color: #F5ECFF;
  font-size: 1.6rem;
  font-weight: bold;
}

#introductionBukai h3 {
  display: block;
  margin: 1.8rem 0 1rem;
  padding: 5px 12px;
  border-bottom: 2px solid var(--main-color-7);
  font-size: 1.45rem;
  font-weight: bold;
}

#introductionBukai h4 {
  margin: 1.5rem 0 1rem;
  padding: 5px 0 3px 8px;
  border-bottom: 2px solid var(--mono-color-6);
  font-size: 1.3rem;
  font-weight: bold;
  position: relative;
}

#introductionBukai h4:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 15rem;
  border-bottom: 2px solid var(--main-color-7);
}

#introductionBukai h5 {
  margin: 1.2rem 0 12px;
  padding: 2px 0 0 10px;
  border-bottom: 1.5px dashed var(--mono-color-7);
  font-size: 1.2rem;
  font-weight: bold;
}

#introductionBukai h6 {
  margin: 1.5rem 0 12px;
  padding: 3px 0 2px 4px;
  font-size: 1.1rem;
  font-weight: bold;
  color: var(--main-color-4);
}

#introductionBukai table {
  margin-bottom: 30px;
  border-collapse: collapse;
  border: 2px solid var(--mono-color-6);
}

#introductionBukai table p {
  margin-bottom: 0;
}

#introductionBukai table caption {
  margin: 8px;
  text-align: center;
}

#introductionBukai table th,
#introductionBukai table td {
  padding: 6px 10px;
  border: 1px solid var(--mono-color-6);
}

#introductionBukai .img-shadow {
  text-align: center;
  margin: 1.5rem auto;
}

#introductionBukai .img-shadow img {
  box-shadow: 0px 0px 8px var(--mono-color-4);
}

/* .temp-border1
------------------------ */
#introductionBukai .temp-border1 {
  border: 1px solid var(--mono-color-1);
  padding: 1rem;
}

#introductionBukai .temp-border1 h2 {
  margin: 0 0 1rem 0;
}

#introductionBukai .temp-border1 p {
  margin-bottom: 0;
}

/* freeBukai 
 -----------------------------------------------*/
#freeBukai ul.banner {
  display: flex;
  gap: 1.5rem;
}

#freeBukai ul.banner img {
  box-shadow: 0 2px 6px var(--mono-color-4);
}

@media only screen and (max-width: 559px) {
  #freeBukai ul.banner {
    flex-wrap: wrap;
    flex-grow: 1;
  }
}

/* ikuseibu
 -----------------------------------------------*/
#ikuseiDayori {
  margin-top: 3rem;
}

#ikuseiDayori h2 {
  position: relative;
  padding: 5px 15px 5px 1rem;
  min-height: 40px;
  background-color: #F5ECFF;
  font-size: 1.1rem;
  font-weight: bold;
  font-family: var(--font-family-min);
  margin-bottom: 2rem;
}

#ikuseiDayori ul {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}

#ikuseiDayori li {
  flex-basis: calc((100% - 2rem) / 3);
  border-bottom: none;
}

#ikuseiDayori .image {
  display: block;
  margin-bottom: 0.5rem;
}

#ikuseiDayori .image img {
  box-shadow: 0 0 3px var(--mono-color-5);
}

@media only screen and (max-width: 959px) {

  #ikuseiDayori li {
    min-width: 260px;
    flex-grow: 1;
    /* max-width: 296px; */
  }
}

/* fujunkai
 -----------------------------------------------*/
.goal {
  text-align: center;
  margin-bottom: 2rem;
}

.goal img {
  width: 600px;
}

.contentGpCategoryCategory {
  margin: 0 0 20px;
}

.contentGpCategoryCategory .docs_1 li {
  padding-left: 1rem;
}

.contentGpCategoryCategory section[class^="docs_"] {
  position: relative;
  margin: 0 0 30px;
}

.contentGpCategoryCategory section[class^="docs_"] .articleHeader+p {
  margin-top: 1.5rem;
}

.contentGpCategoryCategory .docs_1~section[class^="docs_"] ul {
  padding: 0 18px;
}

.contentGpCategoryCategory .docs_1~section[class^="docs_"] li {
  margin: 0 0 8px;
  padding: 0 0 0 16px;
  background: url("/_themes/site/images/ic-arrow.svg") left 0.5rem no-repeat;
  border: none;
}

.contentGpCategoryCategory .docs_1~section[class^="docs_"]:not(.docs_faq) {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.contentGpCategoryCategory .docs_1~section[class^="docs_"]:not(.docs_faq) section {
  flex-basis: calc((100% - 20px) / 2);
}

.contentGpCategoryCategory .docs_1~section[class^="docs_"]:not(.docs_faq) h2 {
  display: block;
  margin: 0 0 12px;
  padding: 5px 0 3px 12px;
  border-left: 5px solid var(--main-color-4);
  background-color: var(--main-color-10);
  font-size: 1.125rem;
  font-weight: bold;
}

@media only screen and (max-width: 559px) {
  .contentGpCategoryCategory .docs_1~section[class^="docs_"]:not(.docs_faq) section {
    flex-basis: 100%;
  }
}

/* =========================================================
/category/kanko/ashitsu/,/shinmei/
========================================================= */
.contentGpCategoryCategory .thum-list h2 {
  font-size: 1.3rem;
  margin-bottom: 2rem;
  text-align: center;
  font-weight: normal;
  /* border-bottom: 2px solid var(--main-color-7); */
  padding: 0.5rem;
  background-color: #F5ECFF;
}

.contentGpCategoryCategory .thum-list>section {
  margin-bottom: 3rem;
}

.contentGpCategoryCategory .thum-list ul,
.contentGpCategoryCategory .thum-list-2 ul {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.contentGpCategoryCategory .thum-list li,
.contentGpCategoryCategory .thum-list ul:after,
.contentGpCategoryCategory .thum-list-2 li,
.contentGpCategoryCategory .thum-list-2 ul:after {
  flex-basis: calc((100% - 2rem) / 3);
  border-bottom: none;
}

.contentGpCategoryCategory .thum-list ul:after,
.contentGpCategoryCategory .thum-list-2 ul:after {
  content: "";
  display: block;
}

.contentGpCategoryCategory .thum-list .image,
.contentGpCategoryCategory .thum-list-2 .image {
  display: block;
  margin-bottom: 0.5rem;
}

.contentGpCategoryCategory .thum-list .image img,
.contentGpCategoryCategory .thum-list-2 .image img {
  box-shadow: 0 0 3px var(--mono-color-5);
}

@media only screen and (max-width: 959px) {

  .contentGpCategoryCategory .thum-list li,
  .contentGpCategoryCategory .thum-list ul:after,
  .contentGpCategoryCategory .thum-list-2 li,
  .contentGpCategoryCategory .thum-list-2 ul:after {
    min-width: 260px;
    flex-grow: 1;
    /* max-width: 296px; */
  }
}