@charset "UTF-8";
/* スマートフォン用CSS */

@media screen and (max-width: 640px) {
html {
    font-size:2vw;
}

.hidden-sp {
    display:none !important;
}
.hidden-pc {
    display: inherit !important;
}

.main_visual .inner {
    width:100%;
}
.main_visual .slick-dots {
    bottom: 5%;
}
.main_visual .slick-dots li button:before {
    font-size:16px;
    color:#fff;
}
.main_visual .slick-dots li.slick-active button:before {
    opacity:1;
    color: #fff;
}
.main_visual .slick-dotted.slick-slider {
    margin-bottom:0;
}

.inner {
    width:87.5%;
    margin:0 auto;
    position:relative;
}

#header {
    height:auto;
    padding:0;
}
#header .header-inner {
    min-width: auto;
    position: relative;
    margin:4.375% 6.25%;
}

#header .header-logo {
    width:41.093%;
    height:auto;
    margin:0 auto;
    float:none;
}
#header .header-btn_pc {
    display:none;
}
#header .header-btn_sp {
    display: block;
    float:none;
    width:8.75%;
    height:auto;
    margin-left:0;
    position: absolute;
    top:50%;
    right: 0%;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}

.bnr01 {
    width:87.5%;
    padding:3.75% 0;
    margin:0 auto;
}
.bnr04 {
    width:87.5%;
    padding:3.75% 0;
    margin:0 auto;
}
.bnr05 {
    width:87.5%;
    padding:3.75% 0;
    margin:0 auto;
}

.home-section01 .inner {
    width:100%;
}
.btns {
    padding: 0;
}
.btns li {
    width:33.33%;
    width:calc(100% / 3);
    float: left;
}
.btns li:nth-of-type(2) {
    margin:0;
}

.section-title {
    font-size:3rem;
    padding:7.5% 0 3.75%;
}
.font-ja {
    font-size:2.6rem;
}

.home-news .inner {
    width:100%;
}
.home-news {
    padding-bottom:0;
}
/* .news-tab {} */
.news-tab li {
    width:33.33%;
    width:calc(100% / 3);
    float:left;
    text-align: center;
    font-size:1.4rem;
    font-weight: bold;
    padding: 0.8em 0;
}
.news-contents {
    padding:6.25%;
}
.news-contents-box {
    float:none;
    width:100%;
}
.news-contents-box img {
    float:none;
    width:46.428%;
    float:left;
}
.news-contents-box ~ .news-contents-box {
    display:none;
}
.news-info {
    padding:0 0 0.6em;
    float: right;
    width:46.428%;
}
.news-info .news-icon {
    display: inline-block;
    font-size:1.2rem;
    padding:0.2em 0.8em;
    color:#fff;
    line-height: 1.5;
    font-weight: bold;
    min-width: auto;
    text-align: center;
    position: relative;
    top:-1px;
}
.news-date {
    color:#818181;
}
.news-title {
    float: right;
    width:100%;
}
.news-morebtn_pc {
    display:none;
}
.news-morebtn_sp {
    float: right;
    width:46.428%;
    display:block;
    text-align: center;
    font-size:1.4rem;
    padding:0.2em 0;
    text-decoration: none;
    margin-top:0.3em;
}
#news-contents1 .news-morebtn_sp {
    border:1px solid #783037;
    color:#783037;
}
#news-contents2 .news-morebtn_sp {
    border:1px solid #51694e;
    color:#51694e;
}
#news-contents3 .news-morebtn_sp {
    border:1px solid #3e4e73;
    color:#3e4e73;
}

.home-app,
.home-precious {
    min-width: auto;
    margin:3em 0;
}
.home-app .inner,
.home-precious .inner {
    width:100%;
}

/* .home-koodawari {} */
.kodawari-title {
    min-width: auto;
}
.kodawari-title .section-title {
    padding:8.75% 0;
}
.kodawari-row {
    min-width: auto;
}
.kodawari-row .inner {
    padding:12.857% 0;
}
.koodawari-link {
    width:74.28%;
    margin:0 auto;
    text-align: center;
    border:1px solid #fff;
    padding:4.28% 0 3.5%;
    color:#fff;
    text-decoration: none;
    transition: all 0.2s linear;
}
.koodawari-link .kodawari-text {
    font-size:2rem;
    font-weight: normal;
    letter-spacing: 2px;
}
.koodawari-link .kodawari-text span {
    font-size:3.2rem;
    padding:0 0.1em 0 0;
    letter-spacing: 1px;
}
.koodawari-link p {
    padding-top:0.8em;
}

