@charset "utf-8";

/*====================================================================
 reset styles
====================================================================*/

.spOnlyBreak {
	display: none;
}
.pcDisplay {
}
.spDisplay {
	display:none;
}
@media screen and (max-width: 768px){
.pcDisplay {
	display: none;
}
.spDisplay {
	display:block;
}
.spNonBreak {
	display: none;
}
.spOnlyBreak {
	display: block;
}
.spOnlyTextLeft {
	text-align:left !important;
}

.textLarge {
	font-size: 105% !important;
}
.textX-large {
	font-size: 110% !important;
}
.textXX-large {
	font-size: 115% !important;
}
.textXXX-large {
	font-size: 120% !important;
}
.textXXXX-large {
	font-size: 140% !important;
}
table.topicsWriterTable th {
	width: 6.5em;
}
.textLeftOnlySp {
	text-align: left !important;
}
.w60_onlyPc {
	width:100% !important;
}
.w70_onlyPc {
	width:100% !important;
}
.w80_onlySP {
	width:60% !important;
}
.mLRauto_onlySP {
	margin-left:auto !important;
	margin-right:auto !important;
}
.ml30_onliPC {
	margin-left:0 !important;
}
#wrapper ,#header, #contents {
	min-width: 0;
}
#header {
	position:fixed;
	z-index:9999;
	width:100%;
	min-height: 60px;
	height: auto;
	width: 100%;
	font-weight:bold;
	background: #fff;
}
#headerBlock {
	min-height:inherit;
	box-sizing:border-box;
}
#header #headerInner {
	width:100%;
	padding:10px 10px 9px;
	box-sizing:border-box;
}
#headerLogo {
	width: 50%;
	float: left;
}
#header .logo {
	float: left;
	padding: 0;
}
#header .logo img {
	width:130px;
	height:auto;
	vertical-align: bottom;
	padding: 0;
}
#header .logo a {
	padding: 0;
}

#header .gnaviBtn {
	display: block;
	position: relative;
	background:#c39b42;
	text-align: center;
	font-weight: bold;
	width: 100px;
	border-radius:6px;
	float: right;
}
#header .gnaviBtn a {
	color:#fff;
	display: block;
	width: 100px;
	height:38px;
}

#header .gnaviBtn .gnaviBtn-icon .icon {
	position:absolute;
	top:50%;
	left:13px;
	margin-top:-8px;
	font-size: 16px;
	color:#fff;
	-webkit-transition:-webkit-transform 0.3s;
	transition:transform 0.3s;
	overflow: hidden;
}
#header .gnaviBtn .gnaviBtn-icon.close {
	opacity:0;
}
#header .gnaviBtn .gnaviBtn-icon.close .icon {
	-webkit-transform:rotate(-45deg) scale(1.3);
	-ms-transform:rotate(-45deg) scale(1.3);
	transform:rotate(-45deg) scale(1.3);
}
#header .gnaviBtn .gnaviBtn-icon.menu {
	opacity:1;
}
#header .gnaviBtn .open .gnaviBtn-icon.close {
	opacity:1;
}
#header .gnaviBtn .open .gnaviBtn-icon.close .icon {
	-webkit-transform:rotate(0deg) scale(1);
	-ms-transform:rotate(0deg) scale(1);
	transform:rotate(0deg) scale(1);
}
#header .gnaviBtn .open .gnaviBtn-icon.menu {
	opacity:0;
}
#header .gnaviBtn .open .gnaviBtn-icon.menu .icon {
	-webkit-transform:rotate(45deg) scale(0.5);
	-ms-transform:rotate(45deg) scale(0.5);
	transform:rotate(45deg) scale(0.5);
}
#header .gnaviBtn .text {
	position:absolute;
	z-index:100;
	right:12px;
	top:8px;
	font-size:95%;
}

#gnaviWrapperSP {
	display: none;
	box-shadow: 0px 1px 2px rgba(0,0,0,0.4);
}
#gnaviWrapperSP .gnaviList {
	background: #e5ecf3;
}
#gnaviWrapperSP .gnaviList > li {
	display: block;
	position: relative;
	border-bottom: solid 2px #7295bc;
}
#gnaviWrapperSP .gnaviList > li > a {
	display:block;
	padding: 18px 20px;
	color:#000 !important;
	text-decoration:none;
}

