@charset "UTF-8";
body, html{
    overflow-x: hidden;
    scroll-behavior: smooth;
    margin: 0;
    padding: 0;
    font-family: 'ZENKakuGothic', Arial, sans-serif; 
    overflow: auto;
}


a {
    text-decoration: none;
    color: #333;
}



/* ヘッダーの高さを考慮した調整 */
#mainV {
    scroll-margin-top: 150px; /* ヘッダーの高さ分を調整 */
}


/*ヘッダーの画像*/
.logo img.left {
    max-height: 100%; /* ロゴの高さもヘッダーの高さに合わせる */
}
/*ヘッダーのリンク*/


/* PC用スタイル */
@media screen and (min-width: 1024px) {
    
    .fade-in {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity , transform 0.5s;
    }
    /* フェードインのアニメーション */
    .fade-in.show {
        opacity: 1;
        transform: translateY(0);
    }



/*ヘッダー*/
    .header {
        
        top: 0;
        left: 0;
        right: 0;
        height: 120px;
        background-color: rgb(255, 193, 78); /* ヘッダーの背景色を指定（必要に応じて変更） */
    }
    
    

    /* ヘッダーのロゴ */
    .logo {
        display: flex;
        align-items: center; /* 垂直方向に中央揃え */
        justify-content: center; /* 水平方向に中央揃え */
        max-height: 90%;
        height: 100%;
    }
    
    

/* ハンバーガーボタン */
    #menu_btn {
        position: absolute;
        top: 30px;
        right: 30px;
        height: 60px;
        width: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 100;
        cursor: pointer;
    }
   /* 三本線*/
    #menu_btn span,
    #menu_btn span::before,
    #menu_btn span::after {
        content: "";
        display: block;
        position: absolute;
        height: 3px;
        width: 25px;
        border-radius: 3px;
        background-color: #7b7a7a;
        transition: all 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);/*アニメーションのイージングも設定しておく*/
    }
    #menu_btn span::before {
        bottom: 8px;
    }
    #menu_btn span::after {
        top: 8px;
    }

/* ドロワーメニュー */
    #menu_cont {
        position: absolute;
        top: 0;
        left: 100%; /*left 100%で画面の外に出しておく*/
        width: 730px;
        height: 730px;
        background:#f5f5f5;
        z-index: 90;
        transition: all 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
        display: flex;
        flex-direction: column; 
        align-items: flex-end;
    }

    /* ドロワーメニュー外の背景 */
    #drawer_back {
        display: none;
        position:absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background: rgba(103, 113, 123, 0.5);
        z-index: 80;
    }

    /* メニューリストの装飾 */
    #menu_cont ul {
        padding: 20% 10% 0;
        width: 100%; 
    }
    #menu_cont ul li {
        list-style: none;
    }
    #menu_cont ul li a {
        display: block;
        width: 100%;
        padding: 10px;
        margin: 50px;
        color:#000000;
        text-decoration: none;
    }
    #menu_cont ul li a:hover {
        opacity: 0.7;
    }

    /* クリックされたら三本線が×に変化する */
    #check_input:checked ~ #menu_btn span {
        background-color: transparent; 
    }
    #check_input:checked ~ #menu_btn span::before {
        bottom: 0;
        transform: rotate(45deg);
    }
    #check_input:checked ~ #menu_btn span::after {
        top: 0;
        transform: rotate(-45deg);
    }

/*ドロワーメニュー*/
    /* クリックされたらドロワーメニュー表示 */
    #check_input:checked ~ #menu_cont {
        left: 810px;
    }
    #check_input:checked ~ #drawer_back {
        display: block;
        overflow: auto;
    }

    /* input非表示 */
    #check_input {
        display: none;
    }

    #check_input:checked {
        overflow: auto;
    }

