@charset "utf-8";

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


/* CSS Document */

/* -----------------------------
スマホ用レイアウト(768px以下スクリーン）
-----------------------------*/ 

/* body全体の初期スタイル調整 */
body {
    width: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%; 
  }


/* -----------------------------
見出しタグ設定(スマホ)
-----------------------------*/ 
h2 {
	font-size: 1.3em;
}


.section_04 h2 {
	position: relative;
	margin-top: 0.5em;
	margin-bottom: 1em;
	font-size: 1.3em;
	text-align: center;
    color: #fff;
}


.nayami_title {
	font-size: 1.3em;
}

.nayami_title_mini{
    font-size: 1em;
    text-align: center;
}

h3 {
    margin: 0.5em 0em;
    padding: 0.3em 0.6em;
    font-size: 1.1em;
    font-weight: bold;
}

h4{
    margin: 0.5em 0em;
    padding: 0.3em 0.6em;
    font-size: 1.1em;
    font-weight: bold;
    /* border: 1px solid #000; */
}

h5{
    margin: 0.5em 0em;
    padding: 0.3em;
    font-size: 1em;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
}

/* -----------------------------
全体レイアウト 背景設定(PC)
-----------------------------*/ 

/* 全体エリア（全体背景を設定するにはここ） */
.main{
    background-color: #f2f2f2;
}

/* 記事（ボディ）エリア */

.article{
    background-color: #fff;
    border-left: none
    border-right: none;
    font-size: 1.6em; /*16px*/
    
}

/* 記事（ボディ）エリアの行間 */
.article p{
    line-height: 1.6;
}

.article{
    width: 100%;
}


/* カラム全体の幅を変更する */
.top_image_in,.section_inr{
    width: 100%;
    margin: 0 auto;/*真ん中に要素を置きたいときに使う*/
}

/* -----------------------------
上部固定ヘッダー設定
-----------------------------*/ 

/* 上部固定ヘッダー全体 */
.header{
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 5000;
    background-color: rgba( 255, 255, 255, 0.9 );
    border-bottom: 1px solid #ccc;
    overflow: auto;
}


/* ヘッダー内部をカラム幅にする */
.header_inr{
    max-width: 950px;
    margin: 0 auto;
    overflow: hidden;
    height: 0%;
}

/* ヘッダーのロゴ */
.header_logo{
    width:  25%;
    float: left;
    height: 100%;
    margin: 2em 2em 1em 2.5em;
}


/* ヘッダーの問い合わせボタン */
.header_btn {
    margin: 0em;
    font-size: 1.2em;
    width: 210px;
    box-shadow: none;
    transition: none;   
}

.header_btn:hover {
    /* box-shadow: 0px 5px 0px #4d9ecc; */
    transform: none;
}


/* ヘッダーの電話ボタン */
.header_tel{
    width: 35%;
    float: right;
    margin: 0.8em 0em 0em;
}


/* ヘッダー内の画像が常に幅100%になるように */
.header_logo img,.header_mail img,.header_tel img{
    width: 100%;
}


/* -----------------------------
ファーストビュー設定
-----------------------------*/

/* kv: ファーストビューのコンテナ */
.kv {
    height: 80vh; /* 画面全体の高さに設定 */
    display: flex; /* フレックスボックスで中央揃え */
    justify-content: center; /* 水平方向に中央揃え */
    align-items: center; /* 垂直方向に中央揃え */
    position: relative; /* 子要素のスタッキングコンテキストを制御 */
    z-index: 1; /* 背景要素より前面に配置 */
}

/* catch-copy: キャッチコピー全体のスタイル */
.catch-copy {
    display: block;
    text-align: center; /* テキストを中央揃え */
    position: relative; /* 親要素内での位置指定可能に */
    z-index: 2; /* ビデオよりも前面に表示 */
}

/* メインコピー（大きなキャッチフレーズ） */
.main-copy {
    display: block;
    font-size: 3.8em; /* メインコピーのサイズを縮小 */
}

