@charset "utf-8";
/* 〜959px：タブレット以下共通
 *  SP縦　SP横　ipad　------------------------------ */
@media screen and (max-width: 959px){

/*-----------------------
clearfix
-----------------------*/
html { box-sizing: border-box;
	font-size: 62.5%;} *, *:before, *:after { box-sizing: inherit; }
body {
	 font-family: Noto Serif JP,eb-garamond,ten-mincho-text,serif;
	letter-spacing: 0.1em;
	}

#head:after,
#index_our_works_sp #sec04:after,
#index_our_works_sp #sec05:after,
#foot #foot_top:after,
#foot #foot_bottom ul:after,
#news #sub_column #side #latest ul li:after,
.section_contents:after	{
	content: ".";
	font-size: 0.1em;
	line-height: 0;
	display: block;
	height: 0.1px;
	visibility: hidden;
	clear: both;
	zoom:1;
	}
#head,
#index_our_works_sp #sec04,
#index_our_works_sp #sec05,
#foot #foot_top,
#foot #foot_bottom ul,
#news #sub_column #side #latest ul li,
.section_contents	{
	zoom:1;
	}

/*-----------------------
common
-----------------------*/
img {
	width: 100%;
	}
html {
	line-height: 2.0em;
	}

/*sp_display_none*/
.pc {
	display: none;
	}
.sp {
	display: block;
	}

/*btn*/
.btn {
	display: block;
	}

/*header*/
#head {
	padding: 15px;
	background-color: rgba(255,255,255,0.8);
	z-index: 999;
	position: relative;
	}
#head h1 {
	float: left;
	width: 70px;
	}
#head #submenu {
	float: right;
	padding: 20px 40px 0 0px;
	}
#head #submenu ul li {   
	display: inline;
	}
#head #submenu ul li a {
	color: #dfdfdf;
	padding: 5px 5px 5px 10px;
	}
#head #submenu ul li a.stay {
	color: #555;
	text-decoration: underline;
	}
/*#head .navDrawr h2 {
	border-bottom: 1px solid #999;
	padding: 30px;
	margin: 0 20px 30px;
	}*/
#head .navDrawr h2 {
    border-bottom: 1px solid #999;
    padding: 20px;
    margin: 0 20px 18px;
}
#head .navDrawr h2 img {
	width: 70px;
	}
#head .navDrawr p a {
	text-align: left;
	padding: 20px 30px;
	}
#head .navDrawr p a span {
	background: url(../img/shopping-cart.png) no-repeat left center;
	background-size: 28px auto;
	padding: 5px 0 5px 45px;
	}
#head .navDrawr ul.sp {
	padding-left: 20px;
	}
#head .navDrawr ul.sp a {
	opacity: 0.8;
	}
#head .navDrawr ul.sp li img {
	width: 25px;
	}

/*content*/
	
span.sp_break:before {
	content: "\A";
	white-space: pre;
	}

.sub p#top_btn {
	border-top: 1px solid #e0e0e0;
	}
.sub p#none {
	border-top: 1px solid #fff;
	}
p#top_btn {
	line-height: 10px;
	}
p#top_btn a {
	padding: 20px 0;
	}
p#top_btn img {
	width: 19px;
	}

#sub_visual h2 {
	font-size: 32px;
	background: url(../img/visual_headline.png) no-repeat center bottom;
	color: #fff;
	font-family: Noto Serif JP,eb-garamond,ten-mincho-text,serif;
	letter-spacing: 0.25em;
	padding-bottom: 20px;
	margin-bottom: 20px;
	line-height: 40px;
	}
#sub_visual h2 span {
	font-size: 25px;
	}
#sub_visual ul {
	display: table;
	margin: 0 auto;
	text-align: center;
	}
#sub_visual ul li {
	display: table-cell;
	font-size: 12px;
	color: #fff;
	text-align: center;
	padding: 0 5px;
	letter-spacing: 0.25em;
	}
#sub_visual ul li a {
	color: #fff;
	}

#pager ol li {
	display: inline;
	font-size: 15px;
	}
#pager ol li:last-child {
	font-size: 14px;
	}
#pager ol li  {
	padding: 8px;
	}
#pager ol li a {
	color: #dfdfdf;
	}
#pager ol li:last-child a {
	color: #555;
	}
#pager ol li a.stay,
#pager ol li a:hover {
	color: #555;
	text-decoration: underline;
	}

/*footer*/
#foot {
	background-color: #8c8c8c;
	}
#foot #foot_top {
	background-color: #979696;
	padding: 30px 35px;
	}
#foot #foot_top #site_info {
	float: left;
	width: 30%;
	text-align: center;
	margin: 4px auto 0;
	}
#foot #foot_top #site_info h2 img {
	width: 75px;
	}
#foot #foot_top #site_info dl {
	display: table;
	margin: 21px auto 0;
	text-align: center;
	}
#foot #foot_top #site_info dl dt {
	display: none;
	}
#foot #foot_top #site_info dl dd {
	display: table-cell;
	vertical-align: middle;
	padding: 0 8px;
	line-height: 10px;
	}
#foot #foot_top #site_info dl dd img {
	width: 17px;
	}
#foot #foot_top #shop_info {
	float: left;
	width: 70%;
	padding-left: 10px;
	padding-top: 3px;
	box-sizing: border-box;
	}
#foot #foot_top #shop_info h2 {
	font-size: 11px;
	letter-spacing: 0.2em;
	text-align: left;
	color: #fff;
	padding: 0 0 10px;
	}
#foot #foot_top #shop_info p {
	font-size: 10px;
	letter-spacing: 0.25em;
	line-height: 17px;
	text-align: left;
	color: #fff;
	}
#foot #foot_bottom {
	padding: 30px 20px;
	}
#foot #foot_bottom ul {
	}
#foot #foot_bottom ul li {
	width: 100%;
	text-align: center;
	margin-bottom: 25px;
	}
#foot #foot_bottom ul li:nth-child(odd) {
	}
#foot #foot_bottom ul li a {
	color: #fff;
	padding: 0 15px;
	}
#foot #foot_bottom ul li:nth-of-type(1) a,
#foot #foot_bottom ul li:nth-of-type(4) a,
#foot #foot_bottom ul li:nth-of-type(5) a {
	background: url(../img/foreign.png) no-repeat right center;
	background-size: 10px;
	padding-right: 15px;
	}

#foot #foot_bottom p {
	font-size: 8px;
	font-family: 'EB Garamond', serif;
	letter-spacing: 1.5px;
	color: #ededed;
	}

/*-----------------------
index
-----------------------*/
#index_main {
	background: url(../img/main01_sp.jpg) no-repeat right center;
	background-size: cover;
	padding: 19vh 8vw 21vh;
	}
#index_main h2 {
	font-size: 21px;
	line-height: 37px;
	letter-spacing: 0.25em;
	margin-bottom: 35px;
	color: #fff;
	font-weight: 700;
	}
#index_main p {
	font-size: 14px;
	line-height: 25px;
	letter-spacing: 0.25em;
	color: #fff;
	font-weight: 700;
	}
	
#index_main p.en {
        font-size: 13px;
        line-height: 23px;
        letter-spacing: 0.1em;
        color: #fff;
        font-weight: 700;
        text-align: justify;
    }

#index_news {
	width:100%;
	padding: 35px 25px 0px 25px;
	}
#index_news h2 {
	margin-bottom: 20px;
	}
#index_news h2 span {
	display: inline-block;
	font-size: 28px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}
#index_news ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	text-align: center;
	}
#index_news ul li {
	width: 50%;
	display: inline-flex;
	box-sizing: border-box;
	margin-bottom: 20px;
	}
#index_news ul li:nth-child(n+5) {
    display: none;
}
#index_news ul li:nth-child(2n) {
	padding-left: 10px;
}
#index_news ul li:nth-child(2n-1) {
	padding-right: 10px;
}
#index_news ul li a {
	position: relative;
	padding-bottom: 30px;
	border-bottom: 1px solid #e0e0e0;
	}
#index_news ul li dl {
	position: relative;
	}
#index_news ul li dl dt {
	border: 1px solid #e0e0e0;
	}
#index_news ul li dl dd {
	position: absolute;
	bottom: -10px;
	left: 5px;
	display: inline;
	color: #fff;
	padding: 0 10px;
	font-size: 10px;
	}
#index_news ul li.mono dl dd {
	background: rgba(155, 138, 94, 0.85);
	}
#index_news ul li.work dl dd {
	background: rgba(102, 132, 146, 0.85);
	}
#index_news ul li.publish dl dd {
	background: rgba(50, 51, 51, 0.85);
	}
#index_news ul li.info dl dd {
	background: rgba(141, 162, 139, 0.85);
	}
#index_news ul li.pressrelease dl dd {
  background: rgba(201,99,44, 0.85);
	}
#index_news ul li h3 {
	text-align: left;
	font-size: 15px;
	line-height: 21px;
	padding: 20px 0 10px;
	letter-spacing: 0.1em;
	text-align: justify;
	word-break : break-all;
	}
#index_news ul li p {
	text-align: left;
	font-size: 11px;
	line-height: 14px;
	text-align: justify;
	}
#index_news ul li p:last-child {
	position: absolute;
	bottom: 10px;
	right: 0;
	text-align: right;
	color: #464646;
	font-family: 'EB Garamond', serif;
	}
#index_news p.site_btn a {
	width: 82%;
	text-align: center;
	margin: 0 auto;
	font-size: 14px;
	border: 1px solid #555;
	position: relative;
	padding: 15px 0;
	letter-spacing: 0.25em;
	}
#index_news p.site_btn a span {
	position: absolute;
	bottom: 10px;
	right: -20px;
	}

#index_our_works_sp #sec01 {
	background: url(../img/index_our_works_sec01_body_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 150px 20px 50px;
	}
#index_our_works_sp #sec01 h3 {
	color: #fff;
	text-align: left;
	font-size: 20px;
	margin: 10px 0 50px;
	}
#index_our_works_sp #sec01 h4 {
	color: #fff;
	text-align: left;
	font-size: 11px;
	font-family: 'EB Garamond', serif;
	letter-spacing: 0.25em;
	}
#index_our_works_sp #sec01 p {
	color: #fff;
	text-align: left;
	font-size: 13px;
	line-height: 30px;
	letter-spacing: 0.25em;
	}
#index_our_works_sp #sec01 p:last-child {
	text-align: right;
	margin-top: 20px;
	}
#index_our_works_sp #sec01 p:last-child a {
	color: #fff;
	}
#index_our_works_sp #sectitle {
	padding: 40px 4% 0 4%;
}
#index_our_works_sp #sectitle h2 {
	margin-bottom: 15px;
	}
#index_our_works_sp #sectitle h2 span {
	display: inline-block;
	font-size: 28px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}
	
#index_our_works_sp #sec04 {
	padding: 0px 4% 0 4%;
}
#index_our_works_sp #sec04 dl {
	width: 50%;
	float: left;
	}
#index_our_works_sp #sec04 dl dd {
	font-size: 10px;
	display: block;
    margin: 2% 0 10% 0;
    padding: 0 7%;
	line-height: 13px;
}
#index_our_works_sp #sec04 span {
	font-size: 14px;
	display: block;
	margin: 0px 0px 12px;
	letter-spacing: 0.1em;
}
	
#index_our_works_sp #sec04 h2 {
	margin-bottom: 15px;
	}