/*ここまでがハンバーガー*/

    .header-text {
        position: absolute;
        top: 10%;
        right: 48.5%;
    }
    
    ul li a {
        border: 2px solid #000000/*#CE5D8B*/;
        border-radius: 5px;
        text-align: center;
    }

 /* mainV */
    .mo2{
        display: none;
    }
    .mainV {
        position: relative;
        height: 610px; 
        width: 100%;
        overflow: hidden;
    }

    /*
    .mainV video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: -1;
        opacity: 0.4;
        box-shadow: 0 4% 8% rgba(0, 0, 0, 0.2);
    }*/
    /* overlay */
    /*
    .overlay {
        position: absolute;
        top: 3%; 
        left: 13%;
        width: 30%; 
        height: 45%;
        background-color: rgba(150, 165, 180, 0.5); 
        z-index: 1; 
        border-radius: 15px; 
    }
    .overlay.right {
        position: absolute;
        top: 52%;
        left: 54%;
        width: 30%; 
        height: 45%; 
        background-color: rgba(150, 165, 180, 0.5); 
        z-index: 1; 
        border-radius: 15px; 
        box-shadow: 0 4% 8% rgba(0, 0, 0, 0.2);
    }
    */
    .mainV video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover; /* 動画を要素に合わせて表示 */
        z-index: -1;
        opacity: 0.4;
        box-shadow: 0 4% 8% #00000033;
    }
/*スライダー*/
.slider-container {
    display: flex;
    height: 600px;
    background-color: rgb(255, 193, 78);
}

.testdiv {
    display: flex; /* ここも Flexbox を使用して子要素を横に並べる */
    overflow: hidden;
    justify-content: center; /* 中央に揃える */
    flex-grow: 1; /* 残りのスペースを占有 */
    background-color:  rgb(255, 193, 78,0.8);
}

.testdiv2,.Rtestdiv2{
    margin:10px; /* 間隔を設定 */

}

.slider{
    list-style: none; /* リストマーカーを非表示 */
    padding: 0; /* パディングをリセット */
    width: 225px;
    height: 190px;
}

.slider li {
    margin-bottom: 10px; /* スライド間の余白を設定 */

}

.slider-container img,
.Rslider img {
    border-radius: 15px; /* 任意の角丸のサイズを指定 */
    width: 100%;
    height: 100%;
    object-fit: cover; /* 画像をリサイズして、アスペクト比を保ったまま親要素に収まるようにする */
    opacity: 0.8; /* 透明度を設定します */
}

.mainetext{
    position: absolute;
    top: 47%; 
    left: 10%;
    height: 20%;
    z-index: 1;  
}


/* 事業内容～ */
    .about_us {
        width: 55%;
        height: 100%;
        margin: 0 auto;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border-radius: 60px;
        
    }
    .text p,.text2 p{
        margin: 5px;
        font-weight: bold;
        font-size: 20px;
    }
    .text2{
        margin: 0 auto;
        width: 80%;
    }
    .text3 {
        margin-top: 30px;
    }
    .text3 p{
        text-align: center;
        font-weight: bold;
        font-size: 20px;
        margin: 0;
    }
    

    /* ホバーしたときに影を表示 */
    .about_us:hover {
        box-shadow: 0 10px 18px rgba(0, 0, 0, 0.1); /* X方向のオフセット、Y方向のオフセット、ぼかし半径、色 */
        transition: box-shadow 0.3s ease; 
    }

    /* 画像について */
    .about_logo {
        display: flex;
        justify-content: center;
        margin: 40px 0 10px;
    }
    .about_logo img {
        width: 130px;
        height: 130px;
    }

    .text{
        text-align: center;
        font-size: 20px;
    }
    /*ボタン*/
    .connect {
        width: 270px;
        height:60px;
        background-color: #f5f5f5;
        margin: 20px auto; 
        border-radius: 70px; 
        position: relative;
        cursor: pointer; /* カーソルをポインターに変更 */
        overflow: hidden;
        cursor: pointer; 
        margin-bottom: 50px;
    }
    /*〇*/
    .connect::after {
        content: "";
        position: absolute;
        right: 17px;
        top: 50%;
        transform: translateY(-50%);
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background-color: rgb(255, 193, 78);
        z-index: 20;
    }
    /*矢印*/
    .line{
        content: "";
        right: 26px;
        top: 45%;
        position: absolute; 
        width: 30px; 
        height: 5px; 
        background-color: rgb(255, 193, 78); 
        z-index: 21;
        border-radius: 20px;
        transition: background-color 0.4s;
    }
    .line::before{
        content: "";
        width: 20px; 
        height: 5px; 
        background-color: rgb(255, 193, 78); 
        position: absolute;
        top: -100%;
        right: 0px; 
        transform: rotate(30deg); 
        z-index: 21;
        border-radius: 20px;
        transition: background-color 0.4s;
    }
    .line::after{
        content: "";
        width: 20px; 
        height: 5px; 
        background-color: rgb(255, 193, 78); 
        position: absolute;
        top: 100%;
        right: 0px;
        transform: rotate(-30deg); /* 角度 */
        z-index: 21;
        border-radius: 20px;
        transition: background-color 0.4s;
    }
    .connect:hover .line,
    .connect:hover .line::before,
    .connect:hover .line::after  {
        background-color: rgb(255, 255, 255); /* ホバー時は元の色に戻す */
    }
    
    .connect p {
        position: absolute;
        font-size: 16px;
        text-align: center;
        top: 20%;
        left: 43%;
        transform: translate(-50%, -50%);
    }

    /* ボタンがクリックされたときのスタイル */
    .connect:hover {
        opacity: 0.7;
        position: relative;
    }

