@charset "UTF-8";
.sp {
	display: none;
}
a:hover {
	box-shadow: none;
}
html,body{}
body{
	overflow: hidden;
}
#page_top {
	position: relative;
    height: auto !important;
    height: 100%;
    min-height: 100%;
    z-index: 2;
    background: #fff;
}

.contents {
	position: relative;
	width: 980px;
	font-size: 100%;
	margin: auto;
	text-align: left;
}

.contents.hed {
	border-top: 3px solid #ff0000;
	padding-top: 26px;
	text-align: center;
}

.bk_black {
	background: #333;
	color: #fff;
}
#hed_slider {
	height: 640px;
}
#hed_imeage {
	width: 100%;
	position: relative;
	height: 640px;
}
#hed_imeage .bk {
	background: url(../../images/top/hed_main_ime.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 100%;
	position: absolute;
}
#hed_imeage_post {
	width: 100%;
	position: relative;
	height: 248px;
}
#hed_imeage_post .txt,
#hed_imeage_post .ul_center ul {
	top: -30px;
}



.ul_center ul {
	position: relative;
	float: left;
	left: 50%;
	width: 100%;
}
.ul_center li {
	float: left;
	position: relative;
	left: -50%;
	padding-left: 12px;
}
.ul_center li:first-child {
	padding-left: 0px;
}

#ani02 {
	position: absolute;
	text-align: right;
}
#ani02 li {
	float: none;
}
#hed_slider .slide {
	width: 980px;
}
#hed_slider .slide img {
	width: 100%;
}

#ani_tel {
	position: absolute;
	top: 62%;
	left: 44%;
}
#ani_mov {
	position: absolute;
	top: 44%;
	left: 65%;
}

.bk_white {
	position: relative;
	background: #fff;
}



/* header */
#header {
	position: relative;
	width: 100%;
	z-index: 1000;
	text-align: center;
}
#header.page {
	background: url(../images/bk01.png);
	background-position: center top;
	background-repeat: no-repeat;
	top: 0px;
	min-height: 93px;
}
#header.index {
	background: url(../images/bk01.png);
	background-position: center top;
	background-repeat: no-repeat;
	top: 0px;
	margin-bottom: -50px;
	min-height: 93px;
}
#header.page .contents {
	top: -20px;
}
#header.index .contents {
	top: -20px;
	min-height: 430px;
}

#header h1 {
	position: absolute;
	width: 172px;
	height: 154px;
	color: #333;
}

.h_contact {
	font-family: 'Noto Sans Japanese', sans-serif;
	padding: 20px;
	font-size: 1em;
	color: #333;
	font-weight: 400;
}
.h_contact h3 {
	font-size: 100%;
	padding-bottom: 10px;
	font-weight: 400;
}
.h_contact li {
	padding: 4px 0px;
	font-weight: 400;
}
.h_contact a:hover {
	text-decoration: none;
}
.h_contact .tel {
	font-size: 350%;
	font-family: arial;
}
.h_contact .tel .icon-phone {
	font-size: 70%;
	color: #7ab943;
}

#header .catch_box {
	position: absolute;
	top: 160px;
	text-align: center;
	width: 100%;
}
#header .catch {
	position: relative;
	font-size: 350%;
	line-height: 1.4em;
	padding: 2px 30px 0px;
	letter-spacing: 0.1em;
	display: inline-block;
	margin: auto;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
}
#header .catch:after {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	right: 20px;
	top: -0.2em;
	z-index: 2;
}
#header .catch:before {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	left: 20px;
	top: -0.2em;
	z-index: 2;
}

.catch {
	position: relative;
	font-size: 350%;
	line-height: 1.4em;
	padding: 2px 30px 0px;
	letter-spacing: 0.1em;
	display: inline-block;
	margin: auto;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	margin-top: 70px;
}
.catch:after {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	right: 20px;
	top: -0.2em;
	z-index: 2;
}
.catch:before {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	left: 20px;
	top: -0.2em;
	z-index: 2;
}
.dls {
	display: none;
}
.g_nav {
	font-size: 135%;
	float: right;
	text-align: right;
	clear: both;
	font-family: 'Montserrat', sans-serif;
	line-height: 0.9em;
	margin-top: 52px;
}
.g_nav li {
	float: left;
	padding: 0px 12px 0px 10px;
	position: relative;
	text-align: center;
}
.g_nav li:after {
	content: url(../images/line01.png);
	position: absolute;
	width: 19px;
	height: 41px;
	top: 0px;
	right: 0px;
}
.g_nav li a {
	display: inline-block;
	padding-bottom: 10px;
	border-bottom: solid 1px rgba(255,255,255,0);
}
.g_nav li.current-menu-item a,
.g_nav li.active a,
.g_nav li a:hover {
	text-decoration: none;
	color: #005c08;
	border-bottom: solid 1px rgba(0,0,0,0.65);
}
.g_nav li a span {
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-size: 60%;
}
.g_nav li:last-child {
    padding: 0;
    position: relative;
}
.g_nav li:last-child a {
    position: absolute;
    right: -155px;
    font-size: 14px;
    background: #626262;
    padding: 7px 7px 4px 30px;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
}
.post .g_nav li:last-child a {
    position: absolute;
    right: -132px;
    font-size: 14px;
    background: #626262;
    padding: 7px 10px 4px 30px;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
}
.g_nav li:last-child a:before {
    background: url(/common/images/cart_img.png);
    width: 19px;
    height: 18px;
    content: "";
    position: absolute;
    left: 5px;
    top: 3px;
}
li#menu-item-49 {
    padding-right: 0;
}
.g_nav li:last-child a:hover {
    opacity: 0.8;
}
/*----------------------------------------------------------

 .post #header

-----------------------------------------------------------*/
#header.post {
	background: #fff;
	position: relative;
	padding-top: 15px;
	z-index: 1000;
	min-height: 58px;
}
#header.post:after {
	content: '';
	width: 100%;
	height: 31px;
	background-image: url(../images/bk_nav.png);
	background-repeat: no-repeat;
	background-position: center top;
	position: absolute;
	left: 0px;
	bottom: -31px;
}
#header.post .contents {
	top: 0px;
}
#header.post h1 {
	position: absolute;
	width: auto;
	z-index: 10;
}

