

body{
    margin:0;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1.6;
}

*{
    margin:0;
    padding:0;
}

/* リセット（必要最小限） */
*{box-sizing:border-box;margin:0;padding:0}

ul {
    list-style-type:none;
    margin-block-start: 0em;
    margin-block-end: 0em;
    padding-inline-start: 0px;
 }

.clearfix{
    content: "";
    display:block;
    clear: both;
}
.br-sp {
    display: block;
}
.br-pc {
    display: none;
}

.pcOnly {
    display: none;
}
.spOnly {
    display: inline;
}

  
  /* 768px以上(PC)  **************/
  @media (min-width: 768px) {
        .br-sp {
         display: none;
        }
        .br-pc {
            display: block;
        }
        .pcOnly {
            display: inline;
        }
        
        .spOnly {
            display: none;
        }
    }



/* ブレイクポイント *****************************
    768px以上PC 
    768px以下SP 
************************************************/



 /* 各ぺージに共通 **************************************/

/* 768px以下(SP)  **************/
.contents{
    width: 94%;
    margin: 0 auto;
}


/* 768px以上(PC)  **************/
    @media (min-width: 768px) {   
        .contents{
            width: 94%;
            max-width:1210px;
            margin: 0 auto;
        }
    }




/* header ********************/

header{
    display: none;
}


 /* 768px以上(PC)  **************/
@media (min-width: 768px) {

    header{
        display: block;
        background-color: #edebed;
    }
    .head-inner{
        max-width: 1500px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
    }

    .head-imgBox{
        width: 25%;
        min-width: 325px;
        padding:2rem  0 2rem  0;
    }
    .head-imgBox p img{
        width: 100%;
    }

    .head-formBox{
        width: 20%;
        min-width: 313px;
        text-align: center;
        padding: 3rem 0;
        margin-right: 1.5rem;
    }

      .head-form_Btn a {
        min-width: 260px;
        background: #741914;
        border-radius: 3px;
        position: relative;
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin: 0 auto;
        padding:0.7rem 1rem;
        color: #ffffff;
        transition: 0.3s ease-in-out;
        font-weight: 700;
        text-decoration: none;
    }

    .head-form_Btn a:hover{
        background: #af322b;
    }

    .ps-header{
        display: none;
    }

}

/**** ハンバーガーメニュー （SPのみ）***********************/
/* 768px以下（スマホ向け） */
@media (max-width: 768px) {

/* ハンバーガーボタン（右上固定） */

.global-nav {
    z-index: 2000;   /* スライダーより大きい値に */
}

.menu-btn {
  position: fixed;   /* ← 右上に固定 */
  top: 10px;
  right: 10px;
  width: 60px;
  height: 60px;
  display: flex;
  background-color: #b70000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: 2001;     /* メニューより前に出す */
}
.menu-btn .bar {
  width: 28px;
  height: 3px;
  background: #ffffff;
  margin: 4px 0;
  transition: .3s;
}

/* チェックボックスは非表示 */
#menu-toggle { display:none; }

/* メニュー（最初は右に隠す） */
.menu {
  position: fixed;
  top: 0; right: 0;
  width: 220px;
  height: 100vh;
  background: #f1eeee;
  transform: translateX(100%);
  transition: .3s;
  padding: 80px 20px;
  z-index: 2000;
  opacity: 0.9;
}

/* ul のリセット */
.hmb_ul {
  list-style: none;
  padding: 0;
  margin-top: 5rem;
}

.hmb_ul li {
    margin-bottom: 3rem; /* ← 各メニューの間隔 */
    padding-bottom: 8px;
    margin-left: 5px;
    border-bottom: 1px solid #ad0e0e;
}


.menu a {
  text-decoration: none;
  color: #ad0e0e;
  font-size: 18px;
  font-weight: 800;
  display: block;
}

/* Services（親）をクリックできないようにする */
.menu .no-link {
  color: #ad0e0e;
  font-size: 18px;
  font-weight: 800;
  display: block;
  cursor: default; /* ← クリックできない */
}

/* 下層メニュー */
.submenu {
  list-style: none;
  padding-left: 1rem;
  margin-top: 1rem;
}

.submenu li {
  margin-bottom: 2rem;
  border: none;
  padding-bottom: 0;
}

.submenu a {
    font-size: 16px;
    letter-spacing: normal;
    font-weight: 600;
    color: #333;
}

/* 下層メニューだけに ■ をつける */
.submenu a::before {
  content: "■ ";
  color: #ad0e0e;
  font-size: 14px;
}


/* 開いたとき */
#menu-toggle:checked ~ .menu {
  transform: translateX(0);
}

}

/* ------------------------------
   PCでは非表示
------------------------------ */
@media (min-width: 768px) {
    .menu-btn, .menu,#menu-toggle{
        display: none;
    }
}

/*** ハンバーガーメニュー （SPのみ） END*****************************/


/* SPのみheader ********************/

