@charset "utf-8";
/* CSS Document */

@media screen and (min-width: 500px){
  .tab-500{
    display: none;
  }
}
@media screen and (min-width: 769px){
  .sp-middle{
    display: none;
  }
}
@media screen and (min-width: 1200px){
  .pc1200{
    display: none;
  }
}
@media screen and (min-width: 1920px){
  .tategaki {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 2400px){
  .tategaki {
    font-size: 2rem;
  }
  
}


/*-----------------------------
        top
----------------------------*/
@media screen and (min-width: 769px){
  .top::before{
    border-width: 400px 340px 0px 0px;
  }
  .top .tategaki{
    padding: 4rem;
    line-height: 2;
    font-size: 1.8rem;
  }
  .circle{
    justify-content: center;
  }
}
@media screen and (min-width: 1200px){
  .top{
    background: url("../img/haikeiimg/top02.webp") no-repeat center;
    background-size: cover;
    height: 100vh;
    margin-bottom: 0;
  }
  .top::before {
    border-width: 530px 500px 0px 0px;
  }
  .top .tategaki{
    font-size: 2rem;
    line-height: 2.5;
    padding: 10rem 0 0 15%;
  }
  .top .tategaki .top-br{
    display: none;
  }
  .circle::before, .circle::after{
    width: 5%;
    max-width: 75px;
  }
  .circle h2{
    width: 18%;
    max-width: 210px;
  }
  .top-text02{
    bottom: 11%;
  }
  .circle-under h2{
    font-size: 5.4rem;
    position: relative;
  }
  .circle-under h2:first-child{
    text-align: end;
    right: 205px;
  }
  .circle-under h2:last-child{
    text-align: start;
    left: 190px;
  }
  .circle-under h2:last-child span{
    margin-right: 17rem;
  }
  .circle-under h2 span::after{
    font-size: 1.3rem;
    top: 55%;
    right: -1.6rem;
  }
}
@media screen and (min-width: 1400px){
  .top-text02 {
    bottom: 11%;
  }
}
@media screen and (min-width: 1920px){
  .top::before{
    border-width: 70vh 42vw 0px 0px;
  }
  .top-text02 {
    bottom: 11%;
  }
  .top .tategaki{
    padding: 10% 0 0 15%;
    font-size: 2.5rem;
    line-height: 2.5;
  }
  .circle h2::before,
  .eye-catch .circle h2::before{
    width: 200px;
    height: 200px;
  }
  .circle h2 span:first-child, 
  .eye-catch .circle h2 span:first-child{
    font-size: 2.8rem;
  }
  .circle h2 span:last-child, 
  .eye-catch .circle h2 span:last-child{
    font-size: 1.6rem;
  }
  .circle-under h2{
    font-size: 6.5rem;
  }
  .circle-under h2:first-child{
    right: 265px;
  }
  .circle-under h2:last-child{
    left: 250px;
  }
  .circle h2{
    max-width: 280px;
  }
}
@media screen and (min-width: 2400px){
  .top .tategaki{
    letter-spacing: 4px;
  }
  
}
@media screen and (min-width: 3800px){
  
}

/*-----------------------------
        concept
----------------------------*/
@media screen and (min-width: 769px){
  .concept-text blockquote{
    line-height: 3;
  }
}
@media screen and (min-width: 1200px){
  .concept-grid{
    grid-template-columns: 1fr 1fr;
    gap: 65px;
  }
  .concept-img{
    order: 2;
  }
  .junten.concept-img figure img{
    width: 75%;
  }
  .hanten.concept-img figure img{
    width: 65%;
  }
  .concept-text{
    display: none;
  }
  .hanten.concept-img{
    order: 1;
  }
  /*.junten.concept-img{
    position: static;
  }*/
  .junten.concept-img{
    margin-top: 6rem;
  }
  .junten.concept-img .pt-3rem{
    margin-left: -3rem;
    padding-top: 10rem;
  }
  .junten.concept-img .concept-back img{
    width: 90%;
  }
  .hanten.concept-img .pt-3rem {
    padding-top: 10rem;
    padding-right: 3rem;
  }
  .hanten.concept-img .concept-back img{
    width: 80%;
  }
  #sec02.concept{
    margin-bottom: 8rem;
  }
}
@media screen and (max-width: 1199px){
  .concept-text-pc{
    display: none;
  }
}
@media screen and (max-width: 1920px){
  /*.hanten.concept-img .pt-3rem{
    padding-right: 5rem;
  }*/
  .concept-text-pc blockquote{
    line-height: 2.7;
    gap: 25px;
  }
}

