@charset "UTF-8";

/* ------------------------------
- reset
------------------------------ */
html, body, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
:root, html, body {
  background-color: #fff;
  color: #333;
  width: 100%;
}
body {
  font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","Sawarabi Mincho","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif, sans-serif;
  line-height: 1.8;
  font-size: 12px;
}
* {
  box-sizing: border-box;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1;
}
li {
  list-style-type: none;
}
a {
  color: #333;
  text-decoration: none;
  display: inline-block;
  transition: .7s;
  line-height: 1.8;
}
a:hover {
  opacity: .7;
}
p {
	font-size: 15px;
	line-height: 1.6;
	color: #333;
}
.clearfix::after, .clearfix::before {
    content: "";
    display: block;
    height: 1px;
    font-size: 1px;
    clear: both;
}
#header img,
#sidenav img,
#footer img,
.guide img{
  line-height: 1;
  width: 100%;
}
/*---------------
-common
---------------*/
.content {
	width:100%;
}
.mainV {
	margin-top: 80px;
	padding: 10px 0 0;
}
.mainV img {
	width: 100%;
}
@media only screen and (max-width: 640px) {
  .mainV {
    margin-top: 110px;
  }
}
.news {
	width: 100%;
	height: 38px;
	text-align: center;
	padding: 8px 0;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	background-color: #0088e7;
	overflow: hidden;
}
.news .swiper-wrapper .swiper-slide{
	letter-spacing: 2px;
}
.news .swiper-wrapper .swiper-slide > a{
	color: #fff;
}
#top .news .swiper-wrapper .swiper-slide span{
	display: inline-block;
}
.news_list{
	width: 80%;
	margin: 40px auto;
	list-style: none;
}
.news_list li{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	font-size: 16px;
	line-height: 1.5;
	padding: 24px 0;
	border-top: 1px solid #ccc;
}
.news_list li time{
	width: 12%;
	flex-shrink: 0;
	color: gray;
	letter-spacing: .04em;
}
.news_list li span{
	width: 13%;
	margin-bottom: 3px;
}
.news_list li span a{
	display: block;
	text-align: center;
	min-width: 100px;
	white-space: nowrap;
	vertical-align: top;
	background: #888;
    color: white;
    font-size: 14px;
	letter-spacing: .05em;
	padding: .1em .8em;
	border-radius: 3px;
}
.news_list li a{
	width: 75%;
	color: #1c1c1c;
}
.top_newslist_area{
  width: 70%;
  margin: 20px auto 0;
}
.top_infomation_text{
  width: calc(100% - 120px);
}
.content_mv {
	position: fixed;
	top: 0;
	width:100%;
	z-index: 150;
	color: white;
	transition: all .3s;
}
#top .content_mv {
	top: 38px;
}
#top .content_mv.active {
	top: 0;
}
/*.content_mv #header{
	transition: all ease-out .3s;
}
.content_mv.down #header{
	transform: translateY(-90px);
}*/
.content_mv .header_head_lead{
	display: none;
}
.content_mv .header_head_right{
	display: none;
}
.mvswiper .swiper-slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mvswiper .title {
  color: #fff;
  position: absolute;
  top: 5%;
  left: 5%;
  font-size: 120px;
}
.mvswiper .title.last {
  top: unset;
  bottom: 0%;
  left: 5%;
}
.mvswiper .text {
  color: #fff;
  text-shadow: 1px 1px 2px #000;
  position: absolute;
  bottom: 5%;
  right: 3%;
  font-size: 24px;
  font-weight: bold;
}
.mvswiper .first-slide .text {
  font-size: 28px;
  right: 2%;
}
@media only screen and (min-width: 640px) {
  .content_mv #header img{
    max-width: 300px;
  }
  .news_list li:first-child{
	padding-top: 0;
	border-top: none;
  }
  .top_infomation_text{
    width: calc(100% - 100px);
  }
}
@media only screen and (max-width: 640px) {
  #top .header {
	position: relative;
  }
  #top .content_mv {
	top: 26px;
  }
  .mvswiper .title {
    font-size: 36px;
  }
  .mvswiper .text {
    font-size: 10px;
  }
  .mvswiper .first-slide .text {
    font-size: 10px;
  }
  #gnav-btn {
	left: 0 !important;
	top: 0 !important;
  }
  a.cartbtn,.searchbtn{
	top: 0 !important;
  }
  .news {
	height: auto;
	font-size: 10px;
	letter-spacing: 1px;
	padding: 4px 0;
  }
  #top .news .swiper-wrapper .swiper-slide span{
	display: none;
  }
  .news_list{
	width: 98%;
  }
  .news_list li{
	flex-wrap: wrap;
	font-size: 14px;
	padding: 20px 0;
  }
  .news_list li time{
	width: 25%;
  }
  .news_list li span{
	width: 75%;
	margin-bottom: 3px;
  }
  .news_list li span a{
	display: inline;
	font-size: 11px;
	padding: .2em .5em; 
  }
  .news_list li a{
	width: 75%;
  }
}
/*---------------
-utility
---------------*/
.cf {
  zoom: 1;
}
.cf:before, .cf:after {
  content: "";
  display: table;
}
.cf:after {
  clear: both;
}
.mB10 {
  margin-bottom: 10px;
}
.mB20 {
  margin-bottom: 20px;
}
.mB30 {
  margin-bottom: 30px;
}
.mB40 {
  margin-bottom: 40px;
}
.col5 {
  width: 100%;
}
.flexbox {
	display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.item {
	width: 10%;
	text-align:center;
	border-top:1px solid #ececec;
	border-bottom:1px solid #ececec;
	border-right: 1px solid #ececec;
}
.item:first-child {
}
.item:last-child {
	border-right: none;
	
}
.item img {
	width:50px; !impotant
}
.carName {
	padding: 8px 0 10px;
    background: #f9f8f6;
    color: #333;
	font-weight: 500;
    font-size: 22px;
    text-decoration: none;
    text-align: center;
	display: block;
}
.fw-b {
	font-weight: bold;
}
.visible-md {
	display: block;
}
.visible-sm {
	display: none;
}
.attention {
	display: block;
	width: 100%;
	margin: 12px 0;
	color: red;
	font-weight: bold;
	font-size: 16px;
}
@media only screen and (max-width:640px){
	.mB30 {
		margin-top: 70px;
        margin-bottom: 30px;
     }
}
 @media only screen and (max-width: 640px) {
	.item {
		width: 20%;
	}
}
 @media only screen and (max-width: 640px) {
   .visible-md {
     display: none;
   }
   .visible-sm {
     display: block;
   }
 }
 /*---------------
 -header
 ---------------*/
 .header {
    width: 100%;
 }
.header.scroll {
    background: #fff;
 }
 .header_head {
  width:100%;
  margin: 0 auto;
   padding: 10px 0;
 }
 .header_head_left {
   float: left;
   display: table;
   vertical-align: middle;
 }
 .header_head_logo {
    display: table-cell;
    vertical-align: middle;
    line-height: 1;
 }
 .header_head_title {
    display: none;
 }
 .header_head_lead {
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
 }
 .header_head_right {
   float: right;
   height: 100%;
   padding: 6px 0;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
 }
 .header_head_right .header_head_listitem{
   width: 100%;
   text-align: right; 
 }
 .header_head_search{
   display: none;
 }
 .header_head_listitem {
   float: left;
 }
 .header_head_listitem a {
   text-align: center;
   margin-left: 10px;
   padding: 0 10px;
 }
.header_head_listitem a i {
	margin-right:5px;
}
.header_head_listitem i {
	margin-right:5px;
}
.header_foot {
  display: flex;
  background-color: #231815;
  margin-bottom: 60px;
}
.header_foot_listitem {
  width: calc(100% / 6);
  text-align: center;
  border-left: 1px solid #fff;
}
.header_foot_listitem a i {
	margin-right:5px;
}
.cart {
	background:#bf0000;
}
.header_foot_listitem:first-child {
  border-left: none;
}
.header_foot_listitem a {
  color: #fff;
  padding: 10px 5px;
  /*font-family: sans-serif;*/
  font-size: 14px;
  font-weight: bold;
}
.header_foot_listitem.cart{
  background:#0088e7;
}
.header_btn{
  display: none;
}
.header_head_search_body{
  display: none;
}
#header img{
  max-width: 200px;
}
.header_head{
  display:flex;
  justify-content:center;
  position:relative;
}
.header_menu{
  position:fixed;
  width:32px;
  height:22px;
  top:30px;
  left:20px;
  border:none;
  cursor:pointer;
  background-color:transparent;
  z-index:100;
  transition: all .3s;
}
#top .header_menu {
	top: 68px;
}
#top .content_mv.active .header_menu {
	top: 30px;
}
.header_menu span{
  display:block;
  width:100%;
  height:2px;
  position:absolute;
  left:0;
  background: #fff;
  transition: top 0.24s,transform 0.24s,opacity 0.24s;
}
.header.scroll .header_menu span {
	background-color: #000;
}
.header_menuArea.open .header_menu span{
  background: #000;
}
.header_menu span:nth-child(1){
  top: 0%;
}
.header_menuArea.open .header_menu span:nth-child(1){
  top: 10px;
  transform: rotate(-45deg);
}
.header_menu span:nth-child(2){
  top: 50%;
}
.header_menuArea.open .header_menu span:nth-child(2){
  opacity: 0;
}
.header_menu span:nth-child(3){
  top: 100%
}
.header_menuArea.open .header_menu span:nth-child(3){
  top: 10px;
  transform: rotate(45deg);
}
.header_menuSection {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 99;
  background-color: #fff;
  overflow-y: scroll;
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
}
.header_menuSection::-webkit-scrollbar{
  display:none;
}
.header_menuArea.open .header_menuSection {
  display: block;
}
.header_menuSection_container {
  width: 100%;
  height: 100%;
  padding: 80px 5%;
}
.header_menuSection_container#main_area {
  margin-top: 20px;
  padding: 0 2.5%;
}
.header_menuSection_container h2{
  width: 100%;
  font-size: 16px;
  margin-bottom: 20px;
  color: #000;
}
.header_menuSection_container h2 span{
  cursor: pointer;
  position: relative;
}
.header_menuSection_container h2 span::before{
  position: absolute;
  content: "";
  width: 16px;
  height: 1px;
  right: -30px;
  top: calc(50% - 3px);
  border-top: 2px solid #000;
}
.header_menuSection_container h2 span::after{
  position: absolute;
  content: "";
  width: 1px;
  height: 16px;
  right: -23px;
  top: calc(50% - 9.5px);
  border-right: 2px solid #000;
}
.header_menuSection_container-item {
  width: 100%;
  padding: 10px 0 20px;
}
.header_menuSection_container-item img{
  max-width: 300px !important;
}
.header_menuSection_container-item.open h2 span::after {
  border-right: none !important;
}
.header_menuSection_Category{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 20px;
}
.header_menuSection_Category.company-info{
  gap: 40px;
}
.header_menuSection_Category#maker .level1{
  width: 10%;
  text-align: center;
  gap: 20px;
}
@media only screen and (max-width: 640px){
  #header img{
    max-width: 145px;
  }
  .header_menuSection_container#main_area {
	border-bottom: 1px solid #e1e1e1;	
  }
  .header_menuSection_Category#maker{
    gap: 8px;
  }
  .header_menuSection_Category#maker .level1{
    width: calc((100% - 32px) / 5);
  }
  .header_menuSection_Category#maker .level1 img{
    width: 100%;
	object-fit: contain;
  }
  .header_menuSection_container-item {
	padding: 16px 0;
	border-top: 1px solid #e1e1e1;
  }
  .header_menuSection_container-item.open .header_menuSection_Category{
	padding: 20px 0px;	
  }
  .header_menuSection_container-item h2{
	font-size: 14px;
	margin-bottom: 0;
	position: relative;
  }
  .header_menuSection_container-item h2 span {
	position: unset;
  }
  .header_menuSection_container-item h2 span::before{
	width: 12px;
	top: 50%;
	right: 15px;
  }
  .header_menuSection_container-item h2 span::after{
	height: 12px;
	top: calc(50% - 5px);
	right: 20px;
  }
}
.header_menuSection_Category .level1{
  display: none;
  font-size: 13px;
  width: calc((100% - 40px) / 3);
}
@media only screen and (max-width: 640px){
  .header_menuSection_Category .level1{
    width: 100%;
  }
  .header_menuArea {
	display: none;
  }
}
.header_menuSection_Category .level1 p{
  font-size: 13px;
}
.header_menuSection_container-item.open .level1{
  display: block;
}
.header_menuSection_Category .level2{
  display: none;
}
.header_menuSection_container-item.open .level1.open .level2{
  display: block;
}
.film_roll_child {
    padding: 3px;
}
.before-after {
	text-align:center;
	padding-bottom: 2rem;
}
.before-after h2 {
	margin: 30px auto;
    padding: 15px 15px 5px 15px;
    /* border-bottom: 1px solid #dcdcdc; */
    background: #242424;
    color: #fff;
    font-size: 40px;
    line-height: 1.2;	
}
.before-after p {
	font-size:25px;
}
.before-after span {
    font-size: 15px;
    display: block;
    padding: 0 0 15px;
}
.before-after img {
    max-width: 100%;
    height: auto;
}
.before-after02 {
    text-align: center;
}
.before-after02 span {
	display: block;
    clear: both;
    font-size: 24px;
    padding-bottom: 30px;
}
.before-after02 h3 {
	font-size: 32px;
    padding-bottom: 40px;
    line-height: 1.5;
    font-weight: 500;
}
.type-area {
	margin: 40px 0;
	letter-spacing: 2px;
}
.type-area-title {
	font-size: 24px;
	text-align: center;
}
.type-area-lead {
	width: 80%;
	font-size: 15px;
	text-align: center;
	margin: 20px auto;
}
.type-area-container {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.type-area-item {
	width: calc((100% - 20px) / 2);
	position: relative;
	height: 250px !important;
}
.type-area-item img{
	width: 100%;
	object-fit: contain;
	transition: .5s;
}
.type-area-item-text {
	display: none;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	position: absolute;
	width: 90%;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%)
}
.type-area-item-text span{
	font-size: 14px;
}
.type-area-item:hover img {
	filter: brightness(40%);
}
.type-area-item:hover .type-area-item-text {
	display: block;
}
@media only screen and (max-width: 640px){
	.type-area {
		margin: 24px 0;
		letter-spacing: 1px;
	}
	.type-area-title {
		font-size: 18px;
	}
	.type-area-lead {
		width: 90%;
		font-size: 13px;
		margin: 20px auto;
	}
	.type-area-container {
    	flex-wrap: wrap;
    }
    .type-area-item {
    	width: 100%;
		height: 150px !important;
    }
	.type-area-item img {
		filter: brightness(70%);
    }
	.type-area-item-text {
		display: block;
	}
}
.rw_banner {
	width: 100%;
	text-align: center;
}
.rw_banner img {
	width: 100%;
}
.cap_category {
	width: 100%;
	margin: 10px auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.cap_category-item {
	width: 24%;
	margin:0 0.5% 20px;
	text-align: center;
}
.cap_category-item img{
	width: 100%;
	height: auto;
	aspect-ratio: 1;
}
.cap_category-item-text {
	margin-top: 10px;
	font-size: 13px;
	font-weight: bold;
}
@media only screen and (max-width: 640px){
	.cap_category-item {
		width: 48%;
		margin:0 1% 10px;
	}
}
.blog {
	margin: 20px auto 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-weight: bold;
}
.blog a {
	display: block;
	text-align: center;
	color: #0088e7 !important;
	position: relative;
}
.blog a::before {
	content: "";
	background-image:url("../images/blog_logo.png");
	width: 40px;
	height: 40px;
	position: absolute;
	left: -50px;
	top: calc(50% - 20px);
	background-size: contain;
}
.blog:hover a{
	text-decoration: underline;
}
.blog-feed {
  width: 80%;
  font-size: 13px;
  margin: 8px auto 40px;
  padding: 12px;
}
.blog-feedtitle {
  font-size: 20px;
  text-align: center;
}
.blog-feed .blogroll-ad-text img{
	display: none;
}
.blog-feed .blogroll-ad-text a{
	display: none;
}
.blog-feed .blogroll-ad-default a{
	display: none;
}
.blog-feed .blogroll-list {
	display: flex;
	align-items: center;
	margin-bottom: 4px;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.blog-feed .blogroll-list:nth-child(2) {
	display: none;
}
.blog-feed .blogroll-list img{
	margin-right: 4px;
}

.top_instagram {
	width: 50%;
    margin: 30px auto;
}
.top_instagram img{
	width: 100%;
    object-fit: contain;
}
.top_instagram_text{
	text-align: center;
    margin-top: 12px;
    font-size: 18px;
    font-weight: bold;
}

#ranking {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    height: 630px;!important;
}
.tab-group{
    display: flex;
    justify-content: center;
}
.tab{
    flex-grow: 1;
    padding:5px;
    list-style:none;
    text-align:center;
    cursor:pointer;
	font-size: 24px;
}
@media only screen and (max-width: 640px){
	.tab{
		font-size: 15px;
	}
	.rw_banner img {
		max-width: 100%;
	}
	.blog {
	    width: 90%;
	    font-size: 24px;
    }
	.top_instagram {
    	width: 90%;
    }
    .top_instagram img{
    	width: 100%;
    }
    .top_instagram_text{
        font-size: 14px;
    }
	.blog-feed {
        width: 100%;
        font-size: 12px;
        padding: 12px;
    }
	.blog-feedtitle {
        font-size: 16px;
		font-weight: normal;
        text-align: center;
		color: #fff;
		background-color: #666;
		padding: 10px 0;
    }
}
.maker_list{
  margin-top: 10px;
}
.maker_list_item{}
.maker_list_title {
  padding: 10px 0;
  position: relative;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: .2s;
  background-color: white;
}
.maker_list_title:hover {
  background-color: #f4f4f4;
}
.maker_list_title::after{
  content: "";
  position: absolute;
  top: calc(50% - 10px);
  right: 10px;
  width: 10px;
  height: 10px;
  border-top: 2px solid;
  border-right: 2px solid;
  transform: rotate(135deg);
  transition: 0.4s;
}
.maker_list_item.open .maker_list_title::after{
  top: calc(50% - 5px);
  transform: rotate(315deg);
}
.maker_list_area {
  width: 100%;
  max-height: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 30px;
  padding: 0;
  visibility: hidden;
  transform: translateZ(0);
  transition: .3s;
  transition-property: max-height,visibility,padding;
  transition-timing-function: ease;
}
.maker_list_item.open .maker_list_area {
  visibility: visible;
  max-height: 100vh;
  padding: 20px 0;
}
.maker_list_area .maker_list_child {
  display: block;
  position: relative;
}
.maker_list_area .maker_list_child a{
  transition: none;
  text-decoration: underline;
  font-weight: bold;
}
.panel-group{
    border:solid 1px #CCC;
    border-top:none;
    background:#eee;
	margin-bottom: 2rem;
}
.panel{
    display:none;
}
.tab.is-active{
    background: rgb(222, 50, 50);
    color:#FFF;
    transition: all 0.2s ease-out;
}
.card_list {
	margin-top: 12px;
}
.card_list img{
	margin-right: 8px;
}
.panel.is-show{
    display:block;
}
.shopinfo{
	padding-bottom: 30px;
	text-align : center;
}
.shopinfo.top {
	width: 100%;
	min-width: 400px;
	margin: 30px auto 0;
}
.shopinfo.top iframe{
	aspect-ratio : 2;
}
.shopinfo img{
	max-width: 100%;
	height: auto;
}
.faq_area, .news_area{
	width: 70%;
	margin: 0 auto;
	border-top: 1px solid #ccc;
}
.faq_area li, .news_area li{
	padding: 12px 0;
	border-bottom: 1px solid #ccc;
}
.news_area, .news_area li{
  border: none;
}
.news_area li a{
  text-decoration: underline;
  color: blue;
}
.faq_title, .news_title {
	position: relative;
	cursor: pointer;
	font-size: 16px;
}
.faq_title::before, .news_title::before{
  position: absolute;
  content: "";
  width: 16px;
  height: 1px;
  right: 10px;
  top: calc(50% - 3px);
  border-top: 2px solid #000;
}
.faq_title::after, .news_title::after{
  position: absolute;
  content: "";
  width: 1px;
  height: 16px;
  right: 17px;
  top: calc(50% - 9.5px);
  border-right: 2px solid #000;
}
.active .faq_title::after, .active .news_title::after{
  border-right: none !important;
}
.faq_answer, .news_answer {
	width: 100%;
	display: none;
	font-size: 16px;
}
.faq_title,.faq_answer, .news_title, .news_answer{
	padding: 4px 0;
}
.faq_answer img {
	width: 100%;
	padding: 0 5%;
}
.active .faq_answer, .active .news_answer {
	display: block;
}
.faq_link {
	position: fixed;
	right: 15px;
	bottom: 20px;
}
.faq_link img {
	width: 60px;
	height: 73px;
}
@media only screen and (max-width: 640px) {
	.faq_area, .top_newslist_area {
		width: 100%;
		margin: auto;
	}
  .faq_area, .news_area{
    width: 100%;
  }
  .top_newslist_area .date{
    font-size: 14px !important;
    width: 100px !important;
  }
	.faq_title,.faq_answer,.news_title, .news_answer {
		font-size: 14px;
	}
	.faq_title, .news_title {
		padding-right: 30px;
	}
}
.review-area iframe {
    width: 100%;
	height: 
    margin-top: -10px;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
.review-area img {
    max-width: 100%;
    height: auto;
}
.review-area div {
	max-width: 100%;
    height: auto;
}

.rakuten-review {
	padding-top: 1rem;
}
@media only screen and (max-width: 640px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(255,255,255);
    z-index: 100;
  }
  .header_head {
    padding: 10px;
  }
  .header_head_left {
    width: 100%;
  }
  .header_head_right {
    display: none;
  }
  .header_head_search{
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .header_head_search_icon{
    width: 100%;
  }
  .header_head_search_body{
    display: none;
    width: 100%;
    position: absolute;
    top: 66px;
    padding: 10px;
    background-color: rgba(255,255,255,.7);
  }
  .header_foot {
    display: none;
    margin-bottom: 0;
    position: absolute;
    width: 100%;
  }
  .header_head_left {
    float: none;
    display: flex;
	flex-wrap: wrap;
    position: relative;
  }
  .header_head_logo {
    display: block;
    width: auto;
    margin-left: auto;
	margin-right: auto;
  }
  .header_head_lead {
    display: none;
  }
  .header_foot_listitem {
    float: none;
    width: 100%;
    text-align: center;
    border-left: none;
    border-bottom:1px solid #fff;
  }
  .header_btn{
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .shopinfo.top {
	width: 90%;
	margin: 0 auto;
	min-width: inherit;
  }
  .shopinfo.top iframe{
	aspect-ratio : 1;
  }
}
/*---------------
-mainArea
---------------*/
.mainArea {
  width: 100%;
  max-width: 95%;
  margin: 0 auto;
  margin-bottom: 50px;
}
@media only screen and (max-width: 640px) {
  .mainArea {
    padding: 0 4px;
  }
  #mainArea .iframeClass {
	display: none;
  }
}
/*---------------
-mainContent
---------------*/
.main {
	width:80%;
	float: right;
	padding: 0 0 0 20px;
}
.main .mv {
	width:100%;
	max-width: 1220px;
    padding: 0px;
	position: relative;
}
.main .mv img{
	width: 100%;
	height: auto;
}
.shoplogo img{
	max-width: 45%;
	height: auto;
	position: absolute;
    top: 25%;
    left: 50%;
	right: 50%;
	-webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	background-color: rgba(255,255,255,0.4);
    border-radius: 10px; 
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    > div {
        width: 90%;
        max-width: 310px;
        margin: auto;
    }
}
.shoplogo2 img{
	max-width: 15%;
	height: auto;
	position: absolute;
    top: 13%;
    left: 71%;
	-webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.main .mv h2 {
    color: #fff;
    text-align: center;
    font-size: 32px;
    font-weight: bold;
}
.main .mv h2 img {
	padding: 20px 0;
}
.main .mv h2 ul {
    display: inline-block;
    position: relative;
    top: -60px;
}
.main .mv h2 span {
    display: block;
    clear: both;
    font-size: 26px;
	padding: 0 0 20px;
}

.main .mv ul {
    margin: 0 auto;
}
.main .mv ul li {
    float: left;
	width: 25%;
    padding: 0 5px;
    margin: 0 auto;
}
.main .mv ul.img_list li img {
    width: 98%;
}
.list1 table{
	border-collapse: collapse;
	border: solid 1px #9bacc2;
	font-size: 15px;
}
.list1 table tr td:nth-of-type(1) {
	background-color: #edf3fa;
}
.list1 td {
	border: dashed 1px #9bacc2;
	padding: 2px;
}
.h3-ttl {
    margin: 1rem auto 2rem;
    font-size: 32px;
	font-weight: 500;
	border-bottom: 1px solid #333;
	text-align: center;
	line-height: 1.8;
}
.h3-ttl i {
    margin-right: 5px;
    color: #527df0;
    background: -webkit-linear-gradient(0deg, #00d5e3, #527df0);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.mB40_1{
		padding-bottom: 50px;
	}
.charges {
	padding-bottom: 30px;
}
.charges table {
	width: 100%;
	text-align: center;
	border-collapse: collapse;
}
.charges table tr th {
	border: solid 1px black;
	background-color: #d3d3d3;
}
.charges table tr td {
	border: solid 1px black;
	background-color: white;
}

.nv350 table{
    border-collapse: collapse;
    color:#000;
}
.nv350 th, 
.nv350 td {
    width: 33.333333333333333%;
    border: solid 2px #000;
}
.nv350 h1 {
    font-size: 1.5em;
}
.maker_tab {
	display: flex;
	flex-wrap: wrap;
}
.maker_tab li a{
	display: block;
	background: #eee;
	margin: 0 2px;
	padding: 10px 20px;
	border-bottom: 1px solid #aaa;
}
.maker_tab li a:hover{
	color: inherit;
	text-decoration: underline;
}
.maker_tab li.active a {
	color: #fff;
	background:#0088e7;
	font-weight: bold;
	border-bottom: 1px solid #fff;
}
.area li{
	display: none;
	opacity: 0;
	background: #fff;
	padding: 20px 0;
}
.area li.is-active {
	display: block;
	animation-name: displayAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
}
@media only screen and (max-width: 640px) {
	.maker_tab li{
		width: 20%;
	}
	.maker_tab li a{
		padding: 10px 5px;
		text-align: center;
		margin: 0 1px;
	}
}
@keyframes displayAnime {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@media only screen and (max-width: 640px) {
	.main {
		width:100%;
		float: none;
		padding: 0;
	}
	.mv {
		margin-top: 140px;
	}
	.main .mv h2 {
		font-size:25px;
	}
	.main .mv h2 img {
		padding: 20px 0;
		width: 60%;
	}
	.mB40_1{
		padding-top: 20px;
		padding-bottom: 30px;
	}
	.charges table{
		display: none;
	}
}
/*---------------
-sidenav
---------------*/
.sidenav {
	width: 20%;
	float: left;
	background: #f6f6f6;
}
@media only screen and (max-width: 640px) {
  .sidenav {
    width:100%;
    float: none;
  }
}
.menubg{
	background: #f6f6f6;
}
.instagram {
	overflow: hidden;
}
.instagram iframe{
	width: 96% !important;
	margin: 0 auto !important;
	max-width: 96% !important;
	min-width: 0 !important;
}
.instagram iframe .HoverCardRoot{
	display: none !important;
}

/*---------------
-h
---------------*/
.h1 {
  font-size: 20px;
  border-bottom: 1px solid;
  padding-bottom: 5px;
}
.h2 {
  font-size: 20px;
  border-bottom: 1px solid;
  padding-bottom: 5px;
}
.h3 {
	font-size: 18px;
	padding-top: 15px;
}
.h4 {
	font-size: 25px;
	background-color: #cfd9e6;
	line-height:1.7;
	margin-bottom: 20px;
}
.h5 {
	border-top: 1px solid;
	border-top-color: #cfd9e6;
	padding-top: 3px;
	padding-bottom: 3px;
}
@media only screen and (max-width: 640px) {
	#own-item {
		display:block;
	}
	.film_roll_child {
		padding: 3px;
	}
	.film_roll_pager {
		padding: 5px 0 20px;
	}
	.film_roll_prev, .film_roll_next {
		width: 25px !important;
		height: 25px!important;
		font-size: 30px !important;
		line-height: 20px !important;
	}
}

/*---------------
-searchbox
---------------*/
.searchbox_form {
  width: 100%;
  position: relative;
}
.searchbox_input {
  height: 40px;
  width: 90%;
  padding: 0 35px 0 15px;
  font-size: 12px;
  border: 1px solid #dfdfdf;
  -webkit-border-radius: 5px 0 0 5px;
  -moz-border-radius: 5px 0 0 5px;
  -ms-border-radius: 5px 0 0 5px;
  border-radius: 5px 0 0 5px;
  float: left;
}
.placeholder:focus::placeholder {
	color: transparent;
}
.searchbox_btn {
  border-top: 1px solid #dfdfdf;
  border-right: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf;
  -webkit-border-radius: 0 5px 5px 0;
  -moz-border-radius: 0 5px 5px 0;
  -ms-border-radius: 0 5px 5px 0;
  border-radius: 0 5px 5px 0;
  height: 40px;
  padding: 9px;
  background-color: #f2f2f2;
  transition: .7s;
  position: absolute;
  top: 0;
  right: 0;
}
.searchbox_btn:hover {
  opacity: 0.7;
}
input[type="text"]:focus {
  outline: 0;
}
@media only screen and (min-width: 641px) {
	.searchbox_form_head {
		display: flex;
		align-items: center;
		position: absolute;
		right: 2%;
		top: 30px;
	}
	.searchbox_input_head{
		/*display:none;*/
		border: 1px solid #ccc;
		border-radius: 5px;
		padding: 5px 10px;
		font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","Sawarabi Mincho","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif, sans-serif;
	}
	.searchbox_textbutton_head{
		display:none;
	}
	
	.searchbox_btn_head{
		/*display:none;*/
		margin-left: 5px;
		width: 25px;
	}	
}
@media only screen and (max-width: 640px) {
  .searchbox_form_head {
    width: 100%;
	top: 5px;
    position: relative;
	margin-top: 6px;
  }
  .searchbox_input_head {
    height: 40px;
    width: 90%;
    padding: 0 35px 0 15px;
    font-size: 12px;
    border: 1px solid #dfdfdf;
    -webkit-border-radius: 5px 0 0 5px;
    -moz-border-radius: 5px 0 0 5px;
    -ms-border-radius: 5px 0 0 5px;
    border-radius: 5px 0 0 5px;
    float: left;
  }
  .searchbox_btn_head {
    border-top: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    -webkit-border-radius: 0 5px 5px 0;
    -moz-border-radius: 0 5px 5px 0;
    -ms-border-radius: 0 5px 5px 0;
    border-radius: 0 5px 5px 0;
    height: 40px;
    padding: 9px;
    background-color: #f2f2f2;
    transition: .7s;
    position: absolute;
    top: 0;
    right: 40;
  }
  .searchbox_textbutton_head{
    border-top: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    -webkit-border-radius: 0 5px 5px 0;
    -moz-border-radius: 0 5px 5px 0;
    -ms-border-radius: 0 5px 5px 0;
    border-radius: 0 5px 5px 0;
    height: 40px;
    padding: 9px;
    background-color: #f2f2f2;
    transition: .7s;
    position: absolute;
    top: 0;
    right: 0;
  }
  .searchbox_btn_head:hover {
    opacity: 0.7;
  }
  input[type="text"]:focus {
    outline: 0;
  }
}
/*---------------
-bnr
---------------*/
.bnr_item {
  margin-top: 20px;
}
/*---------------
-category
---------------*/
.category {
	padding: 15px 15px 0 15px;
}
.category_head {
	margin: 0 0 15px;
    text-align: center;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    position: relative;
    width: 100%;
    opacity: 1;
    transition: all .2s ease;
}
.category_list{
	position: relative;
}
.category_list .category_item:hover .sub_category {
	display: block;
	border: 1px solid #000;
	width: 200px;
	height: 100px;
}
.category_list .sub_category{
	display: none;
	position: absolute;
	top: 0;
	left: 200px;
}
.cat00 {
	background: #0088e7;
}
.cat01  {
    background: #4C444D;
}
.cat01::after  {
    content: none !important;
}
.cat02  {
    background: #0000cc;
}
.cat03  {
    background: #006400;
}
.cat04  {
    background: red;
}
.cat05{
	background: #ff4500;
}
.cat06{
	background: #FFEB00;
}
.cat06::after{
	border-color: #000 !important;
}
.cat06 a{
	color: #000 !important;
}
.cat07{
	background: #949593;
}
.category_head:after {
    content: "";
    position: absolute;
	top: calc(50% - 3px);
    right: 18px;
    width: 4px;
	height: 4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
.category_head a {
    padding: 12px 0;
	color: #fff;
    font-weight: 700;
	text-decoration: underline;
}
.category_head p {
	font-size: 13px;
    padding: 12px 0;
	color: #fff;
    font-weight: 700;
}
.category > ul > li {
    margin: 0 0 3px;
    background: #fff;
    font-size: 12px;
    position: relative;
}
.category > ul > li > a {
    padding: 18px 18px 18px 50px;
    display: block;
	font-size: 12px;
    position: relative;
    top: 0;
    left: 0;
}
.category > ul > li > a img {
    width: 30px !important;
    position: absolute;
    top: 15px;
    left: 10px;
}
.category > ul > li > a:after {
	content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    width: 4px;
    height: 4px;
    border-top: solid 2px #444;
    border-right: solid 2px #444;
    transform: translateY(-50%) rotate(45deg);
}

.side_soryo {
	margin: 20px 0;
    padding: 20px;
    background: #f5fcff;
    border: 3px solid #00bfff;
}
.side_soryo .cat-ttl, 
.side_cal .cat-ttl {
    font-size: 14px;
    font-weight: 700;
    padding: 0 0 12px;
    margin: 0 0 15px;
    border-bottom: dotted 1px #aaa;
}
.side_soryo .txt {
    font-size: 10px;
    color: #444;
    line-height: 16px;
    margin: 0 0 7px;
}
.side_soryo .btn {
    text-align: right;
}
.side_soryo .btn a {
    background: #423f3c;
    color: #fff;
    font-size: 10px;
    font-weight: 300;
    width: 105px;
    padding: 6px 0;
    text-align: center;
    display: inline-block;
    position: relative;
    opacity: 1;
    transition: all .2s ease;
}
.side_soryo .btn a:after {
    content: "";
    border: solid 3px transparent;
    border-bottom: solid 3px #444;
    border-right: solid 3px #444;
    position: absolute;
    top: -5px;
    right: 0;
}
.side_cal {
    background: #f6f6f6;
    padding: 15px;
}
.side_cal .wrapper {
    background: #fff;
    padding: 25px;
}
.side_cal .calframe_rakuten {
    width: 180px;
    font-size: 12px;
    font-weight: 500;
    margin: 0 0 20px;
}
.side_cal .calframe_rakuten th {
    font-size: 12px;
    font-weight: 500;
    padding: 0 0 10px;
    text-align: left;
}
.side_cal .weektitle_rakuten {
    border-top: solid 1px #e9e9e9;
}
.side_cal .calframe_rakuten td {
    border-bottom: solid 1px #e9e9e9;
    border-left: dotted 1px #ddd;
    text-align: center;
    vertical-align: middle;
    padding: 7px 0;
}
.side_cal font.event1day_rakuten {
    color: #ffd8d8;
}
.side_cal font.event3day_rakuten {
    color: #9ec4ff;
}

@media only screen and (max-width: 640px) {
  .category_head {
    font-size: 14px;
  }
}
/*---------------
-guide
---------------*/
.guide {
  width: 100%;
}
.guide_head {
  width: 100%;
  text-align: center;
  background-color: #0088e6;
  color: #fff;
  font-size: 16px;
  padding: 5px 0;
}
.guide_list {
  padding: 30px;
  background-color: #73cffe;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap:wrap	;
  -moz-flex-wrap:wrap	;
  -ms-flex-wrap:none;
  flex-wrap:wrap	;
}
.guide_item {
	width: 32%;
	background-color: #FFF;
	margin-left: 2%;
	text-align: center;
	padding: 30px;
	font-size: 14px;
}
.guide_item:nth-child(3n+1) {
  margin-left: 0;
}
.guide_item:nth-child(n+4) {
  margin-top: 2%;
}

/*�����ɲä��ޤ���*/
.guide_item p {
	text-align: left;
	line-height: 20px;
	font-size: 90%;
}
.guide_item p img {
	width: 80%;
	margin-top: 4%;
}
.guide_item_img {
  width: 80%;
  margin: 7% auto 0;
}
.guide_item p.text_center {
	text-align: center;
	font-size: 120%;
	line-height: 30px;
}
.text_red {
	color: #F00;
}
.text_blue{
	color: #0000ff;
}
.text_white {
	color: #fff;
}
/*��������*/
.guide_calendar{
  background-color: #fff;
  margin-top: 20px;
}
.guide_calendar_table{
}
.guide_calendar_caption{
    display: table;
    margin-top: 10px;
}
.guide_calendar_icon{
  width: 18px;
  height: 18px;
  background-color: #e1e1e1;
  display: table-cell;
  vertical-align: middle;
}
.guide_calendar_text{
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
}
.remarks {
	text-indent: -3em;
	padding-left: 3em;
}
#price-table {
	width: 100%;
	font-size: 15px;
	max-width: 800px;
	margin-top: 40px;
	text-align: left;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}
#price-table tbody, #price-table tr{
	width: 100%;
}
#price-table th:first-of-type,#price-table td:first-of-type {
	width: 55%;
	background: transparent;
	padding: 4px 8px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
#price-table th:last-of-type, #price-table td:last-of-type {
	width: 45%;
	padding: 4px 8px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
#price-table th{
	font-weight: bold;
	background: #edf3fa !important;
	padding: 4px 8px;
}
#price-table td span{
	font-size: 10px;
}
.price_campaign h3 {
	font-size: 24px;
	color: #0088e7;
	margin-bottom: 12px;
}
.price_table {
	text-decoration: line-through;
}
dl#price-table dd {
	width: 30%;
	display: flex;
	align-items: center;
	padding: 4px 8px;
	border-bottom: 1px solid #000
}
.derivery_note .attention{
	color: red;
	font-weight: bold;
	font-size: 16px;
}