.sp-header{
    position: fixed;
    top: 0;
    background: linear-gradient(to bottom, #ffffff, rgba(252, 252, 252, 0.5));
    width: 100%;
    padding: 13px 10px 10px;
    opacity: 0.5;
    z-index:-1;
}
.sp-header p{
    width: 60%;
    margin-left: 1.1rem;
}
.sp-header p img{
    width: 100%;
}


 /* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .sp-header{
        display: none;
    }
}

/* SPのみheader END ********************/

 /*gnav（ドロップダウンメニューつき）*********/

    .gnavi__bk{
        display: none;
    }

/* 768px以上(PC)  **************/
    @media (min-width: 768px) {   
        .gnavi__bk{
                display: block;
                background:#4a0607;
                /* ↓途中から固定する設定（スクロールしても付いてくる）begin*/
                position: -webkit-sticky;
                position: sticky;
                top: 0;
                /* ↑途中から固定する設定（スクロールしても付いてくる）end */
                z-index: 1000; /* 他の要素に隠れないように */
        }

        .gnavi__wrap {
            width: 1200px;
            margin: 0 auto ;
        }
        .gnavi__lists {
            display: flex;
        }
        .gnavi__list {
            width: 25%;
            height: 60px;
            background-color: #4a0607;
            position: relative;
            transition: all .3s;
        }
        .gnavi__list:hover {
            background-color: #920d0f;
        }


        /*境界線の設定*********/
        .gnavi__list:not(:first-child)::before {
            content: "";
            width: 1px;
            height: 100%;
            background-color: #fff;
            position: absolute;
            top: 0;
            left: 0;
            transition: all .3s;
        }
        /*境界線のhoverした時の色*********/
        .gnavi__list:hover::before {
            background-color: #920d0f;
        }

        .gnavi__list a {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            height: 100%;
            text-decoration: none;
            color:#fff;
            font-size: 18px;
            letter-spacing: 0.05em;
            font-weight: 600;
            transition: all .3s;
        }
        .gnavi__list:hover a {
            color: #fff;
        }

        /*ドロップダウンメニュー部分の設定*************************/
        .dropdown__lists {
            display: none;/*デフォルトでは非表示の状態にしておく*/
            width: 100%;
            position: absolute;
            top: 60px;
            left: 0;
        }
        .gnavi__list:hover .dropdown__lists {
            display: block;/*Gナビメニューにホバーしたら表示*/
        }
        .dropdown__list {
            background-color: #810d0f;
            height: 60px;
            transition: all .3s;
            position: relative;
        }
        .dropdown__list:not(:first-child)::before{
            content: "";
            width: 100%;
            height: 1px;
            background-color: #3492d1;
            position: absolute;
            top: 0;
            left: 0;
        }
        .dropdown__list:hover {
            background-color: #640103;
        }
        .dropdown__list a {
            display: flex;
            justify-content: center;
            align-items: center;
            color: #fff;
            text-decoration: none;
            position: relative;
        }
        .dropdown__list a::before {
            content: '';
            display: block;
            width: 6px;
            height: 6px;
            border-top: 2px solid #fff;
            border-left: 2px solid #fff;
            transform: rotate(135deg);
            position: absolute;
            right: 15px;
            top: calc(50% - 5px);
        }
    }
 /*gnav（ドロップダウンメニューつき）END*********/




 /* 各ぺージに共通 　END**************************************/





 /* topページ　コンテンツ********************************************/

.top-logo{
    width: 100%;
    padding: 13px 10px 10px;
}
.top-logo p{
    width: 60%;
    margin-left: 1.1rem;
}
.top-logo p img{
    width: 100%;
}

 /* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .top-logo{
        display: none;
    }
}


/* CSSスライダー（indexページ）****/

.top_sliderCSS_box{
    width: 100%;
    margin: 1rem  auto 2rem;
    position: relative;
}

.top_sliderCSS_ON_img{
    position: absolute;
    width: 84%;
    left: 50%;
    bottom:0;
    transform: translateX(-50%) translateY(-25%);
    z-index: 40;
}
.top_sliderCSS_ON_img img{
    width: 100%;
}
.top_sliderCSS {
    overflow: visible;/* レイアウトのためvisibleに変更**/
    position: relative;
    width: 100%;
    padding-top: 66%; /* 画像の縦横比に合わせる */
    margin: 0 auto ;
    z-index: 20;
}

.top_sl_item1 {
  opacity: 0;
  width: 100%;
  object-fit: cover;/* 画像どうフィットさせるか*/
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  -webkit-animation: top_anime 10s infinite ease-in-out;
  animation: top_anime 10s infinite ease-in-out;
}

/* 画像ごとのタイミング */
.top_sl_item1:nth-of-type(1) {
  animation-delay: 0s;
}
.top_sl_item1:nth-of-type(2) {
  animation-delay: 5s;
}


/* ふわっとフェード2枚切り替え */
@keyframes top_anime {
  0%   { opacity: 0; }
  10%  { opacity: 1; }  /* ゆっくりフェードイン */
  45%  { opacity: 1; }  /* 表示キープ */
  55%  { opacity: 0; }  /* ゆっくりフェードアウト */
  100% { opacity: 0; }
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .top_sliderCSS_box{
        width: 100%;
        position: relative;
        height: 750px;
        overflow: hidden;
        margin: 0 auto 5rem;
        background-color: #000; /* ← 黒帯用 */
    }

     .top_sliderCSS {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        z-index: 20;
        overflow: hidden;
    }

/* スライダー画像の設定****/
    .top_sl_item1 {
    opacity: 0;
    width: 100%;
    object-fit: cover;/* 画像どうフィットさせるか*/
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 750px;
    -webkit-animation: top_anime 10s infinite ease-in-out;
    animation: top_anime 10s infinite ease-in-out;
    }

    .top_sliderCSS_ON_img{
        position: absolute;
        width: 72%;
        max-width: 1186px;
        left: 50%;
        bottom: 0;
        transform: translateX(-50%) translateY(-15%);
        z-index: 40;
    }
    .top_sliderCSS_ON_img img{
        width: 100%;
    }

}

/*クエリはTOPと共有****/
/* CSSスライダー（indexページ）END**********/



/* TOPコンテンツ*****************************************/


/* グローバルな挑戦を徹底サポート**************/
.top-msg{
    width: 98%;
    margin: 0 auto 5rem;
    display: block;
    /*flex-direction: column-reverse;
    justify-content: space-between;*/
}

.top-msg > p{
    width: 58%;
    margin: 1rem auto 0;
}
.top-msg > p img{
    width: 100%;
}

.top-msg-inner div{
    border-bottom: 1px solid #a60303;
    border-left: 6px solid #a60303;
    padding: 0 0 0.5rem 0.5rem;
    margin: 0 0 1rem;
}

.top-msg-inner div h3{
    font-size: 1.3rem;
    text-indent: 0;
    letter-spacing: normal;
}
.top-msg-inner div p:nth-of-type(1){
    font-weight: 700;
    text-indent: 0;
    line-height: 1.3rem;
    font-size: 0.8rem;
    letter-spacing: normal;
}


/* 768px以上(PC)  **************/
    @media (min-width: 768px) {

    .top-msg{
        width: 100%;
        margin: 0 auto 14rem;
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
    }
    .top-msg > p{
        width: 31%;
        margin: 0;
    }

    .top-msg-inner{
        width: 60%;
    }
    .top-msg-inner p:nth-of-type(1){
        margin-bottom: 1rem;
    }
    
    .top-msg-inner div{
        margin: 0 0 1.5rem;
    }
    .top-msg-inner div h3{
        font-size: 1.7rem;
        text-indent: 0.5rem;
    }
    .top-msg-inner div p:nth-of-type(1){
        font-weight: 700;
        text-indent: 0.5rem;
        font-size: 1rem;
    }

}




/* 夢を追いかける人 **************/

.infiBox{
    /* background-color: #85312b;*/
    background-image: linear-gradient(180deg, #a66e6a, #85312b 20% 80%, #c7abaa);
    padding: 11rem 1rem;
    margin: 0 0 11rem;
}

.infiBox > div{
    color: #fff;
    max-width: 1500px;
    margin: 0 auto;
    position: relative;
}

.infiBox > div .tubu01{
    width: 61%;
    position: absolute;
    top: -229px;
    right: 0;
    z-index:20;
}

.infiBox > div .tubu02{
    width: 61%;
    position: absolute;
    bottom: -256px;
    left:0;
    z-index:20;
}

.infiBox > div .tubu01 img,
.infiBox > div .tubu02 img{
    width: 100%;
}

.infiBox > div .txt01{
    margin: 0 0 1rem 1rem;
}

.infiBox > div .txt02{
    float: right;
    margin: 1rem 1rem 0 auto;
}

/* 日本語*****/
.infiBox > div .txt01 p:nth-of-type(1),
.infiBox > div .txt02 p:nth-of-type(1){ 
    font-size: 1.5rem;
}

/* 英語*****/
.infiBox > div .txt01 p:nth-of-type(2),
.infiBox > div .txt02 p:nth-of-type(2){ 
    font-size: 0.8rem;
}


/* 768px以上(PC)  **************/
    @media (min-width: 768px) {
.infiBox{
    padding: 11rem 1rem;
    margin: 0 0 18rem;
}

.infiBox > div{
    max-width: 1500px;
    margin: 0 auto;
    position: relative;
}

.infiBox > div .tubu01{
    width: 35%;
    position: absolute;
    top: -316px;
    right: -124px;
    z-index:20;
}

.infiBox > div .tubu02{
    width: 35%;
    position: absolute;
    bottom: -316px;
    left: -124px;
    z-index:20;
}

.infiBox > div .tubu01 img,
.infiBox > div .tubu02 img{
    width: 100%;
}

.infiBox > div .txt01{
    margin: 0 0 1rem 1rem;
}

.infiBox > div .txt02{
    float: right;
    margin: 1rem 1rem 0 auto;
}

/* 日本語*****/
.infiBox > div .txt01 p:nth-of-type(1),
.infiBox > div .txt02 p:nth-of-type(1){ 
    font-size: 3rem;
}

/* 英語*****/
.infiBox > div .txt01 p:nth-of-type(2),
.infiBox > div .txt02 p:nth-of-type(2){ 
    font-size: 2rem;
}
        
    }


/* 右からの無限ループ(PC・SP共通)*************/
	@keyframes infinity-scroll-left {
    from {
    transform: translateX(0);
    }
    to {
    transform: translateX(-100%);
    }
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  flex: 0 0 auto; /* 画像サイズに合わせて幅を自動調整 */
}
.scroll-infinity__item > img {
  height: 400px;     /* 高さを固定 */
  width: auto;       /* 横幅は比率を保つ */
  object-fit: contain; /* 画像を切らずに全体表示（切りたいなら cover に変更） */
  display: block;    /* 余計な余白をなくす */
}

/* 右からの無限ループ END*************/




/* メッセージ*************/

.mess-box{
    width: 100%;
    position: relative;
    margin: 0 auto 12rem;
    background-image: url(../img/cp-top-img02.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size:cover;
    text-align: center;
    max-width: 1500px;
    opacity: 0.9;
}

.mess-box div{
    width: 93%;
    margin: 0 auto;
    padding: 9rem 0;
}

/* 日本語*************/
.mess-box div p:nth-of-type(1){
    font-size: 1.5rem;
}

/* 英語*************/
.mess-box div p:nth-of-type(2){
    font-size: 0.8rem;
}

.katati-img01{
    width: 40%;
    position: absolute;
    right: 0;
    left: auto;
    top:-88px;
    bottom: auto;
}
.katati-img02{
    width: 34%;
    position: absolute;
    right: auto;
    left: 0;
    top: -49px;
    bottom: auto;
}

.katati-img03{
    width: 34%;
    position: absolute;
    right: 0;
    left: auto;
    top: auto;
    bottom: 10px;
}
.katati-img04{
    width: 30%;
    position: absolute;
    right: auto;
    left: 0;
    top: auto;
    bottom: 10px;
}

.mess-box img{
    width: 100%;
}


/* 768px以上(PC)  **************/
    @media (min-width: 768px) {
        .mess-box{
            width: 70%;
            max-width: 1500px;
            margin: 0 auto 11vw;
        }

        .mess-box div{
            width: 100%;
            margin: 0 auto;
            padding: 23rem 0;
        }

    /* 日本語*************/
    .mess-box div p:nth-of-type(1){
        font-size: 3rem;
    }

    /* 英語*************/
    .mess-box div p:nth-of-type(2){
        font-size: 2rem;
    }

    .katati-img01{
        width: 30%;
        right: 0;
        left: auto;
        top:-140px;
        bottom: auto;
    }
    .katati-img02{
        width: 30%;
        right: auto;
        left: 0;
        top: -49px;
        bottom: auto;
    }

    .katati-img03{
        width: 30%;
        right: 0;
        left: auto;
        top: auto;
        bottom: 10px;
    }
    .katati-img04{
        width: 30%;
        right: auto;
        left: 0;
        top: auto;
        bottom: 10px;
    }

    }


/* TOPページのAboutUs*************/
        .top-AboutUs{
            margin-bottom: 18vw;
        }

        .top-AboutUs h2{
            font-size: 2.3rem;
            margin: -3rem 0 1rem;
            line-height: 3rem;
            border-bottom: 1px solid #a60303;
            padding: 0 0 0.5rem 0.5rem;
        }

        .top-AboutUs h3{
            font-size: 1.5rem;
            line-height: 1.7rem;
            margin-bottom: 0.5rem;
        }
        .aboutUs_midasi{
            width: 98%;
        }
        .aboutUs_midasi img{
            width: 100%;
        }

        .top-AboutUs p:nth-of-type(2){
            font-size: 1.2rem;
            margin-bottom: 1rem;
        }
        .top-AboutUs p:nth-of-type(3){
            font-size: 1rem;
            line-height: 1.4;
            margin-bottom: 1rem;
        }

/* 768px以上(PC)  **************/
    @media (min-width: 768px) {

        .top-AboutUs{
            margin-bottom: 18vw;
        }

        .top-AboutUs h2{
            font-size: 3rem;
            margin: -3rem 0 2rem;
            border-bottom: none;
            padding:0;
        }

        .top-AboutUs h3{
            font-size: 1.5rem;
            margin-bottom: 0;
            color: #920d0f;
        }
        .aboutUs_midasi{
            width: 98%;
        }
        .aboutUs_midasi img{
            width: 100%;
        }

        .top-AboutUs p:nth-of-type(2){
            font-size: 1.3rem;
            margin-bottom: 1.5rem;
            color: #920d0f;
        }
        .top-AboutUs p:nth-of-type(3){
            font-size: 1.3rem;
            line-height: 1.5;
            margin-bottom: 1.5rem;
        }
    }



/* サービス紹介*************/
    .ppc-wrap{
        background-image: url(../img/hikouki_bk.png);
        background-repeat: no-repeat;
        background-position: center center;
        background-size:cover;
        padding: 9em 2rem 28rem;
        color:#fff;
    }
    .ppc-wrap > div{
        max-width: 1330px;
        margin: 0 auto;
    }
    .ppc-midasi{
        position: relative;
        text-align: right;
        max-width: 1400px;
    }
    .ppc-midasi h2{
        position: absolute;
        top: 3rem;
        right: 0;
        font-size:2rem;
    }
    .ppc-midasi p{
     width: 95%;
    }
    .ppc-midasi p img{
     width: 100%;
    }
    .ppc_Box{
        display:block;
        width: 98%;
        margin: 7rem auto 16vw;
    }
    .ppc_Box  li{
        width: 98%;
        border: #e4e4e4 1px solid;
        margin-bottom: 7.5rem;
    }
    .ppc_img{
        width: 90%;
        margin: 1.5vw auto 0;
    }
    .ppc_Box p img{
        width: 100%;
    }
    .ppc_inner{
        padding: 0 14px 6vw 14px;
        text-align: left;
    }
    .ppc_inner div:nth-of-type(1){
        padding: 1.8vw 14px 1.3vw 14px;
        text-align: center;
    }
    .ppc_inner div:nth-of-type(2){
        padding: 1vw 2vw 2vw;
    }


    /* もっとみるボタン***************/
        .mo-btn {
            width: 59%;
            margin: 33px auto 10px;
            padding: 0.3rem 0;
            background: #f3f3f3;
            text-align: center;
        }

        .mo-btn a{
            display: block;
            text-decoration: none;
            color: #000000; 
        }

/* 768px以上(PC)  **************/
    @media (min-width: 768px) {
        .index_h2{
            font-size: 34px;
            margin-top: 124px;
        }
        .ppc-wrap{
            background-image: url(../img/hikouki_bk.png);
            background-repeat: no-repeat;
            background-position: center center;
            background-size:cover;
            padding: 16rem 2rem 38rem;
            color:#fff;  
        }
        .ppc-wrap > div{
            max-width: 1330px;
            margin: 0 auto;
        }
        .ppc-midasi{
            position: relative;
            text-align: right;
            max-width: 1400px;
        }
        .ppc-midasi h2{
            position: absolute;
            top: 9vw;
            right: 7rem;
            font-size: 4rem;
            line-height: 4.5rem;
        }
        .ppc-midasi p{
        }
        .ppc_Box{
            display: flex;
            justify-content: space-between;
            width: 89%;
            margin: 6vw auto 16vw;
        }
        .ppc_Box  li{
            width: 48%;
            border: #e4e4e4 1px solid;
        }
        .ppc_img{
            width: 90%;
            margin: 1.5vw auto 0;
        }
        .ppc_Box p img{
            width: 100%;
        }
        .ppc_inner{
            padding: 0 14px 2vw 14px;
            text-align: left;
        }
        .ppc_inner div:nth-of-type(1){
            padding: 1.8vw 14px 1.3vw 14px;
            text-align: center;
        }
        .ppc_inner div:nth-of-type(2){
            padding: 1vw 2vw 2vw;
        }

        /* もっとみるボタン***************/
        .mo-btn {
            width: 32%;
            padding: 0.5rem 0;
            margin: 33px auto 10px;
            background: #f3f3f3;
            text-align: center;
        }
        .mo-btn a{
            display: block;
            text-decoration: none;
            color: #000000; 
        }

    }


/* TOPページ下部　お問い合わせ***************/
#topForm{
    background-color: #edebed;
    padding-top: 1rem;
    padding-bottom: 3rem;
}
.fmBox{
    width: 100%;
    margin-top: 3rem;
}
.fmBox_bg{
    position: relative;
    width: 88%;
    max-width: 1245px;
    margin: 0 auto;
    z-index: 10;
    padding: 3rem 0;
}
.fmBox_bg img{
        display: block;
        width:100% ;
}

.fmBox_txt{
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 20;
    text-align: center;
    padding: 0;
}
.fmBox_txt > p{
    padding-top:1rem;
    color: #fff;
    font-weight: 700;
}

/* PC（768px以上） */
@media (min-width: 768px) {

    #topForm{
        background-color: #edebed;
        padding: 14rem 0;
    }
    .fmBox{
        width: 100%;
        margin-top:0;
    }
    .fmBox_bg{
        position: relative;
        width: 88%;
        max-width: 1245px;
        margin: 0 auto;
        z-index: 10;
        padding: 0;
    }
    .fmBox_bg img{
        display: block;
        width:100% ;
    }

    .sp-br{
        display: none;
    }

    .fmBox_txt{
        position: absolute;
        width:42%;
        min-width: 514px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 20;
        text-align: center;
        background-color: rgba(255, 255, 255, 0.6);
        padding: 4rem 0 3rem;
        font-size: 1.2rem;
    }
    .fmBox_txt > p{
        padding-top:1rem;
        color: #000;
        font-weight: 700;
    }


}


/* お問い合わせボタン**********/
.button019 a {
    background: #cf0b00;
    border-radius: 1px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 347px;
    padding: 3px 9px;
    color: #ffffff;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    text-decoration: none;
}
.button019 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button019 a:hover {
  background: #d1442b;
  color: #fff;
}
.button019 a:hover:after {
  right: 1.4rem;
}

/* PC（768px以上） */
@media (min-width: 768px) {

    .button019 a {
        padding: 21px 40px;
    }

}




/* aboutページ***************/
.aboutPage{
    margin: 3rem auto 5rem;
}

.aboutTB table {
    display: block;
    width: 83%;
    max-width: 395px;
    margin: 4px auto 38px;
    padding: 1rem 0;
    font-size: 1rem;
    color: #b00404;
}
.aboutTB table th{
    padding: 0.5rem;
    width: 36%;
    border-bottom: solid 1px #b00404
}
.aboutTB table td{
    padding: 1rem;
    border-bottom: solid 1px #b00404
  }


h2.overview {
    font-size: 2rem;
    width: 100%;
    max-width: 1300px;
    margin: -57px auto 0;
    text-align: left;
    color: #b00404;
}
.midashiBk_OOV{
    width: 92%;
  text-align: right;
}
.midashiBk_OOV img{
  width: auto;        /* ← これで自然なサイズに戻す */
  max-width: 100%;    /* 親要素をはみ出さないように保険 */
}
.map{
    margin-bottom: 5rem;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .aboutPage{
        margin: 7rem auto 20rem;
    }
    h2.overview {
        font-size: 3rem;
        width: 100%;
        max-width: 1300px;
        margin: 0 auto 4rem;
    }
    .aboutTB table {
        width:77%;
        max-width: 1050px;
        margin:0 auto 8rem;
        padding:0;
        font-size: 1.3rem;
    }
    .aboutTB table th{
    width: 18%;
    }
    .map{
        margin-bottom: 20rem;
    }


}


/* サービス：Stady Abroadページ***********************************************/

/* CSSスライダー（Stady Abroadページ）****/

.ab_sliderCSS_box{
    width: 89%;
    max-width: 1500px;
    margin: 0 auto 5rem;
    position: relative;
}

.ab_sliderCSS_ON_img{
    width: 84%;
    display: block;
    position: absolute;
    bottom:-13px;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 40;
}
.ab_sliderCSS_ON_img img{
    width: 100%;
}
.ab_sliderCSS {
    overflow: visible;/* レイアウトのためvisibleに変更**/
    position: relative;
    width: 100%;
    padding-top: 66%; /* 画像の縦横比に合わせる */
    margin: 0 auto ;
    z-index: 20;
}

/* imgのみ */
.ab_sl_item1 {
    opacity: 0;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: ab_anime 15s infinite;
    animation: ab_anime 25s infinite;
}

.ab_sl_item1:nth-of-type(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.ab_sl_item1:nth-of-type(2) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.ab_sl_item1:nth-of-type(3) {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}

.ab_sl_item1:nth-of-type(4) {
  -webkit-animation-delay: 15s;
  animation-delay: 15s;
}

.ab_sl_item1:nth-of-type(5) {
  -webkit-animation-delay: 20s;
  animation-delay: 20s;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .ab_sliderCSS_box{
        width: 89%;
        height: 750px;
        overflow: hidden;
        max-width: 1500px;
        margin: 0 auto 5rem;
        position: relative;
    }

    .ab_sliderCSS_ON_img{
        width: 61%;
        display: block;
        position: absolute;
        top: auto;   /* ← これでPC時にtopを無効化 */
        bottom: 10px;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 40;
    }
    .ab_sliderCSS_ON_img img{
        width: 100%;
    }
    .ab_sliderCSS {
        height: 804px;
        overflow: visible;/* レイアウトのためvisibleに変更**/
        position: relative;
        width: 100%;
        margin: 0 auto ;
        z-index: 20;
    }

}

/* ふわっとアニメーション */
@keyframes ab_anime {
  0% { opacity: 0; }
  4% { opacity: 1; }
  20% { opacity: 1; }
  24% { opacity: 0; }
  100% { opacity: 0; }
}

@-webkit-keyframes ab_anime {
  0% { opacity: 0; }
  4% { opacity: 1; }
  20% { opacity: 1; }
  24% { opacity: 0; }
  100% { opacity: 0; }
}



/*クエリはTOPと共有****/
/* CSSスライダー（Stady Abroadページ）END**********/


.abraod-msg{
    width: 89%;
    margin: 5rem auto 5rem;
    text-align: center;
}

.abraod-msg p:nth-of-type(1){
    font-weight:700 ;
    margin: 0 0 2em;
    line-height: 0.8rem;
    font-size: 0.7rem;
}

.abraod-msg p:nth-of-type(2){
    text-align: left;
    margin: 0 auto;
    font-size: 0.9rem;
}



.abraod-msg h1{
    font-size: 1.2rem;
    line-height: 1.5rem;
}

/* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .abraod-msg{
        width: 60%;
        margin: 0 auto 11rem;
        text-align: center;
    }

    .abraod-msg p:nth-of-type(1){
        font-weight:700 ;
        margin: 0 0 2em;
        font-size: 1rem;
    }

    .abraod-msg p:nth-of-type(2){
        text-align:center;
    font-size: 1rem;
    }

    .abraod-msg h1{
    font-size: 1.4rem;
    line-height: 2.8rem;
}


}




/* 不安の例**************/
.abraod-huan{
    background-color: #efeae6;
    padding: 4rem 0;
    margin: 0 auto 5rem;
    position: relative;
}

.abraod-huan h2{
    width: 64%;
    text-align: center;
    position: absolute;
    left: 50%;
    top: -20px;
    transform: translateX(-50%);
    font-size: 1.2rem;
    line-height: 1.5rem;
    color: #670505;
}

.abraod-huan ul{
        width: 97%; 
        margin: 0 auto;
        display: block;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
}

.abraod-huan ul li{
    width: 44%;
    font-size: 0.7rem;
    letter-spacing: inherit;
    line-height: 1.3;
    font-weight: 600;
    text-align: center;
    float: left;
    margin: 0.5rem auto 2rem;
}

.abraod-huan ul li p{
    margin: 0 auto;
}

.abraod-huan ul li:nth-of-type(1) p:first-of-type{
    width: 88%;
    margin-bottom: 0.6rem;
}
.abraod-huan ul li:nth-of-type(2) p:first-of-type{
    width: 87%;
    margin-bottom: 1rem;
}
.abraod-huan ul li:nth-of-type(3) p:first-of-type{
    width: 69%;
}
.abraod-huan ul li:nth-of-type(4) p:first-of-type{
    width: 74%;
}
.abraod-huan ul li p img{
    width: 100%;
}



/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .abraod-huan{
        background-color: #efeae6;
        padding: 4rem 0;
        margin: 0 auto 5rem;
    }
    .abraod-huan h2{
        font-size: 1.7rem;

    }

    .abraod-huan ul{
            width: 69%; 
            max-width: 1160px;
            margin: 0 auto;
            display: flex;
            justify-content: space-around;
    }

    .abraod-huan ul li{
        width: 22%;
        font-size: 1.3rem;
        letter-spacing: inherit;
        line-height: 1.3;
        font-weight: 600;
        text-align: center;
        margin: 0;
    }

    .abraod-huan ul li p{
        margin: 0 auto;
    }

    .abraod-huan ul li:nth-of-type(1) p:first-of-type{
        width: 88%;
        margin-bottom: 0.6rem;
    }
    .abraod-huan ul li:nth-of-type(2) p:first-of-type{
        width: 87%;
        margin-bottom: 1rem;
    }
    .abraod-huan ul li:nth-of-type(3) p:first-of-type{
        width: 69%;
    }
    .abraod-huan ul li:nth-of-type(4) p:first-of-type{
        width: 74%;
    }
    .abraod-huan ul li p img{
        width: 100%;
    }
}




/* 英語を勉強する環境に最適**************/

.ab-sup-midasi{
    width: 92%;
    margin: 0 auto 2rem;
    text-align: center;
    color:#a60303;
    
}
.ab-sup-midasi h2{    
    font-size: 1.5rem;
    line-height: 1.8rem;
}
.ab-sup-midasi p:nth-of-type(1){
    font-weight:500 ;
    letter-spacing: normal;
    line-height: 1.3rem;
    font-size: 0.7rem;
}

.ab-sup01{
    width: 85%;
    margin: 0 auto 5rem;
    display: flex;
    flex-direction: column-reverse;
}

.ab-sup01-inner div{
    border-left: none;
    margin: 0.6rem 0 0.6rem;

}
.ab-sup01-inner div h3{
    font-size: 1.3rem;
    text-indent: 0;
}
.ab-sup01-inner div p:nth-of-type(1){
    font-weight: 700;
    text-indent: 0;
    line-height: 1.3rem;
    font-size: 0.8rem;
    letter-spacing: normal;
}
/* 留学体験はあなたの武器になる**************/

.ab-sup02{
    width: 85%;
    margin: 0 auto 5rem;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
}

.ab-sup01 > p,
.ab-sup02 > p{
    width: 100%;
}
.ab-sup01 > p img,
.ab-sup02 > p img{
    width: 100%;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

.keisen{
  display: flex;
  justify-content: center;
  align-items: flex-end;
  line-height: 1;
  color: #a60303;
  margin: 0 0 7rem;
}

.keisen::before,.keisen::after {
    width: 2px;
    height: 53px;
    content: "";
    background-color: #a60303;
}

.keisen::before {
  margin-right: 0.5em;
  transform: rotate(-30deg);
}

.keisen::after {
  margin-left: 0.5em;
  transform: rotate(30deg);
}


.ab-sup-midasi{
    width: 57%;
    margin: 0;
    text-align: center;
    color:#a60303;
}
.ab-sup-midasi h2{    
    line-height:4rem;
    font-size: 1.8rem;
}

.ab-sup-midasi p:nth-of-type(1){
    font-weight:700 ;
    letter-spacing: 0.1rem;
    line-height: 1.6rem;
}
.ab-sup01{
    width: 85%;
    margin: 0 auto 14rem;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}
.ab-sup01-inner div{
    border-left: 20px solid #a60303;
    margin: 0 0 1.5rem;
    width: 75%;
}
.ab-sup01-inner div h3{
    font-size: 1.7rem;
    text-indent: 1rem;
}
.ab-sup01-inner div p:nth-of-type(1){
    font-weight: 700;
    text-indent: 1rem;
    font-size: 1rem;
}

.ab-sup02{
    width: 85%;
    margin: 0 auto 14rem;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.ab-sup01 > p{
    width: 38%;
}

.ab-sup02 > p{
    width: 45%;
    margin-right: 1rem;
}
.ab-sup01 > p img,
.ab-sup02 > p img{
    width: 100%;
}



}

/* 目的から選ぶ*******************/
.pps_h2{
    font-size: 1.6rem;
    text-align: center;
    margin: 0 auto 1.6rem;
}
.expl-txt{
    margin: 0 auto 2rem;
    width: 95%;
}

.pps_Box2{
    width: 96%;
    margin: 0 auto 5rem;
    display: block;
}
.pps_Box2 > div{
    width: 100%;
    border: solid 1px #d3d3d3;
    padding:0;
    margin: 0 0 1.5rem;
}

.pps_Box2_inner{
    width: 100%;
    display: flex;
    justify-content: space-between;
    text-align: center;
    align-items: center;
}

.pps_Box2_inner p{
    width: 50%;
    margin: 0 auto;
}

.pps_Box2_inner p img{
    width: 100%;
    height: auto;
    display: block;
}

.pps_Box2_inner h2{
    width: 50%;
    font-size: 1.2rem;
}

.pps_txt{
    font-size: 0.8rem;
    padding: 0.3rem;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

        .pps_h2{
        font-size: 2rem;
        margin: 0 0 4rem;
        }
        .expl-txt{
        margin: 0 auto 2rem;
        width: 90%;
    }

    .pps_Box2{
        width: 96%;
        display: flex;
        justify-content: space-between;
        margin: 0 auto 5rem;
    }
    .pps_Box2 > div{
        width: 33%;
        border: solid 1px #d3d3d3;
        padding: 1rem 1.5rem;
    }

    .pps_Box2_inner{
        width: 100%;
        display: block;
        text-align: center;
        align-items: center;
    }

    .pps_Box2_inner p{
        width: 100%;
        margin: 0 auto;
    }

    .pps_Box2_inner p img{
        width: 100%;
    }

    .pps_Box2_inner h2{
        width: 100%;
        font-size: 1.5rem;
        margin: 0.4rem 0;
    }

    .pps_txt{
        font-size: 1rem;
        text-align: center;
        padding:0;
    }

}

/* 起業・経営戦略コンサルティング ページ***************************/


/* CSSスライダー（起業・経営戦略コンサルティングページ）****/

.biz_wap{
    position: relative;
    margin: 0 auto 32VW;
}


.biz_sliderCSS_box{
    width: 89%;
    margin: 0 auto;
    position: relative;
}

.biz_over{
    position: absolute;
    width: 60%;
    max-width:915px;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%) translateY(71%);
    z-index: 40;
}

.biz_over img{
    width: 100%;
}

.biz_sliderCSS {
    overflow: visible;/* レイアウトのためvisibleに変更**/
    position: relative;
    width: 100%;
    padding-top: 66%; /* 画像の縦横比に合わせる */
    margin: 0 auto ;
    z-index: 20;
}

/* imgのみ */
.biz_sl_item1 {
  opacity: 0;
  width: 100%;
  object-fit: cover;
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  -webkit-animation: biz_anime 15s infinite;
  animation: biz_anime 25s infinite;
}

.biz_sl_item1:nth-of-type(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.biz_sl_item1:nth-of-type(2) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.biz_sl_item1:nth-of-type(3) {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}

.biz_sl_item1:nth-of-type(4) {
  -webkit-animation-delay: 15s;
  animation-delay: 15s;
}

.biz_sl_item1:nth-of-type(5) {
  -webkit-animation-delay: 20s;
  animation-delay: 20s;
}

/* ふわっとアニメーション */
@keyframes biz_anime {
  0% { opacity: 0; }
  4% { opacity: 1; }
  20% { opacity: 1; }
  24% { opacity: 0; }
  100% { opacity: 0; }
}

@-webkit-keyframes biz_anime {
  0% { opacity: 0; }
  4% { opacity: 1; }
  20% { opacity: 1; }
  24% { opacity: 0; }
  100% { opacity: 0; }
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .biz_wap{
        margin: 0 auto 25VW;
    }


    .biz_sliderCSS_box{
        position: relative;
        width: 89%;
        height: 750px;
        overflow: hidden;
        max-width: 1500px;
    }

/* 
    .biz_sliderCSS_ON_img{
        width: 61%;
        display: block;
        position: absolute;
        top: auto;   
        bottom: 11%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 40;
    }
    .biz_sliderCSS_ON_img img{
        width: 100%;
    }
 */


    .biz_sliderCSS {
        height: 804px;
        overflow: visible;/* レイアウトのためvisibleに変更**/
        position: relative;
        width: 100%;
        margin: 0 auto ;
        z-index: 20;
    }

}

/*クエリはTOPと共有****/
/* CSSスライダー（起業・経営戦略コンサルティングページ）END**********/


.biz-onestop{
    width: 94%;
    margin: 0 auto 5rem;
}
.biz-onestop img{
    width: 100%;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .biz-onestop{
        margin: 0 auto 13rem;
    }
}

/* サービス内容**********/
.biz-color{
    background-color: #4a0607;
    color: #fff;
    padding-bottom: 15rem;
    padding-top: 5rem;
}

h2.biz-sup_h2 {
    margin:0 auto 3rem;
    text-align: center;
}


.biz-sup{
    width: 85%;
    margin: 0 auto 7rem;
    display: block;
}

.biz-sup > p{
    width: 49%;
    margin: 0 auto;
}
.biz-sup > p img{
    width: 100%;
}


.biz-sup-inner div{
    text-align: center;
    border-left: none;
    margin: 0.6rem 0 0.6rem;
    border-bottom: solid 1px #fff;
    border-top: solid 1px #fff;
    padding-bottom: 0.4rem;
}

.biz-sup-inner > p{
    font-size: 0.8rem;
}

.biz-sup-inner div h3{
    font-size: 1.3rem;
    text-indent: 0;
}
.biz-sup-inner div p:nth-of-type(1){
    font-weight: 700;
    text-indent: 0;
    line-height: 1.3rem;
    font-size: 0.8rem;
    letter-spacing: 0.1rem;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .biz-color{
    padding-top: 0;
    }

    h2.biz-sup_h2 {
        font-size: 2.5rem;
    margin:0 auto 7rem;
    text-align: center;
}

    .biz-sup{
        width: 100%;
        margin: 0 auto 14rem;
        display: flex;
        justify-content: space-between;
        flex-direction: row;
    }
    .biz-sup > p{
        width: 43%;
        margin: auto 3rem auto auto;
    }
    .biz-sup > p img{
        width: 100%;
    }
    .biz-sup-inner {
    }

    .biz-sup-inner div{
        text-align: left;
        border-left: 20px solid #a60303;
        margin: 0 0 1.5rem;
        border-bottom:none;
        border-top:none;
        padding-bottom:0;
    }
    .biz-sup-inner > p{
    font-size: 1rem;
        line-height: 1.5rem;
    }
    .biz-sup-inner div h3{
        font-size: 1.7rem;
        text-indent: 1rem;
    }
    .biz-sup-inner div p:nth-of-type(1){
        font-weight: 700;
        text-indent: 1rem;
        font-size: 1rem;
    }

}

/* プラン紹介**************/

.biz-plan{
    text-align: center;
    margin-bottom: 13rem;
}

.biz-plan h2{
    margin-bottom: 3rem;
}

.biz-plan ul{
    display: block;
}

.biz-plan ul li{
    width: 90%;
    margin: 0 auto  2.5rem;
    padding: 1rem 1.3rem;
    border: solid 1px #fff;
}
.biz-plan ul li p{
    text-align: center;
    font-size: 0.8rem;
}

/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .biz-plan{
        text-align: center;
    }

    .biz-plan h2{
        font-size: 2.5rem;
        margin: 0 auto 7rem;
        text-align: center;
    }

    .biz-plan ul{
        display: flex;
        justify-content: space-around;

    }

    .biz-plan ul li{
        width:32%;
        padding: 3rem 1.3rem;
        border: solid 1px #fff;
    }
    .biz-plan ul li p{
        text-align: left;
        font-size: 1rem;
    }


}

/* 私たちについて**********/
.biz-us {
    margin-bottom: 7rem;
}
.biz-us h2{
    font-size: 1.5rem;
    margin: 0 auto 3rem;
    text-align: center;
}
.left-img{
  float: left;
  margin: 0 15px 10px 0; /* 右や下に余白をつけると読みやすい */
  width: 51%;
  max-width: 400px;      /* 必要ならサイズ調整 */
  height: auto;
}

.biz-us > div p:nth-of-type(1){
    font-size: 0.8rem;
}

.biz-us .pc-english{
   display: none;
}

/* 英語部分は最初は非表示 */
.english {
    display: none;
    margin-top: 1rem;
    font-size: 0.8rem;
}

/* ボタンの見た目 */
.toggle-btn {
    display: block;
    margin-left: auto; /* 左の余白を自動にして右寄せ */
    margin-top: 10px;
    padding: 6px 12px;
    font-size: 14px;
    background: #f0f0f0;
    border: 1px solid #333;
    border-radius: 2px;
    cursor: pointer;
    opacity: 0.8;
}


/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .biz-us h2{
        font-size: 2.5rem;
        margin: 0 auto 7rem;
    }


    .biz-us {
        margin-bottom: 13rem;
    }
    .left-img{
    width: 33%;
    }

    .biz-us > div p:nth-of-type(1){
    font-size: 1rem;
    }

    .biz-us .pc-english{
     display: block;
    }
    .toggle-btn {
     display: none;
    }


}


