@charset "utf-8";

/*=========================================
CoffeeFactory Style
==========================================*/

/*--------------------------------
Font
---------------------------------*/
.contents-open p:nth-of-type(1) {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-weight: bold;
}

.shopData_address .shopData__tel p:nth-of-type(2),
.shopData_address .shopData__tel p:nth-of-type(3),
.contents-client .pickup__detail dl dt {
 font-family: 'Crimson Text', serif;
}

.contents-seminar .seminar_inner h2,
.contents-delivery .delivery_inner h2,
.contents-client .client_inner h2,
.contents-client .client__list ul li a {
 font-family: 'Basic', sans-serif;
}

/*--------------------------------
Common
---------------------------------*/

/*--* ShopData Address *--*/
.shopData_address {
  margin-bottom: 8%;
}

.shopData_address .shopData__tel {
  float: left;
  overflow: hidden;
  width: 55.5%;
  padding: 1em 3%;
  background: url(../../_common/img/share/border05.png) top right repeat-y;
}

.shopData_address .shopData__tel > p:nth-of-type(1) {
  font-size: 14px;
  font-size: 1.4rem;
}

.shopData_address .shopData__tel p:nth-of-type(2) {
  float: left;
  width: 50%;
  max-width: 262px;
  padding-top: 2%;
  margin-right: 1%;
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.2;
  word-break: break-all;
}

.shopData_address .shopData__tel > p:nth-of-type(2) b {
  font-weight: 500;
}

.address-area .tel div p:nth-of-type(2) {
  padding: .5em 0 0 5%;
  float: left;
  font-size: 22px;
  font-size: 2.2rem;
}

.shopData_address .shopData__tel p:nth-of-type(3) {
  float: left;
  padding: .5em 0 0 5%;
  font-size: 22px;
  font-size: 2.2rem;
}

.shopData_address .shopData__link {
  float: right;
  width: 44%;
  padding: 2em 1% 0;
  text-align: center;
}

.shopData_address .shopData__link a {
  display: inline-block;
  height: 37px;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  text-decoration: none;
  letter-spacing: -.01em;
  vertical-align: top;
  color: #fff;
  border: 1px solid #282828;
  background: #282828;
}

.shopData_address .shopData__link a::before {
  display: inline-block;
  content: "";
  width: 33px;
  height: 37px;
  margin-right: .5em;
  vertical-align: middle;
  background-size: contain;
}

.shopData_address .link_access {
  width: 50%;
  max-width: 212px;
  margin: 0 1.5%  1em 0;
}

.shopData_address .link_mail {
  width: 50%;
  max-width: 189px;
}

.shopData_address .shopData__link .link_access::before {
  background: url(../../_common/img/share/access_icon1.png)top left no-repeat;
}

.shopData_address .shopData__link .link_mail::before {
  background: url(../../_common/img/share/mail_icon.png) top left no-repeat;
}

@media screen and (max-width: 1000px) {
.shopData_address .shopData__tel {
  padding-bottom: 1em;
}

.shopData_address .shopData__tel > p:nth-of-type(2) {
  float: none;
  width: 90%;
  max-width: none;
  padding-top: 0;
  font-size: 30px;
  font-size: 3rem;
}

.shopData_address .shopData__tel > p:nth-of-type(3) {
  float: none;
  width: 90%;
  padding: 0;
  font-size: 20px;
  font-size: 2rem;
}

.shopData_address .shopData__link {
  padding: 1.2em 1% 0;
}

.shopData_address .shopData__link a {
  display: block;
  margin: 0 auto 1em;
}

.shopData_address .link_access,
.shopData_address .link_mail {
  width: 100%;
  max-width: 250px;
  margin: 0 auto 1em;
}
}

