@charset "UTF-8";



/*共通部分
------------------------------- */
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
    height: 100%;
    width: 100%;
}
body{
    font-size: 1.3rem;
    font-family: 'Noto Sans JP', 'Meiryo', sans-serif;
    line-height: 2;
    letter-spacing: 1.3px;
    color: #000;
}

@media print, screen and (min-width: 768px) {/*--768pxより大きい場合-- */
body{
		font-size: 1.6rem;
	}
}


a {
    text-decoration: none;
    color:inherit
}
a:hover {
    opacity: 0.9;
}
img {
    max-width: 100%;
}
table {
    width: 100%;
}
.wrapper {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 3%;
}
button{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}
/* 調整用スタイル */
ul,
li {
  list-style: none;
}

/* pankuzulist */
#pankuzulist{
  margin: 10px 0;
}
.pan_list p{
  font-size: 1.2rem;
  font-weight: 500;
}


/*スマホだけ改行*/
.br-sp{ display: none; }
@media screen and (max-width: 767px) {
  .br-sp{ display: block; }
}

/*PCだけ改行*/
.br-pc{ display: block; }
@media screen and (max-width: 767px) {
  .br-pc{ display: none; }
}


/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}
/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}
/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}



/* ボタン
------------------------------- */
a.btn_more {
  display: block;
  width: 210px;
  margin: 0 auto;
  padding: 1.5rem 3rem;
	background-color: #e56826;
	border-bottom: 4px solid #8b5912;
  border-radius: 50px;
  box-sizing: border-box;
  text-decoration: none;
  transition: 0.3s;
  color: #fff;
  letter-spacing: 3px;
  font-size: 1.6rem;
}
a.btn_more:hover {
  background-color: #153d7d;
	border-bottom: 4px solid #0d1137;
  color: #fff;
  opacity: 1;
}


/* header
------------------------------- */
.header{
	width: 100%;
	height: unset;
	transition: top 0.5s ease-in-out;
    background-color: rgb(255 255 255 / 90%);
} 
.header_container{
	display: flex;
	justify-content: space-between;
	padding: 7px 6px 6px;
	align-items: center;
}
.header-left img{
  width: 180px;
}
.header-right{
  display: none;
}
.header-sns{
  margin-right: 20px;
}
.header-sns img{
  width:35px;
  margin-right: 20px;
}
.header-contact{
  color:#13527B;
  font-weight: 700;
}
.contact_btn{
  background-color: #F5F4F2;
  color: #13527B;
  text-align: center;
  padding: 2px 5px;
  border-radius: 30px;
  font-size: 1.8rem;
  border: 2px solid #13527D;
  margin-bottom: 10px;
}
.contact_btn p{
  line-height: 1.6;
}
.header-tel{
	text-align: center;
}
.tel-no{
	font-weight: 800;
	font-family: 'Outfit', sans-serif;
	font-size: 4rem;
	line-height: 1;
	color: #ce271d;
}
.tel-information{
	font-size: 1.4rem;
	letter-spacing: 0;
	font-weight: 500;
}

@media screen and (min-width: 767px) {/*--767px以上 960px未満 -- */
	.header-left img{
		width: 210px;
	}
}

@media print, screen and (min-width: 960px) {/*--960px以上-- */
.header_container{
	padding: 10px 0 0px;
}
.header-left img{
  width: 260px;
}
.header-right{
  display: flex;
}
}


/* navigation
------------------------------- */
.page-nav{
	display:none;
}

@media print, screen and (min-width: 960px) {/*--960px以上-- */
.page-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15px 0;
}
.navigation ul{
  display: flex;
  align-items: center;
  font-weight: 500;
}
.mnav li {
  position: relative;
  list-style: none;
  width: 160px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #3C5260;
}
.mnav li::before {
  content: "";
  position: absolute;
  transform: translateY(-50%); 
  left: 0;
  width: 1px; /* 罫線の幅を調整 */
  height: 60%; 
  background-color: #0078A3; 
  transform: skewX(-30deg); 
}
}