#index_our_works_sp #sec04 h2 span {
	display: inline-block;
	font-size: 28px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}
#index_our_works_sp #sec04 dl:first-child dd {
	border-right: 1px solid #fff;
	}
	
#index_our_works_sp #sec05 {
	padding: 0 4% 0 4%;
}
#index_our_works_sp #sec05 dl {
	width: 50%;
	float: left;
	position: relative;
	}
#index_our_works_sp #sec05 dl:nth-of-type(1) dt {
	background-color: #fff;
	position: absolute;
	width: 100%;
  box-sizing: border-box;
	}
#index_our_works_sp #sec05 dl:nth-of-type(1) dt:before {
  content:"";
  display: block;
  padding-top: 0%;
}
#index_our_works_sp #sec05 dl:nth-of-type(1) dd {
  padding-top: 100%;
}
#index_our_works_sp #sec05 dl dt span{
	display: block;
	position: absolute;
	top:20px;
	box-sizing: border-box;
	padding: 0 0px;
	bottom:0;
	}
#index_our_works_sp #sec05 dl dt p{
	font-size: 14px;
}
#index_our_works_sp #sec05 dl dd {
	font-size: 10px;
	display: block;
    margin: 2% 0 10% 0;
    padding: 0 7%;
	line-height: 13px;
}
#index_our_works_sp #sec05 span {
	font-size: 14px;
	display: block;
	margin: 0px 0px 12px;
	letter-spacing: 0.1em;
}
#index_our_works_sp #sec05 dl:first-child dd {
	border-right: 1px solid #fff;
}
	
#index_ourworks {
	padding: 40px 0px 0px;
	width: 100%;
	margin: 0 auto;
    text-align: center;
	background-color: #fff;
	clear:both; 
	}
#index_ourworks #sec01 {
	max-width: 100%;
	margin: 0 auto;
	text-align: center;
	padding: 0 0 0px;
	background-color: #fff;
	clear:both; 
	}
#index_ourworks #sec01 h2 {
    display: inline-block;
    font-size: 28px;
    font-family: 'EB Garamond', serif;
    margin-top: 0px;
	margin-bottom: 25px;
	background: url(../img/headline.png) repeat-x center bottom;
}
	
#gallery {
    margin-top: 0px;
}

#index_shoplist {
	padding: 40px 0px 0px;
	background-color: #fff;
	}
#index_shoplist h2 {
	margin-bottom: 20px;
	}
#index_shoplist h2 span {
	font-size: 28px;
	display: inline-block;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}

#index_message {
	background-color: #ededec;
	padding: 40px 20px 50px;
	}
#index_message h2 span {
	font-size: 28px;
	display: inline-block;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 40px;
}
#index_message h3 {
	font-size: 16px;
	margin: 0 0 35px;
	text-align: center;
	}
#index_message p {
	font-size: 13px;
	line-height: 22px;
	text-align: justify;
	letter-spacing: 0.05em;
    margin: 0 15px;
	}
#index_message ul {
	display: table;
	margin: 45px auto 35px;
	text-align: center;
	}
#index_message ul li {
	display: table-cell;
	vertical-align: middle;
	}
#index_message ul li:nth-of-type(1) {
	background: url(../img/facebook.png) no-repeat left center;
	background-size: 14px;
	padding: 0 0 0 20px;
	}
#index_message ul li:nth-of-type(2) {
	color: #ccc;
	padding: 0 20px;
	}
#index_message ul li:nth-of-type(3) {
	background: url(../img/instagram.png) no-repeat left center;
	background-size: 14px;
	padding: 0 20px;
	}
#index_message p.site_btn a {
	width: 75vw;
	text-align: center;
	margin: 0 auto;
	font-size: 13px;
	border: 1px solid #555;
	position: relative;
	padding: 15px 0;
	letter-spacing: 0.25em;
	}
#index_message p.site_btn a span {
	position: absolute;
	bottom: 10px;
	right: -20px;
	}
	
#index_btn {
	background-color: #fff;
	padding: 30px 0 0 0;
	}	
#index_btn p.site_btn a {
	width: 75vw;
	text-align: center;
	margin: 0 auto;
	font-size: 13px;
	border: 1px solid #555;
	position: relative;
	padding: 15px 0;
	letter-spacing: 0.25em;
	}
#index_btn p.site_btn a span {
	position: absolute;
	bottom: 10px;
	right: -20px;
	}
	
#onlineshop_btn {
	background-color: #fff;
	padding: 30px 0 50px 0;
	}	
#onlineshop_btn p.site_btn a {
	width: 75vw;
    max-width: 360px;
    text-align: center;
    margin: 0 auto;
    font-size: 13px;
    border: 1px solid #555;
    position: relative;
    padding: 15px 10px 15px 20px;
    letter-spacing: 0.25em;
    background: url(../img/shopping-cart.png) no-repeat left center;
    background-size: 28px auto;
    background-position: 15% 12px;
	}
#onlineshop_btn p.site_btn a span {	
	position: absolute;
	bottom: 10px;
	right: -20px;
	}
	
#index_shoplist ul.sp li:nth-of-type(1) {
	background: url(../img/index_shoplist_bnr01_body_pc.jpg) no-repeat center center;
	background-size: cover;
	}
#index_shoplist ul.sp li:nth-of-type(2) {
	background: url(../img/index_shoplist_bnr02_body_pc.jpg) no-repeat center center;
	background-size: cover;
	}
#index_shoplist ul.sp li:nth-of-type(3) {
	background: url(../img/index_shoplist_bnr03_body_pc.jpg) no-repeat center center;
	background-size: cover;
	}
#index_shoplist ul.sp li:nth-of-type(4) {
	background: url(../img/index_shoplist_bnr04_body_pc.jpg) no-repeat center center;
	background-size: cover;
	}
#index_shoplist ul.sp li a{
	padding: 3vh 18vw;
}
#index_shoplist ul.pc li a:hover {
	background-color: rgba(243,243,243,0.3);
	}
	

/*-----------------------
news
-----------------------*/
#news #sub_visual {
	background: url(../img/news_visual_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 190px 0;
	}

#news.publish #sub_visual {
	background: url(../img/publish_subvisual_sp.jpg) no-repeat center center;
	}

#news.workshop #sub_visual {
	background: url(../img/workshop_subvisual_sp.jpg) no-repeat center center;
	}

#news.maitodiary #sub_visual {
	background: url(../img/maitodiary_subvisual_sp.jpg) no-repeat center center;
	}

#news #sub_column #main #news_list ul {
	padding: 35px 8px 0;
	}
#news #sub_column #main #news_list ul li {
	margin-bottom: 35px;
	padding:  0 8px;
	}
#news #sub_column #main #news_list ul li a {
	position: relative;
	padding-bottom: 30px;
	border-bottom: 1px solid #e0e0e0;
	}
#news #sub_column #main #news_list ul li dl {
	position: relative;
	}
#news #sub_column #main ul li dl dt {
	border: 1px solid #e0e0e0;
	}
#news #sub_column #main #news_list ul li dl dd {
	position: absolute;
	bottom: -10px;
	left: 5px;
	display: inline;
	color: #fff;
	padding: 0 10px;
	font-size: 10px;
	}
#news #sub_column #main #news_list ul li.mono dl dd {
	background: rgba(155, 138, 94, 0.85);
	}
#news #sub_column #main #news_list ul li.work dl dd {
	background: rgba(102, 132, 146, 0.85);
	}
#news #sub_column #main #news_list ul li.publish dl dd {
	background: rgba(50, 51, 51, 0.85);
	}
#news #sub_column #main #news_list ul li.info dl dd {
	background: rgba(141, 162, 139, 0.85);
	}
#news #sub_column #main #news_list ul li h3 {
	text-align: left;
	font-size: 16px;
	line-height: 21px;
	padding: 35px 0 10px;
	}
#news #sub_column #main #news_list ul li p {
	text-align: left;
	font-size: 11px;
	line-height: 14px;
	}
#news #sub_column #main #news_list ul li p:last-child {
	position: absolute;
	bottom: 10px;
	right: 0;
	text-align: right;
	color: #b6b6b6;
	font-family: 'EB Garamond', serif;
	}

#news #news_detail {
	padding: 0 20px 0;
	word-break: break-word;
	}
#news_detail_bread{
	display: none;
}
#news #news_detail_bread ul {
	display: table;
	margin: 0;
	text-align: left;
	padding: 20px;
	}
#news #news_detail_bread ul li {
	display: table-cell;
	font-size: 12px;
	color: #999;
	text-align: left;
	padding: 0 5px;
	}
#news #news_detail_bread ul li a {
	color: #999;
	}

#news #news_detail h2 {
	font-size: 18px;
	line-height: 34px;
	text-align: justify;
	font-weight: 600;
	}
#news #news_detail dl {
	display: table;
	margin: 20px 0 0;
	}
#news #news_detail dl dt {
	display: table-cell;
	vertical-align: middle;
	padding-right: 20px;
	}
#news #news_detail dl dt span {
	color: #fff;
	padding: 5px 10px;
	font-size: 10px;
	background: rgba(141, 162, 139, 1);
	}
#news #news_detail dl dt span a {
	color: #fff;
	}
#news #news_detail dl dt.mono span {
  background: rgba(155, 138, 94, 1);
	}
#news #news_detail dl dt.work span {
  background: rgba(102, 132, 146, 1);
	}
#news #news_detail dl dt.publish span {
  background: rgba(50, 51, 51, 1);
	}
#news #news_detail dl dt.info span {
  background: rgba(141, 162, 139, 1);
	}
#news #news_detail dl dt.pressrelease span {
  background: rgba(201,99,44, 0.85);
	}
#news #news_detail dl dd {
	display: table-cell;
	vertical-align: middle;
	font-family: 'EB Garamond', serif;
	font-size: 14px;
	color: #545555;
	}
#news #news_detail p {
	text-align: justify;
	font-size: 13px;
	line-height: 25px;
	margin: 20px 0;
	}
#news #news_detail p img {
	width: 100%;
	height: auto;
	}
#news #news_detail p a {
	color: #8e7e82;
	text-decoration: underline;
	}
#news #news_detail p a:hover {
	color: #bbb;
	}
#news #news_detail h1 {
	font-size: 18px;
	line-height: 34px;
	text-align: justify;
	font-weight: 600;
	}
#news #news_detail h2 {
	margin: 20px 0;
	border-left: 8px solid;
  display: block;
  line-height: 1;
  padding-left: 15px;
	}
#news #news_detail h3 {
	text-align: justify;
	font-size: 16px;
	line-height: 1;
	margin:15px 0;
	font-weight: 600;
	border-bottom: 1px solid;
	}

#news #news_detail h4 {
display: flex;
align-items: center;
margin: 0.5em 0em 0.4em;
font-weight: bold;
	}
#news #news_detail h5 {
display: flex;
align-items: left;
margin: 0em 0em -0.8em;
font-weight: bold;
font-size: 1.4rem;
	}
	
#news #news_detail h4 span {

}
#news #news_detail h4:after, #news #news_detail h4:before {
border-top: 1px solid;
content: "";
flex-grow: 1;
	}
#news #news_detail h4:before{
margin-right: 1rem;
}
#news #news_detail h4:after{
margin-left: 1rem;
}