@media only screen and (max-width: 640px) {
  .guide_list {
    padding:  4%;
  }
  .guide_item {
    float: none;
    width: 100%;
    margin-left: 0;
    height: auto;
    margin-top: 2%;
    padding: 2%;
  }

  .guide_item p {
	text-align: left;
  }
  #price-table {
  	width: 100%;
  	font-size: 13px;
  }
}
/*---------------
- company_profile
---------------*/
.company_profile{
	background: #000;
	color: #fff;
}
.company_profile .main{
	float: none;
	width: 100%;
	margin-bottom: 60px;
	overflow: hidden;
}
.company_profile .section{
	width: 90%;
	margin: 0 auto;
	line-height: 1.8;	
}
.company_profile .section#company_bg{
   width: 100vw;
   height: 400px;
   margin: 0 calc(48.5% - 50vw);
   background-image: url(../images/company/company_image5.JPG?ver=1.0);
   background-attachment: fixed;
   background-size: cover;
   background-repeat: no-repeat;
}
.company_profile .section.return{
	width: 70%;
}
.company_profile .section.return p{
	text-align: left;
}
.installation {
	display : flex;
	justify-content: space-between;
	align-items: center;
}
.installation img{
	width: 40%;
	object-fit: contain;
	order: 2;
	margin-left: 3%;
}
.installation span{
	display: block;
	text-align: left;
	order: 1;
}
.company_profile .section a{
	color: #fff;
	text-decration: underline;
}
.company_profile .section.access{
	text-align: center;
}
.company_profile .section.access iframe{
	width: 700px;
}
.scroll_fade{
	opacity: 0;
    transition: all 4s;
}
.fadeIn{
	opacity: 1 !important;
}
.company_profile .history {
	text-align: left;
}
.company_profile .main p{
	text-align: center;
}
.company_profile #mainArea h1,.company_profile #mainArea h2{
	border-bottom: none;
	margin: 60px 0 40px;
	font-size: 30px;
	text-align: center;
}
.company_profile .main p{
	color: #fff;
	font-size: 18px;
	line-height: 2.2;
}
.company_profile .history span{
	color: #fff;
	font-size: 14px;
	line-height: 2;
}
.company_profile .history p{
	text-align: center;
	line-height: 2.6;
}
.company_profile .history > div > p {
	margin-bottom: 60px;
 }
