﻿/* all page */
/*fonts*/

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1, .hvr_txt_color1:hover{color: #d30000;}
.txt_color2, .hvr_txt_color2:hover{color: #e6e6e6}
.txt_color3, .hvr_txt_color3:hover{color: #111;}
.txt_color4, .hvr_txt_color4:hover{color: #e9e9e9;}

/* background-color */
/*.bg_color1, .hvr_bg_color1:hover{background-color: #d30000;}*/
.bg_color1, .hvr_bg_color1:hover{background: linear-gradient(0deg, rgba(123,0,7,1) 0%, rgba(211,0,0,1) 100%);}
.bg_color2, .hvr_bg_color2:hover{background-color: #e6e6e6}
.bg_color3, .hvr_bg_color3:hover{background-color: #7b0007;}
.bg_color4, .hvr_bg_color4:hover{background-color: #e9e9e9;}

/* border-color ※!important */
.border_color1, .hvr_border_color1:hover{border-color: #d30000;}
.border_color2, .hvr_border_color2:hover{border-color: #e6e6e6}
.border_color3, .hvr_border_color3:hover{border-color: #7b0007;}
.border_color4, .hvr_border_color4:hover{border-color: #e9e9e9;}

#wrap{overflow: hidden;}
#sp_nav .nav_bg {
    background: linear-gradient(0deg, rgba(123,0,7,1) 0%, rgba(211,0,0,1) 100%)!important;
}
#header .menu_stick.stick_trans span:first-of-type, #header .menu_stick.stick_trans span:last-of-type {
    background: #fff;
}
#header .menu_stick.stick_trans span:not(:first-of-type):not(:last-of-type) {
    background: transparent;
}

/* header */
#logo a{padding: 20px;}
#header.headtrans #logo a {padding: 20px 10px;}

/* top ----------------*/

/* main img */
#video{ height: 100vh; }
#video video{
width: 100%!important;
height: auto;
top: 50%;
left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
#main_img .main_bg {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0)0%, rgb(199 0 11)50%, rgba(0, 0, 0, 0)100%)!important;
    opacity: 0.6;
}
.main_txt_wrap .main_txt{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    padding: 0 10px;
}

/* main */

/* intro */
#intro .intro_top{
    max-width: 600px;
}

/* contents */
.con_btn a{
    border-radius: 30px;
    padding: 20px 80px;
    line-height: 1;
    font-weight: bold;
}
/*アニメーション*/
.animate {
  opacity: 0;
  transition: all 2s;
}
.animate.show {
  opacity: 1;
}
.animate.show:nth-of-type(1) {
  transition-delay: 0.2s;
}
.animate.show:nth-of-type(2) {
  transition-delay: 0.4s;
}
.animate.show:nth-of-type(3) {
  transition-delay: 0.6s;
}
.animate.show:nth-of-type(4) {
  transition-delay: 0.8s;
}
.animate.show:nth-of-type(5) {
  transition-delay: 1.0s;
}
.animate.show:nth-of-type(6) {
  transition-delay: 1.2s;
}
.animate.show:nth-of-type(7) {
  transition-delay: 1.4s;
}
.animate.show:nth-of-type(8) {
  transition-delay: 1.6s;
}


/* topcms */

/* footer */


/* under page */
#page_title .page_title_bg {
    background: #000;
    opacity: 0.5;
}
#page_title h2{
    font-size: 50px;
    line-height: 1.5;
}
#page_title p{
    font-size: 20px;
    line-height: 1;
}
.btn_container a{
    width: 100%;
    text-align: center;
    font-size: 16px;
    padding: 20px 0;
}

/* ---------- 1400px ---------- */
@media screen and (max-width: 1400px){
#main_img,#video{ height: 100vh!important; }
#video video{
    width: auto!important;
    height: 100vh;
}

}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#loader img{
    width: 200px;
}
#logo a {
    padding: 20px 0;
}
#logo a img {
    width: 200px!important;
}
#main_img,#video{ height: 40vh!important; }
#video video{
width: 100%!important;
height: auto;
}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#logo a img {
    width: 130px!important;
}
#main_img,#video{ height: 31vh!important; }
.main_txt_wrap .main_txt{
    max-width: 190px;
    left: auto;
    right: 0;
}
#page_title h2 {
    font-size: 34px;
}
#page_title p {
    font-size: 18px;
}

}


/*20221219修正*/
.bg_color1, .hvr_bg_color1:hover {
    background: linear-gradient(0deg, rgba(123,0,7,1) 0%, rgba(164,0,4,1) 100%);
}
.body_txt {
    writing-mode: vertical-rl;
    font-size: 13rem;
    opacity: .1;
    top: 0;
    left: -70px;
    white-space: nowrap;
    font-family: serif;
    z-index: 1;
    line-height: 1;
}
#intro .intro_item, #footer .map, #top_cms .top_cms_wrap{
    z-index: 2;
}
#top_cms .more{
    z-index: 2;
    position: relative;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.body_txt {font-size: 15rem;}
}

/*20230106公開後修正*/
.txt_color5{color: #8c8c8c;}
#intro .intro_top p{
	line-height: 1.5;
	font-size: 8rem;
	display: inline-block;
    background: rgb(211,0,0);
    background: linear-gradient(180deg, rgba(211,0,0,1) 0%, rgba(35,1,14,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(211,0,0,1) 0%, rgba(35,1,14,1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
.con2_box .con2_item {
    width: 32.1%!important;
    margin: 0.3%;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#intro .intro_top p {font-size: 5rem;}
}
/* ----------  ---------- */
@media screen and (max-width: 667px){
#intro .intro_top p {font-size: 4rem;}
.con2_box .con2_item {
    width: 49.4%!important;
    margin: 0.3%;
}
}