#news #news_detail p.blockquote {
	background-color: #fbfaf9;
	margin: 20px 0;
	padding: 20px 30px;
	text-align: justify;
	color: #786c65;
	font-style: italic;
	}
#news #news_detail ul {
	margin-left: 20px;
	}
#news #news_detail ul li {
	text-align: left;
	list-style-type: disc;
	}
#news #news_detail #share {
	margin: 20px auto;
	}
#news #news_detail #share p {
	text-align: center;
	font-size: 12px;
	margin: 0 auto 10px;
	}
#news #news_detail #share ul {
	margin: 0 auto;
	}
#news #news_detail #share ul li {
	display: inline-block;
	text-align: center;
	list-style-type: none;
	padding: 5px;
	}
#news #news_detail #share ul li:nth-of-type(1) {
	border-left: 1px solid #e0e0e0;
	padding-left: 20px;
	}
#news #news_detail #share ul li:nth-of-type(2) {
	border-right: 1px solid #e0e0e0;
	padding-right: 20px;
	}

#news #article_navi_sp {
	margin: 40px 0;
	}
#news #article_navi_sp ul {
	display: table;
	width: 100%;
	padding: 0 20px 20px;
	box-sizing: border-box;
	}
#news #article_navi_sp ul li {
	display: table-cell;
	vertical-align: middle;
	font-size: 13px;
	}
#news #article_navi_sp ul li:nth-of-type(1) {
	text-align: left;
	}
#news #article_navi_sp ul li:nth-of-type(2) {
	text-align: right;
	}
#news #article_navi_sp p {
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
	}
#news #article_navi_sp p a {
	display: block;
	padding: 20px;
	}
#news #article_navi_sp p span {
	background: url(../img/list_icon.png) no-repeat left center;
	padding-left: 20px;
	}

#news #recommend {
	padding: 0 20px;
	}
#news #recommend h2 {
	margin-bottom: 20px;
	}
#news #recommend h2 span {
	display: inline-block;
	font-size: 28px;
	line-height: 22px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#news #recommend ul li {
	margin-bottom: 20px;
	}
#news #recommend ul li a {
	position: relative;
	padding-bottom: 30px;
	border-bottom: 1px solid #e0e0e0;
	}
#news #recommend ul li dl {
	position: relative;
	}
#news #recommend ul li dl dt {
	border: 1px solid #e0e0e0;
	}
#news #recommend ul li dl dd {
	position: absolute;
	bottom: -10px;
	left: 5px;
	display: inline;
	color: #fff;
	padding: 0 10px;
	font-size: 10px;
	}
#news #recommend ul li.mono dl dd {
	background: rgba(155, 138, 94, 0.85);
	}
#news #recommend ul li.work dl dd {
	background: rgba(102, 132, 146, 0.85);
	}
#news #recommend ul li.publish dl dd {
	background: rgba(50, 51, 51, 0.85);
	}
#news #recommend ul li.info dl dd {
	background: rgba(141, 162, 139, 0.85);
	}
#news #recommend ul li h3 {
	text-align: left;
	font-size: 16px;
	line-height: 21px;
	padding: 20px 0 10px;
	font-weight: normal;
	}
#news #recommend ul li p {
	text-align: left;
	font-size: 11px;
	line-height: 14px;
	font-weight: 300;
	}
#news #recommend ul li p:last-child {
	position: absolute;
	bottom: 10px;
	right: 0;
	text-align: right;
	color: #b6b6b6;
	font-family: 'EB Garamond', serif;
	}

	#side input[type="image"]{
		width:18px!important;
	}

#news #sub_column #side #latest {
	margin: 40px 20px;
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 30px;
	}
#news #sub_column #side #latest h2 span {
	display: inline-block;
	font-size: 28px;
	line-height: 22px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 25px;
	}
#news #sub_column #side #latest ul li {
	margin-bottom: 20px;
	position: relative;
	}
#news #sub_column #side #latest ul li h3 {
	float: left;
	border: 1px solid #e0e0e0;
	width: 25%;
	box-sizing: border-box;
	}
#news #sub_column #side #latest ul li dl {
	float: left;
	width: 75%;
	padding: 0 10px;
	box-sizing: border-box;
	}
#news #sub_column #side #latest ul li dl dt {
	text-align: left;
	font-size: 14px;
	line-height: 22px;
	}
#news #sub_column #side #latest ul li dl dd {
	color: #b6b6b6;
	font-family: 'EB Garamond', serif;
	font-size: 11px;
	position: absolute;
	bottom: 0;
	right: 0;
	}

#news #sub_column #side #category {
	margin: 40px 20px;
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 30px;
	}
#news #sub_column #side #category h2 span {
	display: inline-block;
	font-size: 28px;
	line-height: 22px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 25px;
	}
#news #sub_column #side #category ul li {
	text-align: left;
	position: relative;
	margin-bottom: 10px;
	font-size: 14px;
	}
#news #sub_column #side #category ul li a {
	position: relative;
	padding: 10px 5px 0;
	}
#news #sub_column #side #category ul li a:after {
	font-family: 'Material Icons';
	content: "\e315";
	font-size: 20px;
	position: absolute;
	right: 0;
	top: 10px;
	}

#news #sub_column #side #archive {
	margin: 40px 20px;
	padding-bottom: 20px;
	}
#news #sub_column #side #archive h2 span {
	display: inline-block;
	font-size: 28px;
	line-height: 22px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 25px;
	}
#news #sub_column #side #archive ul li {
	text-align: left;
	position: relative;
	margin-bottom: 10px;
	font-size: 14px;
	}
#news #sub_column #side #archive ul li a {
	position: relative;
	padding: 10px 5px 0;
	}
#news #sub_column #side #archive ul li a:after {
	font-family: 'Material Icons';
	content: "\e315";
	font-size: 20px;
	position: absolute;
	right: 0;
	top: 10px;
	}
#news #sub_column #side #archive ul span {
	display: block;
	text-align: center;
	font-size: 14px;
	border: 1px solid #555;
	padding: 10px 0;
	letter-spacing: 0.25em;
	margin: 15px auto 0;
	width: 277px;
	}
#news #sub_column #side #archive ul span:hover {
	border: 1px solid #555;
	background-color: #555;
	color: #fff;
	}

#news #sub_column #side #search_sp {
	padding: 0 20px 40px;
	}
#news #sub_column #side #search_sp dl {
	width: 100%;
	display: table;
	margin: 0 auto;
	text-align: center;
	}
#news #sub_column #side #search_sp dl dt {
	display: table-cell;
	vertical-align: middle;
	text-align:  left;
	border: 1px solid #e0e0e0;
	}
#news #sub_column #side #search_sp dl dt input {
	width: 80%;
	border: none;
	font-size: 16px;
  transform: scale(0.8);
	padding: 8px 10px;
	}
#news #sub_column #side #search_sp dl dd {
	display: table-cell;
	vertical-align: middle;
	background-color: #555;
	text-align: center;
	}
#news #sub_column #side #search_sp dl dd input {
	border: none;
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	padding: 7px;
  box-sizing: unset;
	}

/*-----------------------
news_detail ものつくりのこと、よみもの用 SP
-----------------------*/
#news #news_detail #post_free {
	font-family: 游ゴシック体, YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4rem;
	text-align: left;
	text-align: justify;
	letter-spacing: 0.04em;
	line-height: 2em;
	display:inline-block;
			}
	
#news #news_detail #post_free img {
	width: 100%;
	height: auto;
	}
#news #news_detail #post_free p {
	margin-top: 0.6em;
    margin-bottom: 0.6em;
	font-size: 1.4rem;
	line-height: 2em;
	text-align: left;
	text-align: justify;
	}
/*写真下の注釈*/
#news #news_detail #post_free span.small {
	font-size: 1.2rem;
	text-align: left;
	text-align: justify;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-top: 0.6em;
    margin-bottom: 0.6em;
	display:inline-block;
	color: #999;
			}
/*ミドル文字*/
#news #news_detail #post_free span.middle {
	font-size: 1.3rem;
	text-align: left;
	text-align: justify;
	letter-spacing: 0.1em;
	line-height: 1.6;
	margin-top: 0.6em;
    margin-bottom: 0.6em;
	display:inline-block;
	color: #666;
			}
	
/*引用*/
#news #news_detail #post_free blockquote {
    margin: 1em 0 1em 0;
	padding: 1em 1.5em 1em;
    border: 1px solid #e0e0e0;
    box-shadow: none;
    position: relative;
}
#news #news_detail #post_free blockquote p {
	font-size:1.3rem ;
}
/*div plofile*/
.plofile {
    margin: 0 0 1em 0;
    padding: 1em 1em 1em;
    border: none;
    position: relative;
	display: table;
    width: 100%;
    box-sizing: border-box;
	background: #f5f5f5;
}
/*div リンク先 文字のみ*/
.link {
    margin: 1em 0 1em 0;
	padding: 1em 1.5em 1em;
    border: solid 1px #e0e0e0;
    border-radius: 3px;
    position: relative;
	display: table;
    width: 100%;
    box-sizing: border-box;
	background: #fafafa;
}
/*div リンク 文字のみ*/
.box-gray {
	border: solid 1px #e0e0e0;
	background: #fafafa;
}

/*div リンク タイトル写真付*/
.box_link {
	box-sizing:border-box;
	display: inline-block;
	padding: 1em 1em 0.9em;
    position: relative;
    margin: 0.2em 0 0.2em;
    border: solid 1px #93b881;
    border-radius: 3px;
}
.box_link .box-title {
    position: absolute;
    display: inline-block;
    top: -8px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
	font-size: 1.4rem;
    background: #FFF;
    color: #93b881;
    font-weight: bold;
}
.box_link .box-title:before {
    font-family: "Font Awesome 5 Free";
    content: "\f35d";
    font-weight: 900;
    color: #93b881;
    margin-right: .5em;
}
.box_link .link-title {
    display: inline-block;
    padding: 0 0.6em;
    line-height: 1.4em;
    font-weight: bold;
	width: 100%;
}
.box_link .link-text {
	display: inline-block;
    padding: 0 0.6em;
	font-size: 1.4rem;
	line-height: 1.9em;
	width:100%;
	vertical-align:  top;    /* 下揃えにする */
    box-sizing: border-box;     /* 余白や線を幅と高さに含める */
	float:left;
}
.box_link .linkimg {
display: inline-block;
	width:30%;
	vertical-align:  top;    /* 下揃えにする */
    box-sizing: border-box;     /* 余白や線を幅と高さに含める */
	float:left;
}
.link-right {
	width:70%!important;
}
.box_link img {
    width:100%;
}
.box_link p {
    margin: 0; 
    padding: 0;
}
.box_link a {	
	background: linear-gradient(transparent 90%, #e0e0e0 90%);
	line-height: 1.4em;
	}
.box-gray {
	border: solid 1px #e0e0e0;/*枠と背面をグレーに*/
}
.box-bggray {
	background: #fafafa;/*背面をグレーに*/
}
.title-gray {
	color: #e0e0e0;
}
.box-blue {
	border: solid 1px #c1e0ff;/*枠ブルーに*/
}
.title-blue{
	color: #c1e0ff!important;
}
.title-blue:before {
    color: #c1e0ff!important;
}
	
.tbcell {
    display: table-cell;
}
	
#news #news_detail #post_free h2 {
	font-size: 1.8rem;
    line-height: 1.2em;
    font-weight: bold;
    border-left: none;
    background-color: #fff;
    position: relative;
	margin: 1.6em 0 1em;
    padding: 1em 0.6em 1em;
    border-top: 1px solid #464646;
    border-bottom: 1px solid #464646;
}
/*#news #news_detail #post_free h2 {
	font-size: 1.375rem;
    line-height: 1.3;
    font-weight: bold;
    border-left: 6px solid #464646;
    background-color: #f5f5f5;
    position: relative;
    margin: 3em 0 1.5em;
    padding: 1.1em 1.2em 1em;
}*/
	
