/*追記*/
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100;0,200;0,300;1,100;1,200&family=Manrope:wght@200;300;400;500;600&family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap");
body {
    background: #fff;
    font-family: "Noto Serif JP", serif;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -ms-font-feature-settings: "palt";
    -moz-font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    word-break: break-word;
    font-size: 12px;
    line-height: 1.5;
    max-width: 1500px;
    margin: 0 auto;
}
main{
  position: relative;
}
.documents-pdf{
margin: 2rem auto 6rem;
text-align: center;
}
.documents-pdf-btm{
margin: 2rem auto 12rem;
text-align: center;
}
.documents-pdf img{
width: 100%;
}
.nav_follow .logo {
    font-size: 0.85rem;
    font-weight: 800;
    line-height: 1.15;
}
.f-logo-area .logo {
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.15;
}
@media screen and (max-width: 640px){
.documents-pdf {
    margin: 2rem auto 4rem;
    text-align: center;
}
.documents-pdf-btm{
    margin: 2rem auto 8rem;
  }
}
@media screen and (min-width: 640px){
  .documents-pdf img{
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
  }
  .nav_follow .logo{
    font-size: 1.36rem;
  }
  .f-logo-area .logo{
    font-size: 1.25rem;
  }
.top_access .access-box {
  display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
align-items: center;
}

.top_access .access-box .ggmap {
    width: 100%;
    margin: 0;
}
.top_access .access-box{
  padding:0 2rem;
  border-bottom:1px solid #212121;
}
.top_access .btn01 {
    margin: 50px auto 25px auto;
}
}

.btn01 a {
    background: linear-gradient(15deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 260%, rgba(0,0,0,1) 100%);
    color: #FFF;
    display: flex;
    align-items: center;
    padding: 10px 10px 10px 20px;
    border-radius: 6px;
}

/*header,toggle*/
.nav_follow {
    padding: 0 0 0 10px;
}
.nav_follow2 {
  background: #fff;
}
.toggle{
  right:10px;
}
.toggle span{
  width:90%;
}
.toggle.active span:nth-child(2), .toggle.active span:nth-child(3) {
    right: 0;
}

.global_nav_sp {
  background: rgba(255, 255, 255, 0.95);
}

.global_nav_sp ul li a {
  font-size: 16px;
  color: #212121;
}

.global_nav_sp a span {
    font-size: 12px;
    color: #ccc;
  }

@media screen and (min-width: 640px) {
    .fix-header {
    background: #FFF;
    }
    }


footer small {
  color: #212121;
  background: #fff;
  font-size: 0.5rem;
  border-top: 1px solid #bbb;
}

.foot_navi{
/* background: #fff; */
}

.foot_navi {
    background: rgba(0, 0, 0, 0.5);
}

.btn_totop a{
    background: linear-gradient(15deg, rgba(0,0,0,0.5) 20%, rgba(0,0,0,0.5) 200%, rgba(0,0,0,0.5) 100%);
    color: #fff;
    width: 4rem;
    height: 4rem!important;
    border-radius: 2rem;
}

.border-dash {
  border-bottom: 1px dashed #bbb !important;
}

#scroll-top{
  opacity: 0;
  transition: opacity 350ms ease;
}
.under-page-inner{
  padding-bottom: 3rem;
}
.under-section2{
  width: 100%;
max-width: 980px;
margin: 0 auto;
display: flex;
flex-direction: column;
align-items: center;
}
.head-text{
  width:100%;
  max-width: 1000px;
  margin: 2rem auto;
  font-size: 1rem;
}
.head-text img{
  width: 100%;
  margin-top: 2rem;
}

.under-section2 dl{
  font-size: 1rem;
}
.under-section2 dt{
  margin: 2rem 0 1rem;

}
.list-mark > p{
  margin-top: 1rem;
}
.list-mark-tt{
padding: 1rem 0 2rem;
}
.ptn2{
  margin-top:1rem;
}
.ptn2 dt{

}
.border{
  border-bottom: 1px solid #bbb;
  margin: 2rem 0 1rem;
}
.flex{
  display: flex;
}
.botom{
  display:block!important;
}
.dd-ttl {
    width: 8rem!important;
    display: block;
}
.dd-detail {
  /* width: calc(100% - 5rem) !important; */
  display: block;
}
table , td, th {
	border: 1px solid #ddc797;
	border-collapse: collapse;
  background: #fff;
}
td, th {
	padding: 0.5rem;
}
th{
  background: #eaddbf;
  color:#212121;
}
th:nth-child(1){
  width:10%;
}
th:nth-child(2){
  width:18%;
}
th:nth-child(3){
  width:50%;
}
th:nth-child(4){
  width:16%;
}
th:nth-child(5){
  width:12%;
}

td:nth-child(1){

}
td:nth-child(2){

}
td:nth-child(2){

}
td:nth-child(3){

}
td:nth-child(4){
text-align: center;
}
td:nth-child(5){
  text-align: center;
}

.under-page-inner > .under-section2:nth-of-type(n+2) {
  margin-top: 2rem;
}
.information_list{
  /* display: flex; */
  margin-bottom: 2rem;
  width:100%;
  }
  .information_list li{
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    align-items: center;
    padding: 1rem 0;
  }
  .information_list li:nth-child(odd){
    background: #fff;
  }
  .information_list h3{
    padding: 0.25rem 1rem 0;
      line-height: 1.4;
      font-size: 95%;
  }
  .information_list li{
    align-items: flex-start;
    flex-direction: column;
 }
 .information_list{

 }
 .information_list h3{
   width: 95%;
   display: flex;
     justify-content: flex-start;
     align-items: center;
 }
 .information_list .date{
   width: 40%;
   display: flex;
     justify-content: flex-end;
     align-items: center;
 }




.information_list li > img {
  max-width: 100%;
}
.information_list .date {
  justify-content: space-between;
  width: 100%;
  padding: 0;
  /* font-size: 80%; */
  font-weight: bold;
  margin: 0.5rem 0 0.25rem;
  flex-direction: unset;
  padding-right: 0.5rem;
    color: #789f9b;
    font-size: 90%;
}
.information_list h3 {
  padding: 0;
}
.information_list h3 + span {
  font-size: 95%;
}


.image img{
  width: 100%;
}
@media screen and (min-width: 1201px){
  .inner_page:has(.information_list) {
    width: 100%;
    max-width: 1000px;
  }
}
@media screen and (min-width: 769px){
  .information_list {
    justify-content: center;
  }
  .information_list li {
    width: 31%;
    margin: 0 1rem 0 0 ;
  }
  li:nth-of-type(3n) {
    margin-right: 0;
  }
  .information_list h3 {
    width: 100%;
  }
  .blog > .information_list .date {
    /* font-size: 70%; */
  }

  .blog > .information_list h3 {
    font-size: 90%;
  }
}

main.contents .information_list li {

  padding: 0.5rem !important;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 640px) {
  main.contents .information_list li {
    padding: 1rem !important;
    margin-bottom: 1rem;
  }
}
@media screen and (min-width: 640px) {
  .head-text{
    font-size: 1.1rem;
  }
.under-section2 dl{
  display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 1rem 0;
    line-height: 2;
    font-size: 1.1rem;
}
.under-section2 dt{
  width:100%;
}

.under-section2 dd{
  width:100%;
}
}