.home-school {
    padding:9.375% 0;
}
.home-school a {
    display:block;
    width:100%;
    margin:0 auto;
}

#footer {
    padding:0;
    background-color: #F5F4F2;
    min-width: auto;
}
.footer-bnrs {
    padding:10% 0;
}
.footer-bnrs li {
    float: none;
    width:100%;
}
.footer-bnrs li:nth-of-type(2) {
    margin:3.75% 0;
}

.footer-links {
    background-color: #fff;
    border:0px;
    padding:8% 6.25% 4%;
    margin:0;
}

.sns-links {
    width:100%;
    float:none;
    padding:8% 10% 7%;
}
.sns-title {
    font-size:2.5rem;
}

.app-links {
    width:100%;
    float:none;
    padding:7% 0 5%;
    margin-top:10%;
}
.app-title {
    font-size:1.9rem;
}

.footer-nav1 {
    padding:11.25% 0;
}
.footer-nav1 a.footer-logo {
    width:40%;
    float:none;
    margin:0 auto 5%;
}
.footer-nav1 .grouplink {
    float:none;
    position: relative;
    margin:0 auto;
    width:46.875%;
    top:0;
}
.footer-nav1 .grouplink a {
    border:1px solid #673627;
    text-decoration: none;
    color:#673627;
    font-size:1.2rem;
    padding:0.5em 1.5em 0.5em 0.8em;
    display: block;
    text-align: center;
}

