@charset "utf-8";
/* ===== index ===== */
/*
body#top{
padding-top: 0;
}
body#top header{
background-color: transparent;;
}
body#top header.bg_wh{
background-color: #FFFFFF;
transition: all 500ms 0s ease; 
}
*/
#sect_fview{ padding: 0; margin: 0; width: 100%; background-image: url(../img/kvis_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center bottom; height: 100vh; position: relative; min-height: 900px; max-height: 1400px;}
#sect_fview #fview_flex{ display: flex; align-content: flex-start; align-items: center; height: 100%;}
#sect_fview #fview_flex #fview_cont h1.event_name{ font-family: 'League Spartan', sans-serif; font-weight: 700; font-size: 5.5rem; line-height: 1.1em;}
#sect_fview #fview_flex #fview_cont h1.event_name .event_year{ font-family: 'Roboto', sans-serif; display: block; line-height: 1em;}
#sect_fview #fview_flex #fview_cont h2.event_term{ font-size: 1.5rem; line-height: 1.8em; padding-top: 2em; font-weight: bold;}
#sect_fview #fview_flex #fview_cont h2.event_term small{font-size: 1rem; display: block;}
#sect_fview #fview_flex #fview_cont [class*="comm_btn"]{ margin-top: 2.8em;}

/*
#sect_fview .event_name{ background: #3c3b3b; width: 100%; color: #fff; padding: 0.4em 0; }
#sect_fview .event_name strong{
	font-size: 3rem;
	font-family: 'Roboto', sans-serif;
	padding-bottom: 0.2em;
	border-bottom: 1px solid #FFFFFF;
	display: inline-block;
	line-height: 1em;
	letter-spacing: 0.05em;
}
#sect_fview .event_name .event_term{
	padding: 1em 0 0.5em 0;
	display: block;
	line-height: 1em;
	font-size: 0.92rem;
}
#sect_fview .event_name .event_term .f_alfa{ margin-left: 0.3em; display: inline-block; margin-right: 0.75em;}
#sect_fview .event_name .event_term small{
	font-size: 110%;
	display: inline-block;
	vertical-align: bottom;
	letter-spacing: 0.1em;
	margin-right: 0.1em;
}
#sect_fview .event_name .event_term em{ font-size: 180%; display: inline-block; vertical-align: middle; font-style: normal; letter-spacing: 0.1em; margin-right: 0.1em;}

#sect_fview .event_image {   font-size: 1.6rem;   line-height: 1.4em;   height: calc(100% - 140px);   display: flex;   align-items: center;
	justify-content: center;
}
#sect_fview .event_image img.event_catch {   max-height: 68vh;   width: auto;   max-width: 100%;
	margin-bottom: 50px;
}
*/
#sect_fview a.scroll_btn{ text-align: center; border-top-left-radius: 0.4em; border-top-right-radius: 0.4em; width: 160px; color: #d46a99; padding: 0.5em 0; padding-left: 1em; position: absolute; bottom: 0; left:0; right:0; display: inline-block; background-color: #fff; margin: auto; font-family: 'Roboto', sans-serif;}
#sect_fview a.scroll_btn:after{ content: ""; display: inline-block; width: 0.8em; height: 0.8em; background-image: url(../img/arr_pink.svg);	background-repeat: no-repeat; background-size: contain;	vertical-align: middle;	-ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); background-position: center top; margin-left: 0.5em;}

/**コンセプト**/
#sect_contept{}


/**プロダクツ**/
#sect_products{padding-bottom: 0;}
#sect_products .products_bg{background-color: #e3ebed;padding-bottom: 100px;background-position: center top;background-image: url(../img/prod_bg.png);background-size: 100% auto;background-repeat: no-repeat;}
/*
#sect_products ul.prod_ul li{ display: flex; min-height: 400px; background-color: #fff;}
#sect_products ul.prod_ul li .prod_txt{ width: 63.5%;}
#sect_products ul.prod_ul li .prod_photo{ position: relative; width: 37.5%; overflow:hidden; height: 100%;}
#sect_products ul.prod_ul li .prod_photo img{ position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit-transform: translateY(-50%) translateX(-50%); width: auto; height: auto; min-width: 100%; min-height: 100%; max-width: inherit;}
*/
#sect_products ul.prod_ul li{ background-color: #fff; display: flex; position: relative; width: 100%; transition: all .4s ease 0s;}
#sect_products ul.prod_ul li.prod_hidden{ visibility: hidden; opacity: 0; height: 0; margin: 0; padding:0; min-height: initial;}
#sect_products ul.prod_ul li.prod_visib{ visibility: visible!important; opacity: 1!important; margin-bottom: 4em!important; min-height: 400px!important; }
[class*="comm_btn"]#more_btn{font-size: 1.2rem; min-width: 400px;}

