*, *:before, *:after {
	box-sizing: border-box;
}

.center { text-align:center;}
.f32,.f32_message {
	font-size: 35px;
}

.f30 {
	font-size: 30px;
}

.f20 {
	font-size: 23px;
}
.f25 {
	font-size: 25px;
	padding-top: 10px;
}
.col_4 img {
	border: 2px solid #bebebe;
}
.col_3 img, .col_2 img, .col_1 img {
	padding: 5px;
}
.col_4, .col_4-bn, .col_3, .col_3_our, .col_2, .col_2nav, .col_1, .col_shoplist, .col_3_systembox {
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	margin: 0px;
}
.companyhis03-area-sec .col_3.pc {
    display: flex !important;
    display: -ms-flexbox !important; /* IE10 */
}
.col_4 > div {
	width: 25%;
	padding: 2px;
	vertical-align:middle;
}
.other-block .col_4 img {
	border: 1px #e7e7e7 solid;
}
.col_4-bn > div {
	width: 25%;
	padding: 5px;
	vertical-align:middle;
}
.col_4 > div img {
	max-width: 100%;
}
.col_2 > div.slogan img {
	max-width: 100%;
}
.col_shoplist {
    justify-content: flex-start;
}
.col_shoplist > a {
    width: calc((100% - 40px) / 4);
	vertical-align:middle;
	margin: 5px;
}
.col_shoplist > a:hover {
    opacity: .7;
}
.col_shoplist > a div img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

a.dec {
	text-decoration:underline;}



.col_3_our > div {
	width: 33.3%;
	padding-bottom: 10px;
	padding: 3px;
}


.col_3 > div {
	width: 33.3%;
	padding-bottom: 10px;
}
.col_3_systembox > div {
	width: 30%;
	padding: 30px 10px;
	border:#CCC 1px solid;
	margin: 1%;
	text-align:center;
}
.col_2 > div {
	width: 50%;
	padding:5px;
	    line-height: 2em;
}
.col_2nav > div.menu_n {
	width: 76%;
}
.col_1 > div {
	width: 100%;
	padding-bottom: 20px;
}

.pb05 {
	padding-bottom:5%;
}
.pb10 {
	padding-bottom:10% !important;
}

.pb20 {
	padding-bottom:20%;
}
.sub-btitle {
	margin: 5px 5px 10px 5px;
	font-weight:bold;
}
.sub-btitle02 {
	font-size: 20px;
	margin: 5px 5px 10px 5px;
	font-weight:bold;
	text-align:center;
}
/* ボタンリンク */

.cp_btn {
  display: inline-block;
  width: 300px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
}
.cp_btn::before,
.cp_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.cp_btn,
.cp_btn::before,
.cp_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.cp_btn {
  position: relative;
  z-index: 2;
  background-color: #fff;
	border: 1px solid #333;
  color: #333;
  line-height: 50px;
  overflow: hidden;
}
.cp_btn:hover {
  color: #fff;
}
.cp_btn::after {
  top: 0%;
	left: -100%;
  width: 100%;
  height: 100%;
}
.cp_btn:hover::after {
  left: 0;
  background-color: #333;
}

.btn-flat {
  border: #CCC 1px solid;
  display: inline-block;
  width: 140px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  margin-bottom: 5px;
  outline: none;
}
.btn-flat:hover {
	background: #009B40;
	color: white;
}


a.cp_btn02 {
	display: block;
	font-size: 20px;
	font-weight:bold;
	width: 260px;
	margin:0 auto;
	padding: 0.8em;
	background-color:#8B8888;
	text-align: center;
	text-decoration: none;
	color: #000;
	border: 2px solid #8B8888;
	transition: .4s;
}
a.cp_btn02:hover {
	background: #fff;
	border: 2px solid #8B8888;
	color: #8B8888;
}

/*　コンテンツ枠：共通　*/

.main-contents {
	padding-top: 70px;
    max-width: 1339px;
    margin: 0 auto;
}
.main-contents h3 {
	font-size: 3vw;
	color: #000;
	margin: 10px 0;
	margin-bottom: 10px;
	padding-top: 20px;
	font-weight:normal;
}
.swiper-pagination-bullet {
	width: 10px!important;
	height: 10px!important;
	background: #009B40!important;
}
.swiper-container {
/*height: 580px;*/
}