#gnaviWrapperSP .gnaviList span.en {
	color:#668bb6;
	font-weight:bold;
	font-size:80%;
	padding-left:10px;
}
#gnaviWrapperSP .gnaviList span.icon{
	float:right;
	color:#668bb6;
}
.osechiForm_mainBlock {
	width:100%;
	height:auto;
}
.pcOption {
	display: none;
}
.pagetop {
	position:static;
	width: 100%;
	height: auto;
	background:#003e86;
	-webkit-border-radius: 0%;
	-moz-border-radius: 0%;
	border-radius: 0%;
	z-index: 110;
	padding:10px 0;
}
.pagetop a {
	color:#FFF;
	display:block;	
	font-size:20px;
	vertical-align:bottom;
	padding-top:5px;
}
.pagetop a .icon {
	font-size:14px;
	line-height:30px;
	padding-top:0px;
	padding-right:10px;
}
#footer {
  min-width: 0;
  padding: 15px 0 15px;
  height:auto;
}
#footerNavi {
	background:url(https://www.sato-suisan.co.jp/sp/images/common/bg_footernavi.jpg);
	padding: 0;
}

#footerNavi .innerBlock {
	margin: 0 auto;
	padding:20px 4%;
	width: auto;
}

#footerNavi ul {
	width: 48%;
}
#footerNavi li {
	font-size: 75%;
	margin-bottom: 0;
	background:#e5ecf3;
	border:1px solid #fff;
	margin-bottom:15px;
	border-radius:6px;
	box-sizing:border-box;
}
#footerNavi li a, #footerNavi .linkBox a {
	display: block;
	color:#000;
	padding: 10px 10px;
}
#footerNavi li a {
	background: url(https://www.sato-suisan.co.jp/sp//images/common/ic_link_s.png) no-repeat 96% center;
	background-size: 12px auto;
}
#footerNavi .linkBox {
	width: 100%;
	font-size: 80%;
	margin-bottom: 0;
	background:#e5ecf3;
	border:1px solid #fff;
	margin-bottom:10px;
	border-radius:8px;
	box-sizing:border-box;
	text-align:center;
}

#footerContact {
	padding: 30px 0 40px;
}
#footerContact .footerInner {
	width:100%;
	padding:0 3%;
	box-sizing:border-box;
	text-align:center;
}
#footerContact .footerInner .logoBlock {
 	display: block;
	width:100%;
	border-right:none;
	text-align:center;
}
#footerContact .footerInner .logoBlock img {
	margin:0 auto 10px;
}
#footerContact .footerInner .infoBlock {
 	display: block;
	padding-left: 0px;
	width:auto;
	font-size:14px;
	line-height:22px;
}
#footerContact .footerInner .infoBlock .icon {
	font-size:20px;	
}
#footerContact .footerInner .infoBlock strong {
	font-size:30px;	
	line-height:42px;
	padding-left:5px;
	text-decoration:none;
}
#footerContact .footerInner .btnBlock {
	float:none;
	margin:30px auto 10px;
}
#footer .copyright {
	font-size: 75%;
}

#sidebar #sideNavi {
	width: 100%;
	padding-bottom: 30px;
	position:inherit;
}
#sidebar #sideNavi #sideNaviLabel a {
	line-height: 1.4;
	letter-spacing: 0.3em;
	height: auto;
	padding: 18px;
	text-decoration: none;
	color: #fff;
}
	
.btn.l {
	font-size:100%;
	width:80%;
	padding:15px 50px 15px 15px;
}

#h1Block, #h1Block_form, #h1Block_column {
	padding-left:0px !important; 
	padding:25px 0 25px 10px;
	margin: 75px auto 0;
}
#h1Block h1, #h1Block_form h1, #h1Block_column h1 {
	width:100%;
}
#wrapper.hasLnavi #h1Block_column h1 span {
	padding-left:0;
}
#wrapper.hasLnavi #h1Block h1 span {
	padding-left:20px;
}
	