.company_profile .company_image_area{
	display: flex;
	justify-content: center;
	width: 45%
}
.company_profile .company_image_area img{
	width: 100%;
}
.company_profile .sidenav{
	display: none;
}
.company_profile_mv {
	position: relative;
	margin-bottom: 40px;
	margin-top: 50px;
}
.company_profile_mv_image {
	width: 100%;
	margin: 10px 0 20px;
	position: relative;
}
.company_profile_mv span{
	position: absolute;
	right: 7%;
	bottom: 10%;
	font-size: 20px;
	line-height: 2;
}
.company_profile_mv span.title{
	position: relative;
	left: 0;
	display: inline-block;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 16px;
	line-height: 1.6;
}
.company_start_area {
    display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 100px;
}
.company_start_area:first-child {
	margin-top: 40px;
}
.company_start_area p{
	width: 50%;
	margin: 0;
	transition: all 2s;
	text-align: left !important;
}
.company_start_area:first-child p {
	top: 30%;
}
.company_start_area:nth-child(2n) p {
	order:1;
}
.company_start_area .company_image_area{
	justify-content: flex-start;
	transition: all 1s;
}
.company_start_area:nth-child(2n) .company_image_area{
	justify-content: flex-end;
	order: 2;
}
.company_start_area .company_image_area img{
	width: 100%;
	max-width: 700px;
}
.companyswiper {
	width: 100%;
	margin-bottom: 60px;
}
.companyswiper .swiper-wrapper {
  transition-timing-function: linear;
}
.companyswiper .swiper-wrapper .swiper-slide{
  width: calc(100% / 3) !important;
}
.companyswiper .swiper-wrapper .swiper-slide-image {
  aspect-ratio: 1.3;
  object-fit: cover;
}
@media only screen and (max-width: 800px) {
  .company_sp_head {
	font-size: 16px;
	margin: 16px 0 40px;
  }
  .company_profile {
	margin: 0;
  }
  .company_profile .section{
	width: 96%;
  }
  .company_profile .section#company_bg{
	display: none;
  }
  .company_profile .section{
	margin-bottom: 60px;
  }
  .company_profile #mainArea h2 {
	margin: 20px 0;
	font-size: 20px;
  }
  .company_profile .history > div > p {
	margin-bottom: 40px;
  }
  .company_profile .history > div > span {
	font-size: 11px;
  }
  .company_profile .main p {
	font-size: 14px;
	line-height: 1.8;
	text-align: left;
  }
  .company_profile_mv {
	margin: 120px 0 0;
  }
  .company_profile_mv span{
	display: none;
  }
  .company_start_area{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
	width: 100%;
  }
  .company_start_area p{
	width: 100%;
	margin-top: 28px;
	font-size: 14px !important;
	line-height: 2 !important;
	transition: all 4s;
	order: 2;
  }
  .company_start_area .company_image_area{
	width: 100%;
	transition: all 2s;
  }
  .company_start_area:nth-child(2n) .company_image_area {
    order: 1;
  }
  .company_start_area:nth-child(2n) p {
	order: 2;
  }
  .company_start_area .company_image_area img{
	width: 100% !important;
  }
  .company_profile .section.access iframe{
	width: 100%;
  }
  .company_profile .section.return {
	width: 90%;
  }
  .installation {
	flex-wrap: wrap;	
  }
  .installation img {
	width: 100%;
	margin: 0 0 20px;
	order: 1;
  }
  .installation span {
	font-size: 11px !important;
	order: 2;
  }
}
/*---------------
- calendar
---------------*/
#calendar {
}
.calendar {
    padding: 0;
    margin: 0;
    width: 100%;
}
.calendar .headline td {
    font-size: 10px;
}
.calendar .dateName {
    text-align: center;
    font-family: "Myriad Pro", "Verdana", "Arial", "Helvetica", "sans-serif";
    font-size: 14px;
    color: #444;
}
.calendar th span {
  cursor: pointer;
  float: right;
  font-size: 11px;
  padding: 4px 0 0;
}
.calendar .pagerPrev{
    float: left;
}
.calendar .pagerNext{
    float: right;
}
.calendar .pagerPrev:hover,
.calendar .pagerNext:hover{
  color: #e6002d;
}
.calendar td {
    border-bottom: solid 1px #CCC;
    text-align: center;
    width: 30px;
    height: 35px;
    vertical-align: middle;
    font-family: "Myriad Pro", "Verdana", "Arial", "Helvetica", "sans-serif";
    line-height: normal;
    font-size: 11px;
    color: #333;
}
.calendar .click {
    cursor: pointer;
    background-color: #FFF;
}
.calendar .Today {
  color: #fff;
  font-size: 13px;
  background-color: #e6002d;
}
.calendar .Sat {
    color: #009;
    background-color: #e1e1e1;
}
.calendar .Sun, .calendar .holyday {
  color: #e5352c;
  background-color: #e1e1e1;
}
.calendar_ttl {
  margin-top: 50px;
  border-bottom: 1px solid #666;
}
@media only screen and (max-width: 640px) {
  .calendar_ttl {
    margin-top: 50px;
    border-bottom: none;
    background: #666;
    color: #fff;
    text-align: center;
    padding: 5px;
    font-size: 16px;
  }
  .calendar_wrap {
    padding: 0 4% 4%;
    border: 1px solid #999;
  }
}