.sche-tbl th{
  width:33%;
}
tbody{
  width: 100%;
}
.under-section2{
  width:100%;
  max-width: 980px;
  margin: 0 auto;
}
.under-section2 td{
  text-align: center;
}
/* .exam dt{
  font-size: 120%;
}
.exam dd{
  margin-left: 1rem;
  padding: 2rem 0 1rem;
}
.exam-dd-s{
  font-size: 80%;
  padding: 0 0 2rem!important;
} */
.documents-width,
.minutes-body-width{
  width:100%;
  max-width: 900px;
  margin: 0 auto;
}
.documents-body img{
  width:100%;
  margin-top: 1rem;
}
.sitemap_navi_list .material-icons{
font-size: 28px;
vertical-align: bottom;
}
/* .exam dt {
  font-size: 110%;
  font-weight: bold;
}
.exam dd {
  margin: 0;
  padding: 1rem 0 0;
  font-size: 95%;
}
.exam dd:nth-of-type(1) {
  padding: 0;
}
.exam dd span {
  display: block;
}
.exam dd span.list-mark-child {
  font-size: 75%;
}
.exam dd span.list-mark-child table {
  border: 0;
  background: none;
}
.exam dd span.list-mark-child table td {
  background: none;
  padding: 0;
  border: 0;
} */
dl.ptn2:nth-of-type(2) dt.border {
  border: none;
  margin-bottom: 0;
}
dl.ptn2 dt {
  font-size: 1.2rem;
  line-height: 1.5;
  margin-bottom: 0;
  padding-bottom: 0.25rem !important;
  font-weight: bold;
}
/* dl.ptn2:nth-of-type(2) dt:not(:nth-of-type(1)) {
  padding: 1rem 1rem 0 0.5rem;
  border-top: 1px solid #bbb;
  border-left: 1px solid #bbb;
  border-right: 1px solid #bbb;
  font-size: 100%;
}
dl.ptn2:nth-of-type(2) dd {
  padding: 0 1rem 1rem 2rem;
  border-left: 1px solid #bbb;
  border-right: 1px solid #bbb;
  line-height: 1.5;
}
dl.ptn2:nth-of-type(2) dd:nth-last-of-type(1) {
  border-bottom: 1px solid #bbb;
} */
@media screen and (min-width: 640px) {
.spthead{
  display: none;
}
.exam dd span {
  display: inline;
}
}
@media screen and (max-width: 640px) {
  dd.list-mark span:nth-of-type(2) {
    padding-left: 1.35rem;
  }
  .ptn2 {
    font-size: 85%;
  }
  .sitemap-inner{
    width:93%;
  }
  .under-cont_titile{
    padding: 2rem 0 0;
  }
  .sitemap_navi_list-wrap {
    padding: 0;

}

tbody{
  font-size: 0.5rem;

}
thead{
  font-size: 0.5rem;
  /* position: relative!important; */
  /* background: #eaddbf; */
}
.pcthead{
  display: none;
}
.tbl-r05{
    /* position: relative!important; */
}
.tbl-r05 thead tr{
    position: relative!important;
}
th:nth-child(1){
  width:5%;
}
th:nth-child(2){
  width:18%;
}
th:nth-child(3){
  width:70%;
  /* position: absolute; */
  left:23%;
  top:0;
  border: none;
  border-bottom:1px solid #ddc797;
  border-left: 1px solid #ddc797;
  /* border-right: 1px solid #eaddbf; */
}
th:nth-child(4){
  width:69%;
  /* position: absolute; */
  left:23%;
  bottom: 1px;
  z-index: 1;
  /* border: none; */

  /* border-left: 1px solid #eaddbf; */
  border-right: 1px solid #ddc797;
}
th:nth-child(5){
  width: 2.6%;
/* position: absolute; */
right: 1px;
top: 0;
height: 54px;
border: none;
}
.under-section2{
width:93%;
margin: 0 auto;
}
.under-section2 th{
  position: unset;
  width:33%;
  border: 1px solid #ddc797;
    border-collapse: collapse;
}
td, th{
    padding:1rem 0.25rem;
}
}
.sch_cancel {
  position: relative;
}
.sch_cancel:before {
  content: '';
  display: block;
  background: #000;
  height: 1px;
  width: 87%;
  position: absolute;
  top: 50%;
  left: 7%;
}
@media screen and (min-width: 1200px){
  .tbl.sche-tbl {
    width: 100%;
  }
  .under-section2 td {
    width: 33.33333333%;
  }
}
.list-mark-safari {
  display: none !important;
}
_::-webkit-full-page-media, _:future, :root .list-mark-safari {
  margin-left: 0.2rem;
  padding: 0;
  display: inline !important;
}
.about-ptn2 {
  margin-top: 2rem;
}
.about-ptn2 td {
  margin-bottom: 0.5rem;
  width: auto;
  padding: 0;
}
.about-ptn2,
.about-ptn2 td,
.about-ptn2 th {
  background: none;
  border: 0;
  text-align: left;
}
.cat-navi-list {

}
.cat-navi-list ul {
  width: 100%;
  max-width: 768px;
  display: flex;
  justify-content: center;
  margin: auto;
  flex-wrap: wrap;
}
.cat-navi-list ul > li {
  width: 45%;
  font-weight: bold;
  text-align: center;
  margin: 0 0.5rem;
  margin-bottom: 1rem;
}
.cat-navi-list ul > li a {
    /* display: block; */
    width: 100%;
    height: 100%;
    /* background: linear-gradient(78deg, rgba(231, 42, 140, 0.8) 0%, rgba(251, 195, 0, 0.8) 90%); */
    border: 1px solid #b7b7b7;
    /* box-shadow: 2px 2px 0px 1px #d3d3d3; */
    /* border-radius: 20px; */
    padding: 0.5rem;
    display: flex;
    justify-content: center;
    color: #4a4a4a;
    font-weight: bold;
}
.cat-navi-list ul > li a.active {
  background: #ffe320;
}
.cat-navi-list ul > li a:before {
  content: '>';
  margin-right: 0.25rem;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 640px) {
  .cat-navi-list ul > li {
    width: 22%;
    margin-bottom: 0;
  }
}
.cat-navi-list02 ul {
  justify-content: space-between;
  width: 100%;
  max-width: 768px;
  display: flex;
  margin: auto;
  flex-wrap: wrap;
}
.cat-navi-list02 ul > li {
  width: 100%;
  margin: 0 0.5rem 1rem;
}

.cat-navi-list02 ul > li a {
  width: 100%;
  background: #fff;
  border: 1px solid;
  border-radius: 53px;
  padding: 0.5rem;
  display: flex;
  height: 60px;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  padding-right: 1rem;
  font-weight: bold;
}
.cat-navi-list02 ul > li a:before {
  content: '>';
  margin-right: 0.25rem;
  display: flex;
  align-items: center;
  width: 0.5rem;
}

@media screen and (max-width: 640px) {
  .cat-navi-list02 ul > li:nth-of-type(1) {
    margin-top: 1rem;
  }
  .cat-navi-list02 ul > li:nth-of-type(2) {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 640px) {
  .cat-navi-list02 ul {
    justify-content: space-between;
  }
  .cat-navi-list02 ul > li {
    width: 45%;
    margin-top: 2rem;
  }
}
/***************************************************************** 当財団について ********************************************************************/

.message-menu-wrap .message-menu-list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin: auto;
  flex-wrap: wrap;
  margin-top: 3rem;
}
.message-menu-wrap .message-menu-list > li {
  width: 100%;
  margin-bottom: 1rem;
}
.message-menu-wrap .message-menu-list > li > a {
  width: 100%;
  position: relative;
  display: block;
}
.message-menu-wrap .message-menu-list > li > a img {
  width: 100%;
}
.message-menu-wrap .message-menu-list > li > a p {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  background: rgba(0,0,0,0.5);
  color: #fff;
  padding: 1rem;
}
.message-menu-wrap .message-menu-list > li > a  p span {
  width: 100%;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: bold;
}
.message-menu-wrap .message-menu-list > li > a  p span:nth-of-type(2) {
  font-size: 0.75rem;
  margin-top: 0.5rem;
  font-weight: normal;
}