.footer-nav2 {
    padding-top:0;
    background-color: #fff;
}
.footer-nav2 ul {
    float:none;
    border-top:1px solid #C9C1C0;
}
.footer-nav2 li {
    float:left;
    margin:0;
    width:50%;
    padding:3% 4% 3% 5%;
    border-right:1px solid #C9C1C0;
    border-bottom:1px solid #C9C1C0;
}
.footer-nav2 li:nth-of-type(2n) {
    border-right:0px;
}
.footer-nav2 li a {
    color:#666;
    font-size:1.6rem;
    text-decoration: none;
    display:block;
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.footer-nav2 li a:after {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:1px solid #673627;
    border-right:1px solid #673627;
    position: absolute;
    top: 50%;
    right: 1%;
    -webkit-transform: translate(0%, -50%) rotate(45deg);
    -moz-transform: translate(0%, -50%) rotate(45deg);
    -ms-transform: translate(0%, -50%) rotate(45deg);
    -o-transform: translate(0%, -50%) rotate(45deg);
    transform: translate(0%, -50%) rotate(45deg);
}
.footer-nav2 li a:before {
    content:"";
    display: inline-block;
    width:6%;
    height:0;
    padding-top:6%;
    background: url(/img/icon01.png) no-repeat left top;
    background-size: cover;
    position: relative;
    top:2px;
    margin-right:0.5em;
}
.footer-nav2 .copy {
    float: none;
    font-size:1.2rem;
    background-color: #F3F3F3;
    color:#999;
    text-align: center;
    padding:2em 0;
}

.app_bnr {
    display:block;
    padding:3% 5% 3% 10%;
    position: relative;
    background-color: #EDE4D1;
}
.app_bnr #app_bnr-close {
    display: block;
    width:22px;
    position: absolute;
    top:50%;
    left: 3%;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.app_bnr #app_bnr-close span {
    display:block;
    width:100%;
    height:1px;
    background-color: #744233;
}
.app_bnr #app_bnr-close span:nth-of-type(1) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.app_bnr #app_bnr-close span:nth-of-type(2) {
    -webkit-transform: translateY(-1px) rotate(45deg);
    transform: translateY(-1px) rotate(45deg);
}
.app_bnr a {
    display: block;
    color: inherit;
}
.app_bnr img {
    float:left;
    width:20%;
    margin-right:3%;
}
.app_bnr .app_bnr-text {
    position: absolute;
    top:50%;
    left:30%;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.app_bnr p {
    font-size:1.6rem;
}
.app_bnr p:last-of-type {
    font-weight:bold;
    font-size:1.8rem;
}

.u-title {
    padding:0 0 2.5em;
}
.u-title p {
    padding:1em 0;
    font-size: 1.8rem;
    line-height: 1.8;
}
.u-title.small p {
    padding:1em 0;
    font-size: 1.6rem;
    line-height: 1.8;
}
.common-section-title {
    font-size: 3rem;
    padding: 1.5em 0 0.5em;
}
.common-section-title span {
    font-size:1.5rem;
}
.content-body {
    padding:0 0 5em;
}

/* ------------------------------------------------------------------------ 店舗検索 */
.store-section01 .inner {
    padding:0px;
}
.store-section01 ul li a {
    border:1px solid #74412e;
}
.store-section01 ul li a:after {
    width:10px;
    height:10px;
    border-top:2px solid #74412e;
    border-right:2px solid #74412e;
}
.search-main {
    display: block !important;
    padding:0 0 3.5%;
}
.search-main li {
    margin:0 0 3.5%;
}
.search-main a {
    font-size:1.8rem;
    padding:0.8em 0;
    position: relative;
}
.store-section01 ul li.search-map a {
    background-color: #74412e;
    color:#fff;
}
.store-section01 ul li.search-map a:after {
    border-top:2px solid #fff;
    border-right:2px solid #fff;
}
.search-map a:before {
    background-image: url(/img/store/icon02.png);
    background-size: 100%;
    width:18px;
    height:26px;
    content:"";
    background-repeat: no-repeat;
    background-position: 0 0;
    display: inline-block;
    position: absolute;
    -webkit-transform: translate(-150%, 0%);
    -moz-transform: translate(-150%, 0%);
    -ms-transform: translate(-150%, 0%);
    -o-transform: translate(-150%, 0%);
    transform: translate(-150%, 0%);
}
.search-add a:before {
    background-image: url(/img/store/icon01.png);
    background-size: 100%;
}

.search-sub {
    padding:0 0 3.5%;
}
.search-sub li {
    width:48.19%;
    margin:0 0 3.5%;
}
.search-sub li:nth-of-type(2n+1) {
    clear: both;
    float:left;
}
.search-sub li:nth-of-type(2n) {
    float:right;
}
.search-sub a {
    font-size:1.4rem;
    padding:1.1em 0;
    position: relative;
}

.search-sub label {
    font-size:1.2rem;
    border:1px solid #74412e;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:0em 1.5em !important;
    height: 4em !important; 
}
.search-sub label span {
    display: none !important;
}
.search-sub input[type='checkbox']:checked + label::after {
    width: 10px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}

.input-keyword {
    border:1px solid #74412e !important;
    padding:0.8em 1.2em !important;
    font-size:2rem !important;
}
.search-button {
    font-size:1.8rem;
    padding:0.8em 0;
}
.search-title {
    padding:1em 0 0.8em;
    color:#74412e;
    font-size: 2rem;
}

/* ------------------------------------------------------------------------ 商品詳細 */
.product-detail .inner {
    padding:0;
}
.product-name {
    font-size:2.2rem;
    color:#74412e;
    font-weight: bold;
    padding:0 0 1.2em;
}
.product-image,
.product-info {
    width:100%;
    float:none;
}
.product-price {
    padding:2em 0;
}
.product-price li {
    padding:0 0.5em 0 0;
}
.product-price li span {
    background-color: #DBCECB;
    display: inline-block;
    width:1.5em;
    text-align: center;
    margin-right:0.5em;
}
.product-kome {
    font-size: 1.6rem;
}
.product-allergy {
    padding:2.5em 0 0;
}
.product-allergy a {
    color:#74412e;
    text-decoration: none;
    display: block;
    position: relative;
    border:2px solid #74412e;
    text-align: center;
    padding:0.6em 0;
    font-size: 1.8rem;
}
.product-allergy a:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    border-top:2px solid #74412e;
    border-right:2px solid #74412e;
    position: absolute;
    top: 50%;
    right: 5%;
    -webkit-transform: translate(0%, -50%) rotate(45deg);
    -moz-transform: translate(0%, -50%) rotate(45deg);
    -ms-transform: translate(0%, -50%) rotate(45deg);
    -o-transform: translate(0%, -50%) rotate(45deg);
    transform: translate(0%, -50%) rotate(45deg);
}
.product-allergy a:before {
    content:"";
    display: inline-block;
    width:17px;
    height:19px;
    background: url(/img/pdf.png) no-repeat left top;
    background-size: cover;
    position: relative;
    top:2px;
    margin-right:0.8em;
}

.product-text {
    clear: both;
    font-size:1.8rem;
    padding:40px 0 64px;
    line-height: 1.8;
}

