﻿/* 1536 , 1530 × 735 ,1366 *//* 上記画面幅でも崩れていないか確認 */

/* 修正した場合→各項目の一番下に日付をコメントアウトして追記 */
.linkStyle{
	color:var(--color1);
}
.linkStyle:hover{
	color:var(--color1);
	opacity: 0.7;
	transition: all 0.5s;
}
#logo img{
    width: 100%!important;
}
.contact_box .hvr_bg_color3:hover{
    background-color: var(--color2);
}
.tel_bt .hvr_txt_color3:hover{
    color:var(--color2);
}
#footer::before{
    background-color: rgb(167 197 229 / 88%);
}
.footer_box p,.footer_box a{
    color: var(--normal);
}
.fix_menu_sns .sns_links .img_tool{
    height: 30px;
    width: 30px;
}
.overlay{
    background: rgba(222, 248, 252, 0.9);
}

/* ---------------------------　タブレット　-------------------------- */
@media screen and (max-width: 768px){
.overlay nav {
        height: 75%;
}
}

/* --------------------------　スマホ　-------------------------- */
@media screen and (max-width: 667px){
    #logo {
        height: 54px;
    }
    #logo img {
    width: 60% !important;
}
    #fix_menu {
    padding: 25px 0 25px;
} 
}



/*■■　FV　■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.top_img01 {
    opacity: 0.22;
}
.fv_item01 {
    position: absolute;
    z-index: 4;
    bottom: 0;
    left: 12%;
    width: 31%;
}
.fv_item02 {
    position: absolute;
    z-index: 3;
    top: -19%;
    left: 27%;
    width: 72%;
}
.fv_item04 {
    position: absolute;
    z-index: 3;
    bottom: 0;
    right: 0;
    width: 72%;
}
.fv_item05 {
    position: absolute;
    z-index: 3;
    top: -37%;
    left: 22%;
    width: 66%;
}

.fv_txt01 {
    position: absolute;
    z-index: 4;
    top: 35%;
    right: 13%;
    width: 42%;
}
.fv_txt02 {
    position: absolute;
    z-index: 5;
    top: 17%;
    left: 12%;
    width: 5%;
}
.fadein{
	transform: translateY(20px);
	transition: transform 1.5s ease, opacity 2s;
	transition-property: opacity,transform;
	opacity: 0;
}
.fadein.start{transform: translateY(0);opacity: 1;}

/* ---------------------------　タブレット　-------------------------- */
@media screen and (max-width: 768px){
.fv_item01 {
    left: 12%;
    width: 27%;
}
.fv_item02 {
    top: 0%;
    left: 19%;
    width: 85%;
}
.fv_item05 {
    top: -5%;
    left: 16%;
    width: 69%;
}
.fv_txt01 {
    top: 51%;
    right: 9%;
    width: 45%;
}
.fv_txt02 {
    top: 31%;
    left: 8%;
    width: 6%;
}
}

/* --------------------------　スマホ　-------------------------- */
@media screen and (max-width: 667px){
    #main_img {
        max-height: 100vH;
        min-height: 75vh;
    }
    .top_img01{
        width: 300%;
        height: 75vh;
    }
    .fv_item01 {
        left: 8%;
        width: 55%;
    }
    .fv_item02 {
        top: -5%;
        left: -4%;
        width: 145%;
    }
    .fv_item04 {
    right: -38%;
    width: 112%;
}
    .fv_item05 {
    top: -6%;
    left: -2%;
    width: 100%;
}
    .fv_txt01 {
        top: 27%;
        right: 16%;
        width: 67%;
    }
    .fv_txt02 {
        top: initial;
        bottom: 8%;
        left: initial;
        right: 16%;
        width: 11%;
    }
}



/*■■　TOP　■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#top_contents1{
    overflow: hidden;
}
.top_cms_title .after, .top_info_title .after{
    color: var(--color2);
}
.item02 {
    position: absolute;
    width: 30%;
    right: -6%;
    top: -13%;
    z-index: 1;
}
.fv_item04_blue {
    position: absolute;
    width: 52%;
    right: 0;
    bottom: 0;
    z-index: 0;
}
.item03{
    position: absolute;
    width: 81%;
    right: 0;
    bottom: -13%;
    z-index: 0;
}
#top_contents1 .d_flex .txt_color_nomal{
    position: relative;
    z-index: 11;
}
.intro_title{
    width: 35%;
}
.con_title02{
    width: 55%;
}
.con_title01{
    width:78%;
}
.more .hvr_bg_color4:hover{
    background-color:var(--color2);
    color:#fff;
}
#top_info .tel_bt .hvr_txt_color3:hover{
        color: var(--color2);
}
#top_contact_box .tel_bt {
    background-color: rgba(15, 101, 188, 0.5);
    border:none;
}
#top_contact_box .tel_bt:hover {
    background-color: rgba(15, 101, 188, 1);
}
#top_contact_box .con_bt {
    background-color: rgba(255, 255, 255, 0.6);
    border:none;
}
#top_contact_box .con_bt a,#top_contact_box .con_bt i{
    color:var(--color1)!important;
}
#top_contact_box .con_bt:hover {
    background-color: rgba(255, 255, 255, 1);
}

/* cms2 */
.link_type2 .cate_box a {
    color: #fff;
}
.link_type2 .cate_box a:before, .link_type2 .cate_box a:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(38 75 113 / 50%);
    z-index: 1;
}
.link_type2 .cate_box a:after {
    top: 100%;
    background-color: var(--color1);
    transition: 0.5s;
	z-index: 3;
}
.link_type2 .cate_box a:hover:after {
    top: 0;
}
.link_type2 .cate_box .txt_wrap {
    z-index: 2;
}
.link_type2 .more {
	letter-spacing: 3px;
    box-sizing: border-box;
	opacity: 0;
	transition: opacity .8s;
	z-index: 4;
}
.link_type2 .cate_box a:hover .more {
    opacity: 1;
}