.post .g_nav {
	font-size: 135%;
	float: right;
	text-align: right;
	clear: both;
	font-family: 'Montserrat', sans-serif;
	line-height: 0.9em;
	margin: 10px auto 7px;
}
.post .g_nav li {
	float: left;
	padding: 0px 12px 0px 10px;
	position: relative;
}
.post .g_nav li:after {
	content: url(../images/line01.png);
	position: absolute;
	width: 19px;
	height: 41px;
	top: 0px;
	right: 0px;
}
.post .g_nav li a {
	display: inline-block;
}
.post .g_nav li a span {
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-size: 60%;
}
/*-----------------------------------------------------------*/

#works_slider {
	position: relative;
	z-index: 0;
	width: 100%;
	overflow: hidden;
}
#works_slider .bx-viewport {
	height: 649px !important;
	overflow: hidden;
}
#works_slider .bx-wrapper img {
    max-width: 100%;
    display: inline-block;
}

.sp_img {
	display: none;
}
.sp_menu {
	display: none;
}

.center {
	text-align: center;
}

.btn_detail:focus,
.btn_detail,
a.btn_detail {
	background-color: #80b63f;
	padding: 10px 20px 10px 30px;
	border-bottom: solid 4px #4b9900;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 20px;
	font-size: 110%;
}
.btn_detail:hover,
a.btn_detail:hover {
	background-color: #80b63f;
	padding: 10px 20px 10px 30px;
	border-bottom: solid 2px #4b9900;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 22px;
	text-decoration: none;
}
a.btn_mail {
	background-color: #f1a7b6;
	padding: 10px 20px 10px 20px;
	border-bottom: solid 4px #ed889f;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 20px;
}
a.btn_mail span {
	font-size: 150%;
	position: relative;
	top: 2px;
}
a.btn_mail:hover {
	background-color: #f1a7b6;
	padding: 10px 20px 10px 20px;
	border-bottom: solid 2px #ed889f;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 22px;
	text-decoration: none;
}

.services {
	text-align: center;
	width: 977px;
	margin: auto;
	padding: 50px 0px;
}
#services_title {
	padding: 70px 0px 0px;
}
.services .box {
	width: 295px;
	float: left;
	padding-left: 20px;
	margin-left: 20px;
	border-left: 1px dotted #fff;
	min-height: 300px;
}
.services .box p {
	line-height: 1.75em;
	font-weight: 100;
	margin-top: 10px;
}

.services .box:first-child {
	padding-left: 0px;
	margin-left: 0px;
	border-left: none;
}

.works {
	background: url(../images/bk02.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	margin-bottom: 80px;
}

.works ul {
	margin: 40px 0px 20px;
	margin-left: -20px;
}

.works li {
	float: left;
	margin: 0px auto 40px;
	padding-left: 20px;
}
.works ul.list li {
	width: 180px;
}

.works li p {
	padding-top: 10px;
	width: 180px;
}
.works #grid-content {
	margin: 40px 0px 20px;
	margin-left: -20px;
}

.works .grid-item {
	float: left;
	margin: 0px auto 40px;
	padding-left: 20px;
}
.works .grid-item a {
	position: relative;
	display: inline-block;
}
.works .grid-item img {
	width: 180px;
	height: 180px;
}
.works .grid-item a.active:after {
	content: '';
	width: 180px;
	height: 180px;
	background: rgba(0,0,0,0.77);
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 10;
}

.works .grid-item p {
	display: none;
}
.works .grid-item h3 {
	padding-top: 10px;
	font-weight: normal;
	font-size: 100%;
	width: 180px;
}

.works .tab ul {
	margin: 40px 0px 20px;
	margin-left: 0px;
	font-size: 150%;
	font-weight: 100;
	font-family: 'Noto Sans Japanese', sans-serif;
}

.works .tab li {
	float: left;
	margin: 0px auto 40px;
	width: 50%;
	padding-left: 0px;
	text-align: center;
	position: relative;
}

.works .tab a {
	background: #d0d0d0;
	width: 100%;
	padding: 20px 0px;
	color: #fff;
	display: inline-block;
	position: relative;
}
.works .tab .active,
.works .tab a:hover {
	text-decoration: none;
	background: #333;
}