/* スクロールモーション */
.show {
	top: 0 !important;
	background-color:rgb(255 255 255 / 90%); /* スクロール位置が上の場合の背景色 */
  }
  .hide {
	top: -100% !important;
  }

/* sp__menu */
.spmenu_list {
  overflow-x: hidden;
}
.header__inner{
	position:relative;
}
.sp__nav {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  background-color: #fff9d5;
  transition: ease .4s;
	z-index:200;
	overflow-x: hidden; 
}
.sp--navcontainer{
	position:relative;
  overflow-x: hidden; 
}
.spmenu{
	width:100%;
    position: absolute;
    top: 85px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}
.sp--menu_item{
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 90px;
    height: 85px;
    padding: 10px;
    background-color: #fff;
	transition: border-color 0.3s ease-in-out;
}
.sp--nav li{
    padding: 10px 20px;
    border-top: 2px solid #13527B;
    font-size: 1.5rem;
    font-weight: 500;
}
.sp--nav li:last-child{
    border-bottom: 2px solid #13527B;
}
.sp--nav_footer{
	text-align: center;
    padding: 2%;
    padding-top: 260px;
}
.sp--nav_contact_btn{
    background-color: #fff;
    color: #13527B;
    text-align: center;
    padding: 9px 5px;
    border-radius: 30px;
    font-size: 1.8rem;
    border: 2px solid #13527D;
    margin-bottom: 10px;
}
.nav_c{
    font-size: 1.1rem;
    width: 300px;
    margin: 0 auto;
    margin-bottom: 10px;
    padding: 10px 20px;
    display: block;
    background-color: #223C81;
    color: #fff;
    text-align: center;
    border: none;
    border-radius: 5px;
    text-decoration: none;
}

@media screen and (min-width: 767px) {
	.sp__nav {
		position: absolute;
		right: 0;
		left: 50%;
		top: 0;
		width: 50%;
		height: 100vh;
		background-color: #f3f3ed;
		transition: ease .4s;
		z-index: 200;
		box-shadow: -6px 6px 10px 0px rgba(0, 0, 0, 0.11);
	}
	.sp--nav_footer{
		padding-top: 480px;
	}
}

@media print, screen and (min-width: 960px) {
	.sp__nav {
		display:none;
	}
}

/* ナビのリンク */
.nav-items__item a {
  color: black;
  width: 100%;
  display: block;
  text-align: center;
  font-size: 20px;
  margin-bottom: 24px;
}
.nav-items__item:last-child a {
  margin-bottom: 0;
}
@media print, screen and (min-width: 960px) {
  .nav-items__item a {
    margin-bottom: 0;
  }
}


/* ハンバーガーメニュー */
.header__hamburger {
  width: 40px;
  height: 100%;
}
.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
	margin-top: 5px;
}

@media print, screen and (min-width: 960px) {
  .hamburger {
    display: none;
  }
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 1.5px;
  background-color: #05437a;
  position: relative;
  transition: ease .4s;
  display: block;
}
.hamburger span:nth-child(1) {
  top: 0;
}
.hamburger span:nth-child(2) {
  margin: 8px 0;
}
.hamburger span:nth-child(3) {
  top: 0;
}
.hamburger p {
	font-family: 'Outfit', sans-serif;
	font-weight:600;
	color:#05437a;
	margin-top:7px;
}


/* ハンバーガーメニュークリック後のスタイル */
.sp__nav.active {
  transform: translateX(0);
}
.hamburger.active span:nth-child(1) {
  top: 5px;
  transform: rotate(45deg);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  top: -13px;
  transform: rotate(-45deg);
}