.transition-link {
    border-top: 1px solid #DDD;
    border-bottom: 1px solid #DDD;
    position: relative;
}
.transition-link li {
    width:100% !important;
}
.transition-link li.transition-prev {
    float:none;
}
.transition-link li.transition-back {
    float:none;
    border-top: 1px solid #DDD;
    position: static;
    top: auto;
    left: auto;
    -webkit-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -o-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
}
.transition-link li.transition-back a {
    color:#74412e;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
}
.transition-link li.transition-next {
    float:none;
    border-top: 1px solid #DDD;
}
.transition-link li a {
    display:block;
    position: relative;
    padding:1em 10%;
    width:auto;
    white-space: nowrap;
    min-width: auto;
    font-size: 2rem;
    text-decoration: none;
    color: #74412e;
}
.transition-link li.transition-prev a {
    text-align: left;
}
.transition-link li.transition-prev a:after {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:2px solid #74412e;
    border-right:2px solid #74412e;
    position: absolute;
    top: 50%;
    left: 5%;
    -webkit-transform: translate(0%, -50%) rotate(-135deg);
    -moz-transform: translate(0%, -50%) rotate(-135deg);
    -ms-transform: translate(0%, -50%) rotate(-135deg);
    -o-transform: translate(0%, -50%) rotate(-135deg);
    transform: translate(0%, -50%) rotate(-135deg);
}
.transition-link li.transition-next a {
    text-align: right;
}
.transition-link li.transition-next a:after {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:2px solid #74412e;
    border-right:2px solid #74412e;
    position: absolute;
    top: 50%;
    right: 5%;
    -webkit-transform: translate(0%, -50%) rotate(45deg);
    -moz-transform: translate(0%, -50%) rotate(45deg);
    -ms-transform: translate(0%, -50%) rotate(45deg);
    -o-transform: translate(0%, -50%) rotate(45deg);
    transform: translate(0%, -50%) rotate(45deg);
}
.shop-search {
    clear: both;
    padding:56px 0 0;
    width: 87.5%;
    margin: 0 auto;
    position: relative;
}
.shop-search a {
    position: relative;
    display: block;
    font-size: 2rem;
    padding:1em 0;
}