.our-area-inner {
	text-align:center;
}

.contents-in {
	width: 1000px;
	margin:0 auto;/*padding:20px 0 20px 0;*/
}


.news-area-top h2 {
	padding-top:90px;
}
.news-area-top {
	background-image:url(../images/bg_news_tt.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	height: 248px;
	background-size: contain;
}


.info {
	margin: 1em auto;
	padding: 0.7em 0em;
	line-height: 1.3;
}
.info dl {
	padding: 0.5em 1.5em;
	border-bottom: 1px solid #ccc;
}
.info dt {
	padding:0 0 5px 0;
	width: 6em;
}
/* ページ送り */
.news-area ul.pageNav01s {
	margin: 0 0 10px;
	padding: 12px;
	text-align: center;
}
.news-area ul.pageNav01s li {
	display: inline;
	margin: 0 1px;
	padding: 0;
}
.news-area ul.pageNav01s li span, .news-area ul.pageNav01s li a {
	display: inline-block;
	padding: 10px 18px;
	background: #fff;
	border: 1px solid #ccc;
	vertical-align: middle;
	text-decoration: none;
}
.news-area ul.pageNav01s li a:hover {
	background: #009B40;
	color:#FFF;
}
/* ページ：お知らせ */

.news-area-sec, .shop-area-sec {
}
.news-area-inner-cont h1, .shop-area-inner-cont h1 {
	font-size: 24px;
	margin-top: 10px;
	padding: 0px 0px 10px 0px;
	line-height:1.5em;
	border-bottom:#999 1px solid;
	font-weight:bold;
}

/* ページ：ごあいさつ */

.message-area-sec {
}
.message-area-inner-cont h1 {
	font-size: 24px;
	margin-top: 10px;
	padding: 0px 0px 10px 0px;
	line-height:2em;
	border-bottom:#999 1px solid;
	font-weight:bold;
	text-align:center;
}
.message-area-inner-cont h2, .csrbox h3, .orgbox h3 {
	font-size: 20px;
	margin: 30px 0 10px 0;
	padding: 10px 0px 10px 10px;
	line-height: 1.5em;
	background-color: #009B40;
	font-weight: bold;
	text-align: left;
	color: #fff;
}



/* ページ：プライバシーポリシー */

.privacy-area-sec {
}
.privacy-area-inner-cont h1 {
	font-size: 24px;
	margin-top: 10px;
	padding: 0px 0px 10px 0px;
	line-height:1.5em;
	border-bottom:#999 1px solid;
	font-weight:bold;
}
.privacy-area-inner-cont h2, .csrbox h3, .orgbox h3 {
	font-size: 20px;
	margin: 30px 0 10px 0;
	padding: 10px 0px 10px 10px;
	line-height: 1.5em;
	background-color: #009B40;
	font-weight: bold;
	text-align: left;
	color: #fff;
}
　 /*  ページ：採用*/


/* -- インナーコンテンツ及び各MV設定 -------------------- */
/*　パンくず：共通　*/	
.pankuzu-h {
	padding: 20px 0 40px 0;
	
}
.pankuzu {
	padding: 30px 0 25px 60px;
}

.news-area-inner, .other-area-inner,.other-area02-inner, .our-area-inner, .csrbox-area-inner, .company-area-inner, .company01-area-inner, .shoplist-area-inner {
	width: 1050px;
	margin:0 auto;
	padding:0px 0 32px;
    box-sizing: border-box;
}

.news-area-inner_mv h1, .other-area-inner_mv h1, .other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	font-weight:bold;
	margin-top: 0;
	/*height: 300px;*/
    font-size: 30px;
}
.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1 {
	color:#FFF;
	text-shadow: 5px 7px 7px #000;
}


.csrbox-area-inner_mv h1 {
	color:#FFF;
	text-shadow: 5px 7px 7px #000;
}
.company-area-inner_mv h1 {
	color:#FFF;
}

.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 5px 50px 5px 50px;
	margin: 0px 0 300px 0;
	background-color:#333333b0;
	display: inline-block;
}