/* サブコピー（補足テキスト） */
.sub-copy {
    display: block;
    line-height: 1.5em; /* 行間を調整 */
    font-size: 2em; /* メインコピーより少し小さな文字サイズ */
    font-family: "hiragino-kaku-gothic-pron", sans-serif; /* フォント設定 */
    font-weight: 300; /* 太字 */
    font-style: normal; /* 通常のスタイル */
}

/* 円形の要素 */
.circle {
    position: relative; /* 内部テキストの位置調整のため */
    display: inline-block; /* サイズ指定を効かせる */
    width: 20em; /* 幅 */
    height: 20em; /* 高さ（幅と同じで円形に） */
    border-radius: 50%; /* 丸くする */
    border: solid 3px #fff; /* 白い枠線を追加 */
    font-family: "hiragino-kaku-gothic-pron", sans-serif; /* フォント設定 */
    font-weight: 600; 太字
    margin-top: 1.5em; /* 上部の余白 */
}

/* 円形の内部テキスト */
.circle span {
    font-size: 1.4em; /* 文字サイズ */
    display: inline-block; /* サイズ指定を効かせる */
    position: absolute; /* 中央揃えのために絶対位置指定 */
    left: 50%; /* 横方向の中央に移動 */
    top: 50%; /* 縦方向の中央に移動 */
    transform: translate(-50%, -50%); /* 真の中央に位置調整 */
    text-align: center; /* テキストを中央揃え */
}

/* 円形内部の強調テキスト */
.circle span b {
    font-size: 1.4em; /* 通常の文字より少し大きく */
}


/* video: 背景のビデオ要素 */

  /* ビデオの最小高さ調整 */
  .video {
    min-height: 30vh; /* スマホでは最小高さをさらに縮小 */
}

.video::after {
    background: rgba(0, 0, 0, 0.5); /* スマホではオーバーレイを少し薄く */
}

/* ビデオが画面いっぱいに広がるように調整 */
.video video {
    width: 100%; /* 幅を画面いっぱいに */
    height: 100%; /* 高さも100%に設定 */
    object-fit: cover; /* 親要素にぴったり合わせてクロップ */
}

.video-caption{
    font-size: 0.8em;
}

/* -----------------------------
sectionの設定
-----------------------------*/ 
.section_01{
    padding: 2em 0.5em;
}


/* 悩み部分 */

.nayami_header {
    flex: 0 1 calc(50% - 20px); /* スマホでも2列のまま維持 */
    font-size: 0.8em; /* 文字サイズを調整 */
    padding: 10px 15px;
}

.nayami_illustration img {
    max-width:85px; /* イラストのサイズを適切に設定 */
    height: auto;
    margin: 0 auto;
}


.section_02{
    padding: 0.5em 0.5em;
}

.section_inr{
    padding: 0px 10px 0px 10px;
}

.plan {
    padding: 1em 1em;
}

.box_futai {
    display: block;
    position: relative;
    width: 100%;
    padding: 10px;
}

.sp_none{
display: none;
}

div .box_futai::before{
    transform: skewX(-15deg);
    content: ""; /*ボックスを作る*/
    position: absolute; /*ポジションで中央に配置*/
    top: 0; bottom: 0; left: 0; right: 0;
    z-index: -1; /* 親要素の後ろに来るように-1 */
    padding: 0px;
    margin: 2px;
}



/* -----------------------------
チェックリスト設定
-----------------------------*/ 
ul.checklist{
    border: 1px solid #ccc;
    list-style: none;
    padding: 1em;
}

ul.checklist li{
    background-image: url(../images/icon-check03-red.png);
    background-repeat: no-repeat;
    background-size: 7%;
    padding-left: 2em;
    margin-bottom: 0.8em;
}

ul.checklist li:last-child{
    margin-bottom: 0em;
}

/* -----------------------------
テーブル設定
-----------------------------*/ 

table{
    width: 100%;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    margin: 1em 0em;
}

