@charset "utf-8";
/* CSS Document */

/*=============================================
common
=============================================*/
body {
	margin: 0;
	padding: 0;
	font-family: "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", MS PGothic, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 1.3em;
}

h2.philosopy_sp {
	display: none;
}

.sitemap_pc {
	display: none;
}

div.page_title {
	width: 100%;
	margin: 0 auto;
	padding: 1% 0;
	background: #969696;	
}

div.page_title_ss_info {
	width: 100%;
	margin: 0 auto 20px auto;
	padding: 1% 0;
	background: #969696;	
}

div.page_title h2,div.page_title_ss_info h2 {
	width: 96%;
	margin: 10px auto;
	color: #ffffff;
/*	font-family: 'Sawarabi Gothic', sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 3px;
}

/*=============================================
Global Menu
=============================================*/
.hamburger {
	display : block;
	position: fixed;
/*	z-index : 8;*/
	z-index : 9999999;
	right : 13px;
	width : 42px;
/*	height: 42px;*/
	height: 60px;
	cursor: pointer;
	text-align: center;
	background: #ffffff;
	border: 3px solid #ffffff;
	/** 重要なお知らせ無し */
/*	top   : 12px;*/
	/** 重要なお知らせ有り */
/*	top:40px;
	margin: 10px 0 0 0;*/
}

.hamburger span {
	display : block;
	position: absolute;
	width   : 30px;
	height  : 2px ;
	left    : 6px;
	background : #555;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition   : 0.3s ease-in-out;
	transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
	top: 10px;
}
.hamburger span:nth-child(2) {
	top: 20px;
}
.hamburger span:nth-child(3) {
	top: 30px;
}

.hamburger p {
	position: absolute;
	bottom: 0;
    font-family: 'Josefin Sans', sans-serif;
	font-weight: bold;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	top : 16px;
	left: 6px;
	background :#555;
	-webkit-transform: rotate(-45deg);
	-moz-transform   : rotate(-45deg);
	transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	top: 16px;
	background :#555;
	-webkit-transform: rotate(45deg);
	-moz-transform   : rotate(45deg);
	transform        : rotate(45deg);
}

.hamburger.active p {
	color: #555;
}

nav.globalMenuSp.active {
/*	z-index: 7;*/
	z-index: 999999;
}

nav.globalMenuSp {
	position: fixed;
	z-index : -1;
	left : 0;
	color: #fff;
	background: rgba(0,0,0,0.7);
	text-align: center;
	width: 100%;
	opacity: 0;
	transition: opacity .6s ease, visibility .6s ease;
	height: 100vh;
	background: url(../images_2021/top/mv01.jpg) no-repeat;
	background-position: center center;
	top  : 0;
}

div.global_navi_logo {
	width: 60%;
	margin: 15px 0 0 10px;
}

div.global_navi_logo img {
	width: 100%;
}

nav.globalMenuSp ul {
	margin: 30px auto 0 auto;
	padding: 0;
	width: 100%;
	background: #ffffff;
}

nav.globalMenuSp ul li {
	list-style-type: none;
	padding: 10px 0;
	width: 100%;
	transition: .4s all;
	border-top: 1px solid #000000;
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	background: url(../images_2021/navi_icon.png) no-repeat;
	background-size: 3%;
	background-position: center right 10px;
}

nav.globalMenuSp ul li:last-child {
	padding-bottom: 10px;
}

nav.globalMenuSp ul li:hover{
	background-color :#000000;
	background-image: url(../images_2021/navi_icon_on.png) no-repeat;
	background-size: 3%;
	background-position: center right 20px;
}

nav.globalMenuSp ul li a {
	display: block;
	color: #000000;
	padding: 1em 0;
	text-decoration :none;
}

nav.globalMenuSp ul li a:hover {
	color: #ffffff;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	opacity: 100;
}
/*=============================================*/


div.page_top_button {
    position: fixed;
    bottom: 65px;
    right: 20px;
	z-index: 10;
}

div.page_top_button img {
	width: 50px;
}

.fadein {
	opacity : 0.1;
	transform: translateY(20px);
	transition: all 1s;
}

/** link button */
.button {
	display: inline-block;
	border-radius: 20px;
	padding: 10px 0;
	background: #000000;
	text-align: center;
	color: #ffffff;
	width: 75%;
	margin: 0 auto;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	border-radius: 20px;
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button {
	position: relative;
	z-index: 6;
	background-color: #333;
	border: 2px solid #333;
	border-radius: 20px;
	color: #fff;
	line-height: 15px;
}

.button:hover {
	background-color: #fff;
	border-color: #075185;
	color: #075185;
}
.button::before,
.button::after {
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #333;
}
.button::before {
	right: 0;
}
.button::after {
	left: 0;
}
.button:hover::before,
.button:hover::after {
	width: 0;
	background-color: #075185;
}

.detail-button {
	width:75%;
	border-radius: 10px;
	border:2px solid #000000;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin:0 auto;
}
.detail-button a {
	font-family: 'Noto Sans JP', sans-serif;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
	width:100%;
	display: block;
}
.detail-eff {
	width:100%;
	border:70px solid #000000;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}
.detail-button:hover .detail-eff {
	border:0px solid #000000;
}
.detail-button:hover a {
	color:#000000;
}

div.bread_crumb {
	width: 90%;
	margin:  0 auto;
	padding: 20px 0 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	color: #969696;
}

div.bread_crumb a {
	color: #969696;
}

.bc_icon {
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #969696;
/*    vertical-align: middle;*/
    text-decoration: none;
    font-size: 1.4rem;
	
}

.bc_icon::before,
.bc_icon::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.bc_arrow::before{
    left: 4px;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #969696;
}

/**=========================================*/
/** ヘッダー */
/**=========================================*/
div.header_wrapper {
	width: 100%;
	border-bottom: 1px solid #969696;
}

div.header_logo {
	width: 94%;
	margin: 0 auto;
	padding: 10px 0 30px 0;
	text-align: center;
}

div.header_logo img {
	width: 66%;
}

div.navigation {
	display: none;
}
/**=========================================*/

/**=========================================*/
/* フルスクリーン */
/**=========================================*/
div.main_visual_wrapper {
	padding: 0;
	width: 100%;
	position: relative;
	height: 35vh;
	overflow: hidden;

	/** 重要なお知らせ無し */
/*	margin: 0 auto;*/
	/** 重要なお知らせ有り */
/*	margin: 40px auto;*/
}

div.main_visual_wrapper h1 {
	position: absolute;
	top: 15px;
	left: 10px;
	z-index: 12;
	width: 95%;
}

div.main_visual_wrapper h1 img {
	width: 50%;
}

div.main_visual_wrapper h2 {
	position: absolute;
	z-index: 11;
	width: 95%;
	left: 10px;
	bottom: 10%;
}

div.main_visual_wrapper h2 img {
	width: 90%;
}
.main_visual div {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
/*	height: 100vh;*/
	height: 35vh;
	margin: 0;
	position: relative;
}

div.main_visual {
	height: 35vh;
	overflow: hidden;
	position: relative;
}

div.ef_img {
	z-index:10;
    opacity: 0;
    width: 100%;
    height: 35vh;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 36s 0s infinite;
    animation: anime 36s 0s infinite;
}

div.ef_img01 {
	background-image: url(../images_2021/top/mv99.jpg);
}
div.ef_img02 {
	background-image: url(../images_2021/top/mv98_re.jpg);
}
div.ef_img03 {
	background-image: url(../images_2021/top/mv97.jpg);
}
div.ef_img04 {
	background-image: url(../images_2021/top/mv96.jpg);
}
div.ef_img05 {
	background-image: url(../images_2021/top/mv95.jpg);
}
div.ef_img06 {
	background-image: url(../images_2021/top/mv94.jpg);
}

.ef_img:nth-of-type(2) {
      -webkit-animation-delay: 6s;
      animation-delay: 6s; }

    .ef_img:nth-of-type(3) {
      -webkit-animation-delay: 12s;
      animation-delay: 12s; }

    .ef_img:nth-of-type(4) {
      -webkit-animation-delay: 18s;
      animation-delay: 18s; }

    .ef_img:nth-of-type(5) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .ef_img:nth-of-type(6) {
      -webkit-animation-delay: 30s;
      animation-delay: 30s; }
@keyframes anime {
  0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
        transform: scale(1.2) ;
    }
    100% { opacity: 0 }
}
/**=========================================*/


/**=========================================*/
/** main contents */
/**=========================================*/
div.main_catch_wrapper {
	width: 90%;
	margin: 0 auto;
}
/**=========================================*/


/**=========================================*/
/** top */
/**=========================================*/
div.main_catch {
	width: 100%;
	margin: 30px 0;
	padding: 50px 0 20px 0;
	text-align: center;
}

div.main_catch img {
	width: 90%;
}

div.main_catch p {
	margin: 30px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 30px;
}

div.top_navi_wrapper {
	position: relative;
	margin: 0 auto;
	width: 100%;
	text-align: center;
}

div.top_navi_inner {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	height: 32vh;
	margin: 0;
	position: relative;
}

div.top_navi_inner div.top_navi01 img, div.top_navi_inner div.top_navi02 img,div.top_navi_inner div.top_navi03 img,div.top_navi_inner div.top_navi04 img,div.top_navi_inner div.top_navi05 img,div.top_navi_inner div.top_navi06 img,div.top_navi_inner div.top_navi07 img,div.top_navi_inner div.top_navi08 img {
	width: 100%;
	height: 32vh;
	object-fit:cover;
}

div.top_navi_inner_sp {
	height: 32vh;
	overflow: hidden;
	width: 100%;
}

div.bc_img {
/*	z-index:5;*/
    opacity: 0;
    width: 100%;
    height: 100vh;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: bc_anime 36s 0s infinite;
	animation: bc_anime 36s 0s infinite;
}

.bc_img:nth-of-type(2) {
      -webkit-animation-delay: 6s;
      animation-delay: 6s;}

    .bc_img:nth-of-type(3) {
      -webkit-animation-delay: 12s;
      animation-delay: 12s; }

    .bc_img:nth-of-type(4) {
      -webkit-animation-delay: 18s;
      animation-delay: 18s; }

    .bc_img:nth-of-type(5) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .bc_img:nth-of-type(6) {
      -webkit-animation-delay: 30s;
      animation-delay: 30s; }

@keyframes bc_anime {
  0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    100% { opacity: 0 }
}

div.top_navi_inner_sp div.top_navi01 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv99_bg_sp.jpg);
	background-size: cover;
}
div.top_navi_inner_sp div.top_navi02 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv98_bg_sp.jpg);
	background-size: cover;
}
div.top_navi_inner_sp div.top_navi03 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv97_bg_sp.jpg);
	background-size: cover;
}
div.top_navi_inner_sp div.top_navi04 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv96_bg_sp.jpg);
	background-size: cover;
}
div.top_navi_inner_sp div.top_navi05 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv95_bg_sp.jpg);
	background-size: cover;
}
div.top_navi_inner_sp div.top_navi06 {
	width: 100%;
	height: 100%;
	background-image: url(../images_2021/top/mv94_bg_sp.jpg);
	background-size: cover;
}

div.top_navi_inner_pc {
	display: none;
}

div.top_navi_button {
	padding: 30px 0 0 0;
	position: absolute;
	z-index:6;
	width: 90%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

div.top_navi_button a img {
	width: 32%;
	margin: 3% 0 5% 0;
}

div.top_navi_button img:hover {
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
}
@-webkit-keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}

div.customer_wrapper {
	width: 90%;
	margin: 100px auto;
}

div.customer_left {
	float: none;
	width: 100%;
}

div.customer_right {
	margin: 75px 0 0 0;
	float: none;
	width: 100%;
}

div.customer_left img, div.customer_right img {
	display: block;
	margin: 0 auto;
	width: 75%;
}

div.customer_left p, div.customer_right p {
	margin: 30px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
}
/**=========================================*/


/** campaign */
div.campaign_wrapper {
	margin: 100px auto;
	width: 90%;
}

.multiple { 
	padding: 0;
}

.multiple img { 
	width: 100%;
}
.multiple div { 
	margin: 0 5px;
}
.multiple .slick-next { 
	right: 17px;　z-index: 100;
}
.multiple .slick-prev { 
	left: 23px; z-index: 100;
}

div.whatsnew_wrapper {
	margin: 100px auto 0 auto;
	width: 90%;
}

div.whatsnew_wrapper p {
	padding: 20px 0;
}

div.whatsnew_wrapper p a {
	margin: 0 auto;
	display: block;
	padding: 20px 0;
	width: 100%;
}

div.whatsnew_title_wrapper {
	width: 100%;
	padding: 20px 0 0 0;
	margin: 0;
}

div.whatsnew_title {
	width: 100%;
	float: none;
	text-align: left;
}

div.whatsnew_title img {
	width: 100%;
}

div.whatsnew_icon {
/*
	margin: 20px 0 0 0;
	padding: 20px 0;
	width: 100%;
	float: none;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	text-align: center;
*/
	display: none;
}

div.whatsnew_icon img {
	margin: 0 0 0 5px;
}

div.whatsnew_icon img.wn_icon01 {
	width: 76px;
}

div.whatsnew_icon img.wn_icon02 {
	width: 56px;
}

div.whatsnew_icon img.wn_icon03 {
	width: 55px;
}

div.whatsnew_icon img.wn_icon04 {
	width: 88px;
}

div.whatsnew_wrapper ul {
	width: 100%;
	list-style: none;
	margin: 0 0 10px 0;
}

div.whatsnew_wrapper ul li {
	padding: 10px 0;
	float: left;
}

div.whatsnew_wrapper ul li.wn_list_icon {
	width: 1%;
	padding: 10px 0 5px 0;
	text-align: center;
}

div.whatsnew_wrapper ul li.wn_list_icon img {
	width: 75%;
}

div.whatsnew_wrapper ul li.wn_list_date {
	width: 50%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	text-align: left;
	padding: 15px 0 5px 0;
}

div.whatsnew_wrapper ul li.wn_list_sep {
	display: none;
}

div.whatsnew_wrapper ul li.wn_list_title {
	clear: both;
	width: 100%;
	font-size: 1.4rem;
	padding: 0 0 20px 2%;
	margin: 0 0 0 0;
	border-bottom: 1px solid #efefef;
}

div.corona_info_wrapper {
	margin: 20px auto;
	width: 90%;
}

.corona-button {
	width:100%;
	border:2px solid #D90000;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin:0 auto;
}
.corona-button a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.3rem;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:6;
	position:relative;
}
.corona-eff {
	width:100%;
	border:70px solid #D90000;
	position:absolute;
	transition:all .5s ease;
	z-index:6;
	box-sizing:border-box;
}
.corona-button:hover .corona-eff {
	border:0px solid #D90000;
}
.corona-button:hover a {
	color:#D90000;
}

div.footer_sitemap {
	width: 100%;
	background: #E1E1E1;
	margin: 50px 0 30px 0;
	padding: 20px 0;
}

div.footer_sitemap ul {
	width: 98%;
	margin: 0 0 0 2%;
	list-style: none;
	display: table;
}

div.footer_sitemap ul li {
	width: 48%;
	margin: 0;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 15px 0 15px 1%;
	border: 1px solid #cccccc;
	font-size: 1.2rem;
	text-align: left;
	display: block;
	vertical-align: middle;
	float: left;
	background: url(../images_2021/navi_icon_on.png) no-repeat;
	background-position: center right 10px;
	background-size: 8px;
	color: #000000;
	font-weight: bold;
}

div.footer_sitemap ul li br {
	display: none;
}

div.footer_sitemap ul li.sitemar_last {
	border: 1px solid #cccccc;
}

div.footer_wrapper {
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

div.footer_wrapper img {
	width: 50%;
}

div.footer_wrapper span {
	display: block;
	margin: 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.2rem;
	text-align: center;
}

div.footer_copyright {
	width: 100%;
	margin: 30px 0 0 0;
	background: #000000;
	padding: 10px 0;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 0.8rem;
	color: #ffffff;
}

/**=========================================*/
/** 新着情報 */
/**=========================================*/
div.news_wrapper {
	width: 94%;
	margin: 0 auto;
}

div.news_icon_list {
	width: 95%;
	margin: 30px auto;
	border-top: 1px solid #969696;
	border-bottom: 1px solid #969696;
}

div.news_icon_list ul {
	list-style: none;
	padding: 15px 0 10px 0;
}


div.news_icon_list ul li {
	margin: 0 0 3% 0;
	width: 45%;
	padding: 5px 0 0 0;
	text-align: left;
}

div.news_icon_list li img.nig01 { width: 100%; }
div.news_icon_list li img.nig02 { width: 100%; }
div.news_icon_list li img.nig03 { width: 100%; }
div.news_icon_list li img.nig04 { width: 100%; }
div.news_icon_list li img.nig05 { width: 100%; }

div.news_box {
	border-left: 3px solid #969696;
	margin: 0 0 50px 0;
	width: 100%;
}

div.news_box ul {
	list-style: none;
	font-size: 1.4rem;
}

div.news_box ul li {
	padding: 0 0 0 2%;
	float: left;
}

div.news_box ul li.news_date {
	padding-top: 10px;
	color: #DB0000;
}

div.news_box ul li.news_icon {
	margin: 0;
}

div.news_box ul li.news_icon img {
	width: 150px;
}

div.news_box ul li.news_body {
	clear: both;
	padding-top: 10px;
}

div.news_box ul li.news_body span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
}

div.news_box ul li.news_body a {
	text-decoration: underline;
}

/** revision 20231222 */
div.news_box iframe {
	width: 100%;
	height: 315px;
}

/** category mask */
.news_link {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;

}
.news_link li {
/*	width: 24.7%;*/
	width: 55%;
	margin-left: 2px;
	background: #ffffff;
	color: #FFFFFF;
	position: relative;
	padding: 20px 6px 20px;
	cursor: pointer;
	text-align: center;
	line-height: 1;
}
.news_link li:first-child {
	margin-left: 0;
}
.news_link li:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	display: none;
	bottom: -16px;
	left: 50%;
	transform: translateX(-50%);
}
.news_link li.active, .news_link li:hover {
	background: #efefef;
}
.news_link li.active:after, .news_link li:hover:after {
	display: block;
}

/** paging */
.pagination{
    list-style: none;
    padding: 5px;
	display: flex;
	justify-content: left;
	align-items: center;
	flex-wrap: wrap;

}

.pagination li{
    margin: 7px;
    border: 2px solid #333;
}

.pagination a{
    display: block;
    text-decoration: none;
    color: #333;
    padding: 10px;
}

.pagination a:hover{
    background-color: #333;
    color: #ffffff;
}

.pagination>.active{
    background-color: #000000;
}

