@charset "utf-8";

*,
*:before,
*:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 62.5%;
}

body  {
    font-size: 1.8rem;
    line-height: 1.6;
    color:#000;
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-weight: 500;
    font-style: normal;
}

/*-----------------------------------------------
共通
-----------------------------------------------*/

/*レイアウト*/
.container{
    max-width: 1125px;
    margin: 0 auto;
}

/*ボタン：ホバー*/
a.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

/*PC表示・SP非表示*/
body .pc-item {
    display: block; 
}

body .sp-item {
    display: none; 
}

/*PC改行なし*/
.br-sp {
    display: none; 
}

/*PC改行*/
.br-pc {
    display: block; 
}
/*フォント*/
.nscj-r{
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.nscj-m{
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-weight: 500;
    font-style: normal;
}

.nscj-b{
    font-family: "noto-sans-cjk-jp", sans-serif;
    font-weight: 700;
    font-style: normal;
}

/*-----------------------------------------------
ここからコンテンツ
-----------------------------------------------*/

/*-----------------------------------------------
FVセクション
-----------------------------------------------*/
.fv-box{
    max-width: 1125px;
    margin: auto;
}

.fv-box img{
    width: 100%;
    height: auto;
}

/*-----------------------------------------------
CTAセクション
-----------------------------------------------*/
.cta{
    padding-bottom: 6rem;
}

.cta-title img{
    width: 100%;
    height: auto;
}

.cta-btn{
    max-width: 965px;
    margin-top: -3rem;
    margin-left: auto;
    margin-right: auto;
}

.cta-btn img{
    width: 100%;
    height: auto;
}

.mc-copy{
    text-align: center;
    font-size: 3rem;
    line-height: 1.2;
}

.cta-btn_no-res{
    max-width: 712px;
    margin-top: 4rem;
    margin-left: auto;
    margin-right: auto;
}

.cta-btn_no-res img{
    width: 100%;
    height: auto;
}

/*-----------------------------------------------
悩みセクション
-----------------------------------------------*/
.nayami-box{
    position: relative;
    z-index: 2;
}

.nayami-box img{
    width: 100%;
    height: auto;
}

/*-----------------------------------------------
解決策の提示セクション
-----------------------------------------------*/
.solution-box{
    margin-top: -23rem;
    position: relative;
    z-index: 1;
}

.solution-box img{
    width: 100%;
    height: auto;
}

.solution-copy{
    padding: 6.5rem 10rem;
    font-size: 3.5rem;
    text-align: justify;
}

.kyotyo{
    background-color: #FFFF7A;
}

/*-----------------------------------------------
お客様の声セクション
-----------------------------------------------*/
.voice-bg{
    background-color: #FFFFD8;
    padding: 7rem;
}

.voice-title{
    max-width: 763px;
    margin: auto;
    padding-bottom: 3rem;
}

.voice-title img{
    width: 100%;
    height: auto;
}

.voice-hosoku{
    font-size: 2.7rem;
    text-align: center;
    padding-bottom: 5rem;
}

.voice-container{
    max-width: 992px;
    margin: auto;
}

.voice-box{
    background-color: #fff;
    border-radius: 4rem;
    padding: 5rem;
    margin-bottom: 2rem;
}

.voice-box:last-child{
    margin-bottom: 0;
}

.voice-title_h3{
    display: flex;
    justify-content: space-between;
    align-items: center;
    justify-items: center;
    padding-bottom: 2rem;
}

.voice-title_h3-item01{
    width: 200px;
}

.voice-title_h3-item01 img{
    width: 100%;
    height: auto;
}

.voice-title_h3-item02{
    width: 640px;
}

.voice-title_h3-item02 p{
    font-size: 2.7rem;
}

.voice-title_h3-item02 h3{
    font-size: 4.4rem;
    color: #007599;
    line-height: 1.3;
}

.voice-copy{
    font-size: 3rem;
}

/*-----------------------------------------------
選ばれる理由セクション
-----------------------------------------------*/
.reason-container h2 img{
    width: 100%;
    height: auto;
}

.reason-container h3 img{
    width: 100%;
    height: auto;
}

.reason-bg{
    background-color: #DFE8EB;
}

.reason-box{
    max-width: 920px;
    margin: auto;
}

.reason-container p{
    font-size: 3.5rem;
    line-height: 1.4;
    padding: 7rem 0rem;
}

.reason-bg p{
    font-size: 3.5rem;
    line-height: 1.4;
    padding: 7rem 0rem;
}

/*-----------------------------------------------
マシン紹介
-----------------------------------------------*/
.machine-bg{
    background-color: #DFE8EB;
    padding-bottom: 7rem;
}

.custom-line {
    max-width: 945px;
    width: 100%;
    height: 1px;
    background-color: #ccc;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
}

.machine-title {
    font-size: 6.2rem;
    text-align: center;
    padding-bottom: 2rem;
}

/*スライドショー*/
.slideshow-container{
    max-width: 1000px;
    margin: auto;
}

/*-----------------------------------------------
料金セクション
-----------------------------------------------*/
.price-title{
    background-color: #000;
    padding: 7rem 0;
    text-align: center;
    font-size: 8rem;
    color: #fff;
    line-height: 1.4;
}

.price-bg{
    padding: 12rem 0;
    background: #ffffd8;
}

.price-img{
    max-width: 570px;
    margin: 0 auto;
    padding-bottom: 6rem;
}

.price-img:last-child{
    padding-bottom: 0px;
}

.price-img img{
    width: 100%;
    height: auto;
}

/*-----------------------------------------------
スタッフ紹介セクション
-----------------------------------------------*/

.staff-title{
    background-color: #000;
    padding: 7rem 0;
    text-align: center;
    font-size: 8rem;
    color: #fff;
    line-height: 1.4;
}

.staff-small-txt{
    font-size: 6rem;
}

.staff-img{
    max-width: 1125px;
}

.staff-img img{
    width: 100%;
    height: auto;
}

.staff-box{
    max-width: 922px;
    margin: auto;
}

.profile-txt p{
    font-size: 3rem;
    color: #000;
    padding-bottom: 5rem;
}

table {
    width: 100%;
    border-collapse: collapse;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}

table td {
    padding-top: 4rem;
    padding-bottom: 4rem;
    vertical-align: top;
}

table tr:first-child td {
    padding-bottom: 0 !important;
}

.category {
    width: 20%;
    font-size: 4rem;
    font-weight: bold;
    letter-spacing: 10px;
}

.content {
    width: 80%;
    font-size: 3rem;
}

ul {
    list-style-type: none;
    padding-left: 0;
    margin: 0;
}

li {
    position: relative;
    padding-left: 2.5rem;
}

li:before {
    content: "•";
    position: absolute;
    left: 0;
    font-size: 5rem;
    line-height: 4rem;
}

.food-hobby_container {
    display: flex;
    width: 100%;
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.food-hobby_container:last-child {
    padding-bottom: 0;
}

.food-hobby_item {
    width: 50%;
}

.food-hobby_title {
    font-size: 4.4rem;
    margin-bottom: 1rem;
    font-weight: bold;
}

.keireki-text {
    font-size: 3rem;
}

.food-hobby_text{
    font-size: 3rem;
}

/*-----------------------------------------------
代表挨拶セクション
-----------------------------------------------*/
.aisatu-bg{
    background-color: #F7F5E6;
    padding-bottom: 7rem;
}

.aisatu-title{
    max-width: 100%;
}

.aisatu-title img{
    width: 100%;
    height: auto;
}

.aisatu-box{
    max-width: 962px;
    margin: auto;
    font-size: 3.2rem;
}

/*-----------------------------------------------
予約までの流れセクション
-----------------------------------------------*/
.flow-title{
    max-width: 1125px;
}

.flow-title img{
    width: 100%;
    height: auto;
}

.flow-box{
    padding-top: 5rem;
}

.flow-box p{
    font-size: 3rem;
    text-align: center;    
}

.flow-img{
    max-width: 1125px;
    margin: auto;
    padding-top: 5rem;
}

.flow-img img{
    width: 100%;
    height: auto;
}

.flow-box h3{
    text-align: center;
    margin-bottom: 2rem;
    line-height: 3;
}

.marker {
    font-size: 6.6rem;
    font-weight: bold;
    color: #000;
    line-height: 1.45;
    display: inline;
    position: relative;
    z-index: 2;
}

.marker::after {
    content: "";
    position: absolute;
    left: -15px;
    right: -15px;
    bottom: -1px;
    width: calc(100% + 30px);
    height: 45%;
    background-color: #ffff80;
    z-index: -1;
}

/*-----------------------------------------------
アクセスセクション
-----------------------------------------------*/

.access-title{
    max-width: 1125px;
}

.access-title img{
    width: 100%;
    height: auto;
}

.map-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 46.25%;
    overflow: hidden;
    margin-bottom: 20px;
}

.map-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.access-container{
    max-width: 930px;
    margin: auto;
    padding-top: 8rem;
    padding-bottom: 8rem;
}

.access-box{
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 1rem;
}

.access-icon{
    max-width: 50px;
    text-align: center;
}

.access-icon img{
    width: 100%;
    height: auto;
}

.access-heading {
    color: #5EB2A8;
    font-size: 4rem;
    font-weight: bold;
    padding-left: 1rem;
}

.access-txt {
    color: #000;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.1;
    margin-bottom: 4rem;
}

/*-----------------------------------------------
フッターセクション
-----------------------------------------------*/

footer{
    background-color: #000;
    padding: 30px 0;
    color: #fff;
    text-align: center;
}

.footer_link {
    font-size: 17px;
    padding: 10px 0;
}

.footer_link a {
    color: #fff;
    text-decoration: none;
}

.copy {
    font-size: 15px;
}

/*-----------------------------------------------
タブレット
-----------------------------------------------*/

@media screen and (max-width: 1024px) {

/*レイアウト*/
.container{
    width: 100%;
    margin: 0 auto;
}

/*-----------------------------------------------
お客様の声セクション
-----------------------------------------------*/

.voice-title_h3-item01{
    width: 25%;
}

.voice-title_h3-item02{
    width: 70%;
}

.voice-title_h3-item02 h3{
    font-size: 4rem;
    color: #007599;
    line-height: 1.3;
}

}