/*基本設定*/
body{
    width: 100%;
    padding: 0;
    margin: 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    color: #444444;
}

html{
    padding: 0;
    margin: 0;
    scroll-behavior: smooth;
}

a{
    text-decoration: none;
    color: #444444;
    transition: 0.4s;
}

* {
  box-sizing: border-box;
}
/*基本設定ここまで*/

/*メインビュースライド*/
/*最初の画像*/
.start {
	background: #fff;
	position: fixed;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 9999;
}

@media screen and (max-width: 760px) {
  .start {
	top: 0%;
	  padding-top:70%;
	height: 100%;
	width: 100%;
	z-index: 9999;
}
}
.start p {
	display: none;
	z-index: 9999;
}
.start img {
  display: block;
	width:30%;
	margin:12% auto 0 auto;
  animation: start-img 3s infinite;
}

@keyframes start-img {
  0% {transform: scale(1.0);}
100% {transform: scale(1.2);}
}
/*最初の画像ここまで*/

.img-frame{
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  margin: 0 auto;
}

.img-frame::after{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .3);
}

.img-01, .img-02, .img-03, .img-04{
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
.img-01{
  background-image: url('../imege/top-slide01.jpg');
  background-position: center center;
  animation: slide-animation-01 32s infinite;
  width: 100%;
}
.img-02{
  background-image: url('../imege/top-slide02.jpg');
  background-position: center center;
  animation: slide-animation-02 32s infinite;
  width: 100%;
}
.img-03{
  background-image: url('../imege/top-slide03.jpg');
  background-position: center center;
  animation: slide-animation-03 32s infinite;
  width: 100%;
}
.img-04{
  background-image: url('../imege/top-slide04.jpg');
  background-position: center center;
  animation: slide-animation-04 32s infinite;
  width: 100%;
}
@keyframes slide-animation-01 {
  0% {opacity: 1; transform: scale(1.0);}
20% {opacity: 1;}
27% {opacity: 0;}
32% {opacity: 0; transform: scale(1.2);}
100% {opacity: 0;}
}
@keyframes slide-animation-02 {
  0% {opacity: 0;}
  24% {opacity: 0; transform: scale(1.0);}
  25% {opacity: 1;}
  45% {opacity: 1;}
52% {opacity: 0;}
57% {opacity: 0; transform: scale(1.2);}
100% {opacity: 0;}
}
@keyframes slide-animation-03 {
  0% {opacity: 0;}
  49% {opacity: 0; transform: scale(1.0);}
  50% {opacity: 1;}
  70% {opacity: 1;}
77% {opacity: 0;}
82% {opacity: 0; transform: scale(1.2);}
100% {opacity: 0;}
}
@keyframes slide-animation-04 {
  0% {opacity: 0;}
74% {opacity: 0; transform: scale(1.0);}
75% {opacity: 1;}
95% {opacity: 1;}
100% {opacity: 0; transform: scale(1.14);}
}
/*メインビュースライドここまで*/

/*画像ホバー*/
.img-a:hover{
  opacity:0.6;
}
/*画像ホバーここまで*/

/*フォント設定*/
html {
	font-size: 62.5%;
} /* font-sizeは16pxの62.5%の10px */

body {
	font-size: 1.8rem;
} /*font-size : 18px と同等*/

.shippori-mincho-b1-regular {
    font-family: "Shippori Mincho B1", serif;
    font-weight: bold;
    font-style: normal;
  }

  .t-bold{
    font-weight: bold;
  }
/*フォント設定ここまで*/

/*マージン設定*/
.ma-t120{
    margin-top: 120px !important;
}

.ma-t180{
    margin-top: 180px !important;
}
/*マージン設定ここまで*/
  
  /*header設定*/
  header{
    width: 100%;
    height: 80px;
    background-color: #fff;
    padding: 0 5%;
    position: fixed;
    z-index: 100;
    top: 0;
    font-size: 1.8rem;
    font-weight: bold;
  }

  .global-nav{
    display: flex;
    width: 100%;
  }

  .global-nav-img{
    height: 80px;
  }

  .global-nav-img img{
    height: 100%;
    width: auto;
    padding: 1% 0;
  }

  .menu{
    margin-left: auto;
    position: relative;
    top:30px;
    right: 0;
  }

  .header-menu{ /*ul横並び*/
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
    text-align: right;
  }
  
  .header-menu li{
    text-align: right;
    white-space: nowrap;
  }

  .header-menu li a{
  display: inline-block;
  text-decoration: none;
  position: relative;
  margin-left: 25px;
  }

  .header-menu li a::after {
  bottom: -2px;/*テキストからの距離*/
  content: ""; /* 要素に内容を追加 */
  height: 1px; /* 下線の高さ */
  left: 0; /* 要素の左端からの距離 */
  position: absolute; /* 絶対位置指定 */
  transform: scale(0, 1); /* 下線を横方向に0倍、縦方向に1倍に変形（非表示） */
  transform-origin: left top; /* 変形の原点を左上に指定 */
  transition: transform .3s; /* 変形をアニメーション化 */
  width: 100%; /* 要素の幅 */
  background-color: #444;
    }
    
    .header-menu li a:hover::after {
      transform: scale(1, 1); /* 下線を横方向に1倍、縦方向に1倍に変形（表示） */
    }
  /*header設定ここまで*/

  /*メインビュー設定*/
  video{
    width: auto;
    height: 100vh;
    overflow: hidden;
  }

  .main-view{
    width: 100%;
    height: 120vh;
    position: relative;
    top: -140px;
    left: 0;
    overflow: hidden;
    z-index: -2;
  }

  .main-view::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: black;
    opacity:0.5;
    z-index: -1;
  }

  .main-view-h1{
    position: relative;
    text-align: center;
    top: 38%;
    z-index: 80;
    font-size: 8rem;
    color: #fff;
  }
  /*メインビュー設定ここまで*/

  /*コンテンツ設定*/
  .contents-box{
    position: relative;
    top:0px;
    padding: 0;
    margin: 5% auto 0 auto;
  }

  .contents-box2{
    margin: 5% auto;
    padding: 0 10%;
  }

  .contents-box3{
    margin: 5% auto 2% auto;
    padding: 0 10%;
  }

  .mission-h2{
    font-size: 8.2rem;
    text-align: center;
    margin-top: 0;
    margin-bottom: 80px;
  }

  .mission-p{
    width: 900px;
    margin: auto;
    font-size: 2.6rem;
    font-weight: bold;
  }

  .mission-btn{
    background-color: #444444;
    border: solid 1px #444444;
    padding: 2% 10%;
    margin: 5% auto;
    color: #fff;
    display: block;
    text-align: center;
    width: 40%;
    font-size: 2.2rem;
    font-weight: bold;
  }

  .mission-btn:hover{
    background-color: #fff;
    border: solid 1px #444444;
    padding: 2% 10%;
    margin: 5% auto;
    color: #444;
    display: block;
    text-align: center;
    width: 40%;
    font-size: 2.2rem;
    font-weight: bold;
    transition: 0.2s;
  }

  .wakamono-h2{
    font-size: 8.2rem;
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
    padding-bottom: 2px;
    position: relative;
    border-bottom: 3px solid #FF0000;/*真ん中：赤*/
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }

  .wakamono-h2::before{
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 3%;
    height: 3px;
    background: #444;/*左：グレー*/
  }
  .wakamono-h2::after{
    content: '';
    position: absolute;
    right: 0;
    bottom: -3px;
    width: 88%;
    height: 3px;
    background: #444;/*右：グレー*/
  }

  .waka-red{
    color: #FF0000;
  }

  .wakamono-p{
    width: 1000px;
    margin: auto;
    font-size: 2.6rem;
    font-weight: bold;
  }

  .wakamono-img{
    width: calc(100% / 3);
    padding: 0 !important;
    margin-top: 5%;
    display: flex;
  }

  .wakamono-img img{
    width:100%;
    margin-right: 1%;
  }

  .wakamono-img img:last-child{
    margin-right: 0;
  }

  .news-h2{
    font-size: 6rem;
    font-weight: bold;
    margin: 0;
  }

  .news-sub{
    font-size: 3rem;
    font-weight: bold;
    margin: 0 0 2% 0;
  }

  .news-ul {
    display: block;
    list-style-type: none;
    width: 100%;
    font-size: 1.8rem;
    padding-left: 0;
  }
  
  .news-li {
    display: flex;
    border-bottom: 1px solid #444;
    padding-bottom: 2rem;
    margin-top: 2%;
    width: 100%;
  }

  .news-div1{
    width: 30%;
  }

  .news-div2{
    width: 70%;
  }

  .news-img-a{
    display: block;
    width: 263px;
    height: 197px;
    margin-right: 30px;
    transition: 0.4s;
    overflow: hidden;
  }

  .news-img-a:hover{
    opacity: 0.5;
  }

  .news-img-a img{
    width: 100%;
    height: auto;
  }

  .contents-box2 a:hover,.news-section a:hover,.single-box a:hover{
    color: #b9b9b9;
  }

  .news-date{
    margin: 5rem 0 0 0;
    font-size: 1.6rem;
  }

  .news-h3{
    margin: 0;
    font-size: 2.2rem;
  }

  .news-text{
    margin: 0;
    font-size: 1.8rem;
  }

  .news-span{
    display: block;
    text-align: right;
    font-size: 1.4rem;
    color: #185772;
  }

  .top-btn{
    background-color: #5F0786;
    border: solid 1px #5F0786;
    border-radius: 60px;
    padding: 2% 10%;
    margin: 5% auto;
    color: #fff;
    display: block;
    text-align: center;
    width: 40%;
    font-size: 2.2rem;
    font-weight: bold;
    transition: 0.4s;
  }

  .top-btn:hover{
    background-color: #fff;
    border: solid 1px #5F0786;
    border-radius: 60px;
    padding: 2% 10%;
    margin: 5% auto;
    color: #5F0786 !important;
    display: block;
    text-align: center;
    width: 40%;
    font-size: 2.2rem;
    font-weight: bold;

  }

  .instagram-rogo{
    width: 45%;
    margin: 0 auto 2% auto;
    display: block;
  }

  .instagram-h3{
    display: block;
    text-align: center;
    font-size: 3rem;
    font-weight: bold;
    margin: 0;
    padding: 0;
  }

  .sb_instagram_header,#sbi_load{
    display: none !important;
  }

  .instagram-box{
    padding: 0;
  }

  .page-h1{
    font-size: 4.5rem;
    line-height: 5.8rem;
    font-weight: bold;
    border-bottom: solid 1px #444;
    width: fit-content;
    margin-top: 10%;
  }

  /*アバウト*/
  .about-box1{
    display: flex;
    margin-top: 5%;
  }

  .about-h1{
    margin-left: 5%;
    margin-top: 10%;
    font-size: 4.5rem;
    line-height: 5.8rem;
    font-weight: bold;
    border-bottom: solid 1px #444;
    width: fit-content;
  }

  .about-box-img{
    width: 50%;
    margin-right: 5%;
  }

  .about-box-img img{
    width: 100%;
  }

  .about-box-ul{
    padding-right: 3%;
    margin-top: 3%;
  }

  .about-li1{
    width: 120px;
    font-weight: bold;
  }

  .about-li2{
    width: 100%;
    font-weight: bold;
  }

  .about-box2{
    background-color: #FFECCC;
    margin-top: 5%;
    padding-bottom: 5%;
  }

  .sosiki-box1{
    display: flex;
    width: 100%;
  }

  .sosiki-box2{
    width: 50%;
  }

  .sosiki-box3{
    width: 50%;
    padding-right: 5%;
  }

  .about-h2{
    background-color: #4D4D4D;
    padding: 1% 3%;
    margin: 0 auto 5% auto;
    color: #fff;
    width: 70%;
    text-align: center;
    position: relative;
  }

  .sosiki-box2 img{
    width: 90%;
    padding-left: 5%;
  }

  .pa-top-4{
    padding-top: 4%;
  }

  .sosiki-p{
    border-bottom: solid 1px #444;
  }

  .sosiki-box4{
    background-color: #FBF2FF;
    padding: 5%;
  }

  .kyoukai-box1{
    display: flex;
    font-size: 2.0rem;
    font-weight: bold;
  }

  .kyoukai-box2{
    width: 50%;
    border-right: solid 1px #444;
    margin-left: 30px;
  }

  .kyoukai-box2:last-child {
    border-right: none;
    margin-right: 0;
  }

  .kyoukai-h2{
    text-align: center;
    padding: 0;
    margin: 0;
    font-size: 3rem;
  }

  .kyoukai-h2-sub{
    font-size: 1.4rem;
    text-align: center;
    padding: 0;
    margin: 0 0 5% 0;
  }

  .kyoukai-p-box{
    padding: 0 10%;
    margin-bottom: 3%;
  }

  .kyoukai-hr{
    border-width:1px 0 0 0; /*線の太さの指定*/
    border-style:solid;/*線の種類の指定*/
    border-color:#444; /*線の色の指定*/
    width: 70%;
  }

  .kyoukai-ul {
    display: block;
    list-style-type: none;
    width: 100%;
    font-size: 1.8rem;
  }
  
  .kyoukai-li {
    margin-top: 2%;
  }

  .kyoukai-li2 {
    padding-bottom: 5px;
    margin-top: 2%;
    border-bottom: solid 1px #444;
  }
  /*アバウトここまで*/

  /*活動について*/
  .activity-box1{
    padding: 0 5%;
  }

  .activity-h2{
    margin: 3% auto;
    font-size: 5.5rem;
    text-align: center;
    border-bottom: solid 2px #444;
    width: fit-content;
  }

  .activity-p{
    width: 1040px;
    margin: 5% auto;
    font-size: 2.2rem;
  }

  .activity-box2{
    margin-bottom: 5%;
  }

  .activity-h3{
    background-color: #444;
    padding: 0.5% 5%;
    color: #fff;
    font-size: 3rem;
  }

  .activity-ul {
    display: flex;
    padding: 0 5%;
    margin: 0;
    list-style-type: none;
  }
  
  .activity-li {
    margin-right: 20px;
    width: 50%;
  }

  .activity-li img{
    width: 100%;
  }
  
  .activity-li:last-child {
    margin-right: 0;
  }

  .activity-p2{
    background-color: #e3e3e3;
    padding: 1% 5%;
    color: #444;
    margin-bottom: 8%;
    font-size: 2.2rem;
  }

  .caption-p{
    font-size: 1.8rem;
    margin-top: 0;
    margin-bottom: 5%;
    font-weight: bold;
  }
  /*活動についてここまで*/

  /*アクセス*/
  .access-box{
    width: 100%;
  }

  .access-box-in{
    width: 100%;
  }

  .w-100{
    width: 100px;
  }

  .access-ul {
    display: flex;
    padding: 0 3%;
    margin: 5% 0 0 0;
    list-style-type: none;
    width: 100%;
    border-bottom: solid 1px #444;
    font-weight: bold;
  }

  .access-li {
    padding-bottom: 1%;
    margin-right: 1%;
  }

  .access-ul ul:first-child {
    margin-top: 0;
  }
  /*アクセスここまで*/

  /*プライバシーポリシー、リンク*/
  .p-r-box1{
    margin: 5% auto;
    padding: 0 5%;
  }

  .p-r-box2{
    margin: 8% auto;
  }

  .p-r-box3{
    margin: 8% auto;
    padding: 0 10%;
  }

  .rink-ul {
    display: flex;
    padding: 0;
    margin: 5% 0 0 0;
    list-style-type: none;
    font-size: 1.4rem;
    line-height: 3rem;
  }

  .rink-ul a:hover {
    color: #c0c0c0;
    transition: 0.2s;
  }
  
  .rink-li {
    margin-right: 20px;
    width: calc(100% / 3);
  }
  
  .rink-li:last-child {
    margin-right: 0;
  }

  .rink-midashi{
    color: #5F0786;
    font-weight: bold;
    background-color: #FBF2FF;
    display: block;
    padding: 1% 2%;
    width: 95%;
    margin-bottom: 3%;
  }

  .r-mogi:before{
    content: "";
    display: block;
    background: #FBF2FF;
    font-size: 1.4rem;
    height: 40px;
    margin-bottom: 3%;
  }
  /*プライバシーポリシー、リンクここまで*/

  /*会員一覧*/
  .member-p{
    background-color: #444;
    font-size: 2.3rem;
    font-weight: bold;
    color: #fff;
    padding: 1% 5%;
    width: 100%;
    text-align: center;
  }

  .member-map-box{
    display: flex;
    width: 100%;
  }

  .member-map-img{
    width: 50%;
    margin: 0;
    padding: 0;
  }

  .member-map-img img{
    width: 100%;
    margin-left: 5%;
  }

  .member-map-ciku{
    width: 50%;
    padding: 0 5%;
  }

  .member-map-ciku p{
    font-size: 2.3rem;
    font-weight: bold;
    margin-bottom: 1%;
  }

  .member-kofu{
    display: block;
    text-align: center;
    background-color: #1D8B16;
    border: solid 1px #1D8B16;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kofu:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #1D8B16;
    color: #1D8B16;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
    transition: 0.3s;
  }

  .member-cyuo{
    display: block;
    text-align: center;
    background-color: #8CC63F;
    border: solid 1px #8CC63F;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-cyuo:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #8CC63F;
    color: #8CC63F;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kai{
    display: block;
    text-align: center;
    background-color: #F15A24;
    border: solid 1px #F15A24;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kai:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #F15A24;
    color: #F15A24;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-minami{
    display: block;
    text-align: center;
    background-color: #00A99D;
    border: solid 1px #00A99D;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-minami:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #00A99D;
    color: #00A99D;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-map-ciku ul{
    display: flex;
    padding: 0;
    margin: 0;
    list-style-type: none;
  }

  .member-map-ciku li {
    margin-right: 20px;
    width: calc(100% / 3);
    margin-bottom: 5%;
  }
  
  .member-map-ciku li:last-child {
    margin-right: 0;
  }

  .tiku:before{
    content: "";/*←contentは必ず入れる*/
    display: block;
    background: #fff;
  }

  /*会員一覧の表*/
  table a:hover{
    opacity:0.6;
  }

  .member-list-box{
    padding: 0 5%;
    margin-top: 5%;
  }

  .member-list-box h2{
    font-size: 3rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1%;
  }

  .table-ciku{
    width: 100%;
    font-weight: bold;
  }

  .table-ciku th {
    color: #fff;
    padding: 0.5% 1%;
  }

  .table-ciku td {
    padding: 0.5% 1%;
  }

  .member-name{
    color: #146ADE;
  }

  .member-th1{
    width: 20%;
  }

  .member-th2{
    width: 10%;
  }

  .member-th3{
    width: 25%;
  }

  .member-th4{
    width: 15%;
  }

  .member-th5{
    width: 30%;
  }

  /*甲府地区*/
  .kofu-member{
    color: #1D8B16;
  }

  .kofu-member-t th{
    background-color: #1D8B16;
  }

  .kofu-member-t tr:nth-child(2n+1) td {
    background-color: #E9FAE8;
  }
  /*甲府地区ここまで*/

  /*中央市・昭和町地区*/
  .cyuo-member{
    color: #8CC63F;
  }

  .cyuo-member-t th{
    background-color: #8CC63F;
  }

  .cyuo-member-t tr:nth-child(2n+1) td {
    background-color: #E4F4D0;
  }
  /*中央市・昭和町ここまで*/

  /*甲斐市地区*/
  .kai-member{
    color: #F15A24;
  }

  .kai-member-t th{
    background-color: #F15A24;
  }

  .kai-member-t tr:nth-child(2n+1) td {
    background-color: #fbeacf;
  }
  /*甲斐市ここまで*/

  /*南アルプス市地区*/
  .aru-member{
    color: #01A99D;
  }

  .aru-member-t th{
    background-color: #01A99D;
  }

  .aru-member-t tr:nth-child(2n+1) td {
    background-color: #e0f9f8;
  }
  /*南アルプス市ここまで*/

  /*スライド*/
  .member-list-box::before {
    content:'';
    display: block;
    padding-top: 100px;
    margin-top: -100px;
  }
  /*マップエリア*/
  #responsive-map {
    max-width: 100%;
    height: auto;
  }


  .city-list__link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    height: 100px;
    font-weight: bold;
    color: #185772;
    background: #80ceac;
    border-radius: 50%;
    transition: background .5s;
  }
  .city-list__link.active,
  .city-list__link:hover{
    background: #F3DF63;
  }
  
  .city{
    fill: #80ceac;
    transition: fill .5s;
  }
  .city.active{
    fill: #F3DF63;
  }

  /*会員一覧ここまで*/

  /*お問い合わせ*/
