@charset "UTF-8";

html{
    scroll-behavior: smooth;
}

body{
    font-family: "Helvetica", "Neue", "Arial", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif";
}

.media{
    width: 100%;
}

.mainlogo{
    width: 85%;
    align-items: center;
    max-width: 100%;
    margin: 0 auto;
    object-fit: contain;
    
  }
  
  a {
    text-decoration: none;
    color: #ffffff;
    padding: 20px;
    text-shadow: 1px 1px 2px gray;
 
  }

  a:hover{
    color: #e03101; 
    text-decoration: none;
    transition-duration: .3s;

}
  
  .main{
    display: flex; 
    position: relative;
    justify-content: center;
    background: url(./img/mainvisual.jpg) no-repeat center;
    background-size: cover;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100vh;

  }


  .menu{
    width: 98%;
    position: absolute;
    display: flex;
    justify-content: end;
    
  }

  .menubg{
    margin: 20px 0 20px;
    width: 100%;
    height: 250px;
    background: url(./img/menu.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;

  }
  
  .menutxt{
    padding: 95px;
    color: #fff;
    font-size: 50px;
    text-align: center;
    margin: 0 auto;
  }

  .menubox2{
    margin: 50px;
    padding-bottom: 100px;
    padding-top: 30px;
    display: flex;

  }

  .menubox1{
    display: block;
    margin: 0 auto;
    
  }

  .border{
    display: block;
    border-left: 1px solid darkgray;
  }

h1{
    text-align: center;
    margin: 0;
    font-size: 30px;
}

.h1box{
    margin: 0 auto;
    border-bottom: solid rgb(169, 0, 0) 4px;
    width: fit-content;
}

.xxxx {
    overflow: hidden;
    width: 430px;
    padding: 16px;
    margin: 25px;
}

.price{
    display: flex;
    margin: -10px;
    padding-left: 10px;
}

.menuline{
    flex-grow: 2;
    margin: 0;
    padding: 0;
}

hr{
    border-top: dotted;
    border-left: none;
    border-right: none;
    border-bottom: none;
}

.menuright{
    margin: 0 auto;
    padding-left: 15px;
}

ul{
    list-style: none;
    margin: 10px;
    padding: 0;
}

.menubox3{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.aboutc{
    padding-top: 50px;
    padding-bottom: 20px;
}

.aboutbg{
    margin: 20px 0 20px;
    width: 100%;
    height: 250px;
    background: url(./img/about.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;

  }
  
  .abouttxt{
    padding: 95px;
    color: #fff;
    font-size: 50px;
    text-align: center;
    margin: 0 auto;
  }

.abouttop{
    margin: 0 auto;
    width: 480px;
    height: 300px;
    padding-top: 40px;
    padding-bottom: 20px;
}

.aboutmain1{
    position: relative;

}

.aboutmain2{
    position: absolute;
    z-index: -1;
    top: 100px;
    left: 180px;
}

img{
    width: 300px;
}


.abouttext{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px;
    padding-top: 80px;
}


.text{
    width: 450px;
    padding: 20px;
}

.about{
    margin: 0;
    padding: 0;
}

.accessbg{
    margin: 20px 0 20px;
    width: 100%;
    height: 250px;
    background: url(./img/access.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;
 }

 .map{
    display: block;
    
    width: 1000px;
    margin: 0 auto;
 }

 .ac{
    padding: 0px 16px 100px 16px;
 }

 .map iframe {
    width: 1000px;
    padding: 16px;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
  }

.contactbg{
    margin: 20px 0 20px;
    width: 100%;
    height: 250px;
    background: url(./img/contact.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;
 }

 .readmore {
    display: block;
    margin: 0 auto;
    padding: 10px 30px;
    text-decoration: none;
    text-align: center;
    background-color: #e03131;
    color: white;
    width: 200px;
 }

.readmore:hover{
    color: #e03101; 
    background-color: #ffffff; 
    text-decoration: none;
    border: solid 2px #e03101;
    letter-spacing: 2px;
    transition-duration: .7s;

}

.contacttxt {
    margin: 0 auto;
    text-align: center;
    width: 1000px;
    padding: 16px;
}

label{
    font-weight: bold;
}

.form{
    width: 100%;
    border: solid 1px;
}

select {
    width: 100%;
    border: solid 1px;
}

.header{
    width: 100%;
    text-align: center;
    padding-top: 50px;
}

textarea{
    width: 100%;
    height: 100px;
    border: solid 1px;
}

.submit {
    display: block;
    margin: 0 auto;
    width: 600px;
    height: 50px;
    background-color: #e03101;
    color: #ffffff;
}

.submit:hover{
    color: #e03101;
    background-color: #ffffff;
    border: #e03101 solid;
    transition-duration: .7s;

}

.submit:active{
    color: #ffffff;
    background-color: #e03101;
    transition-duration: 0s;
}

@media screen and (max-width: 430px) {
    
    body{
        margin: 0;
    }


    .menu{
        width: 90%;
        margin-left: 10%;
        position: absolute;
        display: flex;
        justify-content: end;
      }

      a {
        text-decoration: none;
        color: #ffffff;
        padding: 10px;
        text-shadow: 1px 1px 2px gray;
     
      }

      h1{
        font-size: 20px;
    }

    .menubg{
        width: 100%;
        height: 100px;
        background: url(./img/menu.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    
      }  
      .menutxt {
        padding: 33px 0;
        color: #fff;
        font-size: 30px;
        text-align: center;
        margin: 0 auto;
      }

      .aboutbg{
        width: 100%;
        height: 100px;
        background: url(./img/about.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    
      }
      .abouttxt {
        padding: 33px 0;
        color: #fff;
        font-size: 30px;
        text-align: center;
        margin: 0 auto;
      }

      .accessbg{
        width: 100%;
        height: 100px;
        background: url(./img/access.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    
      }

      .contactbg{
        width: 100%;
        height: 100px;
        background: url(./img/contact.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;

    }

    .map{
        display: block;
        width: 95%;
        margin: 0 auto;
     }

     .map iframe {
        width: 90%;
        -webkit-filter: grayscale(100%);
        -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
        -o-filter: grayscale(100%);
        filter: grayscale(100%);
      }

      .contacttxt {
        margin: 0 auto;
        text-align: center;
        width: 60%;
        padding: 16px;
    }
    
    label{
        font-weight: bold;
    }
    
    .form{
        width: 100%;
    }
    
    select {
        width: 100%;
    }
    
    .header{
        width: 100%;
        text-align: center;
        padding-top: 50px;
    }
    
    textarea{
        width: 100%;
        height: 100px;
    }
    
    .submit {
        display: block;
        margin: 0 auto;
        width: 100px;
        height: 50px;
        background-color: #e03101;
        color: #ffffff;


    }

    .abouttop{
        margin: 0 auto;
        width: 370px;
        height: 330rpx;
        padding-top: 10px;
        padding-bottom: 50px;
    }
    
    .aboutmain1{
        position: relative;
    
    }

    .aboutc{
        padding-top: 20px;
    }
    
    .aboutmain2{
        position: absolute;
        z-index: -1;
        top: 130px;
        left: 70px;
    }
    
    img{
        width: 300px;
    }

    .text{
        margin: 0 auto;
    }
    
    .abouttext{
        padding: 0px;
        flex-direction: column;
        padding-top: 50px;
    }

    .readmore{
        margin-top: 30px;
    }

    .text{
        width: 80%;
        padding: 20px;

    }
    
    .menubox2{
        flex-direction: column;
        margin: 0 auto;
        padding: 0;
    }

    .menubox1{
        margin: 0;
    }

    .xxxx {
        overflow: hidden;
        width: 350px;
        padding: 0;
        margin: 0 auto
    }

    .border{
        display: block;
        border-left: none;
      }

}