@charset "UTF-8";

/*************************************************************
TOP
*************************************************************/
/********* kv *********/
.c-kv-inner{
  position: relative;
}
.c-kv-img{
  display: none;
}
.c-kv-txt{
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.c-kv-txt h1{
  font-family: "Hiragino Mincho ProN", "Yu Mincho", "游明朝", "Noto Serif JP", serif;
  color: #fff;
  font-size: clamp(38px, 4vw, 50px);
  font-weight: bold;
  line-height: 1.5;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.75);
}
@media screen and (max-width: 767px){
  .c-kv-txt h1{
    font-size: clamp(25px, 6vw, 42px);
  }
}

/********* notice *********/
.c-notice{
  margin-top: 60px;
  padding: 0 20px;
}
.c-notice-inner{
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 35px 60px;
  background: #f4f4f4;
  border-left: 4px solid #e3007f;
  box-sizing: border-box;
}
.c-notice-item{
  margin-top: 25px;
}
.c-notice-inner .c-notice-item:first-child{
  margin-top: 0;
}
.c-notice-heading{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.c-notice-txt{
  margin-top: 10px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
}
.c-notice-txt a{
  color: #e3007f;
}
@media screen and (max-width: 767px){
  .c-notice{
    margin-top: 35px;
  }
  .c-notice-inner{
    padding: 15px 25px;
  }
  .c-notice-item{
    margin-top: 15px;
  }
  .c-notice-heading{
    font-size: 16px;
  }
  .c-notice-txt{
    margin-top: 5px;
    font-size: 14px;
  }
}

/********* 新刊目録 *********/
.c-catalogList{
  margin-top: 40px;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 10px;
}
.c-catalog-item{
  display: inline-block;
  width: calc(25% - 7.5px);
  min-width: 192px;
  padding: 25px 10px 15px;
  border: 1px solid #e3007f;
  border-radius: 10px;
  box-sizing: border-box;
  text-align: center;
}
.c-catalog-item img{
  max-width: 160px;
}
.c-catalog-item p{
  margin-top: 15px;
  font-size: 17.5px;
  font-weight: bold;
  line-height: 1.25;
  height: 45px;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
}
.c-catalog-item .c-icon__pdf{
  position: relative;
  padding-left: 25px;
}
.c-catalog-item .c-icon__pdf:before{
  content: "";
  background: url(../img/icon_pdf.svg) no-repeat;
  width: 18px;
  height: 19px;
  position: absolute;
  left: 0;
  top: 0;
}
.c-sectionMenu{
  margin-top: 60px;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 6.65%;
}
.c-sectionMenu-item{
  display: block;
  width: 46.675%;
  max-width: 500px;
  height: 320px;
  border-radius: 10px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  position: relative;
}
.c-sectionMenu-item img{
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}
.c-sectionMenu-item p{
  width: 100%;
  padding: 20px 30px;
  box-sizing: border-box;
  border-radius: 0 0 10px 10px;
  background: rgba(34, 38, 84, 0.85);
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  position: absolute;
  bottom: 0;
}
.c-sectionMenu-item p span{
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  position: relative;
}
.c-sectionMenu-item.c-sectionMenu-item__about p span{
  padding: 0 45px;
}
.c-sectionMenu-item.c-sectionMenu-item__detail p span{
  padding: 0 35px;
}
.c-sectionMenu-item p span:before{
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-sectionMenu-item.c-sectionMenu-item__about p span:before{
  background: url(../img/icon_about.svg) no-repeat;
  width: 41px;
  height: 20px;
  left: 0;
}
.c-sectionMenu-item.c-sectionMenu-item__detail p span:before{
  background: url(../img/icon_detail.svg) no-repeat;
  width: 20px;
  height: 30px;
  left: 10px;
}
@media screen and (max-width: 767px){
  .c-catalogList{
    margin-top: 25px;
  }
  .c-catalog-item{
    width: calc(50% - 5px);
    min-width: auto;
    padding: 20px 10px 15px;
  }
  .c-catalog-item img{
    width: 85%;
  }
  .c-catalog-item p{
    margin-top: 10px;
    font-size: 14px;
    height: auto;
  }
  .c-sectionMenu{
    margin-top: 40px;
    display: block;
  }
  .c-sectionMenu-item{
    width: 100%;
    margin: 25px auto 0;
    height: 260px;
    max-width: 380px;
  }
  .c-sectionMenu .c-sectionMenu-item:first-child{
    margin-top: 0;
  }
  .c-sectionMenu-item p{
    font-size: 16px;
  }
}

/********* お知らせ *********/
.c-news{
  margin-top: 30px;
}
.c-news-item{
  width: 100%;
  padding: 20px 25px;
  border-bottom: 1px dotted #595757;
  box-sizing: border-box;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 30px;
}
.c-news-date{
  width: 88px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 10px;
}
.c-news-date time{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
}
.c-news-date .c-news-tag__new{
  display: none;
}
.c-news-content{
  width: calc(100% - 88px - 30px);
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 10px;
}
.c-news-tag__new{
  width: 47.5px;
  padding: 0 5px;
  box-sizing: border-box;
  background: #e3007f;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: normal;
}
.c-news-content .c-news-tag__new{
  display: block;
}
.c-news-txt{
  font-size: 15px;
  font-weight: bold;
  line-height: 1.75;
}
.c-news-btn{
  margin-top: 40px;
  text-align: center;
}
.c-news-btn a{
  display: inline-block;
  width: 280px;
  background-color: #fff;
  padding: 15px 52px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
  border: 1px solid #e3007f;
  border-radius: 30px;
  position: relative;
}
.c-news-btn a:after{
  content: "";
  background: url(../img/icon_arrow_link.svg) no-repeat;
  width: 12px;
  height: 12px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-pagination{
  margin-top: 35px;
  text-align: center;
}
.c-pagination .c-pagination-inner{
  display: inline-block;
  padding: 0 55px;
  position: relative;
}
.c-pagination .page-numbers{
  margin: 0px 15px;
  color: #222654;
  font-size: 20px;
  font-weight: bold;
}
.c-pagination .page-numbers.current{
  color: #e3007f;
}
.c-pagination a.prev,
.c-pagination a.next{
  margin: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-pagination a.prev{
  left: 0;
}
.c-pagination a.next{
  right: 0;
}
.c-pagination .icon-prev,
.c-pagination .icon-next{
  width: 25px;
  height: 25px;
}
.c-pagination .icon-prev{
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
}
@media screen and (max-width: 767px){
  .c-news{
    margin-top: 10px;
  }
  .c-news-item{
    display: block;
    padding: 10px 0px;
  }
  .c-news-date{
    width: 100%;
  }
  .c-news-date time{
    font-size: 14px;
  }
  .c-news-date .c-news-tag__new{
    display: block;
    width: auto;
    font-size: 14px;
  }
  .c-news-content{
    margin-top: 5px;
    width: 100%;
  }
  .c-news-content .c-news-tag__new{
    display: none;
  }
  .c-news-txt{
    font-size: 14px;
    line-height: 1.5;
  }
  .c-news-btn{
    margin-top: 25px;
  }
  .c-news-btn a{
    width: 240px;
    padding: 15px 50px;
    font-size: 14px;
  }
  .c-news-btn a:after{
    width: 10px;
    height: 10px;
  }
  .c-pagination{
    margin-top: 25px;
  }
  .c-pagination .c-pagination-inner{
    padding: 0px 35px;
  }
  .c-pagination .page-numbers{
    margin: 0px 10px;
  }
  .c-pagination .page-numbers.dots{
    margin: 0;
  }
}


/*************************************************************
about
*************************************************************/
/********* 理事長挨拶 *********/
.c-heading-greeting{
  margin-bottom: 35px;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  column-gap: 20px;
}
.c-heading-greeting img{
  width: 160px;
}
.c-heading-greeting h2{
  width: calc(100% - 180px);
  color: #000;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
}
.c-lists-circle{
  margin: 15px 0;
}
.c-lists-circle li{
  margin-top: 5px;
  color: #000;
  font-size: 16px;
  line-height: 1.25;
  padding-left: 1em;
  text-indent: -1.25em;
}
.c-lists-circle li:first-child{
  margin-top: 0;
}
.c-lists-circle li:before{
  content: "● ";
}
.c-contents-greeting{
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 80px;
}
.c-contents-greeting .c-greeting-img{
  width: 340px;
}
.c-contents-greeting .c-greeting-img p{
  margin-top: 15px;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.c-contents-greeting .c-greeting-img p span{
  margin-bottom: 10px;
  display: block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
}
.c-contents-greeting .c-txt-area{
  width: calc(100% - 80px - 340px);
}
@media screen and (max-width: 767px){
  .c-heading-greeting{
    margin-bottom: 25px;
    display: block;
    text-align: center;
  }
  .c-heading-greeting h2{
    margin-top: 15px;
    width: 100%;
    font-size: 18px;
  }
  .c-lists-circle li{
    font-size: 14px;
  }
  .c-contents-greeting{
    display: block;
  }
  .c-contents-greeting .c-greeting-img{
    width: 100%;
    max-width: 340px;
    margin: 0 auto 50px;
  }
  .c-contents-greeting .c-greeting-img p{
    margin-top: 10px;
    font-size: 16px;
  }
  .c-contents-greeting .c-greeting-img p span{
    font-size: 12px;
  }
  .c-contents-greeting .c-txt-area{
    width: 100%;
  }
}
/********* 役員一覧 *********/
.c-heading_officers{
  text-align: center;
  line-height: 1.25;
}
.c-heading_officers h3{
  color: #000;
  font-size: 22px;
  font-weight: bold;
}
.c-heading_officers p{
  display: inline-block;
  margin-top: 5px;
  color: #898989;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
}
.c-officerList{
  margin-top: 30px;
}
.c-officerList .c-officerList-item{
  width: 100%;
  max-width: 250px;
  margin: 30px auto 0;
  padding: 0 0 0 30px;
  border-left: 1px solid #e3007f;
  box-sizing: border-box;
  color: #000;
  font-weight: 500;
  line-height: 1.25;
}
.c-officerList .c-officerList-item:first-child{
  margin-top: 0;
}
.c-officer-post p{
  font-size: 16px;
  font-weight: bold;
}
.c-officer-name{
  margin-top: 5px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px 15px;
}
.c-officer-name span{
  font-size: 14px;
  line-height: 1;
}
.c-officer-name p{
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .c-heading_officers h3{
    font-size: 18px;
  }
  .c-heading_officers p{
    font-size: 12px;
  }
  .c-officerList{
    margin-top: 20px;
  }
  .c-officerList .c-officerList-item{
    max-width: 210px;
    margin: 20px auto 0;
    padding: 0 0 0 20px;
  }
  .c-officer-post p{
    font-size: 14px;
  }
  .c-officer-name{
    gap: 3px 10px;
  }
  .c-officer-name span{
    font-size: 12px;
  }
  .c-officer-name p{
    font-size: 16px;
  }
}
/********* 委員会 *********/
.c-img-committee{
  width: 100%;
  max-width: 922px;
  margin: 40px auto 0;
}
.c-lists-committee{
  margin-top: 40px;
}
.c-lists-committee li{
  margin-top: 35px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
}
.c-lists-committee li:first-child{
  margin-top: 0;
}
.c-lists-committee li h2{
  font-size: 20px;
}
.c-lists-committee li p{
  margin-top: 5px;
}
@media screen and (max-width: 767px){
  .c-img-committee{
    margin-top: 25px;
  }
  .c-lists-committee{
    margin-top: 25px;
  }
  .c-lists-committee li{
    margin-top: 20px;
    font-size: 14px;
  }
  .c-lists-committee li h2{
    font-size: 18px;
  }
  .c-lists-committee li p{
    margin-top: 0;
  }
}


/*************************************************************
活動予定と履歴
*************************************************************/
.c-activities-heading{
  padding: 15px 10px;
  border-radius: 5px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
.c-activities-heading__scheduled{
  background: #e3007f;
}
.c-activities-heading__already{
  margin-top: 60px;
  background: #222654;
}
.c-activities-lists{
  margin-top: 40px;
}
.c-activities-lists li{
  margin-top: 25px;
  padding: 20px 25px;
  background: #f4f4f4;
  box-sizing: border-box;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}
.c-activities-lists li:first-child{
  margin-top: 0;
}
.c-activities-lists__scheduled li{
  border-left: 4px solid #e3007f;
}
.c-activities-lists__already li{
  border-left: 4px solid #222654;
}
.c-activities-item h3{
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: bold;
}
.c-activities-item h3 strong{
  margin-right: 15px;
  vertical-align: middle;
}
.c-activities-item h3 span{
  padding: 3px 5px;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  vertical-align: middle;
}
.c-activities-lists__scheduled .c-activities-item h3 span{
  background: #e3007f;
}
.c-activities-lists__already .c-activities-item h3 span{
  background: #222654;
}
.c-activities-item p{
  margin-top: 5px;
}
@media screen and (max-width: 767px){
  .c-activities-heading{
    padding: 10px 5px;
    font-size: 18px;
  }
  .c-activities-heading__already{
    margin-top: 30px;
  }
  .c-activities-lists{
    margin-top: 20px;
  }
  .c-activities-lists li{
    margin-top: 15px;
    padding: 15px 10px;
    font-size: 14px;
  }
  .c-activities-lists__scheduled li{
    border-left: 2px solid #e3007f;
  }
  .c-activities-lists__already li{
    border-left: 2px solid #222654;
  }
  .c-activities-item h3{
    font-size: 16px;
  }
  .c-activities-item h3 strong{
    margin-right: 10px;
  }
  .c-activities-item h3 span{
    font-size: 10px;
  }
}


/*************************************************************
協会刊行物
*************************************************************/
.c-publications{
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse;
  column-gap: 80px;
}
.c-publications .c-publications-img{
  width: 280px;
}
.c-publications-img p{
  margin-top: 15px;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.c-publications-img p span{
  margin-bottom: 10px;
  display: block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
}
.c-publications .c-publications-txt{
  width: calc(100% - 360px);
}
.c-publications-txt p{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}
.c-publications-txt p + p{
  margin-top: 25px;
}
.c-publications-linkList{
  margin-top: 80px;
}
.c-publications .c-publications-linkList{
  margin-top: 25px;
}
.c-publications-linkList li{
  margin-top: 20px;
  color: #000;
  font-size: 16px;
  font-weight: bold;
}
.c-publications-linkList li:first-child{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .c-publications{
    display: block;
  }
  .c-publications-img{
    margin: 0 auto 30px;
  }
  .c-publications .c-publications-txt{
    width: 100%;
  }
  .c-publications-img p{
    margin-top: 10px;
    font-size: 16px;
  }
  .c-publications-img p span{
    font-size: 12px;
  }
  .c-publications-txt p{
    font-size: 14px;
  }
  .c-publications-txt p + p{
    margin-top: 15px;
  }
  .c-publications-linkList {
    margin-top: 40px;
  }
  .c-publications-linkList li{
    margin-top: 15px;
    font-size: 14px;
  }
}


/*************************************************************
shop
*************************************************************/
.c-shopList-anc{
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 10px;
}
.c-shopList-anc li{
  width: calc(16.66% - 8.3px);
  min-width: 110px;
}
.c-shopList-anc li a{
  display: inline-block;
  width: 100%;
  padding: 15px 5px;
  border: 1px solid #e3007f;
  border-radius: 10px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
}
.c-shopList-note{
  margin-top: 10px;
  text-align: right;
}
.c-shopList-note p{
  display: inline-block;
  text-align: left;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
  position: relative;
  padding-left: 20px;
}
.c-shopList-note p:before{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.c-shopList-note p span:last-child{
  margin-right: 5px;
}
.c-shopList-tag{
  display: inline-block;
  padding: 0 5px;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  vertical-align: text-top;
}
.c-shopList-tag__specialist{
  background: #e3007f;
}
.c-shopList-tag__retailer{
  background: #222654;
}
.c-shopList-note p span + span {
  margin-left: 5px;
}
.c-shopList-region{
  padding-top: 35px;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}
.c-shopList{
  margin-top: 35px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 30px 0;
}
.c-shopList-item{
  width: 50%;
  padding: 0 25px;
  border-left: 1px solid #222654;
  box-sizing: border-box;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
}
.c-shopList-item a{
  color: #e3007f;
}
.c-shopList-name{
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0 10px;
  font-size: 16px;
  font-weight: bold;
}
.c-shopList-address{
  margin-top: 10px;
}
.c-shopList-telFax,
.c-shopList-url,
.c-shopList-mail{
  margin-top: 5px;
}
.c-shopList-telFax{
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 5px 15px;
}
@media screen and (max-width: 767px){
  .c-shopList-anc li{
    width: calc(33.33% - 6.66px);
    min-width: 105px;
  }
  .c-shopList-anc li a{
    padding: 10px 5px;
    font-size: 14px;
  }
  .c-shopList-note p{
    font-size: 12px;
  }
  .c-shopList-tag{
    font-size: 10px;
  }
  .c-shopList-region{
    padding-top: 20px;
    font-size: 20px;
  }
  .c-shopList{
    margin-top: 20px;
    display: block;
  }
  .c-shopList-item{
    width: 100%;
    margin-top: 20px;
    padding: 0 0 0 20px;
    font-size: 12px;
  }
  .c-shopList .c-shopList-item:first-child{
    margin-top: 0;
  }
  .c-shopList-name{
    font-size: 14px;
  }
}


/*************************************************************
copyright
*************************************************************/
.c-page-copyright{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}
.c-links_copyright{
  margin-top: 30px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 30px;
}
.c-links_copyright ul{
  width: 50%;
}
.c-page-copyright li{
  font-weight: bold;
}
.c-page-copyright .c-heading.c-heading__line + p{
  margin-top: 25px;
}
.c-page-copyright p + ul{
  margin-top: 30px;
}
.c-page-copyright ul + p{
  margin-top: 15px;
}
.c-links_copyrightDocument{
  margin: 20px 0 35px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 15px 10%;
}
.c-page-copyright table{
  width: 100%;
  max-width: 780px;
  margin-top: 15px;
  border: 1px solid #898989;
}
.c-page-copyright table tr{
  border-top: 1px solid #898989;
}
.c-page-copyright table tr:first-child{
  border-top: none;
}
.c-page-copyright table tr th,
.c-page-copyright table tr td{
  width: 33%;
  max-width: 260px;
  padding: 10px 5px;
  border-left: 1px solid #898989;
  box-sizing: border-box;
  font-weight: bold;
  text-align: center;
}
.c-page-copyright table tr th:first-child,
.c-page-copyright table tr td:first-child{
  border-left: none;
}
.c-page-copyright table tr th{
  background: #dcdddd;
}
.c-txt-area p{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
}
.c-txt-area p + p{
  margin-top: 35px;
}
.c-txt-area .c-heading + p{
  margin-top: 30px;
}
.c-copy-info{
  margin-top: 50px;
}
.c-copy-contact{
  margin: 5px 0;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0 20px;
}
.c-txt-area p a,
.c-copy-info a{
  color: #e3007f;
}
.c-links_forauthorDocument{
  margin-top: 25px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px 5%;
}
.c-links_forauthorDocument li{
  width: 40%;
}
.c-faq-copyright{
  margin-top: 25px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}
.c-faq-copyright p{
  margin-top: 25px;
  font-size: 18px;
  font-weight: bold;
}
.c-faq-copyright p:first-child{
  margin-top: 0;
}
.c-faq-copyright ul{
  margin-top: 10px;
}
.c-faq-copyright ul li{
  margin-top: 10px;
  position: relative;
  padding-left: 40px;
}
.c-faq-copyright ul li:first-child{
  margin-top: 0;
}
.c-faq-copyright ul li b{
  position: absolute;
  left: 0;
  top: 0;
}
.c-faq-copyright ul li a{
  color: #e3007f;
  font-weight: bold;
}
.c-heading_quot{
  margin-top: 35px;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.25;
}
.c-heading_quot + p{
  margin-top: 15px;
}
.c-quot-lists{
  margin-top: 20px;
}
.c-quot-lists .c-quot-item{
  margin-top: 15px;
  position: relative;
  padding-left: 30px;
}
.c-quot-lists .c-quot-item:first-child{
  margin-top: 0;
}
.c-quot-item .c-quot-itemNum{
  color: #000;
  font-size: 14px;
  font-weight: 500;
  position: absolute;
  left: 0;
  top: 0;
}
.c-quot-item .c-quot-itemNum b{
  font-size: 16px;
}
.c-quot-item p + p{
  margin-top: 0;
}
.c-quot-item .c-quot-itemTxt{
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
}
.c-quot-item .c-quot-itemTxt span{
  display: block;
  margin-bottom: 5px;
}
.c-quot-item .c-quot-itemTxt span b{
  font-size: 16px;
}
.c-quot-lists + p{
  margin-top: 35px;
}
@media screen and (max-width: 767px){
  .c-page-copyright{
    font-size: 14px;
  }
  .c-links_copyright{
    margin-top: 20px;
    display: block;
  }
  .c-links_copyright ul{
    margin-top: 25px;
    width: 100%;
  }
  .c-links_copyright ul:first-child{
    margin-top: 0;
  }
  .c-page-copyright .c-heading.c-heading__line + p{
    margin-top: 15px;
  }
  .c-page-copyright p + ul{
    margin-top: 20px;
  }
  .c-links_copyrightDocument{
    margin: 20px 0 25px;
    display: block;
  }
  .c-links_copyrightDocument li{
    margin-top: 15px;
  }
  .c-links_copyrightDocument li:first-child{
    margin-top: 0;
  }
  .c-txt-area p{
    font-size: 14px;
  }
  .c-txt-area p + p{
    margin-top: 25px;
  }
  .c-txt-area .c-heading + p {
    margin-top: 25px;
  }
  .c-copy-info {
    margin-top: 30px;
  }
  .c-copy-contact{
    margin: 10px 0 5px;
    display: block;
  }
  .c-copy-fax,
  .c-copy-mail{
    margin-top: 5px;
  }
  .c-links_forauthorDocument{
    margin-top: 20px;
    display: block;
  }
  .c-links_forauthorDocument li{
    margin-top: 15px;
    width: 100%;
  }
  .c-links_forauthorDocument li:first-child{
    margin-top: 0;
  }
  .c-faq-copyright{
    margin-top: 20px;
    font-size: 14px;
  }
  .c-faq-copyright p{
    font-size: 16px;
  }
  .c-faq-copyright ul li{
    padding-left: 35px;
  }
  .c-heading_quot{
    margin-top: 25px;
    font-size: 16px;
  }
  .c-quot-lists{
    margin-top: 15px;
  }
  .c-quot-item p + p{
    margin-top: 0;
  }
  .c-quot-lists .c-quot-item{
    margin-top: 10px;
    padding-left: 25px;
  }
  .c-quot-item .c-quot-itemNum{
    font-size: 12px;
    top: -1.75px;
  }
  .c-quot-item .c-quot-itemNum b{
    font-size: 14px;
  }
  .c-quot-item .c-quot-itemTxt{
    font-size: 12px;
  }
  .c-quot-item .c-quot-itemTxt span b{
    font-size: 14px;
  }
  .c-quot-lists + p{
    margin-top: 25px;
  }
}


/*************************************************************
faq
*************************************************************/
.c-faq{
  margin-top: 35px;
}
.c-faq-item{
  border-bottom: 1px dotted #898989;
}
.c-faq-heading{
  padding: 25px 0;
  cursor: pointer;
}
.c-faq-heading:hover{
  opacity: .8;
}
.c-faq-icon{
  font-family: 'Poppins', sans-serif;
  font-size: 26px;
  font-weight: 500;
  position: absolute;
  left: 0;
  top: -7.5px;
}
.c-faq-icon__q{
  color: #222654;
}
.c-faq-icon__a{
  color: #e3007f;
}
.c-faq-text{
  font-size: 16px;
  line-height: 1.5;
  overflow-wrap: break-word;
  position: relative;
  padding: 0 75px 0 65px;
}
.c-faq-heading .c-faq-text{
  font-weight: bold;
}
.c-faq-heading .c-faq-text:before,
.c-faq-heading .c-faq-text:after{
  content: "";
  width: 25px;
  height: 2px;
  background: #e3007f;
  position: absolute;
  right: 25px;
  top: 50%;
  transition: transform 0.3s ease;
}
.c-faq-heading .c-faq-text:before{
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-faq-heading .c-faq-text:after{
  transform: translateY(-50%) rotate(-90deg);
  -webkit-transform: translateY(-50%) rotate(-90deg);
  -ms-transform: translateY(-50%) rotate(-90deg);
}
.c-faq-heading.open .c-faq-text:after{
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-faq-content .c-faq-text{
  margin: 5px 0 25px;
  font-weight: 500;
}
.c-faq-text a{
  color: #e3007f;
}
.c-faq-content{
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}
.c-faq-intro{
  margin-top: 35px;
  padding: 25px 35px;
  background: #efefef;
}
.c-faq-intro p{
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}
.c-faq-intro p strong{
  font-weight: bold;
}
.c-faq-intro + .c-faq{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .c-faq{
    margin-top: 20px;
  }
  .c-faq-heading{
    padding: 15px 0;
  }
  .c-faq-icon{
    font-size: 20px;
    top: -5px;
  }
  .c-faq-text{
    font-size: 14px;
    padding: 0 30px 0 55px;
  }
  .c-faq-heading .c-faq-text:before,
  .c-faq-heading .c-faq-text:after{
    width: 15px;
    height: 2px;
    right: 0;
  }
  .c-faq-content .c-faq-text{
    margin: 5px 0 15px;
  }
  .c-faq-intro{
    margin-top: 20px;
    padding: 15px 20px;
  }
  .c-faq-intro p{
    font-size: 14px;
  }
}


/*************************************************************
catalogs
*************************************************************/
.c-catalog-contents h3{
  margin-top: 60px;
  padding: 0 30px 0 0;
  background: #fff;
  color: #000;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.25;
  position: relative;
  z-index: 1;
}
.c-catalog-contents h3:before{
  content: "";
  width: 100%;
  height: 1px;
  background: #e3007f;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: -1;
}
.c-catalog-contents h3 span{
  display: inline-block;
  background: #fff;
  margin-right: 20px;
  padding-right: 20px;
}
.c-catalog-contents ul{
  margin-top: 35px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 30px 0;
}
.c-catalog-contents ul li{
  width: 50%;
  padding: 0 25px;
  border-left: 1px solid #222654;
  box-sizing: border-box;
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
}
.c-catalog-contents ul li h4 strong{
  font-size: 18px;
  font-weight: bold;
  margin-right: 10px;
}
.c-catalog-contents ul li h4 small{
  padding: 1px 10px;
  border-radius: 10px;
  background: #222654;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap
}
.c-catalog-contents ul li p{
  margin-top: 10px;
  color: #222654;
  font-size: 14px;
  font-weight: bold;
}
.c-catalog-contents ul li span{
  display: inline-block;
  margin-top: 5px;
  font-size: 14px;
}
.c-catalogs-noData{
  margin-top: 40px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}
.c-catalogs-heading{
  color: #000;
  font-size: 22px;
  font-weight: bold;
  list-style: 1.25;
  text-align: center;
}
.c-catalogs-txt{
  margin-top: 25px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
.c-catalogs-txt p{
  display: inline-block;
  text-align: left;
}
.c-catalogs-txt ul{
  margin-top: 5px;
}
.c-catalogs-txt ul li{
  display: inline-block;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
  font-size: 14px;
}
.c-catalogs-txt ul li:before{
  content: "※";
}
.c-catalogs-btn{
  margin-top: 20px;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}
.c-catalogs-btn li a{
  display: block;
  border: 1px solid #e3007f;
  border-radius: 25px;
  color: #000;
  font-size: 16px;
  font-weight: bold;
  white-space: nowrap;
  position: relative;
}
.c-catalogs-btn li.c-btn-catalog_pdf a,
.c-catalogs-btn li.c-btn-catalog_txt a{
  padding: 15px 25px 15px 55px;
}
.c-catalogs-btn li.c-btn-catalog_arrow a{
  padding: 15px 50px 15px 25px;
}
.c-catalogs-btn li.c-btn-catalog_pdf a:before{
  content: "";
  background: url(../img/icon_pdf.svg) no-repeat;
  width: 20px;
  height: 21px;
  position: absolute;
  left: 25px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-catalogs-btn li.c-btn-catalog_txt a:before{
  content: "";
  background: url(../img/icon_txt2.svg) no-repeat;
  width: 20px;
  height: 21px;
  position: absolute;
  left: 25px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-catalogs-btn li.c-btn-catalog_arrow a:before{
  content: "";
  background: url(../img/icon_arrow_link.svg) no-repeat;
  width: 12px;
  height: 12px;
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
@media screen and (max-width: 767px){
  .c-catalog-contents h3{
    margin-top: 30px;
    padding: 0px 35px 0 0;
    font-size: 18px;
  }
  .c-catalog-contents h3 span{
    margin-right: 15px;
    padding-right: 15px;
  }
  .c-catalog-contents ul{
    margin-top: 20px;
    display: block;
  }
  .c-catalog-contents ul li{
    width: 100%;
    margin-top: 20px;
    padding: 0 0 0 20px;
    font-size: 12px;
  }
  .c-catalog-contents ul li:first-child{
    margin-top: 0;
  }
  .c-catalog-contents ul li h4 strong{
    font-size: 16px;
  }
  .c-catalog-contents ul li h4 small{
    font-size: 10px;
  }
  .c-catalog-contents ul li p{
    font-size: 12px;
  }
  .c-catalog-contents ul li span{
    font-size: 12px;
  }
  .c-catalogs-noData{
    font-size: 14px;
  }
  .c-catalogs-heading{
    font-size: 20px;
  }
  .c-catalogs-txt{
    margin-top: 15px;
    font-size: 14px;
  }
  .c-catalogs-txt ul{
    margin-top: 0;
  }
  .c-catalogs-txt ul li{
    font-size: 12px;
  }
  .c-catalogs-btn{
    display: block;
  }
  .c-catalogs-btn li{
    margin: 15px auto 0;
    width: 100%;
    max-width: 350px;
  }
  .c-catalogs-btn li:first-child{
    margin-top: 0;
  }
  .c-catalogs-btn li a{
    font-size: 14px;
  }
}
/********* archive *********/
.c-archive-txt{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}
.c-archive-lists{
  margin-top: 20px;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 15px 2%;
}
.c-archive-lists li{
  width: 32%;
}
@media screen and (max-width: 767px){
  .c-archive-txt{
    font-size: 14px;
  }
  .c-archive-lists{
    display: block;
  }
  .c-archive-lists li{
    margin-top: 15px;
    width: 100%;
  }
  .c-archive-lists li:first-child{
    margin-top: 0;
  }
}


/*************************************************************
検索
*************************************************************/
.search-result-list li{
  padding: 20px 15px;
}
.search-result-list li:nth-child(even){
  background: #f4f4f4;
}
.search-result-list li a{
  display: inline-block;
}
.search-result-list li a h3{
  color: #000;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.25;
}
.search-result-list li a p{
  margin-top: 5px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}
.search-result-list li a p span{
  color: #e3007f;
  font-weight: bold;
  text-decoration: underline;
}
@media screen and (max-width: 767px){
  .search-result-list li{
    padding: 10px;
  }
  .search-result-list li a h3{
    font-size: 16px;
  }
  .search-result-list li a p{
    font-size: 14px;
  }
}


/*************************************************************
sitemap
*************************************************************/
.c-sitemap{
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 20px;
}
.c-sitemap-item{
  width: 50%;
}
.c-sitemap-item .c-sitemap-lists{
  margin-top: 40px;
  color: #000;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.25;
}
.c-sitemap-item .c-sitemap-lists:first-child{
  margin-top: 0;
}
.c-sitemap-lists_outline{
  position: relative;
}
.c-sitemap-lists_outline:before{
  content: "";
  width: 1px;
  height: calc(100% - 35px);
  background: #e3007f;
  position: absolute;
  left: 12px;
  bottom: 0;
}
.c-list{
  position: relative;
  padding-left: 40px;
  font-weight: bold;
  line-height: 1.25;
}
.c-list:before{
  content: "";
  background: url(../img/icon_link.svg) no-repeat;
  width: 25px;
  height: 25px;
  position: absolute;
  left: 0;
  top: -3px;
}
.c-list_arrow{
  position: relative;
  padding-left: 15px;
}
.c-list_arrow:before{
  content: "";
  background: url(../img/icon_link_small.svg) no-repeat;
  width: 10px;
  height: 12px;
  position: absolute;
  left: 0;
  top: 3px;
}
.c-sitemap-lists .c-list-heading{
  padding: 5px 10px;
  background: #efefef;
  line-height: 1;
}
.c-list-icon{
  display: inline-block;
  position: relative;
  padding-left: 30px;
  font-weight: bold;
  line-height: 1.25;
}
.c-list-icon:before{
  content: "";
  width: 20px;
  height: 21px;
  position: absolute;
  top: 0;
  left: 0;
}
.c-list-icon_pdf:before{
  background: url(../img/icon_pdf.svg) no-repeat;
}
.c-list-icon_txt:before{
  background: url(../img/icon_txt.svg) no-repeat;
}
.c-list-icon_txt2:before{
  background: url(../img/icon_txt2.svg) no-repeat;
}
.c-list li,
.c-list p{
  margin-top: 15px;
}
.c-list + .c-list{
  margin-top: 20px;
}
.c-list-noLink{
  pointer-events: none;
}
@media screen and (max-width: 767px){
  .c-sitemap{
    display: block;
  }
  .c-sitemap .c-sitemap-item{
    margin-top: 25px;
    width: 100%;
  }
  .c-sitemap .c-sitemap-item:first-child{
    margin-top: 0;
  }
  .c-sitemap-item .c-sitemap-lists{
    margin-top: 25px;
    font-size: 14px;
  }
  .c-list:before{
    top: -5px;
  }
  .c-list_arrow:before{
    top: 2px;
  }
  .c-list-icon{
    font-size: 14px;
  }
  .c-list-icon:before{
    top: -2px;
  }
}


/*************************************************************
news
*************************************************************/
.c-news-heading{
  color: #000;
  font-weight: bold;
  line-height: 1.25;
}
.c-news-date{
  margin-bottom: 5px;
  font-size: 16px;
}
.c-news-ttl{
  font-size: 22px;
}
.c-news-contents{
  margin-top: 30px;
}
.c-news-contents *{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}
.c-news-contents p + p{
  margin-top: 20px;
}
.c-news-contents img{
  width: auto;
}
.c-btn-list_news{
  margin-top: 50px;
  text-align: center;
}
.c-btn-list_news a{
  display: inline-block;
  padding: 15px 50px;
  border-radius: 25px;
  background: #222654;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  .c-news-date{
    font-size: 14px;
  }
  .c-news-ttl{
    font-size: 20px;
  }
  .c-news-contents{
    margin-top: 20px;
  }
  .c-news-contents *{
    font-size: 14px;
  }
  .c-news-contents p + p{
    margin-top: 20px;
  }
  .c-btn-list_news{
    margin-top: 35px;
  }
  .c-btn-list_news a{
    padding: 15px 35px;
    font-size: 12px;
  }
}


/*************************************************************
お問い合わせ
*************************************************************/
.c-contact{
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}
.c-contact-txt{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
.c-contact-txt p{
  display: inline-block;
  text-align: left;
}
.c-contact-txt a{
  color: #e3007f;
}
.c-contact-form{
  margin-top: 35px;
}
.c-form-item + .c-form-item{
  margin-top: 30px;
}
.c-form-item label{
  display: inline-block;
  margin-bottom: 5px;
  color: #000;
  font-size: 16px;
  font-weight: bold;
}
.c-form-item label span{
  margin-left: 10px;
  padding: 1px 5px;
  background: #e3007f;
  color: #fff;
  font-size: 14px;
  vertical-align: top;
}
.c-form-item input,
.c-form-item textarea{
  width: 100%;
  padding: 10px;
  border: 1px solid #9fa0a0;
  border-radius: 5px;
  box-sizing: border-box;
  color: #000;
  font-size: 16px;
}
.c-form-inputValue{
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}
.c-contact-btn{
  margin-top: 50px;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  align-items: flex-start;
  column-gap: 15%;
}
.c-contact-btn > span{
  display: none;
}
.c-contact-btn > button,
.c-contact-btn > input,
.c-contact-btn > a{
  padding: 10px 80px;
  background: #222654;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  border: none;
  border-radius: 25px;
  cursor: pointer;
}
.c-contact-btn > button:hover,
.c-contact-btn > input:hover,
.c-contact-btn > a:hover{
  opacity: .8;
}
.c-form-error{
  display: block;
  margin-top: 5px;
  color: #e3007f;
  font-size: 14px;
  font-weight: 500;
}
.c-contact-form .wpcf7-response-output{
  display: none !important;
}
@media screen and (max-width: 767px){
  .c-contact-txt{
    font-size: 14px;
  }
  .c-contact-form{
    margin-top: 25px;
  }
  .c-form-item + .c-form-item{
    margin-top: 20px;
  }
  .c-form-item label{
    font-size: 14px;
  }
  .c-form-item label span{
    font-size: 12px;
  }
  .c-form-item input,
  .c-form-item textarea{
    padding: 7.5px;
    font-size: 14px;
  }
  .c-form-inputValue{
    font-size: 14px;
  }
  .c-contact-btn{
    margin-top: 35px;
    column-gap: 20px;
  }
  .c-contact-btn > button,
  .c-contact-btn > input,
  .c-contact-btn > a{
    padding: 10px 50px;
    font-size: 14px;
  }
  .c-form-error{
    font-size: 12px;
  }
}