/*---------------
-recruite_banner
---------------*/
.recruite .sidenav {
	display: none;
}
.recruite .main {
	width: 100%;
	padding-left: 0;
	float: none;
}
.recruite #contact {
	background-color: #fff;
}
.recruite .mainV {
	margin-bottom: 60px;
	padding: 0;
	text-align: center;
	position: relative;
}
.recruite .mainV svg{
	position: absolute;
	top: 20%;
	left: 50%;
	transform: translateX(-50%);
}
.recruite .header_foot{
	display: none;
}
.recruite .recruite_area {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 90%;
	margin: 20px auto;
}
.recruite .recruite_area-lead-title {
	width: 100%;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
.recruite .recruite_area-lead-text {
	width: 100%;
	font-size: 18px;
	line-height: 2;
	margin-bottom: 12px;
}
.recruite .recruite_area-item {
	width: 50%;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 20px;
}
.recruite .recruite_area-item#employee {
	border-left: 1px solid #000;
  }
.recruite .recruite_bg {
	width: 100%;
	padding-top: 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.recruite .recruite_bg h2{
	font-size: 28px;
	font-weight: bold;
	color: #0088e7;
	text-align: center;
}
.recruite .recruite_bg#treatment{
	color: #0088e7;
	background-color: #fff;
	font-weight: bold;
}
.recruite .recruite_bg div{
	font-size: 16px;
}
.recruite .recruite_bg .title-area{
	padding-left: 12px;
	font-weight: bold;
	border-left: 3px solid #0088e7;
}
.recruite .recruite_bg .text-area{
	width: 100%;
	padding: 20px 0;
	font-size: 16px;
}
.recruite .recruite_bg .text-area ul{
	margin-left: 12px;
}
.recruite .recruite_bg .text-area li{
	list-style: disc;
}
.recruite .recruite_entry_form {
	width: 100%;
	margin-top: 20px;
	display: flex;
	justify-content: center;
}
.recruite .recruite_entry_btn {
	width: 300px;
	font-size: 22px;
	font-weight: bold;
	color: #0088e7;
	padding: 20px;
	text-align: center;
	background-color: #fff;
	border: 1px solid #0088e7;
}
.recruite .recruite_entry_btn:hover {
	color: #fff;
	background-color: #0088e7;
}
.recruite .recruite_gallary {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	margin: 30px 0;
}
.recruite .recruite_gallary img{
	width: calc(calc(100% - 30px) / 4);
}
.skill {
	width: 100%;
}
.skill > li {
	border-top: 1px solid #ccc;
}
.skill > li:first-child {
	border-top: none;
}
.skill_title {
	font-size: 18px;
	padding: 20px 0 30px;
}
.skill_detail{
	display: block;
}
.skill_table {
	width: 100%;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
}
.skill_table td,.skill_table th{
	text-align: center;
	padding: 4px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
.recruite_banner img {
	width: 100px;
}
.work_image {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 1%;
  margin: 20px 0;
}
.work_image img{
  width: 18%;
  margin: 4px 0;
}

@media only screen and (max-width: 640px) {
  .recruite .mainV{
	margin-top: 40px;
	margin-bottom: 20px;
  }
  .recruite .main #contact{
	padding-top: 0;
  }
  .recruite .mainV canvas{
	aspect-ratio: 1;
  }
  .recruite .mainV svg{
	width: 80% !important;
  }
  .recruite .recruite_area {
	width: 100%;
	margin: 20px auto;
  }
  .recruite .recruite_area-item {
	width: 100%;
	padding-left: 10px;
	padding-right: 10px;
  }
  .recruite .recruite_area-item#employee {
	border-left: none;
  }
  .recruite .recruite_area-lead-text{
	font-size: 16px;
  }
  .recruite_banner_area {
    width: 100%;
    position: fixed;
    z-index: 100;
  }
  .recruite .head_title{
	margin-top: 0;	
	padding: 8px 0;
	font-size: 24px;
  }
  .recruite .recruite_bg h2{
	/*margin-left: 20px;*/ 
  }
  .recruite .recruite_bg div {
	margin-left: 0;
  }
  .recruite .recruite_bg .title-area,
  .recruite .recruite_bg .text-area {
	width: 100%;
  }
  .recruite .recruite_bg .text-area {
	padding: 8px 0;
	margin: 8px 0;
  }
  .recruite .recruite_gallary {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px;
	margin: 20px 0;
  }
  .recruite .recruite_gallary img{
	width: calc(calc(100% - 20px) / 2);
  }
  .skill_title{
	font-size: 16px;
  }
  .skill_title .attention {
	display: inline-block;
	font-size: 12px;
	margin: 8px 0 0;
	padding-bottom: 4px;
  }
  .skill_table {
	font-size: 14px;
  }
  .recruite_banner {
	text-align: center;
  }
  .recruite_banner img {
	width: 100px;
  }
  .work_image {
    gap: 1%;
  }
  .work_image img{
    width: 24%;
  }
}

