@charset "utf-8";
/* ================================================================
font size default 13px
		10px  	77%			19px 	147%
		11px 	85%			20px 	154%
		12px 	93%			21px 	162%
		13px 	100%		22px 	170%
		14px 	108%		23px 	177%
		15px 	116%		24px 	185%
		16px 	124%		25px 	193%
		17px 	131%		26px 	200%
		18px 	139%
================================================================ */

/* ================================================================

		default

================================================================ */

a:link { color: #006699; }
a:visited { color: #006699; }
a:hover {
	color: #006699;
	text-decoration: none;
}
a:active { color: #006699; }
.pageTop {
	clear: both;
	text-align: right;
}

.mab5 {
	margin-bottom:5px!important;
}
.mab10 {
	margin-bottom:10px!important;
}
.mab15 {
	margin-bottom:15px!important;
}
.mab20 {
	margin-bottom:20px!important;
}
.mab30 {
	margin-bottom:30px!important;
}
.mab40 {
	margin-bottom:40px!important;
}
.mab50 {
	margin-bottom:50px!important;
}

.mab60 {
	margin-bottom:60px!important;
}

.mab70 {
	margin-bottom:70px!important;
}

.mab80 {
	margin-bottom:80px!important;
}

.mab100 {
	margin-bottom:100px!important;
}

.mal01 {
    margin-left:1rem;
}
.mar20 {
    margin-right:20px!important;
}

.mar30 {
    margin-right:30px!important;
}

.mar50 {
    margin-right:50px!important;
}

.par20 {
    padding-right: 20px;
}

.mar100 {
    margin-right:100px!important;
}

.preparation {
	text-align: center;
	padding: 50px 0 80px;
}
.inner_section {
	padding: 0 20px;
}

.lead {
	font-size: 20px;
}

.bl {
    display: block;
}

.fs_lg {
	font-size: 18px!important;
}
.fs_md {
	font-size: 15px!important;
}

.fs_13 {
    font-size: 13px!important;
}
.fs_14 {
    font-size: 14px!important;
}
.fs_15 {
    font-size: 15px!important;
}

.fs_16 {
    font-size: 16px!important;
}

.fs_17 {
    font-size: 17px!important;
}

.fs_21 {
    font-size: 21px!important;
}

.fs_24 {
    font-size: 24px!important;
}

.fs_32 {
    font-size: 32px!important;
}

.fs_36 {
    font-size: 36px!important;
}

.lh_17 {
    line-height: 1.7;
}

.w-100 {width: 100% !important;}
.h-100 {height: 100% !important;}

.color_green {
	color: #009946;
}

.color_green02 {
	color: #0A4020;
}

.color_orange {
    color: #EA633F;
}

.fw_bold {
	font-weight: bold;
}

.fw_normal {
    font-weight: normal!important;
}

.ALcenter { text-align:center !important;}
.ALright { text-align:right !important;}
.ALleft { text-align:left !important;}
@media screen and (max-width: 640px) {
   .ALleft_sp { text-align:left !important;} 
}

.sp_view { display: none; }

.indent_kome {
	text-indent: -1em;
	margin-left: 1em;
}

.indent_num {
	text-indent: -1.5em;
	margin-left: 1.5em;
}

.indent_q {
    padding-left:5rem;
    text-indent: -2rem;
}

@media screen and (max-width: 640px) {

    .indent_q {
        padding-left: 2.8rem;
        text-indent: -2rem;
    } 

}


.line_q {
    border-bottom: 1px solid #dbdbdb;
    padding-bottom: 30px;
}


.disc li {
	margin-left: 1em;
	text-indent: -1em;
	margin-bottom: .5em;
}
.disc li:before {
	display: inline-block;
	content: '';
	width: 3px;
	height: 3px;
	background-color: #aaa;
	border-radius: 50%;
	vertical-align: middle;
	margin: 0 .4em;
}

.fl {
	float: left;
}
.fr {
	float: right;
}
.fl_image {
	float: left;
	margin: 0 20px 10px 0;
}
.fr_image {
	float: right;
	margin: 0 0 10px 20px;
}


@media screen and (max-width: 640px) {
.sp_view { display: inherit; }
.sp_off { display: none!important; }
img { max-width: 100%; height:inherit;}
/* button */
.sp_btn_bloc {
	width:94%;
	margin:0 auto;
}
.sp_btn_bloc a{
	display:block;
	padding:14px 10px;
	border-radius:5px;
	text-decoration:none;
	text-align:center;
	background:#aced92;
	color:#007930;
	
}
.fl_image,
.fr_image {
	float: none;
	margin: 0 0 10px;
}
}

.flex {
    display: flex;
}

.flwp {
    flex-wrap: wrap;
}

.inbl {
    display: inline-block;
}

.juscon_cn {
    justify-content: center;
}
.juscon_sa {
    justify-content: space-around;
}
.juscon_sb {
    justify-content: space-between;
}
.juscon_st {
    justify-content: flex-start;
}
.juscon_en {
    justify-content: flex-end;
}

.alim_st {
    align-items: flex-start;
}

.alim_en {
    align-items: flex-end;
}

.alim_cn {
    align-items: center;
}

.alim_bl {
    align-items: baseline;
}

.alim_sr {
    align-items: stretch;
}

.pos_rl {
    position: relative;
}

/*======================================================
		#top
======================================================*/

#top #title h1 {
	position: absolute;
	visibility: hidden;
}
#top #title .flash {
	height: 400px;
	width: 800px;
	padding: 15px 10px;
	margin: 0 auto;
	background: url(../images/bg_flash.jpg) 0 0 no-repeat;
}
#top #title .flashBg {
	width: 800px;
	height: 400px;
	background: url(../images/img_flashbg.jpg) 0 0 no-repeat;
}
#top #title .flashBg span { visibility: hidden; }
#top #main {
	float: left;
	width: 580px;
}
#top #main .leftCol {
	float: left;
	width: 240px;
}
#top #main .rightCol {
	float: right;
	width: 320px;
}
#top #main h2 {
	position: relative;
	margin-bottom: 10px;
}
#top #main h2 span {
	position: absolute;
	right: 0;
	top: 0;
}
#top #main dl { }
#top #main dt {
	font-weight: bold;
	font-size: 85%;
}
#top #main dd {
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 93%;
	border-bottom: 1px dotted #999;
}
#top #main dt{ border-bottom: 1px dotted #999; }
.br_xs { display: none; }

@media screen and (max-width: 640px) {
	#top #main { font-size: 16px; }
	#top #main,  #top #main .leftCol,  #top #main .rightCol {
		float: none;
		width: 100%;
	}
	#top #main .rightCol { display: none; }
	#top #main h2 {
		margin:0;
        margin-bottom: 20px;
		padding:10px;
		font-size:18px;
		background:#009946;
		color:#FFF;
	}
	#top #main dl {
		margin-bottom:20px;
	}
	#top #main dt {
		padding:10px 10px 5px;
		font-size: 85%;
	}
	#top #main dd {
		margin-bottom:0;
		padding:0 10px 10px;
		font-size: 14px;
		border-bottom: 1px dotted #999;
	}
	#top .shopinfo {
		margin-top:30px;
		margin-bottom:30px;
	}
	#top .shopinfo li a {
		display: block;
		text-decoration: none;
		padding: 16px 10px;
		border-bottom: 1px solid #B0DDA5;
		color: #085c2e;
		background:#ebfde8 url(../sp_images/icon_sp_arrow_green.png) 97% 50% no-repeat;
		background-size:8px;
	}
}
#top #sub {
	float: right;
	width: 200px;
}
#top #sub li { margin-bottom: 10px; }
@media screen and (max-width: 640px) {
	#top #sub {
		float: none;
		width: 94%;
		margin: 0 auto 30px;
		text-align: center;
	}
}

/*SP時のTOPヘッダー*/
@media screen and (max-width: 640px) {
    #top #logo {
        display: flex;
        justify-content: space-between;
        width: 90%;
    }
    .sp_header_logo {
        display: flex;
        width: 130px;
        align-items: center;
    }

    .links_btn {
        display: flex;
        /*width: 130px;*/
        align-items: center;
    }

    .links_btn a {
        text-align: center;
        font-size: 0.75rem;
        color: #007930;
        line-height: 1.5;
        border-radius: 5px;
        padding: 3px;
        margin: 3px;
        margin-top: 11px;
    }

}
@media screen and (max-width: 460px) {
    #top #logo {
        width: 85%;
    }
}
@media screen and (max-width: 410px) {
    .br_xs {
       display: block !important;
    }
}


/* #top #sub*/
.sub_other {
    display: inline-block;
    margin: 0;
    margin-bottom: 2px;
    padding: 8px 5px;
    background: #009A45;
    color: #FFFFFF !important;
    cursor: pointer;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    width: 100%;
    text-decoration: none;
}
.sub_other:hover { background-color: #006D2C; }


/* ================================================================

		#footer

================================================================ */
@media screen and (max-width: 640px) {
#footerWrap .box_type03 {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 20px;
  border-bottom: solid 1px #fff;
  }
}
#footerWrap .footer_table { color: #fff; line-break: anywhere; }
#footerWrap .footer_table td { 
  text-align: left;
  vertical-align: top; 
}
#footerWrap .footer_table td.left { width: 10em; }


/* ================================================================

		.inner

================================================================ */

.inner #pankuzu {
	font-size: 85%;
	padding: 10px;
	margin-bottom: 10px;
}
.inner h1 {
	font-size: 200%;
	font-weight: normal;
	color: #FFF;
	padding: 15px 0;
	width: 760px;
	margin: 0 auto;
	text-align: right;
	letter-spacing: 5px;
}

.inner h2 {
	border-top: 2px solid #009946;
	border-bottom: 1px dotted #999;
	padding: 15px 20px;
	font-size: 156%;
	font-weight: normal;
	color: #009946;
	margin-bottom: 20px;
	clear: both;
}
.inner h3 {
	padding-left: 10px;
	border-left: 4px solid #009946;
	color: #009946;
	font-size: 124%;
}
.inner #main {
	float: right;
	width: 600px;
}
.inner #sub {
	float: left;
	width: 170px;
}
.inner #sub ul { border-top: 2px solid #009946; }
.inner #sub ul li a {
	display: block;
	width: 120px;
	border-bottom: 1px dotted #999;
	padding: 18px 20px 18px 30px;
	background: url(../common/icon_list.gif) 10px 1.8em no-repeat;
	color: #333;
	text-decoration: none;
}
.inner #sub ul li a:hover { background: #E1F6D6 url(../common/icon_list.gif) 10px 1.8em no-repeat; }
@media screen and (max-width: 640px) {
	.inner h1 {
		width:100%;
		text-align:center;
	}
	.inner h2 {
		border-top: 2px solid #009946;
		border-bottom: 1px dotted #999;
		padding: 10px 20px;
		font-size: 124%;
		font-weight: normal;
		margin-bottom: 0;
		clear: both;
	}
	.inner #main,
	.inner #sub {
		float: none;
		width:100%;
		overflow: hidden;
	}
	.inner #content{
		font-size:16px;
	}
	.inner #sub {
		margin-bottom:30px;
	}
	.inner #sub ul li a {
		display: block;
		width:inherit;
	}
	.sp_section {
		padding: 20px;
	}
}
/*======================================================
		#company
======================================================*/

#company #main .section {
	margin: 0 20px;
	padding-bottom: 40px;
	clear: both;
}
#company #main .section .historyTable { }
#company #main .section .historyTable th {
	border-bottom: 1px dotted #999;
	width: 80px;
	padding: 5px 10px;
	vertical-align: top;
	text-align: right;
	background: #F8F7F3;
	font-weight: normal;
}
#company #main .section .historyTable td {
	border-bottom: 1px dotted #999;
	padding: 5px 10px;
	vertical-align: top;
}
#company #main .section .historyTable_02 {border: 2px solid #000; }
#company #main .section .historyTable_02 th {
  border: 1px solid #000; 
  color: #fff;
	padding: 5px 10px;
	vertical-align: top;
	text-align: center;
	background: #009946;
	font-weight: normal;
}
#company #main .section .historyTable_02 th.th_year {
  width: 17%;
}
#company #main .section .historyTable_02 th.th_month {
  width: 10%;
}
#company #main .section .historyTable_02 td {
	border: 1px solid #000;
	padding: 5px 10px;
}
.year{
  width: 6em;
  text-align: center;
  background: #F8F7F3;
}
.month{
  width: 3em;
  background: #F8F7F3;
  text-align: center;}