.pagination>.active a {
	color: #ffffff;
}

.pagination>.disable{
	pointer-events:none;
}

.pagination>.disable a{
	color: #cccccc;
}

.news-button {
	width:100%;
	border:2px solid #000000;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin: 20px auto;
}
.news-button a {
	font-family: 'Noto Sans JP', sans-serif;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
	width:100%;
	display: block;
}
.news-eff {
	width:100%;
	border:70px solid #000000;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}
.news-button:hover .news-eff {
	border:0px solid #000000;
}
.news-button:hover a {
	color:#000000;
}

.ss-news-button {
	width:75%;
	border:2px solid #000000;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin: 20px auto;
}
.ss-news-button a {
	font-family: 'Noto Sans JP', sans-serif;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
	width:100%;
	display: block;
}
.ss-news-eff {
	width:100%;
	border:70px solid #000000;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}
.ss-news-button:hover .news-eff {
	border:0px solid #000000;
}
.ss-news-button:hover a {
	color:#000000;
}
/**=========================================*/

/**=========================================*/
/** 個人のお客様 */
/**=========================================*/
div.personal_mv {
	width: 100%;
	max-width: 2000px;
	position: relative;
	margin: 0 auto;
}

div.personal_mv img {
	width: 100%;
}

div.personal_mv_inner {
	width: 90%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

div.personal_mv_inner h2 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	letter-spacing: 10px;
	position: absolute;
	top: 5%;
	padding: 1% 2%;
}

div.personal_mv_inner h2 span {
	font-size: 1.8rem;
	font-weight: bold;
}

div.personal_mv_inner h3 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.2rem;
	position: absolute;
	bottom: 32%;
	padding: 1%;
	font-weight: normal;
}

div.personal_mv_inner h4 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.2rem;
	position: absolute;
	bottom: 10%;
	padding: 1%;
	font-weight: normal;
}

div.personal_wrapper {
	width: 90%;
	margin: 50px auto;
}

div.personal_menu01,div.personal_menu02,div.personal_menu03,div.personal_menu04 {
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 20px 0;
	margin: 0 0 30px 0;
	text-align: center;
}

div.personal_menu01 span,div.personal_menu02 span,div.personal_menu03 span,div.personal_menu04 span {
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: normal;
}

