@charset "utf-8";

/*========================

sp_common.css

========================*/
@media screen and (max-width:768px) {

.pc { display:none; }
.sp { display:flex; }


.btn label,
.btn a {
 font-size: calc(1.3rem + ((1vw - 0.48rem) * 0.6944));
}

/*---------------------------------------------
alert
---------------------------------------------*/
.alert {
 padding: 10px 15px;
}

.alert i {
 font-size: calc(1.3rem + ((1vw - 0.48rem) * 0.6944));
}

.alert span {
 font-size: calc(1.3rem + ((1vw - 0.48rem) * 0.6944));
}

/*---------------------------------------------
header
---------------------------------------------*/
#header #header_cont {
 padding:0;
}

#header #header_cont #header_left h1 a img {
 max-width:110px;
}

#header #header_cont #header_right {
 position:fixed;
 /*right:90px;*/
 left:150px;
 /*bottom:0;*/
}

#header #header_cont #header_right .btn_group ul {
 column-gap:10px;
}

#header #header_cont #header_right .btn_group ul li:nth-child(2) {
 display:none;
}

#header #header_cont #header_right .btn a {
 min-width:auto;
 padding:10px 25px 10px 20px;
}

#header #header_cont #header_right .btn a:after {
 font-size:1.0rem;
 right:10px;
 margin-top:-5px;
}

#header #header_cont #h_menu {
 display:flex;
 position:fixed;
 top:10px;
 right:10px;
}

#header.fixed #header_cont #header_right .btn a {
 padding:10px 25px 10px 20px;
}

/*---------------------------------------------
bread_crumb_list
---------------------------------------------*/
.bread_crumb_list {
 padding:0;
}

.bread_crumb_list .bread_crumb_list_cont ol {
 padding:25px 15px;
 width:100%;
}

/*---------------------------------------------
footer
---------------------------------------------*/
#footer {
}

#footer #footer_cont {
 padding-bottom:64px;
}

#footer #footer_cont #footer_head {
 padding:20px;
 row-gap:20px;
}

#footer #footer_cont #footer_head #footer_head_cont {
 flex-direction:column;
 row-gap:20px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left {
 flex-direction:column;
 justify-content:center;
 min-width:100%;
 width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .gmap {
 aspect-ratio: 2 / 1;
 margin:0 auto;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .gmap iframe {
 aspect-ratio: 2 / 1;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info img {
 display:none;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right {
 align-items:center;
 justify-content:center;
 max-width:100%;
 width:100%; 
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right > ul {
 width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel {
 align-items:center;
 justify-content:center;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl {
 min-width:200px;
 max-width:260px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour {
 width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour > p {
 white-space:nowrap;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl dt {
 line-height:1.6;
}

#footer #footer_bottom {
 padding:0;
}

#footer #footer_bottom #footer_bottom_cont {
 padding:40px 20px;
 row-gap:30px;
}

#footer #footer_bottom #footer_bottom_cont h2 {
 font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944)); 
}

#footer #footer_bottom #footer_bottom_logo img {
 max-width:160px;
}

#footer #footer_bottom #footer_bottom_logo h3 {
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944)); 
}

#footer #footer_bottom #footer_bottom_cont h4 {
 font-size: calc(1.1rem + ((1vw - 0.48rem) * 0.6944)); 
}

/*---------------------------------------------
pagetop
---------------------------------------------*/
#pagetop {
 position:fixed;
 right:10px;
 bottom:80px;
}

#pagetop a {
 align-items:center;
 /*background-color:var(--green);*/
 background-color:var(--sub);
 border-radius:50%;
 flex-direction:column;
 display:flex;
 justify-content:center;
 position:relative;
 height:70px;
 width:70px;
}

#pagetop a:after {
 font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944)); 
 top:10px;
}

#pagetop a span {
 font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944)); 
 padding-top:5px;
}

/*---------------------------------------------
footer_fixed_menu
---------------------------------------------*/
#footer_fixed_menu {
 background-color:var(--white);
 border-top:1px solid var(--gray_dd);
 bottom:0;
 left:0;
 padding:0;
 position:fixed;
 z-index:20;
 overflow-x:scroll;
 width:100%;
}

#footer_fixed_menu ol {
display: flex;
min-width: 480px;
width: 100%;
}

#footer_fixed_menu ol li {
 display:flex;
 justify-content:space-evenly;
 line-height:1.6;
 text-align:center;
 width:calc(100% / 6);
 min-width:80px;
}

#footer_fixed_menu ol li a {
 background-color:var(--gray_f7);
 display:flex;
 border-left:1px solid var(--gray_dd);
 height:100%;
 justify-content: center;
 padding:5px 5px 5px;
 width:100%;
}

#footer_fixed_menu ol li a:hover {
 background-color:var(--yellow);
}

#footer_fixed_menu ol li:first-child a {
 border-left:none;
}

#footer_fixed_menu ol li a dl {
 display:flex;
 justify-content: center;
 flex-direction:column;
 row-gap:3px;
}

#footer_fixed_menu ol li a dl dt {
 align-items:center;
 height:20px;
 display:flex;
 justify-content:center;
}

#footer_fixed_menu ol li a dl dt img {
 height:20px;
 width:auto;
 fill: #42AFE3;
}

#footer_fixed_menu ol li:nth-child(2) a dl dt img {
 height:15px;
}

#footer_fixed_menu ol li a dl dd {
 font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
 font-weight:600;
 line-height:1.1;
}


/*---------------------------------------------
nav
---------------------------------------------*/

#nav #nav_cont #nav_menu ul li a dl dd {
 font-size: calc(1.2rem + ((1vw - 0.48rem) * 0.6944));
 line-height:1.4;
}


}