/* contentsバナー
------------------------------- */
.tN-bl{
    text-align: center;
    margin-top: 20px;
}
.btn,
a.btn,
button.btn {
    width: 330px;
    font-size: 150%;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 3rem 0;
    cursor: pointer;
    user-select: none;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    border-radius: 0.5rem;
}
a.btn--tN-bl_01 {
  color: #000;
    background-color: #ff924e;
    border-bottom: 5px solid #dc611d;
}
a.btn--tN-bl_01:hover {
  margin-top: 3px;
  color: #000;
  background: #ff924e;
    border-bottom: 2px solid #dc611d;
}
a.btn--tN-bl_02 {
  color: #000;
	background-color: #fde142;
	border-bottom: 5px solid #eeb809;
}
a.btn--tN-bl_02:hover {
  margin-top: 3px;
  color: #000;
  background: #fde142;
	border-bottom: 2px solid #eeb809;
}
a.btn--tN-bl_03 {
  color: #000;
    background-color: #a3dee2;
    border-bottom: 5px solid #7eb8df;
}
a.btn--tN-bl_03:hover {
  margin-top: 3px;
  color: #000;
  background: #a3dee2;
    border-bottom: 2px solid #7eb8df;
}




/* prologue
------------------------------- */
#prologue{
  padding: 5% 0;
}
.prologue-back-img{
  text-align: center;
}
.prologue-back-img img{
  max-width: 70%;
}
.pl-lead{
  margin: 20px 0;
}
.prologue-bl p{
    font-size: 1.3rem;
    font-weight: 500;
    text-align: center;
    letter-spacing: normal;
}

@media print, screen and (min-width: 960px) {/*--960pxより大きい場合-- */
	.prologue-bl p{
	  font-size: 1.7rem;
	}
}

/* top Topics
------------------------------- */
#topTopics{
  padding: 0 0 5%;
	background-color: #fbeacf;
}
.topTopics-bl{
  display: block;
    text-align: center;
}
.top-news{
    margin-bottom: 2%;
	padding: 1rem 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.top-news_list{
  padding: 0px 15px;
}
.top-news__item{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    border-bottom: 1px solid #D9D9D9;
    padding: 6px 0 16px 0;
    margin: 0 -10px 0 0;
    background-color: #fff;
}
.top-news__item>div {
  margin: 10px 7px 0px 10px;
}
.top-news__item a>div {
  margin: 10px 7px 0px 10px;
}
.top-news__item-date {
  font-weight: 500;
}
.top-news__item-title {
  flex: 1 1 0%;
  min-width: 50%;
}

@media print, screen and (min-width: 960px) {/*--960px以上-- */
	.topTopics-ttl {
		padding: 15px 0px 15px 10%;
	}
}


/* topChirahi
------------------------------- */
#topChirahi{
  background-color: #FFF8ED;
  padding-bottom: 5%;
}
.ttl_container{
  text-align: center;
  padding: 5% 0 2%;
}
.item_ttl h2{
  font-size: 2rem;
  color: #E64C42;
}
.new-chirahi ul{
  display: flex;
    justify-content: center;
}
.new-chirahi ul li{
  margin: 0 15px;
    width: 300px;
}
.new-chirahi p{
  text-align: center;
  margin-bottom: 15px;
  font-weight: 500;
}

@media print, screen and (min-width: 960px) {/*--960pxより大きい場合-- */
	.item_ttl h2{
	  font-size: 3.5rem;
	}
}


/* tel-info
------------------------------- */
#tel-info{
  background-color: #FFE6BF;
  padding: 3% 0;
}
.tel-info-block{
  text-align: center;
}
.tel-info-block a{
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 3rem;
  color: #d40000;
  line-height: normal;
}

@media print, screen and (min-width: 960px) {/*--960pxより大きい場合-- */
	.tel-info-block a{
	  font-size: 7rem;
	}
}