#company #main .outline p {
	width: 240px;
	float: left;
}
#company #main .outline table {
	width: 300px;
	float: right;
	font-size: 108%;
}
#company #main .outline table th {
	border-bottom: 1px dotted #999;
	padding: 10px 0 5px 0;
}
#company #main .outline table td {
	border-bottom: 1px dotted #999;
	padding: 10px 0 5px 0;
}
#company #main .section .outlineTbl {
	border-top: 1px solid #999;
	margin-top: 10px;
}
#company #main .section .outlineTbl th {
	border-bottom: 1px solid #999;
	padding: 5px 10px;
	width: 100px;
	vertical-align: top;
	font-weight: normal;
	background: #E1F6D6;
}
#company #main .section .outlineTbl td {
	border-bottom: 1px solid #999;
	padding: 5px 10px;
	vertical-align: top;
}
#company #main .section .outlineTbl td.td1 { width: 220px; }
#company #main .section .outlineTbl td.td2 { width: 100px; }
#company #main .section .outlineTbl td.td3 { vertical-align: middle; }
#company .business h3 { margin-bottom: 10px; }
#company .business table { line-height: 1.5; }
#company .business table th, #company .business table td { padding-right: 1em; }
#company .business table th {
	width: 11em;
	vertical-align: top;
	font-weight: normal;
	padding-left: 1em;
}
@media screen and (max-width: 640px) {
	#company #main .section {
		margin-top:20px;
	}
	#company #main .outline p {
		width: 100%;
		float: none;
		margin:20px 0 10px;
		text-align:center;
	}
	#company #main .outline table,
	#company #main .outline table tbody {
		width: 100%;
		float: none;
		font-size: 100%;
	}
	#company #main h3 {
		margin-bottom:20px;
		font-size:116%;
	}
	#company #main .section .outlineTbl {
		display:block;
		border:none;
	}
	#company #main .outlineTbl tr,
	#company #main .outlineTbl th,
	#company #main .outlineTbl td {
		width:inherit;
		display:block;
	}
	#company #main .section .outlineTbl,
	#company #main .section .outlineTbl tbody,
	#company #main .section .outlineTbl th,
	#company #main .section .outlineTbl td,
	#company #main .section .outlineTbl td.td2,
	#company #main .section .outlineTbl td.td1 {
		width:inherit;
		display:block;
		border:none;
	}
	#company #main .section .outlineTbl th {
		margin-top:20px;
	}
	#company #main .section .historyTable {
		margin-top:30px;
	}
	#company .business table, 
	#company .business table tbody,
	#company .business table th,
	#company .business table td {
		width:inherit;
		display:block;
		border:none;
	}
	#company .business table th {
		margin-top:20px;
		margin-bottom:10px;
		padding:6px 10px;
		background: #E1F6D6;
	}
  #company #main .section .historyTable_02 th.th_year {
    width: 16%;
  }
  #company #main .section .historyTable_02 th.th_month {
    width: 17%;
  }
}
/*======================================================
		#shop
======================================================*/
#store #selectArea ul {
	margin-top: 10px;
	padding: 10px 0;
	border-top: 1px dotted #999;
}
#store #selectArea ul li {
	font-size: 85%;
	line-height: 1.3;
	margin-bottom: 5px;
	margin-right: 12px;
	padding-left: 10px;
	background: url(../common/icon_02.gif) left 0.45em no-repeat;
	display: inline;
}
#store #main .selectArea {
	min-height: 300px;
	_min-height: 300px;
}
@media screen and (max-width: 640px) {
	#store #selectArea {
		margin-bottom:30px;
	}
	#store #selectArea ul {
		margin:0;
		padding:0;
	}
	#store #selectArea object {
		display:none;
	}
	#store #selectArea ul li{
		font-size:100%;
		line-height: 1.3;
		margin-bottom: 0;
		margin-right: 0;
		padding-left: 0;
		background:none;
		display: block;
	}
	#store #selectArea ul li a {
		display: block;
		text-decoration: none;
		padding: 16px 10px;
		border-bottom: 1px solid #B0DDA5;
		color: #085c2e;
		background:#ebfde8 url(../sp_images/icon_sp_arrow_green.png) 97% 50% no-repeat;
		background-size:8px;
	}
}
#store #main .section {
	margin: 0 20px;
	padding-bottom: 40px;
	clear: both;
}
#store #main .note {
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 10px;
}
#store #main #shopList { border-top: 1px dotted #999; }
#store #main #shopList th {
	font-weight: normal;
	font-size: 100%;
	font-weight: bold;
	text-align: left;
	width: 220px;
	padding: 10px;
	vertical-align: middle;
	border-bottom: 1px dotted #999;
}
#store #main #shopList td {
	font-size: 93%;
	padding: 10px;
	border-bottom: 1px dotted #999;
}
.tableRollOverEffect1 { background-color: #F8F7F3; }
.tableRollOverEffect2 { background-color: #F8F7F3; }
.tableRowClickEffect1 { background-color: #FFF; }
.tableRowClickEffect2 { background-color: #FFF; }
@media screen and (max-width: 640px) {
	#store #main .section {
		margin: 0;
		padding-bottom: 20px;
		clear: both;
}
	#store #main #shopList,
	#store #main #shopList tbody,
	#store #main #shopList tr,
	#store #main #shopList td,
	#store #main #shopList th {
		width:inherit;
		display:block;
	}
	#store #main #shopList th {
		background:#ebfde8;
		border:none;
		margin-top:20px;
		margin-bottom:10px;
		padding:0;
		border-top:1px solid #cae8c5;
		border-bottom:1px solid #cae8c5;
	}
	#store #main #shopList th a {
		display:block;
		text-decoration:none;
		padding:14px 24px 14px 10px;
		color:#007930;
		background:url(../sp_images/icon_sp_arrow_green.png) 97% 50% no-repeat;
		background-size:8px;
	}
	#store #main #shopList td {
		padding:0 10px 10px;
		border:none;
	}
	#store #main .flyerList ul li { 
		display: block; 
		margin-bottom:10px;
		font-weight:bold;
		font-size:110%;
	}
	#store #main .flyerList ul li a  { 
		display: block;
		margin-bottom:10px; 
		padding:10px;
		border-radius:5px;
		-webkit-border-radius:5px;
		-moz-border-radius:5px;
		background:#FFAC00 url(../sp_images/icon_sp_arrow.png) 97% 50% no-repeat;
		background-size:12px;
		color:#FFF;
		text-decoration:none;
	}
	#store #main .flyerList ul li a img {
		width:100%;
		height:inherit;
	}
	#store #main .section2 {
		width:94%;
		margin:0 auto 40px;
	}
}
#store #main h3 {
	color: #FFF;
	padding: 5px 15px;
	background: #009946;
	border: 1px solid #009946;
}
#store #main #listBox {
	margin-bottom: 20px;
	border: 1px solid #009946;
	padding: 10px 15px;
}

#store #main #listBox ul li,
#contact #main #faq_box li {
	font-size: 85%;
	line-height: 1.3;
	margin-bottom: 5px;
	padding-left: 15px;
	background: url(../common/icon_02.gif) left 0.45em no-repeat;
}
#store #main .detailBox p {
	width: 240px;
	float: left;
}
#store #main .detailBox dl {
	width: 300px;
	float: right;
	font-size: 93%;
}
#store #main .detailBox dl dt {
	font-weight: bold;
	width: 85px;
	margin-right: -85px;
	float: left;
	padding-top: 10px;
	color: #000;
}
#store #main .detailBox dl dd {
	padding: 10px 0 5px 100px;
	border-bottom: 1px dotted #999;
}
#store #main .mapBox {
	background: url(../common/bg_map.jpg) 0 0 no-repeat;
	padding: 35px 39px 60px 31px;
	position: relative;
}
#store #main .mapBox small a {
	display: block;
	position: absolute;
	top: 320px;
	right: 10px;
	width: 112px;
	height: 32px;
	background: url(../common/btn_larger.gif) 0 0 no-repeat;
	opacity: 0.8;
	filter: alpha(opacity=80);
	text-decoration: none;
}
#store #main .mapBox small a:hover {
	opacity: 1;
	filter: alpha(opacity=100);
}
#store #main .mapBox small a span { visibility: hidden; }
#store #main .mapBox iframe {
	height: 300px;
	width: 500px;
}
#store #main #flyerListBox { margin: 20px 0 20px 0; }
#store #main #flyerListBox ul li { display: inline; }
@media screen and (max-width: 640px) {
	#store #main .flyerList > * {
		width: 100% !important;
		float: none !important;
		margin-bottom: 5px;
	}
	#store #main #listBox {
		margin-bottom: 40px;
		border: none;
		padding:0;
	}
	#store #main #listBox ul {
		width: 100%;
		float: none;
	}
	#store #main #listBox ul li {
		font-size: 85%;
		line-height: 1.5;
		margin-bottom: 0;
		padding-left: 0;
		background:none;
	}
	#store #main #listBox ul li a {
		display:block;
		padding:10px;
		border-bottom:1px solid #CCC;
	}
	#store #main .detailBox p {
		width: 100%;
		float: none;
		text-align:center;
		margin:20px 0;
	}
	#store #main .detailBox dl {
		width: 94%;
		margin:0 auto 20px;
		float: none;
		font-size: 93%;
	}
	#store #main .detailBox dl dt {
		font-weight: bold;
		width: 120px;
		margin-right: -85px;
		float: left;
		padding-top: 10px;
		color: #000;
	}
	#store #main .detailBox dl dd {
		padding: 10px 0 5px 130px;
		border-bottom: 1px dotted #999;
	}
	#store #main #flyerListBox { 
		width:94%;
		margin:0 auto 40px;
	}
	#store #main #flyerListBox ul li {
		display:block;
		margin-top:20px;
		text-align:center;
	}
	#store #main .mapBox {
		background:none;
		padding:0;
	}
	#store #main .mapBox #map {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
	}
	#store #main .mapBox #map iframe,
	#store #main .mapBox #map object,
	#store #main .mapBox #map embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}
/*======================================================
		#sales
======================================================*/

.sales_block a:hover img,
.col_block a:hover img {
	opacity: .6;
}
.sales_block {
	text-align: center;
}
.sales_block img {
	max-width: 100%;
}
.col_block {
	text-align: center;
	font-size: 0;
	margin: 0 -10px 30px;
}
.inner_box {
	display: inline-block;
	vertical-align: top;
	font-size: 13px;
	margin: 0 10px;
}
.inner_box img {
	max-width: 100%;
}
.col4_box {
	width: 195px;
}
.col3_box {
	width: 266px;
}
.col2_box {
	width: 410px;
}
.col2_box p {
	text-align: center;
}
.salesTbl th,
.salesTbl td {
	border: 1px solid #ddd;
	padding: 1.1em 1em;
	vertical-align: top;
}

.contact_list li {
	display: inline-block;
	margin-right: 15px;
}
#sales .box_faq {
	padding: 15px;
}
@media screen and (max-width: 640px) {
	.col4_box,
	.col2_box,
	.col2_box {
		width: 100%;
		box-sizing: border-box;
		margin: auto 0;
	}
	.inner_box {
		margin-top: 10px;
	}
	.contact_list li {
		margin: 0 0 20px;
	}
	#sales .box_faq {
		padding: 15px 15px 0;
	}
}
/*======================================================
		#contact
======================================================*/