@media screen and (min-width: 640px) {
  .message-menu-wrap  {
    display: flex;
    flex-wrap: wrap;
  }
  .top_message-menu .top_inner_parent {
    padding: 1rem 0 0;
  }
  .message-menu-wrap .message-menu-list > li {
    width: 32.5%;
  }
  .message-menu-subscription-link {
    width: 66%;
  }
  .message-menu-subscription-link > div {
    width: 66%;
  }
  .message-menu-subscription-link span {
    font-size: 1.6rem;
    margin-left: 1.5rem;
    display: contents;
    white-space: nowrap;
  }
  .message-menu-detail-list {
    width: 25%;
    margin-bottom: 1rem;
    font-size: 1.25rem;
    margin-left: 2rem;
  }

}


/***************************************************************** 概要・沿革 ********************************************************************/

.overview-page {

}
.overview-page .under-cont_sin01 {
  margin-top: 2rem;
  width: 100%;
}
.overview-page .under-cont_sin01 dl.ptn2 {
  margin: 0;
  padding: 1rem 0;
  border-bottom: 1px solid #bbb;
}
.overview-page .under-cont_sin01 dl.ptn2 dt {
  font-weight: bold;
  margin: 0;
}
.overview-page .under-cont_sin01 dl.ptn2 dd {
  margin: 0;
}
@media screen and (min-width: 640px) {
}


/***************************************************************** 情報公開 ********************************************************************/

.disclosure-page {

}
.disclosure-page .under-cont_sin01 {
  margin-top: 2rem;
  width: 100%;
}
.disclosure-page .under-cont_sin01 dl.ptn2 {
  margin: 0;
  padding: 1rem 0;
  border-bottom: 1px solid #bbb;
}
.disclosure-page .under-cont_sin01 dl.ptn2 dt {
  font-weight: bold;
  margin: 0;
}
.disclosure-page .under-cont_sin01 dl.ptn2 dd {
  margin: 0;
}
.procurement.ptn2 {
  border: 0 !important;
}
.procurement.ptn2 .data-link,
.procurement.ptn2 .data-link li:nth-last-of-type(1){
  margin: 0;
}
.procurement.ptn2 dt a{
}
.procurement.ptn2 dd{
  padding: 1rem;
  border: 1px solid #bbb;
}
.procurement.ptn2 dd a{
}
@media screen and (min-width: 640px) {
}


/***************************************************************** 一般の方 ********************************************************************/

.public-page .message-menu-wrap .message-menu-list > li {
  width: 100%;
}
.public-page {

}
.public-page {

}
.public-page {

}
@media screen and (min-width: 640px) {
  .public-page .message-menu-wrap .message-menu-list > li {
    width: 32%;
  }
}

/***************************************************************** 当財団の意義 ********************************************************************/

/***************************************************************** 研究にご協力いただいている皆様へ ********************************************************************/

.collaborator-page {

}
.collaborator-page .table-wrap{
  overflow-x: auto;
}
.collaborator-page table{
  width: 768px;
  /* margin-top: 3rem; */
}
.collaborator-page th,
.collaborator-page td {
  font-size: 1rem;
  width: unset;
}
.collaborator-page th:nth-of-type(1),
.collaborator-page td:nth-of-type(1) {
  width: 15%;
}
.collaborator-page th:nth-of-type(2),
.collaborator-page td:nth-of-type(2) {
  width: 35%;
}
.collaborator-page th:nth-of-type(3),
.collaborator-page td:nth-of-type(3) {
  width: 35%;
}
.collaborator-page th:nth-of-type(4),
.collaborator-page td:nth-of-type(4) {
  width: 15%;
}


.collaborator-page {

}
.collaborator-page .data-more{
  width: 100%;
  font-size: 1rem;
  padding: 0.5rem 0;
}
@media screen and (min-width: 640px) {
  .collaborator-page .data-more{
    width: 100%;
  }
  .collaborator-page table {
    width: 100%;
  }
}


/***************************************************************** 研究用マテリアルの提供 ********************************************************************/

.material-page p {
  margin: 0;
  padding: 1rem;
}
.material-page .donations-list > li {
  width: 49%;
}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/***************************************************************** 幹細胞ストックの応用実績 ********************************************************************/
.clinical-trial-page p {
  margin: 0;
}
.clinical-trial-page .table-wrap{
  overflow-x: auto;
}
.clinical-trial-page table{
  width: 768px;
  /* margin-top: 3rem; */
}
.clinical-trial-page th,
.clinical-trial-page td {
  font-size: 1rem;
  width: unset;
}
.clinical-trial-page th:nth-of-type(1),
.clinical-trial-page td:nth-of-type(1) {
  width: 20%;
}
.clinical-trial-page th:nth-of-type(2),
.clinical-trial-page td:nth-of-type(2) {
  width: 20%;
}
.clinical-trial-page th:nth-of-type(3),
.clinical-trial-page td:nth-of-type(3) {
  width: 20%;
}
.clinical-trial-page th:nth-of-type(4),
.clinical-trial-page td:nth-of-type(4) {
  width: 20%;
}
.clinical-trial-page th:nth-of-type(5),
.clinical-trial-page td:nth-of-type(5) {
  width: 20%;
}


.clinical-trial-page {

}
.clinical-trial-page .data-more{
  width: 100%;
  font-size: 1rem;
  padding: 0.5rem 0;
}
@media screen and (min-width: 640px) {
  .clinical-trial-page .data-more{
    width: 100%;
  }
  .clinical-trial-page table {
    width: 100%;
  }
}



/***************************************************************** 発表論文 ********************************************************************/

.publication-page {

}
.publication-page .under-cont_sin01 {
  margin-top: 2rem;
  width: 100%;
}
.publication-page .under-cont_sin01 dl.ptn2 {
  margin: 0;
  padding: 1rem 0;
}
.publication-page .under-cont_sin01 dl.ptn2 > dt {
  font-weight: bold;
  margin: 0;
}
.publication-page .under-cont_sin01 dl.ptn2 > dt + dd {
  margin: 0;
}
.publication-page .under-cont_sin01 dl.ptn2 > dt + dd ul li dt {
  margin: 0;
  padding: 1rem 0 !important;
}
.publication-page .under-cont_sin01 dl.ptn2 > dt + dd ul li p {
  margin: 0;
}
.publication-page .under-cont_sin01 dl.ptn2 > dt + dd ul li dd a {
  display: table;
  border-bottom: 1px solid;
}
@media screen and (min-width: 640px) {
}



/***************************************************************** PMDA相談記録 ********************************************************************/

.pmda-page {

}
.pmda-page .under-cont_sin01 {
  margin-top: 2rem;
  width: 100%;
}
.pmda-page .under-cont_sin01 ul {
  margin: 0;
}
.pmda-page .under-cont_sin01 ul li {
  padding: 1rem 0;
  border-bottom: 1px solid #bbb;
}
.pmda-page .under-cont_sin01 ul li span {

}
.pmda-page .under-cont_sin01 ul li a {
  display: table;
  margin: 1rem 0;
  border-bottom: 1px solid;
}

@media screen and (min-width: 640px) {
}



/***************************************************************** プロトコル ********************************************************************/

.protocol-page li{
  padding: 0 0 1rem;
}
.protocol-page dl.ptn2 dd ul{
  margin-top: 1rem;
}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/***************************************************************** ご寄付のお願い ********************************************************************/

.support-message-page .cat-navi-list02 ul > li:nth-of-type(2){
  margin-bottom: 1rem;
}
.support-message-page {

}
.support-message-page {

}
@media screen and (min-width: 640px) {
  .support-message-page .cat-navi-list02 ul > li{
    width: 31%;
  }
}