/*　ページ：お知らせ記事一覧　*/
.news-area-top, .news-area, .other-area,.other-area02, .csr-area-top, .csr02-area-top, .csrbox-area-sec, .philosophy-area-sec, .organization-area-sec, .companyhis-area-sec, .companyhis02-area-sec, .companyhis03-area-sec, .recruit-area-sec, .shoplist-area-sec {
	background-repeat: no-repeat;
	max-width: 100%;
    padding: 89px 0 0;
    background-position-y: 89px;
}

.csr-area-inner-cont {
	width: 1050px;
	margin:0 auto;
	padding:5px 0 32px 0;
	position: absolute;
}

.csrbox-area-sec,.philosophy-area-sec,.organization-area-sec,.companyhis-area-sec,.companyhis02-area-sec,.companyhis03-area-sec,.recruit-area-sec,.csrbox-area-sec,.other-area,.other-area02,.shoplist-area-sec,.news-area {
	background-size: contain;
	width:1366px;
	margin: 0 auto;
}

.news-area {
    background-image: url(../images/news_h1.jpg);
}

.shoplist-area-sec {
	background-image:url(../images/shop/shop_h1.jpg);
}

.csrbox-area-sec {
	background-image:url(../images/other_h1.jpg);
}

.philosophy-area-sec {
	background-image:url(../images/company/philosophy_h1.jpg);
}
.organization-area-sec {
	background-image:url(../images/company/organization_h1.jpg);
	margin-bottom: 40px;
}
.companyhis-area-sec {
	background-image:url(../images/company/company_h1.jpg);
}
.companyhis02-area-sec {
	background-image:url(../images/company/summary_h1.jpg);
}
.companyhis03-area-sec {
	background-image:url(../images/company/history_h1.jpg);
}
.recruit-area-sec {
	background-image:url(../images/recruit/recruit_h1.jpg);
}
.csrbox-area-sec {
	background-image:url(../images/csr_h1.jpg);
}

.other-area {
	background-image:url(../images/corporate_slogan_h1.jpg)
}

.other-area02 {
	background-image:url(../images/our_business_h1.jpg)
}

.news-area-inner-cont, .privacy-area-inner-cont, .message-area-inner-cont {
	width: 1050px;
	margin:0 auto;
	padding:85px 0 32px 0;
}

p.company-b {
	margin: 0px 0px 10px 10px;
	font-weight:bold;
	line-height: 1.7em;
}
.tb-summary p {
	margin: 0px 0px 10px 0px;
	line-height: 1.7em;
}
.tb-history, .tb-summary {
	width: 100%;
	border-collapse: collapse;
	/*border-top: 1px solid #ccc;*/
/*border-right: 1px solid #ccc;*/
/*border-bottom: 1px solid #ccc;*/
    line-height: 2em;
}
.tb-history th, .tb-summary th {
	width:20%;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	color: #666666;
	border-bottom: 1px dotted #999;
}
.tb-history th {
	font-weight:normal;
}
.tb-history td, .tb-summary td {
	width: 75%;
	padding: 6px;
	border-bottom: 1px dotted #999;
}
.tb-shopol {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ccc;
}
.tb-shopol th {
	width:20%;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	color: #666666;
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
}
.tb-shopol td {
	width: 75%;
	padding: 6px;
	border-bottom: 1px solid #999;
}
.indent {
	padding-left: 29px;
}
.defaultlist, .defaultlist li {
	padding:0px;
	margin:0px;
	line-height: 2.0em;
}
.defaultlist li p.b {
	font-weight:bold;
	font-size:20px;
}
.defaultlist li p {
	font-size:16px;
}
.defaultlist li {
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
.company li {
	position:relative;
	padding-left:10px;
}
.sign-area {
	width: 250px;
	float:right;
	padding: 5px;
}
.sign-area p {
	margin: 5px 5px 20px 5px;
	line-height: 1.8em;
}
.sign-area .b {
	font-size: 18px;
	padding:0;
	margin:0;
}

.csrbox h2, .orgbox h2, .shoplist h2 {
	font-size: 30px;
	margin-top: 5%;
	padding: 0px 0px 20px 0px;
	line-height:1.5em;
	border-bottom:#999 1px solid;
	font-weight:bold;
	color:#333;
}
/* 店舗情報 */


.swiper-my-pagination .swiper-pagination-bullet {
	width: auto;
	height: auto;
	border-radius: 0;
}
.swiper-container-horizontal > .swiper-my-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0;
}
.swiper-my-pagination img {
	box-shadow: none;
	margin: 0;
	vertical-align: bottom;
}
.swiper-my-pagination {
	display: table;
}
.swiper-my-pagination {
	display: table;
	table-layout: fixed;
}
.swiper-my-pagination .swiper-pagination-bullet {
	display: table-cell;
	padding: 2px;
	background: transparent;
	opacity: 1;
}
.swiper-my-pagination .swiper-pagination-bullet-active {
	background: transparent;
	opacity: 0.6;
}
.tb-shop th {
	width:20%;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	color: #666666;
	border-bottom: 1px dotted #999;
}
.tb-shop th {
	font-weight:normal;
}
.tb-shop td {
	width: 75%;
	padding: 6px;
	border-bottom: 1px dotted #999;
}
.shoplist h2 {
	text-align:left;
}
.shoplist h3 {
	font-size: 20px;
	margin-top: -89px;
	padding: 99px 0px 10px 0px;
	line-height:1.5em;
	font-weight:bold;
	text-align:left;
}
.csrbox h3 {
	margin: 10px 0 20px 0;
}
.csrbox h4 {
	font-size: 20px;
	margin-top: 10px;
	padding: 0px 0px 10px 0px;
	line-height:1.5em;
	text-align: center;
}
/* CSR */