.contact-p-box{
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 2%;
}

.contact-box{
  font-size: 1.8rem;
}

.inquiry-p-box{
	padding:5% 15% 0 15% !important;
}

.inquiry-box{
	background-color:#EA6133;
	color:#fff !important;
	font-size:2rem !important;
	padding:1% 5%;
	text-align:center;
	margin:0 15% 4% 15%;
}

.inquiry-box p{
	padding:0 !important;
	margin:0 !important;
}

.house-section{
	padding:0;
}

.inquiry-section{
	padding:0 15%;
}

.wppost--contentsingle{
	display:block !important;
}

.inquiry-ul{
    display: flex;
    justify-content: center;
    align-items: center;
	margin:10rem auto 5rem auto;
	width:50%;
}

.wpcf7-spinner{
	display:none;
}

.inquiry-box-p{
	text-align:center;
	padding:0 15%;
}

.inquiry-top-btn{
	margin:10rem auto 0 auto;
	text-align:center;
}

.inquiry-top-btn a{
	background:#EA6133;
	padding:1% 5%;
	margin:0 auto;
	color:#fff;
	text-decoration:none;
}

.inquiry-top-btn a:hover{
	background:#fff;
	border:solid 1px #EA6133;
	padding:1% 5%;
	margin:0 auto;
	color:#EA6133;
}