#contact #main {
	float: none;
	width: 800px;
}
#contact #main .section {
	margin: 0 20px;
	padding-bottom: 40px;
	clear: both;
}
#contact #main .section table {
	border-top: 1px solid #999;
	margin-bottom: 10px;
}
#contact #main .section th {
	background: #E1F6D6;
	text-align: left;
	vertical-align: top;
	padding: 10px;
	border-bottom: 1px solid #999;
	width: 200px;
}
#contact #main .section td {
	text-align: left;
	vertical-align: top;
	padding: 10px;
	border-bottom: 1px solid #999;
}
#contact #main .section p.privacy { font-size: 93%; }
#contact #main .section p.button {
	text-align: center;
	padding: 10px;
}
#contact #main .section p.indent {
	padding-left: 1em;
	text-indent: -1em;
}
#contact #main .required { color: #C00; }

#contact #main #faq_box{
    width: 300px;
    margin: 0 auto;
}
#contact #main #faq_box h4{
     text-indent: 0;
     padding-bottom: 0;
     border-bottom: none; 
}
#contact #main #faq_box h4 a{
    background: url(../images/icon_fq.png) left 4em top 0.75em no-repeat;
    background-color: #009946;
    padding: 10px 60px 10px 80px;
    color: #fff;
    text-decoration: none;
}
#contact #main #faq_box ul{
	padding-left: 1.5em;
}

@media screen and (max-width: 640px) {
	#contact #main {
		width:100%;
	}
	#contact h2 {
		margin-bottom:20px;
	}
	#contact #main .section {
		width:94%;
		margin:0 auto 20px;
	}
	#contact #main .section table,
	#contact #main .section table tbody,
	#contact #main .section table tr,
	#contact #main .section table td,
	#contact #main .section table th{
		display:block;
		width:inherit;
		border:none;
		padding:10px 0;
		
	}
	#contact #main .section table th {
		padding:10px;
	}
	#contact #main input[type="text"],
	#contact #main textarea {
		width:100%;
	}
	#contact #main #faq_box h4 a{
		background: url(../images/icon_fq.png) left 1em top 0.75em no-repeat;
		padding: 10px 20px 10px 40px;
		background-color: #009946;
		color: #fff;
		text-decoration: none;
	}
	#contact #main #faq_box ul{
		padding-left: 0em;
	}
}
/*======================================================
		#news
======================================================*/

#news #main .section {
	margin: 0 20px;
	padding-bottom: 40px;
}
#news #main dl {
	width: 560px;
	margin-bottom: 30px;
	overflow: hidden;
}
#news #main dl dt {
	float: left;
	margin-right: 20px;
	padding: 5px 0 5px 10px;
}
#news #main dl dd {
	padding: 5px 0 5px;
	border-bottom: 1px dotted #999;
	background: url(../common/icon_01.gif) 0 0.8em no-repeat;
}

#news #content .wp-pagenavi {
	text-align: center;
	font-size: 77%;
}
#news #content .wp-pagenavi a {
	background-color: #009946;
	color: #FFFFFF;
	text-decoration: none;
}
#news #content .wp-pagenavi a:hover {
	background-color: #999;
	color: #FFFFFF;
	text-decoration: none;
}
#news #content .wp-pagenavi span {
	background-color: #F0EDE7;
	color: #333333;
}
#news #content .wp-pagenavi span, #news #content .wp-pagenavi a {
	margin: 0 3px;
	padding: 5px 7px;
}
#news #content .wp-pagenavi a.link_page { margin: 0 -2px; }
#news #content .wp-pagenavi a.link_before { margin-right: 3px; }
#news #content .wp-pagenavi a.link_next { margin-left: 3px; }
@media screen and (max-width: 640px) {
	#news #main .section {
		margin:0;
	}
	#news #main dl {
		width:100%;
		margin-bottom: 30px;
		overflow:inherit;
	}
	#news #main dl dt {
		padding:10px 10px 5px;
		font-size: 85%;
		float:none;
	}
	#news #main dl dd {
		margin-bottom:0;
		padding:0 10px 10px;
		font-size: 14px;
		border-bottom: 1px dotted #999;
		float:none;
		background:none;
	}
	#news #content .wp-pagenavi a,
	#news #content .wp-pagenavi span {
		margin:0 8px;
	}
}
/*======================================================
		#newsDetail
======================================================*/

#newsDetail #main .section {
	margin: 0 20px;
	padding-bottom: 40px;
	position: relative;
}
#newsDetail #main .section #asset_body p { margin-bottom: 1em; }
#newsDetail #main .section p.date {
	text-align: right;
	font-size: 85%;
	position: absolute;
	top: -22px;
	right: 0;
}
#newsDetail #content #trackbacks .tbinfo {
	margin: 10px 30px;
	background: #EAEAEA;
	border: 1px solid #CCC;
}
#newsDetail #content #trackbacks .tbinfo p { padding: 5px 10px; }
#newsDetail #content #trackbacks .tbcontent { margin: 10px 0; }
#newsDetail #content #trackbacks .tbcontent dt {
	font-weight: bold;
	padding-bottom: 0.6em;
}
#newsDetail #content #trackbacks .tbcontent dd { padding-left: 1em; }
#newsDetail #content #trackbacks .tbcontent .trackback {
	padding: 10px;
	border-bottom: 1px dotted #999;
}
#newsDetail #content .reply {
	margin: 10px 30px 0;
	background: #FFF;
	border: 1px solid #CCC;
}
#newsDetail #content .comment dl { padding: 10px; }
#newsDetail #content .comment dt {
	font-weight: bold;
	padding-bottom: 0.6em;
}
#newsDetail #content .comment dd { padding-left: 1em; }
#newsDetail #content #comments-open {
	margin-bottom: 30px;
	padding: 10px 30px 30px;
	border-bottom: 1px dotted #999;
	margin-bottom: 20px;
}
#newsDetail #content #comment-form-reply { margin-bottom: 10px; }
#newsDetail #content #comments-open table th {
	width: 20%;
	padding: 15px 10px 0 0;
}
#newsDetail #content #comments-open table td {
	border-left: 1px solid #CCC;
	padding: 15px 20px 0;
}
#newsDetail #content #comments-open .commentbtn {
	margin-top: 10px;
	text-align: center;
}
#newsDetail #content #comments-open .commentbtn li {
	display: inline;
	margin-right: 5px;
}
#newsDetail #content #comments-open table td textarea {
	font-size: 93%;
	font-weight: normal;
}
#newsDetail #content .comments-content { margin-bottom: 30px; }
@media screen and (max-width: 640px) {
	#newsDetail #main .section {
		margin:0;
	}
	#newsDetail #main .section p.date {
		text-align: right;
		padding:5px 10px;
		font-size: 85%;
		position:inherit;
		top: 0;
		right: 0;
		background:#EFEFEF;
		text-align:left;
	}
	#newsDetail #main .section #asset_body {
		padding:20px;
	}
}
/*======================================================
		#handbill
======================================================*/

#handbill #main {
	float: none;
	margin: 0 auto;
	width: 800px;
	margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
	#handbill #main {
		width:100%;
	}
}


/*======================================================
		#inquiry
======================================================*/

.box_faq {
	padding: 30px 50px;
	border: 1px solid #009946;
}
.box_faq p {
	text-align: center;
}
.box_btn a {
	color: #FFF;
	padding: 10px 30px;
	background: #009946;
	text-decoration: none;
}
.box_btn a:hover {
	color: #FFF;
	background: #006D2C;
}

/*======================================================
		#faq
======================================================*/

#faq .section {
	margin: 30px 30px 40px;
}
#faq .faq_box {
	margin-bottom: 40px;
	background: url(../faq/images/icon_q.png) top left no-repeat;
}
#faq .q_box {
	padding-left: 40px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
}
#faq .a_box {
	padding-left: 40px;
	background: url(../faq/images/icon_a.png) top left no-repeat;
	min-height: 38px;

}
#faq .a_box table th {
	width: 120px;
	vertical-align: top;
}
#faq .a_box li {
	padding-left: 15px;
	background: url(../faq/images/icon_ring.png) left 5px no-repeat;
}



/*======================================================
		#sitemap
======================================================*/

#sitemap #main {
	float: none;
	width: 800px;
	margin: 0 auto;
}
#sitemap #main ul.site_map {
	clear: both;
	padding-left: 10px;
}
#sitemap #main ul.site_map li {
	float: left;
	width: 130px;
	margin-right: 25px;
}
#sitemap #main ul.site_map li a {
	border-bottom: 2px solid #009946;
	text-decoration: none;
	padding-bottom: 5px;
	display: block;
}
#sitemap #main ul.site_map li a:hover { border-bottom: 2px solid #E1F6D6; }
#sitemap #main ul.site_map ul.page { padding: 0; }
#sitemap #main ul.site_map ul.page li a {
	border-bottom: 1px dotted #999;
	padding: 5px 10px;
	background: url(../common/icon_01.gif) 0 0.9em no-repeat;
	width: auto;
	color: #333;
}
#sitemap #main ul.site_map ul.page li a:hover {
	background: #F8F7F3 url(../common/icon_01.gif) 0 0.9em no-repeat;
	border-bottom: 1px dotted #999;
}
@media screen and (max-width: 640px) {
	#sitemap #main {
		width:100%;
	}
	#sitemap #main > ul.site_map {
		width:94%;
		margin:0 auto 20px;
		padding:0;
	}
	#sitemap #main ul.site_map li {
		width:100%;
		margin:0;
		float:none;
	}
	#sitemap #main > ul.site_map > li {
		margin-top:20px;
	}
	#sitemap #main > ul.site_map > li a {
		display:block;
	}
	#sitemap #main ul.site_map ul.page li a {
		padding: 10px;
		background: url(../common/icon_01.gif) 0 0.9em no-repeat;
		width: auto;
		color: #333;
	}
}
/*======================================================
		#flyer
======================================================*/
#flyer #main {
	float: none;
	width: 800px;
}
@media screen and (max-width: 640px) {
	#flyer #main {
		width:100%;
	}
	#flyer #main .section {
		width:94%;
		margin:0 auto 30px;
	}
	#flyer #main .section .pager {
		text-align:center;
		margin:20px 0;
	}
	#flyer #main .section .pager div {
		display:inline-block;
		padding:5px 10px;
	}
	#flyer #main .section .pager .page {
		background:#EFEFEF;
	}
	#flyer #main .section .pager a {
		background:#009946;
		padding:5px 10px;
		text-decoration:none;
		color:#FFF;
	}
	
}
/*======================================================
		#privacy
======================================================*/
#privacy .section {
	margin: 0 40px;
	padding-bottom: 40px;
}
#privacy .privacyDL dt {
	font-weight: bold;
	font-size: 108%;
	margin-bottom: 5px;
}
#privacy .privacyDL dd {
	margin-bottom: 20px;
	margin-left: 1.2em;
	text-indent:1em;
}
#privacy .indent li {
	text-indent: -1.7em;
	margin: 0 0 10px 1.7em;
}
#privacy .indent02 li {
	text-indent: -1em;
	margin: 0 0 10px 1em;
}

#privacy .section .companyTbl {
	/*border-top: 1px solid #999;*/
	margin-top: 10px;
}
#privacy .section .companyTbl th {
	/*border-bottom: 1px solid #999;*/
	padding: 5px 10px;
	vertical-align: top;
	font-weight: normal;
	/*background: #E1F6D6;*/
}
#privacy .section .companyTbl td {
	/*border-bottom: 1px solid #999;*/
	padding: 5px 10px;
	vertical-align: top;
}
#privacy .section p {
	text-indent:1em;
}
#privacy table.date {
	margin-left:auto;
}
#privacy table.date td {
	padding-left:0.5em;
	text-align:right;
}
@media screen and (max-width: 640px) {
	#privacy .section {
		margin: 20px;
	}
	#privacy .privacyDL dt {
		text-indent: -1em;
		margin-left: 1em;
	}
	#privacy table.companyTbl, 
	#privacy table.companyTbl tbody,
	#privacy table.companyTbl th,
	#privacy table.companyTbl td {
		/*width:inherit;*/
		display:table-cell;
		border:none;
		width: 100%;
	}
	
	#privacy table.companyTbl tr:nth-child(3) th,
	#privacy table.companyTbl tr:nth-child(4) th,
	#privacy table.companyTbl tr:nth-child(5) th{
		width: 33%;
	}
	
	#privacy table.companyTbl tr:nth-child(3) td,
	#privacy table.companyTbl tr:nth-child(4) td,
	#privacy table.companyTbl tr:nth-child(5) td{
		width: 67%;
	}
	
	#privacy .section .companyTbl th,
	#privacy .section .companyTbl td {
		border-bottom: none;
	}
	
	#privacy table.companyTbl th {
		/*margin-top: 20px;*/
		/*margin-bottom: 10px;*/
		/*padding: 6px 10px;*/
		/*background: #E1F6D6;*/
		background: none;
	}
}
/* ================================================================

		clearfix

================================================================ */