.csrbox-area-inner ol {
	line-height: 2.0em;
}
.saf {
	padding: 5px;
	margin-top: 10px;
	border: #CCC 1px solid;
}
/* ページ：店舗情報 */


.list-box {
	padding: 12px;
	background-color:#333;
	color:#FFF;
	clear:both;
	position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0.8;
	width: 100%;
}
.list-box a {
	color:#FFF;
}
.list-box a:hover {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
}

/* -- TOP コンテンツ -------------------- */
/* 社会貢献活動　CSR・採用 */


.csr-area-box, .csr02-area-box {
	margin:0 auto;
	padding: 5% 1%;
	color:#FFF;
	z-index:9999;
}
.csr-area-box h2, .csr02-area-box h2 {
	text-align:left;
}
.csr-area-box {
	position: relative;
	top: 15%;
	width: 40%;
	padding-right: 5%;
	    z-index: 1;
}
.csr02-area-box {
	position: relative;
	top: 12%;
	left:-26%;
	width: 30%;
	    z-index: 1;
}
.csr-area-top {
	background-image:url(../images/csr01.jpg);
	background-repeat: no-repeat;
	background-position: left 0px;
	height: 627px;
	margin-top: 50px;
	background-size: cover;
	margin: 90px auto;
}
.csr02-area-top {
	background-image:url(../images/csr02.jpg);
	background-repeat: no-repeat;
	background-position: right 0px;
	height: 674px;
	margin-top: 50px;
	margin-bottom: 100px;
	background-size: cover;
}
/*　ページ：私たちの想い　*/