.inquiry-privacy-box{
	background-color:#efefef;
	text-align:center;
	padding:3% 0;
	margin-top:5%;
	line-height:1.8rem;
}

.inquiry-privacy-box-p{
	display:block;
	margin:1rem auto 5rem auto;
	text-align:center;
}

.ma-b-100{
	margin-bottom:100px !important;
}
/* デザインカスタマイズ */
div.wpcf7 {
	padding:0px;
	-moz-border-radius:10px;
	-khtml-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	margin:0 0 30px 0;
}

div.wpcf7 p {
	padding:20px 20px 0;
	margin: 0;
}

div.wpcf7 p:fa {
	padding:20px 20px 0;
	margin: 0;
}

div.wpcf7 input, .wpcf7 textarea {
	border:1px solid #ccc;
	padding:8px;
  font-size: 1.6rem;
  margin-bottom: 2%;
}

.inquiry-ul p{
	display:flex;
  margin-bottom: 3%;
}

.inquiry-ul-btn{
	padding:0 5rem;
}

.jyouho input{
	width:100%;
}

div.wpcf7 textarea {
	width:97.5%;
	height:300px;
}

div.wpcf7 input.wpcf7-submit {
	cursor:pointer;
	color:#444;
  font-size: 2.2rem;
	font-weight:bold;
	width: 400px;
	margin: 5% auto; 
	display:block;
	border-radius: 60px;
	background:#fff;
  border: solid 1px #444;
  padding: 2% 8%;
  text-align: center;
  height: auto;
}