div,
#store #main .detailBox dl,
#store #main .section { /zoom : 1;
}
div:after,
#store #main .detailBox dl:after,
#store #main .section:after {
	content : '';
	display : block;
	clear : both;
}

#sales div:after {
    display: none;
}

/* 2017 07 12 */
h4{
    margin-bottom: 10px;
}


#store #main .productsBox,
#store #main .servicesBox{
	margin-bottom: 20px;
}
#store #main .productsBox ul,
#store #main .servicesBox ul,
#store #main .cCardBox{
	margin-left: 1em;
}

#store #main .productsBox li,
#store #main .servicesBox li{
	display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
	margin-bottom: 10px;
}
#store #main .productsBox li.checked{
    background-color: #ff6600;
}

#store #main .cCardBox li {
	display: inline-block;
	margin-left: 5px;
	vertical-align: middle;
}


#store #main .productsBox ul.labelDesc li,
#store #main .servicesBox ul.labelDesc li{
	font-size: 10px;
	height: 1em;
	padding-bottom: 0.5em
}
#store #main .productsBox ul.labelDesc li img,
#store #main .servicesBox ul.labelDesc li img{
    height: 20px;
    vertical-align: middle;
    padding-right: 5px;
}
#store #main .productsBox ul.labelDesc,
#store #main .servicesBox ul.labelDesc{
	border-top: 1px solid #ccc;
	padding-top: 5px;
}

@media screen and (max-width: 640px) {

#store #main .productsBox ul.labelDesc,
#store #main .servicesBox ul.labelDesc{
	width: 95%;
    margin: 0 auto;
}
#store #main h4{
    margin-left: 0.5em;
}
}

/*=============================================

	.clearfix

=============================================*/
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

/* ================================================================

   robot_wrap

================================================================ */
.robot_wrap {
    max-width: 1060px!important;
    width: 1060px!important;
    margin: auto;
}

@media screen and (max-width: 640px) {
    
    .robot_wrap {
    max-width: 100%!important;
    width: 100%!important;
}
}


/* ================================================================

    sales

================================================================ */
#sales p {
    font-size: 16px;
}

#sales div, ul, li, p, a, span, th,td{
    box-sizing: border-box!important;
}

#sales td a{
    word-break: break-all;
}

#insurance ul {
    width: 50%;
}

#insurance ul li {
    list-style:disc;
    margin-left: 20px;
    padding-right: 18px;
    font-size: 15px;
    line-height: 1.7;
}

#insurance ol li {
    list-style: decimal;
    margin-left: 20px;
    line-height: 1.7;
    font-size: 18px;
    position: relative;
}

#insurance ol li ol li {
    list-style: none;
    font-size: 15px;
    line-height: 1.7;
    counter-increment: cnt;
    margin: 0;
    padding-left: 25px;
    
}

#insurance ol li ol li:before {
    content: "(" counter(cnt) ") ";
    position: absolute;
    left: 0;
    margin-left:-0.3em;

}

.insurance_list {
    display: flex;
    justify-content: space-between;
}


@media screen and (max-width: 640px) {
    #insurance ul {
    width: 100%!important;
}
    
    .insurance_list {
    display: block;
    width: 100%!important;
}

.box_type01 ul li {
    margin-bottom: 10px;
}

}


/* ================================================================

    slider

================================================================ */
.slider_bg {
    width: 100%;
    height: 335px;
    background: #078E3D;
    margin: 56px auto;
    position: absolute;
}

.sales_top_main {
    width: 100%;
    height: 335px;
    background: #ccc;
    margin: auto;
    z-index: 9999!important;
    position: relative;
}

@media screen and (max-width: 640px) {
    .sales_top_main {
        width:100%;
        height: 200px;
        overflow-x: hidden;
        margin-bottom: 0!important;
    }
    
    .sales_top_main img {
        height: 200px;
        max-width: inherit;
    }

}

/* ================================================================

    sales_g_menu_area

================================================================ */
.sales_g_menu_area {
    height: 200px;
}

@media screen and (max-width: 640px) {
    .sales_g_menu_area {
        margin-bottom: 0!important;
    }
    
    .sales_g_menu_area,
    .sales_g_menu_area02{
        width:100%;
        height: inherit!important;
        flex-wrap: wrap;
    }
}

.sales_g_menu_area02 {
    height: 420px;
    padding-top: 30px;
}

/* ================================================================

    sales_g_menu

================================================================ */
.sales_g_menu {
    position: absolute;
    display: flex;
    justify-content: space-between;
    gap: 2px;
}



.sales_g_menu  li{
    box-sizing: border-box!important;
    cursor: pointer;
    width: 264px;
}

.sales_g_menu_img {
    gap: 3px;
    margin-bottom: 2px;
}

    .sales_g_menu_img img {
        width: 263px!important;
    }

