/**
Theme Name: IshiokaHalf-thema
Author: aya
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ishiokahalf-thema
Template: astra
*/

/*------------------------------------
 * acf feelds用 記事パーツcss
 * ---------------------------------*/
.flex.column1 {
   -moz-justify-content: center;
   -webkit-justify-content: center;
   justify-content: center;
}

.flex.column1 .block-card01 {
   width: 80%;
   text-align: center;
   margin: 0 auto;
   padding: 15px;
}

.block-card01 p.card-ttl,
.block-card02 p.card-ttl,
.block-card03 p.card-ttl {
   font-size: 1.6em;
   text-align: center;
   padding: 0;
   margin: 0;
}

.flex.column1 .block-card01 img {
   width: 100%;
   height: 350px;
   object-fit: cover;
}

.block-card01 p,
.block-card02 p,
.block-card03 p {
   text-align: left;
   padding: 5px;
}

.flex.column2 {
   align-items: flex-end;
}

.flex.column2 .block-card01,
.flex.column2 .block-card02 {
   width: 46%;
   margin: 0 auto;
}

.flex.column2 .block-card01 img,
.flex.column2 .block-card02 img {
   width: 100%;
   /* height: 290px;
   object-fit: cover; */
}

.flex.column3 {
   align-items: flex-end;
}

.flex.column3 .block-card01,
.flex.column3 .block-card02,
.flex.column3 .block-card03 {
   width: calc(100% / 3 - 2%);
   margin: 0 1%;
}

.flex.column3 .block-card01 img,
.flex.column3 .block-card02 img,
.flex.column3 .block-card03 img {
   width: 100%;
   /* height: 200px;
   object-fit: cover; */
}

.flex.Introduction_rimg {
   align-items: flex-start;
}

.flex.Introduction_rimg .intro-descr {
   width: 65%;
   padding: 10px;
}

.flex.Introduction_rimg .intro-img img {
   width: 100%;
   height: 220px;
   object-fit: cover;
}

.flex.Introduction_rimg .intro-img {
   width: 33%;
}

.flex.Introduction_limg {
   align-items: flex-start;
}

.flex.Introduction_limg .intro-descr {
   width: 65%;
   padding: 10px;
}

.flex.Introduction_limg .intro-img img {
   width: 100%;
   height: 220px;
   object-fit: cover;
}

.flex.Introduction_limg .intro-img {
   width: 33%;
}

.flex_content-faq-area dl dt,
.flex_content-faq-area dl dd {
   text-align: left !important;
   padding: 5px 20px;
}

.block-card01 p.card-ttl,
.block-card02 p.card-ttl,
.block-card03 p.card-ttl {
   font-size: 24px;
   line-height: 1.75em;
   text-align: center;
   padding: 0 10px;
   margin: 0 0 15px 0;
}

.block-card01 p,
.block-card02 p,
.block-card03 p {
   text-align: left;
   font-size: 18px;
   line-height: 1.75em;
   padding: 15px 10px;
}

.intro-descr p {
   font-size: 18px;
   line-height: 1.75em;
}

.flex.column1,
.flex.column2,
.flex.column3,
.flex.Introduction_rimg,
.flex.Introduction_limg,
.post_gallery,
.table-feeld {
   margin: 60px 0;
}

.flex.column2 {
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
}

.flex.Introduction_rimg .intro-img img,
.flex.Introduction_limg .intro-img img {
   min-height: 250px;
}

.flex.Introduction_limg,
.flex.Introduction_rimg {
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}

.post_gallery {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
}

.post_gallery li {
   width: 18%;
   margin: 0 15px;
}

.post_gallery li:before {
   display: none;
}

.post_gallery li img {
   display: block;
   width: 100%;
   height: 150px;
   object-fit: cover;
   margin-bottom: 10px;
}

.post_gallery li {
   width: 22%;
   width: -webkit-calc(88% / 4);
   width: calc(88% / 4);
   margin: 0 2%;
}

.post_gallery li:first-child {
   margin-left: 0;
}

.post_gallery li:nth-child(4n) {
   margin-right: 0;
}

.post_gallery li:nth-child(5n) {
   margin-left: 0;
}

.post_gallery p {
   font-size: 15px;
   color: #8a8989;
   line-height: 1.5em;
   text-align: center;
}

.table-feeld td,
.table-feeld th {
   padding: 15px;
   vertical-align: middle;
   font-size: 16px;
   border-right: 1px solid #b9b9b9;
}

.table-feeld th {
   background: #ecffe1
}

.table-feeld table {
   border: 1px solid #b9b9b9;
   width: 100%;
}

.table-feeld table tr {
   border-bottom: 1px solid #b9b9b9;
}

.flex.table-feeld .block-table {
   width: 48%;
}

.flex.table-feeld .block-table table {
   width: 100%;
}

.table-feeld caption {
   font-size: 16px;
   text-align: left;
   line-height: 1.5em;
   margin-bottom: 5px;
}

.flex_content-faq-area {
   margin: 60px 0;
}

#accordion {
   margin-bottom: 10px;
}