div.wpcf7 input.wpcf7-submit:hover {
	background:#444;
	border:1px solid #444;
	color:#fff;
}

.wpcf7 input.wpcf7-submit:active {
	box-shadow:none;
	bottom:-2px;
	position:relative;
}

.wpcf7-previous {
	cursor:pointer;
	color:#444;
  font-size: 2.2rem;
	font-weight:bold;
	width: 400px;
	margin: 5% auto; 
	display:block;
	border-radius: 60px;
	background:#E8E8E8;
  border: solid 1px #444;
  padding: 2% 8%;
  text-align: center;
  height: auto;
}

.wpcf7-previous:hover {
	background:#fff;
	border:1px solid #6F6F6F;
	color:#444;
}

.wpcf7-previous:active {
	box-shadow:none;
	bottom:-2px;
	position:relative;
}

.wpcf7 input:focus, .wpcf7 textarea:focus {
	border:1px solid #009de1;
}

.wpcf7-captchac {
	border:1px solid #ccc;
}

.contact-top-a {
	cursor:pointer;
	color:#444;
  font-size: 2.2rem;
	font-weight:bold;
	width: 40%;
	margin: 5% auto; 
	display:block;
	border-radius: 60px;
	background:#fff;
  border: solid 1px #444;
  padding: 2% 8%;
}

