﻿/* ------------- my css ------------- */

@media screen and (max-width: 667px) {
    html {
        font-size: 16px;
    }
}

/* color */
.txt_color_nomal, .hvr_txt_color_nomal:hover{color: var(--black);}
:root{
    --color1: #185989; 
    --color2: #f5f6f7; 
    --color3: #ffa42c; 
    --color4: #ffea94; 
    --black: #151a1e; 
}

.txt_red, .hvr_txt_red:hover{color: #C12326;}
.txt_gray, .hvr_txt_gray:hover{color: #ccc}
.txt_color1, .hvr_txt_color1:hover{color: var(--color1)} /* メインカラー */
.txt_color2, .hvr_txt_color2:hover{color: var(--color2)} /* サブカラー */
.txt_color3, .hvr_txt_color3:hover{color: var(--color3)} /* アクセントカラー1 */
.txt_color4, .hvr_txt_color4:hover{color: var(--color4)} /* アクセントカラー2 */

/* background-color */
.bg_black, .hvr_bg_black:hover{background-color: var(--black)} /* 黒背景 */
.bg_gray, .hvr_bg_gray:hover{background-color: #ccc}
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1)} /* メインカラー */
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2)} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: var(--color3)} /* アクセントカラー1 */
.bg_color4, .hvr_bg_color4:hover{background-color: var(--color4)} /* アクセントカラー2 */
.bg_color_clear, .hvr_bg_color_clear:hover{background-color: transparent!important}

/* border-color ※!important */
.border_black, .hvr_border_black:hover{border-color: var(--black)}
.border_gray, .hvr_border_gray:hover{border-color: #ccc}
.border_color1, .hvr_border_color1:hover{border-color: var(--color1)}
.border_color2, .hvr_border_color2:hover{border-color: var(--color2)}
.border_color3, .hvr_border_color3:hover{border-color: var(--color3)}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4)}


/*自動リンク設定*/
.linkStyle{
    color:var(--color1);
}
.linkStyle:hover{
	opacity:0.7
}


/*------------- loader -------------*/
#loader.load_bg {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
}

.load_logo figure{
	opacity: 0;
	-webkit-transform: translateX(-40px);
    transform: translateX(-40px);
}


/* ------------- FV ------------- */


#main_img{
    transform: scale(1.01) translateY(-10%) rotate(-5deg) skew(-5deg);
}


#main_img .main_txt{
    position: absolute;
    width: 45%;
    bottom: 23%;
    left: 50%;
    transform: translate(-50%, 0);
  z-index: 2;
}
#main_img .sub_txt{
    position: absolute;
    width: 35%;
    bottom: 0;
    right: 0;
    z-index: 2;
}

@media screen and (max-width: 768px) {
#main_img .main_txt{
    width: 80%;
    bottom: auto;
     top: 50%;
    transform: translate(-50%, -50%);
}
#main_img .sub_txt{
    width: 75%;
}
}

.slide_area {
  width: 100vw;
  height: 20%; /* お好みで調整 */
  overflow: hidden;
  position: relative;
}

.slide_track {
  display: flex;
  width: 200%;
  animation: slideRightLoop 10s linear infinite;
}

.slide_track img {
  width: 100vw;
  height: 100%;
  object-fit: cover;
}

@keyframes slideRightLoop {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0%);
  }
}
@media screen and (max-width: 768px) {
.slide_area {
  height: 70px; 

}
}
@media screen and (max-width: 667px) {
    .slide_area {
        height: 35px;
    }
}

/* ------------- TOP ------------- */


#intro{
    margin-top: -10%;
    padding-top: 17%;
}

@media screen and (max-width: 768px) {
    #intro{
    margin-top: -18%;
    padding-top: 25%;
}
}
@media screen and (max-width: 667px) {
            #intro{
    margin-top: -28%;
    padding-top: 35%;
}
    
}

#contents2 .txt_wrap {
    bottom: -10px;
}

#contents1 .txt_box.pd_r-5per{
    padding-right: 15%;
}

@media screen and (max-width: 768px) {


#contents2 .txt_wrap {
    bottom: -40px;
}
}

@media screen and (max-width: 667px) {
        #contents1 .txt_box.pd_r-5per{
        padding-right: 0;
    }
    
    #top_cms {
        padding-top: 50px;
    }
}



/* ------------- footer ------------- */
#f_contact .bg_color3{
    background-color: rgba(24,89,137,0.6);
}

@media screen and (max-width: 768px) {
#f_contact .bg_color3{
    background-color: var(--color1);
    color: #fff;
}
}

/* ------------- 下層ページ ------------- */
.more_bt a{
    box-shadow: none;
    color: #fff;
    background-color: var(--color1);
}

.more_bt a:hover{
    color: var(--color1);
    background-color: var(--color4);
}

/* ------------- 対応エリア ------------- */

#page5 .cate_list{
    display: none;
}


/* ------------- flow ------------- */
#page6 .cate_list{
    display: none;
}

.flow_type2 .box_txt1 {
    background-color: #fff;
    border-right: 1px solid;
}
@media screen and (max-width: 667px) {
.flow_type2 .box_txt1 {
    border-right: none;
}

}

/* ------------- プライバシーポリシー ------------- */
#google_privacy{
    background-color: #f9f9f9 !important;
}