#accordion dt {
   font-size: 18px;
   border: 1px solid #b9b9b9;
   padding: 20px 10px;
   line-height: 1.75em;
}

#accordion dt:after {
   font-family: "Font Awesome 5 Pro";
   content: "\f0fe";
   display: inline-block;
   margin-left: 20px;
   font-size: 20px;
   color: #7ccc4c;
   vertical-align: bottom;
}

#accordion dd {
   background: #f5ffef;
   border: 1px solid #b9b9b9;
   font-size: 18px;
   border-top: 0;
   padding: 20px 10px;
   line-height: 1.75em;
}
.content_parts_wrap {
   margin-top: 20px;
   margin-bottom: 20px;
}
.gmap-content {
   height: 0;
   overflow: hidden;
   padding-bottom: 56.25%;
   position: relative;
   margin-bottom: 35px;
}

.gmap-content iframe {
   position: absolute;
   left: 0;
   top: 0;
   height: 100%;
   width: 100%;
}
.accessmap-content {
   margin-top: 20px;
   height: 0;
   overflow: hidden;
   padding-bottom: 35.25%;
   position: relative;
   margin-bottom: 35px;
}
.accessmap-content iframe {
   position: absolute;
   left: 0;
   top: 0;
   height: 100%;
   width: 100%;
}
.pdf-file-list {
   margin: 0;
   margin-bottom: 20px;
   list-style: none;
}
.pdf-file-list li {
   width: 100%;
   max-width: 600px;
   margin: 0 auto 20px;
   position: relative;
}
.pdf-file-list li a {
  font-weight: bold;
  color: #c50e24;
  display: block;
  text-align: center;
  border: 3px solid #c50e24;
  border-radius: 10px;
  padding: 15px;
  padding-left: 70px;
  background: #fff;
  transition: all 0.3s;
  box-shadow: 2px 3px 7px -2px #bababa;
}
.pdf-file-list li a:hover {
  color: #fff;
  background: #adc8d9;
  transition: all 0.3s;
  border-color: #adc8d9;
  box-shadow: none;
}
.pdf-file-list li a:before {
   position: absolute;
   top: 0;
   left: 0;
   width: 50px;
   height: 100%;
   content: "";
   border-radius: 0.5rem 0 0 0.5rem;
   background: rgba(0, 0, 0, 0.07);
}
.pdf-file-list li a i {
   font-size: 123%;
   position: absolute;
   top: 0;
   left: 0;
   width: 50px;
   padding: 15px 0;
   text-align: center;
   letter-spacing: 0;
   line-height: 1.6;
}
.pdf-file-list li a:hover i {
   -webkit-transform: scale(1.1);
   transform: scale(1.1);
   opacity: 1;
}
.card-repeat-box {
   width: 46%;
   margin-bottom: 50px;
}
.card-repeat-box p {
   margin-top: 20px;
}
.card-repeat-box p a {
   color: #0000ee;
   text-decoration: underline;
}

.flex.column-style1 {
   justify-content: center;
}

.flex.column-style1 .block-col1 {
   text-align: center;
   margin: 0 auto;
}

.flex.column-style1 .block-col1 img {
   width: 100%;
}

.flex.column-style2 {
   align-items: flex-start;
}
.flex.column-style2 .block-col1,
.flex.column-style2 .block-col2 {
   width: 46%;
   margin: 0 auto;
   text-align: center;
}

.flex.column-style2 .block-col1 img,
.flex.column-style2 .block-col2 img {
   width: 100%;
}

.flex.column-style3 {
   align-items: flex-start;
}

.flex.column-style3 .block-col1,
.flex.column-style3 .block-col2,
.flex.column-style3 .block-col3 {
   width: calc(100% / 3 - 2%);
   margin: 0 1%;
}

.flex.column-style3 .block-col1 img,
.flex.column-style3 .block-col2 img,
.flex.column-style3 .block-col3 img {
   width: 100%;
}

.flex.column-style1,
.flex.column-style2,
.flex.column-style3 {
   margin: 40px 0 30px;
}