div.personal_menu01 { background: #C8C8C8; color: #ffffff; }

div.personal_menu02 { background: #B7B7B7; color: #ffffff; }

div.personal_menu03 { background: #A7A7A7; color: #ffffff; }

div.personal_menu04 { background: #969696; color: #ffffff; }

div.personal_menu01 a, div.personal_menu02 a, div.personal_menu03 a, div.personal_menu04 a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 90%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	margin: 20px auto 0 auto;
}

div.personal_menu01 a:hover, div.personal_menu02 a:hover, div.personal_menu03 a:hover,div.personal_menu04 a:hover {
	background: url(../images_2021/page_icon_on.png) no-repeat;
	background-color :#ffffff;
	background-size: 3%;
	color: #000000;
	background-position: center right 20px;
}
/**=========================================*/


/**=========================================*/
/** 太陽プリカ */
/**=========================================*/
div.preca_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.preca_main {
	width: 100%;
	margin: 30px auto;
}

div.preca_main_left {
	float: none;
	width: 100%;
}

div.preca_main_left img {
	width: 100%;
}

div.preca_main_right {
	float: none;
	width: 100%;
	padding: 20px 0 0 0;
	position: relative;
}

div.preca_main_right img {
	display: block;
	width: 75%;
	margin: 0 auto;
}

div.preca_main_right img.preca_desc_pc {
	display: none;
}

div.preca_main_right p {
	position: absolute;
	top: 35%;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	text-align: center;
	font-size: 1.6rem;
}

div.preca_main_right p span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: bold;
}

div.preca_merit_wrapper {
	width: 100%;
	margin: 50px auto 20px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

div.preca_merit_wrapper h3 {
	width: 98%;
	margin: 0 auto 50px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	background: #969696;
	padding: 2% 1%;
}

div.preca_merit {
	width: 100%;
	margin: 0 0 30px 0;
}

div.preca_merit ul {
	list-style: none;
}

div.preca_merit ul li.merit_title {
	margin: 0;
	text-align: center;
}

div.preca_merit ul li.merit_title img {
	width: 85%;
}

div.preca_merit ul li.merit_desc {
	font-size: 1.4rem;
	text-align: center;
	padding: 20px 0;
	line-height: 30px;
}

div.preca_merit ul li.merit_img {
	margin: 0;
	text-align: center;
}

div.preca_merit ul li.merit_img img {
	width: 35%;
}

div.preca_step_wrapper {
	width: 100%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

div.preca_step_wrapper h3 {
	width: 98%;
	margin: 0 auto 20px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	background: #969696;
	padding: 2% 1%;
}

div.preca_step {
	margin: 0 0 20px 0;
	padding: 10px 0;
	width: 100%;
	border: 1px solid #959595;
}

div.preca_step_arrow {
	display: none;
}

div.preca_step_arrow img {
	width: 100%;
}

div.preca_step ul {
	list-style: none;
	width: 90%;
	margin: 0 auto;
}

div.preca_step ul li.preca_step_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	float: left;
}

div.preca_step ul li.preca_step_subtitle {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	float: left;
}

div.preca_step ul li.preca_step_desc {
	clear: both;
	padding: 10px 0 20px 0;
	line-height: 30px;
	font-size: 1.5rem;
}

div.preca_comment_wrapper {
	width: 94%;
	margin: 0 auto;
	border: 1px solid #969696;
	padding: 3%;
}

div.preca_comment_wrapper h3 {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	margin: 0 0 10px 0;
	text-align: center;
}

div.preca_comment_wrapper ul {
	list-style: none;
	width: 95%;
	margin: 0 auto;
}

div.preca_comment_wrapper ul li {
	text-indent: -1rem;
	padding: 5px 0;
}

div.preca_comment_wrapper ul li:before {
	display: inline;
	content: "※";
}

div.preca_comment_wrapper ul li.style_none {
	text-align: right;
}

div.preca_comment_wrapper ul li.style_none:before {
	list-style: none;
	content: "";
}

div.preca_term {
	margin: 30px auto;
	width: 100%;
}

.preca_term-button {
	width:100%;
	border:2px solid #000000;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin:0 auto;
}
.preca_term-button a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.6rem;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
}
.preca_term-eff {
	width:100%;
	border:70px solid #000000;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}
.preca_term-button:hover .preca_term-eff {
	border:0px solid #000000;
}
.preca_term-button:hover a {
	color:#000000;
}
/**=========================================*/
/** 約款 */
div.preca_term_wrapper {
	width: 100%;
	margin: 0 auto;
}

div.preca_term_wrapper h2 {
	display: block;
	background: #969696;
	margin: 0 auto;
	color: #ffffff;
/*	font-family: 'Sawarabi Gothic', sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
	letter-spacing: 10px;
	text-align: center;	
	padding: 20px 0;
}

div.preca_term_wrapper ul {
	margin: 0 auto;
	width: 90%;

}

div.preca_term_wrapper ul li {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	padding: 10px 0 10px 2%;
	font-weight: normal;
	
}

div.preca_term_wrapper ul li.preca_term_title {
	font-size: 1.5rem;
	margin: 20px 0 0 0;
	border-bottom: 1px solid #cccccc;
	font-weight: bold;
	letter-spacing: 8px;
}

div.preca_term_wrapper ul li.preca_term_right {
	padding: 20px 0;
	text-align: right;
	line-height: 30px;
}
/**=========================================*/

/**=========================================*/
/** キーパープロショップ */
/**=========================================*/
div.keeper_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.keeper_mv {
	width: 100%;
	margin: 50px auto 0 auto;
}

div.keeper_mv img {
	width: 100%;
}

div.keeper_about_wrapper {
	margin: 50px 0 0 0;
}

div.keeper_about_wrapper h3 {
	width: 98%;
	margin: 0 auto 0 auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	background: #969696;
	padding: 2% 1%;
	display: block;
}

div.keeper_about_wrapper p {
	width: 90%;
	margin: 30px auto;
	line-height: 30px;
}

div.keeper_about_desc_wrapper {
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

div.keeper_about_desc01,div.keeper_about_desc02 {
	width: 90%;
	border: 2px solid #969696;
	margin: 0 auto 20px auto;
}

div.keeper_about_desc01 ul,div.keeper_about_desc02 ul {
	list-style: none;
	width: 90%;
	margin: 0 auto;
	padding: 20px 0;
}

div.keeper_about_desc03 ul {
	list-style: none;
	width: 90%;
	margin: 0 auto;
	padding: 20px 0;
}

div.keeper_about_desc01 ul li,div.keeper_about_desc02 ul li,div.keeper_about_desc03 ul li {
	padding: 5px 0;
	line-height: 26px;
}

div.keeper_about_desc01 ul li.keeper_about_title, div.keeper_about_desc02 ul li.keeper_about_title, div.keeper_about_desc03 ul li.keeper_about_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	font-weight: normal;
	padding: 0 0 10px 0;
}

div.keeper_about_desc03 {
	width: 90%;
	border: 2px solid #969696;
	margin: 0 auto;
}

div.keeper_menu_wrapper {
	margin: 50px 0;
	width: 100%;
}

div.keeper_menu_wrapper h3, div.keeper_wash_menu h3, div.keeper_sidemenu_wrapper h3, div.keeper_qa_wrapper h3 {
	width: 98%;
	margin: 0 auto 0 auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	background: #969696;
	padding: 2% 1%;
	display: block;
}

div.keeper_menu_box {
	width: 100%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

div.keeper_menu {
	width: 48%;
	margin: 0 0 20px 0;
}

div.keeper_menu img {
	width: 100%;
}

div.keeper_menu img:hover {
	opacity: 0.7;
}

div.keeper_wash_menu {
	margin: 50px 0;
}

div.keeper_wash_box {
	width: 100%;
	margin: 30px 0;
}

div.keeper_wash_left {
	width: 100%;
	float:none;
}

div.keeper_wash_left img {
	width: 100%;
}

div.keeper_wash_right {
	float:right;
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	margin: 20px  0 0 0;
}

div.keeper_wash_right span {
	display:block;
	font-size: 1.4rem;
	padding: 10px 0 0 0;
	font-weight: normal;
}

div.keeper_sidemenu_wrapper {
	margin: 50px 0;
}

div.keeper_sidemenu_box {
	margin: 30px 0;
}

div.keeper_sidemenu_left {
	float: none;
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	margin: 0 0 20px 0;
}

div.keeper_sidemenu_left img {
	display: block;
	margin: 50px auto 0 auto;
	width: 98%;
}

div.keeper_sidemenu_right {
	float: right;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

div.keeper_sidemenu_right ul {
	list-style: none;
	width: 100%;
	margin: 0 0 30px 0;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_title span {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 1.4rem;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_img {
	margin: 10px 0;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_img img {
	width: 100%;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_desc {
	
}

div.keeper_option_wrapper {
	margin: 30px 0;
}

div.keeper_option_wrapper h3 {
	width: 96%;
	margin: 0 auto 0 auto;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	letter-spacing: 10px;
	padding: 10px 0;
	background: url(../images_2021/keeper/sidemenu_option_bg.gif) repeat-x;
	background-position: center center;
	text-align: center;
	color: #000000;
}

div.keeper_option_wrapper h3 span {
	background: #ffffff;
	padding: 0 2%;
	display: block;
	width: 50%;
	margin: 0 auto;
	text-align: center;
}

div.keeper_option_desc {
	margin:0;
}

div.keeper_option_desc_inner {
	width: 100%;
	margin: 30px 0 0 0;
}

div.keeper_option_desc_left {
	width: 100%;
	float: none;
}

div.keeper_option_desc_left img {
	width: 100%;
}

div.keeper_option_desc_right {
	margin: 20px 0 0 0;
	width: 100%;
	float: none;
}

div.keeper_shop_wrapper {
	margin: 50px 0;
}

div.keeper_shop_inner {
	width: 95%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

div.keeper_shop_wrapper ul {
	width: 100%;
}

div.keeper_shop_wrapper ul li {
	float: left;
	padding: 0 0 15px 0;
}

div.keeper_shop_wrapper ul li a:hover {
/*	color: #0071E1;
	text-decoration: underline;*/
	text-decoration: none;
}

div.keeper_shop_wrapper ul li.ss_provincce {
	width: 30%;
	clear: both;
	font-weight: bold;
	font-size: 1.4rem;
}

div.keeper_shop_wrapper ul li.ss_sep {
/*	width: 16%;
	overflow: hidden;*/
	display: none;
}

div.keeper_shop_wrapper ul li.ss_name {
	width: 60%;
	margin: 0 0 0 2%;
	font-size: 1.4rem;
	text-decoration: underline; /* 下線 */
	text-decoration-thickness: 0.5em; /* 線の太さ */
	text-decoration-color: rgba(255, 228, 0, 0.4); /* 線の色 */
	text-underline-offset: -0.2em; /* 線の位置。テキストに重なるようにやや上部にする */
	text-decoration-skip-ink: none;
}

div.keeper_qa_wrapper {
	margin: 50px auto;
}

div.keeper_qa_wrapper ul {
	list-style: none;
	width: 90%;
	margin: 30px auto 50px auto;
}

div.keeper_qa_wrapper ul li {
	padding: 0;
	float: left;
}

div.keeper_qa_wrapper ul li.qa_q_icon, div.keeper_qa_wrapper ul li.qa_a_icon {
	width: 100%;
	text-align: center;
}

div.keeper_qa_wrapper ul li.qa_q_desc, div.keeper_qa_wrapper ul li.qa_a_desc {
	width: 100%;
	padding: 20px 0 0 0;
}

div.keeper_qa_wrapper ul li qa_end, div.keeper_qa_wrapper ul li.qa_end {
	padding: 20px 0 30px 0;
	border-bottom: 2px solid #969696;
}

div.keeper_qa_wrapper ul li.qa_sep {
	width: 100%;
	text-align: center;
	padding: 20px 0;
}

div.keeper_qa_wrapper ul li.qa_q_icon img,div.keeper_qa_wrapper ul li.qa_a_icon img, div.keeper_qa_wrapper ul li.qa_sep img {
	width: 20%;
}

div.keeper_qa_wrapper ul li.qa_sep img {
	width: 15%;
}
/**=========================================*/


/**=========================================*/
/** 法人のお客様 */
/**=========================================*/
div.business_mv {
	width: 100%;
	max-width: 2000px;
	position: relative;
	margin: 0 auto;
}

div.business_mv img {
	width: 100%;
}

div.business_mv_inner {
	width: 90%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

div.business_mv_inner h2 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	letter-spacing: 5px;
	position: absolute;
	top: 10%;
	padding: 1% 2%;
}

div.business_mv_inner h2 span {
	font-size: 2rem;
	font-weight: bold;
}

div.business_mv_inner h3 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;
	position: absolute;
	bottom: 28%;
	padding: 1%;
	font-weight: normal;
}

div.business_mv_inner h4 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;
	position: absolute;
	bottom: 10%;
	padding: 1%;
	font-weight: normal;
}

div.business_wrapper {
	width: 90%;
	margin: 50px auto;
}

div.business_menu01,div.business_menu02,div.business_menu03,div.business_menu04,div.business_menu05 {
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 20px 0;
	margin: 0 0 30px 0;
	text-align: center;
}

div.business_menu01 span,div.business_menu02 span,div.business_menu03 span,div.business_menu04 span,div.business_menu05 span {
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: normal;
}

div.business_menu01 { background: #C8C8C8; color: #ffffff; }

div.business_menu02 { background: #B7B7B7; color: #ffffff; }

div.business_menu03 { background: #A7A7A7; color: #ffffff; }

div.business_menu04 { background: #969696; color: #ffffff; }

div.business_menu05 { background: #969696; color: #ffffff; }

div.business_menu01 a, div.business_menu02 a, div.business_menu04 a, div.business_menu05 a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 90%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	margin: 20px auto 0 auto;
}

div.business_menu01 a:hover, div.business_menu02 a:hover,div.business_menu04 a:hover,div.business_menu05 a:hover {
	background: url(../images_2021/page_icon_on.png) no-repeat;
	background-color :#ffffff;
	background-size: 3%;
	color: #000000;
	background-position: center right 20px;
}

div.business_menu03 a.business_menu03-01 {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 90%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	margin: 20px auto 0 auto;
}

div.business_menu03 a.business_menu03-01:hover {
	background: url(../images_2021/page_icon_on.png) no-repeat;
	background-color :#ffffff;
	background-size: 3%;
	color: #000000;
	background-position: center right 20px;
}

div.business_menu03 a.business_menu03-02 {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 90%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	margin: 20px auto 0 auto;
}

div.business_menu03 a.business_menu03-02:hover {
	background: url(../images_2021/page_icon_on.png) no-repeat;
	background-color :#ffffff;
	background-size: 3%;
	color: #000000;
	background-position: center right 20px;
}
/**=========================================*/


/**=========================================*/
/** 個人情報保護方針 */
/**=========================================*/
div.privacy_mv {
	width: 100%;
	position: relative;
	margin: 0 auto;
}

div.privacy_mv img {
	width: 100%;
}

div.privacy_mv_inner {
	width: 90%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

div.privacy_mv_inner h2 {
	background: #ffffff;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	letter-spacing: 10px;
	position: absolute;
	top: 30%;
	padding: 1% 2%;
}

div.privacy_contents_wrapper {
	width: 90%;
	margin: 50px auto;
}

div.privacy_contents_wrapper h3 {
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: normal;
}

div.privacy_contents {
	width: 90%;
	margin: 30px auto;

}

div.privacy_contents p {
	line-height: 26px;

}

p.privacy_sign {
	padding: 20px 0 0 0;
	text-align: right;
}

div.privacy_body {
	width: 90%;
	margin: 0 auto 50px auto;
}

div.privacy_body ul {
	margin: 0 0 50px 0;
	border-left: 5px solid #969696;
}

div.privacy_body ul li {
	margin: 0 0 0 5%;
	line-height: 24px;
}

div.privacy_body ul li.privacy_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	padding: 0 0 10px 0;
}
/**=========================================*/
/**=========================================*/
/** メガウォッシュ（個人） */
/**=========================================*/
div.megawash_personal_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.megawash_personal_mv {
	width: 100%;
	margin: 50px auto 0 auto;
}

div.megawash_personal_mv img {
	width: 100%;
}

div.megawash_personal_outline {
	width: 90%;
	margin: 75px auto 30px auto;
}

div.megawash_personal_outline h3 {
	text-align: center;
}

div.megawash_personal_outline h3 img {
	width: 50%;
}

ul.megawash_personal_outline_inner {
	width: 90%;
	margin: 50px auto 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

ul.megawash_personal_outline_inner li {
	width: 48%;
	text-align: center;
	margin: 0 0 30px 0;
}

ul.megawash_personal_outline_inner li img {
	width: 90%;
}

div.megawash_personal_outline p {
	padding: 20px 0 0 0;
	text-align: center;
}

div.megawash_personal_outline p img {
	width: 90%;
}

div.megawash_personal_point {
	width: 100%;
	background: #FFE100;
	position: relative;
}

p.megawash_personal_point_link {
	width: 75%;
	border-radius: 10px;
	border: 3px solid #FFE100;
	padding: 10px 0;
	position: absolute;
	display: block;
	top: -30px;
	background: #ffffff;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}

p.megawash_personal_point_link img {
	width: 75%;
}

p.megawash_personal_point_link a {
	display: block;
	width: 100%;
}

p.megawash_personal_point_link img:hover {
	opacity: 0.6;
}

div.megawash_personal_point_vi {
	width: 95%;
	margin: 0 auto;
	padding: 75px 0 50px 0;
}

div.megawash_personal_point_vi img {
	width: 100%;
}

div.megawash_personal_desc {
	margin: 75px auto;
	width: 90%;
}

div.megawash_personal_desc_left {
	float: none;
	width: 100%;
	background-color: #20BE19;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	padding: 5% 0;
	border: 1px solid #20BE19;
}

li.desc_left_none {
	display: none;
}

div.megawash_personal_desc_left ul, div.megawash_personal_desc_right ul {
	display: block;
	font-size: 1.6rem;
	font-weight: normal;
	margin: 10px 0 0 0;
}

div.megawash_personal_desc_right {
	float: none;
	width: 100%;
	background: url(../images_2021/megawash_personal/desc_icon_sp.png) no-repeat;
	background-position: center top;
	background-size: 10%;
	color: #20BE19;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	border: 1px solid #20BE19;
	padding: 10% 0 3% 0;
	text-align: center;
}

div.megawash_personal_option {
	width: 90%;
	margin: 0 auto;
}

div.megawash_personal_option h3 {
	width: 100%;
	background:url(../images_2021/megawash_personal/option_bg.gif) repeat-x;
	background-position: center center;
}

div.megawash_personal_option h3 strong {
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
}

div.megawash_personal_option h3 span {
	display: block;
	width: 70%;
	padding: 20px 0;
	border-radius: 10px;
	border: 3px solid #FFE100;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	text-align: center;
	background-color: #ffffff;
	margin: 0 auto;
}

div.megawash_personal_option_menu {
	width: 90%;
	margin: 30px auto;
	padding: 0 0 30px 0;
	border-bottom: 2px solid #FFE100;
}

div.megawash_personal_option_menu_left {
	width: 100%;
	float: none;
	text-align: center;
	padding: 10px 0 0 0;
}

div.megawash_personal_option_menu_left img {
	width: 50%;
}

div.megawash_personal_option_menu_right {
	width: 100%;
	float: none;
	display: inline-block;
/*	vertical-align: middle;*/
	padding: 10px 0;
}

div.megawash_personal_option02 {
	width: 90%;
	margin: 50px auto;
}

div.megawash_personal_option02 h3 {
	width: 100%;
	background:url(../images_2021/megawash_personal/option_bg.gif) repeat-x;
	background-position: center center;
}

div.megawash_personal_option02 h3 span {
	display: block;
	width: 70%;
	padding: 20px 0;
	border-radius: 10px;
	border: 3px solid #FFE100;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	text-align: center;
	background-color: #ffffff;
	margin: 0 auto;
}

div.megawash_personal_option02_desc {
	width: 90%;
	margin: 30px auto;
}

div.megawash_personal_option02_desc_left {
	width: 100%;
	float: none;
}

div.megawash_personal_option02_desc_right {
	width: 100%;
	float: none;
	margin: 30px 0 0 0;
}

div.megawash_personal_option02_desc_left ul,div.megawash_personal_option02_desc_right ul {
	list-style: none;
}

div.megawash_personal_option02_desc_left ul li.option02_title,div.megawash_personal_option02_desc_right ul li.option02_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	text-align: center;
	padding: 0 0 20px 0;
}

/** revision 20230609 */
div.megawash_personal_option02_desc_right ul li.option02_title span {
	font-size: 1.2rem;
}

div.megawash_personal_movie_wrapper {
	width: 90%;
	margin: 75px auto;
}

div.megawash_personal_movie_wrapper h3 {
	text-align: center;
}

div.megawash_personal_movie_wrapper h3 img {
	width: 75%;
}

div.megawash_personal_movie {
	width: 100%;
	margin: 30px 0;
}

div.megawash_personal_movie iframe {
	width: 100%;
	height: 300px;
}

div.megawash_personal_movie02_wrapper {
	width: 80%;
	margin: 30px auto;
}

div.megawash_personal_movie02_left {
	width: 100%;
	float: none;
}

div.megawash_personal_movie02_left ul {
	list-style: none;
}

div.megawash_personal_movie02_left ul li.movie02_title {
	text-align: center;
}

div.megawash_personal_movie02_left ul li.movie02_title img {
	width: 40%;
}

div.megawash_personal_movie02_left ul li.movie02_desc {
	border: 2px solid #FFE100;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	text-align: center;
	padding: 10px 0;
	margin: 10px 0;
}

div.megawash_personal_movie02_right {
	width: 100%;
	float: none;
	margin: 20px 0 0 0;
}

div.megawash_personal_movie02_right iframe {
	width: 100%;
	height: 250px;
}

div.megawash_personal_shop_wrapper {
	width: 90%;
	margin: 50px auto;
	border: 3px solid #FFE100;
	border-radius: 10px;
	padding: 30px 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

div.megawash_personal_shop_wrapper h3 {
	width: 100%;
	margin: 0 0 30px 0;
	text-align: center;
}

div.megawash_personal_shop_wrapper h3 img {
	width: 75%;
	margin: 0;
}

div.megawash_personal_gmap {
	width: 95%;
}

div.megawash_personal_shop {
	width: 95%;
	margin: 20px 0 0 0;
}

/** SSトグル */
#hover-click01,#hover-click02,#hover-click03,#hover-click04,#hover-click05,#hover-click06,#hover-click07,#hover-click08,#hover-click09,#hover-click10,#hover-click11,#hover-click12,#hover-click13,#hover-clic14,#hover-click15,#hover-click16,#hover-click17{
	position: relative;
	width: 100%;
	margin: 0;
}

#hover-click01 > a,#hover-click02 > a,#hover-click03 > a,#hover-click04 > a,#hover-click05 > a,#hover-click06 > a,#hover-click07 > a,#hover-click08 > a,#hover-click09 > a,#hover-click10 > a,#hover-click11 > a,#hover-click12 > a,#hover-click13 > a,#hover-click14 > a,#hover-click15 > a,#hover-click16 > a,#hover-click17 > a{
	display: block;
	width: 100%;
	padding: 10px 0;
	background: #FFE100;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	margin: 0 0 10px 0;
}

#hover-click01 > ul,#hover-click02 > ul,#hover-click03 > ul,#hover-click04 > ul,#hover-click05 > ul,#hover-click06 > ul,#hover-click07 > ul,#hover-click08 > ul,#hover-click09 > ul,#hover-click10 > ul,#hover-click11 > ul,#hover-click12 > ul,#hover-click13 > ul,#hover-click14 > ul,#hover-click15 > ul,#hover-click16 > ul,#hover-click17 > ul{
	display: none;
	z-index: 9999;
	position: relative;
	width: 100%;
	margin: -10px 0 0 0;
}

#hover-click01 > ul li,#hover-click02 > ul li,#hover-click03 > ul li,#hover-click04 > ul li,#hover-click05 > ul li,#hover-click06 > ul li,#hover-click07 > ul li,#hover-click08 > ul li,#hover-click09 > ul li,#hover-click10 > ul li,#hover-click11 > ul li,#hover-click12 > ul li,#hover-click13 > ul li,#hover-click14 > ul li,#hover-click15 > ul li,#hover-click16 > ul li,#hover-click17 > ul li {
	border: 1px solid #FFE100;
	padding: 10px 0;
	text-align: center;
}

#hover-click01 > ul li a,#hover-click02 > ul li a,#hover-click03 > ul li a,#hover-click04 > ul li a,#hover-click05 > ul li a,#hover-click06 > ul li a,#hover-click07 > ul li a,#hover-click08 > ul li a,#hover-click09 > ul li a,#hover-click10 > ul li a,#hover-click11 > ul li a,#hover-click12 > ul li a,#hover-click13 > ul li a,#hover-click14 > ul li a,#hover-click15 > ul li a,#hover-click16 > ul li a,#hover-click17 > ul li a {
	display: block;
	width: 100%;
}

li.hover_close {
	border: 1px solid #ff0000;
	background: #969696;
}

li.hover_close a {
	color: #ffffff;
}

div.megawash_personal_gmap div.gmap {
	height: 100%;
	min-height: 500px;
}

p.mv_pc {
	display: none;
}

/** revision 20210805 */
div.megawash_personal_shop ul {
	list-style: none;
}

div.megawash_personal_shop ul li.ss_area {
	width: 100%;
	padding: 10px 0;
	background: #FFE100;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	margin: 0;
}

div.megawash_personal_shop ul li.ss_name {
	border: 1px solid #FFE100;
	padding: 0;
	text-align: center;
}

div.megawash_personal_shop ul li.ss_name a {
	display: block;
	width: 100%;
	padding: 10px 0;
}

.ss-area {
	position: relative;  /* 追加 */
	border-bottom: 1px solid #ffffff;
	background-color: #FFE100;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
	padding: 10px 0;
}

.ss-list {
	display: none;
}

/* 擬似要素で下三角形を作成 */
.ss-area:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 45%;
	right: 30px;
	width: 10px;
	height: 10px;
	border-right: 3px solid #000000;
	border-bottom: 3px solid #000000;
	transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}

/* オープン時にopenクラスを付与 */
.ss-area.open:after {
	transform: rotate(225deg);
}


/** revision 20230609 narita */
div.megawash_movie_inner {
	width: 100%;
/*	max-width: 1500px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-content: space-between;
	flex-wrap: wrap;*/
}

div.megawash_personal_movie {
	margin: 30px auto;
	width: 95%;
/*	height: 300px;*/
}

div.megawash_mv {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

div.megawash_personal_movie iframe {
/*
	width: 100%;
	height: 100%;
*/
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

div.megawash_personal_movie iframe {
	width: 100%;
	height: 100%;
}
/**=========================================*/


/**=========================================*/
/** gmap style */
/**=========================================*/
div.gmaker {
	width: 100%;
	height: 100%;
}

p.shop_config {
	margin: 0 0 5px 0;
	padding: 0;

}

p.gmap_address {
	margin: 3px 0 0 0;
}

p.gmap_icon {
	margin: 10px 0 10px 0;
/*	width: 300px;*/
	width: 100%;
	
}

p.gmap_icon img {
	margin: 0 5px 0 0;
}

/** revision 20240718 */
p.route_alert {
/*
	margin: 0;
	padding: 0;
	font-size: 1.1rem;
	text-align: left;
	color: #ff0000;
*/
	display: none;
}

p.route_alert_sp {
	margin: 0;
	padding: 0;
	font-size: 1.1rem;
	text-align: left;
	color: #ff0000;
}

p.shop_detail {
	font-size: 1.3rem;
}

p.shop_detail a {
	color: #0052B4;
	text-decoration: underline;
}

p.shop_detail {
	margin: 5px auto 10px auto;
	font-size: 1.3rem;
	text-align: center;
	background: #096DAB;
	padding: 2% 1%;
	display: block;
	width: 98%;
	float: none;
}

p.shop_detail a {
	color: #ffffff;
	text-decoration: none;
}

p.shop_gogogs {
	margin: 5px auto 10px auto;
	font-size: 14px;
	text-align: center;
	background: #096DAB;
	padding: 2% 1%;
	display: block;
	width: 98%;
	float: none;
}

p.shop_gogogs a {
	color: #ffffff;
	text-decoration: none;
}

p.shop_route {
	margin: 5px auto 10px auto;
	padding: 2% 1%;
	font-size: 1.3rem;
	text-align: center;
	background: #096DAB;
	display: block;
	width: 98%;
	float: none;
}

p.shop_route a {
	color: #ffffff;
	text-decoration: none;
}
/**=========================================*/

/**=========================================*/
/** 会社情報 */
/**=========================================*/
div.company_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.company_link_wrapper {
	width: 100%;
	margin: 30px auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

ul.company_link {
	width: 100%;
	margin: 0 auto;
	display: flex;
/*	justify-content: space-between;*/
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}

ul.company_link li {
/*	width: 32%;*/
	width: 45%;
	margin: 0 10px 20px 0;
}

ul.company_link li.topmessage {
	width: 40%;
}

ul.company_link li.topmessage a {
	font-size: 1.1rem;
}

.company-link-button {
	width:100%;
	border:2px solid #969696;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin:0 auto;
	color: #969696;
}
.company-link-button a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.2rem;
	color:#fff;
	text-decoration:none;
	line-height:50px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
	width:100%;
	display: block;
	background: #ffffff;
	color: #969696;
}
.company-link-eff {
	width:100%;
	border:70px solid #969696;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}
.company-link-button:hover .company-link-eff {
	border:0px solid #969696;
}
.company-link-button:hover a {
	color:#ffffff;
	background: #969696;
}

div.company_message_wrapper {
	margin: 50px 0;
}

div.company_wrapper h3 {
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: normal;
}

div.company_message_inner, div.company_outline_inner {
	width: 100%;
	margin: 0 auto;
	padding: 30px 0;
}

div.company_message_img {
	width: 100%;
	float: none;
	text-align: center;
	margin: 0 auto;
}

div.company_message_img img {
	width: 30%;
	padding: 0;
}



div.company_message_text {
	width: 90%;
	margin: 20px 0 0 0;
	padding: 4%;
	background: #f7f7f7;
	line-height: 28px;
	margin: 0 auto;
}

div.company_message_text p {
	padding: 20px 0 0 0;
	text-align: right;
	font-weight: bold;
	width: 100%;
	display: block;
}

div.company_message_text strong {
	display: block;
	width: 100%;
	font-size: 14px;
	text-align:  center;
	line-height: 28px;
	padding: 20px 0;
	font-weight: normal;
}

div.company_message_text_right {
	width: 90%;
	margin: 20px 0 0 0;
	padding: 4%;
	background: #f7f7f7;
	line-height: 28px;
}

div.company_message_text_right strong {
	display: block;
	width: 100%;
	font-size: 14px;
	text-align:  center;
	line-height: 28px;
	padding: 20px 0;
	font-weight: normal;
}

/** revision 20250520 */
div.company_message_inner {
	width: 95%;
	margin: 30px auto 0 auto;
	padding: 0;
}

div.company_message_comment {
	margin: 20px auto 0 auto;
	width: 100%;
	float: none;
}

div.company_message_inner p {
	margin: 0;
	padding: 0;
}

/** 20220602 revision */
div.company_message_inner p.message01_line {
	margin: 0 0 10px 0;
}

div.company_message_inner p.message01_line span.top_img {
	float: none;
	display: block;
	text-align: center;
	width: 60%;
	margin: 0 auto 20px auto;
}

div.company_message_inner p.message01_line span.top_img img {
	width: 100%;
}

div.company_message_inner p.message03_line {
	margin: 0 auto 20px auto;
	width: 90%;
}
div.company_message_inner p.message03_line span {
	display: block;
	text-align: center;
	padding: 20px 0 0 0;
	margin: 0 0 30px 0;
}
div.company_message_inner p.message03_line img {
	float: right;
	width: 14%;
	margin: 0 0 0 20px;
}
div.company_message_inner p.company_sign {
	padding: 0;
	width: 30%;
	text-align: center;
}
div.company_message_comment img {
	display: block;
	margin: 50px auto;
	width: 100%;
}

div.company_message_inner p.company_sign {
	padding: 30px 0 0 0;
	text-align: right;
}

div.company_history_wrapper {
	margin: 50px 0;
}

div.company_outline_inner ul li {
	padding: 10px 0;
}

li.company_outline_title {
	clear: both;
	float: left;
	width: 20%;
	font-size: 1.2rem;
}

li.company_outline_sep {
	float: left;
	width: 5%;
	text-align: left;
	overflow: hidden
}

li.company_outline_body {
	float: left;
	width: 70%;
	margin: 0 0 0 1%;
}

li.company_outline_body iframe {
	margin: 10px 0 0 0;
	width: 100%;
	height: 250px;
}

/**=========================================*/
/** 組織図 */
/**=========================================*/
div.organization_chart_wrapper {
	margin: 50px 0;
	padding: 0;
}

div.chart_img {
	padding: 50px 0 30px 0;
}

div.chart_img img {
	width: 100%;
	display: block;
	margin: 0 auto;
}

div.chart_img_pc {
	display: none;
}
/**=========================================*/

div.company_cooperation_wrapper {
	margin: 50px 0;
	padding: 0;
}

div.company_cooperation_wrapper ul {
	list-style: none;
	margin: 0 0 30px 0;
	width: 100%;
}

div.company_cooperation_wrapper ul li {
	padding: 10px 0;
}

li.company_cooperation_title {
	clear: both;
	float: left;
	width: 23%;
}

li.company_cooperation_sep {
	float: left;
	width: 5%;
	text-align: left;
	overflow: hidden
}

li.company_cooperation_body {
	float: left;
	width: 70%;
	margin: 0 0 0 1%;
}

div.company_business_wrapper {
	margin: 0 0 30px 0;
}

div.company_business_wrapper p {
	margin: 30px 0;
	line-height: 30px;
}

div.company_client_wrapper {
	margin: 50px 0;
}

div.company_client_wrapper p {
	padding: 30px 0;
	line-height: 30px;
}

div.company_movie {
	margin: 30px 0;
}

div.company_movie iframe {
	width: 100%;
	height: 250px;
}


/** revision 20220122 */
div.company_executive_wrapper {
	margin: 50px 0;
}

div.company_executive_wrapper table {
	width: 100%;
	margin: 30px 0 0 0;
}

div.company_executive_wrapper table th {
	text-align: left;
	font-weight: normal;
	padding: 5px 0;
	width: 50%;
}

div.company_executive_wrapper table td {
	text-align: left;
	font-weight: normal;
	padding: 5px 0;
}

div.company_executive_wrapper table td.sep {
	padding: 0;
	font-size: 1rem;
}

div.company_results_wrapper {
	margin: 50px 0;
}

div.company_results_wrapper table {
	width: 100%;
	margin: 30px 0 0 0;
}

div.company_results_wrapper table td {
	text-align: left;
	font-weight: normal;
	padding: 10px 5px;
	border: 1px solid #cccccc;
	width: 18%;
	font-size: 1.3rem;
}

div.company_results_wrapper table td.unit {
	border: none;
	text-align: right;
}

div.company_results_wrapper table td.results_table_center {
	text-align: center;
	font-size: 1rem;
}

div.company_results_wrapper table td.results_table_right {
	text-align: right;
}
/**=========================================*/

/**=========================================*/
div.ss_header_sp {
	width: 100%;
	margin: 0 auto;
	background: url(../images_2021/shop_info_sd/bg_sp.jpg) no-repeat;
	width: 100%;
	padding: 50px 0;
	background-size: 100%;
}

div.ss_header_sp h3 {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	text-align: center;
	letter-spacing: 20px;
	color: #ffffff;
}

div.ss_search_box {
	width: 90%;
	margin: 30px auto;
	text-align: center;
}

div.ss_search_box img {
	width: 75%;
}

div.ss_search_box p {
	font-size: 1.3rem;
	margin: 20px 0;
	line-height: 30px;
}

div.ss_pc {
	display: none;
}

div.ss_main_wrapper_sp {
	width: 90%;
	margin: 0 auto;
}

ul.ss_area_hokkaido,ul.ss_area_tohoku,ul.ss_area_kanto,ul.ss_area_koshinetsu,ul.ss_area_hokuriku,ul.ss_area_kinki,ul.ss_area_chugoku,ul.ss_area_shikoku,ul.ss_area_kyushu,ul.ss_area_okinawa,ul.ss_area_highway {
	list-style: none;
	margin: 0 0 2px 0;
}

ul.ss_area_hokkaido li a, ul.ss_area_tohoku li a, ul.ss_area_kanto li a, ul.ss_area_koshinetsu li a, ul.ss_area_hokuriku li a, ul.ss_area_kinki li a, ul.ss_area_chugoku li a, ul.ss_area_shikoku li a, ul.ss_area_kyushu li a, ul.ss_area_okinawa li a, ul.ss_area_highway li a {
	display: block;
	width: 100%;
	color: #ffffff;
}

ul.ss_area_hokkaido li {
	list-style: none;
	background: #969696;
	text-align: center;
	padding: 20px 0;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
}

ul.ss_area_okinawa li {
	list-style: none;
	background: #3C3C3C;
	text-align: center;
	padding: 20px 0;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
}

ul.ss_area_highway li {
	list-style: none;
	background: #323232;
	text-align: center;
	padding: 20px 0;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
}

ul.area_accordion {
	list-style: none;
	margin: 0 0 2px 0;
}

ul.area_accordion  ul.child li {
	padding: 0;
	border: 1px solid #7d7d7d;
}

ul.area_accordion a.tohoku,ul.area_accordion a.kanto,ul.area_accordion a.koshinetsu,ul.area_accordion a.hokuriku,ul.area_accordion a.kinki,ul.area_accordion a.chugoku,ul.area_accordion a.shikoku,ul.area_accordion a.kyushu {
	display: block;
	width: 100%;
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	color: #ffffff;
	text-align: center;
	background: url(../images_2021/shop_info_sd/area_icon.png) no-repeat;
	background-position: center right 3%;
	background-size: 3%;
	cursor: pointer;
}

ul.area_accordion a.tohoku.active,ul.area_accordion a.kanto.active,ul.area_accordion a.koshinetsu.active,ul.area_accordion a.hokuriku.active,ul.area_accordion a.kinki.active,ul.area_accordion a.chugoku.active,ul.area_accordion a.shikoku.active,ul.area_accordion a.kyushu.active {
	display: block;
	width: 100%;
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	color: #ffffff;
	text-align: center;
	background: url(../images_2021/shop_info_sd/area_icon_active.png) no-repeat;
	background-position: center right 3%;
	background-size: 3.5%;
	cursor: pointer;
}

ul.area_accordion a.tohoku, ul.area_accordion a.tohoku.active {
	background-color: #8c8c8c;
}

ul.area_accordion a.kanto, ul.area_accordion a.kanto.active {
	background-color: #828282;
}

ul.area_accordion a.koshinetsu, ul.area_accordion a.koshinetsu.active {
	background-color: #787878;
}

ul.area_accordion a.hokuriku, ul.area_accordion a.hokuriku.active {
	background-color: #6E6E6E;
}

ul.area_accordion a.kinki, ul.area_accordion a.kinki.active {
	background-color: #646464;
}

ul.area_accordion a.chugoku, ul.area_accordion a.chugoku.active {
	background-color: #5A5A5A;
}

ul.area_accordion a.shikoku, ul.area_accordion a.shikoku.active {
	background-color: #505050;
}

ul.area_accordion a.kyushu, ul.area_accordion a.kyushu.active {
	background-color: #464646;
}

ul.area_accordion  ul.child li a {
	display: block;
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	text-align: center;
	padding: 10px 0;
}

ul.area_accordion  ul.child li a:hover {
	display: block;
	width: 100%;
	height: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	text-align: center;
	background: #000000;
	color: #ffffff;
}

.child {
	display: none;
}

ul.area_accordion a.toggle {
	list-style: none;
	text-decoration: none;
}
/**=========================================*/

/**=========================================*/
/** covid-19 */
/**=========================================*/
div.covid19_wrapper {
	width: 100%;
}

div.covid19_header {
	position: relative;
}

div.covid19_header img {
	width: 100%;
}

div.covid19_header h3 {
	width: 90%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.4rem;
	display: block;
	top: 10%;
	left: 0;
	right: 0;
	margin: 0 auto;
	background: #ffffff;
	text-align: center;
	padding: 20px 0;
	position: absolute;
	font-weight: normal;
}

div.covid19_contents {
	margin: 50px auto;
	width: 90%;
	min-height: 300px;
}

div.covid19_contents span {
	font-family: 'Noto Sans JP', sans-serif;
	display: block;
	color: #FF2601;
	padding: 0 0 10px 0;
}

div.covid19_contents p {
	line-height: 28px;
}

div.covid19_info_comment {
	margin: 30px 0 0 0;
	text-align: center;
	font-size: 1.3rem;
	line-height: 26px;
	color: #555555;
}

div.covid19_info {
	margin: 0 0 30px 0;
}
/**=========================================*/

/**=========================================*/
/** フリートカード */
/**=========================================*/
div.freet_card_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.freet_card_main {
	width: 100%;
	margin: 30px auto;
}

div.freet_card_main h3 {
	width: 98%;
	margin: 0 auto 20px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	letter-spacing: 4px;
	background: #969696;
	padding: 10px 1%;
}

div.freet_card_main p {
	line-height: 24px;
}

div.freet_card_contents {
	width:100%;
}

div.freet_card_contents>p {
	border-top: 1px solid #969696;
	border-bottom: 1px solid #969696;
	padding: 10px 0;
}

div.freet_card_service_wrapper {
	margin: 20px auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 90%;
}

div.freet_card_service {
	width: 100%;
	margin: 0 0 20px 0;
}

div.freet_card_service p.fc_title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	padding: 10px 0;
	font-weight: normal;
}

div.freet_card_service img {
	width: 100%;
}

div.freet_card_service p.fc_desc {
	padding: 10px 0;
}

div.freet_card_entry {
	border-radius: 10px;
	width: 90%;
	margin: 0 auto;
	position: relative;
}

div.freet_card_entry img {
	width: 100%;
	margin: 5px 0 0 0;
}

div.freet_card_entry_left {
	width: 90%;
	float: none;
	margin: 0 auto 20px auto;
}

div.freet_card_entry_right {
	width: 90%;
	float: none;
	margin: 0 auto;
}

div.freet_card_entry a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 100%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 20px 0;
}

div.freet_card_entry a:hover {
	background: url(../images_2021/page_icon.png) no-repeat;
	background-color :#000000;
	background-size: 3%;
	color: #ffffff;
	background-position: center right 20px;
}



div.fc_info_contents {
	margin: 0;
}

div.fc_info_contents {
	width: 100%;
	margin: 50px auto;
	max-width: 1500px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;	
}

div.fc_info_contents h3, div.fc_merit_contents h3 {
	width: 98%;
	margin: 0 auto 30px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	letter-spacing: 4px;
	background: #969696;
	padding: 10px 1%;
}

div.fc_img {
	width: 48%;
	margin: 0 0 2% 0;
}

div.fc_img span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: normal;
	text-align: center;
	width: 100%;
	display: block;
	padding: 0 0 10px 0;
}

div.fc_img img {
	width: 100%;
}

div.fc_merit_contents {
	width: 100%;
	margin: 50px auto;
}

div.fc_merit_box {
	margin: 0;
}

div.fc_merit_img {
	float: none;
	width: 100%;
	margin: 0 auto;
}

div.fc_merit_img span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: left;
	width: 100%;
	display: block;
	padding: 0 0 20px 0;
}

div.fc_merit_img img {
	width: 30%;
	margin-right: 2%;
}

div.fc_merit_desc {
	margin: 20px 0 0 0;
	float: none;
	width: 92%;
	padding: 2% 2% 2% 3%;
	border: 3px solid #CCCCCC;
}

div.fc_merit_desc span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: left;
	width: 100%;
	display: block;
	padding: 0 0 10px 0;
}

div.fc_merit_desc ul {
	list-style: none;
}

div.fc_merit_desc ul li {
	padding: 2px 0;
}

div.fc_merit_desc ul li strong {
	font-size: 1.4rem;
	font-weight: bold;
}

div.fc_merit_list {
	width: 100%;
	margin: 30px auto;
	max-width: 1500px;
	padding-bottom: 20px;
	border-bottom: 1px solid #efefef;
}

div.fc_merit_list li.merit_list_title {
	float: none;
	width: 95%;
	background: #efefef;
	font-weight: bold;
	margin: 1% 0;
	padding: 2%;
}

div.fc_merit_list li.merit_list_desc {
	float: none;
	width: 95%;
	margin: 1% 0;
	padding: 2%;
}

div.fc_merit_list li.merit_list_desc_long {
	float: none;
	width: 95%;
	margin: 1% 0;
	padding: 2%;
}

div.fc_merit_contents p {
	color: #E70012;
	margin: 0 0 10px 0;
	font-weight: bold;
}
/**=========================================*/

/**=========================================*/
/** メガウォッシュ business */
/**=========================================*/
div.megawash_business_wrapper {
	width: 100%;
	margin: 0 auto;
}

div.megawash_business_mv {
	width: 100%;
	margin: 30px auto 0 auto;
}

div.megawash_business_mv img {
	width: 100%;
}

div.megawash_business_point {
	width: 100%;
	background: #76D4FA;
	position: relative;
	margin: 50px 0;
}

div.megawash_business_point_vi {
	width: 90%;
	margin: 0 auto;
	padding: 50px 0 0 0;
	line-height: 0;
}

div.megawash_business_point_vi img {
	width: 100%;
}

div.megawash_business_option {
	width: 90%;
	margin: 0 auto;
}

div.megawash_business_option h3 {
	width: 100%;
	background:url(../images_2021/megawash_business/option_bg.gif) repeat-x;
	background-position: center center;
}

div.megawash_business_option h3 strong {
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
}

div.megawash_business_option h3 span {
	display: block;
	width: 70%;
	padding: 10px 0;
	border-radius: 10px;
	border: 3px solid #FFE100;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	text-align: center;
	background-color: #ffffff;
	margin: 0 auto;
}

div.megawash_business_option_menu {
	width: 90%;
	margin: 20px auto;
	padding: 0 0 20px 0;
	border-bottom: 2px solid #FFE100;
	position: relative;
}

div.megawash_business_option_menu_left {
	width: 100%;
	float: none;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: bold;
}

div.megawash_business_option_menu_right {
	width: 100%;
	float: none;
	display: inline-block;
	vertical-align: middle;
	padding: 10px 0;
	text-align: left;
}
/**=========================================*/



/**=========================================*/
/** キャンペーン personal */
/**=========================================*/
div.campaign_personal_wrapper {
	width: 100%;
	margin: 0 auto;
}

div.campaign_personal_mv {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

div.campaign_personal_mv img {
	width: 100%;
}

div.campaign_personal_mv_inner {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 40%;
	background: #ffffff;
	padding: 20px 0;
}

div.campaign_personal_mv_inner span.cp_title_b {
	display: block;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	color: #EA0000;
	font-weight: bold;
}

div.campaign_personal_mv_inner span.cp_title_s {
	display: block;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1rem;
	color: #EA0000;
	font-weight: bold;
}

div.campaign_personal_contents {
	width: 90%;
	margin: 50px auto;
}

div.campaign_personal_box {
	width: 100%;
	margin: 0;
}

ul.cp_title {
	list-style: none;
}

ul.cp_inner {
	list-style: none;
	border: 1px solid #EA0000;
}

ul.cp_inner li.cp_title {
	width: 100%;
	float: none;
	background: #EA0000;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	padding: 10px 0;
	font-weight: bold;
	text-align: center;
}

ul.cp_inner li.cp_term {
	width: 100%;
	padding: 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	float: none;
	text-align: center;
}

ul.cp_inner li.cp_ad {
	width: 100%;
	padding: 0 0 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	float: none;
	text-align: center;
}

ul.cp_inner li.cp_ad a {
	color: #EA0000;
	text-decoration: underline;
}

/** revision 20220902 */
ul.cp_inner_close {
	list-style: none;
	border: 1px solid #EA0000;
}

ul.cp_inner_close li.cp_title {
	width: 100%;
	float: none;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	padding: 10px 0;
	font-weight: bold;
	text-align: center;
}

div.cp_outline {
	width: 90%;
	margin: 20px auto 30px auto;
}

div.campaign_wash {
	background: url(../images_2021/campaign_personal/campaign-wash-bg.png) no-repeat;
	background-position: center right;
	background-size: cover;	
}


div.cp_outline h3 {
	padding: 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	color: #EA0000;
}

div.cp_outline p {
	margin: 10px 0 30px 0;
	line-height: 26px;
}
/**=========================================*/

/**=========================================*/
/** キャンペーン business */
/**=========================================*/
div.campaign_business_wrapper {
	width: 100%;
	margin: 0 auto;
}

div.campaign_business_mv {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

div.campaign_business_mv img {
	width: 100%;
}

div.campaign_business_mv_inner {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 40%;
	background: #ffffff;
	padding: 20px 0;
}

div.campaign_business_mv_inner span.cb_title_b {
	display: block;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	color: #FF78C8;
	font-weight: bold;
}

div.campaign_business_mv_inner span.cb_title_s {
	display: block;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1rem;
	color: #FF78C8;
	font-weight: bold;
}

div.campaign_business_contents {
	width: 90%;
	margin: 50px auto;
}

div.campaign_business_box {
	width: 100%;
	margin: 0;
}

ul.cb_title {
	list-style: none;
}

ul.cb_inner {
	list-style: none;
	border: 1px solid #FF78C8;
}

ul.cb_inner li.cb_title {
	width: 100%;
	float: none;
	background: #FF78C8;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	padding: 10px 0;
	font-weight: bold;
	text-align: center;
}

ul.cb_inner li.cb_term {
	width: 100%;
	padding: 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
	float: none;
	text-align: center;
}

ul.cb_inner li.cb_ad {
	width: 100%;
	padding: 0 0 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	float: none;
	text-align: center;
}

ul.cb_inner li.cb_ad a {
	color: #FF78C8;
	text-decoration: underline;
}

div.cb_outline {
	width: 100%;
	margin: 30px auto 50px auto;
}

div.cb_outline h3 {
	padding: 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	color: #FF78C8;
}

div.cb_outline p {
	margin: 10px 0;
	text-align: center;
}

div.cb_outline p.cb_202107 img {
	width: 100%;
}

/** revision 20230616 */
div.cb_outline p.cb_202307 {
	width: 100%;
	margin: -14px auto 0 auto;
}

div.cb_outline p.cb_202307 img {
	width: 100%;
}

div.cb_outline p.cb_202307 a img:hover {
	opacity: 0.9;
}

div.cb_outline p.cb_202307_comment {
	color: #ff0000;
	font-weight: bold;
	text-align: left;
}
/**=========================================*/

/**=========================================*/
/** mailform */
/**=========================================*/
div.mailform_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.mailform_main {
	width: 90%;
	margin: 30px auto;
}

div.mailform_main p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: normal;
	margin: 0 0 20px 0;
}

div.mailform_main p span {
	font-weight: bold;
	color: #E10000;
}

div.mailform_main ul {
	list-style: none;
	width: 100%;
}

div.mailform_main ul li strong {
	color: #E10000;
	font-weight: bold;
}

div.mailform_main ul li span {
	color: #E10000;
	font-weight: normal;
	display: block;
	margin: 10px 0 0 0;
}

div.mailform_main ul li span.error_disp {
	width: 100%;
	background: #E10000;
	text-align: center;
	color: #ffffff;
	padding: 10px 0;
}

div.mailform_main ul li span.error_term_disp {
	width: 100%;
	background: #E10000;
	text-align: center;
	color: #ffffff;
	padding: 10px 0;
	margin: 20px auto;
}

div.mailform_main ul li label {
	margin: 0;
}

div.mailform_main ul li.clear, ul.mailform_innner_list li.clear {
	clear: both;
}

div.mailform_main ul li.form_title {
	width: 100%;
	padding: 2% 0;
	float: none;
	font-size: 1.3rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

div.mailform_main ul li.form_item {
	width: 100%;
	padding: 2% 0;
	float: none;
	font-size: 1.3rem;
	border-bottom: 1px solid #efefef;
}

ul.mailform_innner_list {
	list-style: none;
}

ul.mailform_innner_list li.form_innner_title {
	float: none;
	width: 100%;
	font-size: 1.3rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
/*	padding: 20px 0;*/
	padding: 2% 0;
}

ul.mailform_innner_list li.form_innner_item {
	float: none;
	width: 100%;
/*	padding: 20px 0;*/
	padding: 2% 0;
	border-bottom: 1px solid #efefef;
}

ul.mailform_innner_list li.border_sep {
	border: none;
}

div.mailform_main ul li.form_subtitle {
	clear: both;
	padding: 10px 0;
	background: #969696;
	color: #ffffff;
	font-size: 1.4rem;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
}

div.mailform_main ul li.form_term {
	clear: both;
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	text-decoration: underline;
}

div.mailform_main ul li.form_term_body {
	border: 1px solid #efefef;
	width: 90%;
	margin: 10px auto 30px auto;
	padding: 2%;
	height: 200px;
	overflow: auto;
}

div.mailform_main ul li.form_term_check {
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: bold;
}

div.mailform_main ul li.form_term_body strong {
	color: #000000;
}

input.text_l {
	width: 100%;
}

input.text_m {
	width: 75%;
}

input.text_s {
	width: 20%;
}

textarea {
	width: 100%;
}

input.input_margin {
	margin: 0;
}

div.mailform_main ul li.s_btn {
	clear: both;
	width: 100%;
	margin: 30px 0;
	text-align: center;
}

.confirm_btn {
	display: block;
	width: 100%;
	text-align: center;
	position: relative;
	transition: .3s;
	text-decoration: none;
}

.confirm_btn input {
	font-family: 'Noto Sans JP', sans-serif;
	width: 100%;
	height: 100%;
	display: block;
	padding: 2% 0;
	background-color:#074378;
	font-size: 1.4rem;
	color: #fff;
	letter-spacing: 0.5vw;
	border:none;
	text-decoration: none;
	cursor: pointer;
}

.confirm_btn:hover,a.confirm_back_btn:hover {
	opacity: .8;
	text-decoration: none;
}

.confirm_btn:after {
	position: absolute;
	right: 3vw;
	top:0;
	bottom:0;
	margin:auto;
	content:'＞';
	height: 1vw;
	transition: .3s;
	color: #fff;
}

.confirm_btn:hover:after {
	right:2vw;
}

table.mailform_complete {
	width: 100%;
	margin: 0 auto;
}

table.mailform_complete th {
	padding: 20px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: 500;
	width: 100%;
	text-decoration: underline;
}

table.mailform_complete td {
	text-align: center;
	font-size: 1.3rem;
	font-family: 'Noto Sans JP', sans-serif;
}

table.mailform_complete td p {
	margin: 30px 0;
	text-align: left;
	line-height: 30px;
	border: 1px solid #efefef;
	padding: 2%;
	font-size: 1.3rem;
	font-weight: 300;
}
/**=========================================*/

/**=========================================*/
/** SS検索 for address */
/**=========================================*/
div.ss_search_address {
	width: 90%;
	margin: 0 auto;
}

div.ss_search_address_button {
	margin: 50px 0;
}

div.ss_search_address_button a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/ss_page_icon.png) no-repeat;
	background-size: 4%;
	width: 75%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center left 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}

div.ss_search_address_button a:hover {
	background: url(../images_2021/ss_page_icon.png) no-repeat;
	background-color :#717171;
	background-size: 4%;
	color: #ffffff;
	background-position: center left 20px;
}

ul.search_box {
	margin: 30px 0 0 0;
	padding: 30px 0;
	border-top: 2px solid #075185;
	border-bottom: 2px solid #075185;
	background: #FEF7E7;
}

li.search_keyword {
	float: none;
	width: 90%;
	text-align: left;
	padding: 5px auto;
	margin: 0 auto;
}

li.search_keyword span {
	display: block;
	padding: 5px 0 0 0;
	font-size: 1.3rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 200;
}

.search_input {
	border: 1px solid #cccccc;
	font-size: 1.3rem;
	width: 100%;
	padding: 5px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

li.search_button {
	float: none;
	width: 90%;
	text-align: left;
	margin: 0 auto;
}

li.search_button a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 4%;
	width: 100%;
	display: block;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 15px 0;
	margin: 20px 0 0 0;
}

li.search_button a:hover {
	background: url(../images_2021/page_icon.png) no-repeat;
	background-color :#075185;
	background-size: 4%;
	color: #ffffff;
	background-position: center right 20px;
}

ul.ss_address_key_icon {
	margin: 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

ul.ss_address_key_icon li {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	width: 33%;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 10px 0;
}

ul.ss_address_key_icon li img {
	width: 30px;
	margin: 0 3% 0 0;
}

#map_canvas {
	margin: 20px 0 0 0;
	width: 100%;
/*	height: 500px;*/
	height: 600px;
}

/** SS検索 for map */
div.ss_search_map {
	width: 90%;
	margin: 30px auto 0 auto;
}

div.ss_search_map_header {
	width: 100%;
	margin: 30px 0;
}

div.ss_search_map_header_title {
	float: left;
	width: 40%;
	border: 1px solid #717171;
	color: #717171;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	padding: 2% 2%;
	text-align: center;
}

div.ss_search_map_header_button {
	float: right;
	width: 50%;
	position: relative;
}

div.ss_search_map_header_button a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	background: url(../images_2021/ss_page_icon.png) no-repeat;
	background-size: 4%;
	width: 100%;
	display: block;
	border-radius: 10px;
	background-color: #000000;
	background-position: center left 10px;
	color: #ffffff;
	text-align: center;
	padding: 10px 0;
	position: absolute;
	right: 0;
}

div.ss_search_map_header_button a:hover {
	background: url(../images_2021/ss_page_icon.png) no-repeat;
	background-color :#717171;
	background-size: 4%;
	color: #ffffff;
	background-position: center left 20px;
}

ul.ss_search_key_icon {
	margin: 50px 0 30px 0;
	display: flex;
	justify-content: left;
	align-items: center;
	flex-wrap: wrap;
}

ul.ss_search_key_icon li {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	width: 30%;
	text-align: center;
	display: flex;
	justify-content: left;
	align-items: center;
	margin: 0 0 10px 0;
}

ul.ss_search_key_icon li img {
	width: 30px;
	margin: 0 3% 0 0;
}

div.contents_inner_google_map {
	margin: 30px 0 0 0;
	width: 100%;
}

div.contents_inner_google_map div.gmap {
	height: 100%;
	min-height: 500px;
}

div.ss_map_icon {
	margin: 30px 0;
	width: 100%;
}

div.ss_map_icon p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.3rem;
	text-align: center;
	font-weight: 500;
}

div.ss_map_icon ul {
	width: 100%;
	margin: 30px 0;
	display: flex;
	justify-content: left;
	align-items: top;
	flex-wrap: wrap;
}

div.ss_map_icon ul li {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;
	font-weight: 400;
	width: 20%;
	text-align: center;
	padding: 10px 0;
}

div.ss_map_icon ul li img {
	margin: 0 auto;
	width: 30px;
}

div.ss_list_wrapper {
	margin: 0;
}

div.ss_box {
	border-top: 1px solid #59514F;
	padding: 10px 0 10px 0;
}

div.ss_info {
	width: 100%;
	float: none;
}

p.ss_name {
	text-align: left;
	margin: 5px 0;
	font-size: 1.4rem;
	font-weight: bold;
}

p.ss_icon {
	text-align: left;
	margin: 5px 0;
	padding: 0 0 10px 0;
}

p.ss_icon img {
	margin: 0 1% 0 0;
}

p.ss_addr {
	text-align: left;
	margin: 5px 0;
	font-size: 1.3rem;
}

p.ss_tel {
	text-align: left;
	margin: 5px 0;
	font-size: 1.3rem;
}

p.ss_remarks {
	text-align: left;
	margin: 5px 0;
	font-size: 1.3rem;
}

div.ss_googlemap {
	width: 100%;
	text-align: center;
	margin: 0;
	float: none;
	padding: 15px 0 5px 0;
}

div.ss_googlemap img {
	margin: 0 2% 5px 2%;
/*	width: 30%;*/
	width: 28%;
	border: 1px solid #ffffff;
}
/**=========================================*/

/*====================================================
採用情報
====================================================*/
div.recruit_mv {
	width: 100%;
	max-width: 2000px;
	position: relative;
	margin: 0 auto;
}

div.recruit_mv img {
	width: 100%;
}

div.recruit_mv_inner {
	width: 90%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

div.recruit_mv_inner h2 {
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 10vw;
	letter-spacing: 10px;
	text-align: center;
	margin: 4% auto 1%;
}

div.recruit_mv_inner h3 {
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 5vw;
	letter-spacing: 10px;
	text-align: center;
}

div.recruit_mv_inner h4 {
	margin: 3% auto 0;
	width: 70vw;
	font-weight: normal;
}

/*-----------------*/
/*高卒・大卒ページ*/
/*-----------------*/

/*---------*/
/*inner*/
/*---------*/
div.inner {
	margin: 0 auto;
	width: 90%;
}
div.inner p{
	font-family: 'Noto Sans JP', sans-serif;
	font-size:15px;
	letter-spacing: 1px;
	line-height: 30px;
}

/*---------*/
/*overview*/
/*---------*/

div.overview {
	width: 100%;
	margin-bottom: 5vh;
}

div.overview img.recruit_vision{
	display: block;
	width: 100%;
	margin: 0 auto;
}

div.overview p {
	width: 80%;
	margin: 0 auto;
	margin-top: 2vw;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:14px;
	letter-spacing: 1px;
	line-height: 30px;
	text-align: left;
}
div.overview p.rec_massage {
	margin-top: 20px;
}

/*---------*/
/*midashi*/
/*---------*/
div.box_midashi {
	margin: 80px auto 50px auto;
	width: 80vw;
	box-sizing: border-box;
	position: relative;
}
div.box_midashi span.midashi{
	display: block;
	margin: 0 auto;
	border-bottom: 3px solid;
	margin-bottom: 1.5vmax;
}

div.box_midashi h3 {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 25px;
	letter-spacing: 1px;
	text-align: center;
	margin-bottom: 1vmax;
}

div.box_midashi p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:14px;
	letter-spacing: 1px;
	line-height: 30px;
	text-align: center;
}


/*---------*/
/*work*/
/*---------*/
div.work {
	margin-top: 5vh;
}
/*太陽鉱油で働こう*/
div.work div.inner h2 img {
	width: 70vw;
	display: block;
	margin: 0 auto;
}

div.work div.inner h2 span {
	text-align: center;
	display: block;
	margin: 0 auto;
	margin-top: 1vmax;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 4vw;
}

div.work div.inner p {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	margin: 20px 0;
	font-size: 5vw;
}

/*comment*/
div.work div.box_midashi p{
	margin: 0 auto;
	width: 90%;
	text-align: left;
	letter-spacing: 0.2vw;
}

div.work div.box_midashi span.midashi img{
	display: block;
	margin: 0 auto;
	width: 200px;
	margin-bottom: 1.5vmax;
}
p.comment span.c2 {
	display: block;
	text-align: right;
	letter-spacing: normal;
	margin: 10px 0 0 0;
}
/*募集職種～*/
div.work div.work_inner{
	width: 100%;
	margin: 0 auto;
	flex-wrap: wrap;
	justify-content:flex-start;
}
div.work div.box {
	margin: 0 auto 20%;
	width: 75%;
}

div.box  {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:15px;
	letter-spacing: 1px;
	line-height: 30px;
	text-align: left;
}

div.box h4 {
	display: block;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 18px;
	letter-spacing: 5px;
	margin-bottom: 10px;
}

div.work div.box a {
	color: #333333;
	border-bottom: 1px solid;
	font-weight: bold;
	transition: .2s;
}


div.work div.box a:hover {
	position: relative;
	bottom: -1px;
	opacity: .5;
}

/*---------*/
/*借上独身寮*/
/*---------*/
div.welfare2 div.inner {
	width: 100%;
}

div.welfare2 p {
	text-align: left;
	line-height: 30px;
}

div.welfare2 p span {
	font-weight: bold;
	font-size: 17px;
}

div.welfare_room img.sp {
	display: block;
	width: 70%;
	max-width: 1200px;
	margin: 0 auto;
}
div.welfare_room img.pc {
	display: none;
}

/*---------*/
/*生活費の内訳*/
/*---------*/
div.life {
	width: 100%;
	margin: 0 auto;
}

div.life div.graf img.pc {
	display: block;
	width: 85%;
	margin: 0 auto;
}

div.life div.graf img.sp {
	display: none;
}

div.life div.comment {
	margin: 0 auto;
	text-align: center;
}

div.life div.comment p {
	display: block;
	margin-top: 10%;
}

div.life div.comment strong {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	font-weight: 600;
	line-height: 2.5vw;
	letter-spacing: 3px;
}

/*---------*/
/*福利厚生*/
/*---------*/

div.welfare div.inner{
	width: 90%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
div.welfare div.box {
	margin: 0 auto 20%;
	width: 75%;
}

div.welfare div.box p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:15px;
	letter-spacing: 1px;
	line-height: 30px;
	text-align: left;
}
/*---------*/
/*業務内容*/
/*---------*/
div.business div.inner {
  justify-content: space-between;
  align-items: center;
  width: 90%;
  margin: 0 auto 100px;
}

div.business div.box p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:14px;
	letter-spacing: 1px;
	line-height: 30px;
	text-align: left;
}
div.business strong {
	display: block;
	margin: 20px 0 10px;
	font-size: 16px;
	letter-spacing: 3px;
}

.card-thumbnail {
  	width: 90%;
	margin: 0 auto;
}

.card-img {
	 width: 100%;
	 display: block;
}

.card-caption {
 	width: 90%;
	margin: 5vh auto 0;
}

/* 偶数番目に登場する.cardは右から左に要素が配置されるようにする */

div.business div.inner:nth-child(even) {
  flex-direction: row-reverse;
}

/* ボタン */
div.business_bt_sp{
	margin-top: 1vmax;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:15px;
	letter-spacing: 1px;
	font-weight: 500;
}

div.business_bt{
	display: none;
}
/* link button_rec1 */
.button_rec1 {
	display: inline-block;
	border-radius: 20px;
	padding: 10px 0;
	background: #ffff;
	text-align: center;
	color: #ffffff;
	width: 100%;
	margin: 0 auto;
}
.button_rec1::before,
.button_rec1::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	border-radius: 20px;
}
.button_rec1,
.button_rec1::before,
.button_rec1::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button_rec1 {
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 3px solid #00b900;
	border-radius: 20px;
	color: #00b900;
	line-height: 15px;
}

.button_rec1:hover {
	background-color: #00b900;
	border-color: #00b900;
	color: #fff;
}
.button_rec1::before,
.button_rec1::after {
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.button_rec1::before {
	right: 0;
}
.button_rec1::after {
	left: 0;
}
.button_rec1:hover::before,
.button_rec1:hover::after {
	width: 0;
	background-color: #fff;
}
/* link button_rec2 */
.button_rec2 {
	display: inline-block;
	border-radius: 20px;
	padding: 10px 0;
	background: #ffff;
	text-align: center;
	color: #ffffff;
	width: 100%;
	margin: 0 auto;
	margin-top: 2vh;
}
.button_rec2::before,
.button_rec2::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	border-radius: 20px;
}
.button_rec2,
.button_rec2::before,
.button_rec2::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button_rec2 {
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 3px solid #999;
	border-radius: 20px;
	color: #999;
	line-height: 15px;
}

.button_rec2:hover {
	background-color: #999;
	border-color: #999;
	color: #fff;
}
.button_rec2::before,
.button_rec2::after {
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.button_rec2::before {
	right: 0;
}
.button_rec2::after {
	left: 0;
}
.button_rec2:hover::before,
.button_rec2:hover::after {
	width: 0;
	background-color: #fff;
}

/* link button_rec3 */
.button_rec3 {
	display: inline-block;
	border-radius: 20px;
	padding: 10px 0;
	background: #ffff;
	text-align: center;
	color: #ffffff;
	width: 100%;
	margin: 0 auto;
}
.button_rec3::before,
.button_rec3::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	border-radius: 20px;
}
.button_rec3,
.button_rec3::before,
.button_rec3::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button_rec3 {
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 3px solid #174ea0;
	border-radius: 20px;
	color: #174ea0;
	line-height: 15px;
}

.button_rec3:hover {
	background-color: #174ea0;
	border-color: #174ea0;
	color: #fff;
}
.button_rec3::before,
.button_rec3::after {
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.button_rec3::before {
	right: 0;
}
.button_rec3::after {
	left: 0;
}
.button_rec3:hover::before,
.button_rec3:hover::after {
	width: 0;
	background-color: #fff;
}

/* link button_rec4 */
.button_rec4 {
	display: inline-block;
	border-radius: 20px;
	padding: 3px 0;
	background: #fff;
	text-align: center;
	color: #00b900;
	width: 100%;
	margin: 0 auto;
	transition: 0.5s;
	border:3px solid #00b900;
}

.button_rec4:hover{
	background: #00b900;
	color: #fff;
	border:3px solid #fff;
}
/*--------------------*/
/* キャリアプラン */
/*--------------------*/

div.career span{
	font-size: 12px;
}
div.career img.career_sp {
	width: 50%;
	max-width: 900px;
	display: block;
	margin: 30px auto 0 auto;
}

div.career img.career {
	display: none;
}

/*--------------------*/
/* 数字で見る太陽鉱油 */
/*--------------------*/
div.number {
	background-image: url("../images_2021/recruit/bg_.jpg");
	background-size: cover;
	background-position: top center;
	padding-bottom: 50px;
}

div.number div.box_midashi{
	padding-top: 50px;
}

div.number div.box_midashi p{
	color: #fff;
	margin: 0;
}
div.number span.midashi{
	color: #fff;
	border: none;
}


div.number p {
	text-align: center;
	display: block;
	margin: 50px 0 100px 0;
}

div.number div.inner {
	width: 85%;
	margin: 50px auto 0 auto;
}

div.number div.box_wrap {
	width: 100%;
}

div.number div.main_box {
	margin-bottom: 15px;
	width: 100%;
}

div.number div.white, div.number div.black {
	box-sizing: border-box;
	padding: 10px;
}

div.number div.black {
	background-color: #fff;
	border-bottom: 1px #999 solid;
	display: grid;
    place-items: center;
}

div.number div.black p {
	text-align: left;
	color: #000;
	margin:0;
	font-size: 12px;
	line-height: normal;
	text-align: center;
}

div.number div.black p strong {
	font-size: 16px;
	letter-spacing: 1px;
	display: block;
	color: #000;
	font-family: 'Yu Gothic', toppan-bunkyu-gothic-pr6n, serif;
	font-weight: 600;
	font-style: normal;
	text-align: center;
}

div.number div.white {
	background-color: #fff;
	height: 100px
}

div.number div.white img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	margin: 0 auto;
}

div.number_wrap img.sp {
	display: none;
}

img.older_sp {
	display: block;
	margin: 0 auto;
	width: 90%;
	
}

img.older {
	display: none;
}

div.number_wrap img.pc {
	width: 80%;
	display: block;
	margin: 20px auto;
}

/** 20230404 revision */
div.number_wrap img.shinsotsu {
	width: 80%;
	display: block;
	margin: 0 auto 20px auto;
}


/*--------------------------*/
/* LINE相談室 */
/*--------------------------*/

div.line {
	width: 100%;
	margin-top: 100px;
	margin-bottom: 100px;
	background-color: #00b900;
	color: #fff;
	vertical-align:middle;
	padding: 20px 0;
}

div.line p {
	width: 80%;
	margin: 0 auto;
	text-align: center;
    place-items: center;
	vertical-align:middle;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 17px;
}

div.line strong {
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-size: 20px;
}

div.line strong::before {
	content: "\A" ;
	white-space: pre ;
}
div.line a {
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-size: 20px;
	margin-top: 1vh;
}
/*--------------------------*/
/* MOVIE */
/*--------------------------*/
div.movie {
	width: 100%;
	padding: 25px 0 70px 0;
}

div.movie iframe {
	width: 90%;
	height: 180px;
	margin: 30px auto 0 auto;
	display: block;
}


/*-----------------*/
/*エントリーボタン*/
/*-----------------*/

div.top_entry div.inner{
	width: 100%;
}

div.top_entry div.box1 {
	padding: 20px 0 ;
	background-color: #174ea0;
}

div.top_entry div.box2 {
	padding: 20px 0 ;
	background-color: #124582;
}

div.top_entry img.image1 {
	width: 30%;
	display: block;
	margin: 0 auto;
	position: relative;
}

div.top_entry img.right {
	display: none;
}


div.top_entry img.bottom {
	width: 10px;
	display: block;
	margin: 10px auto 20px auto;
}

div.top_entry p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;	
	color: #fff;
	display: block;
	margin: 0 auto;
	font-size: 4vw;
	line-height: 6vw;
	text-align: center;
}

div.top_entry a.animoButtonOverlay{
	display:block;
	position:relative;
	background-color: #000;
	color: #fff;
	cursor:pointer;
	transform: skew(-40deg);
	width: 50vw;
	padding:3vw 0;
	margin: 0 auto;
	margin-bottom: 3vh
}

div.top_entry a.animoButtonOverlay::before{
	content:'';
	position:absolute;
	height:100%;
	width:100%;
	bottom:0.8vw;
	left:0.8vw;
	background-color:#fff;
	z-index:-1;
	transition:transform .2s ease-in-out;
	border: 0.7vw solid #000;
	transition: .2s;
}

div.top_entry a.animoButtonOverlay::after{
	content:'';
	position:absolute;
	top:0;
	right:0;
	height:100%;
	width:100%;
}

div.top_entry a.animoButtonOverlay:hover::before{
	transform: translate(-0.8vw,0.8vw);
	/*background-color: #ffef3d;*/
}

div.top_entry a.animoButtonOverlay img {
	height: auto;
	width: 60%;
	transform: skew(40deg);
	display: block;
	margin: 0.5vw auto 2vw auto;
}

div.top_entry a.animoButtonOverlay img.image3 {
	margin: 0 auto 0.5vw auto;
}

/*-----------------*/
/*スライド*/
/*-----------------*/

.swiper-slide {
	position: relative;
}

.swiper-slide a {
	position: absolute;
	bottom:10px;
	left:0;
	right:0;
	margin: auto;
	width: 150px;
	height: 50px;
	background-image: url("../images_2021/recruit/btn.png");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.swiper-slide a:hover {
	background-image: url("../images_2021/recruit/btnhover.png");
}

.container {
	display: none;
}

/**==========================================================*/
/** shop info popup */
/**==========================================================*/
div.popup_shop_info_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.popup_shop_info_wrapper img {
	display: block;
	margin: 0 auto;
	width: 100%;
}

div.popup_shop_info_wrapper ul {
	list-style: none;
	width: 100%;
	margin: 10px auto;
}

div.popup_shop_info_wrapper ul li {
	background: #F5F5F5;
	padding: 15px 0 15px 10px;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	text-align: left;
	font-size: 1.5rem;
}

div.popup_shop_info_wrapper ul li.color01  {
	background: #EE1C25;
	color: #ffffff;
}

div.popup_shop_info_wrapper ul li.color02  {
	background: #EE398A;
	color: #ffffff;
}

div.popup_shop_info_wrapper ul li.color03  {
	background: #00A651;
	color: #ffffff;
}

div.popup_shop_info_wrapper ul li.color04  {
	background: #F47922;
	color: #ffffff;
}

div.popup_shop_info_wrapper ul li.color05  {
	background: #0071BB;
	color: #ffffff;
}

div.popup_shop_info_wrapper ul li.color06  {
	background: #009FB8;
	color: #ffffff;
}

div.popup_shop_info_wrapper p span.color01 {
	color: #EE1C25;
}

div.popup_shop_info_wrapper p span.color02 {
	color: #EE398A;
}

div.popup_shop_info_wrapper p span.color03 {
	color: #00A651;
}

div.popup_shop_info_wrapper p span.color04 {
	color: #F47922;
}

div.popup_shop_info_wrapper p span.color05 {
	color: #0071BB;
}

div.popup_shop_info_wrapper p span.color06 {
	color: #009FB8;
}

div.popup_shop_info_wrapper ul li h1 {
	font-size: 1.6rem;
}

div.list_button {
	background: #000000;
	text-align: center;
	padding: 15px 0;
	width: 100%;
	margin: 20px auto 10px auto;
	display: block;
	font-size: 1.5rem;
}

div.list_button a {
	color: #ffffff;
}

div.list_button img {
	width: 95px;
}
/**==========================================================*/

div.megawash_personal_mv_wrapper {
	width: 100%;
	background: #000000;
}

div.megawash_personal_mv_wrapper video {
	width: 95%;
	margin: 0 auto;
}

/** scroll down */
a.scrolldown {
display: none;
/*	position: absolute;
	top: 20vh;
	right: 1%;
	z-index: 100;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	color: #ffffff;*/
}

a.scrolldown {
	padding-top: 70px;
}

a.scrolldown span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 30px;
	height: 30px;
	margin-left: -12px;
	border-left: 3px solid #fff;
	border-bottom: 3px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 1.5s infinite;
	animation: sdb 1.5s infinite;
	box-sizing: border-box;
}

@-webkit-keyframes sdb {
	0% {
		-webkit-transform: rotate(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-webkit-transform: rotate(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}
@keyframes sdb {
	0% {
		transform: rotate(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: rotate(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}


/** revision 20210929 */
div.member_login {
	width: 100%;
	margin: 30px 0;
	position: relative;
	display: block;
	padding: 0 0 30px 0;
}

div.member_login a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 4%;
	width: 50%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 10px 0;
	position: absolute;
	right: 2%;
}

div.member_login a:hover {
	background: url(../images_2021/page_icon_on.png) no-repeat;
	background-color: #efefef;
	background-size: 4%;
	color: #000000;
	background-position: center right 20px;
}

/** 20220222 revision */
#header, #header_sub {
	display: none;
}

/** 20220224 main copy */
ul.main_copy {
	z-index: 99999;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 30px;
	width: 94%;
	color: #ffffff;
	text-shadow: 1px 4px 4px #000000;
	height: 20%;
}

ul.main_copy li {
	float: left;
}

ul.main_copy li.copy_break {
	clear: both;
}

/**=========================================*/
/** SS紹介 */
/**=========================================*/
div.ss_info_wrapper {
	width: 90%;
	margin: 0 auto;
}

div.ss_info_contents {
	width: 100%;
	margin: 30px auto;
}

div.ss_info_contents h3 br {
	display: none;
}

div.ss_info_contents h3 {
	width: 98%;
	margin: 0 auto 30px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	letter-spacing: 4px;
	background: #969696;
	padding: 10px 1%;
}

div.ss_info_wrapper ul {
	width: 100%;
	list-style: none;
	margin: 20px 0 0 0;
}

div.ss_info_wrapper ul a:hover {
	text-decoration: none;
}

div.ss_info_wrapper ul li {
	padding: 10px 0;
}

div.ss_info_wrapper ul li.ss_info_date {
	width: 90%;
	padding: 10px 0 10px 34px;
	text-align: left;
	background: url(../images_2021/ss_info/ss_info_icon.png) no-repeat;
	background-size: 20px;
	background-position: 5px 12px;
	background-color: #f9f9f9;
}

div.ss_info_wrapper ul li.ss_info_date span {
	display: block;
	width: 100%;
	text-decoration: underline;
	margin: 5px 0 0 0;
}
/**=========================================*/

/** 20220602 revision */
#iWrap h2 {
	font-size: 1.4rem;
	cursor:pointer;
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
}

#iWrap div {
	border-bottom: 1px solid #efefef;
	margin: 0 0 10px 0;
}

/** revision 20220263 recruit */
div.recruit_rate_box {
	width: 90%;
	margin: 50px auto;
}

div.recruit_rate_box table {
	width: 100%;
}

div.recruit_rate_box table th {
	font-size: 1.4rem;
	padding: 15px 0;
	border: 1px solid #cccccc;
}

div.recruit_rate_box table td {
	font-size: 1.4rem;
	padding: 15px 0;
	border: 1px solid #cccccc;
	text-align: center;
}

div.recruit_rate_box table th.center_text {
	background: #F5F5F5;
}

div.recruit_rate_box table th.right_text {
	font-size: 1.3rem;
	text-align: right;
	border: none;
}

th.rate_cell_01 {
	width: 40%;
}

th.rate_cell_02 {
	width: 20%;
}

th.rate_cell_03 {
	width: 20%;
}

th.rate_cell_04 {
	width: 20%;
}

/** revision 20220913 */
div.shop_list_highway_wrapper {
	width: 95%;
	margin: 0 auto;
}

p.shop_list_highway_line {
	font-size: 1.6rem;
	font-weight: bold;
	padding: 0 0 10px 0;
}

/** revision 20230522 */
div.campaign_wash_wrapper {
	margin: -20px 0 10px auto;
	width: 100%;
}

.campaign-wash-button {
	width:100%;
	border:2px solid #0062B1;
	text-align:center;
	cursor:pointer;
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
	margin:30px auto 0 auto;
	height: 50px;
	border-radius: 10px;
}

.campaign-wash-button a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.5rem;
	font-weight: bold;
	color:#fff;
	text-decoration:none;
	line-height:44px;
	transition:all .5s ease;
	z-index:2;
	position:relative;
	display: block;
	width: 100%;
}

.campaign-wash-eff {
	width:100%;
	border:70px solid #0062B1;
	position:absolute;
	transition:all .5s ease;
	z-index:1;
	box-sizing:border-box;
}

.campaign-wash-button:hover .campaign-wash-eff {
	border:0px solid #0062B1;
	color: #ffffff;
	border: 70px solid #FFF100;
}

.campaign-wash-button:hover a {
	color:#0062B1;
}

/** revision 20230524 */
div.cp_catch_pc {
	display: none;
}

div.cp_catch_sp {
	margin: 0 0 20px 0;
}

div.cp_catch_sp img {
	width: 100%;
}

/** revision 20230525 */
#iWrapCampaign h2 {
	cursor:pointer;
	margin-bottom: 30px;
	padding-top: 20px;
	border-top: 1px solid #efefef;
}

#iWrapCampaign h2 span {
	font-size: 1.3rem;
	color: #aaaaaa;
	display: block;
	margin: 10px 0 0 0;
}


#iWrapCampaignBusiness {
	margin: 0 auto;
	width: 90%;
}

