@charset "utf-8";
/* CSS Document */

/*** RESET ***************************************************/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	font-style:normal;
}
button, input, select, textarea {
	background-color:transparent;
	border-style:none;
}
h1, h2, h3, h4, h5, h6 { overflow-wrap:break-word; }
* {
	-webkit-box-sizing: border-box;
	-mos-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {  display:block; }
ul,
ul li{ list-style:none; }

/*** BASE ***************************************************/
body { width:100%; min-width:1000px; line-height:1.95rem; background:#FFF; color:#2c2c2c; font-family:"Noto Serif JP", serif; font-weight:500; font-style:normal; letter-spacing:0.05rem; }

@media screen and (min-width: 1079px) {
	.sp-only { display: none !important; }
}
@media screen and (max-width: 1080px) {
.pc-only { display: none !important; }
body { min-width:100%; }
}

/*** hamburger_menu ***************************************************/

@keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}
@-webkit-keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}
#overlay-button {
  position:fixed;
  right: 1em;
  top: 1.2em;
  padding: 26px 11px;
  z-index: 8;
  cursor: pointer;
  user-select: none;
}
#overlay-button span {
  height: 4px;
  width: 38px;
  border-radius: 2px;
  background-color: #000;
  position: relative;
  display: block;
  transition: all .2s ease-in-out;
}
#overlay-button span:before {
  top: -10px;
  visibility: visible;
}
#overlay-button span:after {
  top: 10px;
}
#overlay-button span:before, #overlay-button span:after {
  height: 4px;
  width: 38px;
  border-radius: 2px;
  background-color: #000;
  position: absolute;
  content: "";
  transition: all .2s ease-in-out;
}

#overlay-button:hover span, #overlay-button:hover span:before, #overlay-button:hover span:after {
  background: #000;
}

input[type=checkbox] {
  display: none;  
}

input[type=checkbox]:checked ~ #overlay {
  visibility: visible; 
}

input[type=checkbox]:checked ~ #overlay-button:hover span, input[type=checkbox]:checked ~ #overlay-button span {
  background: transparent;
}
input[type=checkbox]:checked ~ #overlay-button span:before {
  transform: rotate(45deg) translate(7px, 7px);
}
input[type=checkbox]:checked ~ #overlay-button span:after {
  transform: rotate(-45deg) translate(7px, -7px);
}

#overlay {
  height: 100vh;
  width: 100vw;
  background: #af9340;
  z-index: 7;
  visibility: hidden;
  position: fixed;
}
#overlay.active {

}
#overlay ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  height: 100vh;
  padding-left: 0;
  list-style-type: none;
}
#overlay ul li {
  padding: 1em;
}
#overlay ul li a {
  color: #FFF;
  font-size: 1.0em;
}

/******************************************************/