/* ------------------------------------------------------------------------ 商品一覧 */
.tab ul {
    width:100%;
}
.tab3 li a {
    font-size:1.4rem;
    padding:0.8em 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.procat-section01 .inner {
    padding:0 0 4em;
}
.procat-btns {
    padding:3em 0 1em;
}
.procat-btns ul {
    width:100%;
}
.procat-btns li {
    padding:0 0 1em;
}
.procat-btns-2 li,
.procat-btns-3 li,
.procat-btns-4 li {
    width:48.5%;
}
.procat-btns-2 li:nth-of-type(2n+1),
.procat-btns-3 li:nth-of-type(2n+1),
.procat-btns-4 li:nth-of-type(2n+1) {
    float:left;
    clear: both;
}
.procat-btns-2 li:nth-of-type(2n),
.procat-btns-3 li:nth-of-type(2n),
.procat-btns-4 li:nth-of-type(2n) {
    float:right;
}
.procat-btns li a {
    font-size:1.8rem !important;
}
.procat-btns li a:after {
    width:8px;
    height:8px;
    border-top:1px solid #74412e;
    border-right:1px solid #74412e;
}
.procat-btns li a:hover:after {
    border-top:1px solid #fff;
    border-right:1px solid #fff;
}
.procat-boxes {
    width:100%;
    float:none;
    padding:0 0 3em;
}
.procat-boxes img {
    width:46.42%;
}
.procat-boxes .procat-info {
    width:46.42%;
    float:right;
    margin:0;
}
.procat-boxes .procat-info h4 {
    font-size:1.8rem;
    padding:0.4em 0 0.8em;
}
.procat-boxes .procat-info p {
    font-size:1.6rem;
}

.service-info {
    border-top:1px solid #74412e;
    border-bottom:1px solid #74412e;
    padding:1em 0 0;
}
.service-info .inner {
    width: 87.5%;
    padding:0 0 2.5em;
}

/* ------------------------------------------------------------------------ 店舗詳細 */
.shopdetail-section01 .inner {
    padding:0;
}
.shopdetail-section01 h3 {
    font-size:2rem;
    padding:0 0 1em;
    float:none;
}
.shopdetail-bnr {
    float:none;
    width:100%;
}
.shopdetail-map {
    padding:1em 0;
}
.shopdetail-map iframe {
    width:100%;
    height:320px;
}
.shopdetail-btn {
    text-align: left;
    padding-top:0.5em;
}
.shopdetail-btn a {
    width: 100%;
    display: block;
    padding:0.8em 0;
}
.shopdetail-btn a:after {
    border-top:1px solid #74412e;
    border-right:1px solid #74412e;
}

/* .shopdetail-info td {}
.shopdetail-info-icons {} */
.shopdetail-info-icons li {
    float:left;
    width:8.5%;
}
.shopdetail-info-icons li ~ li {
    padding-left:0;
    margin-left:5px;
}
.shopdetail-info-icons li img {
    width:100%;
    height:auto;
}

.image-slider {
    width:100%;
}

/* ------------------------------------------------------------------------ ニュース*/
.news-inner {
    padding:2em 0 0 !important;
}
.news-boxes {
    width:100%;
    float:none;
    margin:0 0 3em 0;
}
.news-boxes img {
    width:47.27%;
    float:left;
    margin:0;
}
.news-boxes .news-text {
    width:45.45%;
    float:right;
}
.news-boxes .news-date {
    font-size: 1.4rem;
    color:#818181;
}
.news-boxes .news-date:before {
    padding:0.2em 1.2em;
}
.news-boxes.news-catinfo .news-date:before {
    content: "お知らせ";
    background-color: #773138;
}
.news-boxes.news-catcamp .news-date:before {
    content: "キャンペーン";
    background-color: #51684F;
}
.news-boxes.news-catnewi .news-date:before {
    content: "新商品";
    background-color: #3F4F72;
}
.news-boxes p {
    padding:0.6em 0 0;
    color: #333;
    font-size:1.6rem;
}
.news-morebtn {
    width: 256px;
    height: 40px;
    margin: 0 auto;
    clear: both;
    padding: 32px 0 0;
    box-sizing: content-box;
}
.news-morebtn a {
    display: block;
    text-align: center;
    font-size: 1.6rem;
    text-decoration: none;
    padding: 0.3em 0;
    border: 2px solid #74412e;
    color: #74412e;
}

.news-detail-inner {
    padding:1em 0 4em !important;
}
.news-detail-title {
    padding:1em 0;
}
.news-detail-title span {
    font-size:2rem;
    width:87.5%;
}
.news-detail-title span:before {
    display: block;
    width:8em;
    padding:0.1em 0;
    font-size: 1.5rem;
    margin:0 0 0.5em;
    text-align: center;
}
.news-bnrarea {
    padding:0;
    width:87.5%;
    margin:0 auto;
    padding:0 0 5em;
}
/* .news-bnrarea ul {} */
.news-bnrarea li {
    width:100%;
    float: none;
    margin-bottom: 1em;
}
.news-bnrarea li:nth-of-type(2n+1) {
    clear: both;
}
.news-bnrarea li:nth-of-type(2n) {
    float: none;
}

/* ------------------------------------------------------------------------ ログイン*/
.header-point,
.header-charge {
    margin:0.8em 0 !important;
    display: inline-block;
}
.header-point {
    margin-right:1em !important;
}
.header-point:before,
.header-charge:before {
    padding:0.2em 0.5em;
    margin-right:1em;
}
.header-login_sp {
    text-align: center;
    display:block;
    background-color: #F7F7F7;
}
#footer-loginlink {
    margin-top:0;
    background-color: #fff;
    padding-bottom:2em;
}
#footer-loginlink li {
    font-size: 2.4rem;
    display: block;
}
#footer-loginlink li ~ li:before {
    content:none;
}
#footer-loginlink li a {
    color:#693929;
    display: block;
    padding:0.5em 0;
}

/* ------------------------------------------------------------------------ クーポンLP*/
.couponlp-section01 .inner {
    width:87.5%;
}
.couponlp-box {
    padding:0 0 6em;
}
.couponlp-box h3 {
    position: relative;
    padding:0.8em 1em 0.8em 6em;
    background: url(/img/coupon/img01.png) no-repeat 98% 90% #EEE9DF;
    background-size: 40px;
}
.couponlp-box h3.coupon-h3-2:before {
    line-height: 4.5;
}
.couponlp-box h3.coupon-h3-3:before {
    line-height: 3;
}
.couponlp-image {
    padding:2em 0 1.5em;
    width:87.5%;
}
/* .couponlp-image img {} */
.couponlp-box h4 {
    font-size:2.2rem;
    width:87.5%;
    padding:0 0 0.6em;
}
.couponlp-box h4:before {
    content:"";
    width:20px;
    height:22px;
    display: inline-block;
    background: url(/img/coupon/icon01.png) no-repeat left center;
    background-size: contain;
    position: relative;
    top:4px;
    margin-right:0.4em;
}
.couponlp-box ul {
    width:87.5%;
    margin:0 auto;
}
.couponlp-box li {
    font-size: 1.8rem;
}
.couponlp-btn {
    width:87.5%;
    padding:2em 0 0;
}
/* .couponlp-btn a {}
.couponlp-btn img {} */
.coupon-aboutpc {
    width:87.5%;
    margin:0 auto;
    padding:3em 0 2em;
}
.coupon-aboutpc img {
    display: block;
    width:100%;
}
.backbtn {
    width:80%;
    margin:0 auto;
}
.backbtn a {
    display: block;
    color:#744231;
    border: 2px solid #744231;
    text-align: center;
    text-decoration: none;
    font-size:1.6rem;
    padding:0.6em 0;
    transition: all 0.1s linear;
}
.backbtn a:hover {
    color:#fff;
    background-color: #744231;
}