#iWrapCampaignBusiness h2 {
	cursor:pointer;
	margin-bottom: 30px;
	padding-top: 20px;
	border-top: 1px solid #efefef;
}

#iWrapCampaignBusiness span {
	font-size: 1.3rem;
	color: #aaaaaa;
}

/** revision 20231227 */
div.personal_menu02 span {
	font-size: 1.2rem;
}

/** revision 20240419 */
div.recruit_mv_movie {
	width: 90%;
	margin: auto;
}

div.recruit_mv_movie_inner {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

div.recruit_mv_movie_inner iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/** 20250827 renewal */
div.important_info {
	background: #bf2121;
	color: #ffffff;
	font-weight: bold;
	font-size: 12px;
	text-align: center;
	padding: 10px 0;
	width: 100%;
	margin: 0;
	position: fixed;
/*	height: 30px;*/
	top: 0;
	z-index: 100000000;
}

div.important_info a {
	display:  block;
	width: 95%;
	color: #ffffff;
	text-decoration: underline;
	margin: 0 auto;
	padding: 0;
}

/** revision 20251113 */
div.important_body {
	margin:  30px 0 0 0;
}

div.important_body h4 {
	font-size: 16px;
	font-weight: normal;
}

div.important_body div {
	margin: 30px 0;
	line-height: 30px;
}


div.ss_header_pc {
	width: 100%;
	margin: 0 auto;
}

div.ss_header_pc h3 {
/*
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	text-align: center;
	letter-spacing: 4px;
	margin: 10px 0 30px 0;
*/
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2rem;
  text-align: center;
  letter-spacing: 0.2em;
  margin: 0 0 30px 0;
  font-weight: 700;
  -webkit-font-smoothing: antialiased;
}

div.map_info_wrapper {
	width: 98%;
	padding: 0 0 20px 0;
}

div.map_info_wrapper h3 {
	width: 92%;
	margin: 0 auto 20px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: normal;
	letter-spacing: 10px;
	background: #969696;
	padding: 10px 3%;
	text-align: left;
}

ul.news-list li {
	opacity: 1;
	transition: opacity 0.3s ease;
	padding: 12px 0 18px 60px;
	font-size: 13px;
	border-bottom: 1px solid #dddddd;
}

ul.news-list li.icon-1 {
	background: url(../images_2021/gmap_shop/whatsnew-icon1.png) no-repeat;
/*	background-position: 5px 10px;*/
	background-position: 5px 30px;
	background-size: 35px;
}

ul.news-list li.icon-2 {
	background: url(../images_2021/gmap_shop/whatsnew-icon2.png) no-repeat;
	background-position: 5px 30px;
	background-size: 35px;
}

ul.news-list li.icon-3 {
	background: url(../images_2021/gmap_shop/whatsnew-icon3.png) no-repeat;
	background-position: 5px 30px;
	background-size: 35px;
}

ul.news-list li.icon-4 {
	background: url(../images_2021/gmap_shop/whatsnew-icon4.png) no-repeat;
	background-position: 5px 30px;
	background-size: 35px;
}

/*--
single_info_pagination
-----------------------------*/
.pagination h2, span.page-numbers, a.page-numbers {
	display: none;
}

div.single_info_pagination {
	width: 90%;
	margin: 0 auto 100px auto;
	position: relative;
}

div.single_info_pagination a {
	color: #000000;	
	transition: .3s;
}

div.single_info_pagination a.next i {
	margin-right: 20px;
}

div.single_info_pagination a.prev i {
	margin-left: 20px;
}

div.single_info_pagination a.prev {
	position: absolute;
	left: 0;
	top:50px;
}

div.single_info_pagination a.next {
	position: absolute;
	right: 0;
	top:50px;
}

div.single_info_pagination span.center {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	color:#000000;
}

div.single_info_pagination span.center {
	display: block;
	width: 100%;
	text-align: center;
	margin: 0;
}

div.single_info_pagination a.center {
	display: block;
	width: 100%;
	text-align: center;
	margin: 0 0 -10px 0;
}

div.single_info_pagination nav {
	width: 100%;
	display: block;
}

div.single_info_pagination nav div {
	text-align: center;
}

a.next, a.prev {
	display: block;
}
/*-----------------------------*/

.toggle-button {
	display: block;
	margin: 20px auto 30px auto;
	color: #007BFF;
	cursor: pointer;
	text-decoration: underline;
	width: 90%;
	padding: 10px 0;
	background: #efefef;
	color: #000000;
	text-align: center;
	font-size: 13px;
}


/** map-select */
div.map-select-wrapper {
	margin: 0;
	background: url(../images_2021/gmap_shop/map-select-bg.jpg) no-repeat;
	background-size: cover;
	padding: 50px 0;
}

/*
div.map-select-wrapper a {
width: 90%;
position: relative;
margin: 30px auto 10px auto;
background-color: #000000;
color: #ffffff;
display:  block;
font-family: 'Noto Sans JP', sans-serif;
font-size: 14px;
font-weight: bold;
border-radius: 10px;
}
*/
div.map-select-wrapper a {
	width: 95% !important;
	position: relative;
	margin: 30px auto 10px auto;
	padding: 16px 18px;
	background: linear-gradient(to bottom, #222222 0%, #000000 100%);
	border: 2px solid #444444;
	border-radius: 10px;
	box-shadow:
		0 4px 0 #222222,
		0 6px 12px rgba(0,0,0,0.25);
	color: #ffffff;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	transition: transform 0.12s ease, box-shadow 0.12s ease;
}

div.map-select-wrapper a:active {
	transform: translateY(2px);
	box-shadow:
		0 2px 0 #222222,
		0 3px 6px rgba(0,0,0,0.25);
}

div.map-select-wrapper a span {
	position: absolute;
	right: 10px;
	bottom: 50px;
	width: 20px;
}

div.map-select-wrapper a strong {
	position: absolute;
	font-size: 13px;
	font-weight: normal;
	top: 50px;
	left: 50px;
	width: 75%;
}

div.map-select-wrapper a span img {
	width: 50%;
}


div.map-select-wrapper a.map-search {
background: url(../images_2021/gmap_shop/map-select-icon-map.png) no-repeat;
background-size: 20px;
background-color: #000000;
background-position: 10px 50px;
padding: 20px 30px 70px 50px;
width: 70%;
margin: 0 auto 20px auto;
}


div.map-select-wrapper a.map-list {
background: url(../images_2021/gmap_shop/map-select-icon-list.png) no-repeat;
background-size: 20px;
background-color: #000000;
background-position: 10px 50px;
padding: 20px 30px 70px 50px;
width: 70%;
margin: 0 auto 20px auto;
}


div.map-select-wrapper a.map-highway {
background: url(../images_2021/gmap_shop/map-select-icon-highway.png) no-repeat;
background-size: 20px;
background-color: #000000;
background-position: 10px 50px;
padding: 20px 30px 70px 50px;
width: 70%;
margin: 0 auto;
}

div.single-ss_info_box {
	margin: 20px 0;
}

div.single-ss_info_icon_image {
	/*display: block;*/
	text-align: left;
	margin: 0 0 10px 0;
	padding: 0 0 30px 0;
	position: relative;
}

div.single-ss_info_icon_image img {
	width: 120px;
	position: absolute;
}

div.single-ss_info_box h4 {
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 20px 0;
}

div.ss_info_box_body {
	margin: 30px 0;
}

div.single-ss_info_box_body {
	margin: 10px 0;
	line-height: 26px;
}

div.single-ss_info_box_body a {
	text-decoration: underline;
}

div.news_body_wrapper {
	margin:  30px 0;
}

div.news_body_wrapper h4 {
	font-size: 16px;
	font-weight: normal;
}

div.news_body {
	margin: 10px 0;
}

a.map-select-info-button {
	margin: 10px auto 0 auto;
	display: block;
	width: 95%;
	text-align: left;
	font-size: 14px;
	padding: 10px 0;
}


div.ss-detail-wrapper {
	width: 100%;
}

div.ss-detail-inner {
	width: 90%;
	margin: 0 auto;
	padding: 10px 0 50px 0;
	position: relative;
}

span.icon-direct {
	background: #df2527;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}
span.icon-direct_highway {
	background: #ee398a;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}
span.icon-partner {
	background: #00a651;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}
span.icon-partner_highway {
	background: #f47922;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}
span.icon-designated {
	background: #0071bb;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}
span.icon-designated_highway {
	background: #009fb8;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	padding: 5px 20px;
}

div.ss-detail-inner strong {
	display: block;
	margin: 30px 0 0 0;
	font-weight: bold;
	font-size: 16px;
}

span.ss_operator_name {
	display: block;
	width: 100%;
	font-size: 13px;
	font-weight: normal;
	margin: 10px 0 0 0;
}

div.ss-detail-info-wrapper {
	margin: 20px auto 0 auto;
}

div.ss-detail-info-left {
	float: none;
	width: 100%;
	margin: 0 auto;
	min-height: 200px;
}

div.ss-detail-info-left iframe {
	width: 100%;
	height: 200px;
}

div.ss-detail-info-right {
	float: none;
	width: 100%;
	margin: 0 auto;
}

div.ss-detail-info-right ul {
	list-style: none;
}

div.ss-detail-info-right ul li {
	padding:  8px 0;
	border-bottom: 1px solid #cccccc;
}

div.ss-detail-info-right ul li.ss-resilient {
	padding:  10px 0;
	background: #1d2088;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
}

div.ss-detail-info-right ul li.ss-construction {
	padding:  10px 0;
/*	background: #bf2121;*/
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	border-top: 1px solid #bf2121;
	border-bottom: 1px solid #bf2121;
	margin: 20px 0 0 0;
}

div.ss-detail-info-right ul li.ss-campaign span {
	font-size: 16px;
	font-weight: bold;
}

div.ss-detail-info-right ul li.ss-icon-img img {
	width: 30px;
	margin: 0 5px 0 0;
}

div.ss-detail-info-right ul li.ss-other-icon-img img {
	width: 40px;
	margin: 0 5px 0 0;
}

a.ss-streatview {
	width: 100%;
	display: block;
}

div.ss-hanrei-box {
	width: 90%;
	margin: 0 auto 50px auto;
	padding: 10px 0;
	background: #efefef;
}

div.ss-hanrei-box strong {
	font-weight: bold;
	display: block;
	margin: 10px auto;
	font-size: 12px;
	text-align: center;
}

div.ss-hanrei-box ul {
	width: 90%;
	margin: 0 auto;
	display: block;
	padding: 0;
}

div.ss-hanrei-box ul li {
  display: block;
  margin: 10px;
  color: #333333;
  font-size: 12px;
}

div.ss-hanrei-box ul li img {
  margin-right: 10px;
  width: 20px;
  height: 20px;
}

div.ss_streat_view {
	line-height: 0;
	background: #000000;
	text-align: center;
}

div.ss_streat_view img {
	width: 70%;
}

/**
page-map-search GoogleMap連携店舗検索
*/
html, body {
/*	height: 100%;*/
	margin: 0;
	padding: 0;
}
#map {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
.map-control {
	margin: 0 10px 0 0;
/*	width: 240px;*/
	width: 100%;
	background: #fff;
/*	border: 1px solid #ccc;*/
/*	border-radius: 8px;*/
	padding: 12px;
/*	box-shadow: 0 2px 6px rgba(0,0,0,0.2);*/
	z-index: 1000;
	/* スクロール対応を追加 */
	max-height: 90vh;         /* 表示領域を画面90%までに制限 */
	overflow-y: auto;         /* 内容が超えたらスクロール */
}
.map-control input[type="text"] {
	padding: 8px 10px;
	border: 1px solid #ccc;
	border-radius: 6px;
	width: 90%;
	font-size: 13px;
}
.toggle-group-wrapper {
	border: 1px solid #ccc;
	border-radius: 6px;
	overflow: auto;
	overflow-y: scroll;
	margin: 4px 0;
	font-size: 13px;
}
.toggle-header {
	background: #f0f0f0;
	padding: 8px 12px;
	font-weight: bold;
	cursor: pointer;
	user-select: none;
}
.toggle-group {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	padding: 10px;
	display: none;
	flex-direction: column;
}
.toggle-group.show {
	display: flex;
}
.toggle-btn {
	flex: 1;
	padding: 6px 12px;
	border-radius: 6px;
	text-align: center;
	cursor: pointer;
	border: 1px solid transparent;
	color: white;
	font-weight: bold;
	user-select: none;
	transition: all 0.2s ease;
}

.toggle-btn {
	display: flex;
	align-items: center;
	padding: 6px 10px;
	gap: 6px;
	cursor: pointer;
	font-size: 13px;
	line-height: 1.2;
}

.toggle-btn .btn-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}
      /** 店舗区分*/
/**
color-direct直　営 f03840
color-direct_highway直営高速 ee398a
color-partner提　携 00a651
color-partner_highway提携高速 f47922
color-designated指　定 0071bb
color-designated_highway指定高速 009fb8
*/
.toggle-btn.color-direct { background: #f03840; opacity:0.3; }
.toggle-btn.color-direct_highway { background: #ee398a; opacity:0.3; }
.toggle-btn.color-partner { background: #00a651; opacity:0.3; }
.toggle-btn.color-partner_highway { background: #f47922; opacity:0.3; }
.toggle-btn.color-designated { background: #0071bb; opacity:0.3; }
.toggle-btn.color-designated_highway { background: #009fb8; opacity:0.3; }
/** 営業形態｜設備 */
.toggle-btn.A { background: #8e44ad; }
.toggle-btn.B { background: #16a085; }
.toggle-btn.C { background: #f39c12; }
.toggle-btn.category { background: #0a4576; opacity:0.3; }
/** 条件選択時 */
.toggle-btn.active {
/*        border: 2px solid #333;*/
	box-shadow: 0 0 3px rgba(0,0,0,0.3);
	opacity: 1;
}
.infowindow {
	font-size: 14px;
	min-width: 300px;
	line-height: 26px;
}
.infowindow .label {
	display: inline-block;
	margin-right: 5px;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 12px;
	background-color: #eee;
	color: #333;
}
.infowindow .category-icon {
	width: 30px;
	height: 30px;
	margin: 5px 4px 0 0;
}
.infowindow .color-icon {
	margin: 5px 0 0 0;
	width: 86px;
}
.infowindow strong {
	font-weight: bold;
}
.fade-hidden {
	opacity: 0;
	height: 0;
	overflow: hidden;
	padding: 0;
	margin: 0;
	pointer-events: none;
	transition: opacity 0.3s ease, height 0.3s ease, padding 0.3s ease, margin 0.3s ease;
}

.toggle-button {
	display: inline-block;
	margin: 20px 0 30px 0;
	color: #007BFF;
	cursor: pointer;
	text-decoration: underline;
	width: 100%;
	padding: 20px 0;
	background: #efefef;
	color: #000000;
	text-align: center;
	font-size: 1.4em;
}

/** 20251127 googlemap infoWindow */
/* InfoWindow 全体の余白を削る（赤枠部分） */
.gm-style-iw {
  padding: 0 !important;
  overflow: visible !important;
}

/* 内部の div（コンテンツ）周りの余白を削る */
.gm-style-iw > div {
  padding: 0 !important;
  margin: 0 !important;
}

/* InfoWindow のコンテンツ */
.infowindow {
  padding: 8px 10px !important;
}

/* × ボタンの位置を下げる */
.gm-ui-hover-effect {
  top: 18px !important;   /* ← お好みで調整可能 */
  right: 8px !important;
}

/* × ボタンの背景（白い丸）削除したい場合 */
.gm-ui-hover-effect img {
  box-shadow: none !important;
  background: transparent !important;
}

/** スマートフォンの場合はGoogleMap枠外にレイアウトする */
/* GoogleMapのコントロール内に入った filter-controls を非表示 */
.gm-style .gm-control-active #filter-controls,
.gm-style #filter-controls,
#filter-controls {
/*	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;*/
        position: relative !important;
        top: auto !important;
        right: auto !important;
        margin-bottom: 10px;
        z-index: 10;
		width: 90%;
}

div.map_info_wrapper h3 {
	width: 98%;
	margin: 20px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	font-weight: normal;
	letter-spacing: 10px;
	background: #969696;
	padding: 10px 1%;
	text-align: left;
}

div.ss-search-info {
	width: 90%;
	margin:  0 auto;
}

/** ss_list */
div.ss_list_main_wrapper {
	width: 95%;
	margin: 0 auto;
}

div.ss_list_main_wrapper h3 {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	text-align: center;
/*	letter-spacing: 20px;*/
	margin: 0;
}

div.ss_list_table_wrapper {
	width: 100%;
	margin: 30px auto 50px auto;
}

table.ss_list_table {
	width: 100%;
	margin: 0 auto;
}

table.ss_list_table tr.ss_list_sp {
	display: none;
}

table.ss_list_table th {
	background-color: #959595;
	border: 1px solid #ffffff;
	color: #ffffff;
	font-weight: normal;
	padding:  10px;
	font-size: 13px;
}

table.ss_list_table th.area {
	text-align: left;
	font-size: 13px;
	font-weight: bold;
	background-color: #777777;
}

table.ss_list_table td {
	border: 1px solid #ffffff;
	color: #000000;
	font-weight: normal;
	padding:  5px 0;
	font-size: 13px;
	display: block;
	line-height: 24px;
}

img.ss_list_type_icon {
	width: 60px;
	margin-right: 10px;
}

img.ss_list_icon {
	width: 20px;
	margin: 10px 5px 0 0;
}

table.ss_list_table tr.ss_list_tr {
	border-bottom: #efefef;
}

table.ss_list_table td.ss_list_td_center {
	text-align: center;
}

div.ss_list_function_wrapper {
	margin: 0 0 30px 0;
}

div.ss_list_function_province {
	float: none;
	width: 100%;
}

div.ss_list_function_print {
/*
	float: none;
	width: 100%;
	text-align: center;
	margin: 20px 0 0 0;
*/
	display: none;
}

div.ss_list_function_print img {
	width: 100%;
}

div.ss_list_function_province label {
    font-size: 13px;
    font-weight: bold;
    margin-right: 8px;
  }

div.ss_list_function_province select {
    font-size: 13px;             /* フォントサイズ */
    padding: 6px 10px;           /* 内側余白 */
    border: 1px solid #999;      /* グレーの枠線 */
    border-radius: 6px;          /* 角丸 */
    background-color: #f8f8f8;   /* 薄いグレー背景 */
    color: #333;                 /* 文字色 */
    cursor: pointer;
    transition: all 0.2s ease;
  }

div.ss_list_function_province select:hover {
    background-color: #eee;      /* ホバー時に少し濃いグレー */
    border-color: #666;
  }

div.ss_list_function_province select:focus {
    outline: none;
    border-color: #555;          /* フォーカス時に濃いグレー */
    box-shadow: 0 0 3px rgba(100,100,100,0.4);
  }

  div.ss-list-hanrei-box {
	width: 100%;
	margin: 0 auto 30px auto;
	padding: 10px 0;
	background: #efefef;
}

div.ss-list-hanrei-box strong {
	font-weight: bold;
	display: block;
	margin: 10px auto;
	font-size: 12px;
	text-align: center;
}

div.ss-list-hanrei-box ul {
	width: 90%;
	margin: 0 auto;
	display: block;
	padding: 0;
}

div.ss-list-hanrei-box ul li {
  display: block;
  margin: 10px;
  color: #333333;
  font-size: 12px;
}

div.ss-list-hanrei-box ul li img {
  margin-right: 10px;
  width: 20px;
  height: 20px;
}

img.news_img {
	margin-top: 30px;
	display: block;
	width: 90%;	
}

span.single-ss_info_date {
	font-size: 1.4rem;
	color: #777777;
	margin: 0 10px 0 0;
	line-height: 40px;
}


/** taiyo-preca */
p.preca-desc {
	margin: 30px 0;
}

p.preca-desc span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	font-weight: bold;
}

.tab-container {
	width: 100%;
}

.tab-togle-group {
	display: flex;
}

.tab-toggle {
	width: 100%;
	text-align: center;
	padding: 8px;
	cursor: pointer;
	padding: 30px 0 20px 0;
}

.tab-toggle img {
	width: 80%;
	opacity: 0.2;
}

.tab-toggle.on img {
	opacity: 1;
}

.tab-toggle.on:nth-of-type(1) {
	background-color: #efefef;
}

.tab-toggle.on:nth-of-type(2) {
	background-color: #efefef;
}

.tab-content {
    text-align: center;
    display: none;
}

.tab-content.show {
    display: block;
}

.tab-content p {
    padding: 100px;
}

.tab-content:nth-of-type(1) {
/*	background-color: yellow;*/
}

.tab-content:nth-of-type(2) {
/*	background-color: orange;*/
}


div.preca_ss_button {
	width: 100%;
	margin: 30px auto;
}

div.preca_ss_button a {
	transition: .4s all;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	background: url(../images_2021/page_icon.png) no-repeat;
	background-size: 3%;
	width: 100%;
	display: block;
	border-radius: 20px;
	background-color: #000000;
	background-position: center right 10px;
	color: #ffffff;
	text-align: center;
	padding: 20px 0;
}

div.preca_ss_button a:hover {
	background: url(../images_2021/page_icon.png) no-repeat;
	background-color :#000000;
	background-size: 3%;
	color: #ffffff;
	background-position: center right 20px;
}

div.preca_ss_list {
	width: 100%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;	
}

div.preca_ss_list h3 {
	width: 98%;
	margin: 0 auto 20px auto;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	font-weight: normal;
	background: #969696;
	padding: 2% 1%;
}

table.preca_ss_table {
	width: 100%;
}

table.preca_ss_table tr {
	border-bottom: 1px solid #cccccc;
}

table.preca_ss_table td {
	padding: 5px 0;
}

table.preca_ss_table td.preca_ss_icon {
	width: 10%;
	display: block;
	float: left;
}

table.preca_ss_table td.preca_ss_icon img {
	width: 28px;
}

table.preca_ss_table td.preca_ss_name {
	width: 80%;
	text-align: left;
	font-weight: bold;
	font-size: 1.4rem;
	text-decoration: underline;
	display: block;
	float: left;
}

table.preca_ss_table td.preca_ss_address {
	clear: both;
	text-align: left;
	display: block;
}

table.preca_ss_table td.preca_ss_tel {
	text-align: left;
	display: block;
	float: left;
}

.ss-area-preca {
	position: relative;  /* 追加 */
	border-bottom: 1px solid #ffffff;
	background-color: #969696;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	text-align: center;
	font-weight: bold;
	padding: 15px 0;
	margin: 0 0 -1px 0;
}

.ss-list-preca {
	display: none;
}

/* 擬似要素で下三角形を作成 */
.ss-area-preca:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 45%;
	right: 30px;
	width: 10px;
	height: 10px;
	border-right: 3px solid #ffffff;
	border-bottom: 3px solid #ffffff;
	transform: translateY(-50%) rotate(45deg);
	transition: transform .3s;
}

/* オープン時にopenクラスを付与 */
.ss-area-preca.open:after {
	transform: rotate(225deg);
}
/**=========================================*/

/**====================================*/
/** adjust */
/**====================================*/
div.archive-info-list {
	margin: 50px 0 0 0;
}


div.news_box ul li.news_date_list {
	padding: 5px 0 5px 10px;
	color: #DB0000;
}

div.news_box ul li.news_icon_list {
	margin: 0;
	padding: 5px 0 0 10px;
}

ul.archive_ss_info_a a {
	display: block;
	width: 95%;
}

ul.archive_ss_info_a {
	width: 95%;
	margin: 0 auto;
}

div.custom-infowindow {
	padding: 10px;
}

div.news_fix {
	width: 96%;
	font-weight: bold;
	background: #efefef;
	padding: 10px 2%;
}


div.wn_top_fix {
	width: 100%;
	margin: 20px 0;
	border: 1px solid #cccccc;
}

div.wn_top_fix_inner {
	width: 90%;
	text-align: center;
	padding:  10px 20px;
}

div.wn_top_fix_inner a {
	display: block;
	width: 100%;
}

img.const_img {
	width: 80px;
}

img.gmap_const_img {
	width: 80px;
}

div.top_wn_none_wrapper {
	width: 100%;
	margin: 20px 0;
}

div.top_wn_none {
	width: 90%;
	text-align: center;
	padding:  10px 20px;
}

img.gmap_const_img_single {
	width: 100px;
}

div.map-search-wrapper {
	margin: 0;
}

div.map-search-wrapper a {
	width: 90%;
	position: relative;
	margin: 0 auto 20px auto;
	background:
		url(../images_2021/gmap_shop/map-select-icon-map.png) no-repeat,
		linear-gradient(to bottom, #222222 0%, #000000 100%);
	background-size: 20px, 100%;
	background-position: 10px 30px, 0 0;
	color: #ffffff;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 13px;
	font-weight: bold;
	padding: 20px 30px 100px 50px;
	border: 2px solid #444444;
	border-radius: 10px;
	box-shadow:
		0 4px 0 #222222,
		0 6px 12px rgba(0,0,0,0.25);
	text-decoration: none;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		opacity 0.12s ease;
}

div.map-search-comment {
	margin: 0 auto 30px auto;
	font-size: 13px;
	width: 90%;
}

div.map-search-wrapper a:active {
	transform: translateY(3px);

	box-shadow:
		0 1px 0 #222222,
		0 3px 6px rgba(0,0,0,0.25);

	opacity: 0.95;
}

div.map-search-wrapper b {
	position: absolute;
	font-weight: bold;
	top: 20px;
	left: 50px;
}

div.map-search-wrapper a span {
	position: absolute;
	right: 10px;
	bottom: 50px;
	width: 20px;
}

div.map-search-wrapper a strong {
	position: absolute;
	font-size: 13px;
	font-weight: normal;
	top: 50px;
	left: 50px;
	width: 74%;
}

div.map-search-wrapper p {
	font-size: 11px;
}

div.map-search-wrapper a span img {
	width: 50%;
}

ul.map-select-news-list li {
	opacity: 1;
	transition: opacity 0.3s ease;
	padding: 5px 0 6px 40px;
	font-size: 13px;
	border-bottom: 1px solid #dddddd;
}

ul.map-select-news-list li.icon-1 {
	background: url(../images_2021/gmap_shop/whatsnew-icon1.png) no-repeat;
/*	background-position: 5px 10px;*/
	background-position: 5px 20px;
	background-size: 30px;
}

ul.map-select-news-list li.icon-2 {
	background: url(../images_2021/gmap_shop/whatsnew-icon2.png) no-repeat;
	background-position: 5px 20px;
	background-size: 30px;
}

ul.map-select-news-list li.icon-3 {
	background: url(../images_2021/gmap_shop/whatsnew-icon3.png) no-repeat;
	background-position: 5px 20px;
	background-size: 30px;
}

ul.map-select-news-list li.icon-4 {
	background: url(../images_2021/gmap_shop/whatsnew-icon4.png) no-repeat;
	background-position: 5px 20px;
	background-size: 30px;
}

div.page-map-select-title {
  display: flex;
  justify-content: space-between; /* 左右に配置 */
  align-items: center;            /* 縦中央 */
  padding: 10px 0;
  background: #9e9e9e;           /* 背景色（調整OK） */
  width: 90%;
  margin: 0 auto 20px auto;
}

div.page-map-select-title h2 {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 2px;
	color: #ffffff;
	margin: 0 0 0 3%;
}

div.page-map-select-title a {
  font-size: 1.2rem;
  color: #ffffff;
  text-decoration: none;
  margin: 0 3% 0 0;
  text-decoration: underline;
}

div.page-map-select-title a:hover {
  opacity: 0.9;
}

.has-notice nav.globalMenuSp {
	top: var(--info-height, 60px);
}

.has-notice div.header_wrapper {
/*	top: var(--info-height, 60px);*/
	margin: 40px 0 0 0;

}

.has-notice nav.globalMenuSp.active {
/*	top: var(--info-height, 60px);*/
	top: 30px;
}

.has-notice #header {
	top: var(--info-height, 60px);
}
.has-notice #bread_crumb {
	margin-top: 80px;
}

.has-notice .main_visual_wrapper {
	padding: 0;
	width: 100%;
	position: relative;
	height: 35vh;
	overflow: hidden;
	/** 重要なお知らせ有り */
	margin: 36px auto;
}

.has-notice #important_info {
    display: block;
}

.has-notice #header_sub {
	top: var(--info-height, 60px); /* お知らせ分の高さ */
}

.has-notice #bread_crumb {
	margin: 0 auto 0 auto;
	padding: 20px 0 20px 0;
}
/*
.has-notice div.global_menu_sp {
	margin-top: 60px;
}
*/
.has-notice div.hamburger {
	top: 50px;
}

span.important_title_limit {
	display: -webkit-box;
	-webkit-line-clamp: 1;      /* 1行に制限 */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-align: center;
}

/** revision 20260218 */
div.keeper-menu-comment {
	text-align: center;
}

div.keeper-menu-comment a {
	font-weight: bold;
	text-decoration: underline;
}

div.keeper_sidemenu_right ul li.keeper_sidemenu_link {
	margin: 10px 0 0 0;
}


div.keeper_sidemenu_flex {
	margin: 50px 0;
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

div.keeper_sidemenu_flex a {
	width: 100%;
	margin: 0 0 20px 0;
	display: flex;              /* ★ flexにする */
	align-items: center;        /* ★ 縦中央揃え */
	border-radius: 10px;
	background: #efefef;
	border: 1px solid #cccccc;
	text-decoration: none;      /* 任意 */
	color: #000;                /* 任意 */
}

div.keeper_sidemenu_flex a img {
	margin: 10px;
	flex-shrink: 0;             /* ★ 画像が潰れないように */
}

div.keeper_sidemenu_flex a span {
	display: block;
}

/* hover前の準備 */
div.keeper_sidemenu_flex a {
	transition: 
		transform 0.2s ease,
		box-shadow 0.2s ease,
		background-color 0.2s ease;
}

/* hover時 */
div.keeper_sidemenu_flex a:hover {
	transform: translateY(-3px);           /* 少しだけ浮かせる */
	box-shadow: 0 6px 15px rgba(0,0,0,0.12);/* 控えめな影 */
	background-color: #f5f5f5;              /* ほんのり明るく */
}

/** revision 20260414 */
.current-location-wrap {
	margin-bottom: 10px;
}

.current-location-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.current-location-btn:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.current-location-spinner {
	display: none;
	width: 14px;
	height: 14px;
	border: 2px solid rgba(255, 255, 255, 0.4);
	border-top: 2px solid #ffffff;
	border-radius: 50%;
	animation: currentLocationSpin 0.8s linear infinite;
	box-sizing: border-box;
}

@keyframes currentLocationSpin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.current-location-btn {
	width: 100%;
	padding: 10px 12px;
	background: #0a4576; /* ←背景色はここを変更 */
	color: #ffffff;      /* ←文字色はここを変更 */
	border: 1px solid #0a4576;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
	box-sizing: border-box;
}

.current-location-btn:hover {
	opacity: 0.9;
}

.current-location-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.current-location-btn:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.current-location-spinner {
	display: none;
	width: 14px;
	height: 14px;
	border: 2px solid rgba(255, 255, 255, 0.4);
	border-top: 2px solid #ffffff;
	border-radius: 50%;
	animation: currentLocationSpin 0.8s linear infinite;
	box-sizing: border-box;
}

@keyframes currentLocationSpin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.fullscreen-open-wrap {
	margin-bottom: 10px;
}

.fullscreen-open-btn {
	display: block;
	width: 100%;
	padding: 10px 12px;
	background: #f29600;
	color: #ffffff;
	border: 1px solid #f29600;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

.fullscreen-open-btn:hover {
	opacity: 0.9;
}

.fullscreen-map-layout {
	width: 100%;
/*	height: 100vh;*/
	height: calc(var(--vh, 1vh) * 100 - var(--header-total-height, 0px) - env(safe-area-inset-bottom));
	position: relative;
}

#map.fullscreen-map {
	width: 100%;
/*	height: calc(100vh - 220px);*/
	height: 100%;
	min-height: 520px;
}

.page-template-page-ss-search-full .map-control {
	position: absolute;
	top: 60px;
	right: 10px;
	z-index: 10;
	width: calc(100vw - 30px);
	max-width: 340px;
}

/** revision 20260416 */
/* ipadと同じ挙動でOK */
.hanrei-content {
	display: none;
}

div.ss-list-hanrei-box strong {
	display: none;
}

.hanrei-content.open {
	display: block;
}

.hanrei-toggle {
	display: block;
	width: 100%;
	background: #eee;
	border: none;
	padding: 12px;
	font-weight: bold;
	text-align: center;
}

/* 右側に＋を表示 */
.hanrei-toggle {
	position: relative;
}

.hanrei-toggle::after {
	content: "＋";
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 18px;
}

/* 開いたら－に変更 */
.hanrei-toggle.active::after {
	content: "－";
}

div.ss-search-full-important {
	background: #bf2121;
	color: #ffffff;
	font-weight: bold;
	font-size: 12px;
	padding: 10px 0;
	width: 100%;
	margin: 0 0 10px 0;
}

div.ss-search-full-important a {
	display:  block;
	width: 95%;
	color: #ffffff;
	text-decoration: underline;
	margin: 0 auto;
	padding: 0;
}



/*
.fullscreen-map-toolbar {
	display: flex;
	gap: 8px;
	margin: 0 0 8px;
	width: 100%;
	box-sizing: border-box;
}

.fullscreen-map-btn {
	display: block;
	flex: 0 0 calc(50% - 4px);
	width: calc(50% - 4px);
	padding: 10px 8px;
	background: #000000;
	color: #ffffff;
	border: 1px solid #000000;
	border-radius: 4px;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	box-sizing: border-box;
}

.fullscreen-map-btn:hover {
	opacity: 0.9;
}
*/
.fullscreen-map-toolbar {
	text-align: center;
	background: #ffffff;
	width: 97%;
	text-align: center;
	margin: 10px 0 0 0;
	padding: 12px 0 0 0;
}

.fullscreen-map-toolbar img {
	width: 40%;
}

.fullscreen-map-btn {
	display: inline-block;
	padding: 10px 14px;
	background: #000000;
	color: #ffffff;
	border: 1px solid #0a4576;
	border-radius: 4px;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	box-sizing: border-box;
	margin: 10px 0 0 0;
	width: 94%;

border:1px solid #ff00ff;
}

.fullscreen-map-btn:hover {
	opacity: 0.9;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	background: #ffffff;
	box-sizing: border-box;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > a:first-child {
	display: block;
	max-width: 170px;
	background: #000000;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > a:first-child img {
	display: block;
	max-width: 100%;
	height: auto;
}

.page-template-page-ss-search-full .ssfull-back-btn {
	display: block;
	width: auto;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	line-height: 1;
}

.page-template-page-ss-search-full .ssfull-back-text {
	display: none;
}

.page-template-page-ss-search-full .ssfull-back-img {
	display: block;
	width: 143px;
	height: auto;
}

.page-template-page-ss-search-full .map-control {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 46px 46px;
	gap: 10px;
	padding: 12px;
	background: #ffffff;
	box-sizing: border-box;
}

.page-template-page-ss-search-full .keyword-search-wrap {
	display: contents;
}

.page-template-page-ss-search-full #keywordInput {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	height: 38px;
	box-sizing: border-box;
}

.page-template-page-ss-search-full #keywordSearchBtn {
	grid-column: 2;
	grid-row: 1;
	width: 46px;
	height: 46px;
	padding: 0;
	border: none;
	border-radius: 8px;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/button2.gif") center center / contain no-repeat;
	text-indent: -9999px;
	overflow: hidden;
}

.page-template-page-ss-search-full .current-location-wrap {
	grid-column: 3;
	grid-row: 1;
	margin: 0;
}

.page-template-page-ss-search-full #currentLocationBtn {
	width: 46px;
	height: 46px;
	padding: 0;
	border: none;
	border-radius: 8px;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/button3.gif") center center / contain no-repeat;
	text-indent: -9999px;
	overflow: hidden;
}

.page-template-page-ss-search-full #currentLocationBtn .current-location-btn-text {
	display: none;
}

.page-template-page-ss-search-full #currentLocationBtn .current-location-spinner {
	text-indent: 0;
	margin: auto;
}

.page-template-page-ss-search-full #mapStatusMessage,
.page-template-page-ss-search-full .toggle-group-wrapper {
	grid-column: 1 / 4;
}

.page-template-page-ss-search-full .toggle-group-wrapper {
	margin-top: 0;
}

span.shop_list_history_back {
	position: absolute;
	top: 0;
	right: 0;
}

span.shop_list_history_back img {
	width: 140px;
}













/** revision 20260513*/
/* ===== SP専用：フルスクリーン店舗検索レイアウト最終調整 ===== */

/* 重要なお知らせ */
div.ss-search-full-important {
	background: #bf2121;
	color: #ffffff;
	font-weight: bold;
	font-size: 12px;
	padding: 10px 0;
	width: 100%;
	margin: 0;
	box-sizing: border-box;
}

div.ss-search-full-important a {
	display: block;
	width: 95%;
	color: #ffffff;
	text-decoration: underline;
	margin: 0 auto;
	padding: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* 1段目：ロゴ｜店舗案内へ戻る */
.page-template-page-ss-search-full .fullscreen-map-toolbar {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	background: #ffffff !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > img {
	display: block !important;
	width: auto !important;
	max-width: 170px !important;
	height: auto !important;
	margin: 0 !important;
}

/*
.page-template-page-ss-search-full .fullscreen-map-toolbar > .fullscreen-map-btn {
	display: block !important;
	width: 144px !important;
	height: 32px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/shop_info_back_sp.gif") center center / contain no-repeat !important;
	color: transparent !important;
	text-indent: -9999px !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}
*/
.page-template-page-ss-search-full .fullscreen-map-toolbar > .fullscreen-map-btn {
	display: block !important;
	width: 144px !important;
	aspect-ratio: 144 / 32;
	height: auto !important;
	min-height: 32px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: none !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-indent: 0 !important;
	overflow: visible !important;
	box-sizing: border-box !important;
	position: relative !important;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > .fullscreen-map-btn::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/shop_info_back_sp.gif") center center / 100% 100% no-repeat;
}

/* 絞り込み枠をマップ内絶対配置から通常配置へ戻す */
.page-template-page-ss-search-full #filterControlsMountPoint {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.page-template-page-ss-search-full .map-control {
	position: static !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 46px 46px !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 12px !important;
	background: #ffffff !important;
	box-sizing: border-box !important;
}

/* 2段目：検索欄｜検索ボタン｜現在地ボタン */
.page-template-page-ss-search-full .keyword-search-wrap {
	display: contents !important;
}

.page-template-page-ss-search-full #keywordInput {
	grid-column: 1 !important;
	grid-row: 1 !important;
	width: 100% !important;
	height: 38px !important;
	box-sizing: border-box !important;
}

.page-template-page-ss-search-full #keywordSearchBtn {
	grid-column: 2 !important;
	grid-row: 1 !important;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 8px !important;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/ss-search-icon-search.gif") center center / contain no-repeat !important;
	color: transparent !important;
	text-indent: -9999px !important;
	overflow: hidden !important;
}

.page-template-page-ss-search-full .current-location-wrap {
	grid-column: 3 !important;
	grid-row: 1 !important;
	margin: 0 !important;
}

.page-template-page-ss-search-full #currentLocationBtn {
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 8px !important;
	background: url("/cms/wp-content/themes/taiyo-koyu/images_2021/gmap_shop/ss-search-icon-place.gif") center center / contain no-repeat !important;
	color: transparent !important;
	text-indent: -9999px !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

.page-template-page-ss-search-full #currentLocationBtn .current-location-btn-text {
	display: none !important;
}

.page-template-page-ss-search-full #currentLocationBtn .current-location-spinner {
	text-indent: 0 !important;
	margin: auto !important;
}

/* ステータス・店舗区分・営業形態は横幅いっぱい */
.page-template-page-ss-search-full #mapStatusMessage,
.page-template-page-ss-search-full .toggle-group-wrapper {
	grid-column: 1 / 4 !important;
}

.page-template-page-ss-search-full .toggle-group-wrapper {
	margin-top: 0 !important;
}

/* マップ */
.page-template-page-ss-search-full .fullscreen-map-layout {
	width: 100% !important;
	height: auto !important;
	position: relative !important;
}

.page-template-page-ss-search-full #map.fullscreen-map {
	width: 100% !important;
	height: calc(var(--vh, 1vh) * 100 - 230px) !important;
	min-height: 420px !important;
}


/* =========================
   店舗区分：左6個 + 右3個
   右1個 = 左2個 + 隙間1個
   ========================= */
#colorToggles .color-toggle-layout {
  --row-gap: 8px;
  --col-gap: 12px;

  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  column-gap: var(--col-gap);
  row-gap: var(--row-gap);
  align-items: stretch;
}

