@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.6
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

body{
  background-color: #fff;
  }
  

.header-container{
    box-shadow: 2px 2px 8px 0 #A0A098;
    z-index: 10;
    position: relative;
}

.tagline {
  margin: .6em 0 0;
}

.logo{
  line-height: 0;
}

.logo-text {
    padding: 5px 0 5px;
}

.logo-image {
  padding: 5px 0;
}

.mobile-menu-buttons-header {
  background: none;
  position: absolute;
  top: auto;
  bottom: auto;
  left: auto;
  right: 15px;
  z-index: 2;
  display: inline-block;
  line-height: 1.4;
  height: auto;
  padding: 5px 0 5px;    
}
.mobile-menu-buttons-header .navi-menu-icon {
  font-size: 1.5em;    
}

.navi-menu-content{
  font-size: 1em;  
}

.carousel-content .a-wrap {
  margin: 0 0px 0px;
}

.carousel .a-wrap {
  padding: 0em 0em;
}

.carousel {
    margin-top: 0px;
}

.carousel-in {
    background-color: #fee2dd;
    padding: 20px 0px 0px 0px;
    width: auto;
}

.carousel-entry-card-thumb {
    margin-top: 0px;
}

.carousel-entry-card-title {
  margin: 8px 15px 8px 2px;
}


.breadcrumb.sbp-main-before + .content, .breadcrumb.pbp-main-before + .content{
  margin-top: 0px;
}

.main{
  padding: 0px 29px 100px;
}

.entry-title, .archive-title{

  margin: 10px 0 15px;
}

.eye-catch-wrap {


  justify-content: center;
}

.article h1{
  font-weight: normal;
  text-align: center;
}

.article h2{
  background-color: initial;
  color: #305096;
  padding: 15px 5px 0px;
}

.article h3{
  border-left: 6px solid #305096;
}

.cat-link {
  background-color: #305096;
}

.sidebar h3{
    border-top: 3px solid #ee5d5d;
    background-color: #fff;
    text-align: center;
    padding: 15px 0px;
    margin: 10px 0;
}


#sidebar{
    font-size: 14px;
}

#sidebar a{
    font-size: 14px;
    padding: 0px 0;
}




/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1240px以下*/
@media screen and (max-width: 1240px){
  /*必要ならばここにコードを書く*/
}

/*1030px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
    
 .content-in {
  display: flex;
    }

 main.main{
  width: 67%;
}


  #sidebar{
  padding: 10px;
  width: 28%;
}

 
}

/*768px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
     .content-in {
  display: block;
    }

    main.main
 {
      display: block;
      margin: 0px 10px;
      padding: 0px 10px;
      width: auto;
    }

  div.sidebar {
    display: block;
    margin: 10px;
    width: auto;
  }
    #sidebar{
        width: auto;
  }
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


    /************************************
    ** 横長テーブル
    ************************************/
    .p-sticky-table{
      white-space: nowrap;
      line-height:1.6;
    }
    .p-sticky-table table{
      border:none;
      border: 1px solid #dedede;
      border-bottom: none;
      border-collapse: collapse;
      word-break: break-all;
      table-layout: fixed;
      display:block;
      overflow:scroll;
      max-height: 80vh;
    }
    .p-sticky-table thead th:first-child {
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      left: 0;
      z-index: 3;
    }
    .p-sticky-table thead th {
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      z-index: 2;
      text-align:center;
    }
    .p-sticky-table tbody th:first-child{
      position: -webkit-sticky;
      position: sticky;
      left: 0;
      z-index: 1;
      border:none;
      white-space: normal;
      min-width: 130px;
    }
    .p-sticky-table th, .p-sticky-table td {
      min-width: 50px;
      text-align: left;
      font-size: 16px !important;
      position: relative;
      padding: 13px !important;
      color: #333;
      border: none !important;
      z-index: 0;
      vertical-align:middle !important;
      background:#fff;
    }
    .p-sticky-table th{
      background:#f0f9ff !important;
      letter-spacing: 1px;
      font-weight: 500 !important;
      color: #555 !important;
    }
    .p-sticky-table tr{
      border-bottom:none !important;
    }
    .p-sticky-table img{
      margin: 10px auto;
      display: block;
      padding: 0;
      max-width: 80% !important;
    }
    .p-sticky-table table th::before, .p-sticky-table table td::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      border-right: 1px solid #dedede;
      border-bottom: 1px solid #dedede;
      z-index: -1;
    }
    /* スマホ */
    @media screen and (max-width: 560px) {
      .p-sticky-table table {
        max-height: 60vh;
        }
      .p-sticky-table thead th:first-child, .p-sticky-table tbody th:first-child {
            min-width: 25vw;
        }
       .p-sticky-table th, .p-sticky-table td {
            font-size: 12px !important;
            padding: 7px !important;
        }
    }
    /* 中央寄せ */
    .pst-center td {
      text-align: center;
    }


    /************************************
    ** カッテネ
    ************************************/