img{ width:100%; height:auto; vertical-align:bottom; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; color:#2b2b2b; outline:none; }
a:link, a:visited { text-decoration:none; }
a:active, a:hover { text-decoration:none; }

#page-top { position:fixed; bottom:3rem; right:2vw; z-index:9999; }
#page-top .pagetop-img { width:120px; height:120px; }

.cont-flex { display:-webkit-flex; display:-ms-flexbox; display:flex; }
.cont-wrap { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-evenly; margin:50px 0; } 
.wrap-inner { max-width:1150px !important; margin:0 auto; }

.sec-content { margin-bottom:10rem; }
.sec-container { max-width:1150px; margin:6rem auto; padding:2rem 0; }
.sec-bginner { padding:0; }
.sec-heading { text-align:center; line-height:1rem; font-size:5rem; font-family:"EB Garamond", serif !important; font-weight:400; margin-bottom:7rem; }
.sm-title { font-size:4.1rem; }
.sec-heading .heading-sub { display:block; font-size:1.8rem; font-weight:500; line-height:1.8rem; margin-top:4rem; }

.arrow-right:before { content: ""; display:block; width:0.3rem; height:0.3rem; border-top:1px solid #000; border-right:1px solid #000; transform: rotate(45deg); margin:0.9rem 1rem 0 0; }
.list-wrap { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between;  }

.chara-overlay { font-family:"EB Garamond", serif !important; font-weight:400; }

@media screen and (max-width: 1080px) {
	#page-top { bottom:5vw; right:4vw; }
	#page-top .pagetop-img { width:70px; height:70px; }
	
	.wrap-inner { max-width:100% !important; }
	.cont-flex { display:block; }
	.sec-content { margin-bottom:6rem; }
	.sec-container { width:82%; margin:0 auto 3rem; padding-top:4rem; }
	.sec-heading { font-size:2.9rem; margin-bottom:2rem; }
	.sec-heading .heading-sub { font-size:1.2rem; margin-top:2rem; }
	.list-wrap { justify-content:left; } 
}
/*** HEADER ***************************************************/
.h-outer { width:100%; height:265px; background:url(../img/common/h-bg.jpg) repeat center; position:relative; }
.h-contact { position:absolute; top:0; right:5%; display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; }
.h-contact .h-line { width:170px; margin-right:10px; }
.h-contact .h-mail { width:170px; }
.h-inner { width:100%; height:200px; background-color:#FFF; position:absolute; top:35px; padding-top:40px; box-shadow:6px 6px 2px 1px rgba(0, 0, 0, .1); }
.h-inner .cont-flex { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between; }
.h-inner .h-logo { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; } 
.h-logo .h-logomk a { width:140px; display:block; }
.h-logo .h-compnm a { width:365px; display:block; margin-top:8px; }

.h-nav .nav-inner { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between; }
.h-nav li { width:140px; height:130px; margin-right:36px; }

@media screen and (min-width: 1079px) {
	.spnav { display: none !important; }
}

@media screen and (max-width: 1080px) {
	.h-outer { height:159px; background-size:contain; }
	.h-contact { display: none !important; }
	.h-inner { height:140px; padding:0.7rem 0 0 0.6rem; top:0.6rem; }
	.h-logo .h-logomk a { width:48px; }
	.h-logo .h-compnm a { width:180px; margin-top:-3px; }
	.h-nav  { width:258px; margin:0.5rem auto; }
	.h-nav li { width:70px; height:auto; margin-right:1.5rem; }
	.h-nav li:last-child { margin-right:0; }
}

/*** FOOTER ***************************************************/

.f-outer { padding:2rem 0; }
.f-contact-area { width:100%; background:url(../img/common/bg03.jpg) repeat; color:#FFF; padding:1rem 0; margin-bottom:3rem; }
.f-contact-area .sec-heading { margin-bottom:4rem; }
.f-contact-area .sec-heading .heading-sub { font-size:1.2rem; margin-bottom:1.1rem; }
.f-contact-area .contact-item { justify-content:center; }
.f-contact-area .contact-item .contact-inner { width:40%; text-align:center; }
.f-contact-area .contact-item .item-lead { font-size:1.3rem; }
.f-contact-area .contact-item .item-btn a { width:300px; display:block; padding:1.3rem 3rem; background:#FFF; border-radius:3px; margin:12px auto 0; }

.f-nav { text-align:center; letter-spacing:0.08rem; font-size:0.95rem; margin-bottom:3rem; }
.f-nav .cont-flex { justify-content:center; }
.f-nav .nav-list { margin-right:12px; }

.f-company-info { width:60%; margin:0 auto; }
.f-compinfo-inner { width:50%; }
.f-compinfo-inner .f-companylead { font-size:0.9rem; line-height:1.6rem; padding-top:2rem; }
.f-compinfo-inner .company { font-size:0.7rem; }
.f-compinfo-inner .companynm { font-size:1.3rem; margin-bottom:1.2rem; }
.f-compinfo-inner .company-detail { font-size:0.85rem; }
.f-compinfo-inner .f-logo { width:280px; display:block; }

.copyright { text-align:center; font-size:0.6rem; letter-spacing:0.2rem; line-height:1rem; }

@media screen and (max-width: 749px) {
	.f-outer { width:90%; margin:0 auto; }
	.f-contact-area .contact-item .contact-inner { width:100%; margin:0 auto 2rem; }
	.f-company-info, .f-compinfo-inner { width:100%; }
	.f-compinfo-inner .f-logo { margin:0 auto; }
}

@media screen and (max-width: 1080px) {
	.f-outer { width:90%; margin:0 auto; }
	.f-contact-area .sec-container { padding:3rem 0 0.1rem; }
	.f-contact-area .sec-heading .heading-sub { font-size:1rem; }
	.f-contact-area .contact-item .item-lead { font-size:1rem; }
	.f-contact-area .contact-item .item-btn a { width:90%; max-width:300px; padding:1.2rem 2rem; }
	.f-contact-area .contact-item .contact-inner { width:95%; margin:0 auto 2rem; }
	
	.f-company-info, .f-compinfo-inner { width:95%; margin:0 auto; }
	.f-compinfo-inner .f-logo { margin:0 auto; }
	.f-nav .next-nav { font-size:0.7rem; display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-justify-content:flex-start; justify-content:flex-start; margin-top:1.2rem; }
	.f-nav { margin-bottom:1rem; }
	.f-nav .nav-list { margin:0 0 0 2rem; text-align:left; }	
}

/*** HOME ***************************************************/

.outer-mv { width:90%; max-width:1500px; max-height:750px; margin:0 auto; }

.top-news-area { width:100%; background:#981f17; padding:18px 0 20px; color:#FFF; }
.top-news-area .top-news-heading { font-size:1.2rem; margin-right:40px; }
.top-news-area a { color:#FFF; }
.top-news-area .inner-post { width:800px; }
.top-news-area .inner-post .post-time, .inner-post .post-heading { margin-right:22px; }
.link-newslist a { text-decoration:underline; }

.top-concept-area { width:100%; background:url(../img/common/bg02.jpg) repeat; padding:50px 0; }
.top-concept-area .concept-pic { width:50%; max-width:550px; position:relative; }
.top-concept-area .concept-pic .chara-overlay { font-size:130px; color:#ebe7de; position:absolute; bottom:-50px; left:350px; }
.top-concept-area .concept-detail { width:45%; margin:30px 0 0 5%;  }
.top-concept-area .concept-title { font-size:2.2rem; margin-bottom:2.5rem; }
.top-concept-area .concept-txt { line-height:1.8rem; font-size:1.08rem;  }
.top-concept-area .concept-img { justify-content:space-evenly; margin-top:8rem; }
.top-concept-area .pic-item { max-width:322px; }
.top-concept-area .pic-item:nth-child(1) { padding-top:2rem; }
.top-concept-area .pic-item:nth-child(2) { padding-top:8rem; }

.top-products-area { width:100%; position:relative;  }
.top-products-area .sec-container { max-width:100% !important; padding:0; }
.top-products-area .wrap-inner { max-width:100% !important; }
.top-products-area .recommend { max-width:1150px; margin:0 auto; position:relative; margin-bottom:8rem; z-index:5; justify-content:space-between; }
.top-products-area .recommend-pic { width:50%; max-width:528px; position:absolute; top:0; right:0; }
.top-products-area .recommend-inner { width:46%; margin:1rem 2rem 0 0; }
.mk-recommend { width:142px; margin-bottom:1.5rem; }
.recommend-detail .recommend-title { font-size:2.1rem; margin-bottom:1.4rem; }
.recommend-detail .recommend-txt { font-size:1.08rem; line-height:1.9rem; margin-bottom:4.8rem; } 
.recommend .other-bag { text-align:center; }
.recommend .other-bag .bag-pic { max-width:290px; margin:0 auto 1.4rem; }
.recommend .other-bag .bag-txt { font-size:0.9rem; line-height:1.3rem; }
.point-detail { width:100%; background:url(../img/common/bg01.jpg) repeat; padding:3rem 0; }
.point-detail .point-inner { max-width:1150px; width:80%; margin:0 auto;  }
.point-detail .point-item  { max-width:290px; text-align:center; }
.point-detail .point-txt { font-size:1.28rem; font-weight:800; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif; margin-bottom:1.3rem; padding: 0.2rem; }
.point-detail .txt-line { background:linear-gradient(#e7d08d 0%, #e7d08d 60%); background-repeat:no-repeat; background-size:100% 10px; background-position:bottom; padding:0.25rem 0.3rem; }

.btn-pagelink a { display:block; width:300px; background:#af9340; color:#FFF; text-align:center; border-radius:3px; margin:5vw auto 0; padding:13px 0; }

.top-work-area { position:relative; }
.top-work-area .sec-container { max-width:100% !important; padding:0; }
.top-work-outer { margin-bottom:9rem; }
.top-work-outer:before { content:""; position:absolute; top:20.5rem; right:0; display:block; width:100%; height:32rem; background:#f4f0e4; z-index:1; }
.top-work-area .work-pic { width:50%; max-width:528px; z-index:5; }
.top-work-area .work-inner { width:45%; margin:30px 0 0 5%; position:relative; z-index:5; }
.top-work-area .work-inner .shop-name { font-size:2rem; margin-bottom:0.2rem; }
.top-work-area .work-inner .shop-name .shop-nt { font-size:1.3rem; }
.top-work-area .work-inner .shop-info { font-size:0.9rem; margin-bottom:1.4rem; }
.top-work-area .work-inner .shop-pic { max-width:323px; margin:2.2rem 0 0 3rem; }

.top-blog-area .heading-sub { font-size:1.1rem !important;  }
.top-blog-area .blog-inner { width:33%; max-width:322px; }
.top-blog-area .blog-inner .blog-thumbnail a img { width:322px; height:223px; margin-bottom:0.6rem; object-fit:cover; }
.top-blog-area .blog-inner .blog-title { line-height:1.6rem;  }
.top-blog-area .blog-inner .blog-date { display:block; font-size:0.8rem; }

@media screen and (max-width: 1080px) {
	.outer-mv { width:100%; max-width:100%; max-height:946px; overflow:hidden; }
	.top-news-area { padding:1rem 1rem 1.2rem; }
	.top-news-area .inner-post { width:100%; line-height:1.2rem; margin-bottom:0.4rem; }
	.post-time { font-size:0.8rem; }
	.link-newslist { text-align:right; }
	.top-concept-area { padding:2rem 0 0.5rem; }
	.top-concept-area .concept-pic { width:100%; margin:0 0 1rem; }
	.top-concept-area .concept-pic img { width:100%; margin:0 auto; }
	.top-concept-area .concept-detail { width:100%; margin:3rem 0 0 0; }
	.top-concept-area .concept-pic .chara-overlay { font-size:67px; left:0; bottom:-25px; }
	.top-concept-area .concept-title { font-size:2.1rem; margin-bottom:1.4rem; line-height:2.6rem; }
	.top-concept-area .concept-img { margin-top:0; }
	.top-concept-area .cont-wrap { display:flex; margin:2rem 0 0; }
	.top-concept-area .pic-item { width:70%; margin:0 auto 1rem; }
	.top-concept-area .pic-item:nth-child(1), .top-concept-area .pic-item:nth-child(2) { padding-top:0; }

	.top-products-area .sec-container { width:100%; }
	.top-products-area .recommend { width:82%; margin:0 auto; }
	.top-products-area .recommend-inner { width:100%; margin:1rem 0 0; }
	.top-products-area .recommend-pic img { width:100%; margin:0 auto; }
	.top-products-area .recommend-pic { width:100%; position:unset; }
	.top-products-area .recommend { height:auto; margin-bottom:3rem; }
	.recommend-detail .recommend-title { font-size:1.6rem; }
	.recommend-detail .recommend-txt { margin-bottom:2rem; }
	.recommend .other-bag { width:80%; margin:0 auto; }
	.recommend .other-bag .bag-pic { width:100%; }
	.recommend .other-bag .bag-txt { line-height:1rem; }
	.top-products-area .cont-wrap { display:flex; }
	.point-detail { width:100%; background:url(../img/common/bg01.jpg) repeat; z-index:1; padding:2rem 0;  }
	.point-detail .point-inner { width:82%; margin:0 auto; }
	.point-detail .point-item { width:100%; max-width:290px; margin:0 auto 1.5rem; }
	.point-detail .point-txt { font-size:1.25rem; margin-bottom:0.5rem; }
	.point-detail .point-item img { width:82%; margin:0 auto; }
	.top-products-area .btn-pagelink { width:82%; margin:0 auto; }
	
	.btn-pagelink a { width:100%; }
	
	.top-work-outer { margin-bottom:4rem; }
	.top-work-outer .cont-wrap { display:flex; }
	.top-work-outer:before { top:19rem; height:38rem; }
	.top-work-area .work-inner { width:100%; margin:30px auto 0; } 
	.top-work-area .work-pic { width:100%; max-width:528px; margin:0 auto; }
	.top-work-area .work-inner .shop-name { font-size:1.3rem; }
	.top-work-area .work-inner .shop-name .shop-nt { font-size:1rem; }
	.top-work-area .work-inner .shop-pic { width:90%; margin:1rem auto; }
	
	.top-blog-area .heading-sub { font-size:1rem; }
	.top-blog-area .blog-inner { width:90%; margin:0 auto 2.3rem; } 
	.top-blog-area .blog-inner .blog-thumbnail { width:100%; height:auto; }
}

/*** PAGE共通 ***************************************************/

.outer-pagehead { width:100%; height:252px;  }
.inner-pagehead .page-heading { color:#FFF; font-family:"EB Garamond", serif !important; font-weight:400; font-size:65px; text-align:center; line-height:3.3rem; position:relative; padding-top:85px; letter-spacing:0.15rem; }
.inner-pagehead .heading-sub { display:block; font-size:1.1rem; letter-spacing:0.08rem; }

.breadcrumbs { font-size:0.8rem; font-family:sans-serif; margin-top:2rem; }
.breadcrumbs .breadcrumbs-wrap { justify-content:flex-start; margin:0; }
.breadcrumbs .breadcrumbs-list a { display:block; margin-right:12px; text-decoration:underline; }

@media screen and (max-width: 1080px) {
	.outer-pagehead { height:7rem; }
	.inner-pagehead .page-heading { font-size:34px; line-height:1.8rem; padding-top:2.4rem; }
	.breadcrumbs { font-size:0.68rem; margin:1rem 0 0 0.5rem; }
}

/*** SERVICE ***************************************************/

.page-service { background:url(../img/service/page-head.jpg) no-repeat center; background-size:cover; position:relative; }
.business-area, .business-cont { max-width:100% !important; padding:0 !important; }
.business-bg01, .business-bg02 { position:relative; height:34rem; margin-bottom:5rem; }
.business-bg01:before { content:""; position:absolute; top:4rem; right:0; display:block; width:80%; height:29rem; background:#e2dfd9; z-index:1; }
.business-bg02:before { content:""; position:absolute; top:5rem; left:0; display:block; width:80%; height:28rem; background:#f8f8ec; z-index:1; }
.business-bg01 .pt-frame { justify-content:space-evenly; }
.business-bg02 .pt-frame { position:relative; justify-content:space-evenly; }
.business-bg01 .business-pic { width:50%; max-width:522px; position:relative; z-index:2; }
.business-bg02 .business-pic { width:50%; max-width:522px; position:absolute; top:1rem; right:0; z-index:2; }
.business-bg01 .business-pic .chara-overlay { display:block; font-size:7rem; color:rgba(255,255,255,0.6); position:absolute; top:8rem; left:78%; z-index:4; line-height:5rem; }
.business-bg02 .business-pic .chara-overlay { display:block; font-size:7rem; color:rgba(226,223,217,0.6); position:absolute; top:8rem; right:91%; z-index:4; line-height:5rem; }
.business-bg01 .business-point { width:36%; padding-top:15rem; position:relative; z-index:3; }
.business-bg02 .business-point { width:36%; margin-left:7rem; padding-top:15rem; position:absolute; left:60px; z-index:3; }
.business-title { font-size:2.2rem; margin-bottom:2.2rem; }

.flow-area { width:100%; background:#f9eded; padding:1rem 0 1.4rem; margin-bottom:0; }
.flow-frame { width:160px; height:240px; background:#FFF; position:relative; text-align:center; padding:2.8rem 1rem 2rem; }
.flow-frame .label-num { width:5rem; height:5rem; background:#903b27; color:#FFF; font-size:0.95rem; padding-top:0.5rem; border-radius:50%; position:absolute; top:-2.8rem; left:5rem; transform: translateX(-50%); -webkit-transform: translateX(-50%); z-index:3; }
.flow-frame .label-num .num-up { display:block; font-size:1.6rem; line-height:1.6rem; }
.flow-wrap { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:nowrap; -ms-flex-wrap:nowrap; flex-wrap:nowrap; justify-content:space-between;  }
.flow-head { font-size:1.2rem; margin-bottom:2rem; }
.flow-title { font-size:0.95rem;  }
.flow-txt { font-size:0.8rem; line-height:1.2rem; }
.arrow-flow::before { content: ""; display:block; width:8px; height:8px; border-top:1px solid #000; border-right:1px solid #000; transform: rotate(45deg); margin:7rem 0.9rem 0 0.7rem; }

@media screen and (max-width: 1080px) {
	.business-area, .business-cont { width:100% !important; padding-top:2rem !important; }
	.business-bg01, .business-bg02 { height:auto; margin-bottom:5rem; }
	.business-bg01:before, .business-bg02:before { height:24rem; }
	.business-bg01 .business-pic, .business-bg02 .business-pic { width:82%; margin:0 auto; }
	.business-bg02 .business-pic { position:unset; }
	.business-bg01 .business-pic .chara-overlay { font-size:6rem; top:20rem; left:10%; }
	.business-bg02 .business-pic .chara-overlay { font-size:6rem; top:20rem; right:10%; }
	.business-title { font-size:1.8rem; }
	.business-bg01 .business-point { width:82%; margin:3.5rem auto 0; padding-top:0; }
	.business-bg02 .business-point { width:82%; margin:3.5rem auto 0; padding-top:0; position:unset; }
	.flow-area .sec-heading { margin-bottom:4rem; }
	.flow-area .sec-container { margin-bottom:0; }
	.flow-frame { width:100%; height:auto; padding:1.2rem 1rem 1.7rem; margin-bottom:2.7rem; }
	.flow-frame .label-num { width:4.2rem; height:4.2rem; top:-1.5rem; left:3.5rem; }
	.flow-frame .label-num .num-up { font-size:1.2rem; line-height:0.6rem; }
	.flow-wrap { display:block; }
	.flow-head { margin-bottom:0.6rem; }
	.arrow-area { display:none; }
}

@media screen and (max-width: 749px) {
	.business-bg01:before, .business-bg02:before { height:17rem; }
	.business-bg01 .business-pic .chara-overlay { font-size:4rem; top:12rem; left:10%; }
	.business-bg02 .business-pic .chara-overlay { font-size:4rem; top:12rem; right:10%; }
}

/*** COMPANY ***************************************************/

.page-company { background:url(../img/company/page-head.jpg) no-repeat center; background-size:cover; position:relative; }

.concept-area .sec-container { max-width:100% !important; padding:0; }
.concept-outer { height:560px; position:relative; margin-bottom:6rem; }
.concept-outer:before { content:""; position:absolute; top:0; right:0; display:block; width:80%; height:37rem; background:#e2dfda; z-index:1; }
.concept-inner .concept-pic { width:50%; max-width:550px; position:relative; margin-top:3.8rem; z-index:2; }
.concept-inner .concept-pic img { width:550px; }
.concept-inner .concept-pic .chara-overlay { font-size:8.5rem; color:rgba(255,255,255,0.6); position:absolute; top:25rem; left:18rem; z-index:4; }
.concept-inner .concept-detail { width:40%; margin:120px 0 0 1%; z-index:4; }
.concept-inner .concept-title { font-size:2rem; margin-bottom:1.8rem; }
.concept-inner .concept-txt { line-height:1.8rem; }

.important-area  { width:100%; background:#f8f8ec; padding:50px 0; margin-bottom:0; }
.important-right, .important-left { position:relative; margin-bottom:9rem; }
.important-right .important-pic { width:50%; max-width:522px; position:absolute; top:50px; right:0; z-index:2; }
.important-left .important-pic { width:50%; max-width:522px; position:relative; z-index:2; }
.important-right .important-pic .chara-overlay { display:block; font-size:8rem; color:rgba(255,255,255,0.9); position:absolute; top:7rem; right:28rem; z-index:4; }
.important-left .important-pic .chara-overlay { display:block; font-size:8rem; color:rgba(255,255,255,0.9); position:absolute; top:9rem; left:28rem; z-index:4; }
.important-right .important-detail { width:38%; margin:1rem 0 0 4rem; padding-top:5rem; position:absolute; z-index:3; }
.important-left .important-detail { width:38%; margin:1rem 0 0 7rem; padding-top:4rem; position:relative; z-index:3; }
.important-title { font-size:3rem; margin-bottom:5.7rem; }
.important-left .pt-frame { justify-content:center; }
.important-right .pt-frame { position:relative; height:25rem; justify-content:space-between; }

.greeting-area { width:100%; background:url(../img/common/bg01.jpg) repeat; padding:50px 0; }
.greeting-inner { position:relative; margin-bottom:9rem; }
.greeting-inner .cont-wrap { justify-content:space-between; }
.greeting-inner .greeting-pic { width:50%; max-width:360px; height:353px; z-index:2; }
.greeting-inner .greeting-pic img { width:360px; position:absolute; top:0; right:0; }
.greeting-inner .greeting-detail { width:48%; margin:0px 0 0 5%; padding-top:1rem; position:absolute; z-index:3; }
.greeting-detail .greeting-txt {  margin-bottom:2.2rem; }
.greeting-detail .greeting-company, .greeting-detail .greeting-profile { text-align:right; }

.prof-inner { width:60vw; margin:0 auto; }
.prof-inner .prof-frame { width:100%; display:-webkit-flex; display:-ms-flexbox; display:flex; padding-bottom:1.5rem; margin-bottom:1.5rem; border-bottom:1px solid #9c9c9c; }
.prof-inner .prof-heading { width:40%; padding-left:5%; }
.prof-inner .prof-detail { width:55%; }

@media screen and (max-width: 1080px) {
	.concept-area .sec-container { width:100%; max-width:100%; padding-top:4rem; }
	.concept-area .concept-inner { width:82%; margin:0 auto; }
	.concept-outer { height:auto; }
	.concept-outer:before { height:350px; }
	.concept-inner .concept-pic { width:100%; margin-top:1rem; }
	.concept-inner .concept-pic img { width:100%; }
	.concept-inner .concept-pic .chara-overlay { font-size:60px; bottom:-30px; left:0; }
	.concept-inner .concept-title { font-size:2rem; line-height:2.4rem; }
	.concept-inner .concept-detail { width:100%; margin:3rem 0 0 0; } 
	.important-area .sec-container { margin:0 auto; }
	.important-area .sec-heading { font-size:2rem; }
	.important-right, .important-left { margin-bottom:2.6rem; }
	.important-right .important-pic { width:100%; height:auto; position:unset; }
	.important-left .important-pic { width:100%; height:auto; }
	.important-right .important-pic img, .important-left .important-pic img { width:100%; position:unset; }
	.important-right .important-pic .chara-overlay { font-size:70px; top:190px; right:0; }
	.important-left .important-pic .chara-overlay { font-size:70px; top:240px; left:0; }
	.important-right .important-detail, .important-left .important-detail { width:100%; padding-top:0; position:unset; margin:3rem 0 0 0; }
	.important-title { font-size:2rem; margin-bottom:1.5rem; }
	.important-right .pt-frame { height:auto; }
	.greeting-inner { margin-bottom:0; }
	.greeting-inner .greeting-pic { width:100%; height:auto; margin-bottom:1rem; }
	.greeting-inner .greeting-pic img { width:100%; position:unset; }
	.greeting-inner .greeting-detail { width:100%; position:unset; } 
	.profile-area .sec-heading { font-size:2rem; }
	.prof-inner { width:100%; }
	.prof-inner .prof-frame { display:inline-block; padding-bottom:0; margin-bottom:1.5rem; border-bottom:none; }
	.prof-inner .prof-heading { width:100%; padding-left:1%; background:#eee; font-size:0.8rem; margin-bottom:0.5rem; }
	.prof-inner .prof-detail { width:100%; }
}

/*** WORKS ***************************************************/

.page-work { background:url(../img/works/page-head.jpg) no-repeat center; background-size:cover; position:relative; }
.work-outer { justify-content:space-evenly; }
.work-area .work-wrap { width:45vw; max-width:450px; margin-bottom:5rem; }
.work-area .work-pic a { display:block; margin-bottom:1.2rem; }
.work-area .work-pic a img { width:450px; }
.work-area .work-detail .mk-a { justify-content:start; margin-bottom:0.6rem; }
.work-area .work-detail .mk-a img { width:62px; height:30px; }
.work-area .work-detail .work-mark { width:142px; margin-right:1.1rem; }
.work-area .shop-heading { font-size:1.3em; margin-bottom:0.5rem; }
.work-area .shop-name { font-size:1.2rem; }
.work-area .shop-name .shop-nt { font-size:1.1rem; }
.work-area .shop-info { font-size:0.9rem; }
.work-category a { font-size:0.8rem; color:#922923; text-decoration:underline; }
.link-more { width:100%; height:25px; text-align:right; } 
.link-more a img { width:125px; } 

@media screen and (max-width: 1080px) {
	.work-area .work-wrap { width:100%; }
	.work-area .work-wrap:last-child { margin-bottom:0; }
	.work-area .work-pic a img { width:100%; }
	.work-main { margin-bottom:0.4rem; }
	.link-more a img { width:140px; }
}

/*** PRIVACY POLICY ***************************************************/

.page-privacy { background:url(../img/other/page-privacy.jpg) no-repeat center; background-size:cover; position:relative; }
.privacy-outer { width:60vw; margin:0 auto; font-size:0.9rem; font-family: sans-serif; line-height:2.2rem; }
.privacy-outer .privacy-detail, .privacy-outer .analytics-detail { margin-bottom:2rem; }

@media screen and (max-width: 1080px) {
	.privacy-outer { width:100%; overflow-wrap:break-word; }
}

/*** CONTACT ***************************************************/

.page-contact { background:url(../img/other/page-contact.jpg) no-repeat center; background-size:cover; position:relative; }
.contact-area .sec-heading { margin-bottom:4rem; }
.contact-outer { width:60%; margin:0 auto; font-size:0.9rem; font-family: sans-serif; line-height:2.2rem; }
.contact-outer .contact-info { font-size:0.9rem; margin-bottom:2.2rem; text-align:center; }
.contact-outer .line-wrap { border:1px solid #9c9c9c; padding:1.6rem; text-align:center; margin-bottom:1.6rem; }
.contact-outer .line-heading { font-size:1.02rem; margin-bottom:1.4rem }
.contact-outer .line-link a { width:300px; display:block; padding:1rem 0 1.3rem; background:#8c2a23; border-radius:3px; margin:1rem auto 1.2rem; }
.contact-outer .line-link a img { width:210px; }
.contact-outer .entry-header { display:none; }
.contact-outer .form-detail { font-size:1.02rem; margin-bottom:2.2rem; }
.contact-outer .form-title { display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-flex-wrap:nowrap; -ms-flex-wrap:nowrap; flex-wrap:nowrap;  margin-bottom:0.5em; }
.contact-outer .form-title .formtag { display:block; font-size:0.6rem; color:#F00; margin-left:0.95rem; }
.contact-outer .form-txt { width:100%; border:1px solid #9c9c9c; padding:0.8rem 0.7rem; line-height:1.4rem; border-radius:5px; }
.contact-outer .btn-form { display:block; width:300px; background:#af9340; color:#FFF; text-align:center; font-size:1.1rem; letter-spacing:0.5rem; border-radius:3px; margin:5rem auto 0; padding:13px 0; }

@media screen and (max-width: 1080px) {
	.contact-outer { width:100%; }
	.contact-outer .contact-info { text-align:left; }
	.contact-outer .line-link a { width:auto; padding:10px 5px 14px; }
}

/*** NEWS ***************************************************/

.page-news { background:url(../img/other/page-news.jpg) no-repeat center; background-size:cover; position:relative; }
.page-news .news-area { width:80vw; margin:0 auto; }
.news-area .entry-header { padding-bottom:0.6rem; margin-bottom:3rem; border-bottom:1px solid #9c9c9c; }
.newslist-area .entry-header { padding-bottom:0.6rem; margin-bottom:0.6rem; border-bottom:1px solid #9c9c9c; }
.news-area .entry-header .entry-title, .newslist-area .entry-header .entry-title { font-size:1.2rem; line-height:2.2rem; }
.newslist-area .entry-meta { font-size:0.8rem; }
.newslist-area .category-news, .newslist-area .category-blog { font-size:0.95rem; margin-bottom:3rem; }
.newslist-area .link-more a { color:#af9340; font-size:0.8rem; }
.news-area .entry-content { font-size:1rem; line-height:1.8rem; }
.news-area .entry-content p { margin:3rem 0; }
.entry-header .updated, .entry-header .byline, .edit-link { display:none; }
.wp-block-image img { width:auto !important; }

@media screen and (max-width: 1080px) {
	.news-area { width:100%; }
	
 }