#contents {
	width:100%;
	min-width: 0;
	padding: 0;
}
#contents .contentsInner {
	width: 94%;
	padding: 0 3%;
	box-sizing:border-box;
}
#companySection .contentsInner {
	width: 100%;
	padding: 0;
}
#companySection .contentsInner .bnrBlock {
	-moz-box-shadow: 0 0 3px #777;
	-webkit-box-shadow: 0 0 3px #777;	
	line-height:0;
	width:80%;
	margin-left:auto;
	margin-right:auto;
}
.myNaviBlock {
	padding:10px 5% 10px;
	width:auto;
}
.myNaviLink {
	-moz-box-shadow: 0 0 3px #777;
	-webkit-box-shadow: 0 0 3px #777;
	border-radius:6px;
	line-height:1.75em;
	background:#02aae9;
	text-align:center;
}

.myNaviLink a {
	display:block;
	padding:10px 20px 10px 20px;
	font-size:110% !important;
	font-weight:normal !important;
	color:#FFF !important;
	text-decoration:none;
}
.myNaviLink img {
	margin:6px 0 0;
}
.myNaviLink p {
	font-weight:bold;
}
.myNaviLink div {
	width:10%;
	margin:2px auto 10px;
	border-bottom:1px solid #fff;
}
.myNaviLink span {
	font-size:80%;
}