.contact-top-a:hover {
	background:#444;
	border:1px solid #444;
	color:#fff;
}
/*お問い合わせここまで*/

/*404*/
.none-box{
  margin: 13% auto 5% auto;
}

.none-title{
  display: block;
  font-size: 9rem;
  font-weight: bold;
  text-align: center;
}

.none-p{
  font-size: 3rem;
  font-weight: bold;
  text-align: left;
  padding: 0 8%;
}
/*404ここまで*/

/*投稿一覧*/
.news-section{
  margin: 10% auto;
  padding: 0 5%;
}

.news-section h2{
  font-size: 5rem;
  font-weight: bold;
}

.nav-links{
  text-align: center;
  margin-top: 5%;
}

.page-numbers{
  margin: 20px 10px 0 10px;
}

.category-title{
  font-size: 2rem;
  font-weight: bold;
}

.category-ul {
  display: flex;
  list-style-type: none;
  width: 100%;
  font-size: 1.8rem;
  padding-left: 0;
}

.category-li {
  display: block;
  width: calc(100% / 3);
  margin: 3% 2%;
  text-align: center;
}

.category-li a {
  display: block;
  background-color: #fff;
  border: solid 1px #444;
  color: #444;
  padding: 2% 5%;
}

.category-li a:hover {
  background-color: #444;
  color: #fff;
}

.category-li.active {
  background-color: #fff; /* 例：背景赤 */
  color: #444;
}
.category-li.active a {
  background-color: #444; /* 例：背景赤 */
  color: #fff;
}

.page-numbers.current{
  background-color: #444;
  color: #fff;
  padding: 0.6%;
}
/*投稿一覧ここまで*/

/*投稿ページ*/
.single-box{
  margin: 10% auto;
  padding: 0 5%;
}
/*投稿ページここまで*/
  /*コンテンツ設定ここまで*/

  /*footer*/
  footer{
    width: 100%;
    margin: 12% 0 0 0;
    padding: 0;
    text-align: center;
  }

  footer img{
    width: 40%;
  }

  .footer-box{
    margin: 5% auto;
    display: inline-block;
  }

  .footer-ul {
    display: flex;
    padding: 0;
    margin: 0 auto;
    list-style-type: none;
  }
  
  .footer-li {
    margin-right: 20px;
    padding-right: 20px;
    border-right: solid 1px #444;
  }
  
  .footer-li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: none;
  }

  footer a:hover{
    color: #d4d4d4;
    transition: 0.3s;
  }

  .copy-p{
    background-color: #5F0786;
    margin: 15px 0 0 0;
    padding: 5px 0;
    color: #fff;
    font-size: 1rem;
  }
  /*footerここまで*/


