@charset "UTF-8";

/* 
レスポンシブ==============================
 -PC -1200px~1900px 【rem調整】
 -タブレット -
 -SP切り替え -
 -サイズ -PC:rem/SP:vw(最大値(1900px)/最小値(1200px))
===========================
フォント：
日本語：	font-family: 'NotoSansJP';
日本語(太字)：	font-family: 'NotoSansJP700';
英数字：  font-family: NotoSansJP;
===========================
フォントサイズ： 1rem = 10px
===========================
フォントの太さ: (太字 → (font-familyで指定)："NotoSansJP700")
 (※font-weight:bold;では若干大きさが違う為)
===========================
リセット.css："sanitize.css"(ノーマライズ系(box-sizing:border-box;))
===========================
*/



@font-face {
	font-family: 'NotoSansJP';
	src: url(../fonts/NotoSansJP.otf);
}
@font-face {
	font-family: 'NotoSansJP700';/* 太字 */
	src: url(../fonts/NotoSansJP700.otf);
}
@font-face {
	font-family: 'NotoSansJP00';/* 太字 */
	src: url(../fonts/NotoSansJP00.otf);
}
/* @font-face {
	font-family: 'NotoSansJP900';
	src: url(../../../../../fonts/NotoSansJP900.otf);
} */

*{
  padding: 0px;
  margin: 0px;
  color: #000;
}
html{
  font-size: 62.5%;
  scroll-behavior: smooth;
  scroll-padding-top: 140px;
}
li{
  list-style: none;
}
a{
  text-decoration: none;
}
body{
  font-family: "NotoSansJP";
}

h1{
  font-size: 7.0rem;
  margin: 0;
  color: #6A3906;
  font-family: "NotoSansJP700";
}
h2{
  font-size: 3.8rem;
  color: #3C5469;
  font-family: "NotoSansJP700";
}
h3{
  font-size: 3.4rem;
  color: #3C5469;
  font-family: "NotoSansJP700";
}
h4{
  font-size: 2.8rem;
  color: #3C5469;
  font-family: "NotoSansJP700";
}
h5{
  font-size: 2.2rem;

}
h5,h6{
  color: #3C5469;
  font-family: "NotoSansJP700";
}
p{
  font-size: 1.8rem;
}
/* フォントサイズ調整 1250-768 */
/* 
@media screen and (max-width:1250px){
  h1{
    font-size: 3.84vw;
    color: #0B2F80;
  }
  h2{
    font-size: 2.56vw;
    color: #0B2F80;
  }
  h3{
    font-size: 1.92vw;
    color: #0B2F80;
  }
}
 */
/* フォントサイズ調整 768-375 */
/* 
@media screen and (max-width:768px){
  h1{
    font-size: 4.813vw;
  }
  h2{
    font-size: 4.948vw;
  }
  h3{
    font-size: 4.167vw;
  }
}
@media screen and (max-width:450px){
  h1{
    font-size: 3rem;
  }
  h2{
    font-size: 2.4rem;
  }
  h3{
    font-size: 2.2rem;
  }
}
 */

 /* color */
 .is-red{
  color: #D83F2B;
}
.is-pink{
  color: #DD6C90;
}
.is-green{
  color: #13AE67;
}
.is-emeraldgreen{
  color: #26B7BC;
}
.is-yellow{
  color: #F39800;
}
.is-lightgreen{
  color: #8FC31F;
}
.is-gray{
  color: #3C5469;
}
/* 幅:1500px固定 */
.max_w1500{
  max-width: 1500px;
  min-width: 1200px;
  margin: 0 auto;
}
/* 幅:1200px固定 */
.fix_w{
  width: 1200px;
  margin: 0 auto;
}


/* PC/SP 切り替え */
.toggle_sp{
  display: none!important;
}
.toggle_sp450{
  display: none!important;
}
@media screen and (max-width:768px){
  .toggle_pc{
    display: none!important;
  }
  .toggle_sp,.toggle_sp450{
    display: inherit!important;
  }
  span.toggle_sp{
    display: inline!important;
  }
}