/* ------------------------------------------------------------------------ 珈琲教室*/
.school-section01 .inner {
    width:87.5%;
    margin:0 auto;
}
.schoolinfo,
.schoolinfo-detail {
    width:85.7%;
}
/* .schoolinfo {} */
.schoolinfo img {
    width:100%;
    margin: 8% auto 6%;
}
.schoolinfo p {
    font-size:1.6rem;
    line-height: 1.8;
}

.schoolinfo-detail {
    padding:4em 0 0;
}
.schoolinfo-detail h5 {
    font-size:1.7rem;
    padding:0.6em 1em;
}
.schoolinfo-detail p {
    font-size:1.5rem;
    line-height: 2;
    padding:1em 1.5em;
}
.schoolinfo-detail table {
    width:100%;
    margin:0.5em 0 8%;
}
.schoolinfo-detail th,
.schoolinfo-detail td {
    display: block;
    width:100%;
}

/* ------------------------------------------------------------------------ プレシャスメンバーズ*/
.precious-section01 .inner {
    width:87.5%;
}
.precious-contents-inner {
    width:100%;
    padding:32px 0 64px;
}
.precious-contents-inner p {
    font-size:1.6rem;
}
.precious-point {
    margin:1.5em 0;
}
.precious-point p {
    font-size:1.5rem;
    width: calc(100% - 112px);
}
.precious-btns {
    padding:12px 0 0;
}
.precious-btns .precious-btn {
    width:80%;
    margin:24px auto;
}
.precious-btns .precious-btn a {
    display: block;
    text-align: center;
    text-decoration: none;
    font-size:1.6rem;
    padding:0.6em 0;
    transition: all 0.1s linear;
}
.precious-btns .precious-btn01 a {
    background-color: #744231;
    color:#fff;
    border: 2px solid #744231;
}
.precious-btns .precious-btn01 a:hover {
    color:#fff;
    background-color: #8C4F3A;
}
.precious-btns .precious-btn02 a {
    color:#744231;
    border: 2px solid #744231;
}
.precious-btns .precious-btn02 a:hover {
    color:#fff;
    background-color: #744231;
}
.precious-btns2 {
    padding:12px 0 48px;
}
.precious-btns2 li {
    width:60%;
    margin:1.5em auto;
}
.precious-btns2 li:nth-of-type(1) {
    float:none;
}
.precious-btns2 li:nth-of-type(2) {
    float:none;
}
.precious-btns2 li a {
    display: block;
    text-align: center;
    text-decoration: none;
    font-size:1.6rem;
    padding:0.6em 0;
    transition: all 0.1s linear;
    background-color: #fff;
    color:#744231;
    border: 2px solid #744231;
}
.precious-btns2 li a:hover {
    color:#fff;
    background-color: #744231;
}
.precious-img {
    margin:0 0 5em;
}
.precious-img01 {
    margin:2em 0 4em;
}
.precious-img04 {
    margin:40px 0 0;
}
.precious-img06 {
    margin-bottom:48px;
}
.precious-img07 {
    margin:40px 0;
}
.precious-kome {
    width:85.7%;
    margin:0 auto;
}
.precious-kome li {
    font-size:1.2rem;
}

.precious-section01 .tab li a {
    background-color: #EEE9DF;
    font-size: 1.6rem;
    line-height: 1.4;
    padding:0.8em 0;
}
.precious-section01 .tab li.active a {
    background-color: #74412e;
    color: #fff;
}
#precious-contents02,
#precious-contents03 {
    display:none;
}

/* ------------------------------------------------------------------------ こだわり*/
.philosophy h3 {
    padding: 1em 0;
    font-size: 2.4rem;
    line-height: 1.8;
}
.philosophy .backbtn {
    margin:5em auto 0;
}
.philosophy .kodawari-row ul,
.prod-ul {
    width: 74.28%;
    margin:2em auto 0;
}
.philosophy .kodawari-row li
.prod-ul li {
    color:#fff;
    font-size:1.6rem;
}
.prod-ul {
    width: 74.28%;
    margin:2em auto 0;
}
.prod-ul li {
    font-size:1.8rem;
}
.prod-ul li.prod-kome {
    font-size:1.4rem;
}