@media screen and (min-width: 1200px){
  .concept-text-pc{
    padding: 10rem 0 3rem;
  }
}
@media screen and (min-width: 1920px){
  .concept-text-pc{
    padding: 10rem 0 5rem;
  }
  .concept-text-pc blockquote{
    line-height: 2.7;
    gap: 25px;
  }
  .hanten.concept-img figure img{
    width: 53%;
  }
  .hanten.concept-img .concept-back img{
    width: 62%;
  }
  .hanten.concept-img .pt-3rem{
    padding-top: 6rem;
    padding-right: 8rem;
  }
  #sec02.concept{
    margin-bottom: 15rem;
  }
  .catalog-contact{
    padding: 3.5rem 0;
  }
}
@media screen and (max-width: 2400px){
  /*.hanten.concept-img figure img{
    width: 60%;
  }
  .junten.concept-img figure img{
    width: 70%;
  }*/
}


/*-----------------------------
        catalog
----------------------------*/
@media screen and (min-width: 500px){
  .catalog-img img{
    top: -15px;
  }
}
@media screen and (min-width: 700px){
  .c-c-sp.catalog .catalog-img img{
    width: 90%;
  }
}
@media screen and (min-width: 768px){
  .catalog-text .arrow{
    font-size: 2rem;
  }
  .catalog-text{
    width: 40%;
  }
  .catalog-img{
    width: 60%;
  }
  .catalog-img img{
    width: 80%;
    right: 10%;
  }
  .c-c-sp.catalog .catalog-img img{
    width: 80%;
  }
}
@media screen and (min-width: 769px){
  
  .catalog .container{
    max-width: 85%;
  }
  .catalog-text{
    gap: 30px;
  }
  .catalog-flex{
    padding: 2rem 0;
  }
  .catalog-img img{
    top: -10px;
  }
}
@media screen and (min-width: 1000px){
  .catalog .container{
    max-width: 80%;
  }
      .c-c-sp.catalog .catalog-img img {
        width: 75%;
    }
}
@media screen and (min-width: 1000px) {
    .c-c-sp.catalog .catalog-img img {
        width: 70%;
    }
}
/*-----------------------------
        contact
----------------------------*/
@media screen and (min-width: 768px){
  .contact-btn{
    flex-direction: row;
    gap: 80px;
  }
  .contact-btn a{
    width: 50%;
  }
  .contact-btn a:last-child .arrow{
    padding: 1.4rem 0;
  }
}
/*-----------------------------
        feature
----------------------------*/
@media screen and (min-width: 769px){
  .feature-subtitle h2{
    font-size: 2.3rem;
  }
  .feature-subtitle h2 span {
    display: inline-block;
  }
  .feature-subtitle h2 br{
    display: none;
  }
  .feature-flex{
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: 2rem;
  }
  
  .feature-text{
    display: flex;
    align-items: center;
  }
  .eye-catch-text02{
    /*bottom: 10rem;*/
  }
}
@media screen and (min-width: 1200px){
  .feature{
    margin: 10rem 0;
  }
}
@media screen and (min-width: 1920px){
  .feature{
    margin: 15rem 0 20rem;
  }
}