/*---------------
-footer
---------------*/
.footer {
  text-align: center;
  padding: 20px 0;
}

.footer_menu {
	width: 100%;
	display: none;
	flex-wrap: wrap;
	font-size: 13px;
	text-align: center;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	color: #fff;
	background: #0088e7;
	margin-top: 20px;
}
@media only screen and (max-width: 640px) {
	.footer_menu {
		display: flex;
	}
}
.footer_menu .footer_menu_listitem {
	font-weight: bold;
	width: 50%;
	text-align: center;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.footer_menu .footer_menu_listitem a{
	color: #fff !important;
	width: 100%;
	padding: 10px 0;
}

.fotter_under{background:#434343;width:100%;padding:40px 40px 60px;}
.fotter_area{display:flex;justify-content: space-between;margin-bottom:40px}
.footer_btn{color:#000;background:#fff;border-radius:50px;display:flex;justify-content:center;padding: 12px 0 14px;font-size: 18px;font-weight: bold;margin: 30px auto; max-width: 400px}
.fotter_contents{width: 65%;}
.fotter_contents:last-child{width: 35%;display:flex;justify-content:space-around}
.footer_company-info{text-align:left;color:#fff;max-width:400px;margin:20px auto 0;line-height:1.6}
.fotter_contents img{max-width: 400px;}
.fotter_contents-link{text-align:left;font-size:14px;}
.fotter_contents-link li{padding-top:10px;padding-bottom:10px;}
.fotter_contents-link a{color:#fff !important}
.fotter_under .copyright{color:#fff;text-align:center}
@media screen and (max-width:749px) {
  .fotter_under{text-align:center;padding:40px 20px;margin-top: 40px}
  .fotter_area{flex-wrap:wrap}
  .fotter_contents{width: 100%;}
  .fotter_contents:last-child{width: 100%;}
  .fotter_contents img{width:90%;}
  .footer_company-info{width:90%;margin:30px auto 20px;padding-bottom:20px;border-bottom:1px solid #fff;line-height: 1.8;font-size:13px;}
  .fotter_contents:last-child{width: 90%;flex-wrap:wrap;margin: 0 auto;}
  .fotter_contents-link{width:100%;font-size:14px;padding-left:0}
  .fotter_contents-link li{width:100%;padding-top:4px;padding-bottom:4px;}
}
/*---------------
-table
---------------*/
.table{
  width: 100%;
}
.table-typeA,
.table-typeA th,
.table-typeA td{
  border: 1px #c0c0c0 solid;
  border-collapse: collapse;
  vertical-align: middle;
  text-align: left;
  padding: 20px;
}
.table-typeA th{
  background-color: #f2f2f2;
  width: 20%;
}
@media only screen and (max-width: 640px) {
  .table-typeA,
  .table-typeA th,
  .table-typeA td{
    padding: 10px;
  }
  .table-typeA th{
    background-color: #f2f2f2;
    width: 40%;
  }
}
/*---------------
-iframe
---------------*/
.iframeContent {
  position: relative;
  width: 100%;
  padding: 135% 0 0 0;
}
.iframeContent iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*============
#gnav
=============*/
@media only screen and (min-width: 0px) {
#gnav-btn {
    color: gray;
    padding: 10px;
    font-size: 30px;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 100;
    background-color: white;
    border: solid 1px #d1caca;
    border-radius: 3px;
  }
  #gnav-input:checked ~ #gnav-content {
    left: 0;
  }
  #gnav-btn .fa-times{
  	width:26px;
  	text-align:center;
  }
  #gnav-content {
    position: fixed;
    top: 0%;
    left: -400px;
    z-index: 10;
    transition: 0.3s;
	height: 100%;
    width:80%;
	overflow: auto;
 -webkit-overflow-scrolling: touch;
	overflow-x: hidden;
  }
  .humb-menu__title {
	  background-color: white;
    padding: 2rem;
  }
  .humb-menu__title.contact {
    max-height: 68px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-direction: column;
  }
  .humb-menu__title.contact i{
    margin-right: 5px;
  }
  .humb-menu label {
	display: flex;
	justify-content: space-between;
    padding: 1.2rem;
    cursor: pointer;
    border-top: 0.5px solid #c7c5c5;
  }	
   label[for=label1] {
    background:#000;
  }
	label[for=label2] {
    background:#000;
  }
	label[for=label3] {
    background:#000;
  }
	label[for=label4] {
    background:#000;
  }
	label[for=label5] {
    background:#000;
  }
	label[for=label6] {
    background:#ededed;
  }
	label[for=label7] {
    background:#ededed;
  }
	label[for=label8] {
    background:#ededed;
  }
	label[for=label9] {
    background:#ededed;
  }
  .humb-menu input {
    display: none;
  }
  .humb-menu .accshow {
	background-color: white;
    height: 0;
    overflow: hidden;
  }
  .humb-menu .accshow p {
    padding: 1.5rem;
  }
  .humb-menu .accshow a {
    padding: 1.0rem;
	display: flex;
	border-top: 0.5px solid #c7c5c5;
}
  .humb-menu .cssacc:checked + .accshow {
    height: auto;
  }
}

@media only screen and (min-width: 641px) {
	#gnav-btn {
		display:none;
	}
	#gnav-content {
		display: none;
	}
	.humb-menu__title{
		display:none;
	}
  .humb-menu__title.contact {
    display:none;
  }
	.humb-menu label{
        display:none;
    }
	.accshow {
		display:none;
	}
}
/*============
#loading_animation
=============*/
#anime-js {
 width: 200px;
 height: 200px;
 background-color: #000;
}
/*============
#shoppingcart
=============*/
@media only screen and (min-width: 0px) {
	a.cartbtn, .searchbtn  {
	    color: gray;
		width: 50px;
	    height: 50px;
	    font-size: 30px;
	    position: absolute;
	    top: 10px;
	    right: 0px;
	    z-index: 100;
	    background-color: #b32212;
	    border: solid 1px #d1caca;
	    border-radius: 3px;
		text-align: center;
		padding:12px 0;
	 }
	.cartbtn i{
		font-size:24px;
		color:white;
	}
	.searchbtn{
		display: none;
		color: white;
		background-color: #d1caca;
		top: 10px;
		right: 70px;
	}
	.searchbtn i {
		font-size:24px;
		color: white;
	}
	.header_head_left .a.cartbtn, .header_head_left .searchbtn  {
	    z-index: 9;
	}
}
@media only screen and (min-width: 641px) {
	a.cartbtn {
		display:none;
	}
	.searchbtn {
		display:none;
	}
}
/*============
#history
=============*/
.history {
	display: flex;
}
.history .image {
	width: 20%;
}
.history .image img{
	width: 100%;
}
@media only screen and (max-width: 640px) {
	.history {
		flex-wrap: wrap;
	}
	.history .image {
		width: 100%;
	}
}
/*============
#disclimer
=============*/
.disclaimer{
	width: 94%;
	margin: 20px 3%;
}
/*============
#popup
=============*/
@media only screen and (min-width: 0px) {
#popup{
  width:90%;
  line-height:100px;
  background:#fff;
  padding:0 4%;
  box-sizing:border-box;
  display:none;
  position:fixed;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.sp_list img{
  width:100%;
}
.sp_list label{
  display:block;
}
.sp_list label span{
  display:block;
  background-color:#01b6ed;
  color:#fff;
  width:170px;
  line-height:40px;
  border-radius:4px;
  text-align:center;
	margin-top: 10px;
  margin-left: 10px;
}
.sp_list label span:hover{
  cursor:pointer;
}
.sp_list input[type="checkbox"]{
  display:none;
}

.sp_list input[type="checkbox"]:checked + #popup{
  display:block;
  transition:.2s;
}