/*#news #news_detail #post_free h2 {
	font-size: 1.375rem;
    line-height: 1.3;
    font-weight: bold;
	border-left: none;
	background-color: #d4dcd6;
    position: relative;
    margin: 3em 0 1.5em;
    padding: 1.1em 1.2em 1em;
}
#news #news_detail #post_free h2:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #d4dcd6;
  width: 0;
  height: 0;
}*/

#news #news_detail #post_free h3 {
	font-size: 1.6rem;
    line-height: 1.2em;
    font-weight: bold;
	margin: 1.2em 0 0.4em;
  padding: 0.25em 0.4em;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #d3cbc6;/*左線*/
	border-bottom:none;
	}

#news #news_detail #post_free h4 {
	font-size: 1.4rem;
	margin: 0.8em 0 0em;
    padding-left: 0.8em;
    position: relative;
	text-align: left;
	font-weight: bold;
}
#news #news_detail #post_free h4 span{
    position: relative;
    z-index: 2;
    display: inline-block;
	margin: 0em 0em 0em;
    padding: 0 0.5em;
    background-color: #fff;
    text-align: left;
	font-size: 1.4rem;
    font-weight: bold;
}
#news #news_detail #post_free h4:before{
	all: initial;
   font-family:"Font Awesome 5 Free";
   content:"\f13a";
   font-weight:900;
   color:#93b881;/*タイトル横のアイコンの色*/
   margin-right:.5em;
}
#news #news_detail #post_free h4:after{
	all: initial;
}
#news #news_detail #post_free p.boxh4{
	margin-top: 0em;
	padding-left: 0.8em;
	padding-right: 0.8em;
}
	
/*YOUTUBE埋め込み*/	
#news #news_detail .video-container {
    position: relative;
    max-width: 100%;
    height: auto;
    overflow: hidden;
}
#news #news_detail .video-inner {
    position: relative;
    padding-bottom: 56.25%; 
}
#news #news_detail .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
	
/*-----------------------
EZ-TOC 目次
-----------------------*/
/*全体*/
#news #news_detail #ez-toc-container {
	margin: 1.5em auto;
	width: 100%;
   padding: 1em 2em 1em;
	background-color:#fafafa;
	font-size: 1.4rem;
   -webkit-box-shadow: none;
   box-shadow: none;
	box-sizing: border-box;
	border-radius: 3px;
   border: none;/*元々の線の削除*/
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
	border-left: 1px solid #e0e0e0;
	border-right: 1px solid #e0e0e0;
	line-height: 1.8em;
}

/*タイトル*/
#news #news_detail #ez-toc-container p.ez-toc-title {
	font-size: 1.6rem;
   font-weight: 900;
   color:#464646;
	text-align: left;
	margin: 0px 0px 4px 0px;
}
	
#news #news_detail #ez-toc-container p.ez-toc-title:before{
   font-family:"Font Awesome 5 Free";
   content:"\f0ca";
   font-weight:900;
   color:#464646;/*タイトル横のアイコンの色*/
   margin-right:.5em;
}

/*表示・非表示ボタン*/
a.ez-toc-pull-right.ez-toc-btn.ez-toc-btn-xs.ez-toc-btn-default.ez-toc-toggle {
   border: none;
   box-shadow: none;
	border-radius: 10%;/*ボタンを丸く*/
	padding: 1.3em;
   margin-left:50px;
   background:white;
}
/*カウンターの点を消す*/
#ez-toc-container .ez-toc-list, #ez-toc-container .ez-toc-list ul {
    list-style: none;
    margin-left: 0;
}
/*見出しリスト全体*/
#news #news_detail #ez-toc-container ul.ez-toc-list {
	margin-left: 1.3em;}

/*-----------------------
about
-----------------------*/
#about #sub_visual {
	background: url(../img/about_visual_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 190px 0;
	}

#about_message {
	background-color: #ededec;
	padding: 50px 20px 55px;
	}
#about_message h2 {
	font-size: 2.0rem;
	letter-spacing: 0.2em;
	margin: 0 0 35px;
	text-align: center;
	line-height: 34px;
	}
#about_message p {
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: justify;
	letter-spacing: 0.2em;
	}

#about_company {
	padding: 0 0 45px;
	background-color: #ededec;
	}
#about_company h2 {
	font-size: 1.6rem;
	background-color: #fff;
	padding: 45px 0;
	}
#about_company h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#about_company h3 {
	font-size: 1.6rem;
	margin: 45px auto 20px;
	}
#about_company h3:nth-of-type(3) {
	margin: 25px auto 20px;
	}
#about_company .tb_wrap {
	padding: 0 20px 15px;
	}
#about_company table th {
	font-size: 1.2rem;
    line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px solid #e0e0e0;
	width: 29%;
	padding: 20px 5px;
	box-sizing: border-box;
	}
#about_company table td {
	font-size: 1.2rem;
    line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 5px;
	box-sizing: border-box;
	}
#about_company table td span.sub {
	display: block;
	font-size: 1.0rem;
	line-height: 1.6em;
	font-family: 'EB Garamond', serif;
	letter-spacing: 0.25em;
	}
#about_company ul {
	text-align: center;
	margin: 30px auto;
	width: 70%;
	}
#about_company ul li {
	margin-bottom: 4.0rem;
	}
#about_company p.site_btn a {
	width: 80%;
	text-align: center;
	margin: 0 auto;
	font-size: 1.4rem;
	border: 1px solid #555;
	position: relative;
	padding: 15px 0;
	letter-spacing: 0.25em;
	}
#about_company p.site_btn a span {
	position: absolute;
	bottom: 10px;
	right: -20px;
	}

#about_people h2 {
	font-size: 1.6rem;
	padding: 35px 0;
	}
#about_people h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#about_people #half_figure_left:before {
  content: "";
  display: block;
	}
#about_people #half_figure_left:before {
  background: url(../img/about_people01.jpg) no-repeat center center;
  background-size: cover;
	height: 320px;
	}
#about_people #half_figure_right:before {
  content: "";
  display: block;
	}
#about_people #half_figure_right:before {
  background: url(../img/about_people02.jpg) no-repeat center center;
  background-size: cover;
	height: 320px;
	}
#about_people .section_contents {
	padding: 30px 20px 50px;
	}
#about_people .section_contents h3 {
	font-size: 1.6rem;
	text-align: left;
	}
#about_people .section_contents h3 span {
	font-size: 1.2rem;
	}
#about_people .section_contents h4 {
	font-size: 1.2rem;
	text-align: left;
	color: #9e9e9e;
	font-family: 'EB Garamond', serif;
	margin: 0 0 20px;
	}
#about_people .section_contents p {
	text-align: left;
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: justify;
	}

#about_naturaldye {
	padding-bottom: 50rem;
	}
#about_naturaldye h2 {
	background-color: #f7f7f7;
	padding: 35px 0;
	}
#about_naturaldye h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#about_naturaldye h3 {
	font-size: 1.8rem;
	line-height: 34px;
	margin: 50px auto 35px;
	}
#about_naturaldye p:nth-of-type(3) {
	text-align: justify;
	font-size: 1.3rem;
	line-height: 1.7;
	padding: 0 8vw;
	}
#about_naturaldye p.sp:last-child {
	margin: 40px 0 0;
	padding: 0 8vw;
	}

#about_knitting h2 {
	background-color: #f7f7f7;
	padding: 35px 0;
	}
#about_knitting h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#about_knitting h3 {
	font-size: 1.6rem;
	line-height: 22px;
	padding: 35px 10px;
	}

#about_knitting #half_figure_left:before {
  content: "";
  display: block;
	}
#about_knitting #half_figure_left:before {
  background: url(../img/about_knitting01.jpg) no-repeat center center;
  background-size: cover;
	height: 160px;
	}
#about_knitting #half_figure_right:before {
  content: "";
  display: block;
	}
#about_knitting #half_figure_right:before {
  background: url(../img/about_knitting02.jpg) no-repeat center center;
  background-size: cover;
	height: 160px;
	}
#about_knitting .section_contents {
	padding: 30px 20px 50px;
	}
#about_knitting .section_contents p {
	text-align: justify;
	font-size: 1.3rem;
	line-height: 22px;
	}

	.img-mb{
		margin-bottom: 20px;
	}
/*-----------------------
naturaldye
-----------------------*/
#naturaldye #sub_visual {
	background: url(../img/about_visual03_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 189px 0 149px 0;
	}

#naturaldye_naturaldye {
	padding-bottom: 50px;
	}
#naturaldye_naturaldye h2 {
	background-color: #f7f7f7;
	padding: 35px 0;
	}
#naturaldye_naturaldye h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#naturaldye_naturaldye h3 {
	font-size: 2.0rem;
	line-height: 34px;
	margin: 50px 10vw 35px;
	}
#naturaldye_naturaldye p {
	text-align: justify;
	font-size: 1.3rem;
	line-height: 1.7;
	padding: 0 19px 0 20px;
	letter-spacing: 0.2em;
	}
#naturaldye_naturaldye p.sp:last-child {
	margin: 40px 0px 0;
	}
/*-----------------------
Freepage
-----------------------*/
#freepage #sub_visual_oemdye {
	background: url(../img/about_visual_oemdye_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#contact .sub_visual_oemdye {
	background: url(../img/about_visual_orderworkshop_sp.jpg) no-repeat center center　!important;
	}
#freepage #sub_visual_orderworkshop {
	background: url(../img/about_visual_orderworkshop_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#contact .sub_visual_orderworkshop {
	background: url(../img/about_visual_orderworkshop_sp.jpg) no-repeat center center　!important;
	}
#freepage #sub_visual_knit {
	background: url(../img/about_visual_knitting_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#freepage #sub_visual_weaving {
	background: url(../img/about_visual_weaving_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#freepage #sub_visual_naturaldye {
	background: url(../img/about_visual_naturaldye_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#freepage #sub_visual_care {
	background: url(../img/about_visual_care_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#freepage #sub_visual_sakuradyeing {
	background: url(../img/about_visual_sakuradyeing_sp.jpg) no-repeat center center;
	background-size: cover;
    padding: 189px 0 149px 0;
	}
#freepage #sub_visual_recruit {
	background: url(../img/about_visual_recruit_sp.jpg) no-repeat center center;
	background-size: cover;
	}
#freepage #sub_visual{
	}

#naturaldye_naturaldye {
	padding-bottom: 50px;
	}
#freepage_inner h2 {
	background-color: #f7f7f7;
	padding: 35px 0;
	}
#freepage_inner h2 span {
	display: inline-block;
	font-size: 28px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#freepage_inner h3 {
	font-size: 20px;
	line-height: 34px;
	margin: 50px 10vw 35px;
	}
#freepage_inner p {
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	padding: 0 19px 0 20px;
	letter-spacing: 0.2em;
	}