/*理想のプロポーズの実現へ*/
    #backg{
        display: block;
        width: 100%;
        height: 100%;
    }
    .comment{

        height: 500px;
        display: flex;
        justify-content: center; 
        align-items: center;
    }
    .commentbox{
        position: absolute;
        text-align: center;
        width: 65%; 
        height: 400px;
        border-radius: 15px;
        background-color: rgba(255, 193, 78, 0.8);
        box-shadow: 0 0 15px rgba(159, 157, 157, 0.568);
        z-index: 10;
    }
    .commentbox h1{
        color: rgb(255, 255, 255);
        font-size: 36px;
        margin-top: 20px;   
        margin-bottom: 6px;      
    }
    .commentbox p{
        color: rgb(255, 255, 255);
        font-size: 26px;
        font-weight: bold;
        margin: 10px;
    }
    .space{
        margin: 40px;
    }
/*Go-En Projectって？*/
    .gyoukan{
        margin: 10px;
        line-height: 1.5;
    }
    .Go-En{
        text-align: center;
        font-weight: bold;
        align-items: center;
        flex-direction: column;
        display: flex;
        margin-bottom: 20px;
    }
    .Gtitle{
        font-size: 26px;
    }
    .Go-En p{
        font-size: 24px;
        
    }
    .lef {
        text-align: left;
    }

    .uline{
        border-bottom: 7px solid rgb(255, 193, 78); /* 下線のスタイルを設定 */
        padding-bottom: 10px;
        width: 280px;
        display: inline-block;
        white-space: nowrap;
    }
    .uline2{
        margin-bottom: 0;
    }
    
    .center-line {
        width: 280px; /* 下線の幅を指定 */
        border: none; /* ボーダーを削除 */
        border-top: 7px solid rgb(255, 193, 78);
    }
    .midbox{
        background-color: #ececec;
        flex-direction: column;
        display: flex;
        justify-content: center; /* 横方向に中央揃え */
        align-items: center;
    }
    .mid{
        text-align: center;
        padding-top: 20px;
    }
    .mid p{
        font-size: 24px;
        font-weight: 500;
    }
    .mid h2{
        font-size: 30px;
        padding-top: 20px;
    }
    

/*決められたプランではなく…*/
    .moji{
        color: rgb(255, 193, 78);
        text-align: center;
    }
    .exp{
        text-align: center;
        margin-top: 50px;
    }
    .exp p{
        font-size: 18px;
        font-weight: bold;
    }
/*-----------------Stepbox------------------*/
    .step{
        display:flex; 
        justify-content: center;
        text-align: center;
    }
    .step p{
        font-weight: bold;
        text-align: left;
    }
    .stephaba {
        display: flex;
        flex-direction: row; /* ステップが横に表示されるように */
    }

    
    .step1,.step2,.step3,.step4,.step5{
        margin-right: 20px;
        padding: 15px;
        box-shadow: 0 0 15px rgba(159, 157, 157, 0.568); 
        border-radius: 20px;
        width: 160px; 
        height: 220px;
        overflow: hidden;
        background-color: rgb(255, 193, 78);
    }
    
   /* .stephaba:hover .step1,
    .stephaba:hover .step2,
    .stephaba:hover .step3,
    .stephaba:hover .step4,
    .stephaba:hover .step5 {
        animation: rotateMultiple 1s linear 1 alternate; 
    }*/

    @keyframes rotateMultiple {
        0% {
            transform: rotate(0deg); /* 初期の回転角度 */
        }
        100% {
            transform: rotate(360deg); /* 最終的な回転角度 */
        }
    }

