@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Barrio&family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');

body{
    color: #454545;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}
.none_link{
    pointer-events: none;
}
.mb_30{
    margin-bottom: 30px;
}

/*==================================================
ページ偏移
===================================*/
.md_transition {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: transform .8s cubic-bezier(.39, .575, .565, 1) 0.8s;
    z-index: 999999;
}
.md_transition::before {
    background: -webkit-gradient(linear, left bottom, left top, from(hsla(0, 0%, 100%, 0)), color-stop(33.33333%, #fff), color-stop(66.66667%, #fff), to(hsla(0, 0%, 100%, 0)));
    background: -o-linear-gradient(bottom, hsla(0, 0%, 100%, 0) 0, #fff 33.33333%, #fff 66.66667%, hsla(0, 0%, 100%, 0) 100%);
    background: linear-gradient(0deg, hsla(0, 0%, 100%, 0), #fff 33.33333%, #fff 66.66667%, hsla(0, 0%, 100%, 0));
    content: "";
    display: block;
    width: 100%;
    height: 300%;
    position: absolute;
    left: 0;
    top: -100%;
}
body.is_remove .md_transition {
    -webkit-animation: maskCloseTransition .8s cubic-bezier(.47, 0, .745, .715) 0s 1 forwards;
    animation: maskCloseTransition .8s cubic-bezier(.47, 0, .745, .715) 0s 1 forwards;
}
body:not(.is_fade) .md_transition {
    transform: translateY(-200%);
}
@-webkit-keyframes maskCloseTransition {
    0% { transform: translateY(200%); }
    to { transform: translate(0); }
}
@keyframes maskCloseTransition {
    0% { transform: translateY(200%); }
    to { transform: translate(0); }
}

/*==================================================
ふわっ
===================================*/

.delay-time:nth-child(1){
    animation-delay: 0.2s;
}
.delay-time:nth-child(2){
    animation-delay: 0.4s;
}
.delay-time:nth-child(3){
    animation-delay: 0.6s;
}
.delay-time:nth-child(4){
    animation-delay: 0.8s;
}
.delay-time:nth-child(5){
    animation-delay: 1s;
}
.delay-time:nth-child(6){
    animation-delay: 1.2s;
}
.delay-time:nth-child(7){
    animation-delay: 1.4s;
}
.delay-time:nth-child(8){
    animation-delay: 1.6s;
}
.delay-time:nth-child(9){
    animation-delay: 1.8s;
}
.delay-time:nth-child(10){
    animation-delay: 2s;
}
.delay-time:nth-child(11){
    animation-delay: 2.2s;
}
.delay-time:nth-child(12){
    animation-delay: 2.4s;
}
.delay-time:nth-child(13){
    animation-delay: 2.6s;
}
.delay-time:nth-child(14){
    animation-delay: 2.8s;
}
.delay-time:nth-child(15){
    animation-delay: 3s;
}
.delay-time:nth-child(16){
    animation-delay: 3.2s;
}
.delay-time:nth-child(17){
    animation-delay: 3.4s;
}
.delay-time:nth-child(18){
    animation-delay: 3.6s;
}
.delay-time:nth-child(19){
    animation-delay: 3.8s;
}
.delay-time:nth-child(20){
    animation-delay: 4s;
}
.delay-time:nth-child(21){
    animation-delay: 4.2s;
}
.delay-time:nth-child(22){
    animation-delay: 4.4s;
}
.delay-time:nth-child(23){
    animation-delay: 4.6s;
}
.delay-time:nth-child(24){
    animation-delay: 4.8s;
}

/* fadeUp */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.8s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(50px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}


.en{
    font-family: 'Barrio', cursive;
}
h1,
h2{
    font-size: 3rem;
    letter-spacing: 0.2rem;
}
.f_small{
    font-size: 0.8rem;
    color: #777777;
}
.flex{
    display: flex;
    align-items: center;
}
.flex.reverse{
    flex-flow: row-reverse;
}
.left_area,
.right_area{
    width: 50%;
    text-align: center;
}
.left_area{
    background-position: -10vw -7vh;
    height: 40vh;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #333333;
}
.result{
    margin:30px 100px;
}
.grid-item a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.grid-container {
    display: grid;
    grid-auto-rows: 380px;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    margin: 0 auto;
    justify-content: space-between;
    text-align: center;
    grid-gap:60px 20px;
}
.grid-item {
    background: #dfdfdf;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #333333;
    border-radius: 10px;
}
.grid-item p{
    position: absolute;
    z-index: 999;
    background: #333333;
    bottom: 0;
    left: 0;
    padding: 5px;
    letter-spacing: 1px;
    color: #ffffff;
    text-align: left;
}
.bg-zoom {
  position: relative; 
  overflow: hidden; 
}
.bg-zoom:after {
  position: absolute; 
  content: "";
  display: block; 
  width: 100%;
  height: 100%;
  top: 0;
  background: url(../img/ec/amazon.jpg) no-repeat;
  transition: all 1.8s ease;
  background-size: cover;
}
.bg-zoom.tougou:after {
  background: url(../img/ec/tougou.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.renual:after {
  background: url(../img/ec/renual.png) no-repeat;
  background-size: cover;
}
.bg-zoom.review:after {
  background: url(../img/ec/review.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.rakuten:after {
  background: url(../img/ec/rakuten.png) no-repeat;
  background-size: cover;
}
.bg-zoom.honten:after {
  background: url(../img/ec/honten.png) no-repeat;
  background-size: cover;
}
.bg-zoom.eagles:after {
  background: url(../img/ec/eagles.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.bnr:after {
  background: url(../img/ec/bnr.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.smart:after {
  background: url(../img/dtp/smart.png) no-repeat;
  background-size: cover;
}
.bg-zoom.senior:after {
  background: url(../img/dtp/senior.png) no-repeat;
  background-size: cover;
}
.bg-zoom.natural_water:after {
  background: url(../img/dtp/natural_water.png) no-repeat;
  background-size: cover;
}
.bg-zoom.clife:after {
  background: url(../img/dtp/clife.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.parenting:after {
  background: url(../img/dtp/parenting.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.green:after {
  background: url(../img/web/green.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.jisepo:after {
  background: url(../img/web/jisepo.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.rimolove:after {
  background: url(../img/web/rimolove.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.sale:after {
  background: url(../img/web/sale.png) no-repeat;
  background-size: cover;
}
.bg-zoom.simultaneous:after {
  background: url(../img/web/simultaneous.jpg) no-repeat;
  background-size: cover;
}
.bg-zoom.summer:after {
  background: url(../img/web/summer.png) no-repeat;
  background-size: cover;
}
.bg-zoom.youkai:after {
  background: url(../img/web/youkai.png) no-repeat;
  background-size: cover;
}
.bg-zoom.sonaelist:after {
  background: url(../img/web/sonaelist.png) no-repeat;
  background-size: cover;
}
.bg-zoom.hoko:after {
  background: url(../img/web/hoko.png) no-repeat;
  background-size: cover;
}
.bg-zoom.ms:after {
  background: url(../img/web/ms.png) no-repeat;
  background-size: cover;
}
.bg-zoom.spring:after {
  background: url(../img/web/spring.png) no-repeat;
  background-size: cover;
}
.bg-zoom.weding:after {
  background: url(../img/web/weding.png) no-repeat;
  background-size: cover;
}
.bg-zoom.weding:after {
  background: url(../img/web/weding.png) no-repeat;
  background-size: cover;
}
.bg-zoom.vuteq:after{
    background:url(../img/web/vuteq.png) no-repeat;
    background-size:cover;
}
.bg-zoom.g-tec:after{
  background:url(../img/web/gtec.png) no-repeat;
  background-size:cover;
}
.bg-zoom.oyakocenter:after{
  background:url(../img/web/oyakocenter.png) no-repeat;
  background-size:cover;
}
.bg-zoom.neko:after{
  background:url(../img/web/neko.png) no-repeat;
  background-size:cover;
}
.bg-zoom.suntechno:after{
  background:url(../img/web/suntechno.png) no-repeat;
  background-size:cover;
}
.bg-zoom.marushin:after{
  background:url(../img/web/marushin.png) no-repeat;
  background-size:cover;
}
.bg-zoom.b-coffee:after{
  background:url(../img/ec/b-coffee.png) no-repeat;
  background-size:cover;
}
.bg-zoom.wannyaburu:after{
  background:url(../img/web/wannyaburu.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.fornyan:after{
  background:url(../img/web/fornyan.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.detergent:after{
  background:url(../img/etc/detergent_package01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.menokoto:after{
  background:url(../img/etc/menokoto_logo.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.webstaff:after{
  background:url(../img/etc/webstaff_logo.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.story:after{
  background:url(../img/etc/story_01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.line01:after{
  background:url(../img/etc/linemenu01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.skinsia01:after{
  background:url(../img/web/skinshia_darma01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.skinsia02:after{
  background:url(../img/web/skinshia_datsumou01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.force-r:after{
  background:url(../img/web/force-r_lp01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.eclat:after{
  background:url(../img/web/eclat01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.internet:after{
  background:url(../img/dtp/internet02.png) no-repeat;
  background-size:cover;
}
.bg-zoom.cantabile:after{
  background:url(../img/dtp/cantabil4.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.---ten:after{
  background:url(../img/dtp/ten01-mini.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.ot3:after{
  background:url(../img/etc/ot3_01.png) no-repeat;
  background-size:cover;
}
.bg-zoom.ico:after{
  background:url(../img/web/ico.png) no-repeat;
  background-size:cover;
}
.bg-zoom.kanau:after{
  background:url(../img/web/kanau.png) no-repeat;
  background-size:cover;
}
.bg-zoom.iso:after{
  background:url(../img/web/iso.png) no-repeat;
  background-size:cover;
}
.bg-zoom.omaka100001:after{
  background:url(../img/web/omaka1000_1.png) no-repeat;
  background-size:cover;
}
.bg-zoom.omaka100002:after{
  background:url(../img/web/omaka1000_2.png) no-repeat;
  background-size:cover;
}
.bg-zoom.wnokoka:after{
  background:url(../img/dtp/wnokoka.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.wakasapet:after{
  background:url(../img/web/wakasapet.png) no-repeat;
  background-size:cover;
}
.bg-zoom.hamigaki:after{
  background:url(../img/web/hamigaki01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.web_lp:after{
  background:url(../img/web/01WEB-STAFF_LP.png) no-repeat;
  background-size:cover;
}
.bg-zoom.wannyagru:after{
  background:url(../img/web/wannyagru01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.wannyahouse:after{
  background:url(../img/dtp/wannyahouse01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.wakasaport:after{
  background:url(../img/web/portkadai01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.jelly:after{
  background:url(../img/web/jelly02.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.sunshine:after{
  background:url(../img/web/sunshine01.jpg) no-repeat;
  background-size:cover;
}
.bg-zoom.family:after{
  background:url(../img/web/family01.jpg) no-repeat;
  background-size:cover;
}

.bg-zoom:hover:after {
  transform: scale(1.1);
}
.bg-zoom .bg-zoom-content {
  z-index: 1; 
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


.search_item {
  display:block;
  padding: 3px;
  font-size: 0.8rem;
  margin-bottom: 20px;
}
.search_item:last-child{
    margin-bottom: 0;
}
.search_item span{
    cursor: pointer;
}
.search_item.is-active span{
  color: white;
  background-color: black;
}
.is-hide {
  display: none;
}

.profile{
    background: #f1f1f1;
    padding: 150px 30px 100px;
    margin-top: 270px;
    position: relative;
}
.profile h2{
    position: absolute;
    font-size: 7rem;
    letter-spacing: 0.8rem;
    top: -85px;
}
.profile .center{
    max-width: 500px;
    margin: 0 auto;
}
.profile dl{
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 10px;
}
.profile dl.flex{
    border-bottom: 1px solid #cccccc;
    padding-bottom: 10px;
}
.profile dl:last-child{
  margin-bottom: 0;
}
.profile .flex > dt{
  margin-right: 15px;
  text-align: left;
  flex: 1;
  width: 100px;
    letter-spacing: 1px;
}
.profile .flex > dd{
  width: 80%;
  text-align: left;
  flex: 3;
}
.profile dd p{
    line-height: 1.4rem;
}
.profile dl dl dt{
    font-size: 1rem;
}
.profile dl dl dd p{
    font-size: 0.9rem;
    margin-top: 2px;
}
.profile dl dl dd p.f_small{
    font-size: 0.8rem;
    margin-top: 0;
}


.tool{
    margin: 150px auto;
}
.tool dl{
  justify-content: center;
  margin-bottom: 25px;
}
.tool dl:last-child{
  margin-bottom: 0;
}
.tool dt{
  min-width: 200px;
  text-align: left;
  border-bottom: 1px solid #cccccc;
  padding-bottom: 5px;
}
.tool dd{
  border-bottom: 1px solid #cccccc;
  padding-bottom: 5px;
}

.hobby_slider {
  padding: 0;
}
.hobby_slider img { 
  width: 100%;
}
.hobby_slider li { 
  margin: 0 5px;
}
.modaal-image .modaal-container {
  max-width: 55% !important;
}

footer .flex,
.page header .flex{
  justify-content: center;
}
footer li,
.page header li{
  margin:30px 20px;
}

.page{
    background: #f1f1f1;
}
.page h1{
    font-size: 2rem;
    text-align: center;
    margin: 80px auto 60px;
}
.page h1:before{
    content: "";
    width: 50px;
    height: 2px;
    background: #333333;
    display: block;
    margin:0 auto 30px;
}
.page .contents{
    padding:0 30px;
}
.page .contents p{
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
}
.page .contents p.mb_30{
    margin-bottom: 30px;
}
.page .contents p img{
    width: 100%;
    height: auto;
}
.page .contents p img.sp{
  width: auto;
  height: auto;
}
.page .web_link{
    margin-top: 80px;
    color: #DE3A0F;
}
.page .web_link a{
  word-break: break-all;
}
.page .bg{
    background: #ffffff;
}
.page .tool{
    max-width: 1200px;
    margin:100px auto;
    padding: 100px 50px;
}
.page .tool dt{
    min-width: 90px;
    border-bottom: none;
}
.page .tool dd{
    width: 100%;
    text-align: left;
    padding: 10px;
    padding-top: 0;
}
.page .tool h2{
    margin-bottom: 35px;
}
.page .img_box{
    max-width: 1200px;
    display: flex;
    margin: 30px auto 0;
    align-items: flex-start;
}
.page .img_box li{
    max-width: 25%;
    margin-right: 3%;
}
.page .img_box.width_auto li{
    max-width:inherit;
}
.page .img_box li:last-child{
    margin-right: 0;
}
.page .img_box li img{
    width: 100%;
    height: auto;
}
.page .mention{
    max-width: 1200px;
    margin: 80px auto;
    padding:60px 30px;
    background: #ffffff;
    border-radius: 10px;
    text-align: center;
}
.page .mention dl{
    padding: 0 30px;
}
.page .mention dt{
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 40px;   
}
.page .mention dt:after{
    content: "";
    width: 45px;
    height: 2px;
    margin: 20px auto;
    background: #333333;
    display: block;
}
.page .mention ul{
    display: flex;
    justify-content: center;
    margin-top: 50px;
}
.page .mention li{
    max-width: 400px;
}
.page .mention li img{
    width: 100%;
    height: auto;
}


@media screen and (max-width: 767px) {
    .result{
        margin: 30px 5%;
    }
    .profile h2{
        font-size: 15vw;
    }
    .profile .center {
      padding: 0 15px;
  }
    .tool .flex{
        display: block;
    }
    header .flex{
      display: block;
    }
    .left_area, .right_area {
      width: 90%;
      margin: 0 auto;
      text-align: center;
  }
  .profile{
    padding: 150px 0px 100px;
  }
  .grid-container {
    grid-template-columns: repeat(auto-fit, minmax(311px, 1fr));
}
.tool dt,
.tool dd{
  text-align: center;
  padding: 15px 0;
}
.page .contents p img.sp{
  width: 100%;
}
}