@media only screen and (min-width: 641px) {
	.sp_list {
		display: none;
	}
}
/* 取扱説明書 */

.manual_block {
	float: left;
	margin: 20px 0 0 0;
	width: 100%;
	height: auto;
}
.manual_block h3 {
	background: none;
	margin: 0;
	padding: 0;
	font-size: 16px;
	color: #09016F;
}
.pdf_title {
	text-align: center;
	background-color: #fff;
	font-size: 15px;
	font-weight: bold;
	color: #EC3838;
}
.word_title {
	text-align: center;
	background-color: #fff;
	font-size: 15px;
	font-weight: bold;
	color: #01B9FC;
}
.kit_box {
	float: left;
	margin: 10px 20px 0 0;
	width: 100%;
	height: auto;
	border: 3px solid #039ce4;
	text-align: center;
}
.file_period {
	float: left;
	padding: 0;
	width: 100%;
	background:#e8f6fc;
	border-top: 1px solid #039ce4;
	border-bottom: 1px solid #039ce4;
}
.file_period_last {
	float: left;
	margin: 5px 0 0 0;
	width: 100%;
	background:#e8f6fc;
	border-top: 1px solid #039ce4;
}
.latest {
	float: left;
	margin: 0;
	padding: 1em 0 0 25px;
	width: 25%;
	font-size: 12px;
}
.previous {
	float: left;
	margin: 5px 0 0 0;
	padding: 10px 0 10px 0;
	width: 25%;
	font-size: 12px;
}
.previous li, .latest li {
	margin: 5px auto;
	background:#e8f6fc;
	text-align:left;
}
.manual_block img {
	margin: 0;
	height: 20px;
}
.manual_table {
	width: 100%;
	border: solid 3px;
	border-color: #039ce4;
	margin: 10px 0;
	border-collapse: collapse;
	}