/*こんな人におすすめ*/
    .recommend{
        height: auto;
        text-align: center;
        padding-bottom: 40px;
    }
    .moji2{
        text-align: center;
    }
    .konnna{
        margin: 40px;
    }
    .recombox {
        border-radius: 20px;
        background-color: #ececec;
        height: 400px;
        width: 800px;
        margin: 0 auto;
        text-align: left; 
        font-weight: bold;
        font-size: 20px;
        display: flex;
        flex-direction: column;
        box-shadow: 0 0 10px rgba(159, 157, 157, 0.2);
    }
    
    .recommend p {
        margin: 5px;
        flex: 1;
        margin-left: 40px;
    }
/*他ではできないようなことも*/ 
    .orange{
        background-color: rgb(255, 193, 78);
        color: white;
        font-weight: bold;
        font-size: 30px;
        text-align: center;
    }
    .orange p{
        margin: 0;
        padding: 40px;
        line-height: 1.5;
    }
/*customer0*/
    #okoe{
        padding: 30px;
    }
    .customer {
        text-align: center;
        padding: 50px;
        background-color: #ececec;
    }
    .voice {
        display:flex; 
        justify-content: center;
    }
    .A,.B,.C{
        margin-right: 20px;
        padding: 15px;
        box-shadow: 0 0 2cap rgba(159, 157, 157, 0.2); /* シャドウ */
        border-radius: 50px;
        width: 370px; 
        height: 450px;
        flex-shrink: 0;
        overflow: hidden;
        background-color: #ffffff;
        text-align: left;
        
    }
    .A:hover, .B:hover, .C:hover {
        box-shadow: 0 10px 18px rgba(0, 0, 0, 0.1); /* X方向のオフセット、Y方向のオフセット、ぼかし半径、色 */
        transition: box-shadow 0.3s ease; 
}

    .voice h2 {
        font-size: 30px;
        margin-bottom: 20px; 
        text-align: left;
        padding-left: 20px;
    }

    .voice p {
        font-size: 18px;
        line-height: 1.6;
        padding-left: 20px;
    }


    .soudan p{
        text-align: center;
        font-weight: bold;
        margin: 0;
        padding-top: 40px;
        padding-bottom: 10px;
        line-height: 1.5;
        font-size: 26px;
    }
/*アクセス・営業時間*/
    .gray{
        background-color: #ececec;
    }  
    #acs{
        font-size: 36px;
        text-align: center;
    }
    .access{
        height: 550px;
        font-size: 24px;
        display: flex;
        justify-content: space-between; /* テキストと Google マップを左右に配置 */
        padding-left: 150px;
        padding-right: 100px;
    }
    .time{
        padding-left: 5%;
        text-align: left;
        align-items: center;
    }
    .time p{
        margin: 16px;
        font-weight: bold;
    }
    #mtr{
        font-weight: normal;
        margin-top: 80px;
    }
    #google-map{
        align-items: center;
        flex-shrink: 0;
        right: 100px;
    }
    
    
/* フッター */

    .footer {
        height: 80px;
        background-color: rgb(255, 193, 78);
        color: #fff;
        text-align: center;
        justify-content: space-between;
        padding: 10px;
    }


    .copy{
        font-size: 20px;
    }
}








/* タブレット用スタイル */
@media screen and (max-width: 1023px) and (min-width: 768px) {
    /* タブレット用のスタイルをここに記述 */
}

/* スマートフォン用スタイル */
@media screen and (max-width: 641px) and (min-width: 320px) {
    /* 表示する要素 */
    
    .fade-in {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.5s, transform 0.5s;
    }
    
    .fade-in.show {
        opacity: 1;
        transform: translateY(0);
    }
    
    body {
        overflow-x: hidden;
        background-attachment: scroll;
        font-weight: bold;
    }
    
    /* ヘッダー */
    .header {
        background-color: rgb(255, 193, 78);
        padding: 20px 0;
        position: relative;
        height: 40px;
        width: 100%;
    }

    .logo {
        position: absolute;
        left: 5%;
        height: 40px;
        width: 70px;   
    }
    

    /* ハンバーガーボタン */
    #menu_btn {
        display: block;
        position: fixed;
        top: 40px;
        right: 50px;
        z-index: 1000;
        cursor: pointer;
    }
   /* 三本線*/
    #menu_btn span,
    #menu_btn span::before,
    #menu_btn span::after {
        content: "";
        display: block;
        position: absolute;
        height: 3px;
        width: 25px;
        border-radius: 3px;
        background-color: #7b7a7a;
        transition: all 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);/*アニメーションのイージングも設定しておく*/
    }
    #menu_btn span::before {
        bottom: 8px;
    }
    #menu_btn span::after {
        top: 8px;
    }