@media screen and (max-width: 640px) {
    .sales_g_menu_img {
        width:100%;
        height: inherit;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    .sales_g_menu_img > div {
      display: inline-block;
      width: 48%;
    }
    
    .sales_g_menu_img img {
        width: 100%!important;
    }
    
    .sales_g_menu {
    position: relative;
    width: 100%;
}

}

.sales_g_menu_img a {
    transition: .3s;
    width: 263px;
}

@media screen and (max-width: 640px) {
    .sales_g_menu_img a {
        width:100%;
        text-align: center;
    }
}

.sales_g_menu_img a:hover {
    transition: .3s;
    opacity: .7;
}

.sales_g_menu p a {
    display: inherit;
    position: relative;
    text-align: center;
    background: #0A4020;
    color: #fff;
    font-size: 21px;
    padding: 10px;
    transition: .3s;
    border: 1px solid #0A4020;
}

.sales_g_menu p a {
    text-decoration: none;
    color: #fff!important;
}

.sales_g_menu p a:after {
    content: '';
    display: inline;
    position: absolute;
    background: url("../sales/images/icon_arrow_under_before.svg") no-repeat;
    width: 15px;
    height: 9px;
    top: 50%;
    right:12px;
    transform: translateY(-50%);
}

      .sales_g_menu.inner p:nth-child(3) a:after,
      .sales_g_menu.inner p:last-child a:after,
      .sales_g_menu.inner p:nth-child(3) a:hover:after,
      .sales_g_menu.inner p:last-child a:hover:after{
    display: none;
}

.sales_g_menu p a:hover:after {
    content: '';
    display: block;
    position: absolute;
    background: url("../sales/images/icon_arrow_under_after.svg") no-repeat;
    width: 15px;
    height: 9px;
    top: 50%;
    right:12px;
    transform: translateY(-50%);
}

.sales_g_menu p a:hover {
    background: #fff;
    color: #0A4020;
    transition: .3s;
    border:1px solid #fff;
    border-bottom: 1px solid #dbdbdb;
}

.sales_g_menu p a:hover {
    color: #0A4020!important;
}

.sales_g_menu.sp {
    display: none!important;
}

@media screen and (max-width: 640px) {
    .sales_g_menu.sp {
        display: block!important;
    }
    
    .sales_g_menu p  {
        width: inherit;
    }
    
    .sales_g_menu p a {
        width:100%;
        text-align: center;
        border: none;
        padding: 7px 7px 7px 0;
        font-size: 16px;
    }
    
    .sales_g_menu.sp.inner p a:after {
        display: none!important;
    }
    
    .sales_g_menu.sp.inner p a {
        padding: 7px;
    }
    
}

/* ================================================================

    sales_sub_menu

================================================================ */
.menu_shadow {
    box-shadow: 0px 9px 10px -1px #dbdbdb;
}

.sales_sub_menu li {
    position: relative;
    display: block;
    width: 100%;
    background: #fff;
    text-align: center;
    border-top: 1px solid #dfdfdf;
}

.sales_sub_menu li a{
    display: inherit;
    font-size: 16px;
    color: #0A4020;
    text-align: center;
    padding: 8px 0;
    border: none;
    transition: .1s;
    text-decoration: none;
}

.sales_sub_menu li a:after {
    content:"";
    display: inline-block;
    position: absolute;
    right: 15px;
    background: url("../sales/images/icon_arrow_next_before.svg") no-repeat;
    width: 6px;
    height: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.sales_sub_menu li a:hover:after {
    background: url("../sales/images/icon_arrow_next_after.svg") no-repeat;
}

.sales_sub_menu li:hover{
    color: #fff!important;
    background: #078E3D;
    transition: .1s;
}

.sales_sub_menu li a:hover{
    color: #fff!important;
    background: #078E3D;
    transition: .1s;
}

.sales_sub_menu li:first-child {
    border: none;
}

/* ================================================================

    ttl_sales

================================================================ */
    
.ttl_sales {
    height: 80px;
    width: 1060px;
    line-height: 80px;
    font-size: 32px!important;
    color: #fff;
    padding: 0 0 0 20px;
}
.ttl_sales.food {
    background: url("../sales/images/ttl_food.jpg") no-repeat;
}

.ttl_sales.electrical {
    background: url("../sales/images/ttl_electrical.jpg") no-repeat;
}

.ttl_sales.insurance {
    background: url("../sales/images/ttl_insurance.jpg") no-repeat;
}

.ttl_sales.hearing_aid {
    background: url("../sales/images/ttl_hearing_aid.jpg") no-repeat;
}

.ttl_sales02 {
    color: #078E3D;
    font-size: 24px!important;
    font-weight: 600;
    border-bottom: 2px solid #078E3D;
    
}

.ttl_robot_area {
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding-top: 70px;
}

.ttl_robot_area p {
    text-align: center;
}

.ttl_robot_area p:nth-of-type(2){
    font-size: 32px!important;
}

.ttl_robot_area p:nth-of-type(3){
    font-size: 28px!important;
}

.ttl_robot {
    font-size: 86px!important;
    margin-bottom: 10px;
}

.ttl_robot02 {
    font-size: 24px!important;
    font-weight: bold;
    color: #000;
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
}


@media screen and (max-width: 640px) {
    .ttl_sales {
    width: inherit; 
    height: 60px;
    line-height: 60px;
    text-align: center;
    padding: 0;
    }
    
    .ttl_robot_area {
    padding-top: 40px;
    width: 90%;
    margin: auto;
}

.ttl_robot_area p:nth-of-type(2){
    font-size: 18px!important;
    margin-bottom: 15px!important;
}

.ttl_robot_area p:nth-of-type(3){
    font-size: 16px!important;
}

.ttl_robot {
    font-size: 30px!important;
    line-height: 1.2;
    margin-bottom: 6px;
}
    
}

/* ================================================================

    copy_sales

================================================================ */
.copy_sales {
    color: #0A4020;
    font-size: 18px!important;
    text-align: center;
}

.copy_sales.food {
    margin: 30px 0px;
}

.copy_sales_area {
    text-align: center;
}

.copy_sales.electrical {
    display: inline-block;
    font-size: 24px!important;
    border-bottom: 1px solid #0A4020;
    padding: 0 20px;
}

.copy_sales.insurance{
    font-size: 24px!important;
}

.copy_sales.hearing_aid {
    font-size: 21px!important;
}

    #electrical .sales_main_img {
    width: 100%!important;
    height: inherit!important;
    }

.sales_main_img.robot {
    background: url("../sales/electrical/images/img_main_robot.png") center / cover  no-repeat;
    margin: auto;
    height: 480px;
    width: 100%;
}

@media screen and (max-width: 640px) {
    .copy_sales {
    text-align: left;  
    }
    
    .copy_sales.food {
    margin: 10px 0px;
}
    .sales_main_img {
    height: 200px;
    object-fit: cover;
    }

    
    .copy_sales.electrical {
    font-size: 21px!important;
}
    .copy_sales.insurance{
    font-size: 20px!important;
}
    .copy_sales.hearing_aid {
    font-size: 21px!important;
    text-align: center;
}
    .sales_main_img.robot {
    width: 100%;
    height: 260px;
    object-fit: cover;
}

}



/* ================================================================

    menu_food

================================================================ */
.menu_food,
.menu_electrical{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.menu_food li,
.menu_electrical li{
    display: inline-block;
    transition: .3s;
    max-width: 193px;
}

.menu_electrical li {
    /*max-width: 251px;*/
    max-width: 340px;
}

.menu_food li a,
.menu_electrical li a{
    text-decoration: none;
}

.menu_food li .img_box:hover,
.menu_electrical li .img_box:hover{
    cursor: pointer;
    opacity: .7;
    transition: .3s;
}



.menu_food li p,
.menu_electrical li p{
    text-align: center;
    color: #fff;
    background: #078E3D;
    font-size: 16px;
    padding: 7px;
}

.menu_food .text,
.menu_electrical .text{
    background: none;
    color: #000;
    text-align: left;
    margin: 10px 0 0;
    padding: 0;
    font-size: 16px;
}

 .menu_food .img_box img,
 .menu_electrical .img_box img{
        width: 100%;
        height: inherit;
    }

@media screen and (max-width: 640px) {
    .menu_food li,
    .menu_electrical li{
    max-width: 100%;
    margin-bottom: 30px;
}
    
    .menu_food li p,
    .menu_electrical li p{
    padding: 8px;
    font-size: 18px!important;
}
    
    .img_box img {
        width: 100%!important;
        object-fit: cover;
        height: 160px;
    }
    
    .menu_food .img_box img,
    .menu_electrical .img_box img{
        height: 160px;
    }
}

    .menu_food,
    .menu_food li:last-child,
    .menu_electrical,
    .menu_electrical li:last-child{
    margin-bottom: 0!important;
}

/* ================================================================

    base_area

================================================================ */
.base_area img {
    margin-right: 100px;
}


@media screen and (max-width: 640px) {
    .base_area{
    display: block;
}
    .base_area img {
    margin-bottom: 30px;
    margin-right: 0px!important;
    }
}

/* ================================================================

    contact_box

================================================================ */
.contact_box p {
    text-align: center;
    font-size: 18px;
}

/* ================================================================

    contact_sp

================================================================ */
@media screen and (max-width: 640px) {
    .contact_sp{
    display: block;
}
    .contact_sp .mar100.sp {
    margin: 0 0 20px 0!important;
    }
}


/* ================================================================

    ttl_contact

================================================================ */
.ttl_contact {
    font-size: 24px!important;
    display: block;
    border-bottom: 2px solid #078E3D;
    text-align: center;
}

/* ================================================================

    ttl_visit

================================================================ */
.ttl_visit {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
}

.ttl_visit:before, .ttl_visit:after {
  border-top: 2px solid;
  content: "";
  width: 35%; /* 線の長さ */
}
.ttl_visit:before {
  margin-right: 1em; /* 文字の右隣 */
}
.ttl_visit:after {
  margin-left: 1em; /* 文字の左隣 */
}

.img_visit_box {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 640px) {
    .ttl_visit {
        font-size: 18px!important;
}
    
    .ttl_visit:before, .ttl_visit:after {
  border-top: 2px solid;
  content: "";
  width: 12%; /* 線の長さ */
}
.ttl_visit:before {
  margin-right: 0.1em; /* 文字の右隣 */
}
.ttl_visit:after {
  margin-left: 0.1em; /* 文字の左隣 */
}
    
    .img_visit_box {
    display: block;
    width: 100%;
}
    .img_visit_box img {
    width: 100%;
}
    .img_visit_box img:first-child {
        margin-right: 0!important;
        margin-bottom: 20px;
    }
}

/* ================================================================

    contact_phone

================================================================ */
.contact_phone {
    font-size: 24px;
    color: #078E3D!important;
    font-weight: bold;
}

/* ================================================================

    box_type

================================================================ */
.box_type01 {
    border: 2px solid #078E3D;
    padding: 12px 15px;
    font-size: 15px;
    display: block;
    
}

.box_type01 li {
    width: inherit!important;
}

#insurance .box_type01 ul {
    width: 100%!important;
}


.box_type02 {
    border: 1px dashed #078E3D;
    padding: 20px;
  border-radius: 7px;
    display: block;
}

.box_type03 {
    background: #009946;
    padding: 0;
    display: block;
}
.box_type03 p {
  color: #fff;
}



/* ================================================================

    signia_box,
    starkey_box

================================================================ */
.signia_box {
    display: flex;
    align-items: center;
}

.signia_logo {
    padding: 30px 60px 30px 30px;
}

.starkey_logo {
    padding: 20px 45px 20px 0;
}

.signia_item {
    align-items: center;
}

.signia_item img,
.starkey_item img{
    padding: 24px;
}

.starkey_item::before{
  content:"";
  display: block;
  width:17%;
  order:1;
}
.starkey_item::after{
  content:"";
  display: block;
  width:17%;
}

@media screen and (max-width: 640px) {
    .signia_box {
    display: block;
    align-items: center;
}    

    .signia_logo,
    .starkey_logo{
    display: block;
    padding: 0;
    margin: 0 auto 20px;
}
    .signia_item,
    .starkey_item{
    justify-content: space-around;
}
    .signia_item img,
    .starkey_item img{
    padding: 15px;
}
}

/* ================================================================

    hearing_worries

================================================================ */
.hearing_worries_box {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.hearing_worries {
    display: inline-block!important;
    padding: 15px 15px;
    font-size: 18px;
    color: #078E3D;
    text-align: center;
    vertical-align: middle!important;
    width: 325px;
    border: 1px solid #078E3D;
    border-radius: 10px;
}

@media screen and (max-width: 640px) {
    .hearing_worries_box {
    width: 100%;
    display: block;
    margin-bottom: 20px!important;
}
    
    .hearing_worries {
    margin-bottom: 15px;
}
}

/* ================================================================

    hearing_check_item

================================================================ */
.hearing_check_box {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom:30px;
}

.hearing_check_item {
    position: relative;
    padding: 30px 0;
    
}

.hearing_check_item p {
    font-size: 20px!important;
    position: relative;
    padding:  6px 0 0 42px;
}

.hearing_check_item p::before {
    background: #fff;
    border: 1px solid #aaa;
    content: '';
    display: block;
    height: 20px;
    width: 20px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
}

.hearing_check_item p::after {
    border-right: 6px solid #078E3D;
    border-bottom: 3px solid #078E3D;
    content: '';
    display: block;
    height: 20px;
    left: 11px;
    margin-top: -14px;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 9px;
}

.hearing_advice_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    }

@media screen and (max-width: 640px) {
    .hearing_check_box {
    display: block;
    width: 100%;
    margin-bottom:0!important;
}
    
    .hearing_check_img {
    margin-right: 0!important;
    }
    
    .hearing_advice_box {
        display: block;
        width: 100%;
    }
    
    .hearing_advice_box p {
        font-size: 18px!important;
        margin-bottom: 15px;
    
    }
}

/* ================================================================

    hearing_center

================================================================ */
.hearing_center {
    position: relative;
    display: flex;
    margin-bottom: 30px;
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding: 15px 0;
}

#hearing_aid .hearing_center ul {
    position: relative;
}

#hearing_aid .hearing_center ul li {
    list-style: none;
    font-size: 18px;
    line-height: 1.7;
    counter-increment: cnt;
    margin: 0;
    padding-left: 25px;
}

#hearing_aid .hearing_center ul li:before {
    content: "〇";
    position: absolute;
    left: 8px;
    margin-left:-0.3em;
}

@media screen and (max-width: 640px) {
    .hearing_center {
    display: block;
}
    .hearing_center p {
        margin-bottom: 5px;
    }
}


/* ================================================================

    hearing_contact_box

================================================================ */
.hearing_contact_box {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .hearing_contact_box {
    display: block;
    width: 100%;
}
}


/* ================================================================

    hearing_contact_area

================================================================ */
.hearing_contact_area {
    width: 100%;
}

@media screen and (max-width: 640px) {
    .hearing_contact_area p{
    margin-bottom: 5px!important;
}
}


/* ================================================================

    tbl_hearing_contact

================================================================ */
.tbl_hearing_contact {
    width: 100%;
}

.tbl_hearing_contact th,
.tbl_hearing_contact td {
    font-size: 16px;
    padding: 3px 0;
}

.tbl_hearing_contact th{
    width: 20%;
    font-weight: 400;
    text-align: center!important;
    vertical-align: top!important;
    
}

.tbl_hearing_contact td {
    width: 80%;
}

@media screen and (max-width: 640px) {
    .tbl_hearing_contact th{
        text-align: left!important;
}
}

/* ================================================================

    btn_hearing_aid

================================================================ */
.btn_hearing_aid_area {
    position: relative;
}

.btn_hearing_aid {
    text-align: left;
    background: #22A6CE;
    padding: 15px 65px 15px 115px;
    font-size: 20px!important;
    border-radius: 10px;
    cursor: pointer;
    text-decoration: none!important;
    color: #fff!important;
    display: inline-block!important;
    max-width: 500px;
}

.btn_hearing_aid:before {
    content: "";
    display: inline-block;
    position: absolute;
    background: url("../sales/images/icon_mail.svg") no-repeat;
    width: 30px;
    height: 23px;
    left: 72px;
    top: 50%;
    transform: translateY(-55%);
    transition: .3s;
}

.btn_hearing_aid:hover {
    opacity: .7;
    transition: .3s;
}

@media screen and (max-width: 640px) {
    
    p.btn_hearing_aid_area {
    margin-bottom: 30px!important;
}
    
    .btn_hearing_aid {
    display: block;
    width: 100%;
    padding: 20px 20px 20px 80px;
    font-size: 20px!important;
    text-align: left!important;
}
    .btn_hearing_aid:before {
    left: 35px;
}
}

.pagetop {
  position: fixed;
  right: 25px;
  bottom: 30px;
  z-index: 99;
}

.pagetop a{
	line-height: 0;
	display: block;
}

.pagetop img:hover {
	opacity: .8;
}


/* ================================================================

    tab

================================================================ */
#sales .calendar_area input[type=radio]{
    display: none;
}

.calender_flex {
    display: flex;
    width: 100%;
    position: relative;
}

.tab_area {
    min-width: 150px;
    max-height: 800px;
}

.tab_area.sp {
        display: none!important;
    }

.tab{
    list-style:none;
    padding:0;
    margin:0;
    width: inherit;
    height: 800px;
    overflow-x: hidden;
}

.tab span:hover,
.tab span:focus,
.tab span:active{
    color: #fff;
    background: #078E3D!important;
    transition: .2s;
}

.tab input[type=radio] + span{
    cursor: pointer;
    min-width: 150px;
    max-width: 180px;
    height: inherit;
    background: #ADADAD;
    color: #fff;
    border-radius: 10px 0 0 10px;
    text-align: left;
    padding:12px 0 12px 15px;
    display: inline-block;
    font-size: 20px;
    margin: 0 0 20px;
    transition: .2s;
}

.tab input[type=radio]:checked + span{
    background:#078E3D!important;
}


/* ページャー */
.tab_sub{
    position: relative;
    margin:35px auto 0;
    padding:0;
    display:flex;
    list-style:none;
    width: 856px;
   
    overflow-y: hidden;
}


.tab_sub span{
    display: inline-block;
    min-width: 140px;
    white-space: nowrap;
    text-align: center;
}

.white_bg {
    content: "";
    background: #fff!important;
    width: 856px;
    height: 694px;
    position: absolute;
    top: 85px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    order: -1;
}