.manual_dl {
	text-align: left;
	border: solid 0.5px;
	border-color: #039ce4;
	background: #e8f6fc;
	padding: 5px;
	}
.manual_list {
	margin: 10px;
	display: inline-block;
	font-size: 16px;
	width: 290px;
	text-align: left;
	}
.manual_btn {
	float: right;
	font-size: 12px;
	padding: 1px 10px;
    font-weight: bold;
    display: inline-block;
    text-decoration: none;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	border: double #fff;
    border-radius: 5px;
    background: #039ce4;
    color: #fff;
}
.mnual_btn:hover {
    background: #94ddff;
	color: #fff;
}
	
/* ロッドホルダー */
.fishing_m table {
	font-size: 15px;
	border-collapse: collapse;
	width: 100%;
	}
.fishing_m a {
	color: black;
	text-decoration: underline;
	font-weight: bold;
	}
.fishing_m img {
	padding: 10px;		
	}
.fishing_m table td {
	color: black;
	text-align: center;
	padding: 5px;
	border: solid 1px #acc1c7;;
	background-color: #d8e6e9;
	}
.f_thumb img {
	margin: 0px 10px 10px 0;		
	}
.fdetails{
	font-size: 15px;
	border-collapse: collapse;
	width: 100%;
	}
.ftitle{
	background-color: #17a6d4;
	padding: 5px 3px 5px 10px;
	font-size: 15px;
	color: white;
	font-weight: bold;
}
.ftext{
	background-color: #fff;
	color: #000;
	border-width: 1px;
	border-style: solid;
	border-color: #acc1c7;
	padding: 2px 3px 2px 10px;
}
.ftext2{
	background-color: #d8e6e9;
	color: #000;
	border-width: 1px;
	border-style: solid;
	border-color: #acc1c7;
	padding: 5px 5px 5px 5px;
}
#page_top{
  width: 70px;
  height: 70px;
  position: fixed;
  right: 8px;
  bottom: 8px;
  background: #00ddff;
  opacity: 0.8;
  border-radius: 50%;
  z-index: 100;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 50px;
  color: #fff;
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0;
  bottom: 25px;
  right: 0;
  left: 10px;
  margin: auto;
  text-align: center;
}
@media only screen and (max-width: 640px) {
a.anchor{
    visibility:hidden;
    padding-top: 170px;
    margin-top: -170px;
}
}
.fbtn {
	font-size: 15px;
	padding: 1px 10px;
	margin:3px 0px 10px 0px;
    font-weight: bold;
    display: inline-block;
    text-decoration: none;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    border-radius: 5px;
    background: rgb(133,255,37);
background: linear-gradient(180deg, rgba(133,255,37,1) 0%, rgba(0,224,0,1) 35%, rgba(18,203,0,1) 100%);
    color: #fff;
}
.fbtn:hover {
    background: rgb(197,255,151);
	background: linear-gradient(180deg, rgba(197,255,151,1) 0%, rgba(93,255,93,1) 35%, rgba(37,255,16,1) 100%);
	color: #fff;
}
/*---------------
-select
---------------*/
	.select_section table {
		margin: 60px 0 80px;
	}
	.select_section_title {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 24px;
	}
	.select_section table th{
		font-size: 18px;
		padding: 12px 0;
	}
	.select_section_image {
		width: 300px;
		max-width: 80%;
		display: flex;
		margin: 20px auto 0;
	}
	.select_area {
	  display: flex;
	  justify-content: space-around;
	  margin: 0 40px;
	}
	.select_area_title {
	  font-size: 20px;
	  font-weight: bold;
	  margin: 20px 0;
	}
	.select_section_product {
	  display: flex;
	  justify-content: space-around;
	}
	.select_section_product td {
	  width: calc((100% - 80px) / 3);
	  padding-bottom: 20px;
	}
	#table1 {
	  justify-content: flex-start;
	  gap: 20px;
	  padding: 0 20px;
	}
	#table2, #table3 {
	  gap: 40px;
	}
	#table2, #table3 {
	  justify-content: center;
	}
	.select_section_text {
	  display: block;
	  padding: 0 20px 20px;
	  font-size: 13px;
	}
	.select_area a {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  width: 30%;
	  font-size: 16px;
	  font-weight: bold;
	  text-align: center;
	  border: 1px solid #0088e7;
	  padding: 20px;
	  transition: .5s;
	}
	.select_area a:nth-child(1) {
	  background: #FDFD5E;
	  border: 1px solid #FDFD5E;
	}
	.select_area a:nth-child(2) {
	  background: #f0f8ff;
	  border: 1px solid #f0f8ff;
	}
	.select_area a:nth-child(3) {
	  background: #ffe4e1;
	  border: 1px solid #ffe4e1;
	}
	.select_area a:hover {
	  opacigy: 0.7;
	}
	@media only screen and (max-width: 640px) {
	  .select_section {
		padding-top: 60px;
		margin: 0 8px;
	  }
	  .select_section table {
		width: 96%;
		margin: 24px auto;
	  }
	  #table1 {
		padding: 0 10px;
	    gap: 10px;
	  }
	  .select_section_product td {
	    width: calc((100% - 40px) / 3);
	  }
	  .select_section_title {
		font-size: 18px;
	  }
	  .select_section_text {
	    font-size: 11px;
	  }
	  .select_area {
		margin: 0;
	  }
      .select_area a {
		width: 32%;
	    font-size: 12px;
	    padding: 6px 2px;
	  }
	}