/*スマホ
------------------------------------------------------------*/
@media only screen and (max-width: 767px){
  
  /*ハンバーガーメニューのスタイル */
  .menu {
    position: fixed;
    top: 0;
    right: -100%; /* 初期状態では画面の外に隠れている */
    width: 60%;
    height: 100%;
    background-color: #FBF2FF;
    color: #444;
    transition: right 0.3s ease; /* スライドインのアニメーション */
    padding: 20px;
    box-sizing: border-box;
    z-index: 200;
    margin-left: 0;
  }
  
  /* メニューが開いているとき */
  .menu.open {
    right: 0;
  }
  
  /* ボタンのスタイル */
  .hamburger {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 30px;
    cursor: pointer;
    z-index: 300;
  }
  
  .hamburger span {
    display: block;
    height: 3px;
    width: 100%;
    background-color: #444;
    margin: 5px 0;
    transition: 0.4s;
  }
  
  /* バツ印に変化するスタイル */
  .hamburger.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }
  
  .hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  
  .hamburger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
  }
  /*ハンバーガーここまで*/

  /*header設定*/
  header{
    height: 70px;
    padding: 0;
    position: fixed !important;
    z-index: 100;
  }

  .global-nav{
    display: block;
  }

  .global-nav-img{
    height: 70px;
    padding: 1% 2%;
  }

  .global-nav-img img{
    height: 100%;
    width: auto;
  }

  .header-menu{ /*ul横並び*/
    display: block;
    height: 70px;
    text-align: left;
    padding: 0 5%;
  }
  
  .header-menu li{
    width: 100%;
    text-align: left;
    display: block;
    height: auto;
    border-bottom: 1px solid #444;
    padding-bottom: 1%;
    margin-bottom: 5%;
  }

  .header-menu:last-child{
    margin-top: 15%;
  }

  .header-menu li a{
    display: block;
    height: auto;
    padding-left: 0;
  }
  /*header設定ここまで*/

  /*メインビュースライド*/
.img-frame{
  height: 300px;
  overflow: hidden;
}

.img-frame::after{
  height: 300px;
}