#freepage_inner p.sp:last-child {
	margin: 40px 0px 0;
	}
/*-----------------------
デフォルトテンプレート
-----------------------*/
#dt {
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.1em;
	padding: 0 0;
    word-break: break-word;
	}	
	
#dt_inner_nomal h2 {
	font-size: 20px;
    line-height: 34px;
    margin: 45px auto 25px;
    text-align: left;
    letter-spacing: 0.25em;
	}

#dt_inner_nomal h3 {
	font-size: 16px;
	line-height: 1.7;
	margin: 95px auto 30px;
	letter-spacing: 0.25em;
	}
#dt_inner_nomal p{
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	padding: 5px 0;
	letter-spacing: 0.1em;
	}
#dt_inner_nomal p.dtsmall{
	font-size: 10px;
	padding: 4px 0vw;
	letter-spacing: 0em;
	line-height: 1.2;
	}
	
#dt_inner_left {
	font-family: "TBGothic SL", "TBGothicSL Std", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	text-align: left;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.1em;
	padding: 0 0;
    word-break: break-word;
	}
#dt_inner_left h2 {
    margin: 45px 0 25px;
    font-size: 20px;
    text-align: left;
    padding-bottom: 5px;
    border-bottom: 1px solid #e0e0e0;
}
#dt_inner_left h3 {
	font-size: 16px;
	font-weight:bold;
	line-height: 1.7;
	margin: 30px auto 5px;
	letter-spacing: 0.2em;
	}
#dt_inner_leftt p{
	font-size: 16px;
	line-height: 32px;
	padding: 0 0;
	text-align: left;
	margin: 5px 0;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
	}
#dt_inner_left p.pc{
	text-align: center;
	margin: 80px auto 120px;
	}
/*-----------------------
shoplist
-----------------------*/
#shoplist #sub_visual {
	background: url(../img/shoplist_visual_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 190px 0;
}
#shoplist {
	padding-bottom: 50px;
}
#shoplist iframe{
	width: 100%;
	height: 300px;
}
#shoplist h2 span {
	display: inline-block;
	font-size: 28px;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
}
#shoplist h3 span {
	display: inline-block;
	font-size: 22px;
	background: url(../img/headline.png) repeat-x center bottom;
}
#shoplist h3 {
	font-size: 18px;
	margin: 50px auto 25px;
}
#shoplist h4 {
	font-size: 20px;
	line-height: 34px;
	margin: 45px auto 15px;
}
#shoplist p {
	text-align: left;
	font-size: 13px;
	line-height: 1.7;
	padding: 15px 20px;
	letter-spacing: 0.15em;
	text-align: justify;
	}
#shoplist .shoplist-wholesale p{
	font-size: 11px;
	line-height: 18px;
	text-align: left;
	letter-spacing: 0.25em;
	padding: 10px 20px;
}
	#shoplist .shoplist-wholesale a{
	font-size: 13px;
	line-height: 20px;
	letter-spacing: 0.25em;
}

/*-----------------------
contact
-----------------------*/

.info-message.send-completed {
    margin: 50px 20px;
    font-size: 18px;
}

#contact #sub_visual {
	background: url(../img/about_visual03_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 190px 0;
}

#contact .contact-message{
    padding: 20px 6vw;
    font-size: 13px;
    line-height: 22px;
    text-align: justify;
    letter-spacing: 0.20em;
}

#contact table th, #contact table td {
    text-align: left;
    font-weight: normal;
    padding: 15px 0 0;
	display: block;
	letter-spacing: 0.02em;
}

#contact table tr td:last-child {
    padding-bottom: 20px;
}

#contact table tr{
    /*border-top: 1px #ddd solid;*/
	border-top:none;
}

#contact input,#contact textarea {
	width: 100%;
	box-sizing: border-box;
}

#contact input[type="checkbox"]{
	width:22px !important;
}

#contact input[type="reset"]{
	margin-top: 0;
}

#contact .ajax-loader{
	width: 16px;
}

/*-----------------------
ourworks
-----------------------*/
#ourworks #sub_visual {
	background: url(../img/ourworks_visual_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 189px 0 149px 0;
	}

#ourworks_message {
	background-color: #ededec;
	padding: 45px 8vw;
	}
#ourworks_message h3 {
	font-size: 20px;
	line-height: 34px;
	margin: 0 auto 35px;
	text-align: center;
	letter-spacing: 0.25em;
	}
#ourworks_message p {
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.2em;
	}

#ourworks_maito h2 {
	background: url(../img/ourworks_visual05_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 139px 0;
	margin-top: 0px;
	}
#ourworks_maito h2 img {
	width: 72%;
	display: inline-block;
	}
#ourworks_maito h3 {
	font-size: 18px;
	line-height: 34px;
	letter-spacing: 0.25em;
	margin: 5vh auto 4vh;
	}
#ourworks_maito p {
	font-size: 13px;
	line-height: 1.7;
    margin: 20px 19px 40px 20px;
	text-align: justify;
	}
#ourworks_maito dl {
	margin: 0 20px 30px;
	}
#ourworks_maito dl dt {
	font-size: 13px;
	line-height: 20px;
	text-decoration: underline;
	margin: 25px auto 5px;
	text-align: left;
	}
#ourworks_maito dl dd {
	font-size: 11px;
	line-height: 15px;
	text-align: justify;
	}
#ourworks_maito p.sp {
	background: url(../img/ourworks_bnr_body_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 50px 0;
	text-align: center;
	margin: 0 15px;
	}
#ourworks_maito p.sp img {
	width: 63%;
	display: inline-block;
	}
	
#ourworks_botanicalleather h2 {
	background: url(../img/ourworks_visual06_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 128px 0;
	margin-top: 40px;
	color: #fff;
	}
#ourworks_botanicalleather h2 span {
	display: inline-block;
	font-size: 28px;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}
#ourworks_botanicalleather h2 img {
	width: 68%;
	margin: 0 0 0 3%;
	display: inline-block;
	}
#ourworks_botanicalleatherb h3 {
	font-size: 18px;
	line-height: 34px;
	letter-spacing: 0.15em;
	margin: 35px auto 30px;
	}
#ourworks_botanicalleather p {
	font-size: 13px;
	line-height: 1.7;
    margin: 20px 19px 40px 20px;
	text-align: justify;
	}
#ourworks_botanicalleather dl {
	margin: 0 20px 55px;
	}
#ourworks_botanicalleather dl dt {
	font-size: 13px;
	line-height: 20px;
	text-decoration: underline;
	margin: 0px auto 5px;
	text-align: left;
	}
#ourworks_botanicalleather dl dd {
	font-size: 11px;
	line-height: 15px;
	text-align: justify;
	}
#ourworks_botanicalleather p.sp {
	background: url(../img/ourworks_bnr_body_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 50px 0;
	text-align: center;
	margin: 0 15px;
	}
#ourworks_botanicalleather p.sp img {
	width: 63%;
	display: inline-block;
	}

#ourworks_tonelab h2 {
	background: url(../img/ourworks_visual03_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 141px 0;
	margin-top: 55px;
	}
#ourworks_tonelab h2 img {
	width: 68%;
	margin: 0 0 0 3%;
	display: inline-block;
	}
#ourworks_tonelab h3 {
	font-size: 18px;
	line-height: 34px;
	letter-spacing: 0.15em;
	margin: 35px auto 30px;
	}
#ourworks_tonelab p {
	font-size: 13px;
	line-height: 1.7;
    margin: 20px 19px 40px 20px;
	text-align: justify;
	}
#ourworks_tonelab dl {
	margin: 0px 20px 0px;
	}
#ourworks_tonelab dl dt {
	font-size: 13px;
	line-height: 20px;
	text-decoration: underline;
	margin: 0px auto 5px;
	text-align: left;
	}
#ourworks_tonelab dl dd {
	font-size: 11px;
	line-height: 15px;
	text-align: justify;
	}
#ourworks_tonelab p.sp {
	background: url(../img/ourworks_bnr_body_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 50px 0;
	text-align: center;
	margin: 0 15px;
	}
#ourworks_tonelab p.sp img {
	width: 63%;
	display: inline-block;
	}

#ourworks_results {
	padding: 55px 0;
	}
#ourworks_results h2 {
	margin-bottom: 20px;
	color: #fff;
	background: url(../img/ourworks_visual04_sp.jpg) no-repeat center center;
    background-size: cover;
    padding: 128px 0;
    margin-top: 0px;
	}
#ourworks_results h2 span {
	display: inline-block;
	font-size: 28px;
	font-family: 'EB Garamond', serif;
	margin-bottom: 5px;
	}
#ourworks_results h3 {
	font-size: 14px;
	text-align: left;
	margin: 0 20px;
	text-decoration: underline;
	}
#ourworks_results ul {
	padding: 0 20px 30px;
	}
#ourworks_results ul li {
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 15px;
	margin-top: 15px;
	}
#ourworks_results ul li h4 {
	text-align: left;
	font-size: 13px;
	padding: 0 0 5px;
	}
#ourworks_results ul li p {
	text-align: left;
	font-size: 11px;
	line-height: 20px;
	margin: 0;
	}
#ourworks_results p {
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	margin: 20px 19px 0px 20px;
	}
#ourworks_results p.sp {
	text-align: center;
	margin: 0 15px;
	}

.ourworks_collection ul{
	margin: 0px 20px 0px 20px;
	text-align: left;
	}