/*-----------------------------
        passive-se
----------------------------*/
@media screen and (min-width: 500px){
  .passive-se-text h3::before{
    left: -45px;
  }
}
@media screen and (min-width: 768px){
  
}
@media screen and (min-width: 769px){
  .passive-se-text h3{
    /*font-size: 2.5rem;*/
  }
  .passive-se-text h3 p br{
    /*display: none;*/
  }
  .passive-se-text h3::before{
    left: -5%;
  }
  .passive-se-text blockquote{
    line-height: 1.8;
  }
}
@media screen and (min-width: 1200px){
  .passive-se-text h3::before{
    width: 83px;
    left: 50px;
  }
}

/*-----------------------------
        customer
----------------------------*/
@media screen and (min-width: 769px){
  .customer-grid{
    grid-template-columns: 1fr 1fr;
  }
  .circle-arrow{
    width: 40px;
    height: 40px;
  }
  .circle-arrow:before{
    top: 22px;
    left: 9px;
  }
  .circle-arrow:after{
    top: 17px;
    left: 25px;
  }
}
@media screen and (max-width: 999px){
  .customer-text blockquote br{
    display: none;
  }
}
/*-----------------------------
        catalog,contact
----------------------------*/
@media screen and (min-width: 400px){
  .contact-btn .arrow{
    width: 85%;
  }
  .contact-btn a:last-child.arrow{
    gap: 5%;
  }
  .contact-btn .arrow::before{
    right: -43px;
    width: 56px;
  }
  .contact-btn .arrow::after{
    right: -50px;
  }
}
@media screen and (min-width: 768px){
  /*.contact-btn a figure {
    width: 5%;
  }
  .contact-btn a:last-child figure {
    width: 7%;
}*/
}
@media screen and (min-width: 1200px){
  
  .contact-btn{
    flex-direction: column;
    gap: 20px;
    width: 100%;
  }
  .contact-btn a{
    width: 100%;
  }
  .contact-btn .arrow::before{
    top: 39px;
  }
  .contact-btn .arrow::after{
    top: 34px;
  }
  .contact-btn a:first-child span{
    font-size: 3rem;
  }
  .catalog-text{
    gap: 8px;
  }
  .catalog-img img{
    width: 88%;
    right: -10px;
  }
  .contact{
    display: flex;
    align-items: center;
    padding-left: 3rem;
  }
  .c-c-sp{
    display: none;
  }
  /*.contact-btn a figure{
    width: 7%;
  }
  .contact-btn a:last-child figure{
    width: 10%;
  }*/
  .contact-btn .arrow{
    width: 85%;
  }
  .contact-btn a:last-child.arrow{
    gap: 10%;
  }
  .contact-btn a:first-child span{
    font-size: 2.2rem;
  }
  
}

@media screen and (max-width: 1199px){
  .catalog-contact{
    display: none;
  }
}
@media screen and (min-width: 1400px){
      .catalog-img img {
        /*width: 100%;*/
        right: -20px;
    }
}
@media screen and (min-width: 1920px){
  .tel-mail-pc a h4{
    font-size: 1.8rem;
  }
  .tel-mail-pc a h4 span {
    font-size: 4rem;
  }
  .mail-card.tel-mail-pc a h4 span {
    font-size: 2.8rem;
  }
  .catalog-card-text h4 {
    font-size: 2rem;
  }
  .catalog-card-text h2 {
    font-size: 7rem;
  }
  .catalog-card-flex figure img {
    margin-bottom: -2rem;
  }
  .webp{
    display: none;
  }
  .mail-card.tel-mail-pc a {
    padding-bottom: 3rem;
  }
  .catalog-img img{
    width: 100%;
    right: -40px;
  }
  .catalog, .c-c-foot .catalog{
    height: 224px;
  }
  .catalog-text{
    padding-top: 1.5rem;
  }
  .catalog-text h1{
    letter-spacing: 5px;
  }
  .contact{
    padding-left: 5rem;
  }
}
@media screen and (max-width: 1919px){
  .png{
    display: none;
  }
}
@media screen and (min-width: 2400px){
  /*.catalog-contact .container {
    max-width: 65%;
  }
  .catalog-contact .catalog .container{
  max-width: 85%;
}
  .catalog-contact .container{
    max-width: 55%;
  }*/
  .catalog-flex{
    gap: 20px;
  }
}

