/* ----------------------------------------------------------
Bootstrap4 テンプレート　tpl_001
 ---------------------------------------------------------- */

/* ヘッダー
------------------------------------------------------------*/
header{
    background: #155263;
    position: relative;
    width: 100%;
    z-index: 1;
}


/* フッター
------------------------------------------------------------*/
.footer {
    display: flex; /* flexboxを使ってど真ん中に配置 */
    justify-content: center; /* flexboxを使ってど真ん中に配置 */
    align-items: center; /* flexboxを使ってど真ん中に配置 */
    background-color: #525252;
    min-height: 200px;
}

/* 共通
------------------------------------------------------------*/
/* タイトル */
h2{
    color: #28a745;
    margin-bottom: 30px;
}
h3 {
    border-bottom: solid 3px #7db4e6;
    margin-bottom: 30px;
}

h4 {
    color: #494949;/*文字色*/
}

/* ヘッダー固定時のページ内リンクのズレをCSSで解消 */
#sec01::before, #sec02::before, #sec03::before {
    content: "";
    display: inline-block;
    height: 56px;
    margin-top: -56px;
    vertical-align: top;
}

section{
    padding-top: 30px;
    padding-bottom: 30px;
}

section p{
    vertical-align: middle;
}

.container{
    margin-bottom: 30px;
}

/* MAIN VISUAL
------------------------------------------------------------*/
/* ジャンボトロン */
.jumbotron {
    height: 93vh;
    text-align: center;
    color: #ffffff;
    display: flex; /* flexboxを使ってど真ん中に配置 */
    justify-content: center; /* flexboxを使ってど真ん中に配置 */
    align-items: center; /* flexboxを使ってど真ん中に配置 */
}

/* 背景用の動画ファイル */
#bg-video{
    position: absolute;
    right: 0;
    top: 0;
    min-width: 100%;
    z-index: -100;
}

/* グラデーションオーバーレイ */
.wrap{
    width: 100%;
    height: 93vh;
    background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6));
}

/* iPadだけ高さ変更 */
.height-changed{
    height:53vh;
}

/* スマホ */
@media screen and (max-width: 576px) {
    .wrap{
        height: 83vh; /* iPhoneX対応 */
    }
}

/* SEC01 VISION
------------------------------------------------------------*/
#sec01{
    background: #f5f5f5;
}


/* SEC02 MESSAGE
------------------------------------------------------------*/
#sec02{
    background: #FFFFFF;
}

/* SEC03 SERVICE
------------------------------------------------------------*/
#sec03{
    background: #f5f5f5;
}

.card-body{
    height: 280px;
}

.card-img-top{
    height:230px;
}

/* SEC04 STORY
------------------------------------------------------------*/
#sec04{
    padding: 120px 0 120px 0;
    display: flex; /* flexboxを使ってど真ん中に配置 */
    justify-content: center; /* flexboxを使ってど真ん中に配置 */
    align-items: center; /* flexboxを使ってど真ん中に配置 */
    background: transparent;
    color: white;
    text-align: center;
}

/* SEC05 PROFILE
------------------------------------------------------------*/
#sec05{
    background: #FFFFFF;
}

#map{
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
}

#map iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

/* RESPONSIVE 設定
------------------------------------------------------------*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767.98px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}