.other-block {
	padding-bottom:40px;
}
.other-block p.large {
	padding: 20px 5%;
	font-size: 2.0rem;
	;
	line-height: 2.3em;
}
.other-area-inner h2,.other-area02-inner h2 {
	font-size: 30px;
	color: #000;
	padding: 20px 0;
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 1.5em;
}
.hr {
	border-bottom: #999 1px solid;
}
.other-area-inner h3 {
	font-size: 25px;
	text-align:center;
	padding-bottom: 20px;
}
.other-area-inner h4 {
	font-weight: bold;
	padding-top: 30px;
}
.sign {
	text-align:right;
}
.tb-recruit {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.tb-recruit th {
	width:20%;
	padding: 20px 10px;
	text-align: left;
	vertical-align: top;
	background: url(bg.jpg) repeat-x top left #eee;
	border-bottom: 1px dotted #999;
	border-left: 1px solid #ccc;
}
.tb-recruit td {
	width: 75%;
	padding: 6px;
	border-bottom: 1px dotted #999;
	border-left: 1px solid #ccc;
}
/* 組織 */

.recruit_box {
	/*padding: 5px 2% 5px 2%;*/
	/*background-color:#CCC;*/
	border-radius: 3px;
}





 @media screen and (max-width: 1200px) {
.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 15px 10px 15px 60px;
	margin: 0px 0 250px 0;
	background-color:#333333b0;
}
 .col_2nav > div.menu_n {
 width: 75%;
}
 .csr02-area-box {
 left:0%;
}
 .csr-area-box, .csr02-area-box {
 top: 50px;
 right: 0px;
 margin:0 auto;
 width: 90%;
}
}


 @media screen and (max-width: 1140px) {
 .col_2nav > div.menu_n {
 width: 70%;
}
}


 @media screen and (max-width: 1100px) {
.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 15px 10px 15px 60px;
	margin: 0px 0 200px 0;
	background-color:#333333b0;
}

 .csr-area-top {
 background-image: url(../images/csr01.jpg);
 background-repeat: no-repeat;
 background-position: left 0px;
 height: 627px;
 margin-top: 0px;
}
 .csr02-area-top {
 background-image: url(../images/csr02.jpg);
 background-repeat: no-repeat;
 background-position: right 0px;
 height: 674px;
 margin-top: 0px!important;
 margin-bottom: 0px!important;
}
 .csr-area-box, .csr02-area-box {
 top: 5%!important;
}
 .csr-area-box {
 padding: 3% 1%!important;
}
 .csr02-area-box {
 padding: 3% 1% 3% 3%!important;
}
 .col_2nav > div.menu_n {
 width: 68%;
}
 .news-area-inner, .other-area-inner,.other-area02-inner, .our-area-inner, .csrbox-area-inner, .company-area-inner, .company01-area-inner, .shoplist-area-inner {
 width: 100%;
 padding: 0 5%;
}

.contents-in {
 width: 100%;
}
}


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


.csr02-area-box {
 left: -20%!important;
}
}


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


 .news-area-inner, .other-area-inner,.other-area02-inner, .our-area-inner {
 width: 100%;
 margin:0 auto;
 padding: 0 5%;
}
.col_4 > div {
 width: 50%;
}
.col_shoplist > div {
 width: 100%;
 height:100%;
}
 .col_3 > div {
 width: 50%;
}

 .col_3_systembox > div {
 width: 48%;
}
 .col_2 > div {
 width: 100%;
 padding: 5px 0;
}
 .col_2 > div.slogan {
 width: 50%;
 padding: 5px 0;
}
	
/*　コンテンツ内枠　*/
.contents-in {
 margin:0 auto;
 padding:0px 0 20px 0;
}
 .in05 {
text-indent: 5%;
background-color:#333;
}
}


@media screen and (max-width: 900px) {
	.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 15px 10px 15px 60px;
	margin: 0px 0 180px 0;
	background-color:#333333b0;
}
    .col_shoplist > a div img {
        width: 100%;
        height: 150px;
        object-fit: cover;
    }
}


 @media screen and (max-width: 895px) {
 .col_2nav > div.menu_n {
 width: 65%;
}
}



@media screen and (max-width: 820px) {
.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 30px 10px 15px 40px;
	margin: 0px 0 150px 0;
	background-color:#333333b0;
}

    .news-area-top, .news-area, .other-area,.other-area02, .csr-area-top, .csr02-area-top, .csrbox-area-sec, .philosophy-area-sec, .organization-area-sec, .companyhis-area-sec, .companyhis02-area-sec, .companyhis03-area-sec, .recruit-area-sec, .shoplist-area-sec {
        padding: 75px 0 0;
        background-position-y: 75px;
    }
}


@media only screen and (max-width: 767px){
    .companyhis03-area-sec .col_3.pc {
        display: none !important;
    }
    .companyhis03-area-sec .col_3.sp {
        display: flex !important;
        display: -ms-flexbox !important; /* IE10 */
    }
}




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


.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	padding: 30px 10px 15px 40px;
	margin: 0px 0 140px 0;
	background-color:#333333b0;
	font-size:20px;
}
    .col_shoplist > a {
        width: 100%;
        margin-bottom: 20px;
    }
    .col_shoplist > a div img {
        width: 100%;
        height: auto;
        object-fit: cover;
    }
    .btn-flat {
        width: calc(100% / 3 - 5px) !important;
    }

.pankuzu {
 padding: 5px 0 25px 10px;
 font-size:11px;
}

.pankuzu-h {
	margin-top: 60px;
	padding: 20px 0;
	font-size: 11px;
	
}