/* ドロワーメニューのスタイル */
    #menu_cont {
        position: fixed;
        top: 0;
        right: 0;
        width: 80%; /* ドロワーメニューの幅を指定 */
        height: 100%;
        background: #f5f5f5;
        z-index: 900;
        transform: translateX(100%); /* 初期状態では画面外に配置 */
        transition: transform 0.3s ease; /* アニメーションの設定 */
    }

     /* ドロワーメニューが表示されたときの背景 */
     #drawer_back {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 800;
    }

    /* メニューリストの装飾 */
    #menu_cont ul {
        padding: 20% 10% 0;
        width: 100%; 
    }
    #menu_cont ul li {
        list-style: none;
    }
    #menu_cont ul li a {
        display: block;
        width: 100%;
        padding: 10px;
        margin: 50px;
        color:#000000;
        text-decoration: none;

        border: 1px solid black; 
        padding: 10px 5px; /* 文字の周囲の余白 */
        border-radius: 5px; 
        text-decoration: none;
        text-align: center; 
        width: 180px; /* メニューアイテムの幅を指定 */
    }
    #menu_cont ul li a:hover {
        opacity: 0.7;
    }

    /* クリックされたら三本線が×に変化する */
    #check_input:checked ~ #menu_btn span {
        background-color: transparent; 
    }
    #check_input:checked ~ #menu_btn span::before {
        bottom: 0;
        transform: rotate(45deg);
    }
    #check_input:checked ~ #menu_btn span::after {
        top: 0;
        transform: rotate(-45deg);
    }

    /* チェックボックスがチェックされたときにドロワーメニューを表示 */
    #check_input:checked ~ #menu_cont {
        transform: translateX(0);
    }

    /* チェックボックスがチェックされたときに背景を表示 */
    #check_input:checked ~ #drawer_back {
        display: block;
    }

    /* input非表示 */
    #check_input {
        display: none;
    }

    #check_input:checked {
        overflow: auto;
    }

/*ここまでがハンバーガー*/



/*スライダー*/
.slider-container {
    display: flex;
    height: 600px;
    background-color: rgb(255, 193, 78);
}

.testdiv {
    display: flex; /* ここも Flexbox を使用して子要素を横に並べる */
    overflow: hidden;
    justify-content: center; /* 中央に揃える */
    flex-grow: 1; /* 残りのスペースを占有 */
    background-color:  rgb(255, 193, 78,0.8);
}

.testdiv2,.Rtestdiv2{
    margin:5px; /* 間隔を設定 */

}

.slider{
    list-style: none; /* リストマーカーを非表示 */
    padding: 0; /* パディングをリセット */
    width: 68px;
    height: 80px;
}

.slider li {
    margin-bottom: 2px; /* スライド間の余白を設定 */

}

    .slider-container img,
    .Rslider img {
        border-radius: 10px; /* 任意の角丸のサイズを指定 */
        width: 100%;
        height: 100%;
        object-fit: cover; /* 画像をリサイズして、アスペクト比を保ったまま親要素に収まるようにする */
        opacity: 0.8; /* 透明度を設定します */
    }

    .mainetext{
        position: absolute;
        top: 50%; 
        left: 5%;
        width: 80%;
        z-index: 1;  
        display: flex;
        justify-content: center;
        align-items: center;
    }
    


    /* mainV 
    .mainV video {
        display: none;
    }
    .mainV video.mo2 {
        display: block;
        width: 100%;
    }
    .mainV {
        position: relative;
        
        
        overflow: hidden;
    }*/
    