/*-----------------------------
        eye-catch
----------------------------*/
@media screen and (min-width: 1000px){
  .eye-catch-text02{
    top: 50%;
    transform: translateY(-50%);
    bottom: unset;
  }
  .eye-catch-text01{
    transform: translateY(-50%);
    top: 50%;
  }
  .eye-catch .circle h2{
    width: 18%;
  }
  .eye-catch .circle::before, 
  .eye-catch .circle::after{
            width: 5%;
  }
  .eye-catch-passive{
    background: url(../img/haikeiimg/eye-catch01-2.jpg) no-repeat center;
    background-size: cover;
  }
}

@media screen and (max-width: 1199px){
  .catalog-contact{
    display: none;
  }
}
@media screen and (min-width: 1920px){
  .eye-catch-flex{
    height: 380px;
  }
}
/*-----------------------------
        feature
----------------------------*/
@media screen and (min-width: 500px){
  .acco-p-catch{
    min-height: 600px;
  }
  .acco-p-catch .acco-p-c-text{
    min-height: 460px;
  }
}
@media screen and (min-width: 600px){
  .acco-p-catch .acco-p-c-text .tategaki{
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 768px){
  .acco-p-catch{
    margin-top: 4rem;
    min-height: 870px;
  }
  .acco-p-catch .acco-p-c-text{
    min-height: 696px;
  }
  .acco-p-catch .acco-p-c-text .tategaki{
    font-size: 3rem;
    font-weight: 500;
    letter-spacing: 3px;
    line-height: 1.8;
  }
  .tategaki.c-t-gyou{
    gap: 3rem;
  }
  .genri-img{
    grid-template-columns: 1fr 1fr;
  }
  .acco-p-catch .acco-p-c-img01{
    max-width: 475px;
  } 
  .acco-p-catch .acco-p-c-img02{
    max-width: 246px;
  } 
  .acco-p-catch .acco-p-c-img03{
    max-width: 262px;
  }
}

@media screen and (max-width: 999px){
  .concept-grid .acco-p-c-text{
    display: none;
  }
}
@media screen and (min-width: 1000px){
  .acco-p-container.container{
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    max-width: 85%;
    margin-top: 10rem;
  }
  .acco-p-catch, .accordion-p .concept{
    width: 50%;
    margin-top: 0;
  }
  .acco-p-catch{
    min-height: 530px;
  }
  .acco-p-catch .acco-p-c-img01{
    width: 67%;
  }
  .acco-p-catch .acco-p-c-img02{
    top: 40%;
  }
  .acco-p-catch .acco-p-c-img03{
    right: 50%;
    transform: translateX(50%);
    bottom: 8%;
    width: 34%;
  }
  .acco-p-catch .acco-p-c-text{
    display: none;
  }
  .acco-pc .concept-grid{
    flex-direction: column;
    padding: 0 3rem;
  }
  .acco-p-catch .acco-p-c-img01{
    max-width: 314px;
  } 
  .acco-p-catch .acco-p-c-img02{
    max-width: 141px;
  } 
  .acco-p-catch .acco-p-c-img03{
    max-width: 160px;
  }
}
@media screen and (min-width: 1200px){
  .feature .container{
    max-width: 90%;
    margin: 0 0 0 auto;
  }
  .feature-title{
    margin-bottom: 4rem;
    padding-left: 10rem;
  }
  .feature-flex{
    grid-template-columns: 1fr;
  }
  .feature-title h1{
    font-size: 7rem;
  }
  .feature-title h1 span::after{
    font-size: 1.6rem;
  }
  .feature-subtitle{
    padding-left: 10rem;
  }
  .feature-text{
    /*position: relative;
    padding-left: 10rem;*/
    display: none;
  }
  .feature-text blockquote{
    line-height: 2;
  }
  .feature-flex figure{
    /*margin-top: -10rem;*/
  }
  .feature-subtitle p{
    font-size: 1.6rem;
     line-height: 2;
  }
  .feature-flex figure img{
    object-fit: cover;
    max-height: 660px;
    object-position: bottom;
  }
  .acco-p-catch .acco-p-c-img01, 
  .acco-p-catch .acco-p-c-img02, 
  .acco-p-catch .acco-p-c-img03{
    max-width: unset;
  } 
  
}

@media screen and (max-width: 1199px){
  .feature-subtitle p{
    display: none;
  }
}
@media screen and (min-width: 1400px){
  .feature-flex figure img{
    max-height: 740px;
  }
}
@media screen and (min-width: 1920px){
  .feature {
    margin-bottom: 8rem;
  }
  .feature-title{
    margin-bottom: 7rem;
  }
  .feature-flex figure img{
    max-height: 900px;
  }
  .feature-subtitle h2 {
    font-size: 2.6rem;
  }
  .feature-title h1 {
    font-size: 9rem;
  }
  .feature-title h1 span::after{
    top: 15px;
  }
  .feature-text blockquote{
    font-size: 1.8rem;
  }
  .feature-flex figure {
        /*margin-top: -10rem;*/
    }
  .feature .container{
    max-width: 80%;
  }
  .acco-pc .acco-p-container.container{
    margin-top: 12rem;
  }
  .acco-pc.accordion-content.is-active{
    padding: 12rem 0 2rem;
  }
}
@media screen and (min-width: 2400px){
  .feature-flex figure img{
    max-height: 1111px;
  }
}
@media screen and (min-width: 3800px){
  .feature-flex figure img{
    max-height: 1666px;
  }
}

/*-----------------------------
        passive&se
----------------------------*/
@media screen and (max-width: 400px){
  .passive-se-img, .passive-se-img::before{
    min-height: 415px;
  }
}
@media screen and (min-width: 1000px){
  .passive-se-img, .passive-se-img::before{
    height: 65vh;
  }
  .passive-se-img .tategaki{
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1200px){
  .passive-se-img, .passive-se-img::before{
    height: 75vh;
    max-height: 810px;
  }
  .passive-se-img .tategaki{
    padding: 5rem 0 1rem;
    font-size: 2.6rem;
  }
  .passive-se-pc{
    width: 45vw;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.8) 25%);
    /*padding: 3rem 2rem 3rem 3rem;
    max-width: 540px;*/
    padding: 4rem 2rem 4rem 12%;
    max-width: 740px;
  }
  .passive-se-pc.passive-se-text h3 p .pc-br{
    display: unset;
  }
  .se .passive-se-pc{
    /*left: unset;
    right: 0;
    background-image: linear-gradient(270deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.7) 25%);*/
  }
  .se.passive-se{
    margin-bottom: 0;
  }
  .se .passive-se-img .tategaki{
    right: 15%;
    left: unset;
  }
}
@media screen and (max-width: 1199px){
  .passive-se-pc{
    display: none;
  }
}
@media screen and (max-width: 1919px){
  .block1920{
    display: none;
  }
}
@media screen and (min-width: 1920px){
  .passive-se-img .tategaki{
    right: 20%;
    font-size: 3rem;
  }
  .passive-se-pc{
    transform: translateX(-120%) translateY(-50%);
    left: 50%;
    max-width: 725px;
    width: 40vw;
    padding: 4rem 2rem 4rem 26rem;
  }
  .passive-se-text blockquote{
    margin-bottom: 5rem;
  }
  .passive-se-text h3 {
    font-size: 1.8rem;
    text-align: start;
  }
  .passive-se-text blockquote {
    font-size: 1.7rem;
    padding: 0;
    margin-bottom: 1rem;
    padding-right: 2.5rem;
  }
  .se .passive-se-pc{
    /*padding: 3rem 17rem 3rem 2rem;*/
  }
  .passive-se-text h3 p span{
    font-size: 2.5rem;
  }
  .passive-se-text h3::before{
    left: -70px;
  }
}
/*-----------------------------
        customer
----------------------------*/
@media screen and (min-width: 769px){
  .customer {
    margin: 3rem 0 6rem;
}
  .c-c-middle{
    margin-bottom: 6rem;
  }
}
@media screen and (min-width: 1200px){
  .customer-title h1{
    font-size: 7rem;
  }
  .customer-title {
    margin-bottom: 4rem;
  }
  .customer {
    margin: 7rem 0;
  }
  .c-c-middle{
  margin-bottom: 8rem;
}
}
@media screen and (min-width: 1920px){
  .customer {
    margin: 12rem 0 7rem;
  }
  .customer-title {
    margin-bottom: 5rem;
  }
}
@media screen and (min-width: 2400px){
  /*.customer .container {
    max-width: 60%;
  }*/
}