.kattene {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  padding: 10px;
  padding-bottom: 5px;
  margin-bottom: 1em;
  box-sizing: border-box; }

.kattene div{
  margin: 0;
}

.kattene__imgpart {
  text-align: center; }

  .kattene__imgpart img {
    -webkit-box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.8);
    -o-box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.8);
    -ms-box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.8);
    margin: 0;}

.kattene__description {
  font-size: 0.8em; }

.kattene .kattene__btns {
  width: 100%;
  margin-top: 0.5em; }

  .kattene__btns:after {
    display: block;
    clear: both;
    height: 0px;
    visibility: hidden;
    content: "."; }

  .kattene__btns > div {
    float: left;
    margin-bottom: 5px; }

  .kattene__btns .kattene__btn {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
   }

  .kattene__btns.__three > div {
    width: 32.66667%; }

    .kattene__btns.__three > div:not(:last-child) {
      margin-right: 1%; }

  .kattene__btns.__two > div {
    width: 49.5%; }

    .kattene__btns.__two > div:nth-child(odd) {
      margin-right: 1%; }

@media screen and (max-width: 900px) {
  .kattene__imgpart {
    padding-bottom: 1em; }
  .kattene .kattene__btns {
    margin-top: 0.5em; }
  .kattene__btns.__five > div {
  width: 49.5%; }
  .kattene__btns.__five > div:nth-child(odd) {
    margin-right: 1%; }
  .kattene__btns.__five > div:last-child {
    margin-right: 0;
    float: right; }

  .kattene__btns.__four > div {
    width: 49.5%; }

    .kattene__btns.__four > div:nth-child(odd) {
      margin-right: 1%; }

  .kattene__btns.__one > div {
    width: 50%;
    margin-left: 25%; } }
@media screen and (min-width: 901px) {

  .kattene {
    display: table;
    width: 100%; }

  .kattene__imgpart {
    display: table-cell;
    width: 20%;
    padding-bottom: 5px;
  }

  .kattene__infopart {
    display: table-cell;
    vertical-align: top;
    position: relative;
    padding-left: 10px;
    width: 80%; }

  .kattene .kattene__description {
    margin-bottom: 4em;
  }

  .kattene__btns {
    position: absolute;
    bottom: 0;
    box-sizing: border-box;
    padding-right: 10px; }

  .kattene__btns.__five > div {
    width: 19.2%; }

    .kattene__btns.__five > div:not(:last-child) {
      margin-right: 1%; }

    .kattene__btns.__four > div {
      width: 24.25%; }

      .kattene__btns.__four > div:not(:last-child) {
        margin-right: 1%; }

    .kattene__btns.__two > div {
      width: 49.5%; }

      .kattene__btns.__two > div:not(:last-child) {
        margin-right: 1%; }

    .kattene__btns.__one > div {
      width: 49.5%;
      float: right; } }