.works .tab .active:before {
  content: "\e618";
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 200%;
  position: absolute;
  left: 47%;
  bottom: -0.6em;
  color: #333;
}

.works .cat ul {
	position: relative;
	margin: 20px 100px -20px;
	float: left;
	left: 50%;
	font-size: 130%;
}
.cat h3 {
	font-style: oblique;
	font-size: 140%;
	padding-left: 20px;
	margin-top: 25px;
}
.cat ul li {
	position: relative;
	float: left;
	left: -50%;
}
.cat ul li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	padding: 7px 0px 7px 10px;
	border-bottom: 1px solid #fff;
}
.cat ul li .here,
.cat ul li a:hover {
	border-bottom: 1px solid #005c08;
	text-decoration: none;
	color: #005c08;

}
.cat ul li:first-child {
	border-left: none;
}

/* post_deta */

.post_deta {
	width: 280px;
	padding: 30px 20px 40px;
	background: #fff;
	position: absolute;
	bottom: 0px;
	right: 7%;
	text-align: left;
	font-family: 'Noto Sans Japanese', sans-serif;
/*
	-webkit-box-shadow: 0 15px 20px #777;
	-moz-box-shadow: 0 15px 20px #777;
	box-shadow: 0 15px 20px #777;
*/
	background: url(../images/bk02.jpg);
	background-repeat: repeat-y;
	background-position: center top;
}

.post_deta a {
	 font-style: oblique;
	 font-size: 110%;
	 display: inline-block;
	 padding-top: 0px;
	 text-decoration: underline;
}

.post_deta .cat_link a {
	 font-style: oblique;
	 font-size: 120%;
	 display: inline-block;
	 padding-top: 6px;
	 text-decoration: underline;
}

.post_deta h1 {
	font-size: 130%;
	padding-bottom: 20px;
	line-height: 1.5em;
}
.post_deta dl {
	width: 100%;
}
.post_deta dl dt:first-child {
	border-top: 1px solid #ccc;
	padding-top: 10px;
}
.post_deta dl dd:first-child {
	padding-top: 11px;
}
.post_deta dt {
	float: left;
	clear: both;
	display: inline-block;
}
.post_deta dt,
.post_deta dd {
	padding: 5px 0px;
}
.post_deta dd {
	padding-left: 10px;
	float: left;
}

/* w_other */
#w_other {
	position: relative;
	left: 50%;
	float: left;
	margin-top: 20px;
}
#w_other .post_deta {
	width: 240px;
	padding: 30px 30px 40px;
	background: #fff;
	position: relative;
	bottom: 0px;
	right: 7%;
	text-align: left;
	left: -50%;
	float: left;
	font-family: 'Noto Sans Japanese', sans-serif;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	margin: 20px 10px;
}
#w_other .post_deta:after {
	content: '';
	height: 106%;
	width: 1px;
	background: #ececec;
	position: absolute;
	right: 10px;
	top: -3%;
	z-index: 2;
}
#w_other .post_deta:before {
	content: '';
	height: 106%;
	width: 1px;
	background: #ececec;
	position: absolute;
	left: 10px;
	top: -3%;
	z-index: 2;
}


#w_other .post_deta p {
	 font-style: oblique;
	 font-size: 120%;
	 display: inline-block;
	 padding-top: 6px;
}