/***************************************************************** ご寄付の方法 ********************************************************************/

.ways-page {

}
.ways-page dl.ptn2 {
  padding: 1rem;
  margin-top: 1rem;
}
@media screen and (min-width: 640px) {
}



/***************************************************************** お礼とご報告 ********************************************************************/

.gratitude-page table{
  width: 100%;
}
.gratitude-page th,
.gratitude-page td {
  font-size: 1rem;
  width: 50%;
}
@media screen and (min-width: 640px) {
}



/***************************************************************** 採用情報 ********************************************************************/

.recruitment-page {

}
.recruitment-page .under-cont_sin01 {
  margin-top: 2rem;
  width: 100%;
}
.recruitment-page .under-cont_sin01 ul.recruitment-list {
  margin: 0;
}
.recruitment-page .under-cont_sin01 ul.recruitment-list li {
  padding: 1rem 0;
  border-bottom: 1px solid #bbb;
}
.recruitment-page .under-cont_sin01 ul.recruitment-list li p {
  margin: 0;
  padding-bottom: 0;
  font-weight: bold;
}
.recruitment-page .under-cont_sin01 ul.recruitment-list li span {

}
.recruitment-page .under-cont_sin01 ul.recruitment-list li a {
  display: table;
  margin: 1rem 0;
  border-bottom: 1px solid;
}

@media screen and (min-width: 640px) {
}

/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}



/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}









/***************************************************************** よくある質問 ********************************************************************/

.faq-page details{

}
.faq-page summary{

}
.faq-page .faq-content-wrap{

}
.faq-page .faq-content{
  padding: 1rem 0;
}
.faq-icon {

}
details[open] .icon {

}
.faq-page summary {
  position: relative;
  display: block; /* 矢印を消す */
  padding: 10px 10px 10px 45px; /* アイコンの余白を開ける */
  cursor: pointer; /* カーソルをポインターに */
  font-weight: bold;
  background-color: #f4eedf;
  transition: 0.2s;
}
.faq-page summary:hover {
  background-color: #f4eedf;
}
.faq-page summary::-webkit-details-marker {
  display: none;　/* 矢印を消す */
}

/* 疑似要素でアイコンを表示 */

.faq-page summary:before {
  content: "&";
  position: absolute;
  margin: auto 10px;
  top: 0;
  bottom: 0;
  left: 0;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #ddc797;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}
.faq-page summary:after {
  content: ">";
  position: absolute;
  margin: auto 10px;
  top: 0;
  bottom: 0;
  right: 0;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  transform: rotate(90deg);
}

/* オープン時のスタイル */
.faq-page details[open] summary {
  background-color: #f4eedf;
}
.faq-page details[open] summary:after {
  transform: rotate(270deg);
}

/* アニメーション */
.faq-page details[open] .faq-content-wrap {
  animation: faqfadeIn 0.5s ease;
}
@keyframes faqfadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

.faq-page .cat-navi-list ul {
  justify-content: flex-start;
}
.faq-page .cat-navi-list li {
  width: 100%;
}
@media screen and (min-width: 640px) {
  .faq-page .cat-navi-list li {
    width: 45%;
    margin-bottom: 1rem;
  }
}
.faq-page .cat-navi-list {
  margin-top: 1rem;
}
.faq-page .ptn2 dd {
  border: none !important;
  padding: 0 !important;
}
.faq-page .ptn2 dt {
  border-bottom: 1px solid #bbb !important;
}

/***************************************************************** お問い合わせ ********************************************************************/

.customer-page  dl.ptn2 {
  /* background: #f8f8f8; */
  padding: 1rem;
  /* border: 1px solid #bbb; */
}

.customer-page .ptn2 dt {
  /* border-top: 1px solid #bbb !important; */
  border-bottom: 1px solid #bbb !important;
  padding: 1rem !important;
  margin: 0;
  text-align: center;
  font-weight: bold;
}
.customer-page .ptn2 dt:nth-of-type(1) {
  border-top: 0 !important;
}
.customer-page .ptn2 dd {
  padding: 1rem !important;
}

@media screen and (max-width: 640px) {

}
@media screen and (min-width: 640px) {
  .customer-page .ptn2 dd {
    text-align: center;
  }
}

/***************************************************************** フォーム ********************************************************************/

.form-page {

}
@media screen and (min-width: 640px) {

}

/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
}

/*****************************************************************  ********************************************************************/

.-page {

}
@media screen and (min-width: 640px) {
  .r-inner{

  }
}

/*****************************************************************  ********************************************************************/

.-page {

}

.r-inner{
  padding: 1.75rem 1rem 0rem;
}
.cont_titile.s-t{
border: 1px solid #fff;
/* margin: 0.75rem 0 ; */

}
.cont_titile.s-t p{
font-size: 1.5rem;
color:#fff!important;
}
.cont_titile.s-t span{
  font-size: 1rem;
  color:#fff!important;
  }
  .cont_titile.s-t h2{
padding: 0.65rem;
  }

  .cont_titile h2{
    padding: 3rem 1rem 1rem;
  }
  section{

  }

@media screen and (min-width: 640px) {
  .r-inner{
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 2.8rem 1rem;
  }
  .color3 {
    background: url(../img/rbg-pc.jpg);
    background-size: contain;
    background-repeat: repeat-x;
    height: 622px;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}
}


@media screen and (min-width: 640px) {

.cont_titile.s-t {
    border: 1px solid #fff!important;
    margin-bottom: 1rem!important;
    height: 88px !important;
}
.r-inner {
    width: 100%!important;
    max-width: 980px!important;
    margin: 0 auto!important;
    padding: 0.5rem 1rem!important;
}
}
@media screen and (max-width: 640px) {
.cont_titile.s-t {
  margin: 0.75rem 0!important;
  height: 88px !important;
}
.color3{
  height: 620px;
}
.r-inner{
  padding: 0.25rem 1rem 0!important;
}
}


.ico-tag116{
  background: #ec6501;
}
.ico-tag117{
  background: #155baa;
}
.ico-tag122 {
  background: #02acea;
}
.ico-tag123 {
  background: #02acea;
}



/*-----------accordion------------*/

#section01 article {
  position: relative;
  overflow: hidden; }
#section01 .largeLink,
#section01 .accordionTrigger {
  display: block;
  width: 100%;
  height: 146px;
  cursor: pointer;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
  @media only screen and (min-width: 751px), print {
    #section01 .largeLink:hover,
    #section01 .accordionTrigger:hover {
      /* background: rgba(0,0,0,0.25); */
    }
    }
  @media only screen and (min-width: 1px) and (max-width: 750px) {
    #section01 .largeLink,
    #section01 .accordionTrigger {
      height: 60px;
    }
      #section01 .largeLink:after,
      #section01 .accordionTrigger:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 0;
        /* background: rgba(0,0,0,0.25); */
        -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
        transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; } }
  #section01 .largeLink.active,
  #section01 .accordionTrigger.active {
    /* background: rgba(0,0,0,0.25); */
  }
    #section01 .largeLink.active .triggerInner .en,
    #section01 .accordionTrigger.active .triggerInner .en {
      color: #e2e2e2; }
    #section01 .largeLink.active .triggerInner:before, #section01 .largeLink.active .triggerInner:after,
    #section01 .accordionTrigger.active .triggerInner:before,
    #section01 .accordionTrigger.active .triggerInner:after {
      background: #e2e2e2;
      -moz-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg); }
    @media only screen and (min-width: 751px), print {
      #section01 .largeLink.active + .floatBtn,
      #section01 .accordionTrigger.active + .floatBtn {
        top: 90px;
        opacity: 1; } }
    @media only screen and (min-width: 1px) and (max-width: 750px) {
      #section01 .largeLink.active,
      #section01 .accordionTrigger.active {
        /* margin-bottom: 180px; */
      }
        #section01 .largeLink.active:after,
        #section01 .accordionTrigger.active:after {
          height: 180px;
        }
        #section01 .largeLink.active + .floatBtn,
        #section01 .accordionTrigger.active + .floatBtn {
          top: 290px;
          opacity: 1;
        }
        }