/* ヘッダー */
/* /////////////////////////////////////////// */
body{
  margin-top: 120px;
}
header{
  width: 100%;
  position: fixed;
  top: 0px;
  height: 120px;
  z-index: 1000;
  background-color: rgba(255,255,255,0.5);
}
.h_wrapper{
  height: 120px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header .hd_logo{
  width: 80px;
  margin: 0 auto;
  z-index: 1000;
}
header .hd_logo img{
  width: 100%;
}
/* 
@media screen and (max-width:768px){
  header .hd_logo{
    width:42.063vw;
    margin-left: 6.51vw;
  }
  header .hd_logo img{
    width: 100%;
  }
}
@media screen and (max-width:450px){
  header .hd_logo{
    width:48vw;
  }
} */

header .hd_logo_sp{
  position: fixed;
  top: 15px;
}
header .hd_nav__pc nav ul{
  padding-right: 19px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
}
header .hd_nav__pc nav ul li{
  width: 180px;
  height: 90px;
  padding: 0 10px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;

  position: relative;
}
header .hd_nav__pc nav ul li{
  color: #fff;
}
header .hd_nav__pc nav ul li a{
  position: absolute;
  width: 100%;
  height: 100%;
}
header .hd_nav__pc nav ul li.is-emeraldgreen{
  background: #26B7BC;
}
header .hd_nav__pc nav ul li.is-pink{
  background: #DD6C90;
}
header .hd_nav__pc nav ul li.is-yellow{
  background: #F39800;
}
header .hd_nav__pc nav ul li.is-gray{
  background: #3C5469;
}
header .hd_nav__pc nav ul li.is-red{
  background: #D83F2B;
}
header .hd_nav__pc nav ul li p{
  display: block;
  font-size: 1.8rem;
  line-height: 1.25;
  font-family: "NotoSansJP700";
  color: #fff;
}
/* nav:hover時 */
header .hd_nav__pc nav ul li:hover{
  background:#fff;
  border: 4px solid;
}

header .hd_nav__pc nav ul li.is-emeraldgreen:hover{
  border: 4px solid #26B7BC;
}
header .hd_nav__pc nav ul li.is-pink:hover{
  border: 4px solid #DD6C90;
}
header .hd_nav__pc nav ul li.is-yellow:hover{
  border: 4px solid #F39800;
}
header .hd_nav__pc nav ul li.is-gray:hover{
  border: 4px solid #3C5469;
}
header .hd_nav__pc nav ul li.is-red:hover{
  border: 4px solid #D83F2B;
}

header .hd_nav__pc nav ul li.is-emeraldgreen:hover > p{
  color: #26B7BC;
}
header .hd_nav__pc nav ul li.is-pink:hover > p{
  color: #DD6C90;
}
header .hd_nav__pc nav ul li.is-yellow:hover > p{
  color: #F39800;
}
header .hd_nav__pc nav ul li.is-gray:hover > p{
  color: #3C5469;
}
header .hd_nav__pc nav ul li.is-red:hover > p{
  color: #D83F2B;
}


/* 固定ナビ */
.nav__fix{
  position: fixed;
  top: -100px;  
  width: 100%;
  transition: .5s; /* アニメーションタイミング */
}
.nav__fix.is-show {
  top: 0;
}
/* end */
/* /////////////////////////////////// */



/* バーガーメニュー */
/* /////////////////////////////////// */
/* 
.hd_nav__sp{
  display: none;
}
@media screen and (max-width:920px){
  .hd_nav__sp{
    display: inline;
  }
  .hd_nav__pc{
    display: none;
  }
}
#toggle {
  position: absolute;
  top: 50px;
  right: 35px;
}
#toggle-box {
  position: relative;
  width: 30px;
  height: 23px;
  cursor: pointer;
}
@media screen and (max-width:920px){
  #toggle {
    top: 19px;
    right: 20px;
    margin-top: 0.1rem;
  }
  #toggle-box {
    width: 25px;
    height: 19px;
  }
}
header .togglefix{
  position: fixed!important;
}
#toggle-box > span {
width: 100%;
height: 2px;
left: 0;
display: block;
background: #fff;
position: absolute;
transition: transform .6s ease-in-out;
}
 */
/* header100vh固定 js付与*/
/* 
.togglefix #toggle-box > span {
  background: #fff;
}
#toggle-box > span:nth-child(1) {
  top: 0;
}
#toggle-box > span:nth-child(2) {
  top: 50%;
  transform: translatey(-30%);
}
#toggle-box > span:nth-child(3) {
  bottom: 0;
}
 */

/* バーガーメニュークリック「×」マーク */
/* 
.is-open #toggle-box > span {
  background: #fff;
}
.is-open #toggle-box > span:nth-child(1) {
top: 50%;
transform: rotate(45deg) translatey(-30%);
}
.is-open #toggle-box > span:nth-child(2) {
width: 0;
}
.is-open #toggle-box > span:nth-child(3) {
top: 50%;
transform: rotate(-45deg) translatey(-30%);
}
#toggle {
  z-index: 1000;
}
#main {
  position: relative;
}
 */

/* 中身メニュー、初期非表示 */
/* 
#nav-content::-webkit-scrollbar {
  display: none;
}
#nav-content {
  overflow: auto;
  width: 100%;
  height: 100%;
  background: #0B2F80;
  position: fixed;
  bottom: 100%;
  left: 0;
  text-align: center;
  display: flex;
  transition: 0.3s;
}
#nav-content nav{
  width: 100%;
  height: 100vh;
  flex-direction: row;
}
@media screen and (max-width:768px){
  #nav-content nav{
    height: 100%;
    width: 100%;
  }
}
#nav-content ul {
height: 100vh;
width: 80%;
margin: 0 auto;
display: flex;
justify-content: center;
flex-direction: column;
list-style: none;
text-align: center;
}
#nav-content ul li {
  border-bottom: 1px solid #fff;
}
#nav-content a{
width: 100%;
height: 100%;
display: inline-block;
font-size: 40px;
line-height: 0.875;
text-align: center;
margin: 0;
padding: 3vh 0;
pointer-events: none;
color: #fff;
text-decoration: none;
transition: all .3s ease;
}
#nav-content a:hover{
opacity: 0.6;
transform: translateY(-5px);
}
@media screen and (max-width:768px){
  #nav-content .nav_bgimg{
    display: none;
  }
  #nav-content ul {
    text-align: center;
  }
  #nav-content a {
    font-size: 5.208vw;
    line-height: 0.875;
    text-align: center;
    margin: 0;
    padding: 3vh 0;
    pointer-events: none;
  }
}
@media screen and (max-width:768px){
  #nav-content a {
    font-size: 20px;
  }
}
 */

/* .is-open追加される→メニュー表示 */
/* 
.is-open {
  overflow: hidden;
}
.is-open #nav-content {
display: flex;
z-index: 999;
bottom: 0;
}
.is-open #nav-content a{
pointer-events: auto;
}
.is-open #nav-content a.font-hel{
  font-family: Helvetica;
}
@media screen and (max-width:768px){
  .is-open .logo{
  display: none;
  }
}
 */

/*フェードイン*/
/* ///////////////////////////// */
/* 
.fadeUpTrigger_c,.fadeUpTrigger_a{
  opacity: 0;
}
.fadein_a {
  transition: 2.5s ease forwards;
}
.fadein_c {
  opacity: 1;
  transition: 1s ease forwards;
}

#nav-content li:nth-child(1) {
  animation-delay: 0.3s;
}
#nav-content li:nth-child(2) {
  animation-delay: 0.6s;
}
#nav-content li:nth-child(3) {
  animation-delay: 0.9s;
}
#nav-content li:nth-child(4) {
  animation-delay: 1.2s;
}
#nav-content li:nth-child(5) {
  animation-delay: 1.5s;
}

.archive_topics .blocklist li:nth-child(1) {
  animation-delay: 0.3s;
}
.archive_topics .blocklist li:nth-child(2) {
  animation-delay: 0.6s;
}
.archive_topics .blocklist  li:nth-child(3) {
  animation-delay: 0.9s;
}
.archive_topics .blocklist  li:nth-child(4) {
  animation-delay: 1.2s;
}
.archive_topics .blocklist  li:nth-child(5) {
  animation-delay: 1.5s;
}
.archive_topics .blocklist  li:nth-child(6) {
  animation-delay: 1.8s;
}
.archive_topics .blocklist  li:nth-child(7) {
  animation-delay: 2.1s;
}
.archive_topics .blocklist  li:nth-child(8) {
  animation-delay: 2.4s;
}
.archive_topics .blocklist  li:nth-child(9) {
  animation-delay: 2.7s;
}

.block_topics ul li:nth-child(1) {
  animation-delay: 0.3s;
}
.block_topics ul li:nth-child(2) {
  animation-delay: 0.6s;
}
.block_topics ul li:nth-child(3) {
  animation-delay: 0.9s;
}
 */
/* /////////////////////////////////// */
/* end */


/* ページトップ_追従ボタン */
/* /////////////////////////////////// */
.pagetop{
  width: 80px;
  transition: 0.3s;
  position: fixed;
  bottom: 100px;
  right: 65px;
}
.pagetop:hover{
  width: 100px;
  bottom: 90px;
  right: 55px;
}
.pagetop img{
  width: 100%;
}
.pagetop a{
  display: block;
  text-decoration: none;
}
/* /////////////////////////////////// */
/* end */


/* フッター前 pdfボタン */
/* /////////////////////////////////// */
.sec_clickhere{
  text-align: center;
  font-size: 1.9rem;
  margin-bottom: 0px;
  padding: 50px 0px 50px;
}
.sec_clickhere .pdf{
  background-image: url(../../../../../images/products/perfect/btn1.jpg);
  background-size: cover;
  background-position: right;
  padding: 10px 100px;
  display: inline-block;
  margin: 25px 0px;
}
.sec_clickhere .pdf a{
  text-decoration: none;
  color: #fff;
  font-family: "NotoSansJP700";
}
.sec_clickhere .contact{
  margin: 35px 0px 25px;
}
.sec_clickhere .contact a{
  text-decoration: none;
  color: #0B2F80;
  border-top: 2px solid #0B2F80;
  border-bottom: 2px solid #0B2F80;
  padding: 10px 15px;
  font-family: "NotoSansJP700";
}
/* 
@media screen and (max-width:768px){ 
  .sec_clickhere{
    padding: 6.51vw 0px 6.51vw;
    margin-bottom: 0px;
  }
  .sec_clickhere .pdf{
    font-size: 4.688vw;
    padding: 10px 8.021vw;
  }
  .sec_clickhere .contact a {
    font-size: 5.208vw;
  }
} */

/* /////////////////////////////////// */
/* end */


/* フッター */
/* /////////////////////////////////// */
footer{
  background: #fff;
  height: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .copyright{
  font-size: 1.8rem;
  text-align: center;
}
/* 
@media screen and (max-width:768px){
  footer{
    height: 90px;
    flex-direction: column;
    justify-content: space-evenly;
    text-align: center;
  }
  footer .ft_logo{
    margin-left: 0px;
  }
  footer .ft_logo a img{
    width: 70%;
  }
  footer .copyright{
    font-size: 2.5vw;
    padding-right: 0;
  }
} */

/* /////////////////////////////////// */
/* end */