.works_post {
	background: url(../images/bk02.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	margin-bottom: 0px;
}
.works_post .title {
	margin-bottom: 23px;
}
.works_post .catch {
	margin-top: 50px;
}

.works_post a {
	color: #fff;
}
.works_post ul {
	margin: 80px 0px 40px;
	margin-left: -20px;
	color: #fff;
}

.works_post li {
	float: left;
	margin: 0px auto 40px;
	padding-left: 20px;
}

.works_post li p {
	padding-top: 10px;
}


.guide {
	background: #ececec;
	padding: 70px 0px 0px;
	position: relative;
}
.guide .bk_guide {
	background: url(../images/bk01.png);
	background-position: center top;
	background-repeat: no-repeat;
	width: 100%;
	min-height: 267px;
	position: absolute;
	top: -10px;
}

.guide .title {
	float: left;
	text-align: center;
	line-height: 1em;
	margin-left: 10%;
	margin-top: 5%;
}

.guide_box {
	float: right;
}

.guide_list {
	height: 180px;
	width: 180px;
	overflow: hidden;
	position: relative;
	float: left;
	background-color: #fff;
	-webkit-border-radius : 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin-left: 10px;
}


.guide .box {
  	text-align: center;
  	height:180px;
	min-width:180px;
	background-color: #80b63f;
	color: #fff;
	-webkit-border-radius : 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	display: inline-block;
	font-size: 110%;
	position: absolute;
}

.guide .box:before {
  	content: '';
  	display: inline-block;
  	height: 100%;
  	vertical-align: middle;
  	margin-right: -0.25em;
}

.guide .cover {
  	display: inline-block;
  	vertical-align: middle;
  	padding: 10px 15px;
}

.contenthover {
	padding: 20px;
}

/* slider
--------------------------------------------------------- */
.slideFrame {
	position: relative;
	margin: 60px auto 0px;
	overflow: hidden;
	overflow-x: auto;
	width: 100%;
	height: 150px;
}

.slideGuide {
	width: 150%;
	height: 100%;
}

.slideCell {
	display: block;
	float: left;
	width: 254px;
	height: 100%;
}


.news {
	margin-bottom: 80px;
}

.news .news_list {
	margin: 40px 0px 20px;
	font-size: 120%;
}

.news .news_list li {
	margin: 10px auto;
	padding: 30px 40px;
}
.news .news_list li .day {
	border-right: 1px solid #ccc;
	display: inline-block;
	padding: 10px;
	margin-right: 10px;
}
.news .news_list li:nth-child(even) {
  background-color: #f3f3f3;
}

.icon_new {
	padding: 5px 10px;
	background: #333;
	color: #fff;
	font-size: 90%;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}


.news_post {
	width: 85%;
	margin: auto;
}
.news_post .title {
	font-size: 230%;
	border-top: 14px solid #ececec;
	border-bottom: 14px solid #ececec;
	display: block;
	position: relative;
	line-height: 1.4em;
	padding: 25px 30px 25px;
	letter-spacing: 0.1em;
	margin: auto;
	margin-top: 70px;
}
.news .news_post .title .day {
	font-family: arial;
	font-size: 60%;
	display: block;
}
.news .news_post .title .icon_new {
	padding: 5px 10px;
	background: #333;
	color: #fff;
	font-size: 40%;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	position: absolute;
	top: 25px;
	right: 20px;
	line-height: 1.5em;
}
.news .news_post .main_txt {
	font-size: 120%;
	line-height: 1.8em;
	padding:50px 35px 80px;
	border-bottom: 14px solid #ececec;
	margin-bottom: 20px;
	position: relative;
}
.btn_post a {
	background-color: #80b63f;
	padding: 10px 20px 10px 20px;
	border-bottom: solid 4px #4b9900;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 20px;
	font-size: 110%;
}
.btn_post a:hover {
	background-color: #80b63f;
	padding: 10px 20px 10px 20px;
	border-bottom: solid 2px #4b9900;
	color: #fff;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
	margin-top: 22px;
	text-decoration: none;
}




#footer {
	width: 100%;
	background-color: #f5f5f5;
	margin-top: 70px;
	position: relative;
}

#footer .bk_footer {
	background: url(../images/bk01.png);
	background-position: center top;
	background-repeat: no-repeat;
	width: 100%;
	position: relative;
	top: -10px;
	padding-top: 20px;
}

#footer .add {
	text-align: right;
	width: 40%;
	float: right;
	margin-top: 20px;
}
#footer .add h2 {
	width: 86px;
	float: right;
}
#footer .add address {
	clear: both;
	padding-top: 10px;
	line-height: 2em;
}
#footer .g_nav {
	margin-top: 10px;
}
.copyright {
	text-align: right;
	clear: both;
	padding-top: 10px;
}

#footer .catch {
	position: relative;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-weight: 100;
	font-size: 180%;
	line-height: 1.4em;
	padding: 2px 30px 0px;
	letter-spacing: 0.1em;
	display: inline-block;
	margin: auto;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	margin-top: 20px;
}
#footer .catch:after {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	right: 20px;
	top: -0.2em;
	z-index: 2;
}
#footer .catch:before {
	content: '';
	height: 1.9em;
	width: 1px;
	background: #ececec;
	position: absolute;
	left: 20px;
	top: -0.2em;
	z-index: 2;
}


.f_nav {
	font-size: 115%;
	float: left;
	font-family: 'Montserrat', sans-serif;
	line-height: 0.9em;
	margin-top: 22px;
}
.f_nav li {
	float: left;
	padding: 0px 5px 0px 8px;
	position: relative;
}

.f_nav li a {
	display: inline-block;
}
.f_nav .clearfix li a:hover {
	text-decoration: none;
}
.f_nav .f_contact {
	font-family: 'Noto Sans Japanese', sans-serif;
	margin: auto;
	padding: 20px;
	line-height: 2em;
	margin-top: 20px;
}
.f_nav .f_contact h3 {
	font-size: 100%;
	font-weight: 400;
}

.f_nav .f_contact ul {
	position: relative;
	float: left;
	left: 50%;
}
.f_nav .f_contact li {
	position: relative;
	float: left;
	left: -50%;
	padding: 0px;
}
.sns_box {
    width: 587px;
    float: left;
}
.sub_link {
	padding-top: 20px;
	float: left;
}

.sub_link li {
	float: left;
	width: 44px;
	padding-right: 10px;
}
.sub_link li.btn_column {
	float: left;
	width: 110px;
	padding-right: 10px;
}