/* お客様の声**********/
    .biz-h2{
    text-align: center;
    margin-bottom: 3rem;
}

  .biz-voice {
    display: flex;                /* 横並びに */
    overflow-x: auto;             /* 横スクロール可能 */
    padding-bottom: 1rem;
    -webkit-overflow-scrolling: touch; /* スムーズスクロール */
    gap: 1rem;                    /* 子要素の間隔 */
  }

  .biz-voice > div {
    flex: 0 0 92%;                /* 幅95%固定 */
    box-sizing: border-box;
    border: solid 1px #fff;       /* カード風に */
    padding: 1rem;
    border-radius: 4px;           /* 角丸 */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  }

  .biz-voice > div img {
    width: 100%;                  /* 画像をカード幅に合わせる */
    height: auto;
    border-radius: 4px;
    margin-bottom: 0.5rem;
  }

  .biz-voice h2 {
    text-align: center;
    margin-bottom: 1rem;
  }

  .biz-voice h3 {
    margin: 0.5rem 0;
    font-size: 1.1rem;
  }

  .biz-voice p {
    font-size: 0.9rem;
    line-height: 1.4;
  }




/* 768px以上(PC)  **************/
@media (min-width: 768px) {

    .biz-h2{
        font-size: 2.5rem;
        margin: 0 auto 7rem;
        text-align: center;
    }


  .biz-voice {
    display: flex;                /* 横並びに */
    overflow-x: auto;             /* 横スクロール可能 */
    padding-bottom: 1rem;
    -webkit-overflow-scrolling: touch; /* スムーズスクロール */
    gap: 1rem;                    /* 子要素の間隔 */
  }

  .biz-voice > div {
    flex: 0 0 46%;                /* 幅95%固定 */
    box-sizing: border-box;
    border: solid 1px #fff;       /* カード風に */
    padding: 1rem;
    border-radius: 4px;           /* 角丸 */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  }

  .biz-voice > div img {
    width: 100%;                  /* 画像をカード幅に合わせる */
    height: auto;
    border-radius: 4px;
    margin-bottom: 0.5rem;
  }

  .biz-voice h2 {
    text-align: center;
    margin-bottom: 1rem;
  }

  .biz-voice h3 {
    margin: 0.5rem 0;
    font-size: 1.1rem;
  }

  .biz-voice p {
    font-size: 0.9rem;
    line-height: 1.4;
  }

}