#sect_products ul.prod_ul li .prod_txt{ width: 63.5%; padding: 3em 4em; display: flex; align-items: center;}
#sect_products ul.prod_ul li .prod_txt [class*="mid_Mtitle"] {letter-spacing: normal; font-size: 1.6rem;}
#sect_products ul.prod_ul li .prod_txt [class*="mid_Mtitle"] .f_alph{ letter-spacing: 0.05em; font-size: 180%; font-weight: 600; display: inline-block; margin-right: 0.2em;}
#sect_products ul.prod_ul li .prod_txt [class*="mid_Mtitle"] .f_alph:after{ content: "/"; font-size: 56%; display: inline-block; vertical-align: baseline; margin-left: 0.4em; font-weight: 500; line-height: 1em;}
#sect_products ul.prod_ul li .prod_txt [class*="comm_btn"]{ margin-top: 2em; min-width: 300px; font-size: 1.2rem;}

#sect_products ul.prod_ul li .prod_photo{overflow: hidden;width: 37.5%;position: relative;background-repeat: no-repeat;background-size: cover;background-position: center center;}
/*#sect_products ul.prod_ul li .prod_photo img{ position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit-transform: translateY(-50%) translateX(-50%); object-fit: cover;}
#sect_products ul.prod_ul li .prod_photo img.left_just{ left: 0%; transform: translateY(-50%) translateX(0%); -webkit-transform: translateY(-50%) translateX(0%); }
*/
#sect_products ul.prod_ul li .prod_photo img.right_just{ right: 0%; left:auto; transform: translateY(-50%) translateX(0%); -webkit-transform: translateY(-50%) translateX(0%); }
#sect_products ul.prod_ul li:nth-child(2n) .prod_txt{ order: 1;}



/**ロケーション**/
#sect_lacation{}
#sect_lacation .location_cont {display:flex; justify-content: space-between; margin-bottom: 5em;}
#sect_lacation .location_cont .location_btn{ padding-left: 1em;}
#sect_lacation .location_cont [class*="comm_btn"]{white-space: nowrap;}
#sect_lacation .location_gmap{ height: 600px;}

/**コンタクト**/
#sect_contact{ padding-bottom: 0;}
#sect_contact .contact_bg {background-color: #ededed; padding-bottom: 60px;}
#sect_contact .contact_cont{ background-color: #fff; padding: 3.2em; display: flex; justify-content: space-between; align-items: stretch;}
#sect_contact .contact_cont [class*="mid_Mtitle"]{ margin-bottom:0.5em; }
#sect_contact .contact_cont .contact_txt{padding-right: 2em;}
#sect_contact .contact_cont .contact_add{ border-left: 1px solid #d1d1d1; padding-left: 3em; align-items: center; display: flex;}
#sect_contact .contact_cont .contact_add [class*="comm_btn"]{font-size: 1.2rem;}
#sect_contact .contact_sns{ display: flex; flex-wrap: nowrap; justify-content: center; padding-top: 4em; align-items:center;}
#sect_contact .contact_sns li{ margin:0; }
#sect_contact .contact_sns li a{ display: block; }
#sect_contact .contact_sns li img{ width: 60px; height: auto; }
#sect_contact .contact_sns li.f_alph{ font-weight: 800; color: #646565; margin-right: 0.75em}
#sect_contact .contact_sns li.f_alph:after{ content: ""; width: 0.75em; height: 0.75em; margin-left: 0.5em; display: inline-block; background-repeat: no-repeat; background-image: url(../img/arr_black.svg); background-size: contain; background-position: center;}

