@charset "UTF-8";
/*
border: 1px solid red;
*/
.top-top {
height: 4.6rem;
width:100%;
}
header{
background: var(--bg-color01);
/*position: absolute;*/
/*top: 0; 
left: 0; */
padding: 1rem 0 0 1rem;
z-index: 10; 
height: 4.6rem;
width:100%;
opacity: 1;
/*
position: fixed; 
*/

}

header .logo{ /*display: inline-block; line-height: 0;*/ 
font-family: var(--base-font); 
font-size: 1.4rem;
color: var(--sub-color01);}
header .logo span{color:var(--sub-color02); letter-spacing: 0.01em}
header .logo-img {width: 36px;}

/*ヘッダー問い合わせボタン*/
.footer-btn{ display:none;}
.float-btn{ display: flex; position: fixed; top: 0.25rem; right: 6.3rem; z-index: 9970; font-weight: bold;}
.float-btn li + li{ margin-left: 0.5rem; }
.float-btn li a{ width: 12rem; height: 2.2rem; border-radius: 1.6rem; display: flex; justify-content: center; align-items: center; background: #fff; border: solid 1px; color: var(--sub-color01); position: relative; padding-right: 1rem; }
.float-btn li:nth-of-type(2) a{ background: var(--sub-color03); color: #fff; }
.float-btn li a span{ padding-left: 2.2rem; background: no-repeat left center/2rem; background-size: 1.5rem;/*line-height: 2;*/ }
.float-btn li:nth-of-type(1) a span{
background-image: url(../images/common/icon-sp.svg);
font-size: 1.1rem; color: var(--sub-color04);
}
.float-btn li:nth-of-type(2) a span{
background-image: url(../images/common/icon-mail.svg);
}
.float-btn li a:after{ content: ''; width: .6rem; height: .6rem; border-bottom: solid 1px; border-right: solid 1px; position: absolute; top: 50%; right: 1rem; transform: translateY(-50%) rotate(-45deg); }
.tel-txt {color: #001b68; border-color: #001b68;}
.link-txt {color: #dec38c;}
/* ハンバーガーメニューのスタイル */
.hamburger {
position: fixed;
top: 0;
right: 1rem;
width: 69px;
cursor: pointer;
z-index: 100; /* メニューより前に表示 */
background-color: var(--sub-color01);
padding: 4px 8px;
border-radius: 0 0 6px 6px;
}
.hamburger span {
display: block;
height: 1px;
width: 100%;
background-color: #fff; /* 3本線の色 */
margin: 6px 0 0 0;
transition: 0.6s; /*ボタンの変化速度*/
}
.hamburger-txt{margin-top:2px; text-align: center; color: #fff;/*menu文字色*/}


/* メニューのスタイル */
.menu {
position: fixed;
top: 0;
right: 0;
padding: 20px;
width: 40%;
height: 100%;
font-size: 1rem;
font-weight: 300;
color: var(--sub-color01);
background: var(--bg-color02);
opacity: 0; /* 初期状態は透明 */
transition: opacity 0.6s ease; /* フェードインアウト */
box-sizing: border-box;
z-index: 15;
overflow: auto;/*スクロール可能*/
line-height: 2.4rem;
padding: 5rem 0;
pointer-events: none; /* クリック不可 */
}
.menu-logo-main {
display: flex;
justify-content: center;
padding: 1rem 0;
}
.menu-sitettl {
font-size: 1.5rem;
text-align: center;
}
.menu-sitettl span {color: var(--sub-color02);}
/* メニューが開いたとき */
.menu.open {
opacity: 1!important; /* 開いたメニューの透明度 */
pointer-events: auto; /* クリック可能にする */
}


@media (max-width: 1360px) {
.menu {
width: 50%;
}
}
@media (max-width: 1060px) {
.menu {
width: 60%;
}
}
@media(max-width: 890px) {
.menu {
width: 100%;
}
}

/* バツ印に変わるハンバーガーボタン */
.hamburger.active span:nth-child(1) {transform: rotate(30deg) translate(5px, 5px);}
.hamburger.active span:nth-child(2) {opacity: 0;}/* 真ん中の線を透明にする */
.hamburger.active span:nth-child(3) {transform: rotate(-30deg) translate(5px, -5px);}
/*パンくずリスト*/
.breadcrumb{
max-width: 1000px;
margin: 0 auto;
font-size: 0.8rem;
font-family: var(--sub-font);
padding: 0.5rem;
color: var(--sub-color01);
display:flex;
}
/*パンくずリスト10文字制限*/
/*
.breadcrumb span {
  display: inline-block;
  max-width: 20ch;   /* 全角10 文字分 */
  /*
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}*/

.breadcrumb ol{
display:flex;
flex-wrap:wrap;
list-style:none;
padding:0;
margin:0;
font-size:14px;
}

.breadcrumb li::after{
content:" > ";
margin:0 6px;
}

.breadcrumb li:last-child::after{
content:"";
}

.breadcrumb a{
text-decoration:none;

}

.breadcrumb span{

}


/*トップへボタン*/
html {
scroll-behavior: smooth;
}
#page_top-pc {
height: 50px;
width: 50px;
position: fixed;
right: 15px;
bottom: 15px;
background: var(--sub-color01);
/*border: solid 2px #000;*/
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
z-index: 2;
}
.pagetop__arrow-pc {
height: 10px;
width: 10px;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
transform: translateX(10%) translateY(25%) rotate(-45deg);
}
#page_top-sp {display: none;}

/* ==============================================
   レスポンシブ
   ============================================== */
/* タブレット (最大幅 1024px) */
@media (max-width: 768px) {
/*問い合わせボタン*/
.float-btn{ display:none;}

.footer-btn{ display: flex; position: fixed; top: auto; bottom: 0rem; z-index: 9970; width: 100%; text-align: center; }
.footer-btn li:nth-of-type(1) {width: 100%;background: #fff; padding: 3px 0; color: #090091; }
.footer-btn li:nth-of-type(2) {width: 100%;background: var(--sub-color03); padding: 3px 0; color: #fff;}
.footer-btn li:nth-of-type(3) {width: 20%;  background: var(--sub-color01); padding: 3px 0;}
.footer-btn li a span{ padding-left: 1.7rem; background: no-repeat; background-size: 1.5rem; }
.footer-btn li:nth-of-type(1) a span{
display: inline-block;
background-image: url(../images/common/icon-sp.svg);
}
.footer-btn li:nth-of-type(2) a span{
display: inline-block;
background-image: url(../images/common/icon-mail.svg);
}

/*ページトップへbtn*/
#page_top-pc {display: none!important;}
#page_top-sp {
/*height: 5%;
width: 10%;
position: fixed;
right: 0;
bottom: 0;
background: var(--sub-color01);*/
/*border: solid 2px #000;
border-radius: 0%;
z-index: 2;*/
display: flex;
justify-content: center;
align-items: center;
}
.pagetop__arrow-sp {
height: 10px;
width: 10px;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
transform: translateY(200%) rotate(-45deg);
}
}

@media screen and (max-width: 460px) {

}


@media screen and (max-width: 400px) {

}