/* タイトル各種 */
h1, .h1, .other-area-inner h3 {
 font-size: 5vw;
}
 .privacy-area-inner-cont h1 {
 font-size: 5vw;
}

 .message-area-inner-cont h1 {
 font-size: 5vw;
}
.info {
 margin: 0em auto;
 padding: 1.0em 0em;
 line-height: 1.8rem;
}
 .news-area-inner-cont h1, .shop-area-inner-cont h1 {
 font-size: 5vw;
 margin-top: 10px;
 padding: 0px 0px 10px 0px;
 line-height:1.5em;
 border-bottom:#999 1px solid;
 font-weight:bold;
}
.csrbox h2, .orgbox h2, .shoplist h2, .other-area-inner h2,.other-area02-inner h2 {
 font-size: 5vw;
 margin-top: 5%;
 padding: 0px 0px 10px 0px;
 font-weight: bold;
}
 .sub-btitle02 {
 font-size: 3.5vw;
}
.shoplist h3 {
 font-size: 3.2vw;
}
 .privacy-area-inner-cont h2, .csrbox h3, .orgbox h3 {
 font-size: 3vw;
}
 .other-area-inner h4 {
 font-size: 3.5vw;
}
.other-area-inner h2 {
 padding: 20px 0;
 margin-bottom: 10px;
 font-weight: bold;
}
 .news-area-inner, .other-area-inner,.other-area02-inner, .csr-area-inner-cont, .csrbox-area-inner, .company-area-inner, .company01-area-inner, .shoplist-area-inner{
 width: 100%;
 margin:0 auto;
 padding: 0 3%;
}

