

/*　基本設定　*/
#sp-header{
	box-shadow: none !important;
}


#sp-copyright{
	background: #2e662a;	
	padding-right: 20px;
}
#sp-user1{
	padding: 20px 0px;
	color: #f5f4f4;
	background: #2e662a;
	font-size: 8px;
	text-align: right;
	font-family: 'Zen Old Mincho', sans-serif;
}
#sp-user2{
	background: #2e662a;	
	font-family: 'Zen Old Mincho', sans-serif;
}
#sp-user2 a{
	padding: 20px 0px;
	font-size: 14px;
	color: #f5f4f4 !important;	
}
#sp-footer p{
	line-height: 1.4;
}
.company-info{
	padding-top: 30px;
	font-family: "Noto Sans JP", "Source Han Sans JP", "源ノゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic UI", "YuGothic", "Meiryo", sans-serif;;
	letter-spacing: 2px;
}
#sp-user1{
	font-family: "Noto Sans JP", "Source Han Sans JP", "源ノゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic UI", "YuGothic", "Meiryo", sans-serif;;
	letter-spacing: 1px;	
}


.back_white {
    display: inline-block;              /* 改行しても背景が維持される */
    background-color: #fff;             /* 白背景 */
    padding: 0.5rem 0.8rem;
    line-height: 1.8;
    text-align: left !important;                   /* 左寄せ */
    box-decoration-break: clone;        /* 行ごとに背景を複製 */
    -webkit-box-decoration-break: clone;/* Safari用 */
}

@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
	.sp_p p{
		line-height: 2rem;
	}
	#sp-footer #sp-footer2{
		text-align: left !important;
	}

	.article-padding{
		padding-left: 12px !important;
		padding-right: 12px !important;	
	}

}
@media screen and (max-width: 1200px) {
	/* 930px以下に適用されるCSS（スマホ用） */
	.sp_p p{
		line-height: 2rem;
	}
	#sp-header-topbar{
		display: none;
	}
}
@media(min-width: 992px){
	.container{
		/*max-width: 950px !important;*/
	}
}
@media (max-width: 1199px) {
    .sp-megamenu-parent>li>a, .sp-megamenu-parent>li span {
    	padding: 0px 7px;
    }
}


/* メニュー部　*/
/* display:flex が指定されているとき */
ul.h-sep {
  display: block;  /* flexを解除して縦並びにする */
}

/* float:left が指定されているとき */
ul.h-sep > li {
  float: none;  /* float指定を解除 */
}

/* display:inline や inline-block が指定されているとき */
ul.h-sep > li {
  display: list-item;  /* 本来のブロック要素に戻す */
}


/* 横並び＋項目間セパレーター */
@media screen and (min-width: 480px) {
	.h-sep{
	  --sep-color: #ffffff;   /* 線色 */
	  --sep-width: 1px;       /* 線の太さ */
	  --item-xpad: 12px;      /* 左右余白 */
	  display: flex;
	  flex-wrap: wrap;        /* 折返し許容（不要なら削除） */
	  margin: 0; padding: 0;
	  list-style: none;
	}

	.h-sep > li{
	  position: relative;
	  padding-left: var(--item-xpad);
	  line-height: 1.6;
	  white-space: nowrap;
	}

	/* 2個目以降の先頭にだけ縦線を描く */
	.h-sep > li + li::before{
	  content: "";
	  position: absolute;
	  left: 0;
	  top: .3em;              /* 文字高さ寄りに短めの線 */
	  bottom: .3em;
	  width: var(--sep-width);
	  background: var(--sep-color);
	}
}

#sp-footer .container-inner{
	border-top:none !important;
}



/* スクロールメニュー */
.sp-scroll-up{
	bottom: 20px !important;
}



/* スマホサイズ時（2列目を先頭へ） */
@media (max-width: 767px) {
  #sp-footer .row{
  	flex-direction: column-reverse !important;
  }
  #sp-footer2{
  	padding-bottom: 50px;
  	text-align: left !important;
  }
}

.sp-dropdown.sp-dropdown-main.sp-menu-right {
	width: 190px !important;
}

.store-title h2{
	letter-spacing: 13px !important;
}
.stores p {
    line-height: 1.3;
}
.support p, .support .content{
    line-height: 1.5;
}


.support .sppb-carousel-extended-item img{
	width: auto !important;
	height: auto !important;
	border-radius: 0px !important;
}

.support .sppb-carousel-extended-dots{
	line-height: 0px;
}

@media screen and (max-width: 480px) {
	.support .sppb-carousel-extended-item{
		/*margin-right: 5px !important;*/
	}
}

@media (max-width: 576px) {
    .logo-image-phone {
        height: 32px !important;
    }
    .sp-module.uto-footer-logo img {
    	width: 100px;
    }	
    #sp-footer{
    	padding: 0px !important;
    }
    #sp-footer p{
    	font-size: 12px !important;
    	line-height: 0.5;
    }
}

.shop-detail p{
	line-height: 9px;
}





.f_title {
  font-size: 20px;
  font-weight: bold;
  flex-shrink: 0; /* タイトルを縮ませない */
  letter-spacing: 4px;
}

.f_title-line {
  border-top: 1px solid #234322;
  flex: 1; /* 線を残り幅いっぱいに伸ばす */
}

.f_title-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap; /* 改行禁止 */
  gap: 10px;           /* タイトルと線の間隔 */
}

  .f_title-wrapper .f_title {
    padding: 0px 8px 0px 0px;
  }

  .f_content {
    font-size: 20px;
    margin-bottom: 22px;
    text-align:center;
  }

  .f_bottom-line {
    border-top: 1px solid #234322;
    width: 100%;
    margin: 15px auto 0 auto;
  }


@media (max-width: 576px) {
  .f_title {  
    font-size: 14px;
  }
   .f_content {
    font-size: 14px;
     font-weight: bold;
  }
}

.f_notice{
  padding-top:10px;
  font-size:small;
}