.free {
	background: url(../images/bk02.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	margin-bottom: 100px;
}

.free .flow_box {
	border: 8px solid #e7e7e7;
	padding: 40px 30px 20px;
	margin: 40px auto 0px;
	background-color: #fff;
	font-size: 120%;
	line-height: 1.6em;
}

.free .flow_box .num {
	position: relative;
	float: left;
	font-style: oblique;
	font-size: 320%;
	width: 5%;
}
.free .flow_box .main {
	float: right;
	width: 93%;
}
.free .flow_box .main h2 {
	margin-bottom: 20px;
	font-size: 200%;
}

.ph_r {
	float: right;
	padding: 0px 0px 20px 20px;
}

.ph_l {
	float: left;
	padding: 0px 20px 20px 0px;
}
.free .flow_box .ph_r {
	margin-top: -40px;
}


.blog .left_box {
	width: 70%;
	float: left;
}

.blog .main {
	border: 8px solid #e7e7e7;
	padding: 25px 30px 20px;
	margin: 40px auto 0px;
	background-color: #fff;
	font-size: 110%;
	line-height: 1.6em;
}

.blog .main h2 {
	margin-bottom: 20px;
	font-size: 180%;
	padding-bottom: 5px;
	border-bottom: 2px solid #e7e7e7;
	position: relative;
	line-height: 1.4em;
}
.blog .main h2 a:hover {
	text-decoration: none;
	color: #005c08;
}
.blog .main h2.all:hover {
	border-bottom: 2px solid #005c08;
}
.blog .main .day {
	font-size: 60%;
	display: block;
	font-weight: 400;
	padding-bottom: 7px;
	line-height: 1.5em;
}
.blog .main .icon_new {
	padding: 5px 10px;
	background: #333;
	color: #fff;
	font-size: 40%;
	-webkit-border-radius : 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	position: absolute;
	top: -5px;
	right: 0px;
	line-height: 1.4em;
}
.blog .main .main_txt {
	padding-bottom: 30px;
}

#side {
	float: right;
	width: 25%;
}
#side .side_box {
	margin: 40px auto 0px;
}

#side .title {
	background: #333;
	padding: 10px;
	color: #fff;
	font-size: 120%;
}
#side ul {
	margin: 10px auto;
}
#side .day {
	display: block;
}
#side ul li {
	padding: 5px 10px;
	border-bottom: 1px dotted #9c9c9c;
	margin-bottom: 5px;
}


.thought {
	background: #80b63f;
	padding-bottom: 30px;
	margin-bottom: -70px;
}

.table01 {
	width: 95%;
	margin: 30px auto;
	font-size: 110%;
	line-height: 1.6em;
	background: rgba(255,255,255,0.6);
	border-top: 14px solid #e7e7e7;
	border-bottom: 14px solid #e7e7e7;
}
.wpcf7-form .table01 {
	width: 85%;
}
.table01 th {
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 20px 30px;
	font-weight: normal;
	position: relative;
}
.wpcf7-form .table01 th {
	width: 36%;
}
.table01 td {
	border-top: 1px solid #ccc;
	padding: 20px 30px;
	padding-right: 10px;
}
.table01 .list span {
	display: inline-block;
	padding-right: 20px;
}

.table02 {
	width: 95%;
	color: #fff;
	margin: 30px auto;
}

.table02 tr:hover {
	background: rgba(0,0,0,0.07);
}

.table02 th {
	border-top: 1px solid rgba(255,255,255,0.31);
	border-right: 1px solid rgba(255,255,255,0.31);
	padding: 0px 10px;
	font-weight: 100;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 320%;
	text-align: center;
	position: relative;
}
.table02 th:after {
	content: '';
	background: url(../../images/company/icon_plus.png);
	background-repeat: no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: -5px;
	right: -4px;
}
.table02 th.space_none:after {
	content: none;
	background: none;
}
.table02 td {
	border-top: 1px solid rgba(255,255,255,0.31);
	padding: 20px;
}
.table02 td.ch {
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 280%;
	font-weight: 100;
}
.table02 th.space_none,
.table02 td.space_none {
	height: 10px;
	border-top: none;
	padding: 0px;
}
.table02 th.space_none.line,
.table02 td.space_none.line {
	border-top: 1px solid rgba(255,255,255,0.31);
}
.table02 th.space_none.line:after {
	content: '';
	background: url(../../images/company/icon_plus.png);
	background-repeat: no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: -5px;
	right: -4px;
}

.map {
	padding: 80px;
	padding-bottom: 0px;
	font-size: 120%;
	line-height: 2.2em;
}




body.top {
    margin:0;
    padding:0;
    padding-top: 2800px;
}

#wrapper {
/* 	position:fixed;  */
	position: relative;
    width:100%;
    height: 100%;
    min-height: 100%;
/*     overflow: hidden; */
}
.top #wrapper {
	padding-top: 0px;
}