#colorToggles .color-toggle-main,
#colorToggles .color-toggle-actions {
  display: contents;
}

#colorToggles .color-toggle-main .toggle-btn:nth-child(1) { grid-column: 1; grid-row: 1; }
#colorToggles .color-toggle-main .toggle-btn:nth-child(2) { grid-column: 1; grid-row: 2; }
#colorToggles .color-toggle-main .toggle-btn:nth-child(3) { grid-column: 1; grid-row: 3; }
#colorToggles .color-toggle-main .toggle-btn:nth-child(4) { grid-column: 1; grid-row: 4; }
#colorToggles .color-toggle-main .toggle-btn:nth-child(5) { grid-column: 1; grid-row: 5; }
#colorToggles .color-toggle-main .toggle-btn:nth-child(6) { grid-column: 1; grid-row: 6; }

#colorToggles .color-toggle-actions .color-action-btn {
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  appearance: none;
  border: 0;
  border-radius: 10px;
  background: #d9d9d9;
  color: #111;
  font-weight: 800;
  font-size: 16px;
  padding: 8px 10px;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#colorToggles .color-toggle-actions .color-action-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

#colorToggles .color-toggle-actions .color-action-btn.active {
  background: #0a4576;
  color: #fff;
  box-shadow: 0 4px 12px rgba(10, 69, 118, 0.25);
}