.prod .kodawari-row ul {
    width: 74.28%;
    margin:2em auto 0;
}
.prod .kodawari-row li a {
    color:#fff;
    font-size:1.6rem;
    display: block;
    padding:0.5em 0;
}
.prod .kodawari-row li a:hover {
    text-decoration: none;
}

.prod .backbtn {
    margin:5em auto 0;
}

.mainvisual {
    width:100%;
    padding:0 0 2.5em;
}
.mainvisual img {
    display: block;
    width:100%;
}

/* ------------------------------------------------------------------------ マイページ*/
/* .mypage-section {} */
.mypage .inner {
    width: 87.5%;
}

.food .procat-outer,
.drink .procat-outer.pt5em {
    padding-top:3em;
}

/* ------------------------------------------------------------------------ こだわり*/
.philosophy-content h5:before {
    width: 20px;
    height: 22px;
    top: 4px;
}
.philosophy-content img.image-left,
.philosophy-content img.image-right {
    width:50%;
}
.philosophy-content img.image-wide {
    margin:2em 0;
}
.philosophy-inner-row li a {
    font-size:1.6rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.philosophy-inner-row li a span {
    display: block;
    font-size:2rem;
}

.storelist-table th,
.storelist-table td {
    display:block;
}
.storelist-address {
    padding-top:0 !important;
    padding-left:calc(36px + 1.8em) !important;
}

/* ------------------------------------------------------------------------ パンくず*/
ul#breadcrumbs {
    display: none;
}

/* ------------------------------------------------------------------------ お得なせっと*/
.gddl{
    line-height: 1;
}
.gddl .sp{
    display: block;
    line-height: 0;
}
.gddl .pc{
    display: none;
}
.gddl {
    background: #F2EEE6;
}
.gddl .inner {
    width: 100%;
    margin: 0;
    padding: 1.5625%;
}
.gddl .inner h1 {
    box-sizing: border-box;
    border: 3px solid #59403C;
    padding: 3px;
    margin: 0 0 4.3% 0;
    background: #ffffff;
}
.gddl .inner h1 .h1_inner{
    box-sizing: border-box;
    border: 1px solid #59403C;
    padding: 5px 0;
}
.gddl .inner h1 .h1_inner ul{
    text-align: center;
}
.gddl .inner h1 .h1_inner ul li {
    display: inline-block;
    vertical-align: middle;
}
.gddl .inner h1 .h1_inner .badge {
    width: 15%;
    margin: 0 auto;
    max-width: 96px;
    background: url(/img/txt_pickup_set.png) 0 0 no-repeat;
    background-size: contain;
    padding-top: calc((96/96)*15%);
}
.gddl .inner h1 .h1_inner .gddl_title {
    line-height: 1.6;
    text-align: left;
    font-family: "Times New Roman", "Hiragino Mincho ProN", "HG明朝B", Meiryo, serif;
}
.gddl .inner .imgs {
    margin: 0 0 7.8125%;
}
.gddl .inner .imgs li {
    width: 44.64%;
    margin: 0 auto;
}
/* .gddl .inner .imgs li:nth-child(1){} */
.gddl .inner .imgs li:nth-child(2){
    text-align: center;
    line-height: 1;
    margin: 0 auto 3% auto;
    font-weight: 700;
    font-size: 42px;
    color: #59403C;
}
/* .gddl .inner .imgs li:nth-child(3){} */

