﻿body, .txt_color_nomal{color: #1a1a1a;}

.txt_white{color: white;}
.txt_red{color: red;}
.txt_gray{color: #93ABD3}
.txt_color1, .txt_color3{color: #020243} /* メインカラー */
.txt_color2{color: #E16B15} /* サブカラー */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: #1a1a1a} /* 黒背景 */
.bg_gray{background-color: #93ABD3}
.bg_color1{background-color: #020243} /* メインカラー */
.bg_color2{background-color: #E16B15} /* サブカラー1 */
.bg_color3{background-color: #F45905} /* サブカラー2 */
.bg_color_clear{background-color: transparent!important}

.bg_base{background-color: #f5f5f5} /* ベースカラー　※transparent以外（白背景の場合　#fff） */


/* border-color ※!important */
.border_white{border-color: white}
.border_black{border-color: #1a1a1a}
.border_gray{border-color: #93ABD3}
.border_color1{border-color: #020243}
.border_color2{border-color: #E16B15}
.border_color3{border-color: #F45905}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #1a1a1a;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_gray:hover{color: #93ABD3}
.hvr_txt_color1:hover, .hvr_txt_color3:hover{color: #020243} /* メインカラー */
.hvr_txt_color2:hover{color: #E16B15} /* サブカラー1 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: #1a1a1a} /* 黒背景 */
.hvr_bg_gray:hover{background-color: #93ABD3}
.hvr_bg_color1:hover{background-color: #020243} /* メインカラー */
.hvr_bg_color2:hover{background-color: #E16B15} /* サブカラー1 */
.hvr_bg_color3:hover{background-color: #F45905} /* サブカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.hvr_border_white:hover{border-color: white}
.hvr_border_black:hover{border-color: #1a1a1a}
.hvr_border_gray:hover{border-color: #93ABD3}
.hvr_border_color1:hover{border-color: #020243}
.hvr_border_color2:hover{border-color: #E16B15}
.hvr_border_color3:hover{border-color: #F45905}

/* ----------　all　---------- */
.linkStyle{
	color:#F45905;
}
.linkStyle:hover{
	color:#020243;
	opacity: 0.7;
	transition: all 0.5s;

}
.more span.d_inline_b::before, .more a::before {
    color: #E16B15;
}
#head_contact a {
    background: #020243;
}
#head_contact .txt_color1 {
    background: transparent;
}
#loading {
    background: #fff;
}

footer.bg_black {
    background: #020243;
}


/* ----------　TOP　---------- */
#main_img {
    background-color: #020243;
}
#main_img .tb_hide {
    object-fit: cover;
    height: 100vh;
}
#main_img .main_txt {
    transition: 2s;
    color: #050574;
	top: 55vh;
    left: 40vw;
}
#main_img .main_txt h2 {
    font-size: min(4vw, 70px);
}
#top_con::before {
    background-color: #ffffff;
    opacity: 1;
}
.catch {
    top: 14vh;
    left: 0;
    font-size: min(3vw, 40px);
    font-family: 'Noto Sans JP';
}
.catch p {
    padding: 0 20px;
}
.catch p:last-child {
    position: relative;
    left: 20%;
}
.top_about {
    color: #020243;
}
.fadein .fade_box.active {
    z-index: 2;
}
.top_banner:hover {
    transform: scale(1.1);
    opacity: 1;
}
.top_banner {
    bottom: 0;
    right: 0;
    width: 20%;
    position: fixed;
    z-index: 2;
}
.top_info_left_bg {
    background-color: #9da9ff;
}
#top_con .number::before {
    background-color: #F45905;
}
.con1 .font_2up {
    color: #020243;
}
#menu_bt {
    border: 1px solid #fff;
}
.top_link_title:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 300px solid transparent;
    border-left: 300px solid transparent;
    border-bottom: 475px solid #ffffff59;
    border-top: 0;
    transform: rotate(45deg);
    position: absolute;
    top: -21vh;
    left: 0;
}
.top_info_right:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 274px solid transparent;
    border-left: 274px solid transparent;
    border-bottom: 470px solid #ffffff57;
    border-top: 0;
    transform: rotate(98deg);
    position: absolute;
    top: 1vh;
    right: -11%;
}
#page_top.active {
    bottom: 100px;
}
/* ----------　下層ページ　---------- */
.cate_list a:hover {
    background: #fff;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */




/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
/* ----------　all　---------- */

/* ----------　TOP　---------- */
#main_img {
    height: 100vh;
}

#main_img .main_txt {
    top: 44%;
    left: 54%;
}
#main_img .main_txt h2 {
    font-size: 6.5vw;
}
.catch {
    top: 14vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    font-size: min(4vw, 30px);
}
.catch p:last-child {
    left: 30%;
}
.catch p:first-child {
    position: relative;
    left: -30%;
}
.top_banner {
    bottom: 80px;
    right: 50%;
    width: 40%;
    transform: translateX(50%);
}
.top_banner {
    bottom: 90px;
    width: 50%;
    transition: 0.5s;
}
.top_banner_active {
    bottom: 0;
}
.top_link_title:before {
    top: 3vh;
    left: 44%;
}
.top_info_right:before {
    top: 8vh;
    right: -14%;
}
.con_txt_wrap {
    background: #02024326;
}
.con1 .font_2up {
    color: #020243;
    background: #fff;
}
#top_intro .more span.d_inline_b:hover {
    background: #E16B15;
}
#page_top.active {
    bottom: 0px;
}
/* ----------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}



/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
/* ----------　all　---------- */

/* ----------　TOP　---------- */
#main_img .mv_tb {
    height: 100%;
    width: auto;
}
#main_img .main_txt h2 {
    font-size: 8vw;
}
.head_contact_btn {
    transition: 1.5s;
}
#head_contact .active  {
    display: block;
}
#head_contact a::before {
    border: 1px solid;
}
.top_link_title:before {
    top: 33vh;
    left: 21%;
    border-right: 200px solid transparent;
    border-left: 200px solid transparent;
    border-bottom: 322px solid #ffffff59;
}
.top_info_right:before {
    top: 34vh;
    right: -1%;
    transform: rotate(131deg);
    border-right: 200px solid transparent;
    border-left: 200px solid transparent;
    border-bottom: 318px solid #ffffff57;
}
.top_about {
    color: #e16b15;
}
.con2 .font_2up {
    color: #020243;
    background: #fff;
}
.top_banner {
    width: 60%;
    bottom: 0px;
}
#page_top.active {
    bottom: 0px;
}
.top_banner_active{
    bottom: 0;
}
.top_banner:hover {
    transform: translateX(50%) scale(1.1);
}

/* ----------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
}