@charset "utf-8";
/* css Document */
body {
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.5rem;
  font-size: 18px;
  color: #2c2e35;
  font-weight: 500;
  background: #f2f2f2;
  vertical-align: baseline;
}
a {
  text-decoration: none;
}
section {
  overflow: hidden;
}
/*------------------------------------------
  ボタンアニメーション
------------------------------------------*/
img.btn_animate01 {
  margin: 0 auto;
  animation: fuwafuwa 1s ease 0s infinite alternate;
  transform-origin: center;
  cursor: pointer;
}
@keyframes fuwafuwa {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}
/*------------------------------------------
  基本コード
------------------------------------------*/
.main_container img {
  width: 100%;
}
section img {
  width: 100%;
}
section {
  background: #fff;
}
section.section1 {
  margin: 0 auto;
}
section.section5 img {
  background: #1D3266;
  box-shadow: 0 1px 0 0 #1D3266;
}
section.section6 img {
  background: #1D3266;
  box-shadow: 0 1px 0 0 #1D3266;
}
section.sec_btn {
  text-align: center;
}
section.sec_btn img {
  max-width: 690px;
}
section.sec_btn01 {
  background: #b90a0a;
  text-align: center;
}
section.sec_btn03 {
  background: #E3E9F1;
  text-align: center;
}
section.sec_btn04 {
  padding-top: 60px;
  text-align: center;
}
/* -----------------------------
もっと見る部分
-------------------------------*/
.cp_box2 {
  width: auto;
  margin: 0 auto 30px;
}
.cp_box2 input {
  display: none;
}
  
/*続きを読むボタン*/
.cp_box2 label {
  font-weight: bold;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80%;
  margin: 30px auto;
  padding: 0.3em 1em;
  cursor: pointer;
  transition: all 0.3s;
  text-align: center;
  color: #293d7a;
  border: 2px solid #293d7a;
  border-radius: 3px;
}
  
/*＋マーク*/
.cp_box2 label::after {
  position: absolute;
  content: '';
  right: 16px;
  width: 16px;
  height: 16px;
  background: #293d7a;
  clip-path: polygon(0 40%, 40% 40%, 40% 0, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%);
}
.cp_box2 label:hover::after {
  color: #ffffff;
}
  
/*hover*/
.cp_box2 label:hover {
  transition: all 0.3s;
  color: #ffffff;
  background: rgba(41, 61, 122 ,0.7);
}
.cp_box2 label:hover::after {
  background: #ffffff;
}

/*-マーク*/
.cp_box2 input:checked ~ label::after {
  background: #293d7a;
  clip-path: polygon(0 40%, 100% 40%, 100% 60%, 0 60%);
}

/*hover */
.cp_box2 input:checked ~ label:hover::after {
  background: #ffffff;
}
.cp_box2 div.cp_container2 {
  position: relative;
  z-index: 10;
  overflow: hidden;
  height: 0;
  margin-top: -1px;
}
.cp_box2 input:checked ~ div.cp_container2 {
  transition: height 0.5s ease-in-out;
}

/* 高さを設定*/
.cp_box2 input:checked ~ div.cp_container2 {
  height: auto;
}


/* -----------------------------
もっと見る部分
-------------------------------*/
.cp_box3 {
  width: auto;
  margin: 30px auto 0;
}
.cp_box3 input {
  display: none;
}
/*続きを読むボタン*/
.cp_box3 label {
  font-weight: bold;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80%;
  margin: 30px auto;
  padding: 0.3em 1em;
  cursor: pointer;
  transition: all 0.3s;
  text-align: center;
  color: #293d7a;
  border: 2px solid #293d7a;
  border-radius: 3px;
}
/*＋マーク*/
.cp_box3 label::after {
  position: absolute;
  content: '';
  right: 16px;
  width: 16px;
  height: 16px;
  background: #293d7a;
  clip-path: polygon(0 40%, 40% 40%, 40% 0, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%);
}
.cp_box3 label:hover::after {
  color: #ffffff;
}
/*hover*/
.cp_box3 label:hover {
  transition: all 0.3s;
  color: #ffffff;
  background: rgba(41, 61, 122 ,0.7);
}
.cp_box3 label:hover::after {
  background: #ffffff;
}
/*-マーク*/
.cp_box3 input:checked ~ label::after {
  background: #293d7a;
  clip-path: polygon(0 40%, 100% 40%, 100% 60%, 0 60%);
}
/*hover*/
.cp_box3 input:checked ~ label:hover::after {
  background: #ffffff;
}
.cp_box3 div.cp_container3 {
  position: relative;
  z-index: 10;
  overflow: hidden;
  height: 0;
  margin-top: -1px;
}
.cp_box3 input:checked ~ div.cp_container3 {
  transition: height 0.5s ease-in-out;
}
/* 高さを設定 */
.cp_box3 input:checked ~ div.cp_container3 {
  height: auto;
}
/*-------------------------------------------
ヘッダー非表示
---------------------------------------------*/

.hidden {
  animation: fade .2s ease-in-out forwards;
   pointer-events:none;
 }
 
 @keyframes fade {
  from {
   opacity: 1;
  }
 
  to {
   opacity: 0;
  }
 }
 
 .visible {
  animation: fadeOut .2s ease-in-out forwards;
   pointer-events:auto;
 }
 
 @keyframes fadeOut {
  from {
   opacity: 0;
  }
 
  to {
   opacity: 1;
  }
 }

/*------------------------------------------
  お問い合わせフォーム
------------------------------------------*/
.iframe_wrapper {
  margin: auto;
  width: 750px;
}
/* ------ 500px以下 ------- */
@media (max-width: 750px) {
  section.section1 {
    margin: 0 auto;
  }
  section.sec_btn04 {
    padding-top: 30px;
  }
  .head_btn {
    justify-content: flex-end;
  }
  /*------------------------------------------
  お問い合わせフォーム
------------------------------------------*/
  .iframe_wrapper {
    width: 100%;
  }
  .sec13_cont .container {
    padding: 0;
  }
}