/*------------------
      modal
-------------------*/
@media screen and (min-width: 768px){
  .modalScroll{
    max-width: 690px;
  }
  .modal_content{
    padding: 1rem 5rem;
  }
}
@media screen and (min-width: 1200px){
  .modalScroll{
    width: 60vw;
    max-width: 800px;
  }
  .q-amd-a{
    display: flex;
    gap: 2rem;
  }
  .q-amd-a figure{
    order: 1;
  }
  .q-amd-a .q-amd-a-text{
    order: 2;
  }
  .second-q.q-amd-a figure, 
  .second-q.q-amd-a .q-amd-a-text{
    width: 50%;
  }
  .first-q.q-amd-a{
    flex-direction: column;
    gap: 2rem;
  }
  .ScrollContent{
    /*height: 600px;*/
  }
  .modal_content .q-amd-a h5{
    text-align: start;
  }
  .modal_content {
    padding: 1rem 6rem;
  }
}
@media screen and (min-width: 1400px){
  .second-q.q-amd-a{
    gap: 3rem;
  }
}
@media screen and (min-width: 1920px){
  .circle-expand {
    transition: transform 0.8s ease, width 0.8s ease, height 0.8s ease, opacity 0.8s ease;
  }
  .circle-expand.expand {
    width: 4800px;
    height: 4800px;
  }
}
@media screen and (min-width: 2400px){
  .circle-expand.expand {
    width: 5000px;
    height: 5000px;
  }
  .modalScroll{
    width: 60vw;
  }
}
@media screen and (min-width: 3800px){
  .circle-expand {
    transition: transform 0.8s ease, width 0.8s ease, height 0.8s ease, opacity 0.8s ease;
  }
  .circle-expand.expand {
    width: 7500px;
    height: 7500px;
  }
}