#section01 .largeLinkInner,
#section01 .triggerInner {
  display: flex;
  position: relative;
  width: 1150px;
  height: 100%;
  margin: auto;
  padding-left: 165px;
  color: #fff;
  flex-direction: column;
  justify-content: center; }
  @media only screen and (min-width: 1px) and (max-width: 750px) {
    #section01 .largeLinkInner,
    #section01 .triggerInner {
      padding-left: 4.5rem;
    }
  }
  #section01 .largeLinkInner .en,
  #section01 .triggerInner .en {
    font-size: 2rem;
    letter-spacing: 0.1rem;
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
    @media only screen and (min-width: 1px) and (max-width: 750px) {
      #section01 .largeLinkInner .en,
      #section01 .triggerInner .en {
        font-size: 1rem;
        line-height: 1.2;
      }
      }
  #section01 .largeLinkInner .jp,
  #section01 .triggerInner .jp {
    font-size: 1rem;
  }
    @media only screen and (min-width: 1px) and (max-width: 750px) {
      #section01 .largeLinkInner .jp,
      #section01 .triggerInner .jp {
        font-size: 1rem;
        /* line-height: 6rem; */
      }
      }
#section01 .triggerInner:before, #section01 .triggerInner:after {
  content: "";
  position: absolute;
  width: 1.2rem;
  height: 2px;
  top: 50%;
  left: 75px;
  margin-top: -1px;
  background: #fff;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
  @media only screen and (min-width: 1px) and (max-width: 750px) {
    #section01 .triggerInner:before, #section01 .triggerInner:after {
      left: 1rem;
    }
  }
#section01 .triggerInner:after {
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg); }
#section01 .largeLinkInner:before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 50%;
  left: 75px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg); }
  @media only screen and (min-width: 1px) and (max-width: 750px) {
    #section01 .largeLinkInner:before {
      left: 1rem;
    }
  }
#section01 .floatBtn {
  position: absolute;
  display: flex;
  width: 280px;
  height: 70px;
  top: 250px;
  left: calc(50% + 310px);
  color: #fff;
  font-size: 1.8rem;
  align-items: center;
  justify-content: center;
  opacity: 0;
  border-radius: 4px;
  background: #141414;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
  #section01 .floatBtn:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 50%;
    right: 40px;
    border-top: 2px solid #e2e2e2;
    border-right: 2px solid #e2e2e2;
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
  @media only screen and (min-width: 751px), print {
    #section01 .floatBtn:hover {
      background: #e2e2e2; }
      #section01 .floatBtn:hover:before {
        border-color: #fff; } }
  @media only screen and (min-width: 1px) and (max-width: 750px) {
    #section01 .floatBtn {
      width: 560px;
      height: 100px;
      left: 50%;
      font-size: 3rem;
      border-radius: 8px;
      -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%); }
      #section01 .floatBtn:before {
        width: 20px;
        height: 20px;
        right: 100px;
        border-width: 4px; } }
#section01 .accordion {
  display: none;
  position: relative; }
#section01 .contentList {
  display: flex;
  flex-wrap: wrap;
  background: rgba(0,0,0,0.25); }
  #section01 .contentList li {
    width: 33.333%; }
    @media only screen and (min-width: 751px), print {
      #section01 .contentList li:nth-child(3n) {
        width: 33.334%; } }
    @media only screen and (min-width: 1px) and (max-width: 750px) {
      #section01 .contentList li {
        width: 33.3%;
        height: 146px;
        height: auto;
      }
      }
  #section01 .contentList a {
    display: block;
    position: relative;
    width: 100%;
    color: #fff;
    font-size: 2rem;
    overflow: hidden; }
    #section01 .contentList a:before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background: rgba(0, 0, 0, 0.3);
      z-index: 2;
      -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
      -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
      -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
      -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
      transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s; }
    @media only screen and (min-width: 751px), print {
      #section01 .contentList a {
        padding-top: 53%; }
        #section01 .contentList a:hover:before {
          /* background: rgba(0, 140, 160, 0.6); */
        }
        }
    @media only screen and (min-width: 1px) and (max-width: 750px) {
      #section01 .contentList a {
        height: 100%;
        font-size: 1rem;
      }
    }
  @media only screen and (min-width: 751px), print {
    #section01 .contentList .imgWrap {
      position: absolute;
      width: 100%;
      top: 0;
      left: 0;
      z-index: 1; } }
  #section01 .contentList .imgWrap img {
    display: block;
    width: 100%; }
  #section01 .contentList .txtWrap {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    z-index: 3;
    text-shadow: 1px 1px 3px #000; }

#section01 {
  background: linear-gradient(to top, #de3b52 0%, #8f3c75 16%, #0049a3 24%, #77a7c6 48%, #39b03c 53%, #e8d85e 75%, #f18d00 95%, #e7350a 110%);

}
#about .accordionTrigger {
animation-fill-mode: forwards;
}
#service .accordionTrigger {}
#service2 .accordionTrigger {}
#ir .accordionTrigger {}
#ir .contentList a {}
#contact .largeLink {}
#dona .accordionTrigger,
#research .accordionTrigger,
#service .accordionTrigger,
#service2 .accordionTrigger,
#ir .accordionTrigger,
#ir .contentList a,
#contact .largeLink {
  border-top: 1px solid #fff;
}


@media only screen and (min-width: 751px), print {
  #ir .contentList li {
    width: 25% !important; }
    #ir .contentList li:nth-child(odd) a:not(:hover) {
      background: #141414; }
    #ir .contentList li:nth-child(even) a:not(:hover) {
      background: #212121; }
    #ir .contentList li:nth-child(n+5):nth-child(odd) a:not(:hover) {
      background: #212121; }
    #ir .contentList li:nth-child(n+5):nth-child(even) a:not(:hover) {
      background: #141414; } }
@media only screen and (min-width: 1px) and (max-width: 750px) {
  #ir .contentList li a {
    background: #212121; }
  #ir .contentList li:nth-child(4n) a, #ir .contentList li:nth-child(4n+1) a {
    background: #141414; } }
  #ir .contentList a:before {
    display: none; }


    #section01 .floatBtn{