@media screen and (max-width: 768px) {
.shopData_address .shopData__tel {
  float: none;
  width: 100%;
  padding-bottom: 0;
  background: none;
}

.shopData_address .shopData__tel > p:nth-of-type(1) {
  padding-bottom: .5em;
  text-align: center;
}

.shopData_address .shopData__tel > p:nth-of-type(2),
.shopData_address .shopData__tel > p:nth-of-type(3) {
  margin: 0 auto;
  text-align: center;
}

.shopData_address .shopData__link {
  float: none;
  width: 100%;
  padding-bottom: 1em;
}


.shopData_address .link-tsukuba .link_facebook {
  width: 100%;
  margin: 0 auto 1em;
}

.shopData_address .link-moriya a {
  margin-bottom: 1px;
}
}



/*--------------------------------
Contents Open
---------------------------------*/

.contents-open {
  overflow: hidden;
  margin-bottom: 6em;
}

.contents-open > img {
  display: block;
  width: 110%;
  margin: 0 0 8em -5%;
}

.contents-open h2 {
  width: 80%;
  max-width: 434px;
  margin: -2.5em auto 3em;
}

.contents-open h2 img {
  display: block;
  width: 100%;
}

.contents-open p {
  width: 90%;
  max-width: 965px;
  margin: 0 auto;
}

.contents-open p:nth-of-type(1) {
  margin-bottom: 2em;
}

.contents-open p:nth-of-type(1) img {
  width: 100%;
  max-width: 483px;
}

@media screen and (max-width: 1000px) {
.contents-open h2 {
  margin: 0 auto 2em;
}

.contents-open p {
  max-width: 600px;
  margin: 0 auto;
}

.contents-open p:nth-of-type(1) {
  display: block;
  margin-bottom: 1em;
  font-size: 18px;
  font-size: 1.8rem;
}
}

@media screen and (max-width: 768px) {
.contents-open > img {
  display: block;
  width: 140%;
  margin-left: -20%;
}

.contents-open h2 {
  margin: 0 auto 1em;
}

.contents-open p:nth-of-type(1) {
  font-size: 16px;
  font-size: 1.6rem;
}
}


/*--------------------------------
Contents Common 
---------------------------------*/

.contents_inner {
  max-width: 1036px;
}

.contents-seminar .seminar_inner h2,
.contents-delivery .delivery_inner h2 {
  max-width: 335px;
  margin: 0 auto 2em;
  font-weight: 500;
  text-align: center;
}

/*--* Seminar *--*/
.contents-seminar .seminar_inner h2 {
  background: #e5d6c6;
}

.contents-seminar .seminar__list {
  overflow: hidden;
  margin-bottom: 3em;
  padding-top: 5em;
  background: url(../img/border.png) top center no-repeat;
}

.contents-seminar .seminar__box {
  float: left;
  overflow: hidden;
  margin-bottom: 1.4em;
  background: url(../img/seminar_border1.png) top left repeat-y, url(../img/seminar_border2.png) top right repeat-x, url(../img/seminar_border1.png) right bottom repeat-y, url(../img/seminar_border2.png) left bottom repeat-x;
}

.contents-seminar .seminar__box > img {
  display: block;
  float: right;
}

.contents-seminar .box-small > img {
  padding: 0 0 .6em .8em;
}