th,td{
    padding: 0.5em;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

th{
    background-color: #f0f0f0;
    font-weight: bold;
    text-align: center;
}

td{
    background-color: #fff;
    text-align: left;
}

/* スマホでは行が列になるテーブルタグ */

.table_style_01 tr,.table_style_01 th,.table_style_01 td{
    display: block;
}
,.table_style_01 th,.table_style_01 td{
    width: 100%;
}


/* -----------------------------
フォーム設定
-----------------------------*/ 
.mailform{
    background-color: #fff;
    margin-bottom: 1em;
    padding: 1em 0em 1.5em;
}

.input{
    padding: 0 2em;
}

.input_style{
    background-color: #fff8f0;
    width: 100%;
    height: 60px;
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 1.2em;
}

input[type="image"]{
    width: 100%;
}

.caution{
    text-align: center;
    font-size: 0.5em;
    color: #f00;
}

/* -----------------------------
よくある質問設定
-----------------------------*/
.box_qa_q {
    background-color: #fff;
    padding: 1em 2em 1em 3em;
    border-bottom: 1px solid #ccc;
    font-size: 1em;
    font-weight: bold;
    color: #D10003;
}

.box_qa_a {
    background-color: #fff;
    padding: 1em 2em 1em 3.5em;
}

.box_qa_q p,
.box_qa_a p {
    text-indent: -1.8em;
}


/*-----------------------------------------------------------------------------------------------------
よくある質問部分のアコーディオン
-----------------------------------------------------------------------------------------------------*/
.box_qa {
    margin: 0.5em;
  }
  .accordion_header_01 {
    margin: 0px 0px 0em 0px;
    background: url(../images/+.png) no-repeat;
    background-color: #fff;
    background-size: 30px;
    background-position: 98% 50%;
    padding: 15px 30px 15px 25px;

    font-size: 100%;
    height: auto;
    vertical-align: middle;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    display: block;
  }
  .selected01 {
    background: url(../images/_.png) no-repeat;
    background-color: #125599;
    background-position: 98% 50%;
    color: #fff;
  }
  .selected01 + * {
    background: #fff;
    background-position: 8px 50%;
  }
  .accordion_open_01 {
    margin: 0px 0px 15px 0px;
    padding: 1em 2em 0.5em;
    background: #fff;
    border-left: solid 4px #125599;
    border-right: solid 4px #125599;
    border-bottom: solid 4px #125599;
    -webkit-border-bottom-right-radius: 8px;
    -webkit-border-bottom-left-radius: 8px;
    -moz-border-radius-bottomright: 8px;
    -moz-border-radius-bottomleft: 8px;
  }
  .accordion_open_01:before {
    content: "";
  }
  .accordion_field_01 {
    display: block;
    line-height: 1.5;
    text-align: left;
    padding: 0 0 0 0px;
    margin: 0px 0 10px 0;
    color: #000;
    font-size: 100%;
    width: 100%;
  }
  .box_support {
    background-color: #f6f6f6;
    padding: 1em;
  }
  .accordion_field_01 a {
    text-decoration: underline;
    color: #125599;
  }




/* -----------------------------
CTAエリア
-----------------------------*/ 
.area_cta{
    background-color: #125599;
    padding: 1em 1em;
}

.area_cta_inr {
    flex: none;
    display: inline-block;
    width: 100%;
}

.area_cta_inr_left{
    float: none;
    width: 100%;

}

.area_cta_inr_right {
    float: none;
    margin-top: 1em;
    width: 100%;
}

/* CTAの問い合わせボタン */
.cta_btn {
    float: none;
       margin: 0.5em;
       width: 95%;
       line-height: 60px;
       text-align: center;
       font-size: 1em;
       background-color: #E15A28;
       box-shadow: 0px 3px 0px #ed6a3aba;
       transition: .3s;   
       padding: 15px;
       color: #fff; /* テキスト色 */
       /* box-sizing: border-box; */
   }
   
   /* 電話番号スタイル */
   .cta_tel {
       float: none;
       display: block;
       width: 95%;
       margin: 0.2em;
       line-height: 60px;
       text-align: center;
       font-size: 1.6em;
       padding: 10px;
       color: #125599;
   }

/* -----------------------------
フッター部分
-----------------------------*/ 

.footer{
    text-align: center;
    color: #fff;
    font-size: 1.2em;
    padding: 2em 0em;
}

.footer a{
    color: #fff;
}



/* -----------------------------
平世さん
-----------------------------*/ 



/*-----------------------------------------------------------------------------------------------------
セクション 選ばれる理由
-----------------------------------------------------------------------------------------------------*/

.e-point {
    display: inline-block; /* Flexbox を使用 */
    align-items: center; /* 垂直方向の中央揃え */
    justify-content: center; /* 水平方向の中央揃え */
    width: 4em;
    height: 4em;
    border-radius: 50%; /* 円形を維持 */
    border: dotted 3px #4d9ecc;
    text-align: center; /* テキストの中央揃え */
    background-color: #f9f9f9; /* 背景色を追加して確認 */
    line-height: 1.5em;
    flex-direction: column; /* 縦並びにする */
}

.e-small {
    font-size: 0.7em; /* 小さいフォントサイズ */
    padding-top: 0.5em;
    display: block;
}

.e-big2 {
    font-size: 1.2em; /* 大きいフォントサイズ */
    display: block;
}

.section_03 h4{
    position: relative;
    top:7px;
    font-size: 1.15em;
}



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

.box_koe {
	width: 100%;
}

.koe_img img {
    display: inline-block;
    /* max-width: 100%; */
    width: 25%;
    height: auto;
    border-radius: 50%;
}


/*-----------------------------------------------------------------------------------------------------
ディレクター紹介
-----------------------------------------------------------------------------------------------------*/

.section_04 {
    background-image: url(../images/profile_bg_rwd2.png);
    background-position: right 50%;
    /* background-position: right top; 必要なら縦方向も調整 */
}

.section_04 .section_inr{
    margin-bottom: 150px;
}

.section_contact_in {
	background-color: transparent;
}


/*-----------------------------------------------------------------------------------------------------
YouTubeスライダー
-----------------------------------------------------------------------------------------------------*/

/* --------------------------------------------------------------
    Portfolioセクションの基本スタイル
-------------------------------------------------------------- */
#portfolio {
    padding: 0em 2em; /* 上下に余白を追加、左右は小さめに設定 */
}