.tab_sub input[type=radio] + span{
    display: inline-block!important;
    background: #DDFDEA;
    border-radius: 10px 10px 0 0;
    padding: 10px 30px;
    font-size: 20px;
    cursor: pointer;
    transition: .2s;
    height: inherit;
}

.tab_sub li {
        margin-right: 10px;
        display: inline-block;
    }

.tab_sub li:last-child{
    margin-right: 0!important;
}

.tab_sub span:hover,
.tab_sub span:focus,
.tab_sub span:active{
    background: #fff;
    transition: .2s;
}

.tab_sub input[type=radio]:checked + span{
    background:#fff!important;
}

@media screen and (max-width: 640px) {
    
    .calendar_area {
        width: 100%;
    }
    
    
    .tab_area {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-width: 100%;
}
    
    .calender_flex {
    display: block;
    width: 100%;
}
    
    .tab input[type=radio] + span{
    display: block;
    border-radius: 10px;
    padding: 10px;
    margin: 0;
    font-size: 20px;
    cursor: pointer;
    transition: .2s;
    text-align: center;
    min-width: 50%!important;
    max-width: 100%;
    height: inherit;
}
    .tab {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        height: inherit;
        justify-content: space-between;
        margin-bottom: 10px;
    }
    
    .tab li {
        display: inline-block;
        margin: 0 0 10px 0;
        min-width: 48%;
        max-width: 100%;
        height: inherit;
    }
    
    .tab_sub{
    margin: 0 auto 0;
    padding: 10px 0px 0 0px;
    width: 94%;
    height: inherit;
}
    
    .tab_sub span{
    display: inline-block;
    min-width: 140px;
    white-space: nowrap;
    text-align: center;
}
    
    .tab_sub input[type=radio] + span{
    background: #DDFDEA;
    border-radius: 10px 10px 0 0;
    padding: 10px 30px;
    font-size: 20px;
    cursor: pointer;
    transition: .2s;
}
    
}


.schedule table {
    position: relative;
    width: 100%;
    border-collapse: separate;
    border-spacing: 10px;
    box-sizing: border-box!important;
    z-index: 99;
    
}

.schedule p.none {
    position: absolute;
    font-size: 24px!important;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}


/*#sales th{
    text-align: center!important;
    vertical-align: top;
}*/

.schedule table tr th {
    background: #E5FFEF;
    font-size: 21px;
    line-height: 1.3;
    border-radius: 10px;
    padding: 10px;
    width: 22%;
    max-width: 22%!important;
    text-align: center;
    word-break: break-all;
}

/*会場・時間*/
.schedule table tr:first-child td:first-of-type,
.schedule table tr:nth-child(2) td:first-of-type {
    background: #C6FFDC;
    text-align: center;
    vertical-align: top;
    border-radius: 10px;
    padding: 7px 20px;
    font-size: 21px;
    width: 18%;
    max-width: 18%!important;
}

/*.schedule table tr:nth-child(3) td:first-of-type {
    width: 20%!important;
}*/

.schedule table tr:nth-child(3) td:last-of-type {
    width: 80%!important;
}

.schedule table tr td:last-of-type {
    
    vertical-align: center;
    width: 60%;
    max-width: 60%;
}

.schedule table tr td {
    font-size: 18px;
    vertical-align: top;
    padding: 5px 10px 5px 0;
    word-break: break-all;
}

.schedule table td a {
    position: relative;
    display: inline-block;
    color: #0031FF;
    text-decoration: none;
}

.schedule table td a.map:after {
    content:"";
    position: absolute;
    display: inline;
    background: url("../sales/images/icon_map.svg") no-repeat;
    width: 16px;
    height: 25px;
    right: -23px;
    
}

.schedule table td a:hover {
    opacity: .7;
}

.list {
    background: #078E3D;
    width: 100%;
    height: 800px;
    position: relative;
    z-index: 0;
}


.schedule_area {
    max-height: 570px;
    overflow-x: hidden;
}

.table_area {
    width: 856px;
    margin: auto;
    padding: 0 30px 10px;
}

.list .inner,
.list .inner > div{
    display:none;
}
.list .inner.active{
    display:block;
}
.list .inner > div.active{
    display:table;
}

.message {
    height: inherit;
    position: relative;
}

.message p{
    font-size: 28px!important;
    font-weight: bold;
    color: #078E3D;
    text-align: center;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 99;
}

.message.hidden {
    display: none;
}

@media screen and (max-width: 640px) {
    
    .list .inner {
        width: 100%;
    }
    
    .list {
    background: #078E3D;
    width: 335px;
    height: 775px;
    position: relative;
    z-index: 0;
    }
    
    .schedule_area {
    width: 100%;
    max-height: 600px;
    overflow-x: hidden;
}

.table_area {
    width:100%;
    margin: auto;
    padding: 10px 20px;
}
    
    .message {
    width: 100%;
    height: inherit;
    position: relative;
}
    
    .message p{
    font-size: 24px!important;
    font-weight: bold;
    color: #078E3D;
    text-align: center;
    position: absolute;
    display: block;
    width: 80%;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 99;
}
    
    .schedule p.none {
    width: 80%;
    text-align: center;
}
    
    .white_bg {
    content: "";
    background: #fff!important;
    width: 94%!important;
    height: 704px;
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    order: -1;
}
    
    .schedule table {
        table-layout: fixed;
    }
    
    .schedule table tr th,
    .schedule table tr td{
    display: block!important;
    width: 100%!important;
    max-width: 100%!important;
    white-space: normal;
    word-wrap: break-word;
}
    .schedule table tr th {
        margin-bottom: 12px;
        vertical-align: middle;
    }
    
    .schedule table td a {
    display: inline;
    white-space: normal;
    word-wrap: break-word;
}
    
    .schedule table tr:first-child td:first-of-type,
.schedule table tr:nth-child(2) td:first-of-type {
    width: 100%;
    max-width: 100%!important;
}

.schedule table tr:nth-child(3) td:first-of-type {
    width: 100%!important;
}

.schedule table tr:nth-child(3) td:last-of-type {
    width: 100%!important;
}

.schedule table tr td:last-of-type {
    
    vertical-align: center;
    width: 100%;
    max-width: 100%;
}
    
}


/* ================================================================

    slect_month_area

================================================================ */
.select_month_area {
    align-items: center;
    position: relative;
    padding:  20px 50px;
}

.select_month_area a{
    text-decoration: none;
    color: #000;
    z-index: 99!important;
}

#sales .month,.year {
    background: none;
}

@media screen and (max-width: 640px) {
    
    .select_month_area {
    width: 100%;
    padding: 10px 20px;
}
}

/* ================================================================

    prev_month,
    next_month

================================================================ */
.prev_month,
.next_month {
    font-size: 24px;  
    display: inline-block;
    min-width: 25px;
}

.this_month{
    display: inline-block;
    min-width: 150px;
}


.select_month_area a:hover {
    opacity: .6;
}

.prev_month {
    padding-left:20px; 
}

.prev_month:before {
    content:"";
    display: inline-block;
    position: absolute;
    background: url("../sales/images/icon_schedule_arrow_prev.svg") no-repeat;
    width: 9px;
    height: 16px;
    top: 50%;
    left: 50px;
    transform: translateY(-60%);
}

.next_month {
    padding-right: 20px;
}

.next_month:after {
    content:"";
    display: inline-block;
    position: absolute;
    background: url("../sales/images/icon_schedule_arrow_next.svg") no-repeat;
    width: 9px;
    height: 16px;
    top: 50%;
    right: 50px;
    transform: translateY(-60%);
}

@media screen and (max-width: 640px) {
    
    .prev_month:before {
    left: 22px;
}
    
    .next_month:after {
    right: 22px;
}
}

/* ================================================================

    scrollbar

================================================================ */
div.schedule_area::-webkit-scrollbar {
  width: 13px;
  height: 13px;
}

div.schedule_area::-webkit-scrollbar-track {
  background: #D8D8D8;
  border-radius: 15px;
}

div.schedule_area::-webkit-scrollbar-thumb {
  background: #078E3D;
  border-radius: 15px;
}

.tab_sub::-webkit-scrollbar,
.tab::-webkit-scrollbar{
  width: 18px;
  height: 18px;
}

.tab_sub::-webkit-scrollbar-track,
.tab::-webkit-scrollbar-track{
  background: #D8D8D8;
}

.tab_sub::-webkit-scrollbar-thumb,
.tab::-webkit-scrollbar-thumb{
  background: #979797;
  border: 4px solid #D8D8D8;
  border-radius: 10px;
}


/*Firefox*/
.tab,
.tab_sub {
    scrollbar-width: auto;/*細さ(幅・高さ両方に適用)*/
    scrollbar-color: #979797 #D8D8D8;/*つまみの色 軌道の色*/
}

div.schedule_area {
    scrollbar-width: auto;/*細さ(幅・高さ両方に適用)*/
    scrollbar-color: #078E3D #D8D8D8;/*つまみの色 軌道の色*/
    
}


@media screen and (max-width: 640px) {
    .pc {
        display: none;
    }
    
	}

/* ローディング画面 */
#loading {
  width: 856px;
  height: 620px;
  transition: all 1s;
  background-color: #fff;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
}
.spinner {
    color: #078E3D;
  font-size: 16px;
  margin: 250px auto;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}


.loaded {
  opacity: 0;
  visibility: hidden;
}


/* ローディングアニメーション */
@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}


@media screen and (max-width: 640px) {
    #loading {
  width: 94%;
  height: 645px;
  transition: all 1s;
  background-color: #fff;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
}
    

    .spinner {
        margin-top: 330px;
    }
    
    
	}


/* ================================================================

    in_menu_food_area,
    in_menu_electrical_area,
    in_menu_food,
    in_menu_electrical

================================================================ */
.in_menu_food_area,
.in_menu_electrical_area{
    width: 100%!important;
    display: flex;
    gap: 2px;
    margin-bottom: 50px;
}


.in_menu_food,
.in_menu_electrical{
    display: inline-block;
    width: 100%;
    transition: .2s;
}

.in_menu_food img,
.in_menu_electrical img{
    display: inline-block;
    width: 100%;
    height: inherit;
}

.in_menu_food:hover,
.in_menu_electrical:hover{
    opacity: .8;
    transition: .2s;
}

.in_menu_food a:last-child,
.in_menu_electrical a:last-child{
    display: inline-block;
    width: inherit;
    background: #078E3D;
    color: #fff;
    text-decoration: none!important;
    text-align: center;
    padding: 5px 10px;
    
}

@media screen and (max-width: 640px) {
  .in_menu_food_area,
  .in_menu_electrical_area{
    flex-wrap: wrap;
    gap: 5px; 
    height: inherit;
}
    
    .in_menu_food,
    .in_menu_electrical{
    width: 49%;
    height: inherit;
}

    .in_menu_food a:last-child,
    .in_menu_electrical a:last-child{
        width: 100%;
    }

}

/* ================================================================

    sales_contents_area

================================================================ */

@media screen and (max-width: 640px) {
    .sales_contents_area {
        margin-bottom: 50px!important;
    }
    
    .sales_contents_area.robot {
        margin-bottom: 0!important;
    }
}


/* ================================================================

    main_img

================================================================ */
.main_img {
    width: 100%;
}

@media screen and (max-width: 640px) {
    .main_img.rice,
    .main_img.vegetable{
        width: 100%;
        height: 180px;
        object-fit:cover;
    }
    
    .main_img.energy_saving{
        width: 100%;
        height: 200px;
        object-fit: cover;
    }
    
    .main_img.service,
    .main_img.rental{
        width: 100%;
        height: 160px;
        object-fit: cover;
    }

}

/* ================================================================

   list_disc

================================================================ */
.list_disc li {
    list-style: disc;
    margin-left: 20px;
    font-size: 15px;
    line-height: 1.7;
}

/* ================================================================

   rice_box_area,
   rice_box

================================================================ */
.rice_box_area {
    display: flex;
    flex-wrap: wrap;
    gap: 50px 30px;
    justify-content: space-between;
}

.rice_box {
    display: inline-block;
    width: 30%;
    text-align: center;
}