.img-01, .img-02, .img-03, .img-04{
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
/*メインビュースライドここまで*/

  /*メインビュー設定*/
  main{
    width: 100%;
  }

  video{
    width: 100%;
    height:auto;
  }

  .main-view{
    width: 100%;
    height: auto;
    position: relative;
    top: -10px;
  }

  .main-view-h1{
    position: relative;
    text-align: center;
    top: 140px;
    z-index: 2;
    font-size: 3rem;
    color: #fff;
  }
  /*メインビュー設定ここまで*/

  /*コンテンツ設定*/
  .contents-box{
    position: static;
    width: 100%;
    padding: 0 5%;
  }

  .contents-box2,.contents-box3{
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .mission-h2{
    font-size: 3rem;
    margin-top: 30px;
    margin-bottom: 50px;
  }

  .mission-p{
    width: 100%;
    font-size: 2.0rem;
  }

  .mission-btn{
    padding: 2% 2%;
    margin: 3% auto;
    width: 100%;
    font-size: 1.8rem;
  }

  .wakamono-h2{
    font-size: 3rem;
    margin: 0 0 20px 0;
  }

  .wakamono-p{
    width: 100%;
    font-size: 2.0rem;
  }

  .wakamono-img{
    width: 100%;
    margin-top: 0;
    display: block;
  }

  .wakamono-img img{
    width:100%;
    margin: 0;
    padding: 0;
  }

  .ma-t120,.ma-t180{
    margin-top: 0;
  }

  .contents-box2{
    margin: 8% auto 0 auto;
    padding: 0 5%;
    width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
  }

  .news-h2{
    font-size: 3rem;
  }

  .news-sub{
    font-size: 1.4rem;
    margin: 0 0 5% 0;
  }




.news-ul {
    font-size: 1.6rem;
    position: relative;
  }
  
  .news-li {
    border-bottom: 1px solid #444;
    padding-top: 2rem;
    padding-bottom: 5rem;
    margin-top: 2%;
    width: 100%;
    flex-direction: row-reverse;
  }

  .news-div1{
    width: 35%;
  }

  .news-div2{
    width: 65%;
  }

  .news-img-a{
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-left: 15px;
  }

  .news-img-a img{
    width: 100%;
  }

  .news-date{
    margin: 0;
    font-size: 1.4rem;
  }

  .news-h3{
    margin: 0;
    font-size: 2.0rem;
  }

  .news-text{
    position: relative;
    bottom: -4rem;
    left: 0;
    margin: 0;
    font-size: 1.6rem;
    width: 100%;
  }

  .news-spam{
    display: block;
    text-align: right;
    font-size: 1.4rem;
    color: #185772;
  }




  .top-btn{
    border-radius: 40px;
    padding: 2% 5%;
    margin: 10% auto 0 auto;
    width: 100%;
    font-size: 1.8rem;
  }

  .instagram-rogo{
    width: 80%;
    margin: 0 auto 2% auto;
  }

  .instagram-h3{
    font-size: 2rem;
  }

  .instagram-box{
    padding: 0 5%;
  }

  .page-h1{
    font-size: 2rem;
    line-height: 2.7rem;
    margin-top: 24%;
  }

  /*アバウト*/
  .about-box1{
    display: flex;
    margin-top: 0;
    flex-direction: column-reverse;
  }

  .about-h1{
    margin-left: 5%;
    margin-top: 24%;
    margin-bottom: 0;
    font-size: 2rem;
    line-height: 2.7rem;
  }

  .about-box-img{
    width: 100%;
    margin-right: 0;
    padding: 0 5%;
  }

  .about-box-img img{
    width: 100%;
  }

  .about-box-ul{
    padding: 0 5%;
    margin-top: 5%;
  }

  .about-li1{
    width: 100%;
  }

  .about-box2{
    background-color: #FFECCC;
    margin-top: 5%;
    padding: 5%;
  }

  .sosiki-box1{
    display: block;
    width: 100%;
  }

  .sosiki-box2{
    width: 100%;
  }

  .sosiki-box3{
    width: 100%;
    padding-right:0;
  }

  .about-h2{
    padding: 1% 3%;
    margin: 0 auto 5% auto;
    color: #fff;
    width: 100%;
    text-align: left;
    font-size: 2rem;
  }

  .sosiki-box2 img{
    width: 100%;
    padding-left: 0;
  }

  .kyoukai-box1{
    display: block;
    font-size: 1.6rem;
  }

  .kyoukai-box2{
    width: 100%;
    border-right: none;
    margin-left: 0;
  }

  .kyoukai-h2{
    text-align: center;
    padding: 0;
    margin: 0;
    font-size: 3rem;
  }

  .kyoukai-h2-sub{
    font-size: 1.4rem;
    text-align: center;
    padding: 0;
    margin: 0 0 3% 0;
  }

  .kyoukai-p-box{
    padding: 0;
    margin: 0 0 8% 0;
  }

  .kyoukai-hr{
    border-width:1px 0 0 0; /*線の太さの指定*/
    border-style:solid;/*線の種類の指定*/
    border-color:#444; /*線の色の指定*/
    width: 100%;
  }

  .kyoukai-h3{
    margin-bottom: 0;
  }
  
  .kyoukai-ul {
    font-size: 1.6rem;
    padding-left: 0;
  }
  /*アバウトここまで*/

  /*活動について*/
  .activity-box1{
    margin-top: 8%;
    padding: 0 5%;
  }

  .activity-h2{
    margin: 3% auto;
    font-size: 3rem;
    text-align: center;
  }

  .activity-p{
    width: 100%;
    margin: 5% auto;
    font-size: 1.8rem;
  }

  .activity-box2{
    width: 100%;
    margin-bottom: 5%;
    padding: 0 5%;
  }

  .activity-h3{
    background-color: #444;
    padding: 0.5% 5%;
    color: #fff;
    font-size: 2rem;
    width: 100%;
  }

  .activity-ul {
    display: block;
    padding: 0;
  }
  
  .activity-li {
    margin-right: 0;
    width: 100%;
  }

  .activity-li img{
    width: 100%;
  }

  .activity-p2{
    background-color: #444;
    padding: 1% 5%;
    color: #fff;
    margin-bottom: 8%;
    font-size: 1.8rem;
  }

  .caption-p{
    font-size: 1.2rem;
    margin-top: 0;
    margin-bottom: 5%;
  }
  /*活動についてここまで*/

  /*アクセス*/
  .access-box{
    width: 100%;
  }

  .access-box-in{
    padding: 0 5%;
    height: 200px;
    width: 100%;
  }

  .w-100{
    width: 100px;
  }

  .access-ul {
    display: block;
    padding: 0;
    margin: 0;
    width: 100%;
    border-bottom: none;
  }

  .access-li {
    margin-bottom: 0;
    padding-bottom: 1%;
    width: 100%;
  }

  .access-ul li:last-child {
    margin-bottom: 8%;
    border-bottom: solid 1px #444;
  }
  /*アクセスここまで*/

  /*プライバシーポリシー、リンク*/
  .p-r-box1{
    margin: 5% auto;
    padding: 0 5%;
    width: 100%;
  }

  .p-r-box2{
    margin: 8% auto;
  }

  .p-r-box3{
    margin: 8% auto;
    padding: 0;
    width: 100%;
  }

  .rink-ul {
    display: block;
    line-height: 4rem;
  }
  
  .rink-li {
    margin-right: 0;
    width: 100%;
  }

  .rink-midashi{
    width: 100%;
    margin-bottom: 3%;
    margin-top: 8%;
  }

  .r-mogi:before{
    content: none;
    display: block;
    background: #FBF2FF;
    font-size: 1.4rem;
    height: 0;
    margin-bottom: 0;
  }
  /*プライバシーポリシー、リンクここまで*/

  /*会員一覧*/
  .member-p{
    background-color: #444;
    font-size: 1.6rem;
    padding: 2% 5%;
  }

  .member-map-box{
    display: block;
    width: 100%;
  }

  .member-map-img{
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .member-map-img img{
    width: 100%;
    margin-left: 0;
    padding: 0 5%;
  }

  .member-th1{
    width: 100%;
  }

  .member-th2{
    width: 100%;
  }

  .member-th3{
    width: 100%;
  }

  .member-th4{
    width: 100%;
  }

  .member-th5{
    width: 100%;
  }

  .member-map-ciku{
    width: 100%;
    padding: 0 5%;
  }

  .member-map-ciku p{
    font-size: 1.8rem;
    margin-bottom: 1%;
    margin-top: 5%;
  }

  .member-kofu{
    display: block;
    text-align: center;
    background-color: #1D8B16;
    border: solid 1px #1D8B16;
    color: #fff;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kofu:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #1D8B16;
    color: #1D8B16;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
    transition: 0.3s;
  }

  .member-cyuo{
    display: block;
    text-align: center;
    background-color: #8CC63F;
    border: solid 1px #8CC63F;
    color: #fff;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-cyuo:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #8CC63F;
    color: #8CC63F;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kai{
    display: block;
    text-align: center;
    background-color: #F15A24;
    border: solid 1px #F15A24;
    color: #fff;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-kai:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #F15A24;
    color: #F15A24;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-minami{
    display: block;
    text-align: center;
    background-color: #00A99D;
    border: solid 1px #00A99D;
    color: #fff;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-minami:hover{
    display: block;
    text-align: center;
    background-color: #fff;
    border: solid 1px #00A99D;
    color: #00A99D;
    border-radius: 30px;
    padding: 5% 8%;
    width: 100%;
  }

  .member-map-ciku ul{
    display: block;
    padding: 0;
    margin: 0;
    list-style-type: none;
  }

  .member-map-ciku li {
    margin-right: 0;
    width: 100%;
    margin-bottom: 5%;
  }

  .tiku:before{
    content: none;/*←contentは必ず入れる*/
  }

  /*会員一覧の表*/
  .member-list-box{
    margin-top: 6%;
  }

  .member-list-box h2{
    font-size: 1.8rem;
    margin-bottom: 2%;
  }

  .table-ciku th {
    display: block;
    padding: 1% 3%;
    border-bottom: solid 1px #fff;
  }

  .table-ciku th:last-child {
    border-bottom: solid 3px #444;
  }

  .table-ciku td {
    display: block;
    padding: 1% 3%;
    border-bottom: solid 1px #444;
  }

  .table-ciku td:last-child {
    border-bottom: solid 3px #444;
  }
  /*会員一覧ここまで*/

  /*お問い合わせ*/
  .contact-p-box{
    font-size: 1.8rem;
    text-align: left;
    margin-bottom: 2%;
    padding: 0 5%;
  }
  
  .contact-box{
    font-size: 1.8rem;
    padding: 0 5%;
  }

	.inquiry-p-box{
		padding:5% 5% 0 5% !important;
	}

	.inquiry-box{
		margin:0 5% 2% 5%;
	}

	.inquiry-section{
		padding:0;
	}

	.inquiry-section h3,.house-section h3{
		font-size:2rem !important;
		margin-top:2rem !important;
		margin-bottom:1rem !important;
	}

	.inquiry-ul{
		display: blok;
		margin:5rem auto 3rem auto;
		width:100%;
	}

	.inquiry-box-p{
		padding:0 5%;
	}

	.inquiry-top-btn{
		margin:5rem auto 0 auto;
	}

	.inquiry-top-btn a{
		padding:1% 5%;
	}

	.inquiry-privacy-box{
		line-height:1.8rem;
	}

	.inquiry-privacy-box-p{
		margin:1rem auto 3rem auto;
	}
	
	div.wpcf7 p{
		padding:0.5rem 0 !important;
		line-height:2.0rem !important;
	}
	
	.wpcf7-form-control{
		margin-bottom:1rem !important;
	}
	
	.inquiry-ul p{
		display:block;
	}

	.inquiry-ul-btn{
		padding:0;
		margin-bottom:2rem !important;
	}
	
	.ma-b-100{
		margin-bottom:50px !important;
	}
	
	/* デザインカスタマイズ */
	div.wpcf7 input.wpcf7-submit {
		width:200px;
		height:45px;
	}
  /* デザインカスタマイズ */
div.wpcf7 input.wpcf7-submit {
	width: 100%;
  padding: 5%;
}

div.wpcf7 input.wpcf7-submit:hover {
	background:#444;
	border:1px solid #444;
	color:#fff;
}

.wpcf7 input.wpcf7-submit:active {
	box-shadow:none;
	bottom:-2px;
	position:relative;
}

.wpcf7-previous {
	cursor:pointer;
	color:#444;
  font-size: 2.2rem;
	font-weight:bold;
	width: 400px;
	margin: 5% auto; 
	display:block;
	border-radius: 60px;
	background:#E8E8E8;
  border: solid 1px #444;
  padding: 2% 8%;
  text-align: center
}

.wpcf7-previous:hover {
	background:#fff;
	border:1px solid #6F6F6F;
	color:#444;
}

.wpcf7-previous:active {
	box-shadow:none;
	bottom:-2px;
	position:relative;
}

.wpcf7 input:focus, .wpcf7 textarea:focus {
	border:1px solid #009de1;
}

.wpcf7-captchac {
	border:1px solid #ccc;
}

.contact-top-a {
	cursor:pointer;
	color:#444;
  font-size: 2.2rem;
	font-weight:bold;
	width: 40%;
	margin: 5% auto; 
	display:block;
	border-radius: 60px;
	background:#fff;
  border: solid 1px #444;
  padding: 2% 8%;
}

.contact-top-a:hover {
	background:#444;
	border:1px solid #444;
	color:#fff;
}
/*お問い合わせここまで*/

/*投稿一覧*/
.news-section{
  margin: 20% auto;
}

.news-section h2{
  font-size: 2rem;
}

.nav-links{
  text-align: left;
}

.page-numbers{
  margin: 0 5px;
}

.category-title{
  font-size: 1.8rem;
}
/*投稿一覧ここまで*/

/*投稿ページ*/
.single-box{
  margin: 20% auto;
}

.single-box h1{
  font-size: 2.2rem;
}
/*投稿ページここまで*/

/*404*/
.none-box{
  margin: 25% auto 3% auto;
}

.none-title{
  font-size: 3rem;
  text-align: left;
  padding-left: 5%;
}

.none-p{
  font-size: 1.6rem;
  padding: 0 5%;
}
/*404ここまで*/

  /*コンテンツ設定ここまで*/

  /*footer*/
  footer{
    margin: 20% 0 0 0;
    padding: 0;
  }

  footer img{
    width: 70%;
  }

  .footer-box{
    margin: 5% auto;
    display: block;
    padding: 0 5%;
  }

  .footer-ul {
    display: block;
    margin: 0 auto;
    list-style-type: none;
    font-size: 1.8rem;
  }
  
  .footer-li {
    margin-right: 0;
    padding-right:0;
    border-right:none;
    padding-bottom: 1%;
    border-bottom: #444 solid 1px;
    margin-bottom: 3%;
  }

  .copy-p{
    margin: 10px 0 0 0;
    font-size: 0.8rem;
  }
  /*footerここまで*/
}