display: none!important;
    }
    #section01 h2{
      font-weight: 600;
    }
    #contact .en,
    #contact .jp{
      font-weight: 600;
    }
    #section01{
      margin-bottom: 2rem;
    }


    @media only screen and (max-width: 640px){
    .foot_navi_list.li-a li:first-child {
      display: flex;
      background: linear-gradient(to bottom, #f18d00 0%, #e7350a 100%);
      padding: 1rem;
      margin-bottom: 0 !important;
    }
    .foot_navi_list.li-b li:first-child {
      display: flex;
      background: linear-gradient(to bottom, #e8d85e 0%, #f18d00 100%);
      padding: 1rem;
      margin-bottom: 0 !important;
    }

    .foot_navi_list.li-c li:first-child {
      display: flex;
      background: linear-gradient(to bottom, #39b03c 0%, #e8d85e 100%);
      padding: 1rem;
      margin-bottom: 0 !important;
    }

.foot_navi_list.li-d li:first-child {
  display: flex;
  background: linear-gradient(to bottom, #0049a3 0%, #77a7c6 100%);
  padding: 1rem;
  margin-bottom: 0 !important;
}

.foot_navi_list.li-e li:first-child {
  display: flex;
  background: linear-gradient(to bottom,  #8f3c75 0%, #0049a3 100%);
  padding: 1rem;
  margin-bottom: 0 !important;
}
.foot_navi_list.li-f li:first-child {
  display: flex;
  /* background: linear-gradient(to top, #de3b52 0%, #8f3c75 16%, #0049a3 24%, #77a7c6 48%, #39b03c 53%, #e8d85e 75%, #f18d00 95%, #e7350a 110%); */
  background: linear-gradient(to bottom, #de3b52 0%, #8f3c75 100%);
  padding: 1rem;
  margin-bottom: 0 !important;
}
    }
    @media only screen and (min-width: 640px){
    footer ul.foot_navi_list a{
      font-size:0.75rem;
    }
  }
  footer .logo{
    margin: 4rem auto 0rem;
    width: 55%;
  }
  .tel-hours {
    width: 50%;
    text-align: center;
margin: 1rem 0 8rem;
  }

  .tel-hours li.organization_name {
    flex-wrap: wrap;
  }

  .tel-hours li.organization_name span {
    display: block;
    width: 100%;
    margin-top: 0.5rem;
  }
  .tel-hours li.organization_name span:nth-of-type(1) {
    font-size: 1rem;
  }
  .tel-hours li.organization_name span:nth-of-type(2) {
    font-size: 0.5rem;
  }
  .tel-hours li a {

  }

  .tel-hours li {
   font-size: 0.9rem;
      padding: 0;
      line-height: 1.6;
      display: flex;
      letter-spacing: 1px;
      margin: 0 auto;
      width: fit-content;
      text-align: left;
  }
  .tel-hours li a,
  .tel-hours li:not(.adress,.organization_name) {
    font-size: 0.85rem;
    white-space: nowrap;
    padding: 0;
  }
  .adress{
    padding: 3rem 0!important;
  }
  .tel-hours{
    width:100%;
  }
  .tel-hours li{
    font-size: 11px;
  }
  .massage{
    font-size: 0.9rem;
padding-bottom: 3rem;
  }
  .massage ul {
    display: flex;
    flex-direction: column;
}
.massage ul li span{
font-weight: 300;
font-size: 0.75rem;
}
.massage ul li .name-a{
  font-weight: 100;
  font-size: 1rem;
  }
.massage ul .li-text{
 padding: 1rem;
}
  .massage img{
    width: 100%;
  }
  .link ul{
    display: flex;
    justify-content: flex-start;
    align-content: center;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1rem 4rem;
  }
  .link ul li{
    width: 50%;
  }
  .link img{
width: 100%;
padding: 0.5rem 0.8rem;
  }

  @media only screen and (min-width: 640px){
    .link ul{
      display: flex;
      justify-content: space-evenly;
      padding: 0 1rem 6rem;
    }
    .link ul li{
      width: 20%;
    }

    .massage{
      width: 100%;
      max-width: 1000px;
      margin: 0 auto;
    }
    .massage ul {
      display: flex;
      flex-direction: row;
  }
  .massage ul .li-text{
    padding: 1rem 0 1rem 2rem;
    font-size: 0.9rem;
   }
   .tel-hours {
    margin: 0rem 0 0rem;
}
.adress {
  padding: 1rem 0 !important;
}
.foot_navi_list-wrap{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  margin-bottom: 4rem;
  padding: 1rem 0;

}
.foot_navi_list-wrap a{
font-size: 0.7rem;
}
footer .logo {
  margin: 2rem auto 2rem;
   width: 200px;
}
footer ul.foot_navi_list li:nth-of-type(1) a {
  /* display: none; */
  color:#848484;
  text-decoration: underline;
}
  }

  .top_inner_parent{
  animation-fill-mode: forwards;
  }


  .contents_header {
position: relative;
  }
  .tt-wrap{
    position: absolute;
    z-index: 1;
    color:#000;
    width: 50%;
    left:20%;
          filter: drop-shadow(1px 0px 2px white) drop-shadow(0px 1px 2px white);
      }
  .under-mov{
    width: 100% !important;
    /* z-index: -1; */
    position: absolute;
    overflow: hidden;
    height: 21rem !important;
    z-index: 0;
    display: none;
  }
  .under-mov .top_mv {

    width: 100%;
    /* box-sizing: border-box; */
    /* overflow: hidden; */
    padding: 0;
    margin: 0 auto;
    /* margin-left: -2rem; */
  }

  .under-mov .top_mv video {
    width: 100%;
    /* height: 90vh; */
    /* overflow: hidden; */
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-content: flex-start;
  }
  .toggle span {
    filter: drop-shadow(0px 1px 0px #fff) drop-shadow(1px 0px 0px #fff);
  }
  @media screen and (min-width: 640px) {
    .under-mov .top_mv {
      width: 100%;
      box-sizing: border-box;
      margin: 0 auto;
      padding: 0;
      /* transform: translate(-75%, -30%); */
    }

    .under-mov .top_mv video {
      width: 100%;
      height: 100%;
      overflow: hidden;
    }
  }
  @media screen and (max-width: 640px) {
    .under-mov{
      height: 10rem !important;
      display: none;
    }
    .tt-wrap{
      width: 100%;
      left:0;
    }
  }
  .archive{
margin-bottom: 2rem;
  }

.overv-1{
  font-weight: 700;
  font-size: 1.2rem;
  padding-left: 1.5rem;
}
.overv-2{

}
.overv-3{
  font-weight: 700;

}

.sm-ul {
    display: flex;
    margin-bottom: 0 !important;
    flex-wrap: wrap;
        justify-content: space-evenly;

    width:100%;
}
  .sm-ul li {
    display: flex;
    flex-direction: column;
    font-size: 0.75rem;
    font-weight: bold;
    text-align: center;
    justify-content: center;
    align-items: center;
      width:31%;
      margin-bottom: 4rem;
  }
.gackt{
    width: 100%;
}
  .sm-ul li img {
    width: 100%;
    margin-bottom: 0.5rem;
  }

@media screen and (min-width: 640px) {
.sm-ul li:nth-child(1),
      .sm-ul li:nth-child(2){
        width: 48%;
    }
}
@media screen and (max-width: 640px) {
    .sm-ul{
        justify-content: space-between;
    }
    .sm-ul li {
        width: 48.5%;
          margin-bottom: 2rem;
    }
.sm-ul li:nth-child(1),
      .sm-ul li:nth-child(2){
        width: 100%;
    }
}



.saport-company{


}
.member-price-block {
    padding: 36px 24px;
    margin: 36px 0;
    border: 1px solid #00655a;
    border-radius: 6px
}

.member-price-block .member-price-block__container {
    max-width: 280px;
    margin: 0 auto
}

.member-price-block .member-price-block__row {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.member-price-block .member-price-block__row:not(:first-of-type) {
    margin-top: 16px
}

.member-price-block .member-price-block__title {
    font-family: "\6e38\660e\671d",yumincho,"Hiragino Mincho ProN W3","\30d2\30e9\30ae\30ce\660e\671d  ProN W3","Hiragino Mincho ProN","HG\660e\671d E","\ff2d\ff33  \ff30\660e\671d","\ff2d\ff33  \660e\671d",serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: .05em
}

.member-price-block .member-price-block__price {
    font-family: "\6e38\660e\671d",yumincho,"Hiragino Mincho ProN W3","\30d2\30e9\30ae\30ce\660e\671d  ProN W3","Hiragino Mincho ProN","HG\660e\671d E","\ff2d\ff33  \ff30\660e\671d","\ff2d\ff33  \660e\671d",serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .05em
}

.member-price-block .member-price-block__number {
    margin-right: 4px;
    font-size: 18px
}
.top-nav {
  display: flex;
  justify-content: space-between;
}

.top-nav ul {
  max-width: 1100px !important;
}

.top-nav ul li {
  width: 30% !important;
}

.btn01 {
  width: 100%;
}

.btn01 a {
  width: 100%;
  background: #fff;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 10px 10px 20px;
  border-radius: 3rem;
  box-sizing: border-box;
  margin: 0 auto;
  border: 1px solid #000;
  font-size: 0.75rem;
}


.k-btn li:nth-of-type(1) a {
  color: #f8b402 !important;
  border: 1px solid #f8b402;
}

.k-btn li:nth-of-type(2) a {
  color: #00a6c0 !important;
  border: 1px solid #00a6c0;
}

.k-btn li:nth-of-type(3) a {
  color: #932675 !important;
  border: 1px solid #932675;
}

.btn01 a .material-icons {
  font-size: 20px !important;
}

@media screen and (max-width: 640px) {
  .top-nav ul li {
    width: 32% !important;
  }
}

.activity {
  margin-top: 0 !important;
}

.activity h2 {
  padding-top: 0 !important;
}



.link-btn-w {
  background: red;
  color: #fff !important;
  padding: 0.25rem 0.5rem;
  margin-top: 0.5rem;
  border-radius: 0.25rem;
}

.catch {
  position: absolute;
  top: 55%;
  bottom: 0;
  left: 1rem;
  z-index: 100;
  filter: drop-shadow(1px 1px 1px #fff) drop-shadow(-1px -1px 1px #fff) drop-shadow(0px 0px 1px #fff);
}
.catch-tt {
  font-size: 1.6rem;
}
.catch-dd {
  font-size: 1.1rem;
}
.aisatsu {
}
.aisatsu-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.aisatsu-img {
  width: 54%;
}
.aisatsu-t {
  display: flex;
  width: 46%;
  flex-direction: column;
  justify-content: center;
  padding-left: 1rem;
}
.aisatsu-d {
  padding: 0 1rem;
}
.aisatsu-name {
  font-size: 115%;
  margin-top: 0.25rem;
}
.ohen-a {
  margin-top: 2rem;
}
.jigyo {
}
.jigyo-box {
  padding: 0.5rem 1rem;
}
.jigyo-box-wrap {
  border: 1px solid #bbb;
  padding: 0.75rem;
  line-height: 1.4;
}
.jigyo-img {
  width: 100%;
  display: flex;
}
.flex-right .jigyo-img {
  flex-direction: row-reverse;
}

.jigyo-img img {
  width: 51%;
}
.jigyo-d {
  padding-top: 0.5rem;
}
.jigyo-t {
  display: flex;
  color: #0068b6;
  font-weight: 800;
  align-items: center;
  justify-content: center;
  width: 49%;
  font-size: 114%;
}

.jigyo-box-sub .jigyo-box-wrap {
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
}
.jigyo-box-sub .jigyo-box-wrap img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.jigyo-box-sub .jigyo-box-wrap .jigyo-img {
  width: 28%;
}
.jigyo-box-sub .jigyo-box-wrap .jigyo-d {
  width: 72%;
  padding-top: unset;
  padding-right: 0.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.jigyo-box-sub .jigyo-t {
  width: 100%;
  padding-bottom: 0.25rem;
}

.information_list li {
  width: 100% !important;
  display: flex;
  flex-direction: row !important;
  border-bottom: 1px solid #bbb;
}
.info-img {
  width: 20%;
}
.info-dd-wrap {
  width: 80%;
}
.info-btn {
  background: #c1c1c1;
  outline: solid 2px #c1c1c1;
  outline-offset: 2px;
  box-sizing: border-box;
}
.info-btn a {
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  padding: 0.25rem 0;
}
.big-btn {
    color: #fff;
    padding: 0.5rem 1rem;
    margin: 0 auto;
    filter: drop-shadow(0px 0px 20px #ccc);
        width: 80%;
}
.big-btn .cont_titile h2,
.big-btn .cont_titile h2 p {
  text-align: center !important;
  color: #fff;
}
.btn-color-c .cont_titile h2,
.btn-color-c .cont_titile h2 p {
  text-align: center !important;
  color: #212121;
}
.btn-color-a {
  background: #ff4c3e;
  padding: 0 1rem 2rem;
  filter: drop-shadow(5px 4px 0px #ff0c00);
}
.btn-color-b {
  background: #0a6bb8;
  padding: 0 1rem 2rem;
  filter: drop-shadow(5px 4px 0px #1800ff);
}
.btn-color-c {
  background: #f9f9f9;
  padding: 0 1rem 2rem;
}
.btn-color-c .big-btn-click-b a {
  background: #fff;
  color: #727272;
  border: 1px solid #727272;
  padding: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
}
.btn-color-c .big-btn-click-b {
  position: relative;
  width: 95%;
  height: 100%;
  z-index: 0;
  margin-top: 1rem;
}
.btn-color-c .big-btn-click-b ::before {
  background: #fff;
  height: 3rem;
  border: 1px solid #727272;
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0.5rem;
  left: 0.5rem;
  z-index: -1;
}
.big-btn-click {
  display: flex;
  justify-content: center;
  margin-top: 1rem;
}
.big-btn-click a {
  display: flex;
  border: 1px solid #fff;
  color: #fff;
  align-items: center;
  justify-content: center;
  width: 12rem;
}
.gaiyou-t {
  background: #788f9b;
  color: #fff;
  text-align: center;
}
.gaiyou-d {
  padding: 1rem;
}
.riji li {
  border-top: 1px solid #bbb;
  padding: 2rem 1rem;
}
.riji-name {
  font-size: 150%;
  padding-bottom: 1rem;
}
.riji-name span {
  font-size: 75%;
  margin-right: 0.5rem;
}

.top_information {
  padding: 0 1rem;
  padding-bottom: 3rem;
}

@media screen and (max-width: 640px) {
  .pc{
    display:none;
  }
}
@media screen and (min-width: 640px) {
    .mainvisual {
        height: 75vh !important;
    }

  .activity {
    margin-top: 0 !important;
  }
}
.cont_titile h2{
  text-align: left;
}
.cont_titile h2 span{
  font-size: 1.5rem;
  font-weight: 500;
}
.cont_titile h2 p{
  color:#788f9b;
  font-size: 75%;
}
.seturitu .cont_titile h2{
  padding: 2rem 0rem 1rem;
}
.seturitu{
  width: 100%;
  background: linear-gradient(to left, rgba(255, 255, 255, 0.9)0%, rgba(255, 255, 255, 0.9) 100%), url(../img/logo-bg.png);
  background-size: 70%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 1rem;
}
.seturitu-box{
background: rgba(41,170,225,0.15);
padding: 0rem 0.75rem 3rem;
}

  .information_list li {
    width: 100%;
    display: flex;
  }
  small {
    font-size: 80%;
    text-align: center;
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0.5rem 0;
    height: 2rem;
}
.btn_totop{
  display: none;
}
.toggle.active span{
  border-bottom: solid 1px #000;
}
#gaiyou-link{
padding-top: 5rem;
}
@media screen and (min-width: 640px) {
body{
  font-size: 14px;
  line-height: 1.8;
}
.nav_follow{
/* background: #fff!important; */
filter: drop-shadow(1px 1px 8px #bbb);
color: #636363;
}
.global-nav_list a {
  font-size: 1rem;
  filter: drop-shadow(1px 1px 1px #fff) drop-shadow(-1px -1px 1px #fff) drop-shadow(0px 0px 1px #fff);
      padding: 0 1rem;
}
.global-nav_list li {
  padding: 0rem 1rem 0!important;
}
.toggle{
  display: block!important;
}
.global-nav.pc.menu{
display: none;
}
.nav_follow_top > div, .nav_follow div {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}
.catch{
  left:unset;
  top: 40%;
}
.catch-tt{
  font-size: 3rem;
}
.catch-dd{
  font-size: 1.5rem;
}
.catch-center{
  width: 100%;
max-width: 800px;
margin: 0 auto;
}
  .max-width{
    width: 100%;
    max-width: 880px;
    margin: 0 auto;
    padding: 3rem 0;
  }
  .seturitu-box{
    padding: 4em 4rem 5rem;
  }
  .aisatsu{
    padding-bottom: 4rem;
  }
  .aisatsu-wrap {
    width: 96%;
    margin: 0 auto 2rem;
}
.aisatsu-d{
  width: 100%;
  margin: 0 auto 2rem;
}
.aisatsu-t{
padding-left: 4rem;}
.ohen-a {
  width: 100%;
  max-width: 880px;
  margin: 0 auto;
  margin-top: 2rem;
}
.jigyo-img img {
  width: 37%;
}
.jigyo-t{
  width: 63%;
  font-size: 150%;
}
.jigyo-box-wrap {
  padding: 4rem;
}
.jigyo-d{
  padding-top: 2rem;
}
.jigyo-box-sub .jigyo-box-wrap .jigyo-img {
  width: 15%;
}
.jigyo-box-sub .jigyo-box-wrap .jigyo-d{
  width: 85%;
}
.top_inner{
  width: 100%;
  margin: 0 auto;
}
.top-btn{
  display: flex;
  margin-top: 4rem;
  margin-bottom: 3rem;
}
.btn-color-c {
        width: auto;
        /* padding: 2rem 2rem 2rem; */

}

.btn-color-d {
        width: auto;
        /* padding: 2rem 2rem 2rem !important; */
}
.btn-color-c .big-btn-click-b{
  margin-top: 3rem;
}
    .btn-color-d .big-btn-click-b {
        margin-top: 3rem !important;
    }
}


.blog.single img {
  width: 90%;
  margin: 0 0 5% 5%;
  height: 50%;
}

.top-btn-c {
    color: #212121;
}

.btn-color-d {
    background: #009999;
    padding: 0 1rem 2rem;
}

.btn-color-d .cont_titile h2, .btn-color-d .cont_titile h2 p {
    text-align: center;
    color: #fff;
}

.btn-color-d .big-btn-click-b {
    position: relative;
    width: 95%;
    height: 100%;
    z-index: 0;
    margin-top: 1rem;
}

.btn-color-d .big-btn-click-b a {
    background: #fff;
    color: #727272;
    border: 1px solid #727272;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}

.btn-color-d .big-btn-click-b ::before {
    background: #fff;
    height: 3rem;
    border: 1px solid #727272;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0.5rem;
    left: 0.5rem;
    z-index: -1;
}


/* 寄付フォーム全体 */
.donation-form {
  max-width: 800px;
  margin: 0 auto 40px;
  padding: 20px 25px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fff;
}

/* ラベル・テキストの基本 */
.donation-form p {
  margin: 0 0 15px;
}

/* 必須マーク */
.donation-form .required-mark {
  display: inline-block;
  margin-left: 4px;
  padding: 2px 6px;
  font-size: 12px;
  color: #fff;
  background: #FF5270;
  border-radius: 3px;
}

/* 小さな注釈 */
.donation-form .note-small {
  font-size: 12px;
  color: #666;
}

/* インプット・セレクト・テキストエリア */
.donation-form input[type="text"],
.donation-form input[type="tel"],
.donation-form input[type="email"],
.donation-form input[type="date"],
.donation-form select,
.donation-form textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 10px;
  border-radius: 4px;
  border: 1px solid #ccc;
  height:  2.5rem;
}

/* テキストエリア高さ */
.donation-form textarea {
  min-height: 120px;
}

/* 送信ボタン周り */
.donation-form .submit-area {
  text-align: center;
  margin-top: 20px;
}

/* CF7デフォルトボタンの見た目調整 */
.donation-form input.wpcf7-submit {
  padding: 10px 40px;
  border-radius: 30px;
  border: none;
  background: #008fd6;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
}
.donation-form input.wpcf7-submit:hover {
  opacity: 0.85;
}

/* プライバシー注記 */
.donation-form .privacy-note {
  font-size: 13px;
  color: #666;
  margin-top: 15px;
}

/* スマホ調整 */
@media (max-width: 767px) {
  .donation-form {
    padding: 15px;
    margin: 0 10px 30px;
  }
}

.donation-form a {
    color: #3d42da;
}



/* 料金表 */

  .price-wrapper {
    max-width: 600px;
    margin: 0 auto;
padding: 40px 10px 60px;
    box-sizing: border-box;
  }
  .price-header h1 {
    font-size: 44px;
    font-weight: 500;
    margin: 0;
    position: unset;
  }
  .price-header .caption {
    font-size: 14px;
    margin-top: 4px;
  }

  /* 共通 */
  .studio-block,
  .cancel-block,
  .payment-block,
  .note-block {
    margin-top: 40px;
  }
  .section-title {
    background: #222;
    color: #fff;
    text-align: center;
    padding: 14px 10px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .08em;
  }

  table.price-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #ccc;
  }
  table.price-table th,
  table.price-table td {
    border: 1px solid #ccc;
    padding: 14px 8px;
    text-align: center;
    font-size: 14px;
  }
  table.price-table th {
    background: #f2f2f2;
    font-weight: 700;
  }
  .head-gold {
    background: #c2aa63 !important;
    color: #fff;
    font-weight: 700;
    line-height: 1.4;
  }
  .head-gold .small {
    font-size: 12px;
    display: block;
  }
  .people-cell {
    width: 30%;
  }
  .day-cell {
    width: 20%;
  }
  .time-cell {
    width: 50%;
  }
  .holiday {
    color: #d7322f;
    font-weight: 700;
  }
  .price-text {
    font-size: 16px;
    font-weight: 700;
  }
  .price-text .unit {
    font-size: 11px;
    font-weight: 400;
    margin-left: 4px;
  }

  .divider {
    height: 6px;
    border-radius: 3px;
    background: #d9c68f;
    margin: 20px auto 0;
    max-width: 420px;
  }

  .note-text {
    margin-top: 20px;
    font-size: 13px;
    line-height: 1.8;
    text-align: center;
  }

  /* キャンセル料金表 */
  .cancel-table th {
    background: #f2f2f2;
  }
  .cancel-table td {
    font-size: 15px;
    font-weight: 700;
  }

  /* お支払方法 */
  .payment-block p {
    font-size: 14px;
    line-height: 1.8;
    margin: 12px 0 0;
  }
  .card-list {
    margin: 20px 0 0;
    padding: 16px 20px;
    background: #f5f5f5;
    border-radius: 8px;
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
  }
  .card-list img {
    /* max-height: 40px; */
    width: auto;
    display: block;
  }

  /* その他の注意事項 */
  .note-list {
    font-size: 14px;
    line-height: 1.8;
    margin: 16px 0 0;
    padding-left: 0;
    list-style: none;
  }
  .note-list li::before {
    content: "※";
  }

  .rule-btn-wrap {
    margin-top: 26px;
    text-align: center;
  }
  .rule-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 260px;
    padding: 14px 40px;
    border-radius: 999px;
    border: 2px solid #222;
    background: #222;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
  }
  .rule-btn::after {
    content: "▢";
    font-size: 12px;
    margin-left: 10px;
  }
  .rule-btn:hover {
    background: #444;
  }

  @media (max-width: 480px) {
    .price-header h1 {
      font-size: 36px;
    }
    table.price-table th,
    table.price-table td {
      padding: 10px 6px;
      font-size: 13px;
    }
  }

  a.rule-btn {
    color: #fff;
}

table.price-table.cancel-table th {
    width: 25%;
}