.rice_box li,
.rice_box p {
    text-align: left!important;
}

.rice_box img {
    margin: 20px auto 30px;
}

@media screen and (max-width: 640px) {
.rice_box_area {
    gap: 40px 20px;
}

.rice_box {
    width: 46%;
}
    
.rice_box img {
    margin: 10px auto 15px;
}
    
    .rice_box p {
        font-size: 15px!important;
    }

}

/* ================================================================

   vegetable_box

================================================================ */
.vegetable_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {

    .vegetable_box {
    margin-bottom: 0;
}
    .vegetable_box img {
        margin-bottom: 20px;
        width: 100%;
    }
    
}

/* ================================================================

   tbl_harvest

================================================================ */
.tbl_harvest {
    width: 100%;
    border: 1px solid #078E3D;
    white-space: nowrap;
}

.tbl_harvest th,
.tbl_harvest td{
    padding: 7px 0px;
    text-align: center;
    border-right: 1px solid #A5D5B8;
    
}

.tbl_harvest th {
    background: #078E3D;
    color: #fff;
    font-size: 18px!important;
    
}

.tbl_harvest td {
    border-bottom: 1px solid #A5D5B8;
    font-size: 16px!important;
    width: 75px;
}

/*ボーダーの重なりを削除*/
.tbl_harvest th:last-child,
.tbl_harvest td:last-child {
    border-right: none;
}

.tbl_harvest tr:last-child td {
    border-bottom: none; 
}

.tbl_harvest td:first-child,
.tbl_harvest td:nth-child(2){
    padding: 7px 20px;
}


@media screen and (max-width: 640px) {
    .tbl_harvest {
     display: block;
     width: auto;
     overflow-x: auto;
    }
    
    .tbl_harvest td {
    width: 100px;
}
    .tbl_harvest th{
    padding: 7px 20px;
    
}
}

/* ================================================================

   main_sugar_area

================================================================ */
.main_sugar_area,
.main_millet_area{
    display: flex;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .main_sugar_area,
    .main_millet_area{
    flex-wrap: wrap;
}
    .main_sugar_area img:first-child,
    .main_millet_area img:first-child{
    margin-bottom: 20px;
}
}

/* ================================================================

   sugar_box_area

================================================================ */
.sugar_box_area {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

.sugar_box_area img {
    width: 25%;
}

@media screen and (max-width: 640px) {
    .sugar_box_area {
    flex-wrap: wrap;
}
    .sugar_box_area img {
    width: 30%;
}
    
/*    .sugar_box_area img:not(:last-child){
    margin-bottom: 20px;
}*/
}

/* ================================================================

   ttl_beet

================================================================ */
.ttl_beet {

}

.ttl_beet_img{
   
}
/* ================================================================

   about_beet_area,
   about_beet

================================================================ */
.about_beet_area {
    position: relative;
}

.about_beet {
    border-top: 1px dashed #2B8D3A;
    border-bottom: 1px dashed #2B8D3A;
    padding: 30px 0;
}

.about_beet p {
    width: 65%;
}

.about_beet_area > img {
    position: absolute;
    right: 0;
}

@media screen and (max-width: 640px) {

.about_beet {
    padding: 15px 0 250px;
}

.about_beet p {
    width: 100%;
}    

.about_beet_area > img {
    width: 80%;
    left: 50%;
    transform: translateX(-50%);
    bottom: 10px;
}
}

/* ================================================================

   sugar_text

================================================================ */
.sugar_text {
    margin-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .sugar_text {
    margin-bottom: 40px;
}

}

/* ================================================================

   millet_box

================================================================ */
.millet_box {
    width: 100%;
    display: flex;
    gap: 28px;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .millet_box {
        gap: 20px;
    }    
    
.millet_box img.millet {
    width: 46%;
}

}

/* ================================================================

   millet_comment

================================================================ */
.millet_comment {
    position: relative;
    width: 100%;
    text-align: center;
    padding: 0 0 20px;
}

.millet_comment p {
    display: inline-block;
    color: #fff;
    background: #EA633F;
    width: 72%;
    border-radius: 10px;
    padding: 20px 100px 20px 30px;
    font-size: 1.2em!important;
}

.millet_comment img {
    position: absolute;
    bottom: 0;
    right: 90px;
    
}

@media screen and (max-width: 640px) {
.millet_comment {
    padding: 0 0 35px;
}
    
.millet_comment p {
    width: 100%;
    border-radius: 10px;
    padding: 20px 20px 90px;
}
    
.millet_comment img {
    bottom: 0;
    right: 0px;
    
}
}

/* ================================================================

   processing_box

================================================================ */
.processing_box {
    width: 100%;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

@media screen and (max-width: 640px) {
.processing_box img {
    width: 100%;
}

}

/* ================================================================

   device_box

================================================================ */
.device_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    width: 100%;
    
}

.device_box img {
   
}

@media screen and (max-width: 640px) {
.device_box {
    justify-content: center;
    
}
    
.device_box img {
   padding: 0 30px;
   margin-bottom: 10px!important;
}
    
    .device_box div:not(:last-child) {
        margin-bottom: 30px;
    }

}

/* ================================================================

   source

================================================================ */
.source {
    text-align: right;
}

@media screen and (max-width: 640px) {
.source {
    text-align: center;
    
}
}

/* ================================================================

   service_box_area,
   service_box

================================================================ */
.service_box_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    
}

.service_box {
    position: relative;
    width: 30%;
    text-align: center;
}

/*POINT部分*/
.service_box p:first-of-type {
    color: #078E3D;
    font-weight: bold;
    font-size: 18px!important;
    padding-top: 55px;
}

/*POINT下のタイトル*/
.service_box p:nth-of-type(2) {
    color: #EA633F;
    font-weight: bold;
    font-size: 21px!important;
}

.service_box .fukidashi{
    position: absolute;
}

.service_box .point {
    text-align: center;
    height: 130px;
}

@media screen and (max-width: 640px) {
.service_box {
    width: 100%;
}
    .service_box p:nth-of-type(2){
        margin-bottom: 15px!important;
    }
    
    .service_box:nth-of-type(2) p:nth-of-type(2){
        margin-bottom: 0px!important;
    }
    
    .service_box{
        margin: 0 0 40px;
    }
    
    
.service_box .point {
    height: inherit;
}    
}

/* ================================================================

   rental_box_area,
   rental_box

================================================================ */
.rental_box_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    
}

.rental_box_area02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px; 
}

.rental_box {
    position: relative;
    width: 333px;
    text-align: center;
    margin-bottom: 30px;
}

.rental_box p:first-of-type {
    color: #078E3D;
    font-weight: bold;
    font-size: 18px!important;
    border-bottom: 1px solid #078E3D;
}


.rental_box p span {
    color: #EA633F;
    font-weight: bold;
    font-size: 21px!important;
    padding: 0 0 0 20px;
}

@media screen and (max-width: 640px) {

}

/* ================================================================

   flow_box

================================================================ */
.flow_box_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    
}

.flow_box_area.sp {
    display: none;
}

@media screen and (max-width: 640px) {
    .flow_box_area.pc {
        display: none!important;
    }
    
    .flow_box_area.sp {
        display: block!important;
    }
    
    .flow_box_area p {
        text-align: center;
    }
    
    .flow_box {
        font-size: 18px!important;
        font-weight: bold;
        color: #EA633F;
        padding: 12px;
        width: 100%;
        border: 2px solid #EA633F;
    }
    
}

/* ================================================================

   handshake

================================================================ */
.handshake {
   width: 100%;
   margin: 50px auto 70px;
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   align-items: center;
   
}

.handshake img {
    display: inline-block;
}

@media screen and (max-width: 640px) { 

    .handshake {
    max-width: 100%!important;
    min-width: 100%!important;
    width: 100%!important;
    justify-content: center;
    margin: 20px auto 50px;
    }
    
    .handshake img:nth-of-type(2){
        width: 30%;
    }
    
    .handshake img:not(:last-of-type) {
        margin-bottom: 20px;

}
}

/* ================================================================

   solution_area,
solution_text

================================================================ */
.solution_area {
    margin: 0 auto 30px;
    text-align: left;
    max-width: 720px;
    background: #1C4696;
}

.solution_box {
    padding:  15px 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    
}

.solution_text {
    display: inline-block;
    font-size: 21px!important;
    color: #fff;
    position: relative;
    padding-left: 15px;
    
}

.solution_text span:before {
    content: "●";
    position: absolute;
    display: inline-block;
    left: -5px;
}

/* ================================================================

   robot_system_area

================================================================ */
.robot_system_area {
    background: url("../sales/electrical/images/robot_bg01.png") center/cover no-repeat;
    width: 100%;
    height: 950px;
    text-align: center;
    margin: auto;
}

.robot_system_contents,
.exclusive_contents{
    padding: 50px 0;
}

@media screen and (max-width: 640px) {

    .robot_system_area{
        height: 1020px;  
    }
    
    .robot_system_contents,
    .exclusive_contents{
    padding: 10px 0;
}
}

/* ================================================================

   achievement_area

================================================================ */
.achievement_area {
    font-size: 21px!important;
    font-weight: bold!important;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    
}

.achievement_area.sp {
    display: none;
}

.achievement {
    background: #1C4696;
    color: #fff;
    border-radius: 25px;
    padding: 4px 16px;
    margin: 0 15px 0 0;
}

@media screen and (max-width: 640px) {
    .achievement_area.pc {
    display: none;
}

    .achievement_area.sp {
    display: flex;
}

    .achievement{
        margin-bottom: 15px; 
    } 
}

/* ================================================================

   robot_system_box,
   robot_system_img

================================================================ */
.robot_system_box,
.exclusive_box{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.robot_system_img,
.exclusive_img{
    display: inline-block;
    margin-bottom: 40px;
}

.robot_system_img img,
.exclusive_img img{
    display: block;
    margin-bottom: 10px;
}

.robot_system_img p,
.exclusive_img p{
    text-align: center;
    display: block;
    font-size: 17px!important;
    font-weight: bold;
}

.exclusive_img{
height: 450px;
}

.exclusive_img:first-of-type {
    padding-top: 20px;
}

.exclusive_img:last-of-type {
    padding-top: 26px;
}

@media screen and (max-width: 640px) {
    .robot_system_img{
    width: 48%;
        margin-bottom: 25px;
}

    .exclusive_img {
        width: 100%;
        height: inherit;
        margin-bottom: 20px;
        padding: 0!important;
    }
    
.robot_system_img img{
    width: 100%;
}
    
    .exclusive_img img {
        margin: 0 auto 10px;
        width: 50%;
    }

}

/* ================================================================

   exclusive_area

================================================================ */
.exclusive_area {
    background: url("../sales/electrical/images/robot_bg02.png") center/cover no-repeat;
    height: 650px;
    width: 100%;
    margin-bottom: 50px;
}

@media screen and (max-width: 640px) { 
    .exclusive_area {
        height: 1270px;
        margin-bottom: 0;
    }
}

/* ================================================================

   bnr_nikko

================================================================ */
@media screen and (max-width: 640px) { 
    .bnr_nikko {
        width: 100%;
        height: 100px;
        object-fit: cover;
    }
    
}


/*======================================================
		#top
======================================================*/
#top #main {
	width: 630px;
	padding-top: 10px;
}

#top #sub {
	width: 194px;
}

#top #main .info {
	width: 630px;
	margin: auto;
	margin-bottom: 36px;
}

#top #main .info .banner {
	width: 630px;
	height: auto;
	background: #CCCCCC;
	text-align: center;
	margin: 0 0 20px;
	border: #009A45 solid 1px;
	box-sizing: border-box;
}