/*
    .mainV {
        display: none;
    }

    .mainetext {
        font-size: 16px;
        top: 40%; 
        left: 5%;
        width: 90%; 
        height: auto;
    }

    .overlay,
    .overlay.right {
        display: none;
    }
*/
    .about_us {
        width: 80%;
        font-size: 12px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        margin: 0 auto;
    }
    
    
    /* 画像について */
    .about_logo {
        display: flex;
        justify-content: center;
    }
    .about_logo img {
        margin-top: 20px;
        width: 70px;
        height: 70px;
    }


/*説明*/
    .connect {
        width: 170px;
        height:40px;
        background-color: #f5f5f5;
        margin: 20px auto; 
        border-radius: 70px; 
        position: relative;
        overflow: hidden; 
        margin-bottom: 20px;
    }
    .text p,.text2 p{
        margin: 5px;
        font-weight: bold;
        font-size: 12px;
    }
    .WGP{
        border-bottom: 5px solid rgb(255, 193, 78);
        display: inline-block;
    }
    .text2{
        margin: 0 auto;
        width: 80%;
    }
    .text3 {
        margin-top: 20px;
    }
    .text3 p{
        text-align: center;
        font-weight: bold;
        margin: 0;
    }

    /*理想のプロポーズ*/
    #backg{
        display: block;
        width: 100%;
        height: 100%;
    }
    .comment{
        background-color: rgb(255, 255, 255);
        height: 300px;
        display: flex;
        justify-content: center; 
        align-items: center;
    }
    .commentbox{
        position: absolute;
        text-align: center;
        width: 90%; 
        height: 260px;
        border-radius: 15px;
        background-color: rgba(255, 193, 78, 0.8);
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    }
    .commentbox h1{
        color: rgb(255, 255, 255);
        font-size: 18px;
        margin-top: 20px;   
        margin-bottom: 6px;       
    }
    .commentbox p{
        margin: 5px;
        color: white;
        font-size: 12px;
        font-weight: bold;
    }
    .cbc{
        height: 260px;
        margin-left: 20px;
        margin-right: 20px;
    }
    .space{
        margin-top: 20px;
    }
/*Go-En Projectって？*/
    .gyoukan{
        margin: 0;
    }
    .Go-En{
        padding-top: 15px;
        padding-bottom: 20px;
        width: 85%;
        margin: auto;
        text-align: center;
        font-weight: bold;
        align-items: center;
        flex-direction: column;
        display: flex;
    }
    .Gtitle{
        font-size: 14px;
    }
    .Go-En p{
        font-size: 14px;
        line-height: 1.5;
    }
    .lef {
        text-align: left;
    }

    .uline{
        border-bottom: 5px solid rgb(255, 193, 78); /* 下線のスタイルを設定 */
        padding-bottom: 5px;
        width: 180px;
        display: inline-block;
        white-space: nowrap;
        font-size: 18px;
    }
    .uline2{
        margin-bottom: 0;
        font-size: 18px;
    }
    
    .center-line {
        width: 180px; /* 下線の幅を指定 */
        border: none; /* ボーダーを削除 */
        border-top: 7px solid rgb(255, 193, 78);
    }
    .midbox{
        background-color: #ececec;
        flex-direction: column;
        display: flex;
        justify-content: center; /* 横方向に中央揃え */
        align-items: center;
        
    }
    .haba{
        margin: auto;
        width: 85%;
    }
    .mid{
        text-align: center;
        padding-top: 20px;
    }
    .mid p{
        font-size: 12px;
        font-weight: 500;
    }
    .mid h2{
        font-size: 16px;
        padding-top: 20px;
    }
    
/*プラン*/
    .exp{
        text-align: center;
        margin-top: 25px;
    }
    .exp h2{
        color: rgb(255, 193, 78);
        font-weight: bold
    }
    /*Stepbox*/
    .stephaba{
        margin: auto;
    }
    .step{
        display: grid; /* グリッドレイアウトを使用 */
        grid-template-columns: 1fr;
        justify-content: center;
        }
    .step p{
        font-weight: bold;
        text-align: left;
        padding-left: 10px;
    }
    .step h2{
        text-align: center;
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .step1,.step2,.step3,.step4,.step5{
        padding: 20px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); /* シャドウ */
        border-radius: 20px;
        width: 180px; 
        height: 190px;
        overflow: hidden;
        background-color: rgb(255, 193, 78);
        margin-top: 10px;
    }