/* ##### responsive ##### */
@media screen and (max-width: 768px) {
   body#top{}
   
    #sect_fview{ min-height: initial; }
    #sect_fview #fview_cont{width:100%; padding: 0 4%; }
    #sect_fview #fview_flex{}
    #sect_fview #fview_flex #fview_cont h1.event_name{ font-size: 4.6rem; }
    #sect_fview #fview_flex #fview_cont h1.event_name .event_year{ }
    #sect_fview #fview_flex #fview_cont h2.event_term{ font-size: 1.2rem;}
    #sect_fview #fview_flex #fview_cont h2.event_term small{}
    #sect_fview #fview_flex #fview_cont [class*="comm_btn"]{ font-size: 1.2rem; }

	#sect_fview a.scroll_btn{ text-align: center; border-top-left-radius: 0.4em; border-top-right-radius: 0.4em; width: 160px; color: #d46a99; padding: 0.5em 0; padding-left: 1em; position: absolute; bottom: 0; left:0; right:0; display: inline-block; background-color: #fff; margin: auto; font-family: 'Roboto', sans-serif;}
	#sect_fview a.scroll_btn:after{ content: ""; display: inline-block; width: 0.8em; height: 0.8em; background-image: url(../img/arr_pink.svg); background-repeat: no-repeat; background-size: contain;	vertical-align: middle;	-ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); background-position: center top; margin-left: 0.5em;}

    /**コンセプト**/
    #sect_contept{}


    /**プロダクツ**/
    #sect_products{}
    #sect_products .products_bg{ padding-bottom: 64px;}
    #sect_products ul.prod_ul li{ min-height: initial; flex-direction: column; margin-bottom: 8vw;}
    #sect_products ul.prod_ul li .prod_txt{ width: 100%; padding: 2.5em; display: block;}
    #sect_products ul.prod_ul li .prod_txt [class*="comm_btn"]{min-width:initial;}
    #sect_products ul.prod_ul li .prod_txt [class*="mid_Mtitle"] .f_alph{ display: block; margin-right: 0;}
    #sect_products ul.prod_ul li .prod_photo{ overflow: hidden; width: 100%; position: relative; }
    #sect_products ul.prod_ul li .prod_photo:before{ content:""; display: block; padding-top: 66.6%;}
    #sect_products ul.prod_ul li .prod_photo img{ }
    #sect_products ul.prod_ul li .prod_txt{ order: 1;}

    /**ロケーション**/
    #sect_lacation{}
    #sect_lacation .location_cont {flex-direction: column;}
    #sect_lacation .location_cont .location_txt{ padding-bottom: 3em;}
    #sect_lacation .location_cont .location_btn{ padding-left: 0;}
    #sect_lacation .location_cont [class*="comm_btn"]{}
    #sect_lacation .location_gmap{ height: 75vh; margin: 0 calc(50% - 50vw); width: 100vw;}

    /**コンタクト**/
    #sect_contact{ padding-bottom: 0;}
    #sect_contact .contact_bg {padding-bottom: 64px;}
    #sect_contact .contact_cont{ background-color: #fff; padding: 2.4em; flex-direction: column;}
    #sect_contact .contact_cont [class*="mid_Mtitle"]{ margin-bottom:0.5em;}
    #sect_contact .contact_cont .contact_txt{padding-right: 0;}
    #sect_contact .contact_cont .contact_add{ padding-top: 2em; margin-top: 2em; padding-left: 0; border-left-style: none; border-top: 1px solid #d1d1d1;}
    #sect_contact .contact_cont .contact_add [class*="comm_btn"]{font-size: 1.2rem;}
    #sect_contact .contact_sns { flex-wrap: wrap; }
    #sect_contact .contact_sns li{ }
    #sect_contact .contact_sns li a{  }
    #sect_contact .contact_sns li img{ }
    #sect_contact .contact_sns li.f_alph{ margin-right: 0; width: 100%; text-align: center;}
    #sect_contact .contact_sns li.f_alph:after{ margin-left: 0; display: block; margin: auto; transform:rotate(90deg);  }

}