.num {
    margin: 0;
    position: fixed;
    right: 10px;
    top: 10px;
    z-index: 100000;
}
#ani_bk {
	width:100%;
	height: 100%;
	position: relative;
	top: 0px;
	z-index: 1;
	opacity: 1;
}
#ani_bk .contactBox {
	width: 100%;
	height: 100%;
	margin: auto;
	position: relative;
}
#ani_bk .mov {
	position: fixed;
	top: 42%;
	left: 61%;
	z-index: 2;
}
#ani_bk .tel {
	position: fixed;
	top: 62%;
	left: 53%;
	z-index: 2;
}
#ani_bk .wstore {
	position: fixed;
    top: 77%;
    left: 22%;
    z-index: 2;
}
/*#box5 .contactBox .wstore {
    position: fixed;
    top: 77%;
    left: 21%;
    z-index: 2;
}*/
/*#ani_bk .wstore img , #box5 .contactBox .wstore img{
    width: 89%;
}*/
#ani_bk .txtBox {
	text-align: right;
	position: relative;
	top: -60px;
}
#ani_bk .txtBox ul {
	text-align: right;
	padding: 10px 20px;
	border-top: 1px solid rgba(255,255,255,0.17);
	border-bottom: 1px solid rgba(255,255,255,0.17);
	display: inline-block;
	position: relative;
	right: -3%;
	top: 50px;
}
#ani_bk .txtBox ul li {
	position: relative;
	padding: 3px 0px;
}
#ani_bk .txtBox ul:after {
	content: '';
	height: 105%;
	width: 1px;
	background: rgba(255,255,255,0.17);
	position: absolute;
	right: 10px;
	top: -10px;
	z-index: 2;
}
#ani_bk .txtBox ul:before {
	content: '';
	height: 105%;
	width: 1px;
	background: rgba(255,255,255,0.17);
	position: absolute;
	left: 10px;
	top: -10px;
	z-index: 2;
}

#ani {
	width:100%;
	height: 100%;
	position: fixed;
	background-color: #fff;
	background-image: url(../images/bk03.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	top: 0px;
	z-index: 2;
}

#ani .catch {
	font-weight: 400;
}


.anibox {
    position: fixed;
    top: 0px;
    z-index: 1000;
}
#box1 {
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1000;
}
#box2 {
	width: 100%;
	text-align: center;
	top: 30%;
	font-size: 120%;
	z-index: 1002;

}
#box3 {
    width: 100%;
    text-align: center;
    opacity: 0;
}
#box4 {
    width: 100%;
    text-align: center;
    top: 60%;
	margin: auto;
	opacity: 0;
}
#box4 .txtBox {
	width: 980px;
	margin: auto;
	text-align: right;
	position: relative;
}
#box4 ul {
	text-align: right;
	padding: 10px 20px;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	display: inline-block;
	position: relative;
	right: -3%;
}
#box4 ul li {
	position: relative;
	padding: 5px 0px;
}

#box5 {
	width: 100%;
	height: 100%;
    top: 0%;
	margin: auto;
	opacity: 0;
	z-index: 0;
	position: relative;
/*
	background-image: url(../../images/top/hed_main_ime.jpg);
	background-repeat: no-repeat;
	background-position: center top;
*/
}
#box5 .contactBox {
	width: 100%;
	height: 100%;
	margin: auto;
	position: relative;
}
#box5 .contactBox .mov {
	position: absolute;
	top: 42%;
	left: 61%;
}
#box5 .contactBox .tel {
	position: absolute;
	top: 62%;
	left: 53%;
}
#box5 .contactBox .wstore {
	position: absolute;
    top: 77%;
    left: 22%;
    z-index: 2;
}

#box4 ul:after {
	content: '';
	height: 105%;
	width: 1px;
	background: #ececec;
	position: absolute;
	right: 10px;
	top: -10px;
	z-index: 2;
}
#box4 ul:before {
	content: '';
	height: 105%;
	width: 1px;
	background: #ececec;
	position: absolute;
	left: 10px;
	top: -10px;
	z-index: 2;
}



/* #lg-gallery ギャラリー*/
#lg-gallery {
	text-align: left;
}

ul.lightGallery li:hover {
  cursor: pointer;
}

#lg-outer {
	background: rgba(0,0,0,0.80);
}