/*---------------
-swiper
---------------*/
.swiper {
	padding-bottom: 30px !important;
}
.swiper-title {
	font-size: 24px;
	font-weight: bold;
	margin: 20px;
	color: #0088e7;
}
.swiper-slide {
	position: relative;
	height: auto !important;
}
.swiper-slide > a{
	display: block;
	width: 100%;
	height: 100%;
}
.swiper-slide .rank{
	padding: 5px;
	border: 1px solid;
	background-color: white;
	font-weight: bold;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	content:"";
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	z-index: 5;
}
.swiper-slide #rank1{
	color: white;
	background-color: #e6b422;
	border: 1px solid #e6b422;
}
.swiper-slide #rank2{
	color: white;
	background-color: lightgray;
	border: 1px solid lightgray;
}
.swiper-slide #rank3{
	color: white;
	background-color: brown;
	border: 1px solid brown;
}
.swiper-slide-image {
  width: 100%;
  object-fit: contain;
}
.swiper-slide-title {
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
@media only screen and (max-width: 640px) {
  .swiper-slide-title {
    font-size: 12px;
  }
}

#top .mainArea {
	max-width: none !important;
}
#top .sidenav {
	display: none !important;
}
#top .main {
	width: 100%;
	float: none;
	padding: 0;
}
#top .header_foot {
	margin-bottom: 0;
}
#top .access-ranking {
	width: 100%;
}
#top .access-ranking .swiper-slide-image {
	/*height: 220px !important;*/
}
#top .access-ranking .swiper-slide-title {
	font-size: 17px;
}
#top .ranking-swiper {
	width: 100%;
	margin: 0 auto;
	padding: 0 5%;
	overflow: hidden;
	position: relative;
}
#top .swiper-button-prev {
	left: 0;
}
#top .swiper-button-next {
	right: 0;
}
#top .swiper-button-next,.swiper-button-prev {
	color: #000 !important;
	top: 40% !important;
	width: 40px !important;
	height: 40px !important;
}
#top .swiper-button-next::after,.swiper-button-prev::after {
	content: "";
	background-size: cover;
	width: 100%;
	height: 100%;
}
#top .swiper-button-prev::after {
	background-image: url(images/left-arrow.png);
}
#top .swiper-button-next::after {
	background-image: url(images/right-arrow.png);
}
#top .section-block {
	margin: 80px auto;
	width: 90%;
}
#top .section-block.suffer {
	width: 70%;
	position: relative;
}
#top .section-block .swiper{
	padding-bottom: 12px !important;
}
#top .section-block .swiper-wrapper {
	text-align: center;
}
#top .section-block .swiper-slide img {
	width: 100%;
}
#top .section-block .swiper-caption {
	position: absolute;
	width: 95%;
	left: 2.5%;
	bottom: 5%;
	color: #fff;
	font-size: 20px;
	text-align: center;
	text-shadow: 1px 1px 2px #000;
	z-index: 100;
}
#top .swiper-text {
	font-size: 13px;
	text-align: center;
	background-color: rgba(150,245,252,0.2);
	padding: 4px;
}
#top .car-gallery-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0 0.5%;
	gap: 3px;
}
#top .car-gallery-listItem {
	width: 33%;
	aspect-ratio: 1.3;
	position: relative;
}
/*20250721 確認後OKであれば.test外す*/
#top.test .car-gallery-listItem {
	opacity: 0;
  	transform: translateY(1rem);
  	transition: all 0.2s ease-out;
}
#top.test .car-gallery-listItem.is-visible {
	opacity: 1;
	transform: none;
}
#top .car-gallery-listItem .car-gallery-link{
	display: flex;
	width: 100%;
	height: 100%;
	background-color: #000;
	background-size: cover;
	background-position: center;
	transition: filter .3s linear;
	filter: brightness(1.0);
}
#top .car-gallery-listItem .car-gallery-link p{
	background: rgba(128,128,128,0.4);
	font-weight: bold;
}
#top .car-gallery-listItem p{
	position: absolute;
	bottom: 10%;
	left:50%;
	margin-right: -50%;
	transform:translate(-50%,-20%);
	color: #fff;
	text-align: center;
	text-shadow: 1px 1px 2px #000;
}
#top .car-gallery-listItem span{
	font-size: 22px;
	letter-spacing: 3px;
}
#top .car-gallery-listItem span.product-name{
	font-size: 14px;
}
#top .car-gallery-listItem a:hover{
	filter: brightness(0.7);
}
#top .banner_area {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
#top .banner_area-item {
	width: 50%;
	overflow: hidden;
}
#top .banner_area-item a{
	display: inline;
}
#top .banner_area-text {
	width: 100%;
	font-size: 14px;
	text-align: center;
	margin: 10px 0 40px;
}
#top .banner_area-item-image {
	width: 100%;
	height: 100%;
	transition: transform .6s ease;
}
#top .banner_area-item-image:hover {
	transform: scale(1.05);
}
#top .type-area-item {
	height: 150px;
}
#top .type-area-item a{
	display: block;
	height: 100%;
}
#top .type-area-item a img{
	height: 100%;
	object-fit: cover;
}
#top .type-area-lead{
	font-size: 16px;
	margin: 40px auto;
}
@media only screen and (min-width: 640px) {
	#top .car-gallery-listItem:nth-child(3n - 1) {
		transition-delay: 0.4s;
	}
	#top .car-gallery-listItem:nth-child(3n) {
		transition-delay: 0.6s;
	}
}
#loading {
	background-color: #fcfcfc;
	width: 100%;
	height: 100vh;
	position: fixed;
	z-index: 200;
}
#loading svg{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 40%;
	min-width: 200px;
	height: auto;
}
@media only screen and (max-width: 640px) {
	#loading svg{
		width: 70%;
	}
}
@-webkit-keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}
#top .svg-elem-1 {
  -webkit-animation: animate-svg-fill-1 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7s both;
          animation: animate-svg-fill-1 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7s both;
}

@-webkit-keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-2 {
  -webkit-animation: animate-svg-fill-2 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7999999999999999s both;
          animation: animate-svg-fill-2 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7999999999999999s both;
}

@-webkit-keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-3 {
  -webkit-animation: animate-svg-fill-3 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8999999999999999s both;
          animation: animate-svg-fill-3 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8999999999999999s both;
}

@-webkit-keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-4 {
  -webkit-animation: animate-svg-fill-4 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1s both;
          animation: animate-svg-fill-4 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1s both;
}

@-webkit-keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-5 {
  -webkit-animation: animate-svg-fill-5 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s both;
          animation: animate-svg-fill-5 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s both;
}

@-webkit-keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-6 {
  -webkit-animation: animate-svg-fill-6 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s both;
          animation: animate-svg-fill-6 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s both;
}

@-webkit-keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-7 {
  -webkit-animation: animate-svg-fill-7 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s both;
          animation: animate-svg-fill-7 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s both;
}

@-webkit-keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-8 {
  -webkit-animation: animate-svg-fill-8 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s both;
          animation: animate-svg-fill-8 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s both;
}

@-webkit-keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-9 {
  -webkit-animation: animate-svg-fill-9 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s both;
          animation: animate-svg-fill-9 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s both;
}

@-webkit-keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-10 {
  -webkit-animation: animate-svg-fill-10 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s both;
          animation: animate-svg-fill-10 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s both;
}

@-webkit-keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-11 {
  -webkit-animation: animate-svg-fill-11 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s both;
          animation: animate-svg-fill-11 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s both;
}

@-webkit-keyframes animate-svg-fill-12 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-12 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-12 {
  -webkit-animation: animate-svg-fill-12 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s both;
          animation: animate-svg-fill-12 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s both;
}

@-webkit-keyframes animate-svg-fill-13 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-13 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-13 {
  -webkit-animation: animate-svg-fill-13 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s both;
          animation: animate-svg-fill-13 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s both;
}

@-webkit-keyframes animate-svg-fill-14 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-14 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-14 {
  -webkit-animation: animate-svg-fill-14 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2s both;
          animation: animate-svg-fill-14 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2s both;
}

@-webkit-keyframes animate-svg-fill-15 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

@keyframes animate-svg-fill-15 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(35, 24, 21);
  }
}

#top .svg-elem-15 {
  -webkit-animation: animate-svg-fill-15 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s both;
          animation: animate-svg-fill-15 1.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s both;
}
#shipping_table{
	padding-top: 40px;
}
@media only screen and (max-width: 640px) {
	#top .car-gallery-listItem {
	    width: calc(50% - 1.5px);
    }
	#top .car-gallery-listItem span{
		font-size: 15px;
	}
	#top .car-gallery-listItem span.product-name{
		display: none;
	}
	#top .banner_area {
		flex-wrap: wrap;
	}
	#top .section-block {
		width: 96%;
	    margin: 40px auto;
    }
	#top .type-area-lead{
		font-size: 14px;
		margin: 20px auto;
	}
	#top .ranking-swiper {
	    width: 100%;
	}
	#top .access-ranking .swiper-slide-image {
		height: 150px !important;
	}
	#top .access-ranking .swiper-slide-title {
		font-size: 13px;
	}
	.swiper-button-next,.swiper-button-prev {
		width: 30px !important;
		height: 30px !important;
	}
	#top .swiper-button-next::after,.swiper-button-prev::after {
		background-size: contain;
	}
	#top .swiper-button-prev {
		left: 5px !important;
	}
	#top .swiper-button-next {
		right: 5px !important;
	}
	#top .section-block .swiper-caption {
		bottom: 10%;
		font-size: 12px;
	}
	#top .section-block.suffer {
		width: 96%;
	}
}