.gddl .inner .imgs .name {
    text-align: center;
    font-size: 1.6rem;
}
.gddl .inner .imgs li.sub_box {
    width: 100%;
    margin: 0 0 10% 0;
}
.gddl .inner .imgs li.sub_box .sub_box_inner {
    box-sizing: border-box;
    border: 4px solid #F29C3E;
}
.gddl .inner .imgs li.sub_box .sub_box_inner .title {
    color: #ffffff;
    background: #F29C3E;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    padding: 2px 0 8px 0;
}
.gddl .inner .imgs li.sub_box .sub_box_inner .title span {
    font-size: 1.5em;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul {
    width: 90%;
    margin: 0 auto;
    padding: 3% 0;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul li {
    display: inline-block;
    vertical-align: middle;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul li:nth-child(1){
    width: 40%;
    vertical-align: bottom;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul li:nth-child(2){
    text-align: center;
    line-height: 1;
    margin: 0 auto;
    font-weight: 700;
    font-size: 36px;
    color: #59403C;
    width: 10%;
    margin: 0 5%;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul li:nth-child(3){
    width: 36%;
}
.gddl .inner .imgs li.sub_box .sub_box_inner ul li .sub_name {
    text-align: center;
    font-size: 1.6rem;
}

.gddl .inner .detail {
    position: relative;
    background: #ffffff;
    padding: 10% 1.5625% 0 1.5625%;
}
.gddl .inner .detail .caption {
    position: absolute;
    top: -10.5%;
    left: 0;
    right: 0;
    width: 81.43%;
    margin: 0 auto;
    padding: 1.31% 0;
    box-sizing: border-box;
    border-radius: 40px;
    background: #785A4D;
    text-align: center;
    color: #ffffff;
    line-height: 1.6;
    font-family: "Times New Roman", "Hiragino Mincho ProN", "HG明朝B", Meiryo, serif;
}
.gddl .inner .detail .caption span {
    display: inline-block;
    text-align: left;
}
.gddl .inner .detail .menu {
    padding: 0 0 3.5% 0;
    margin: 0 0 3.5% 0;
    border-bottom: 1px dotted #CCC2BD;
}
.gddl .inner .detail .menu li {
    font-size: 1.6rem;
    line-height: 1.5;
}
/* .gddl .inner .detail .menu li:nth-child(1){} */
.gddl .inner .detail .notice {
    font-size: 1.6rem;
    text-align: center;
    padding: 0 0 3.5% 0;
}

/* ------------------------------------------------------------------------ number11*/
#n11_wrapper {
    max-width: 750px;
    margin: 0 auto;
}
/* #n11_wrapper #n11_main {} */
#n11_main .main_inner {
    width: 100%;
    background: #000000;
    padding: 6.5% 0;
}
#n11_main .main_inner .logo {
    line-height: 0;
    width: 50%;
    margin: 0 auto;
}
#n11_main .main_inner .main_img {
    line-height: 0;
    margin: 0 0 3% 0;
}
#n11_main .main_inner .menus {
    width: 90%;
    margin: 0 auto 3% auto;
}
#n11_main .main_inner .menus li {
    box-sizing: border-box;
    border: 2px solid #ffffff;
    margin: 0 0 3% 0;
    line-height: 1;
    color: #ffffff;
    text-align: center;
    font-weight: 700;
}
#n11_main .main_inner .menus li:hover{
    color: #000000;
    background: #ffffff;
    text-align: center;
}
#n11_main .main_inner .menus li a {
    text-decoration: none !important;
    color: #ffffff;
}
#n11_main .main_inner .menus li:hover a{
    color: #000000;
}
#n11_main .main_inner .menus li p {
    padding: 3% 0;
    font-size: 1.8rem;
}
#n11_main .main_inner .menus li p:before {
    font-family: "Font Awesome 5 Free";
    content: '\f1c1';
    color: #ffffff;
    font-weight: 400;
    font-size: 2rem;
    text-align: center;
    margin: 0 1.5% 0 0;
}
#n11_main .main_inner .menus li:hover p:before {
    color: #000000;
}
#n11_main .main_inner #maps {
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding: 0 0 56%;
    height: 0;
    overflow: hidden;
}

#n11_main .main_inner #maps .googlemapInner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
/* #n11_wrapper #instagram {}
#instagram .insta_inner {}
#instagram .insta_inner .pict_area {}
#instagram .insta_inner .pict_area p {}

#instagram .insta_inner .btn_area {} */
#instagram .insta_inner .btn_area .text {
    font-size: 34px;
    font-family: "Damion", cursive;
    text-align: center;
}
#instagram .insta_inner .btn_area a {
    display: block;
    width: 80%;
    margin: 0 auto;
}
#instagram .insta_inner .btn_area .btn {
    width: 100%;
    padding: 3% 0;
    text-align: center;
    background: #000000;
    border: 5px solid #565656;
    border-radius: 50px;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    -webkit-box-sizing: border-box;
}
#instagram .insta_inner .btn_area .btn:hover{
    opacity: 0.7;
}
#instagram .insta_inner .btn_area .btn span {
    display: block;
    width: 40%;
    margin: 0 auto;
    max-width: 263px;
    background: url(/img/number11/fig_instagram_logo.png) 0 0 no-repeat;
    background-size: contain;
    padding-top: calc((62/263)*40%);
}

/* ------------------------------------------------------------------------ サイトマップ*/
.sitemap-row dt a,
.sitemap-row dd a {
    display: block;
    color:#744231;
    text-decoration: none;
    font-size:1.6rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

}