/* #facebook */
a.pluginButtonContainer,
.pluginButtonContainer {
	background: #4c69ba;
	background: -webkit-gradient(linear, center top, center bottom, from(#4c69ba), to(#3b55a0));
  background: -webkit-linear-gradient(#4c69ba, #3b55a0);
  border: none;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
	border-radius: 2px;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  padding: 3px 4px 2px 24px;
  display: inline-block;
  position: relative;
}
.pluginButtonContainer:hover {
	text-decoration: none;
	color: #fff;
}
.pluginButtonContainer:after {
	content: '';
	background-image: url(https://fbstatic-a.akamaihd.net/rsrc.php/v2/yq/r/5KRCSFgarYF.png);
  background-size: 32px 76px;
  background-repeat: no-repeat;
  background-position: 0 -44px;
  display: inline-block;
  height: 14px;
  width: 14px;
  position: absolute;
  top: 4px;
  left: 5px;
}

.facebookLike {
	margin-top: 25px;
	float: left;
}
.facebookLike span {
	display: inline-block;
	padding-top: 0px;
	vertical-align: middle;
}
.facebookCount {
	font-size: 180%;
	padding-left: 5px;
	color: #3b55a0;
}

.facebookLike .txtLink {
	text-decoration: underline;
}

/* fluidbox */
.works_example li:hover p {
	text-decoration: underline;
}
a[data-fluidbox] {
    background-color: #eee;
    border: none;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    display: inline-block;
}
.blog .main_txt a[data-fluidbox] {
    background-color: transparent !important;
}
.south,
.def-html {
	float: left;
}


.not_found {
	padding: 40px 70px 70px;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 125%;
	line-height: 2em;
	text-align: center;
}
.not_found p {
	text-align: center;
	margin-bottom: 30px;
}


/* recruit */

.rec_txt {
	width: 931px;
	margin: 50px auto;
}
.rec_box01 {
/* 	border: 8px solid #e7e7e7; */
    padding: 0px 0px 0px;
    margin: 0px auto 0px;
    background-color: #fff;
    font-size: 120%;
    line-height: 1.6em;
    width: 89%;
}
.rec_box02 {
	border: 8px solid #e7e7e7;
    padding: 30px 30px 20px;
    margin: 40px auto 0px;
    background-color: #fff;
    font-size: 120%;
    line-height: 1.6em;
    width: 87%;
}

.rec_box02 h3 {
	font-size: 145%;
	font-weight: 300;
	margin-bottom: 15px;
}

.rec_box02 dl {
	margin: 10px auto;
}
.rec_box01 dt,
.rec_box02 dt {
	color: #80b63f;
}


.top_c_txt {
    text-align: center;
    margin-top: 28px;
    line-height: 2em;
    font-size: 105%;
}

.rep {
	margin-top: 40px;
}

.rep_txt:first-child {
	width: 80%;
	line-height: 2em;
	margin: 60px auto 30px;
}
.rep_txt {
	width: 80%;
	line-height: 2em;
		margin: 0px auto 30px;
}
.rep_txt .big_txt {
	font-size: 140%;
}

._alignRight {
	width: 80%;
	margin: auto;
	text-align: right;
}
._alignRight img {
	max-width: 100%;
	width: auto;
}
#box {
    font-size: 120%;
	width: 98%;
    margin: auto;
}
.r_tit {
    margin-bottom: 30px;
	font-weight: bolder;
	font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.img_l img {
    width: 100px;
    max-width: none;
    margin: 13px 26px 13px 0;
}
.txt_r {
    font-size: 14px;
    line-height: 170%;
}
.main_Tb {
    margin-bottom: 50px;
}
.lt {
    float: left;
}
.rt {
    float: right;
}
h2.b_tit {
    font-size: 31px;
    font-weight: 400;
    margin: 150px 0 20px;
	font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.sub_tit {
    text-align: center;
    color: #ff9a1a;
    font-size: 24px;
    padding-top: 20px;
    padding-right: 24px;
	font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.mb30 {
    margin-bottom: 30px;
}
.mb50 {
    margin-bottom: 50px;
}
.mb100 {
    margin-bottom: 100px;
}
.ce{
	text-align:center;
}
.gray_box {
    background: #f1f6f0;
    padding: 20px;
    line-height: 170%;
    border-radius: 3px;
}
.b_tit1 {
    font-size: 31px;
    margin-bottom: 40px;
	font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.multy_img  {
  display: flex;
  justify-content: center;
}

.contact_tit {
	 padding-top: 16px;
    font-size: 20px;
    line-height: 170%;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.tel {
    font-weight: bold;
}
.contact_txt {
    text-align: center;
    padding: 22px;
    background: #e7e7e7;
    width: 80%;
    margin: auto;
    font-size: 20px;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    font-weight: bold;
}

/***********WEB STORE*************/
._in {
	width: 960px;
	margin: auto;
	}
.store_head {
    margin: 0 auto 53px;
	}
.store_head img{
    padding-top: 85px;
	}

.item_flex {
    display: flex;
    -webkit-flex-wrap: wrap; /* Safari */
  	flex-wrap: wrap;
	}
.item_flex .item_all{
    width: 220px;
    margin-bottom: 40px;
	color: #353535;
    line-height: 200%;
	margin-right: 26px;
	position: relative;
	}
.sold_out {
    position: absolute;
    top: 0;
    left: 0;
	opacity: 0.7;
	width: 220px;
    height: 220px;
}
.item_flex li.item_all:nth-child(4n) {
	margin-right: 0;
	}
.img_box {
    width: 220px;
    height: 220px;
    background-size: cover;
    background-position: center center;
	margin-bottom: 10px;
	}
.item_container{
    padding-top: 85px;
	}
.item_main_img {
    float: left;
	position: relative;
	}
.item_img_list {
    float: right;
    width: -webkit-calc(100% - 680px);
    width: -moz-calc(100% - 680px);
    width: calc(100% - 680px);
	}
li.item_themb img{
    width: 125px;
	}
li.item_themb {
    padding-left: 13px;
    padding-bottom: 13px;
	}
.about_box {
    margin-top: 40px;
    background: #f3f3f3;
    padding: 55px 40px 42px;
    color: #353535;
}
.item_title {
    font-size: 45px;
    color: #3d3d3d;
    font-family: 'Montserrat', sans-serif;
}
.small_t01 {
    font-size: 17px;
    color: #070707;
	padding-left: 20px;
}
.item_title p {
    text-align: center;
    padding-bottom: 40px;
}
.des_data, .detail_data, .postage_data, .attention_data  {
    background: #fff;
    padding: 35px 30px 30px;;
    line-height: 200%;
	margin-bottom: 30px;
}
.title_sub {
    font-family: 'Montserrat', sans-serif;
    font-size: 29px;
    padding-bottom: 12px;
}
.small_t02 {
    font-size: 12px;
    margin-left: 15px;
}
.postage_data table {
  border-collapse: collapse;
  margin-bottom: 10px;
  padding: 0;
  width: 100%;
  table-layout: fixed;
}
.postage_data table th,
.postage_data table td {
  padding: 9px;
  text-align: center;
  color: #222;
  border-right: 1px solid #b1b1b1;
  border-left: 1px solid #b1b1b1;
}

.postage_data table th {
  text-transform: uppercase;
  background: #e1e1e1;
  font-weight: inherit;
}
.postage_data table td {
  background: #f4f4f4;
}
.caption {
    color: #b40000;
}
.price_data table {
    border-collapse: collapse;
    margin: 40px auto;
    padding: 0;
    width: 80%;
    table-layout: fixed;
    text-align: center;
}
.price_data table tr {
    border: 1px solid #b1b1b1;
}
.price_data table th, .price_data table td {
    padding: 20px 9px;
    text-align: center;
    color: #222;
    border-right: 1px solid #b1b1b1;
}
.price_data table th {
    width: 170px;
    background: #e1e1e1;
    font-size: 14px;
    font-weight: initial;
}
.price_data table td.item_price_c{
    color: #ff0000;
}
.price_data table td {
    text-align: left;
    background: #fff;
}
.main_soldout {
    position: absolute;
    top: 0;
    left: 0;
    height: 410px;
    width: 680px;
    opacity: 0.7;
}
.order_container {
    padding-top: 50px;
}
.form_title {
    font-size: 20px;
    background: #e7e7e7;
    padding: 23px;
    text-align: center;
}
.flow_box1 {
    border: 8px solid #e7e7e7;
    padding: 30px 0;
    margin: 40px auto 0px;
    background-color: #fff;
    font-size: 120%;
    line-height: 1.6em;
}
.flow_box1 ol {
    width: 72%;
    text-align: center;
    margin: auto;
}
.flow_box1  ol li {
    text-align: left;
}
.flow_box1 ol li span {
    padding: 7px 11px;
    background: #e1e1e1;
    margin: 10px;
    line-height: 250%;
}
.flow_tit {
    font-size: 20px;
    text-align: center;
    margin: 0 0 21px;
}
.wpcf7-form .table01.order_form {
    width: 100%;
}


#_box {
    width: 100%;
    margin: auto;
    font-size: 110%;
    line-height: 1.5em;
    max-width: 930px;
}
#_box .rec_txt {
    width: 100%;
    margin: 30px auto;
}

#_box ._ch {
	font-size: 110%;
	line-height: 2em;
	letter-spacing: 0.1em;
}

#_box ._obi {
	font-size: 130%;
	color: #fff;
	background: #f7942c;
	padding: 20px 14px;
	text-align: center;
	font-weight: 600;
	margin: 30px auto;
}

#_box ._design_li {
	margin: 30px auto;
}

#_box ._design_li dt {
	float: left;
	width: 100px;
}

#_box ._design_li dd {
	float: left;
	padding: 0 20px;
	border-left: 1px solid #ccc;
}

#_box ._design_li dd ul {
	margin-bottom: 14px;
}

