﻿/* all page */
/*fonts*/
html, body {font-size: 16px;}

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: var(--color1);text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
#google_privacy a{color: var(--color1);}
:root{
	--color1: #262843;
	--color2: #f3f3f3;
	--color3: #92bff1;
	--color4: #e1f6f7;
	/*--font-jp: 'Noto Sans JP', "游ゴシック Medium", sans-serif;*/
}
.button:hover::after {
    box-shadow: inset 0 0 0 15em var(--color1);
}

/* header */
header {background-image: linear-gradient(to top, #accbee 0%, #e7f0fd 100%);}
#main_menu ul li a::before {
    background-color: var(--color1);
}
.fat-nav li {font-size: 16px;}
.link_box li {
    margin: 0 2%;
    width: 13.33333% !important;
}

/* footer */



/* top ----------------------------------------------------------------*/

/* main img */
.scroll_bt {color: var(--color1);}
.scroll_bt span {border: 2px solid var(--color1);}
.scroll_bt span::before {background-color: var(--color1);}
#main_img .flexslider{
    width: 45%;
    height: 90%;
    position: absolute;
    overflow: hidden;
    top: 5%;
    left: 5%;
}
#main_img .catch {
    width: 50%;
    top: 43%;
    left: 70%;
    z-index: 2;
}
#main_img .catch02 {
    bottom: 5%;
    right: 3%;
    width: 35%;
    max-width: 500px;
    z-index: 2;
}

/* main */

/* intro */
#contents1 {
    margin-top: 100px;
    padding: 300px 10% 80px;
    position: relative;
}
#contents1 > div {
    z-index: 1;
}
#contents1.trans::before{
    opacity: 0.6;
}
#contents1::before {
    content: "";
    background-image: url('/Files/img/intro_attach.png');
    background-size: contain;
    background-position: bottom -1px center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* contents */


/* topcms */


/* under page ----------------------------------------------------------------*/
.button2:hover {box-shadow: none;}
#cms_7-a .box_title1 {color: var(--color3);}

.contact_type1 .con_box1 {
    padding: 30px 20px 30px;
    background-color: #f7f7f7;
    position: relative;
}
.contact_type1 .con_box1::before{
    content: "";
    background-color: var(--color1);
    width: 0.1px;
    height: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.contact_type1 .left, .contact_type1 .right {
    /* padding: 40px 27px 30px; */
    /* background-color: #f7f7f7; */
    margin: 1%;
    width: 48%!important;
    box-sizing: border-box;
    /* display: flex;
    flex-direction: column;
    flex: 1; */
}
.contact_type1 .cate_title {
    padding: 0;
    margin: 0;
    font-size: 19px;
    margin-bottom: 16px;
}
.contact_type1 .con_box1 a {
    display: block;
    max-width: 400px;
    margin: 0 auto 15px;
    transition: opacity .6s;
    letter-spacing: 0.5px;
}
.contact_type1.con_box2 a{
    display: block;
    max-width: 450px;
    margin: 0 auto;
    transition: opacity .6s;
}
.contact_type1 .click_bt {
    cursor: pointer;
    padding: 10px 18px;
    background-color: #fff;
    box-shadow: 0 3px 8px rgb(0 0 0 / 10%);
    border-radius: 5px;
    text-align: center;
}
.contact_type1 .txt_box{
     display: none;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.contact_type1 .left, .contact_type1 .right {width: 80%!important;}
.contact_type1 .con_box1::before{display: none;}
.contact_type1 .left{
    border-bottom: solid 1px var(--color1);
    padding-bottom: 20px;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
.contact_type1 .con_box1 {
    padding: 30px 10px 20px;
}
.contact_type1 .left, .contact_type1 .right {
    /* padding: 30px 27px 30px; */
    width: 100%!important;
}
.contact_type1 .left {
    margin-bottom: 20px;
}
.contact_type1 .cate_title {
    font-size: 17px;
}
}

.flow_type3 .cate{counter-reset: box;}
.flow_type3 .cate_box{counter-increment: box;}
.flow_type3 .box_item{padding-top: 60px;}
.flow_type3 .box_title1{z-index: 0}
.flow_type3 .box_title1::before, .flow_type3 .box_title1::after{
	position: absolute;
	content: "";
	display: block;
	pointer-events: none
}
.flow_type3 .box_title1::before {
	content: "0"counter(box);
	font-size: 86px;
	color: #ebebeb;
	left: 0;
	top: -70px;
	z-index: -1;
}
.flow_type3 .box_title1::after{
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #222
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.flow_type3 .box_title1::before{
	left: auto;
	right: 0;
	top: -50px
}
.flow_type3 .box_item {
    padding-top: 36px;
}
}


/* ---------- 1536px ---------- */
@media screen and (max-width: 1536px){}
/* ---------- 1366px ---------- */
@media screen and (max-width: 1366px){}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
header {background-image: linear-gradient(to right, #accbee 0%, #e7f0fd 100%);}
header #logo {max-width: 100px;}
footer .link_box li {max-width: 35px;}
.hamburger__icon {margin-top: 14px;}
#main_img {
    max-height: none;
    min-height: auto;
    height: 90vh;
}
#main_img img.object_fit_img {min-height: auto;}
#main_img .flexslider {
    width: 90%;
    height: 42%;
}
#main_img .catch {
    width: 82%;
    top: 60%;
    left: 50%;
}
#main_img .catch02 {
    right: 5%;
    width: 45%;
    bottom: 5%;
}
#contents1 {
    margin-top: 0;
    padding: 100px 10%;
}
#contents1 .txt3 {
    background-color: rgba(255, 255, 255, 0.7);
    padding: 3% 5%;
}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
header #logo {max-width: 80px;}
#main_img .catch {
    width: 85%;
    top: 57%;
}
#main_img .catch02 {
    width: 60%;
    bottom: 10%;
}
footer .logo{text-align: center;}
#contents1 .txt3 {
    padding: 5% 3%;
}

}