#colorToggles .color-toggle-actions .color-action-btn[data-preset="directOnly"] {
  grid-column: 2;
  grid-row: 1 / span 2;
}

#colorToggles .color-toggle-actions .color-action-btn[data-preset="highwayOnly"] {
  grid-column: 2;
  grid-row: 3 / span 2;
}

#colorToggles .color-toggle-actions .color-action-btn[data-preset="excludeDesignated"] {
  grid-column: 2;
  grid-row: 5 / span 2;
}

.keyword-search-wrap {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}

.keyword-search-wrap #keywordInput {
  flex: 1 1 auto;
  min-width: 0;
}

.keyword-search-btn {
  flex: 0 0 auto;
  appearance: none;
  border: 0;
  border-radius: 8px;
  background: #0a4576;
  color: #fff;
  font-weight: 700;
  padding: 0 14px;
  cursor: pointer;
}

.keyword-search-btn:hover {
  opacity: 0.9;
}

.map-status-message {
  display: none;
  margin-top: 8px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.5;
}

.map-status-message.is-visible {
  display: block;
}

.map-status-message.is-info {
  background: #edf5ff;
  color: #0a4576;
}

.map-status-message.is-error {
  background: #fff1f0;
  color: #b42318;
}

  #colorToggles .color-toggle-layout {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  }

  #colorToggles .color-toggle-main .toggle-btn {
    padding: 6px 8px;
    font-size: 15px;
  }

  #colorToggles .color-toggle-actions .color-action-btn {
    font-size: 15px;
    padding: 6px 8px;
  }

  .keyword-search-wrap {
    gap: 6px;
  }

  .keyword-search-btn {
    padding: 0 12px;
    font-size: 14px;
  }