#top #main .info h2.sp_off {
	margin: 0 0 10px;
	padding: 2px 0;
	border-bottom: #009A45 solid 1px;
}
#top #main .info ul {
	margin: 0;
	padding: 0;
}
#top #main .info ul li {
	float: left;
	width: 311px;
	height: 200px;
	background: #CCCCCC;
	text-align: center;
	margin: 0 2px 4px;
	border: #009A45 solid 1px;
	box-sizing: border-box;
}
#top #main .info ul li a {
	text-decoration: none;
}
#top #main .info ul li h4 {
	text-align: center;
	font-size: 16px;
	background: #E3D5A8;
	color: #000000;
	margin: 0;
	padding: 10px 6px 0;
	height: 40px;
	text-decoration: none;
	box-sizing: border-box;
}
#top #main .info ul li .container-img {
	width: 309px;
	height: 158px;
    display: block;
	overflow: hidden;
	margin: 0;
}
#top #main .info ul li .container-img img {
    display: block;
	width: 309px;
    object-fit: cover;
    height: 100%;
}

#top #main .news {
	border: #009A45 solid 1px;
	/*height: 46px; */
	display: block;
	margin-bottom: 38px;
}
#top #main .news h2.sp_off {
	/*width: 106px;
	height: 46px;
	float: left;*/
    margin: 0;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 18px;
    background: #009946;
    color: #FFF;
    text-align: center;
}
#top #main .news dl {
	/*height: 46px;*/
	float: left;
}
#top #main .news dl dt {
	margin: 0;
	padding: 12px 15px;
	font-size: 14px;
	font-weight: normal;
	width: 20%;
	height: 55px;
	float: left;
	box-sizing: border-box;
	display: block;
	overflow: hidden;
}
#top #main .news dl dd {
	margin: 0;
	padding: 12px 15px;
	font-size: 14px;
	width: 80%;
	height: 55px;
	float: left;
	box-sizing: border-box;
	display: block;
	overflow: hidden;
}
#top #main .news p.sp_off {
	text-align: right;
	width: 97%;
	height: 46px;
	/* float: left; */
	box-sizing: border-box;
}
#top #main .news p.sp_off img {
	position: relative;
    top: -13px;
    left: 10px;
}

#top #main .news p.sp_off a {
	line-height: 46px;
}

#top #sub .store_guide {
	margin-bottom: 30px;
}
#top #sub h2.sp_off {
	margin: 0 0 10px;
	padding: 2px 0;
	border-bottom: #009A45 solid 1px;
}
.accordion-container .accordion-title {
  position: relative;
  margin: 0;
  margin-bottom: 2px;
  padding: 8px 5px;
  background: #009A45;
  color: #FFFFFF;
  cursor: pointer;
  font-size: 16px;
  font-weight: normal;
  text-align: center;
}
.accordion-container .accordion-title:hover,
.accordion-container .accordion-title:active,
.accordion-title.open { 
	background-color: #006D2C;
}
.accordion-content {
	display: none;
	margin: 0;
	margin-bottom: 2px;
	padding: 10px 12px 4px;
	background: #EFEFEF;
}
.accordion-content ul {
	margin: 0;
	padding: 0;
}
.accordion-content ul li {
	margin: 0;
	margin-bottom: 10px;
	padding: 0;
}
.accordion-container {
	margin: 0 auto;
}

@media screen and (max-width: 640px) {

#top #main {
	width: 100%;
}

#top #sub {
	width: 100%;
	float: none;
}

#top #main .info {
	width: 100%;
	margin-bottom: 30px;
}
#top #main .info .banner {
	width: 100%;
}
#top #main .info h2 {
	margin-bottom: 10px;
}
#top #main .info ul {
	width: 100%;
}
#top #main .info ul li {
	float: none;
	margin: 0 auto 4px;
}

#top #main .news {
	height: auto;
	display: inherit;
	width: 100%;
	padding: 0;
	border: none;
	margin: 0;
	margin-bottom: 30px;
}
#top #main .news dl{
	display: flex;
    flex-wrap: wrap;
	margin: 0;
	padding: 0;
	border: none;
}
#top #main .news dt {
	font-size: 85%;
	margin: 0;
	padding: 0;
	border: none;
	width: 100px !important;
}
#top #main .news dd {
	border: none;
	width: calc(100% - 100px) !important;
}

#top #sub .store_guide {
	width: 100%;
	margin-bottom: 0;
}
#top #sub h2 {
	margin:0;
	margin-bottom: 10px;
	padding:10px;
	font-size:18px;
	background:#009946;
	color:#FFF;
	text-align: left;
}
.accordion-container {
	padding-bottom: 30px;
}

}

/*======================================================
		#store
======================================================*/
#store #main {
	width: 100%;
	margin: 0;
	padding: 0;
}

#store .area_list {
	padding: 0;
	margin-bottom: 40px;
}
#store .area_list ul {
	clear: both;
}
#store .area_list ul li {
	width: 50%;
	float: left;
	font-size: 16px;
}

#store .store_list {
	margin-bottom: 20px;
	padding: 0;
}
#store .store_list h3 {
	margin-bottom: 20px;
}
#store .store_list .section {
	padding: 0 !important;
	margin: 0 !important;
}
#store .store_list table {
	border: #009A45 solid 1px;
	width: 100%;
	margin-bottom: 20px;
}
#store .store_list table td {
	padding: 20px 20px 0;
}
#store .store_list table .store_name {
	font-weight: bold;
	font-size: 16px;
}
#store .store_list table td.flyerList {
	padding: 10px 20px 20px;
}

.flyerList ul {
}
.flyerList ul li {
	height: 30px !important;
	margin-bottom: 5px;
	overflow: hidden;
	display: block;
}
.flyerList ul li p.flyer_view {
	width: 200px;
	line-height: 30px;
	height: 30px;
	background: #EA5210;
	color: #FFFFFF;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
	border-radius: 5px;
}
.flyerList ul li ul {
	width: 200px;
	height: 30px;
	overflow: hidden;
	display: block;
	position: relative;
	top: -30px;
}
.flyerList ul li ul li img {
	width: 200px;
	height: 30px;
	opacity: 0;
	cursor: pointer;
}
.flyerList ul li p.flyer_name {
	float: left;
	margin-left: 210px;
	position: relative;
	top: -54px;
}
.flyerList p.career {
	float: right;
}

#flyerListBox {
}
h3.flyerTitle {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none !important;
}
#flyerListBox ul {
	display: flex;
}
#flyerListBox ul li {
	display: flex;
	align-self: auto;
	flex: 1;
	text-align: center;
	height: 320px;
	float: none;
	margin: 0 !important;
}
#flyerListBox ul li ul li img {
	height: 320px;
  object-fit: contain;
  width: 100%;
	cursor: pointer;
}
#flyerListBox ul li ul li.flyer_back {
	display: none !important;
}

.flyerOuter {
	border: #009A45 solid 8px;
	border-radius: 8px;
	margin-bottom: 40px;
}

.flyer_navi {
	margin-top: 20px;
	padding: 0 20px;
}
.flyer_navi p.msg {
	height: 30px;
	font-size: 24px;
	font-weight: bold;
	line-height: 30px;
	float: left;
}
.flyer_navi .modal-open {
	float: right;
	font-size: 16px;
	width: 160px;
	border-radius: 5px;
}
.modal-container {
	border-radius: 10px;
}
.modal-container h3 {
	text-align: center;
}
.modal-container ul {
	margin: 10px 0 20px;
}
.modal-container ul li {
	margin-bottom: 10px;
	line-height: 26px;
	border-bottom: dotted 1px #009A45;
	padding: 0 5px 5px;
	font-size: 16px;
}
.modal-container ul li img {
	margin-right: 10px;
}
.modal-container .modal-close {
	font-size: 16px;
	width: 120px;
	margin: auto;
	border-radius: 5px;
}

#store #listBox {
	font-size: 16px;
}
#store .detailBox {
	margin: 0 !important;
}
#store .detailBox dl {
	width: 100% !important;

}
#store .detailBox dt {
	padding-left: 10px;
}

@media screen and (max-width: 640px) {

#flyerListBox {
	margin-top: 10px !important;
}
#flyerListBox ul {
}
#flyerListBox ul li {
	height: 240px;
}
#flyerListBox ul li ul li img {
	height: 240px;
}
.flyerOuter {
	margin-top: 20px;
	border: #009A45 solid 6px;
	border-radius: 6px;
}
.flyer_navi {
	text-align: center;
	position: relative;
	top: 20px;
}
.flyer_navi p.msg {
	float: none;
	font-size: 16px;
}
.flyer_navi .modal-open {
	float: none;
	font-size: 14px;
	width: 120px;
	margin: auto;
}
.modal-container .modal-close {
	font-size: 14px;
	width: 100px;
}

}

/* ================================================================

    lease

================================================================ */
.ttl_lease {
    height: 80px;
    width: 1060px;
    line-height: 80px;
    font-size: 32px!important;
    color: #fff;
    padding: 0 0 0 20px;
}
.ttl_lease.about {
    background: url("../lease/images/ttl_about.jpg") no-repeat;
}
.ttl_lease.merit {
    background: url("../lease/images/ttl_merit.jpg") no-repeat;
}
.ttl_lease.qa {
    background: url("../lease/images/ttl_qa.jpg") no-repeat;
}
.ttl_lease.classification {
    background: url("../lease/images/ttl_classification.jpg") no-repeat;
}

.ttl_lease02 {
    color: #078E3D;
    font-size: 24px!important;
    font-weight: 600;
    border-bottom: 2px solid #078E3D;
    
}
.ttl_lease_h2 {
  font-size: 2em !important;
  line-height: 1.2;
  padding: 0.5em;
  color: #fff;
  background: #009946;
  border-left: solid 8px #0A4020;
  margin-bottom: 30px;
  border-radius: 0 30px 30px 0;
}
.text_lease{
  text-indent: 1em;
}
.lease_flex_img, .lease_flex_text {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.lease_flex_text ul {
  width: 100% !important;
}

.lease_flex_img p {
    max-width: 340px;
}

.flex_left, .flex_right {
  width: 49%;
}

@media screen and (max-width: 640px) {
  .ttl_lease {
    width: inherit;
    height: 60px;
    line-height: 60px;
    text-align: center;
    padding: 0;
  }
    .ttl_lease.line02 {
    width: inherit;
    height: 100px;
    line-height: 1.1;
    text-align: center;
    font-size: 30px!important;
    padding: 10px 0;
  }
  .lease_flex_img, .lease_flex_text {
    display: block;
  }
  .lease_flex_img p {
    max-width: 100% !important;
  }
    .lease_flex_img img, .lease_flex_text img {
    width: 100%;
    margin-bottom: 15px;
  }
  .flex_left, .flex_right {
  width: 100% !important;
  }
}

#lease .sp_section ul { width: 50%; }
@media screen and (max-width: 640px) {
  #lease .sp_section ul {width: 100%;}
}


#lease .sp_section ul li {
    list-style:disc;
    margin-left: 20px;
    padding-right: 18px;
    font-size: 15px;
    line-height: 1.7;
}
#lease div, ul, li, p, a, span, th,td{
    box-sizing: border-box!important;
}

#lease p {
    font-size: 16px;
}

#lease td a{
    word-break: break-all;
}

/*----------------------------------------------
	.c_btn
---------------------------------------------*/
.c_btn {
  display: inline-block;
  padding: 15px 45px 15px 15px;
  min-width: 460px;
  text-decoration: none!important;
  text-align: center;
  color: #fff!important;
  position: relative;
  background: #009946;
  border-radius: 10px;
  transition: 0.5s;
}
a.c_btn:hover {
  opacity: .6;
}

.c_btn.is_disable {
  background: #ccc;
	pointer-events: none;
}

span.c_btn {
  background: #ccc;
}
.c_btn.is_w250 { width: 250px; }
.c_btn.is_w300 { width: 300px; }
.c_btn.is_w320 { width: 320px; }
.c_btn.is_w400 { width: 400px; }

.c_btn.is_pdf::after{
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  vertical-align: middle;
  right: 15px;
}
.c_btn.is_pdf::after {
  background: url("../lease/images/icon_btn_pdf.png") no-repeat;
  width: 22px;
  height: 22px;
}

@media screen and (max-width: 640px) {
  .c_btn { 
    width: 100% !important;
    min-width: auto;
  }
}

.pdf_btn {
  transition: 0.5s;
}
.pdf_btn:hover {
  opacity: 0.6;
}