/* footer
------------------------------- */
footer{
  border-top: 1px solid #D3D3D3;
}
.page-footer{
    padding: 10% 10px;
    display: block;
}
.footer-address{
	text-align:center;
}
.footer-logo img{
  width: 50%;
}
.footer-access{
  font-size: 1.4rem;
  margin: 10px 0;
  line-height: 1.5;
}
.footer-pp{
  font-size: 1.1rem;
}
.small{
  text-align: center;
  padding: 10px 0;
  background-color: #13527B;
  color: #fff;
}
.copyright{
  font-size:1rem ;
}
.link{
    margin: 5% 0;
}
.link a{
    background-color: #e56826;
    padding: 15px 50px;
    border-radius: 50px;
    margin: 15px 0;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
    border-bottom: 4px solid #8b5912;
}
.FB{
    margin-top: 20px;
    text-align: center;
}

@media print, screen and (min-width: 768px) {/*--768pxより大きい場合-- */
	.page-footer{
		padding: 3% 0;
		display:flex;
	}
	.footer-address{
		text-align:left;
	}
}


/* page title
------------------------------- */
#page_title{
    background-color: #e47300;
}
.page_title_block{
  padding:5% 0;
  text-align: center;
}
.page_title_block h2{
  font-size: 3rem;
  letter-spacing: 3px;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
}


/* page
------------------------------- */

/* archive */
.main_column {
    margin: 0 auto;
    padding-top: 4%;
    padding-bottom: 4%;
}
.topics_contents {
    padding: 0;
    flex: 1 1 70%; /* フレックスボックスの幅を調整 */
}
.main_inner {
    padding: 0;
    max-width: 100%;
    margin: 0;
}
.post {
    margin: 0 0%;
    padding: 0 0 2rem;
}
.post h2 {
	margin: 0px 0 10px;
	padding-bottom: 2px;
	font-size: 130%;
	font-weight: 600;
	color: #E64C42;
	border-bottom: 1px solid #c0d1dc;
}
.wp-block-latest-posts__list li {
    border-bottom: 1px dotted #d0d0d0;
    padding: 10px 0;
}


/* 絶対的イチ押し商品
------------------------------- */
.oshi-cte{
	padding: 3%;
}
.handling-02{
  background: radial-gradient(#DE0101, #9F0000);
  font-size: 23px;
  color: #FFFFFF;
  text-align: center;
  line-height: 30px; /* 行間を調整 */
  padding:20px;
	Margin-top:0px;
  margin-bottom: 25px;
}
.indent-maney span{
	color:red;
	font-size:35px;
}
.indent-explanatory{
    padding-left: 1em;
    text-indent: -1em;
}
.indent:first-explanatory {
    font-size: 1em;
    padding: 15px;
    color: #E68500;
}



/* チラシ掲載商品
------------------------------- */
.chirasi-keisai-ttl{
    line-height: normal;
}
.indent{
    padding-left: 1em;
    text-indent: -1em;
}
.indent:first-letter {
    font-size: 1em;
    padding: 0px;
    color: #ff861d;
}
.chirashi-cte{
	padding: 3% 3% 0;
	border: 3px solid #c8d3eb;
	border-radius: 10px;
}


/* 修理もおまかせ！
------------------------------- */
.s-column{
    padding: 20px;
}




/* single
------------------------------- */
.article_heading{
	font-size: 140%;
	color: #E64C42;
	font-weight: 600;
}
.single-news__dc {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    border-bottom: 1px solid #c3c3c3;
    padding-bottom: 15px;
}
.content-Nav{
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
    border-top: 1px solid #e0e0e0;
    padding-top: 10px;
}
.content-Nav_Prev,
.content-Nav_Next{
    font-size: 1.3rem;
    color: #505050;
}
.archive-news__item-date {
  margin-right: 10px; 
}
.archive-news__item-category {
	background: #eee; 
	padding: 0px 8px; 
	border-radius: 4px; 
	font-size:1rem;
}
.archive-news__item-title {
font-size:1.3rem;
}