#_box ._design_li dd ul li {
	margin: 7px 0;
}

#_box ._ch2 {
	padding: 40px 100px;
	margin: 30px auto;
	background: #f2f2f2;
	font-size: 110%;
	line-height: 1.8em;
}

.g_nav li:nth-of-type(10) {
    padding: 0;
    position: relative;
}
.g_nav li:nth-of-type(10) a {
    position: absolute;
    right: -155px;
    top: -14px;
    font-size: 14px;
    background: #626262;
    padding: 7px 7px 4px 4px;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    font-family: "Noto Sans Japanese";
}

.post .g_nav li:nth-of-type(10) a {
    position: absolute;
    right: -154px;
    top: -14px;
    font-size: 14px;
    background: #626262;
    padding: 7px 7px 4px 4px;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
}

.g_nav li:last-child a {
    top: 15px;
    padding: 7px 10px 4px 30px;
}
.g_nav li:nth-of-type(10) a:hover {
    opacity: 0.8;
}

.c2020 #box5 .contactBox .tel,
.c2020 #ani_bk .tel {
    position: absolute;
    top: 56%;
    left: 64%;
    z-index: 2;
    max-width: 110px;
    width: 6%;
}
.c2020 #box5 .contactBox .mov,
.c2020 #ani_bk .mov {
    position: absolute;
    top: 53%;
    left: 39%;
    z-index: 2;
    max-width: 106px;
    width: 6%;
}
.c2020 #box5 .contactBox .wstore,
.c2020 #ani_bk .wstore {
	position: absolute;
    top: 65%;
    left: 10%;
    z-index: 2;
    max-width: 136px;
    width: 8%;
}

.c2020 #box5 .contactBox .colum_i,
.c2020 #ani_bk .colum_i {
	position: absolute;
    top: 45%;
    right: 7%;
    z-index: 2;
    max-width: 134px;
    width: 9%;
}

.c2020 #ani_bk .txtBox {
    display: none;
}

.c2020 #box4 {
    display: none;
}

.c2020 .sc_navi {
	color: rgba(255,255,255,0.44);
    position: fixed;
    top: unset;
    right: 47%;
    bottom: 10%;
}
.c2020 .sc_navi div a {
    background: rgba(0,0,0,0.27);
}

.contents.main_2020 {
    width: 100%;
}
.contents.main_2020 .main_2020_bk {
    width: 100%;
}