#contents h1.text {
	font-size: 200%;
	font-weight: normal;
	margin-bottom: 30px;
}
#contents h2.text {
	font-size: 200%;
	font-weight: normal;
	margin-bottom: 30px;
}
.titleBlock {
	height:220px;
}
.leadTxt {
	text-align:left;
}
.snsBlock {
	margin-top:20px;
	padding-bottom:35px;
}
h3.sns {
	margin-bottom:20px;
	font-size:120%;
}
h3.sns .bg_top {
	background: url(https://www.sato-suisan.co.jp/sp/images/common/bg_h2_top.png) no-repeat left top;
	background-size:5px auto;
	padding-top: 3px;
	display: block;
}
h3.sns .bg_btm {
	background: url(https://www.sato-suisan.co.jp/sp/images/common/bg_h2_btm.png) no-repeat left bottom;
	background-size:5px auto;
	padding: 0 0 0 15px;
	display: block;
}
h3.sns span.en {
	color:#668bb6;
	font-weight:bold;
	font-size:55%;
	padding-left:10px;
}
dl.dataset {
}
dl.dataset dt {
	float:none;
	margin-bottom:5px;
}
dl.dataset dd {
	margin-left:0px;
}
dl.dataset dd.hall {
	margin-left:0px;
}
.fbBtn {
	background:url(https://www.sato-suisan.co.jp/sp/images/top/facebook.png) no-repeat 30% center #3b5998;
	background-size:25px auto;
	border-radius:6px;
	padding:10px;
	width:70%;
	margin-left:auto;
	margin-right:auto;
}
.twitterBtn {
	background:url(https://www.sato-suisan.co.jp/sp/images/top/twitter.png) no-repeat 30% center #2ca7e1;
	background-size:25px auto;
	border-radius:6px;
	padding:10px;
	width:70%;
	margin-left:auto;
	margin-right:auto;
}
.instagramBtn {
	background:url(https://www.sato-suisan.co.jp/sp/images/top/instagram.png) no-repeat 30% center #de3a80;
	background-size:25px auto;
	border-radius:6px;
	padding:10px;
	width:70%;
	margin-left:auto;
	margin-right:auto;
}
.fbBtn a, .twitterBtn a, .instagramBtn a {
	color:#fff !important;
	font-family:serif;
	text-decoration:none;
	font-weight:bold;
	font-size:1.1em;
	padding-left:40%;
	display:block;	
}
.col1Block ,
.col2Block ,
.col3Block ,
.col4Block ,
.col4Block_wide {
	width:100%;
}
.col2Block .leftCol {
	width: 100%;
	float: none;
}
.col2Block .rightCol {
	width: 100%;
	float: none;
}
.col2Block .leftCol.sakefes {
	width: 100%;
	float: none;
}
.col2Block .rightCol.sakefes {
	width: 100%;
	float: none;
}

.col2Block .leftCol_greeting {
	width: 100%;
	float: none;
}
.col2Block .rightCol_greeting {
	width: 100%;
	float: none;
}
.col2Block .leftCol_maru,
.col2Block .leftCol_maru02	{
	width: 100%;
	float: none;
}
.col2Block .rightCol_maru,
.col2Block .rightCol_maru02	{
	width: 100%;
	float: none;
}
.col3Block .leftCol {
	width: 100%;
	float: none;
}
.col3Block .rightCol {
	width: 100%;
	float: none;
}
.col3Block .leftCol p {
	margin-bottom:15px;
}
.col4Block .leftCol {
	width: 25%;
	float: none;
	padding-right: 0;
}
.col4Block .rightCol {
	width: 25%;
	float: none;
}
.col4Block_wide .leftCol {
	float: none;
	width: 100%;
	margin-bottom:10px;
}
.col4Block_wide .rightCol {
	float: none;
	width: 100%;
	text-align:center;
	margin-left: 0;
	margin-bottom:10px;
}
h3.plane {
	margin-bottom:15px !important;
}
.shopCol4block {
	float:left;
	width:40%;
	margin-left:5%;
	margin-right:5%;
}
.shopCol4block.last {
	margin-right:5%;
}

ul.sitemap {
	list-style:square;
	padding-left: 20px;
	margin-bottom:10px;
}
ul.sitemap li {
	position: relative;
	padding-left:0;
	line-height:1.7em;
	padding-bottom:10px;
}
ul.sitemap li::before {
 	display: none;
}
.spImgFit {
	max-width: 100%;
	width: auto;
	height: auto;
}
.spImgFit80 {
	max-width: 80%;
	width: auto;
	height: auto;
}
.contBlock .col4Block .leftCol {
	float: left;
	width: 48%;
	background: url(../../images/top/content_btn_bg.png) bottom right no-repeat;
	background-color:#fff;
	margin-right: 0;
	margin-bottom:20px !important;
}
.contBlock .col4Block .leftCol:nth-child(even) {
	float: right;
	width: 48%;
	background: url(../../images/top/content_btn_bg.png) bottom right no-repeat;
	background-color:#fff;
	margin-right: 0;
	margin-bottom:20px !important;
}
.contBlock .col4Block .rightCol {
	float: right;
	width: 48%;
	background: url(../../images/top/content_btn_bg.png) bottom right no-repeat;
	background-color:#fff;
	margin-bottom:20px !important;
}
.contBlock .col4Block .leftCol a, .contBlock .col4Block .rightCol a {
	width:100%;
}
.contBlock .col4Block .leftCol span.en, .contBlock .col4Block .rightCol span.en {
	top:10px;
	font-size:14px;
}
.contBlock .col4Block .leftCol span.jp, .contBlock .col4Block .rightCol span.jp {
	top:45px;
	font-size:15px;
}
table.fair_table th, table.fair_table td{
    width: 100% !important;
	display:block;
	font-size:0.9em;
}
table.newyear_table {
    width: 100% !important;
	display:block;
	font-size:0.9em;
}
.scroll{
	overflow: auto;
	white-space: nowrap;
	height:400px;
}
.scroll::-webkit-scrollbar{
	height: 5px;
}
.scroll::-webkit-scrollbar-track{
	background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
	background: #BCBCBC;
}
table.form_table th, table.form_table td{
    width: 100%;
	display:block;
	font-size:0.9em;
}
table.form_table_kanshio th, table.form_table_SPscroll th, table.form_table_kanshio td{
	font-size:0.9em;
}
.table_SPscroll {
	margin-bottom: 20px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 10px;
}
.table_SPscroll::-webkit-scrollbar{
	height: 4px;
}
.table_SPscroll::-webkit-scrollbar-track{
	background: #F1F1F1;
	border-radius: 2px;
}
.table_SPscroll::-webkit-scrollbar-thumb {
	background: #BCBCBC;
	border-radius: 2px;
}
table.form_table_SPscroll{
	width: 640px;
	margin: 0 auto 2px;
}
thead th.suisan,
thead th.itaku {
	font-size:1.2em;
}
.textIconMap {
    padding: 4px 20px 4px;
    font-size: 1em;
    margin-left: 0px;
	line-height:2.5em;
	border-radius:7px;
}
input.blue, textarea {
	width:95%;
}
.title_mainBlock {
	width:100%;
}
.kanshiobiki_mainBlock {
	width:100%;
	overflow:hidden;
}
.kanshiobiki_package {
	right:-15px;
}
.kanshiobiki_package img {
	width:90%;
}
.kanshiobiki_product {
	position:absolute; 
	top:60px; 
	left:0px;
}
.kanshiobiki_detailBox .floatL {
	float:none;
	width:100%;
}
.kanshiobiki_detailBox .floatL img{
	width:100%;
}
.kanshiobiki_detailBox .floatR {
	float:none;
	width:100%;
	padding-top:20px;
}
.marudaitei_mainBlock, .oldriver_mainBlock {
	position:inherit;
	height:auto;
}
.marudaitei_txt, .marudaitei02_txt, .oldriver_txt {
	position:inherit;
	top:inherit;
	right:inherit;
	font-size:1.3em !important;
	color:#000;
	text-shadow:none;
	text-align:center;
	margin-top:10px;
}
.nonSmoking_txt, .nonSmoking02_txt {
	position:inherit;
	top:inherit;
	right:inherit;
	left: inherit;
	margin: 10px auto 0 !important;
	width: 80%;
	font-size:1em !important;
	text-align: center;
}
.oldorder_txt {
	display:none;
}
.oldorder_txt02 {
	position:relative;
	top:10px;
	color:#2280a2 !important;
	text-align:center;
}
#pankuzu li {
    padding-right: 16px;
    margin-right: 4px;
}
.companyCol3block {
	margin-bottom:40px;
	margin-right:4%;
	width:48%;
}
.companyCol3block.last {
	margin-right:4%;
}
.companyCol3block:nth-child(even) {
	margin-right:0;
}
.companyCol3block .inner .btn {
	width:70% !important;
}
.shopCol3block {
	margin-bottom:40px;
	margin-right:4%;
	width:48%;
}
.shopCol3block.last {
	margin-right:4%;
}
.shopCol3block:nth-child(even) {
	margin-right:0;
}
.shopCol3block .inner .btn {
	width:70% !important;
}

.shopInfoBlock {
	width:90%;
}
dl.dataset_shopInfo dt {
	float:none;
	font-weight:bold;
	margin-bottom:5px;
}
dl.dataset_shopInfo dd {
	margin-left:0px;
	margin-bottom:10px;
}
dl.dataset_menuInfo dt {
	float:none;
	margin-bottom:5px;
}
dl.dataset_menuInfo dd {
	margin-left:0px;
}
.gMap {
	 width:100%;
	 height:450px;
}
.telBlock {
    width: 70%;
}
.maruRecommendBlock .leftBlock {
	width:auto;
	margin-right:0;
	margin-bottom:10px;
	text-align:center;
	float:none;
}
.maruRecommendBlock .rightBlock {
	width:auto;
	float:none;
}
.oldMenuBlock {
	margin-left:auto !important;
	margin-right:auto !important;
	width:640px;
	overflow:hidden;
}
.orMenuBlock {
	margin-left:auto !important;
	margin-right:auto !important;
	width:533px;
	overflow:hidden;
}
.orMenuBlock .leftCol {
	float:none;
	width:254px;
	margin-right:0px;
}
.orMenuBlock .rightCol {
	float:none;
	width:254px;
}
.orMenuBlock div:nth-child(odd) {
	float:left;
	margin-right:0px;
}
.orMenuBlock div:nth-child(even) {
	float:right;
	margin-right:0px;
}
.bentoMenuBlock .leftBlock:nth-child(even) {
    float: right;
	margin-right:0px;
}
.errorBlock {
	width:90%;
	margin:40px auto;
	padding:20px 20px;
}
.anchorBlock.maruMenu {
	line-height:2em;
}
.anchorBlock.maruMenu a {
	margin-right:0px;
}
}
@media screen and (max-width: 690px){
.oldMenuBlock {
	width:425px;
}
.titleBlock {
	height:200px;
}
}
@media screen and (max-width: 630px){
.bentoMenuBlock .leftBlock{
    float: none;
	margin-left:auto;
	margin-right:auto;
}
.bentoMenuBlock .leftBlock:nth-child(even){
    float: none;
	margin-left:auto;
	margin-right:auto;
}
.bentoMenuBlock .rightBlock{
    float: none;
	margin-left:auto;
	margin-right:auto;
}
.titleBlock {
	height:180px;
}
.shopCol4block {
	float:left;
	width:44%;
	margin-left:3%;
	margin-right:3%;
}
.shopCol4block.last {
	margin-right:3%;
}
}
@media screen and (max-width: 600px){
.contBlock .col4Block .leftCol {
	float: none;
	width: 100%;
}
.contBlock .col4Block .leftCol:nth-child(even) {
	float: none;
	width: 100%;
}
.contBlock .col4Block .rightCol {
	float: none;
	width: 100%;
}

.contBlock .col4Block .leftCol span.en, .contBlock .col4Block .rightCol span.en {
	top:15px;
	font-size:15px;
	font-weight:normal;
}
.contBlock .col4Block .leftCol span.jp, .contBlock .col4Block .rightCol span.jp {
	top:55px;
	font-size:18px;
	padding-left:15px;
}
.kukou_map_w {
	width:100% !important;
}
.companyCol3block {
	float:none;
	margin-right:0;
	width:100%;
}
.companyCol3block.last {
	margin-right:0;
}
.companyCol3block .inner .btn {
	width:auto !important;
}
.shopCol3block, shopCol3block.last, .shopCol3block:nth-child(even) {
	float:none !important;
	margin-right:auto !important;
	margin-left:auto !important;
	width:350px;
}
.shopCol3block .inner .btn {
	width:auto !important;
}
.orMenuBlock {
	margin-left:auto !important;
	margin-right:auto !important;
	width:254px;
	overflow:hidden;
}
.orMenuBlock div:nth-child(odd) {
	float:none;
	margin-right:0px;
}
.orMenuBlock div:nth-child(even) {
	float:none;
}
.titleBlock {
	height:180px;
}
}
@media screen and (max-width: 480px){
.w80_onlySP {
	width:80% !important;
}
#globalNavi .gnaviList {
	font-size: 40px;
}
#globalNavi .gnaviList li.spOption a img ,
#globalNavi .gnaviList li.spOption .shareBtns a img {
	width: 40px;
	height: 40px;
}
#globalNavi .gnaviList li.spOption .shareBtnsSize {
	width: 150px;
	margin-left: -150px;
}
input[type="submit"] {
	width:80%;
	margin-right:0;
	margin-bottom:15px;
}
input[type="reset"] {
	width:80%;
	margin-left:0;
}
.kanshiobiki_mainBlock {
	height:420px;
}
.kanshiobiki_package {
	top:130px;
	right:-25px;
}
.kanshiobiki_package img {
	width:85%;
}
.kanshiobiki_product {
	top:200px; 
	width:100%;
}
.kanshiobiki_product img {
	width:100%;
}
.oldMenuBlock .block {
	margin:0 15px 15px 0 !important;
}
.columnText img.left, .columnText img.right {
	width:50%;
}
.titleBlock {
	height:150px;
}
}
@media screen and (max-width: 460px){
.oldMenuBlock {
	width:190px !important;
}
.oldMenuBlock .block {
	margin:0 0 15px 0 !important;
}
.anchorBlock a {
	margin-right:35px;
}
.titleBlock {
	height:130px;
}
}

@media screen and (max-width: 320px){
#globalNavi .gnaviList {
	font-size: 35px;
}
#globalNavi .gnaviList li.spOption a img ,
#globalNavi .gnaviList li.spOption .shareBtns a img {
	width: 35px;
	height: 35px;
}
#globalNavi .gnaviList li.spOption .shareBtnsSize {
	width: 140px;
	margin-left: -140px;
}
.titleBlock {
	height:100px;
}
}