.ourworks_collection li{
    width: 48%;
	display: inline-block;
    box-sizing: border-box;
    vertical-align: top;
}
.ourworks_collection li:nth-child(2n-1){
    margin: 0 2% 0 0;
}
.ourworks_collection li:nth-child(2n){
    margin: 0 0 0 2%;
}
#ourworks_maito h3.ctittle {
	font-size: 11px;
	line-height: 20px;
	text-align: left;
	margin: 3px 0 14px;
	letter-spacing: 0.05em;
}
.ourworks_collection li img{
	width: 100%;
}

	/*-----------------------
	common-page
	-----------------------*/

	#common-page #sub_visual {
		height: 490px;
		width: 100%;
		position: relative;
	}

	#common-page #sub_visual img{
		height: 100%;
		width: auto;
		position: absolute;
		left: 0px;
		margin-left: -50%;
		z-index: -1;
	}

	#common-page #sub_visual h2{
		padding-top: 190px;
	}

	#common-page .content-detail{
		width: 100%;
		padding: 45px 20px;
		box-sizing: border-box;
		margin: 0 auto;
		background-color: #fff;
	}



	/*-----------------------
	naturaldye
	-----------------------*/
	#somehyakka #sub_visual {
		background: url(../img/naturaldye_visual_sp3.jpg) no-repeat center center;
		background-size: cover;
		padding: 190px 0;
		}
	#somehyakka_message {
		background-color: #ededec;
		padding: 50px 20px;
		position: relative;
		}
	#somehyakka_message h2 {
    font-size: 20px;
    letter-spacing: 0.2em;
    margin: 0 0 35px;
    text-align: center;
    line-height: 34px
		}
	#somehyakka_message p {
		font-size: 13px;
		line-height: 22px;
		text-align: left;
		text-align: justify;
		}
	#somehyakka_message p#scroll {
		position: absolute;
		width: 12px;
		bottom: -50px;
		left: 50%;
		margin-left: -6px;
		}
	#somehyakka_message p#scroll img {
		width: 12px;
		}

	#somehyakka_colorbooks #colorbooks_head h2 {
		    font-size: 20px;
		letter-spacing: 0.2em;
		padding-top: 90px;
		}
	#somehyakka_colorbooks #colorbooks_head p {
		font-family: 'EB Garamond', serif;
		font-size: 13px;
		color: #555;
		margin-top: 5px;
		}

	#somehyakka_colorbooks #colorbooks_list {
		padding: 45px 15px;
		}

	#somehyakka_colorbooks ul.accordion{
		background-color: #fff;
	}
	#somehyakka_colorbooks ul.accordion li {
		border-bottom: 1px solid #e0e0e0;
		border-right: 1px solid #e0e0e0;
		border-left: 1px solid #e0e0e0;
		position: relative;
		}
	#somehyakka_colorbooks ul.accordion li:nth-of-type(1) {
		border-top: 1px solid #e0e0e0;
		}
	#somehyakka_colorbooks ul.accordion li.open_box {
		box-shadow: 0 0 10px #ccc;
		-moz-box-shadow: 0 0 10px #ccc;
		-webkit-box-shadow: 0 0 10px #ccc;
		border: none;
		}

	#somehyakka_colorbooks ul.accordion li div.title .color{
		display: block;
	    width: 43px;
	    height: 43px;
	    position: absolute;
	    border-radius: 50%;
	    top: 18px;
	}


	#somehyakka_colorbooks ul.accordion li div.title {
		background: url(../img/colorbook_open_sp.png) no-repeat right 25px center;
		background-size: 22px;
		cursor: pointer;
		padding: 15px 30px;
		}
	#somehyakka_colorbooks ul.accordion li.open_box div.title {
		background: url(../img/colorbook_close_sp.png) no-repeat right 25px center;
		background-size: 22px auto;
		cursor: pointer;
		padding: 15px 30px;
		}


	#somehyakka_colorbooks ul.accordion li div.title p {
		position: absolute;
		top: 10px;
		left: 5px;
		font-family: 'EB Garamond', serif;
		font-size: 10px;
		color: #555;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		}
	#somehyakka_colorbooks ul.accordion li div.title dl dt {
		font-size: 18px;
		text-align: left;
		padding: 6px 0 0 50px;
		}
	#somehyakka_colorbooks ul.accordion li div.title dl dt span {
		font-size: 9px;
		text-align: left;
		margin-left: 2px;
		}
	#somehyakka_colorbooks ul.accordion li div.title dl dd {
		text-align: left;
		font-family: 'EB Garamond', serif;
		font-size: 10px;
		color: #555;
		padding: 0 0 0 50px;
		}

	#somehyakka_colorbooks ul.accordion li div.text {
		display: none;
		position: relative;
		}

		#somehyakka_colorbooks ul.accordion li div.text .img{
			padding: 0 30px;
			}

	#somehyakka_colorbooks ul.accordion li div.text p {
		text-align: left;
		font-size: 13px;
		line-height: 22px;
		padding: 8px 30px 0px 30px;
		text-align: justify;
		}


		/*-----------------------
		色辞典詳細
		-----------------------*/

		#irozitenDetail #sub_column {
			width: 100%;
			text-align: left;
			}

		#irozitenDetail #sub_column img{
			width: 100%;
			height: auto;
			padding-top: 0.5vh;
			padding-bottom: 0.5vh;
			}

		#irozitenDetail #sub_column #main {
			width: 100%;
			margin-bottom: 30px;
			padding: 20px 20px 0;
			border-bottom: 1px solid #e0e0e0;
			}

		#irozitenDetail #sub_column #main p {
			margin: 0.6em 0px 0.6em;
			font-size: 13px;
			line-height: 1.7;
			text-align: left;
			text-align: justify;
			}
		#irozitenDetail #sub_column #main span.small {
			font-size: 11px;
			text-align: left;
			text-align: justify;
			letter-spacing: 0.1em;
			line-height: 1.5;
			padding: 0px 0px 10px 0px;
			display:inline-block;
			}

		#irozitenDetail #sub_column #main h2 {
			margin: 30px 0 15px;
			font-size: 18px;
			text-align: left;
			padding-bottom: 5px;
    	border-bottom: 1px solid #e0e0e0;
			}

		#irozitenDetail #sub_column #main h3 {
			margin: 1.2em 0 0.4em;
			font-size: 16px;
			text-align: left;
			}

		#irozitenDetail #sub_column #main h3:before {
			content:"<";
			font-size: 16px;
			margin-right: 5px;
			}

		#irozitenDetail #sub_column #main h3:after{
			content:">";
			font-size: 16px;
			margin-left: 5px;
			}
#irozitenDetail #sub_column #main h4 {
	margin: 0.8em 0 0em;
	font-size: 13px;
	text-align: left;
	}
	
#irozitenDetail #sub_column #main h4:before {
    all: initial;
    font-family: "Font Awesome 5 Free";
    content: "\f13a";
    font-weight: 900;
    color: #93b881;
    margin-right: .5em;
}


		#irozitenDetail #sub_column #side {
				width: 100%;
				float: left;
			}


		.clear{
			clear: both;
		}

		#irozitenDetail #sub_column #side #colorbooks_list{
			margin-bottom: 60px;
			padding: 20px 20px 0;
		}

		#irozitenDetail #sub_column #side #colorbooks_list .title span{
			margin-left: 5px;
		}

		#irozitenDetail #sub_column #side #search_sp {
    	padding: 0 20px 40px;
		}
		#irozitenDetail #sub_column #side #search_sp dl {
			width: 100%;
    	display: table;
    	margin: 0 auto;
    	text-align: center
			}
		#irozitenDetail #sub_column #side #search_sp dl dt {
			display: table-cell;
    	vertical-align: middle;
    	text-align: left;
    	border: 1px solid #e0e0e0;
			}
		#irozitenDetail #sub_column #side #search_sp dl dt input {
			width: 80%;
    border: none;
    font-size: 16px;
    transform: scale(0.8);
    padding: 8px 10px;
			}
		#irozitenDetail #sub_column #side #search_sp dl dd {
			display: table-cell;
    vertical-align: middle;
    background-color: #555;
    text-align: center;
			}
		#irozitenDetail #sub_column #side #search_sp dl dd input {
			border: none;
			display: inline-block;
			text-align: center;
			vertical-align: middle;
			padding: 7px;
			box-sizing: unset;
			}

		#irozitenDetail #sub_column #side h2{
			text-align: center;
		}

		#irozitenDetail #sub_column #side h2 span {
		    display: inline-block;
				text-align: center;
		    font-size: 22px;
		    line-height: 22px;
		    background: url(../img/headline.png) repeat-x center bottom;
		    font-family:  Noto Serif JP,eb-garamond,ten-mincho-text,serif;
		    margin-bottom: 25px;
		}

		#irozitenDetail ul li {
		    border-bottom: 1px solid #e0e0e0;
		    position: relative;
			}
		#irozitenDetail ul li:first-child {
		    border-top: 1px solid #e0e0e0;
			}

		#irozitenDetail ul li div.title {
		    background-size: 30px;
		    cursor: pointer;
		    padding: 10px;
			}

		#irozitenDetail ul li div.title:hover {
		    opacity: 0.8;
			}

		#irozitenDetail ul li div.title p {
				position: absolute;
				bottom: 10px;
				right: 10px;
				color: #b3b3b3;
			}

		#irozitenDetail ul li div.title dt,#irozitenDetail ul li div.title dd {
				text-align: left;
				padding-left: 55px;
			}

		#irozitenDetail ul li div.title .color {
		    display: block;
		    width: 40px;
		    height: 40px;
		    position: absolute;
		    border-radius: 50%;
			top: 10px;
		}


		.irozitenDetail-tilie{
			text-align: left;
			margin-bottom: 20px;
		}

		.irozitenDetail-tilie h1{
			font-size: 24px;
		}

		.irozitenDetail-tilie h1 span{
			font-weight: 300;
			font-size: 18px;
		  margin-left: 10px;
		}

		#irozitenDetail #sub_column #main .irozitenDetail-tilie p{
			color: #797979;
			font-size: 14px;
		  margin-top: 10px;
		}

		#irozitenDetail .thumbnail{
			display: block;
			border-top: 1px solid #e0e0e0;
			border-right: 1px solid #e0e0e0;
			border-left: 1px solid #e0e0e0;
		}

		#irozitenDetail .thumbnail .thumbnailImg{
			width: 100%;
			display: block;
		}

		#irozitenDetail .thumbnail img{
			width: 100%;
		}

		#irozitenDetail .thumbnail .color{
			width: 25%;
			display: inline-block;
			height: 25px;
			margin-bottom: -5px;
		}

		#irozitenDetail .thumbnail .color:nth-child(2) {
		    width: 25%;
		}

		.irozitenDetail-table{
			display: block;
			margin: 20px auto;
		}

		.irozitenDetail-tableRow{
			display: block;
		}

		.irozitenDetail-tableCell{
			display: block;
			width: 100%;
			border-top: 1px solid #e0e0e0;
			border-right: 1px solid #e0e0e0;
			border-left: 1px solid #e0e0e0;
			text-align: left;
			padding: 10px;
		}

		.irozitenDetail-tableCell span{
			display: table-cell;
			position: relative;
		}

		.irozitenDetail-tableCell span:first-child{
			margin-right: 5px;
			width: 44px;
			letter-spacing: 0.25em;
		}
		.irozitenDetail-tableCell span:first-child:after{
			content: "";
		  display: block;
		  position: absolute;
		  width: 3px;
		  top: 4px;
		  left: 33px;
		  background-color: #C4C4C4;
		  height: 16px;
		}
		.irozitenDetail-tableCell-last:last-child{
			border-bottom: 1px solid #e0e0e0;
		}

		.iroziten-table {
		    display: block;
				width: 100%;
		}

		.iroziten-row {
		    display: block;
		}

		.iroziten-cell {
		    display: block;
		    width: 100%;
            padding: 5px 5px 10px  5px;
		}
	.iroziten-color{
	width: 87px;
	height: 87px;
	border-radius: 50%;
    display: inline-block;
}
	.iroziten-text {
	width: calc(100% - 92px);
	height: auto;
	padding-left: 15px;
	display: inline-block;
	text-align: left;
	vertical-align: top;
}
	span.iroName2 {
    display: inline;
	font-size: 20px;
	text-align: left;
}

		span.iroImg {
		    width: 15%;
		    display: inline-block;
		}

		span.iroName {
		    width: 85%;
		    display: inline-block;
				font-size: 16px;
		}

		span.iroYomi {
		    font-size: 12px;
padding-left: 15px;
		}

		span.iroBaisen{
			font-size: 12px;
		}

		#irozitenDetail #sub_column #main .iroziten-cell .iroName{
		    line-height: inherit;
				margin: 5px 0;
				margin: 5px 0;
				text-align: left;
				padding-left: 20px;
				box-sizing: border-box;
		}



		/*-----------------------
		コレクション
		-----------------------*/

		.wrap {
		  width: 100%;
			box-sizing: border-box;
		  padding: 10px 20px 0 20px;
		}

		.collection_Photo {
		  width: 100%;
		  display: block;
			box-sizing: border-box;
			vertical-align: top;
		}

		.collection_Photo img{
		    width: 100%;
		}
		.collection_thumbnail li{
			width: 23.5%;
			display: inline-block;
			box-sizing: border-box;
			text-align:left;
			padding-top: 2%;
		}
		.collection_thumbnail li:nth-child(4n-3){
			margin: 0 2% 0 0;
		}
		.collection_thumbnail li:nth-child(4n-2){
			margin: 0 2% 0 0;
		}
		.collection_thumbnail li:nth-child(4n-1){
			margin: 0 2% 0 0;
		}
		.collection_thumbnail li:nth-child(4n){
			margin: 0 0 0 0;
		}
        .collection_thumbnail li img{
			width: 100%;
		}

		.description{
			width: 100%;
			display: inline-block;
			text-align: left;
			margin-top: 30px;
		}

		.description h1{
			font-size: 18px;
			line-height: 34px;
			padding-bottom: 20px;
			letter-spacing: 0.25em;
		}