/*-----------------------------
    Prize&amp;Media:(※max-width)
----------------------------*/
@media screen and (max-width: 500px){
  /*.dlBlock .dlBlock-line .dlInner:not(:last-child){
    padding-bottom: 2rem;
  }*/
  .dlBlock dt{
    /*flex: 1;*/
  }
  .dlBlock-line:before{
    /*top: 0;
    left: 23%;*/
  }
  .dlBlock dd{
    /*flex: 2.5;*/
  }
}
@media screen and (max-width: 767px){
  .sp767{
    display: none;
  }
}
@media screen and (min-width: 768px){
  .pc768{
    display: none;
  }
}
@media screen and (min-width: 769px){
  .prize{
    margin-top: 
  }
}
@media screen and (max-width: 999px){
  .p-p-img-pc, .sp999{
    display: none;
  }
}
@media screen and (min-width: 1000px){
  .p-p-grid-pc{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }
  .p-p-img-pc{
    padding-left: 5rem;
  }
  .p-img01, .pc1000{
    display: none;
  }
  .dlInner .sp767{
    display: none;
  }
  .dlBlock-line, .dlBlock-line.dlB-margin{
    margin-bottom: 5rem;
  }
  
}
@media screen and (min-width: 1200px){
  .dlInner .sp767{
    display: block;
  }
}
@media screen and (min-width: 1920px){
  .prize{
    margin-bottom: 12rem;
  }
}
/*-----------------------------
    reputation
----------------------------*/
@media screen and (min-width: 500px){
  .rep-title{
    justify-content: flex-start;
    padding-left: 3rem;
  }
}
@media screen and (min-width: 1000px){
  .d-01.daihyou .d-grid{
    max-width: 50%;
  }
}
@media screen and (max-width: 1199px){
  .rep-t-img-pc{
    display: none;
  }
}
@media screen and (min-width: 1200px){
  .d-01.daihyou{
    display: none;
  }
  .rep-grid-pc{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: 6rem;
  }
  .rep-title-pc{
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  .rep-title h3{
    font-size: 3rem;
  }
  .rep-t-img-pc figure{
    width: 60%;
    margin-bottom: 2rem;
  }
  .rep-t-img-pc .d-name h5{
    margin-left: 0;
  }
  .reputation{
    padding: 10rem 0;
  }
}
@media screen and (min-width: 1920px){
  .rep-text blockquote, .m-text blockquote{
    letter-spacing: 1px;
  }
}

/*-----------------------------
    message
----------------------------*/
@media screen and (min-width: 768px){
  .m-text .d-02.daihyou{
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .d-02.daihyou .d-grid{
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .d-02.daihyou .d-grid figure{
    width: 80%;
  }
  .d-02.daihyou .d-status{
    margin-left: -2rem;
    display: flex;
    align-items: center;
  }
  .d-status dl{
    width: 100%;
  }
  .message .d-grid .d-name h5, 
  .message .d-grid .d-name > span{
    margin-left: 0;
  }
  .d-status dl .d-s-inner:first-child, 
  .d-s-inner dd ul li{
    margin-bottom: .8rem;
  }
}
@media screen and (min-width: 1000px){
  .m-text{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
  .m-text blockquote{
    order: 2;
  }
  .m-text .d-02.daihyou{
    order: 1;
    padding-top: 0;
    border-top: none;
    grid-template-columns: 1fr;
  }
  .d-02.daihyou .d-grid{
    grid-template-columns: 1fr;
    gap: 1.5rem;
    border-bottom: 1px solid #000;
    margin-bottom: 0;
    padding-bottom: 3rem;
  }
  .d-02.daihyou .d-name h5{
    margin-left: 0;
  }
  .d-02.daihyou .d-grid figure{
    width: 60%;
  }
  .message .d-grid .d-name > span{
    margin-left: 0;
  }
  .d-02.daihyou .d-status{
    margin-top: 3rem;
    margin-left: 0;
  }
  
}
@media screen and (min-width: 1200px){
  .m-text{
    gap: 6rem;
  }
  .message {
    margin: 12rem 0 4rem;
}
}
@media screen and (min-width: 1920px){
  .message {
    margin: 12rem 0 10rem;
  }
}
  
/*-----------------------------
    staff
----------------------------*/
@media screen and (min-width: 400px){
  .s-text {
    /*top: -4.5rem;*/
  }
}
@media screen and (min-width: 768px){
  .s-inner{
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-bottom: 0;
  }
  .s-haikei figure{
    padding: 3rem 0;
  }
  .staff .s-text.container{
    display: flex;
    align-items: center;
    top: 0;
  }
}
@media screen and (min-width: 1000px){
  .staff .s-con-pc.container{
    max-width: 88%;
  }
}
@media screen and (min-width: 1200px){
  .s-text blockquote{
    padding: 5rem 3rem;
  }
}
@media screen and (min-width: 1400px){
  .s-text blockquote{
    padding: 5rem 4rem;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1920px){
  .s-text blockquote{
    margin-left: 2rem;
  }
}

/*-----------------------------
    about
----------------------------*/
@media screen and (min-width: 768px){
  .a-text > h3 br{
    display: none;
  }
  .a-c-text{
    margin-left: 3rem;
  }
  .a-c-text .tategaki{
    font-weight: 500;
    line-height: 1.8;
  }
  .a-i-title figure{
    width: 7%;
    max-width: 50px;
  }
  .a-text > p br{
    /*display: none;*/
  }
}
@media screen and (min-width: 1000px){
  .a-c-text .tategaki, .a-text > h3{
    font-size: 2.4rem;
  }
  .a-text > p br{
    display: none;
  }
}
@media screen and (min-width: 1200px){
  .about{
    margin: 10rem 0 5rem;
  }
  .about .a-con-pc.container {
    max-width: 88%;
  }
  .a-list{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 4rem;
  }
  .a-list .a-item:first-child .a-i-title figure{
    position: relative;
    top: 2px;
  }
  .a-list .a-item:last-child .a-i-title figure{
    width: 15%;
    position: relative;
    top: 7px;
  }
  .a-item > p{
    color: #666666;
  }
  .a-i-title{
    height: 46px;
  }
  .a-list .a-item:nth-child(2) .a-i-title h5{
    padding: 0;
  }
  .a-text > p, .a-text > h3{
    text-align: start;
  }
  .a-text > p br{
    display: none;
  }
  .a-text.container, .a-con-pc02.container{
    max-width: 100%;
  }
  .a-text{
    margin-top: 5rem;
  }
  .a-i-title figure{
    width: 14%;
  }
}
@media screen and (min-width: 1920px){
  .about{
    margin: 12rem 0 5rem;
  }
  .a-text{
    margin-top: 7rem;
  }
  .a-text > p {
    margin-top: 2rem;
  }
}

/*-----------------------------
    map
----------------------------*/
@media screen and (min-width: 768px){
  .map iframe{
    height: 500px;
  }
}
@media screen and (min-width: 1200px){
  .map .container, .copyright .container{
    max-width: 88%;
  }
  .map{
    margin-bottom: 8rem;
  }
}

/*-----------------------------
    SNS
----------------------------*/
@media screen and (min-width: 600px){
  .c-foot-sp .catalog-img img{
    width: 95%;
  }
}
@media screen and (min-width: 700px) {
    .c-foot-sp .catalog-img img {
        width: 90%;
    }
}
@media screen and (min-width: 768px) {
    .c-foot-sp .catalog-img img {
        width: 80%;
    }
}
@media screen and (min-width: 769px){
  .c-foot-sp .catalog-img img {
        width: 87%;
    }
}
@media screen and (min-width: 900px){
  .c-foot-sp .catalog-img img {
        width: 80%;
    }
}
@media screen and (min-width: 1000px) {
    .c-foot-sp .catalog-img img {
        width: 77%;
    }
}
@media screen and (min-width: 1100px) {
    .c-foot-sp .catalog-img img {
        width: 71%;
    }
}
@media screen and (min-width: 1200px){
  .c-c-foot .contact{
    flex-direction: column;
  }
  .c-c-foot .catalog{
    height: 80%;
  }
  .sns-pc.contact-sns{
    width: 100%;
    justify-content: space-between;
    padding-right: 5rem;
  }
  .c-c-foot .contact-sns a{
    width: 20%;
  }
  .c-foot-sp{
    display: none;
  }
}
@media screen and (min-width: 1920px){
  .c-c-foot .catalog{
    height: 224px;
  }
  .c-c-foot .contact{
    padding-top: 4rem;
  }
}

/*-----------------------------
    copyright
----------------------------*/
@media screen and (min-width: 1920px){
  .copyright {
    padding: 5rem 1.5rem 2rem;
  }
}

/*-----------------------------
    .container(PC)
----------------------------*/
@media screen and (min-width: 1920px){
  .customer .container, 
  .prize .container, 
  .reputation .container, 
  .message .container, 
  .staff .s-con-pc.container, 
  .about .a-con-pc.container, 
  .map .container, 
  .catalog-contact > .container, 
  .copyright .container{
    max-width: 1150px;
  }
}
@media screen and (min-width: 1200px){
  .customer .container, 
  .prize .container, 
  .reputation .container, 
  .message .container, 
  .staff .s-con-pc.container, 
  .about .a-con-pc.container, 
  .map .container, 
  .catalog-contact > .container, 
  .copyright .container{
    max-width: 1150px;
  }
}




