/*こんな人におすすめ*/
    .recommend{
        height: auto;
        text-align: center;
        margin-bottom: 20px;
    }
    .moji{
        color: rgb(0, 0, 0);
        text-align: center;
    }
    .konnna{
        margin: 20px;
    }
    .recombox {
        border-radius: 10px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); 
        background-color: #ececec;
        height: 300px;
        width: 300px;
        margin: 0 auto;
        text-align: left; 
        font-weight: bold;
        font-size: 14px;
        display: flex;
        flex-direction: column;
        padding: 20px;
    }
    
    .recommend p {
        margin: 2px;
        flex: 1;
    }
/*他ではできないような*/
    .orange{
        background-color: rgb(255, 193, 78);
        color: white;
        font-weight: bold;
        font-size: 14px;
        text-align: center;
    }
    .orange p{
        margin: 0;
        padding: 20px;
        line-height: 1.5;
    }



    .mincom{
        text-align: center;
        font-weight: bold;
        font-size: 12px;
        margin-top: 20px;
    }
    .mincom p{
        margin: 0px;
    }


    /*〇*/
    .connect::after {
        content: "";
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background-color: rgb(255, 193, 78);
        z-index: 10;
    }
    /* 矢印のスタイル */
    .line{
        content: "";
        right: 15px;
        top: 18px; /* 中央配置 */
        position: absolute; 
        width: 20px; 
        height: 3px; 
        background-color: white; 
        z-index: 21;
        border-radius: 20px;
    }
    
    /* 矢印の上部の線 */
    .line::before{
        content: "";
        width: 10px; 
        height: 3px; 
        background-color: white; 
        position: absolute;
        top: 0; 
        right: 0px; 
        transform: translateY(-100%); 
        transform-origin: right center; /* 右端を中心に回転 */
        transform: rotate(30deg); 
        z-index: 21;
        border-radius: 20px;
    }
    
    /* 矢印の下部の線 */
    .line::after{
        content: "";
        width: 10px; 
        height: 3px; 
        background-color: white; 
        position: absolute;
        top: 0; 
        right: 0px;
        transform: translateY(100%); 
        transform-origin: right center; 
        transform: rotate(-30deg); 
        z-index: 21;
        border-radius: 20px;
    }
    
    /* 事業内容のお問い合わせテキストのスタイル */
    .connect p {
        position: absolute;
        font-size: 11px; /* PC用のフォントサイズに変更 */
        font-weight: bold;
        left:40%; /* ボタンの中央に配置 */
        top: 7px; /* ボタンの中央に配置 */
        transform: translate(-50%, -50%);
    }

    #okoe{
        padding: 10px;
        margin: 0;
        font-size: 26px;
        text-align: center;
    }
    .customer {
        padding-bottom: 30px;
        background-color: #ececec;
        white-space: nowrap;
    }
    .voice {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .A,.B,.C{
        background-color: white;
        margin: 5px;
        padding: 30px;
        box-shadow: 0 0 2cap rgba(159, 157, 157, 0.2);
        border-radius: 40px;
        width: 270px; 
        height: 300px;
        flex-shrink: 0;
        overflow: hidden;
    }

    .voice h2 {
        font-size: 20px;
        margin-bottom: 10px;
        text-align: left;
        padding-left: 30px;

    }
    .voice p {
        font-size: 14px;
        line-height: 1.6;

    }
    .soudan p{
        text-align: center;
        font-weight: bold;
        margin: 0;
        padding-top: 20px;
        padding-bottom: 5px;
        line-height: 1.5;
        font-size: 16px;
    }
/*アクセス*/
    .gray{
        background-color: #ececec;
    }
    #acs{
        text-align: center;
        padding-top: 20px;
        padding-bottom: 0;
        margin-bottom: 0;
    }
    .access {
        flex-direction: column;
        padding: 20px;
    }

    .time {
        text-align: center;
        font-size: 14px;
        line-height: 1.3;
        padding-bottom: 15px;
    }
    .time p{
        margin: 20px;
    }

    #google-map {
        width: 100%;
        height: 350px;
        margin: 0 auto;
    }

    .footer {
        height: auto;
        padding: 20px;
        flex-direction: column;
        align-items: center;
        background-color: rgb(255, 193, 78);
    }

    .information {
        font-size: 16px;
        text-align: center;
    }

    .copy {
        text-align: center;
        font-size: 10px;
    }

    .social-media {
        display: none;
    }   
}