.description p{
    padding-bottom: 15px;
    text-align:justify;
		}
.description span.next_post_collection{
	width: 40%;
	display: inline-block;
	box-sizing: border-box;
	float:right;
	text-align:right;
	padding-top: 10px;
	padding-bottom: 30px;
}
.description span.prev_post_collection{
	width: 40%;
	display: inline-block;
	box-sizing: border-box;
	float:left;
	padding-top: 10px;
	padding-bottom: 30px;
}
/*-----------------------
	メルマガ　mailpoet2
-----------------------*/
	
.mailpoet_text, #mailpoet_form_2 .mailpoet_textarea {
	padding: 12px!important;
    margin: 0 0 0 0!important;
}
	
	/*-----------------------
	予約フォーム
	-----------------------*/

	#booking-form{
		width: 100%;
		margin: 30px auto;
	}

	.cancel-message {
    text-align: left;
    padding: 0 8vw;
    margin-top: -80px;
    margin-bottom: 40px;
}

div.wpcf7-response-output {
	margin: 2em 20px 1em!important;
    padding: 0.2em 1em!important;
    font-size: 13px!important;
}

	.content-form fieldset {
	  margin: 0 0 40px 0!important;
    border-top: 1px solid #dddddd!important;
		border-bottom: none!important;
		border-right: none!important;
		border-left: none!important;
		padding:10px 0!important;
		width: 100%!important;
		text-align: center!important;
}

	.content-form legend {
				font-size: 14px!important;
	  padding: 0 25px!important;
		text-align: center!important;
		background-color: #fff!important;
	}

	.content-form table ,.content-form tbody,.content-form tr,.content-form th, .content-form td {
		display: block;
		width: 100%!important;
		box-sizing: border-box;
	}

	.content-form th, .content-form td {
	  border-right: none!important;
	  border-bottom: none!important;
	  border-left: none;
	  padding: 5px 20px!important;
	}

	.content-form th{
		text-align: left!important;
		font-size: 14px!important;
		font-weight: 600!important;
	}

	.content-form td{
		text-align: left!important;
		padding: 5px 20px 15px!important;
	}


	.content-form table{
		border-collapse:collapse!important;
	}


	.content-form tr{
		border-bottom:none;
	}

	.content-form td{
		font-size: 14px!important;
	}

	.content-form tr:last-child{
		border-bottom:none;
	}

	.content-form button {
		border: none;
	  padding: 10px!important;
	  cursor: pointer;
	  margin-top: 0;
	  background-color: #a2a2a2;
		color:#fff;
	  border: 1px solid #a2a2a2;
	  font-size: 13px;
	  width: 150px;
	  text-align: center;
		-webkit-transition: all .2s;
		transition: all .2s;
	}

	.content-form button:hover {
	  background-color: #555;
	  border: 1px solid #fff;
		color: #fff;
		-webkit-transition: all .2s;
		transition: all .2s;
	}

	.content-detail{
		text-align: left;
		width: 100%;	
		min-width: initial;
		max-width: initial;
		margin: 0 auto;
		padding:0 20px 40px;
		box-sizing: border-box;
	}

	.content-detail p{
		text-align: justify;
	  font-size: 13px;
	  line-height: 25px;
	}


	.content-detail h1{
		font-size: 22px;
		letter-spacing: 0.25em;
		margin: 30px auto 40px;
		text-align: left;
	}

	.content-detail h2 {
		font-size: 18px;
		line-height: 25px;
		margin: 30px auto;
		letter-spacing: 0.25em;
		text-align: left;
	}

	.content-detail h3{
	font-size: 16px;
	line-height: 20px;
	margin: 20px auto;
	letter-spacing: 0.25em;
	}

	.content-calendar{
		margin: 0px 0 80px;
	}

	.multiple-calendar{
		margin: 0 -10px;
	}

	 .multiple-calendar table{
		 width:100%!important;
	 }


	.bookin-attention{
		text-align: left;
		margin-bottom: 30px;
	}
	.bookin-attention p{
		font-size: 12px;
	}

	.calendar-caption {
	    margin-bottom: 15px;
			font-size: 1rem!important;
	}

	.multiple-calendar td{
		vertical-align: top;
	}

	.day-number{
		font-size: 1rem;
	}
	.list-monthly-calendar, .mix-calendar, .list-calendar, .timetbale-calendar, .multiple-calendar, .monthly-calendar {
	    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝","メイリオ",serif!important;
	}
	.calendar-title{
		display: none;
	}

	.calendar-mark .article-name {
	    font-size: 10px!important;
			letter-spacing: 1px;
	}
	.article-name span{
		display: none;
	}

	.input-number label{
		display: none;
	}

	.calendar-mark{
	    font-size: 10px!important;
	}


	.booking-completed{
		font-size: 16px;
	}

	.content-form td.option-confirm-header {
    font-weight: 600;
    text-align: center!important;
    font-size: 16px!important;
	}


	.input-number{
		text-align: left!important;
		float: none!important;
		margin-right:0!important;
	}


	.text_eng{
		letter-spacing: 0.1em;
	}

	.day-box.today {
	    background-color: #fff!important;
	}

	span.calendar-marking {
    margin-left: 2px;
		letter-spacing: 0px;
	}

	.calendar-mark .article-name {
    font-family: sans-serif;
    background: rgba(102, 132, 146, 1);
    color: #fff;
    padding: 4px 0px;
	}

	.content-form select {
	    font-size: 1rem;
	    padding: 0.1rem 0.5rem!important;
	}

span.wpcf7-list-item {
    margin: 0 0 0 0!important;
}
.wpcf7-form-control-wrap {
    line-height: 250%;
}
input {
	width: 100% !important;
}
	
textarea {
    font-family: "Meiryo",sans-serif;
    color: #252525;
    border: 1px solid #a2a2a2;
    border-radius: 0;
    padding: 10px !important;
    font-size: 13px;
    margin: 0 0 0 0 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100% !important;
}
	
input[type="submit"], input[type="button"] {
    /* border: none; */
    padding: 10px auto;
    /* cursor: pointer; */
    margin-top: 20px!important;
	background-color: #ffeed1!important;
    border: 2px solid #e39968!important;
    /* font-size: 13px; */
    width: 100%!important;
	height:3.5em;
	border-radius: 2px!important;
}
	
/* 改行 */
	.br-pc { display:none; }
	.br-sp { display:block; }

/*-----------------------
freepage
-----------------------*/

#freepage #sub_visual.about-workshop {
	background: url(https://maitokomuro.pro/hp/wp-content/uploads/lp01hero_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 190px 0;
	}
#freepage #one-container {
	background-color: #ededec;
	padding: 50px 20px 55px;
	}
#freepage #one-container.iroziten {
	background-color: #ffffff;
	padding:30px 8vw 30px;
	}
#freepage #one-container h2 {
	font-size: 2.0rem;
	letter-spacing: 0.2em;
	margin: 0 0 35px;
	text-align: center;
	line-height: 34px;
	}
#freepage #one-container p {
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: justify;
	letter-spacing: 0.2em;
	width: auto;
	}
#freepage #info-container {
	padding: 0 0 45px;
	background-color: #ededec;
	}
#freepage #info-container h2 {
	font-size: 1.6rem;
	background-image:url("https://maitokomuro.pro/hp/wp-content/uploads/lp01_img01_pc.jpg");
	background-color: #fff;
	padding: 45px 0;
	}
#freepage #info-container h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#freepage #info-container h3 {
	font-size: 1.6rem;
	margin: 45px auto 20px;
	}
#freepage #info-container h3:nth-of-type(3) {
	margin: 25px auto 20px;
	}
#freepage #info-container .tb_wrap {
	padding: 0 20px 15px;
	}
#freepage #info-container table {
    width: 100%;
    margin: 0 auto 100px;
    text-align: center;
}
#freepage #info-container table th {
	font-size: 1.2rem;
    line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px solid #e0e0e0;
	width: 29%;
	padding: 20px 5px;
	box-sizing: border-box;
	}
#freepage #info-container table td {
	font-size: 1.2rem;
    line-height: 1.6em;
	vertical-align: top;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 5px;
	box-sizing: border-box;
	}
#freepage #info-container table td span.sub {
	display: block;
	font-size: 1.0rem;
	line-height: 1.6em;
	font-family: 'EB Garamond', serif;
	letter-spacing: 0.25em;
	}
#freepage #info-container ul {
	text-align: center;
	margin: 30px auto;
	width: 70%;
	}
#freepage #info-container ul li {
	margin-bottom: 4.0rem;
	}
#freepage #info-container p.site_btn a {
	width: 80%;
	text-align: center;
	margin: 0 auto;
	font-size: 1.4rem;
	border: 1px solid #555;
	position: relative;
	padding: 15px 0;
	letter-spacing: 0.25em;
	}
#freepage #info-container p.site_btn a span {
	position: absolute;
	bottom: 10px;
	right: -20px;
	}

#freepage #two-columns h2 {
	font-size: 1.6rem;
	padding: 35px 0;
	}
#freepage #two-columns h2 span {
	display: inline-block;
	font-size: 2.8rem;
	background: url(../img/headline.png) repeat-x center bottom;
	font-family: 'EB Garamond', serif;
	margin-bottom: 10px;
	}
#freepage #two-columns #half_figure_left:before {
  content: "";
  display: block;
	}
/*#freepage #two-columns #half_figure_left:before {
  background: url(../img/about_people01.jpg) no-repeat center center;
  background-size: cover;
	height: 320px;
	}*/
#freepage #two-columns #half_figure_right:before {
  content: "";
  display: block;
	}
/*#freepage #two-columns #half_figure_right:before {
  background: url(../img/about_people02.jpg) no-repeat center center;
  background-size: cover;
	height: 320px;*/
	}
#freepage #two-columns .section_contents {
	padding: 30px 20px 50px;
	}
#freepage #two-columns .section_contents h3 {
	font-size: 1.6rem;
	text-align: left;
	}
#freepage #two-columns .section_contents h3 span {
	font-size: 1.2rem;
	}
#freepage #two-columns .section_contents h4 {
	font-size: 1.2rem;
	text-align: left;
	color: #9e9e9e;
	font-family: 'EB Garamond', serif;
	margin: 0 0 20px;
	}
#freepage #two-columns .section_contents p {
	text-align: left;
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: justify;
	}



/* 600px〜959px：タブレットのみに適用 ipad------------------------------ */