/** ss-search-full */
a.ss-search-full-ss-detail {
	display:inline-block;
	padding:6px 12px;
	background:#0a4576;
	color:white;
	text-decoration:none;
	border-radius:4px;
	font-size:13px;
	width:40%;
	text-align:center;
}

a.ss-search-full-ss-route {
	display:inline-block;
	padding:6px 12px;
	background:#0a4576;
	color:white;
	text-decoration:none;
	border-radius:4px;
	font-size:13px;
	width:60%;
	text-align:center;
}


.page-template-page-ss-search-full .fullscreen-map-btn-text {
	display: none !important;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > .fullscreen-map-btn {
	display: block !important;
	width: 144px !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: none !important;
	line-height: 0 !important;
	font-size: 0 !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	text-indent: 0 !important;
	color: transparent !important;
}

.page-template-page-ss-search-full .fullscreen-map-toolbar > .fullscreen-map-btn::before {
	content: none !important;
	display: none !important;
}

.page-template-page-ss-search-full .fullscreen-map-btn-img {
	display: block !important;
	width: 144px !important;
	height: auto !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/** adjust */
div.mailform_wrapper h2 {
	width: 96%;
	margin: 10px auto;
	color: #ffffff;
	font-family: 'Sawarabi Gothic', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 3px;
}