@media screen and (min-width:771px) and (max-width:1000px) {

   .block-card01 p.card-ttl,
   .block-card02 p.card-ttl,
   .block-card03 p.card-ttl {
      font-size: 18px;
   }

   .block-card01 p,
   .block-card02 p,
   .block-card03 p,
   .intro-descr p {
      font-size: 16px;
   }
}

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

   .block-card01 p.card-ttl,
   .block-card02 p.card-ttl,
   .block-card03 p.card-ttl {
      font-size: 18px;
   }

   .block-card01 p,
   .block-card02 p,
   .block-card03 p,
   .intro-descr p {
      font-size: 16px;
   }

   .flex.column1,
   .flex.column2,
   .flex.column3,
   .flex.Introduction_rimg,
   .flex.Introduction_limg,
   .post_gallery,
   .table-feeld {
      margin: 30px 0;
   }

   .flex.column1 .block-card01,
   .flex.column2 .block-card01,
   .flex.column2 .block-card02,
   .flex.column3 .block-card01,
   .flex.column3 .block-card02,
   .flex.column3 .block-card03 {
      width: 100%;
   }

   .flex.column2 .block-card01 img,
   .flex.column2 .block-card02 img {
      height: 50vw;
   }

   .flex.column1 .block-card01 {
      padding: 0;
   }

   .flex.column1 .block-card01 img {
      height: 75vw;
   }

   .flex.column2 .block-card01 img,
   .flex.column2 .block-card02 img,
   .flex.column3 .block-card01 img,
   .flex.column3 .block-card02 img,
   .flex.column3 .block-card03 img {
      height: 50vw;
   }

   .flex.Introduction_rimg .intro-img,
   .flex.Introduction_limg .intro-img,
   .flex.Introduction_rimg .intro-descr,
   .flex.Introduction_limg .intro-descr {
      width: 100%;
   }

   .flex.Introduction_rimg {
      -ms-flex-wrap: wrap-reverse;
      flex-wrap: wrap-reverse;
   }

   .flex.Introduction_rimg .intro-img img,
   .flex.Introduction_limg .intro-img img {
      min-height: 50vw;
      height: 50vw;
   }

   .post_gallery {
      -webkit-box-pack: space-between;
      -ms-flex-pack: space-between;
      justify-content: space-between;
   }

   .post_gallery li {
      width: 45%;
      margin: 0;
   }

   .post_gallery li {
      width: 48%;
      margin: 0;
   }

   .post_gallery li img {
      height: 30vw;
   }

   .post_gallery p {
      font-size: 12px;
   }

   .table-feeld td,
   .table-feeld th {
      padding: 5px;
      vertical-align: middle;
      font-size: 12px;
      border-right: 1px solid #b9b9b9;
   }

   .table-feeld caption {
      font-size: 14px;
   }

   .flex.table-feeld .block-table {
      width: 100%;
      margin-top: 30px;
   }

   #accordion dt {
      font-size: 16px;
      padding: 10px;
      line-height: 1.5em;
   }

   #accordion dd {
      font-size: 16px;
      padding: 10px 10px;
      line-height: 1.5em;
   }

   #accordion dt:after {
      font-size: 18px;
   }

   table.defTable01 {
      table-layout: fixed;
      word-break: break-all;
      word-wrap: break-word;
   }

   table.defTable01 tr:first-of-type td {
      border-top: none;
   }

   table.defTable01 tr th,
   table.defTable01 tr td {
      display: block;
      width: 94%;
      margin: 0 auto;
      border-left: solid 1px #ccc;
      border-right: solid 1px #ccc;
   }

   table.defTable01 input.tdin_03 {
      width: 100%;
      margin: 0 auto;
   }

   table.defTable01 th span {
      float: right;
   }

   table.defTable01 input.tdin_01 {
      width: 100%;
   }

   table.defTable01 td.tel_area input {
      width: 100%;
   }

   table.defTable01 td.cen input {
      width: 90%;
      display: block;
      margin: 0 auto;
   }

   .gmap-content {
      padding-bottom: 96.25%;
   }
   .accessmap-content {
      padding-bottom: 70.25%;
   }
   .card-repeat-box {
      width: 100%;
   }
   .flex.column-style1,
   .flex.column-style2,
   .flex.column-style3 {
      margin: 30px 0 15px;
   }

   .flex.column-style1 .block-col1,
   .flex.column-style2 .block-col1,
   .flex.column-style2 .block-col2,
   .flex.column-style3 .block-col1,
   .flex.column-style3 .block-col2,
   .flex.column-style3 .block-col3 {
      width: 100%;
      margin-bottom: 10px;
   }


   .flex.column-style1 .block-col1 {
      padding: 0;
   }

}

 /* img------------------------------------------------------ */
.kadomaru {
   border-radius: 10px;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
}

.round {
   border-radius: 50%;
   -moz-border-radius: 50%;
   -webkit-border-radius: 50%;
}

.waku {
   border: 1px solid #ccc;
   padding: 5px;
}

.push {
   box-shadow: 2px 2px 2px 2px #ccc;
}

.push:hover {
   box-shadow: none !important;
   padding: 2px 0 0 2px;
   margin: -2px auto 10px;
}

/* タブ---------------------------------------------------------------*/
.tab-group {
   display: -moz-flex;
   display: -webkit-flex;
   display: flex;
   -moz-flex-flow: row wrap;
   -webkit-flex-flow: row wrap;
   flex-flow: row wrap;
   -moz-justify-content: flex-start;
   -webkit-justify-content: flex-start;
   justify-content: flex-start;
}

.tab {
   flex-grow: 1;
   padding: 5px;
   list-style: none;
   border: solid 1px #CCC;
   text-align: center;
   cursor: pointer;
   width: 25%;
   align-items: center;
   margin: 0 auto;
}

.panel-group {
   border-top: none;
}

.panel {
   display: none;
}

.tab.is-active {
   background: #F00;
   color: #FFF;
   transition: all 0.2s ease-out;
}

.panel.is-show {
   display: block;
}