@media screen and (min-width: 600px)and (max-width: 959px){
	
	#head {
	padding: 15px 20px 15px 15px;
	}
	#index_main {
    background: url(../img/main01_pc.jpg) no-repeat right center;
	background-size: cover;
	padding: 15vh 20vw;
	}
	#index_main h2 {
	font-size: 26px;
	line-height: 42px;
	letter-spacing: 0.25em;
	margin-bottom: 30px;
	color: #fff;
	}
    #index_main p {
	font-size: 16px;
	line-height: 32px;
	letter-spacing: 0.25em;
	color: #fff;
	}
	#index_our_works_sp #sec01 {
	background: url(../img/index_our_works_sec01_body_sp.jpg) no-repeat center center;
	background-size: cover;
	padding: 150px 8vw 50px;
	}
  #index_our_works_sp #sec01 h3 {
	color: #fff;
	text-align: left;
	font-size: 26px;
	margin: 10px 0 50px;
	}
  #index_our_works_sp #sec01 h4 {
	color: #fff;
	font-size: 13px;
	font-family: 'EB Garamond', serif;
	letter-spacing: 0.25em;
	text-align: left;
	}
  #index_our_works_sp #sec01 p {
	color: #fff;
	font-size: 16px;
	line-height: 32px;
	letter-spacing: 0.25em;
	 text-align: justify;
	}
	
#index_our_works_sp #sec04 {
	width:50%;
	padding: 0 0 0 4%;
	float: left;
    position: relative;
}
  #index_our_works_sp #sec04 dl dd {
	font-size: 13px;
	display: block;
	margin: 20px 0;
	padding: 0 25px;
	line-height: 18px;
	letter-spacing: 0.15em;
	}
  #index_our_works_sp #sec04 span {
	font-size: 18px;
	display: block;
	margin: 0px 0px 8px;
	letter-spacing: 0.25em;
	}
	#index_our_works_sp #sec05 {
	width:50%;
	padding: 0 4% 0 0;
	float: left;
    position: relative;
}
  #index_our_works_sp #sec05 dl dd {
	font-size: 13px;
	display: block;
	margin: 20px 0;
	padding: 0 25px;
	line-height: 18px;
	letter-spacing: 0.15em;
  }
  #index_our_works_sp #sec05 span {
	font-size: 18px;
	display: block;
	margin: 0px 0px 8px;
	letter-spacing: 0.25em;
  }
	
	#index_shoplist ul.sp li a{
	padding: 3vh 24vw;
}
	
#index_message {
	background-color: #ededec;
	padding: 40px 8vw 50px;
	}
	
#about_message {
	background-color: #ededec;
	padding: 50px 8vw 55px;
	}	
#about_company .tb_wrap {
    padding: 0 8vw 15px;
}
#about_company p.site_btn a {
	width: 45%;
	}	
#about_company ul {
	text-align: center;
	margin: 3vh auto 4vh;
	width: 70%;
	}
#about_company ul li {
	display: table-cell;
    padding: 0 3vw;
	}
	
#index_news ul li {
	width: 23.5%;
	display: inline-flex;
	box-sizing: border-box;
	margin-bottom: 30px;
	}
#index_news ul li:nth-child {
    padding-right: 0px;
	padding-left: 0px;
}
#index_news ul li:nth-child(2n) {
    padding-right: 0px;
	padding-left: 0px;
	margin-right: 2%;
}
#index_news ul li:nth-child(2n-1) {
    padding-right: 0px;
	padding-left: 0px;
	margin-right: 2%;
}
#index_news ul li:nth-child(4n-3) {
	margin-right: 2%;
}
#index_news ul li:nth-child(4n) {
	margin-right: 0;
}
#index_news ul li h3 {
	text-align: left;
	font-size: 12px;
	line-height: 18px;
	padding: 20px 0 10px;
	letter-spacing: 0.1em;
	text-align: justify;
	}
	
#news_list li {
  width: 49%;
  display: inline-block;
	}
	#sub_visual ul li {
	display: table-cell;
	font-size: 14px;
	color: #fff;
	text-align: center;
	padding: 0 5px;
	letter-spacing: 0.25em;
	}
#ourworks_message h3 {
	font-size: 24px;
	line-height: 42px;
	margin: 5px auto 40px;
	}
#naturaldye_naturaldye h3 {
	font-size: 24px;
	line-height: 42px;
	margin: 50px auto 40px;
	}
  #naturaldye_naturaldye p {
	text-align: justify;
	font-size: 13px;
    line-height: 1.7;
    padding: 0 8vw;
    letter-spacing: 0.2em;
	}
	
#ourworks_maito p {
    font-size: 13px;
    line-height: 1.7;
    margin: 0 auto;
    padding: 0px 8vw 40px;
    text-align: justify;
}
#ourworks_botanicalleather dl {
    margin: 0 auto;
    padding: 0 8vw 0px;
}
#ourworks_tonelab dl {
    margin: 0 auto;
    padding: 0 8vw 0px;
}
#ourworks_maito h3.ctittle {
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	margin: 4px 0 14px;
	letter-spacing: 0.05em;
}
.ourworks_collection ul{
	margin: 0px 5vw;
	text-align: left;
	}
.ourworks_collection li{
    width: 23.5%;
	display: inline-block;
    box-sizing: border-box;
    vertical-align: top;
}

.ourworks_collection li:nth-child(2n-1) {
    margin: 0 2% 0 0;
}
.ourworks_collection li:nth-child(2n){
    margin: 0 2% 0 0;
}
.ourworks_collection li:nth-child(4n){
    margin: 0 0 0 0;
}
#ourworks_results h3 {
	font-size: 14px;
	text-align: left;
	margin: 0 ;
	padding: 0px 8vw;
	text-decoration: underline;
	}
#ourworks_results ul li h4 {
	text-align: left;
	font-size: 13px;
	margin: 0 ;
	padding: 0;
	}
#ourworks_results ul {
    padding: 0 8vw 30px;
}
#ourworks_results ul li p {
	text-align: left;
	font-size: 11px;
	line-height: 20px;
	margin: 0 ;
	padding: 0;
	}
#ourworks_results p {
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	margin: 20px 0;
	margin: 0 ;
	padding: 0px 8vw;
	}

#freepage_inner p {
	text-align: justify;
	font-size: 13px;
	line-height: 1.7;
	padding: 0 8vw;
	letter-spacing: 0.2em;
	}
#freepage_inner p.sp:last-child {
	margin: 40px 0px 40px;
	}
	
#freepage #one-container {
	background-color: #ededec;
	padding: 50px 8vw 55px;
	}
#freepage #info-container .tb_wrap {
    padding: 0 8vw 15px;
}
#freepage #info-container p.site_btn a {
	width: 45%;
	}	
#freepage #info-container ul {
	text-align: center;
	margin: 3vh auto 4vh;
	width: 70%;
	}
#freepage #info-container ul li {
	display: table-cell;
    padding: 0 3vw;
	}
	
#freepage #two-columns {
		    overflow: hidden;
}
#freepage #two-columns #half_figure_left:before,#about_people #half_figure_right:before {
	float: left;
    height: 48vw;
    width: 42vw;
	background-position-y: 20%;
    margin: 0 0 20px 0vw;
	box-sizing: border-box;
	}
#freepage #two-columns .section_contents {
    float: right;
    width: 58vw;
    height: 48vw;
    margin: 0 0 20px 0;
    padding: 30px 3vw 50px 3vw;
	box-sizing: border-box;
}
	
#about_people {
		    overflow: hidden;
}
	#about_people #half_figure_left:before,#about_people #half_figure_right:before {
	float: left;
    height: 48vw;
    width: 42vw;
	background-position-y: 20%;
    margin: 0 0 20px 0vw;
	box-sizing: border-box;
	}
	#about_people .section_contents {
    float: right;
    width: 58vw;
    height: 48vw;
    margin: 0 0 20px 0;
    padding: 30px 3vw 50px 3vw;
	box-sizing: border-box;
}
/* 縦並びタイプ	
	#about_people #half_figure_left:before,#about_people #half_figure_right:before {
	float: left;
    height: 450px;
    background-position-y: 15%;
	}
	#about_people .section_contents {
    padding: 30px 8vw 50px;
}
*/
	
	#news #sub_column #main #news_list ul li h3{
		height: 95px;
	}
	#foot #foot_top #site_info{
		width: 39%;
		text-align: right;
	}
	#foot #foot_top #shop_info{
		width: 46%;
		padding-left: 50px;
	}
	#foot #foot_top #site_info dl{
		float:right;
		margin: 21px 6px 21px 0;
	}
	#contact input{
		width: 95%;
	}
	#contact textarea{
		width: 95%;
	}
	form.wpcf7-form {
    padding: 0 15px;
	}
	#contact table th, #contact table td{
		display: inline-block;
		text-align: right!important;
		width: 31%!important;
	}

	.content-form th{
		width: 31%!important;
	}
	#contact table tr td:last-child{
		width: 67%!important;
		text-align: left!important;
	}
	.wpcf7-form-control.wpcf7-submit{
		display: block;
    margin: 30px auto;
	}
	.content-form legend {
    font-size: 1.1rem;
    font-weight: bold;
    padding: 0 5px;
    margin: 10px;
	}
	#ourworks_maito h2 img {
	width: 52%;
	display: inline-block;
	}
	#ourworks_tonelab h2 img {
    margin: 0 0 0 3%;
	width: 52%;
	display: inline-block;
	}
	#common-page #sub_visual img{
		width: 100%;
		height: auto;
		position: absolute;
		left: 0px;
		margin-left: 0;
		z-index: -1;
	}
/*-----------------------色辞典ipad-----------------------*/
	
#somehyakka_colorbooks ul.accordion li div.text .img{
position: absolute;
bottom: 5px;
right: 4%;
width: 30%;
}

#somehyakka_colorbooks ul.accordion li div.text p {
text-align: left;
font-size: 14px;
line-height: 24px;
padding: 0 35% 30px 70px;
text-align: justify;
}

#irozitenDetail .thumbnail {
    display: table;
	border: none;
}
#irozitenDetail .thumbnail .thumbnailImg {
    width: 100%;
    height: auto;
    display: inline-block;
}
#irozitenDetail #sub_column img {
    width: 100%;
    height: auto;
}
#irozitenDetail .thumbnail .color:nth-child(2) {
	width: 15%;
}
#irozitenDetail .thumbnail .color {
	width: 7%;
    height: 100%;
    margin-bottom: -5px;
    display: table-cell;
}
	
	.iroziten-table {
	display: table;
	width: 100%;
}
	.iroziten-row {
	display:table-row;
}
	.iroziten-cell {
	display: table-cell;
	width: 50%;
    padding: 5px 5px 10px  5px;
}
	.iroziten-color{
	width: 87px;
	height: 87px;
	border-radius: 50%;
    display: inline-block;
}
	.iroziten-text {
	width: calc(100% - 92px);
	height: auto;
	padding-left: 15px;
	display: inline-block;
	text-align: left;
	vertical-align: top;
}
	span.iroName2 {
    display: inline;
	font-size: 20px;
	text-align: left;
}

	
}

@media screen and (max-width: 321px){
	.multiple-calendar{
		margin: 0 -20px;
	}
	span.calendar-marking {
		margin-left: 1px;
		letter-spacing: 0px;
	}

}
/*newsletterline用*/
@media screen and (max-width: 959px) {
    img#linebotton {
        width: auto;
        margin: 10 auto;
    }