﻿/*fonts*/
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Gothic&display=swap');
:root{--font-jp: "Sawarabi Gothic", sans-serif;}
h1, h2, h3, h4, .f_contact_btn p, #topCms .cmstitle p, .pagetitle .title_box p, .catch, .pc_nav li .page_title, #sp_nav .sp_nav_inner .l-menu .l-menu_cms{
    font-family: var(--font-jp);
}

/* all page */
#fakeloader{display: none;}

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
#google_privacy a{color: #160a0a;}
:root{
	--color1: #03A2ED;
	--color2: #F4F4F4;
	--color4: #e5e5e5;
}

.txt_color1, .hvr_txt_color1:hover{color: var(--color1);}

/* background-color */
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1);}
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2);}

/* border-color ※!important */
.border_color1, .hvr_border_color1:hover{border-color: var(--color1);}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4);}


/* header */
.header .pc_nav {display: none !important;}

/* footer */


/* top ----------------------------------------------------------------*/

/* main img */
#main_img .swiper-slide {opacity: 0.3 !important;}
#main_img::before{display: none;}
.catch.slide_ver {
    right: auto;
    bottom: auto;
    top: 55%;
    left: 49%;
    transform: translate(-50%, -50%);
    padding-bottom: 0;
    padding-right: 0;
}
#main_img .catch .catch_txt {
    width: calc(100% + 100px);
    max-width: 1050px;
    margin-bottom: -32%;
}
#main_img .catch .catch_main {
    width: 100%;
    max-width: 950px;
}
.anim_type2{
	position: relative;
	animation-name: anim_type2;
	animation-iteration-count: infinite;
	animation-duration: 0.1s;
	animation-direction: alternate;
	animation-timing-function: steps(2);
	transition-duration: .3s;
	transition-property: transform;
}
@keyframes anim_type2 {
	0% {bottom: 0;}
	100% {bottom: -3px;}
}

/* main */

/* intro */


/* contents */
#content{position: relative;}

#content1 .box a .bg {filter: blur(0);}
#content1 .box a:hover .bg {
    filter: blur(3px);
    transform: translate(-50%, -50%) scale(1.1);
}
#content .box_title {letter-spacing: 1px;}
#content .box_title br{display: none;}

/* cta */
.footer_contact:before{display: none;}
.f_contact_btn a {
    padding: 0;
    border-radius: 0;
    backdrop-filter: none;
    background: none;
}
.f_contact_box {padding-top: 10px;}
.f_contact_btn a:hover {background-color: #fff;}
/* どきどき収縮 */
.cta_style7{
  animation: cta_style7 2s ease-out infinite;
  opacity: 1;
}
@keyframes cta_style7 {
  0%, 40%, 60%, 80% {transform: scale(1.0);}
  50%, 70% {transform: scale(0.95);}
}

/* under page ----------------------------------------------------------------*/
.pagetitle {
    padding-top: 0;
    padding-bottom: 70px;
    margin-top: 70px;
}
.pagetitle h2 {
    font-size: calc(1rem + 45px);
    letter-spacing: 1px;
}
.pagetitle .title_box p {
    font-size: calc(1rem + 95px);
}
.cate_wrap .cate_list li a{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-left: 10px;
    padding-right: 10px;
}

/* ---------- 1536px ---------- */
@media screen and (max-width: 1536px){}
/* ---------- 1366px ---------- */
@media screen and (max-width: 1366px){}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.header .logo1 {max-width: 200px;}
#main_img {max-height: 50vh;}
.catch.slide_ver {
    left: 42%;
    transform: translate(-42%, -50%);
}
.pagetitle h2 {font-size: calc(1rem + 30px);}
.pagetitle .title_box p {font-size: calc(1rem + 65px);}
#bottom_tel {right: 60px;}
#bottom_tel a {height: 60px;}
#page_top {
    width: 60px;
    height: 60px;
}
.copy {padding-bottom: 65px;}
#content .box_title br{display: block;}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#main_img {padding-top: 40%;max-height: 100vh;}
.catch.slide_ver {
    left: 50%;
    transform: translate(-50%, -50%);
    padding-top: 25px;
}
.catch:after {display: none;}
#main_img .catch .catch_txt {
    width: 90%;
    margin: 0 auto -20% auto;
}
.f_contact_box {padding: 30px;padding-top: 20px;}
.pagetitle h2 {font-size: calc(1rem + 11px);}
.pagetitle .title_box p {font-size: calc(1rem + 25px);}
#bottom_tel {right: 50px;}
#bottom_tel a {height: 50px;}
#page_top {
    width: 50px;
    height: 50px;
}
.pagetitle .title_box {margin-top: 40px;}
.pagetitle h2 {line-height: 0;}

}

/*20240502*/
#page1{overflow: hidden;}
#intro2:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(70, 75, 75, 0.4);
    top: 0;
    left: 0;
    backdrop-filter: blur(40px);
    -webkit-backdrop-filter: blur(40px);
}
#intro2 .intro_inner {
    z-index: 1;
    text-shadow: 1px 1px 20px rgba(51, 51, 51, 0.65);
}
#intro2 .intro_title_en {
    left: auto;
    right: 20px;
}
.menu_btn span {height: 3px;}

/*20240531*/
.menu_btn span {background-color: #f1f2f3;}
.menu_btn:hover span{background-color: #dde1e5;}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#intro2 .intro_title_en {
    right: 1px;
}
}