.news-area-inner h1, .other-area-inner h1, .other-area02-inner h1, .csrbox-area-inner h1, .company-area-inner h1, .company01-area-inner h1, .shoplist-area-inner h1 {
 padding-top: 10%;
 padding-bottom: 15%
}
 .csrbox h4 {
 font-size: 2.6vw;
 text-align: left;
 font-weight:bold;
}
.sub-btitle {
 margin: 0px 5px 0px 5px;
 font-size: 2.5vw;
}
.col_2 > div {
 line-height: 2em;
}

 .tb-recruit th, .tb-history th, .tb-summary th {
 width: 30%;
}
.list-box {
 padding: 3% 5px;
}
.defaultlist li p.b {
 font-size: 15px;
}
 .defaultlist li p {
 font-size: 14px;
}
 .other-block p.large {
 font-size: 4vw!important;
 padding: 10px 5%;
 font-size: 2.0rem;
 line-height: 1.8em;
}
 .our-area-inner {
 width: 100%;
 margin:0px auto 0 auto;
 padding:5% 0;
}
 .csr-area-top {
 background-image:url(../images/csr01_sp.jpg);
 background-color:#009B40;
 background-size: contain;
 margin-top: 50px;
 margin-bottom: 5%;
 height: 950px;
}
 .csr02-area-top {
 background-image:url(../images/csr02_sp.jpg);
 background-color:#009B40;
 background-size: contain;
 margin-bottom: 5%;
 height: 1050px;
}
 .csr-area-box {
 padding-top: 45%!important;
 left: -0%!important;
 width: 100%;
}
.csr02-area-box {
 padding-top: 45%!important;
 left: 0%!important;
 width: 100%;
}
 a.cp_btn {
 width: 80%;
}
 .right {
 float: left!important;
}
.news-area-top {
 background-image: url(../images/bg_news_tt_sp.jpg);
 background-position: center center;
 background-repeat: no-repeat;
 background-size: cover;
}
 .news-box-list {
 width: 90%!important;
 margin: auto;
}
}
 @media screen and (max-width: 540px) {


.f32 {
	font-size: 5vw;
}

.f32_message {
	font-size: 5.5vw;
}

.f30 {
	font-size: 4.5vw;
}

.f20 {
	font-size: 16px;
}	 

.news-area-inner_mv h1, .other-area-inner_mv h1,.other-area02-inner_mv h1, .company01-area-inner_mv h1, .shoplist-area-inner_mv h1,.company-area-inner_mv h1,.csrbox-area-inner_mv h1 {
	    padding: 10px 10px 10px 10px;
    margin: 0px 0 70px 0;
    background-color: #333333b0;
    font-size: 18px;
}
/* タイトル各種 */
h1, .h1 {
 font-size: 5vw;
}
 .sub-btitle {
 font-size: 4vw;
}
.privacy-area-inner-cont h1 {
 font-size: 5vw;
}
 .privacy-area-inner-cont h2, .csrbox h3, .orgbox h3 {
 padding: 5px 0 5px 5px;
 font-size: 4vw;
}

.message-area-inner-cont h1 {
 font-size: 5vw;
     line-height: 1.8em;
}
 .message-area-inner-cont h2, .csrbox h3, .orgbox h3 {
 padding: 5px 0 5px 5px;
 font-size: 4vw;
}

 .shoplist h3 {
 font-size: 4.2vw;
 margin: 10px 0px;
}
 .other-area-inner h2 {
 padding: 5px 0 10px 0;
    margin-bottom: 0px;
    line-height: 1.5em;
}
 .csrbox h4 {
 font-size: 4vw;
}
 .sign-area {
 width: 230px;
}
 .sub-btitle02 {
 font-size: 4vw;
}
/* お知らせ記事 */
.info dt {
clear: left;
float: left;
width: 100%;
}
.info dl {
 padding: 0.5em 0em;
}
.info dd {
margin: 0 0 0 0;
}
 .col_3 > div {
 width: 50%;
}

 .col_3_our > div {
 width: 100%;
}
 .col_3_systembox > div {
 width: 48%;
}
 .defaultlist li {
 margin: 5px 0px 15px 0px !important;
}
.other-block p.large {
 padding: 2% 0;
 font-size: 2.0rem;
 line-height: 2em;
}
 .main-contents h3 {
 font-size: 5vw;
}
.main-contents {
 padding: 2% 2% 0 2%;
}
 .contents-in {
 width: 100%;
 margin:0 auto;
 padding:5px 0 5px 0;
}
.saf {
 padding: 10px!important;
}
.news-box-list {
 width: 100%!important;
 margin: auto;
}
 .csr-area-top {
 background-image:url(../images/csr01_sp.jpg);
 background-color:#009B40;
 background-size: contain;
 margin-top: 50px;
 margin-bottom: 5%;
 height:627px;
}
 .csr02-area-top {
 background-image:url(../images/csr02_sp.jpg);
 background-color:#009B40;
 background-size: contain;
 margin-bottom: 5%;
 height:700px;
}
 .csr-area-box {
 padding-top: 40%!important;
 left: -0%!important;
 width: 100%;
}
.csr02-area-box {
 padding-top: 40%!important;
 left: 0%!important;
 width: 100%;
}
}


@media screen and (max-width: 480px) {
    .btn-flat {
        width: calc(100% / 2 - 3px) !important;
    }




    .news-area-inner h1, .other-area-inner h1, .other-area02-inner h1, .company01-area-inner h1, .shoplist-area-inner h1 {
        color:#FFF;
        text-shadow: 5px 7px 7px #000;
        font-weight:bold;
        margin-top: 0;
        padding-top: 5% !important;
        padding-bottom: 35% !important;
        font-size: 20px !important;
        margin-left: 0;
    }
    .csrbox-area-inner h1 {
        color:#FFF;
        text-shadow: 5px 7px 7px #000;
        font-weight:bold;
        margin-top: 0;
        padding-top: 5% !important;
        padding-bottom: 35% !important;
        font-size: 20px !important;
        margin-left: 0;
    }
    .company-area-inner h1 {
        color:#000;
        text-shadow: 5px 7px 7px #fff;
        font-weight:bold;
        margin-top: 0;
        padding-top: 5% !important;
        padding-bottom: 35% !important;
        font-size: 20px !important;
        margin-left: 0;
    }
}

@media screen and (max-width: 480px) {
    .news-area-top, .news-area, .other-area, .other-area02, .csr-area-top, .csr02-area-top, .csrbox-area-sec, .philosophy-area-sec, .organization-area-sec, .companyhis-area-sec, .companyhis02-area-sec, .companyhis03-area-sec, .recruit-area-sec, .shoplist-area-sec {
        padding: 67px 0 0;
        background-position-y: 67px;
        background-position-x: center;
        
    }
}