.kattene .kattene__btn {
  appearance: none;
  background-color: #54c0d1;
  border: 0;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1;
  padding: 0.75em 0;
  text-decoration: none;
  transition: background-color 150ms ease;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap; }

  .kattene__btn:hover, .kattene__btn:focus {
    background-color: #439aa7;
    color: #fff !important; }

  .kattene__btn:disabled {
    cursor: not-allowed;
    opacity: 0.5; }

    .kattene__btn:disabled:hover {
      background-color: #54c0d1; }

.kattene__btn.__small {
  padding: 0.55em;
  font-size: 0.9em; }

.kattene__btn.__orange {
  background-color: #FF9901;
  -webkit-box-shadow: 0 5px 0 #cc7a01;
  -moz-box-shadow: 0 5px 0 #cc7a01;
  box-shadow: 0 5px 0 #cc7a01;
  -o-box-shadow: 0 5px 0 #cc7a01;
  -ms-box-shadow: 0 5px 0 #cc7a01;
  margin-bottom: 5px;
  border-radius: 3px;
  text-align: center; }

  .kattene__btn.__orange:hover {
    background-color: #cc7a01; }

  .kattene__btn.__orange i {
    font-weight: bold; }

    .kattene__btn.__orange i:before {
      vertical-align: middle;
      font-size: 1.2em;
      margin-right: 0.2em; }

.kattene__btn.__blue {
  background-color: #007dcd;
  -webkit-box-shadow: 0 5px 0 #0064a4;
  -moz-box-shadow: 0 5px 0 #0064a4;
  box-shadow: 0 5px 0 #0064a4;
  -o-box-shadow: 0 5px 0 #0064a4;
  -ms-box-shadow: 0 5px 0 #0064a4;
  margin-bottom: 5px;
  border-radius: 3px;
  text-align: center; }

  .kattene__btn.__blue:hover {
    background-color: #0064a4; }

  .kattene__btn.__blue i {
    font-weight: bold; }

    .kattene__btn.__blue i:before {
      vertical-align: middle;
      font-size: 1.2em;
      margin-right: 0.2em; }

.kattene__btn.__red {
  background-color: #c20004;
  -webkit-box-shadow: 0 5px 0 #9b0003;
  -moz-box-shadow: 0 5px 0 #9b0003;
  box-shadow: 0 5px 0 #9b0003;
  -o-box-shadow: 0 5px 0 #9b0003;
  -ms-box-shadow: 0 5px 0 #9b0003;
  margin-bottom: 5px;
  border-radius: 3px;
  text-align: center; }

  .kattene__btn.__red:hover {
    background-color: #9b0003; }

  .kattene__btn.__red i {
    font-weight: bold; }

    .kattene__btn.__red i:before {
      vertical-align: middle;
      font-size: 1.2em;
      margin-right: 0.2em; }

.kattene__btn.__green {
  background-color: #0BBD80;
  -webkit-box-shadow: 0 5px 0 #099766;
  -moz-box-shadow: 0 5px 0 #099766;
  box-shadow: 0 5px 0 #099766;
  -o-box-shadow: 0 5px 0 #099766;
  -ms-box-shadow: 0 5px 0 #099766;
  margin-bottom: 5px;
  border-radius: 3px;
  text-align: center; }

  .kattene__btn.__green:hover {
    background-color: #099766; }

  .kattene__btn.__green i {
    font-weight: bold; }

    .kattene__btn.__green i:before {
      vertical-align: middle;
      font-size: 1.2em;
      margin-right: 0.2em; }

.kattene__btn.__pink {
  background-color: #e1325b;
  -webkit-box-shadow: 0 5px 0 #b42849;
  -moz-box-shadow: 0 5px 0 #b42849;
  box-shadow: 0 5px 0 #b42849;
  -o-box-shadow: 0 5px 0 #b42849;
  -ms-box-shadow: 0 5px 0 #b42849;
  margin-bottom: 5px;
  border-radius: 3px;
  text-align: center; }

  .kattene__btn.__pink:hover {
    background-color: #b42849; }

  .kattene__btn.__pink i {
    font-weight: bold; }

    .kattene__btn.__pink i:before {
      vertical-align: middle;
      font-size: 1.2em;
      margin-right: 0.2em; }