/* お問合せページ***********************************************/

.form-box{
    width: 100%;
    margin: auto 0;
}
/* 768px以上(PC)  **************/
@media (min-width: 768px) {
.form-box{
    width: 100%;
    margin:5rem auto 0;
}
}

/* footer ***********************************************/
    .footer {
        background-color: #370102;
        color: #fff;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 15px;
        letter-spacing: 0.2em;
        padding:6rem 0 2rem;
    }

    .f_content{
        margin-bottom: 5rem;
    }
    .footer-le{
        width: 90%;
        margin: 0 auto;
        letter-spacing: 0.1em;
        line-height: 1.6;
        }

    .footer-le ul{
        width: 80%;
        max-width: 270px;
        margin: 0 auto;
    }
    .footer-le p{  /* ロゴ**/
            width: 34%;
            margin: 0 auto 4rem auto;
            max-width: 138px;
            min-width: 50px;
            padding: 1.3rem;
            border-radius: 9px;
            background: #fff7ec;
     }
    
    .footer-le img,
    .footer-right img{
        width: 100%;
        }
    .footer-right{
        display: none;
    }
    .copyright{
        width: 92%;
        font-size: 0.7em;
        margin: 0 auto;
        text-align: center;
    }

/* 768px以上(PC)  **************/
@media (min-width: 768px) {
    .footer {
        padding: 12rem 0 5rem;
    }
    .f_content{
        display: flex;
        justify-content: space-around;
        margin-bottom: 60px;
        width: 90%;
        max-width: 1600px;
        margin: 0 auto 8rem;
    }
    .footer-le{
            width: 38%;
            margin: 0;
        }
    .footer-le ul{
        width: 90%;        
        max-width: none;
        min-width: 456px;
        margin: 0 auto;
    }    
    .footer-le p{  /* ロゴ**/
            width: 34%;
            margin: 0 auto 4rem auto;
            max-width: 236px;
            min-width: 194px;
            padding: 1.3rem;
            border-radius: 9px;
            background: #fff7ec;
        }
    .ft-ad{
        width: 90%;
        min-width: 400px;
        line-height:1.7rem;
    }
    .footer-right{
        display: block;
        width: 40%;
    }
    .footer-right > p{
        width: 100%;
        max-width: 528px;
        margin: 4rem 0 0 0;
    }
    .ft-menu{
        font-size: 0.8rem;
        width: 64%;
        margin-top: 10rem;
        list-style-type: none;
        padding-left: 0;
        min-width: 174px;
        margin-left: 55%; 
    }

    .ft-menu li::before{
    content: "";
    display: inline-block;
    background-image: url(../img/yazi.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 8px;
    height: 14px;
    margin-right: 4px;
    vertical-align: middle; /* テキストと垂直位置を揃える */
    }

    .ft-menu li a{
        display: inline-block;
        padding-bottom: 14px;
        text-decoration: none;
        color: #fff;;
    }

    .copyright{
        font-size: 1em;
        margin: 0 auto;
    }

}







