@charset "utf-8";
/* CSS Document */


.tfz_logobg article{
  filter: drop-shadow(0px 0px 30px #c1ecf3);
  z-index: 2;
  position: relative;
}

.tfz_pgheader p.tfz_logo{
  max-width:200px;
  margin:auto;
  padding-top: 1em;
}

.tfz_pgheader{
  background-image:url("../../img/common/logo_bg.svg");
  background-repeat:no-repeat;
  background-size:100%;
  background-position:center top;
  max-width:1000px;
  margin:auto;
  min-height: 892px;
  text-align: center;
  font-size: clamp(0.875rem, 0.625rem + 0.83vw, 1.25rem)/*1200-480 20-14px*/;
  line-height: 2em;
  color: #000;
  font-weight: bold;
}

.tfz_pgheader>p:first-of-type{margin-bottom: 1em;}

.tfz_contents{
  max-width: 1000px;
  width: 100%;
  padding: 1em;
  margin: 0 auto;
  border-radius: 0 0 20px 20px;
  background: #fff;
  text-align: center;
}

.tfz_msgarea{background: #FFF;}

.tfz_about{
  margin: -2em auto 0;
  max-width: 710px;
  width: 100%;
  height: 216px;
  border-radius: 140px 140px 0px 0px;
  background: linear-gradient(rgba(255, 255, 255, 0) 0%, #fdffc9 49.79%, #fff 100%);
  line-height: 1.8;
}
h2,h1{margin-bottom: 1em;}
.tfz_about p:first-of-type{
  font-size: clamp(0.875rem, 0.708rem + 0.56vw, 1.125rem)/*1200-480 14-18px*/;
  color: #000;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.tfz_about p:last-of-type{
  font-size: clamp(1rem, 0.667rem + 1.11vw, 1.5rem)/*1200-480 16-24px*/;
  font-weight: bold;
}
.tfz_about span:not(.tfz_about_spgr),
.tfz_box span{display: block;}
.tfz_txt-red{color: #f66031;}
.tfz_box{
  background: url("../img/bg2.jpg") center top no-repeat;
  background-size: 100%;
  padding: 3em 0.5em 0;
  margin-bottom: 1em;
}
.tfz_box p,
.tfz_box2 p{
  font-size: clamp(0.875rem, 0.708rem + 0.56vw, 1.125rem)/*1200-480 14-18px*/;
  line-height: 1.8;
  font-weight: bold;
}
.tfz_box p:first-of-type{margin-bottom: 1em;}
.tfz_box div{margin-bottom: 1em;}

p.tfz_note{font-size:clamp(0.75rem, 0.667rem + 0.28vw, 0.875rem)/*1200-480 12-14px*/ }

.tfz_box2{
  background: url("../img/bg3.jpg") center top no-repeat;
  padding: 3em 0.5em 0;
  margin-bottom: 3em;
  min-height: 612px;
}

.tfz_entrybtn {  
  background: linear-gradient(180deg, #49c7ef 0%, #49c7ef 0%, #dbfefd 20.28%, #fff 36.87%, #fff 56.27%, #fef29f 82.81%, #f68dc9 100%);
  border-radius: 100vh;
  padding: 3px;
  max-width: calc(344px + 6px);
  box-shadow: 0px 3px 6px #D8D8D8;
  margin: 0 auto 3em;
}
.tfz_entrybtn a {
  display: block;
  width: 100%;
  max-width: 344px;
  min-height: 64px;
  padding: 1.2em 1em 1em;
  text-align: center;
  text-decoration: none;
  font-family: Meiryo;
  font-size: 1.25rem;
  font-weight: bold;
  color: #3b3b3b;
  text-shadow: 0px 2px 0px #fff;
  border-radius: 100vh;
  background: linear-gradient(120deg, #49c7ef 0%, #49c7ef 0%, #dbfefd 20.28%, #fff 36.87%, #fff 56.27%, #fef29f 82.81%, #f68dc9 100%);
}

.tfz_contactbox{
  background: #f5f5f5;
  padding: 3em 2em;
  font-size:  clamp(0.875rem, 0.792rem + 0.28vw, 1rem)/*1200-480 14-16px*/;
}
.tfz_contactbox h3{
  font-size: clamp(0.875rem, 0.708rem + 0.56vw, 1.125rem)/*1200-480 14-18px*/;
  font-weight: bold;
  margin-bottom:1em;
  line-height: 1.6;
}
.tfz_contactbox ul{
  font-family: Meiryo;
  text-align: left;
  line-height: 1.8;
}
.tfz_contactbox ul li{
  margin-left: 0.5em;
  text-indent: -1em;
}
.tfz_contactbox a{color: #000;}

.tfz_backbtn a{
  display: block;
  margin: 0 auto 3em;
  max-width: 308px;
  width: calc(100% - 2em);
  padding: 1em 0.5em;
  border-radius: 8px;
  border: 1px solid #bcbcbc;
  background: #fff;
  text-decoration: none;
  color: #000;
}



.tfz_gotop{
  background-color:transparent;
}

.tfz_grdbg{
  padding-bottom:0;
}

@media screen and (max-width:1024px){  
    .tfz_pgheader {min-height: 87.5vw;}
  }

@media screen and (min-width:801px){
    .tfz_entrybtn:hover {opacity: 0.5;}
    .tfz_backbtn a:hover{background: #F5F5F5;}
      }

@media screen and (max-width:800px){  
  .tfz_contents{padding-bottom: 10vw;}
  .tfz_pgheader {min-height: 87vw;}
  .tfz_pgheader p.tfz_logo{max-width:22vw;}
  .tfz_about{height:auto;}
  .tfz_box{
    background-position: center center;
    background-size: 110%;
  }
  .tfz_pgheader>p:first-of-type {margin-bottom: 0.6em;}
  .tfz_box2{
    padding: 1em 0.5em 0;
    margin-bottom: 0;
    min-height: 90vw;
    background-size: 128vw;
  }
  .tfz_contactbox {padding: 2em 1.5em;}
  .tfz_entrybtn{
    width:80%;
  }
  .tfz_entrybtn a{
    font-size:0.875rem;
    min-height:2.5rem;
  }
  
}


@media screen and (max-width:428px){
  .tfz_contents{padding: 0.5em;}
  .tfz_msgarea p{
    text-align: left;
    padding: 0.5em 1em;
  }
  .tfz_msgarea p br{display: none;}
  
  .tfz_about span.tfz_about_spgr{display: block;}
  
  .tfz_box2 {background-position: center;}
}