.contents-seminar .seminar__box h3 {
  padding: 1em 0 .5em 8%;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

.contents-seminar .seminar__box p {
  padding: 0 15% .5em 10%;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.7;
}

.contents-seminar .seminar__box p b {
  display: block;
  font-weight: normal;
}

.contents-seminar .seminar__box p span {
  font-size: .8em;
}

.contents-seminar .seminar__box p:nth-of-type(2) {
  padding-top: .5em;
}

.contents-seminar .box01,
.contents-seminar .box02  {
  overflow: hidden;
  width: 49.2%;
	min-height: 220px;
}

.contents-seminar .box04,
.contents-seminar .box05 {
  overflow: hidden;
  width: 49.2%;
}

.contents-seminar .box01,
.contents-seminar .box04 {
  margin-right: 1.5%;
}

.contents-seminar .box04 {
  clear: left;
}


.contents-seminar .box-gyoumu {
  clear: both;
  overflow: hidden;
  max-width: 576px;
  margin: 0 auto;
  border: 1px solid #000;
  background: #eee4d9;
}

.contents-seminar .box-gyoumu img {
  display: block;
  float: right;
  padding-left: 3em;
}

.contents-seminar .box-gyoumu h3 {
  padding: 1.2em 0 .25em 2em;
  font-size: 16px;
  font-size: 1.6rem;
}

.contents-seminar .box-gyoumu p {
  padding-left: 8%;
  font-size: 12px;
  font-size: 1.2rem;
}


@media screen and (max-width: 1000px) {
.contents-seminar .box01,
.contents-seminar .box02,
.contents-seminar .box03,
.contents-seminar .box04,
.contents-seminar .box05 {
  width: 100%;
  min-height: 0;
  padding: 2em;
}

.contents-seminar .box01 > img,
.contents-seminar .box02 > img,
.contents-seminar .box03 > img {
  padding: 0 0 0 1.2em;
}

.contents-seminar .seminar__box h3 {
  overflow: hidden;
  margin-bottom: .5%;
  padding: 1em 0 0 1.8em;
}

.contents-seminar .seminar__box p {
  padding: .2em 20% 0 2.6em;
}

.contents-seminar .seminar__box p:nth-last-of-type(1) {
  padding-bottom: 2em;
}

}

@media screen and (max-width: 768px) {
.contents-seminar .seminar__box {
  padding: 1em .5%;
  border: 10px solid #eee4d9;
  background: none;
}

.contents-seminar .seminar__box > img {
  display: block;
  float: none;
  width: 50%;
  max-width: 120px;
  margin: 0 auto;
  padding: 0;
}

.contents-seminar .seminar__box h3 {
  padding: .5em 0 1em;
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
}

.contents-seminar .seminar__box p {
  padding: .2em 1em;
  text-align: center;
}

.contents-seminar .box-gyoumu {
  max-width: none;
  padding: 2em;
}

.contents-seminar .box-gyoumu > img {
  display: block;
  float: none;
  width: 90%;
  max-width: 240px;
  margin: 0 auto;
  padding: 0;
}

.contents-seminar .box-gyoumu h3 {
  padding: .5em 0;
  font-weight: 500;
  text-align: center;
}

.contents-seminar .box-gyoumu p {
  padding-left: 0;
  text-align: center;
}

.contents-seminar .box-gyoumu p br {
  display: none;
}
}


/*--* Delivery *--*/
.contents-delivery h2 {
  background: #cdd1bb;
}

.contents-delivery .delivery_inner > p {
  width: 95%;
  margin: 0 auto 2em;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
}

.contents-delivery .delivery_inner > p span {
  display: block;
  font-size: .8em;
  text-align: center;
}

.contents-delivery .delivery__list {
  overflow: hidden;
  margin-bottom: 3em;
  padding-top: 4em;
  background: url(../img/border.png) top center no-repeat;
}

.contents-delivery .delivery__box {
  /*float: left;*/
  position: relative;
  width: 100%;
  /* max-width: 550px; */
  max-width: 660px;
  /* min-height: 380px; */
  min-height: 410px;
	margin: 0 auto;
  /*margin-right: 1.5%;*/
  background: url(../img/delivery_border1.png) top left repeat-y, url(../img/delivery_border2.png) top right repeat-x, url(../img/delivery_border1.png) right bottom repeat-y, url(../img/delivery_border2.png) bottom left repeat-x;
}

/*.contents-delivery .delivery__box:nth-last-of-type(1) {
  margin-right: 0;
}*/

.contents-delivery .delivery__box h3 {
  width: 86%;
  margin: 0 auto;
  /* padding: 1em 0 .2em; */
  padding: 1em 0 1em;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

.contents-delivery .box01 h3:nth-last-of-type(1) {
  width: 83%;
  /* padding: 0 0 .5em; */
  padding: 0 0 1em;
}

.contents-delivery .delivery__box dl {
  overflow: hidden;
  width: 83%;
  margin: 0 auto .5em;
  font-size: 13px;
  font-size: 1.3rem;
}

.contents-delivery .delivery__box dl dt {
  float: left;
  letter-spacing: -.01em;
}

.contents-delivery .delivery__box dl dt:nth-of-type(2) {
  padding-left: 1em;
}

.contents-delivery .box01 dl dt {
  clear: left;
  width: 130px;
}

.contents-delivery .delivery__box dl .head::before {
  display: inline-block;
  content: "■";
}

.contents-delivery .delivery__box dl dd {
  overflow: hidden;
  padding-left: 8%;
}

.contents-delivery .delivery__box dl dd span {
  font-size: .9em;
}

.contents-delivery .delivery__box dl + p {
  width: 82%;
  margin: 0 auto .5em;
  padding: 0 6.5%;
  font-size: 12px;
  font-size: 1.2rem;
  text-indent: -1.3em;
}

.contents-delivery .box01 dl + p:nth-of-type(1) {
  padding-bottom: 1em;
  border-bottom: 1px dashed #828282;
}

.contents-delivery .box01 img:nth-of-type(1) {
  position: absolute; top: 3em; right: 3em;
	width: 50%; max-width: 120px;
}

.contents-delivery .box01 img:nth-of-type(2) {
  position: absolute; top: 32%; left: 73%;
}


.contents-delivery .box01 ul {
  width: 83%;
  margin: 0 auto;
}
.contents-delivery .box01 ul:nth-of-type(1) {
  padding-bottom: 1.2em;
  margin-bottom: .8em;
  border-bottom: 1px dashed #828282;
}
.contents-delivery .box01 ul:nth-of-type(2) {
  margin-bottom: 1.2em;
}
.contents-delivery .box01 ul li {
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: .5em;
  display: flex;
}
.contents-delivery .box01 ul li:before {
  content: "■";
}
.contents-delivery .delivery__box p {
  width: 82%;
  margin: 0 auto;
  padding: 0 3.5%;
  font-size: 12px;
  font-size: 1.2rem;
}
.contents-delivery .delivery__box p.attention_price {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
}

@media screen and (max-width: 1000px) {
.contents-delivery .delivery_inner > p {
  font-size: 13px;
  font-size: 1.3rem;
}

.contents-delivery .delivery__box {
  float: none;
  width: 100%;
  min-height: 0;
  margin: 0 auto 1.4em;
  padding: 2em 2em 3em;
}

.contents-delivery .delivery__box h3 {
  width: 100%;
  padding: 1em 0 .5em 1.8em;
}

.contents-delivery .delivery__box dl {
  width: 95%;
}

.contents-delivery .delivery__box dl + p {
  width: 100%;
}

.contents-delivery .box01 ul {
  width: 95%;
}
.contents-delivery .delivery__box p {
  width: 100%;
}
}

@media screen and (max-width: 768px) {
.contents-delivery .delivery__box {
  padding: .5em .25% 1em;
  border: 10px solid #cdd1bb;
  background: none;
}

.contents-delivery .delivery__box h3 {
  padding: 1em 0;
  text-align: center;
}

.contents-delivery .delivery__box dl {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
}

.contents-delivery .delivery__box dl dt {
  float: none;
  width: 100%;
}

.contents-delivery .delivery__box dl dt:nth-of-type(2) {
  padding-left: 0;
}

.contents-delivery .delivery__box dl dd {
  padding: 0 0 .5em .5em;
}

.contents-delivery .delivery__box dl + p {
  text-align: center;
  text-indent: inherit;
  letter-spacing: -.01em;
}

.contents-delivery .delivery__box dl + p br {
  display: none;
}

.contents-delivery .box01 dl + p:nth-of-type(1) {
  padding-bottom: 2em;
}

.contents-delivery .box01 img:nth-of-type(1),
.contents-delivery .box01 img:nth-of-type(2) {
  display: block;
  position: static;
  width: 60%;
  max-width: 112px;
  margin:  2em auto;
}

}

@media screen and (max-width: 540px) {
}


/*--* Client *--*/

.contents-client h2 {
  margin-bottom: 2em;
  font-weight: 500;
  text-align: center;
  background: #cdb8b5;
}

.contents-client .client_inner > p {
  margin-bottom: 3em;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
}

.contents-client .client__list {
  overflow: hidden;
  margin-bottom: 5em;
}

.contents-client .client__list h3 {
  margin-bottom: 2em;
  padding-top: 2em;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  text-align: center;
  background: url(../img/border.png) top center no-repeat;
}

.contents-client .client__list ul {
  max-width: 1052px;
  margin-right: -2%;
}

.contents-client .client__list ul li {
  float: left;
  position: relative;
  width: 32%;
  margin: 0 1.06% 2em 0;
  padding: .5em 0 0 .5em;
  border-top: 1px solid #282828;
}

.contents-client .client__list ul li p:nth-of-type(1) {
  font-size: 14px;
  font-size: 1.4rem;
}

.contents-client .client__list ul li p:nth-of-type(1) span {
  display: block;
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: -.01em;
}

.contents-client .client__list ul li p:nth-of-type(2) {
  padding-top: .5em;
  font-size: 10px;
  font-size: 1rem;
}

.contents-client .client__list ul li a {
  display: block;
  position: absolute; bottom: 0; right: 0;
  width: 60%;
  max-width: 40px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  background: #cdb8b5;
}

@media screen and (max-width: 1024px) {
.contents-client .client__list {
  margin-bottom: 2.5em;
}

.contents-client .client__list ul li {
  float: left;
  width: 48%;
  margin: 0 2% 2em 0;
}
}

@media screen and (max-width: 1000px) {
.contents-client .client_inner > p {
  font-size: 13px;
  font-size: 1.3rem;
}
}

@media screen and (max-width: 768px) {
.contents-client .client__list ul {
  margin-right: 0;
}

.contents-client .client__list ul li {
  float: none;
  width: 100%;
  margin: 0 0 1em 0;
  padding: 1em 0 .5em;
}

.contents-client .client__list ul li p {
  text-align: center;
}

.contents-client .client__list ul li a {
  position: static;
  width: 50%;
  max-width: none;
  height: 30px;
  margin: 1em auto;
  line-height: 30px;
}


.contents-client .client__list ul li p:nth-of-type(1) span {
  font-size: 13px;
  font-size: 1.3rem;
}

}


.contents-client .client__pickup {
  margin-bottom: 15%;
}

.contents-client .client__pickup h3 {
  margin-bottom: 2em;
  padding-top: 50px;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: normal;
  text-align: center;
  background: url(../img/border.png) top center no-repeat;
}

.contents-client .pickup__detail {
  overflow: hidden;
  max-width: 648px;
  margin: 0 auto 5em;
}

.contents-client .pickup__detail > img {
  display: block;
  float: right;
  width: 50%;
  max-width: 186px;
  margin-left: 2em;
}

.contents-client .pickup__detail > img {
  display: block;
  float: right;
  width: 50%;
  max-width: 186px;
  margin-left: 2em;
}

.contents-client .pickup__detail p {
  margin-bottom: 1em;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}

.contents-client .pickup__detail dl {
  overflow: hidden;
}

.contents-client .pickup__detail dl dt {
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: .17em;
}

.contents-client .pickup__detail dl dd {
  position: relative;
  font-size: 10px;
  font-size: 1rem;
}

.contents-client .pickup__detail dl dd a {
  display: inline-block;
  width: 60%;
  max-width: 40px;
  margin-left: 5%;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  background: #cdb8b5;
  color: #282828;
}

@media screen and (max-width: 768px) {

.contents-client .pickup__detail > img {
  float: none;
  width: 50%;
  max-width: 186px;
  margin: 0 auto 2em;
}

.contents-client .pickup__detail p {
  width: 90%;
  margin: 0 auto;
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
}

.contents-client .pickup__detail p br {
  display: none;
}

.contents-client .pickup__detail dl dt,
.contents-client .pickup__detail dl dd {
  text-align: center;
}

.contents-client .pickup__detail dl dd a {
  display: block;
  width: 50%;
  max-width: none;
  height: 30px;
  margin: 1em auto;
  line-height: 30px;
}
}