/* 動画の高さ調整（スマホ向け） */
.videos__video {
    height: 15em; /* スマホでは動画の高さを小さく */
}

/* スライダー全体の設定 */
.portfolio__slider {
    max-width: 100%; /* スライダーの幅を100%に */
    padding: 0; /* 上下の余白を削除 */
}

/* 動画リストの幅調整 */
.portfolio__videos {
    width: calc(100% * 4); /* 4つの動画が並ぶように設定 */
}

/* 矢印ボタンのサイズ調整（スマホ用） */
.slider__arrow {
    width: 2.5em; /* ボタンの幅を小さく */
    height: 2.5em; /* ボタンの高さを小さく */
    font-size: 1.2em; /* 矢印のサイズを小さく */
    top: 35%; /* 垂直方向の中央揃え */
}

/* --------------------------------------------------------------
    各動画の表示設定
-------------------------------------------------------------- */
.videos__video {
    flex-shrink: 0; /* 幅を固定して縮まないように */
    width: 100%; /* 親要素（スライダー）と同じ幅 */
    height: 16em; /* 初期設定の高さ（大きな画面向け） */
    display: flex; /* アイテムを中央揃え */
    justify-content: center; /* 水平方向の中央揃え */
    align-items: center; /* 垂直方向の中央揃え */
}

/* YouTube埋め込み動画の設定 */
.videos__video iframe {
    width: 100%; /* 幅を100%に設定（スマホ向け） */
    height: 40vh; /* 縦幅を40vhに設定（スマホ向け） */
}



}