/* cms3 */
.link_type1 .link_top .link_title {
    font-size: 20px;
    margin-bottom: 20px;
    text-align: center;
	margin-bottom: 30px;
    color: #474521;
    font-weight: normal;
}
.link_type1 .link_top .link_title{
    font-size: 20px;
    margin-bottom: 20px;
}
.link_type1 .link_top a{
	padding-top: 80px;
    padding-bottom: 60px;
}
.link_type1 .link_top a:hover{
    background-color: #ededeb;
}
.link_type1 .link_top a:hover .link_img1{
    transform: translate(-50%, -50%) scale(1.1,1.1);
    opacity: 0.1;
}
@media screen and (max-width: 667px){
.link_type1 .link_top .link_title{
    font-size: 15px;
}
}

@media screen and (max-width: 1520px){
#top_contents1 .d_flex{
    display:block;
}
    .intro_title {
    width: 8%;
    margin-bottom: 40px;
}
.item02 {
    width: 33%;
    right: -6%;
    top: -10%;
}
.fv_item04_blue{
    width: 85%;
}
.item03 {
    width: 117%;
    bottom: -13%;
}
}

/* ---------------------------　タブレット　-------------------------- */
@media screen and (max-width: 768px){
    #top_contents1 {
        padding: 70px 50px;
    }
    .intro_title {
    width: 15%;
    margin-bottom: 40px;
}
    .item02 {
        width: 50%;
        right: -16%;
        top: -4%;
}
    .fv_item04_blue {
        width: 129%;
        right: -22%;
        bottom: 0;
}
.item03 {
    width: 174%;
    right: -14%;
}
}

/* --------------------------　スマホ　-------------------------- */
@media screen and (max-width: 667px){
    .intro_title {
    width: 25%;
}
    .con_title01 {
    width: 99%;
}
    .con_title02 {
    width: 80%;
}
    .item02 {
        width: 60%;
        right: -16%;
        top: -4%;
    }
    .fv_item04_blue {
        width: 129%;
        right: -22%;
        top: 0%;
    }
.intro_title{
    position: relative;
    z-index: 10;
}
}



/*■■　下層ページ　■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#page_title::before{
    background-color: rgb(167 197 229 / 50%);
}

/* page2 */
.blogListPattern_item .border_color2{
    border-color: var(--gray);
}

/* page3 */
.flow_type1 .cate_box{border-left:none;background-color: rgba(0,0,0,0);}
.flow_type1 .box_txt1,
.flow_type1 .box_txt2{padding-left:130px;}

.flow_type1 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type1 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 0px);
    border-left: 14px solid rgba(243, 237, 225, .78);
    position: absolute;
    top: -5px;
    left: 107px
}
.flow_type1 .box_txt1{position:relative;}
.flow_type1 .box_txt1::before,
.flow_type1 .box_txt1::after {
	content: "";
	display: block;
	position: absolute;
	top: 18px;
}
.flow_type1 .box_txt1::before {
	width: 7px;
	height: 7px;
	margin-top: -3px;
	background: #6b90db;
	border-radius: 50%;
	left: 61.5px;
}
.flow_type1 .box_txt1::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: 72px;
}
.flow_type1 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type1 .box_description2 span{
position: absolute;
    display: inline-block;
    width: 90px;
    top: -23px;
    left: -50px;
}

/* page6 */
#cms_3-f .cate_box {
    width: 90%;
}

/* page8 */
#page8 h3 span,#page8 #mail_contact .txt_left .txt_color1{
    color: #dd2929;
}

/* page9 */
#page9 .border_color4{
    border-color: #ccc;
}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
.flow_type1 .flex_order2_tb{
    width: 78%!important;
    margin-left: auto;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.flow_type1 .box_description2 span {
    width: 70px;
}
.flow_type1 .box_wrap{
    padding-left: 23px;
}
.flow_type1 .box_wrap:before {
    left: 22px;
}
.flow_type1 .box_txt1::before, .flow_type1 .box_txt1::after {
    top: 58px;
}
.flow_type1 .box_txt1::before {
    margin-top: -3px;
    left: -17.5px;
}
.flow_type1 .box_txt1::after {
    width: 30px;
    left: -8px;
}
.flow_type1 .box_txt1, .flow_type1 .box_txt2 {
    padding-left: 30px;
}
.flow_type1 .box_txt1{
    padding-top: 46px;
}
.flow_type1 .flex_order2_tb {
    width: 87%!important;
}
.flow_type1 .box_description2 span {
    left: -49px;
}
}

/* ---------------------------　タブレット　-------------------------- */
@media screen and (max-width: 768px){

}

/* --------------------------　スマホ　-------------------------- */
@media screen and (max-width: 667px){

}


