@charset "UTF-8";
/*@import url("./form.css");*/

.main_visual .slick-dots {
    bottom: 24px;
}
.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:960px;
    margin:0 auto;
    position:relative;
}
#header {
    padding-top:24px;
    border-bottom: 1px solid #f0f0f0;
    background-color: #fff;
}
#header .header-inner {
    min-width: 896px;
    position: relative;
    margin:0 32px 24px;
}
#header #menu-btn {
    display: block;
    width:32px;
    position: absolute;
    top:50%;
    left: 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%);
    cursor: pointer;
}
#header #menu-btn span {
    display:block;
    width:100%;
    height:2px;
    background-color: #744233;
    transition: all 0.2s linear;
}
#header #menu-btn span:nth-of-type(2) {
    margin:28% 0;
    width:100%;
}
#header.gnav-open #menu-btn span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(-45deg);
    transform: translateY(11px) rotate(-45deg);
}
#header.gnav-open #menu-btn span:nth-of-type(2) {
    width:0%;
}
#header.gnav-open #menu-btn span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(45deg);
    transform: translateY(-11px) rotate(45deg);
}

#header .header-logo {
    width:172px;
    height:55px;
    float:left;
    margin-left: 80px;
}
#header .header-btn_pc {
    float: right;
    padding-top:8px;
}
#header .header-btn_pc li {
    float:right;
    width:108px;
    height:40px;
    margin-left:14px;
}
#header .header-btn_sp {
    display:none;
}

.bnr01 {
    width:560px;
    padding:24px 0;
    margin:0 auto;
}
.bnr04 {
    width:960px;
    padding:24px 0;
    margin:0 auto;
}
.bnr05 {
    width:960px;
    padding:24px 0;
    margin:0 auto;
}
.btns {
    padding:24px 0;
}
.btns li {
    width:312px;
    float: left;
}
.btns li:nth-of-type(2) {
    margin:0 12px;
}

.section-title {
    color:#58382b;
    font-size:3.8rem;
    letter-spacing: 3px;
    text-align: center;
    padding:48px 0 24px;
}
.font-us {
    font-family: 'Montserrat', sans-serif;
}
.font-ja {
    font-size:2.6rem;
    font-weight: bold;
    font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font-white{
    color:#fff;
}

.home-news {
    padding-bottom:60px;
}

.news-tab li {
    width:33.33%;
    width:calc(100% / 3);
    float:left;
    text-align: center;
    font-size:1.8rem;
    font-weight: bold;
    padding: 0.5em 0;
    transition: all 0.2s linear;
    cursor: pointer;
    border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
}
.news-tab li#news-tab1 {
    background-color: #F5F5F5;
    color: #666;
}
.news-tab li#news-tab2 {
    background-color: #E1E1E1;
    color: #666;
}
.news-tab li#news-tab3 {
    background-color: #F5F5F5;
    color: #666;
}
.news-tab li#news-tab1.current,
.news-tab li#news-tab1:hover {
    background-color: #783037;
    color: #fff;
}
.news-tab li#news-tab2.current,
.news-tab li#news-tab2:hover {
    background-color: #51694e;
    color: #fff;
}
.news-tab li#news-tab3.current,
.news-tab li#news-tab3:hover {
    background-color: #3e4e73;
    color: #fff;
}
.news-contents {
    padding:32px 40px;
}
#news-contents1 {
    background-color: #faf6f6;
}
#news-contents2 {
    background-color: #e9f0e8;
    display: none;
}
#news-contents3 {
    background-color: #f0f3f8;
    display: none;
}
.news-contents-box {
    float:left;
    width:205px;
    display:block;
    text-decoration: none;
    color:inherit;
}
.news-contents-box:hover .news-title {
    opacity: 0.75;
    text-decoration: underline;
}
.news-contents-box ~ .news-contents-box {
    margin-left: 20px;
}
.news-info {
    padding:16px 0 8px;
}
.news-info .news-icon {
    display: inline-block;
    font-size:1.2rem;
    padding:0.2em 0;
    color:#fff;
    line-height: 1.5;
    font-weight: bold;
    min-width: 100px;
    text-align: center;
    position: relative;
    top:-1px;
}
#news-contents1 .news-info .news-icon {
    background-color: #783037;
}
#news-contents2 .news-info .news-icon {
    background-color: #51694e;
}
#news-contents3 .news-info .news-icon {
    background-color: #3e4e73;
}
.news-date {
    color:#818181;
}
.news-morebtn_pc {
    width:256px;
    height:40px;
    margin: 0 auto;
    clear: both;
    padding: 32px 0 0;
    box-sizing:content-box;
}
.news-morebtn_pc a {
    display:block;
    text-align: center;
    font-size:1.6rem;
    text-decoration: none;
    padding:0.3em 0;
}
#news-contents1 .news-morebtn_pc a {
    border:2px solid #783037;
    color:#783037;
}
#news-contents2 .news-morebtn_pc a {
    border:2px solid #51694e;
    color:#51694e;
}
#news-contents3 .news-morebtn_pc a {
    border:2px solid #3e4e73;
    color:#3e4e73;
}
.news-morebtn_sp {
    display:none;
}

.home-precious {
    min-width: 960px;
    margin-bottom:60px;
}
.home-precious a {
    display:block;
}

.home-app {
    min-width: 960px;
    margin-bottom:60px;
}
.home-app a {
    display:block;
}

.kodawari-title {
    background: url(/img/top/bg04.jpg) no-repeat bottom center;
    background-size: cover;
    min-width: 960px;
}
.kodawari-title .section-title {
    padding:72px 0;
}
.kodawari-row {
    background-repeat: no-repeat;
    background-position: center center;
    min-width: 960px;
}
.kodawari-row0 {
    background-image: url(/img/top/bg10.jpg);
    background-size: cover;
}
.kodawari-row1 {
    background-image: url(/img/top/bg05.jpg);
    background-size: cover;
}
.kodawari-row2 {
    background-image: url(/img/top/bg06.jpg);
    background-size: cover;
}
.kodawari-row3 {
    background-image: url(/img/top/bg07.jpg);
    background-size: cover;
}
.kodawari-row4 {
    background-image: url(/img/top/bg08.jpg);
    background-size: cover;
}
.kodawari-row5 {
    background-image: url(/img/top/bg09.jpg);
    background-size: cover;
}
.kodawari-row6 {
    background-image: url(/img/top/bg11.jpg);
    background-size: cover;
}
.kodawari-row7 {
    background-image: url(/img/top/bg12.jpg);
    background-size: cover;
}
.kodawari-row8 {
    background-image: url(/img/top/bg13.jpg);
    background-size: cover;
}

.kodawari-row .inner {
    padding:72px 0;
}
.koodawari-link {
    display:block;
    width:416px;
    margin:0 auto;
    text-align: center;
    border:2px solid #fff;
    padding:24px 0 20px;
    color:#fff;
    text-decoration: none;
    transition: all 0.2s linear;
}
.koodawari-link:hover {
    background-color: rgba(255,255,255,0.2)
}
.koodawari-link .kodawari-text {
    font-size:2.2rem;
    font-weight: normal;
    letter-spacing: 2px;
}
.koodawari-link .kodawari-text span {
    font-size:3.6rem;
    padding:0 0.2em 0 0;
    letter-spacing: 6px;
}
.koodawari-link p {
    padding-top:0.8em;
}

.home-school {
    padding:80px 0;
}
.home-school a {
    display:block;
    width:560px;
    margin:0 auto;
}

#footer {
    padding:72px 0;
    background-color: #F5F4F2;
    min-width: 960px;
}
.footer-bnrs li {
    float: left;
    width:304px;
}
.footer-bnrs li:nth-of-type(2) {
    margin:0 24px;
}
.footer-links {
    background-color: #fff;
    border:2px solid #420102;
    padding:56px 64px;
    margin:60px 0;
}

.sns-links {
    width:336px;
    float:left;
    padding:25px 30px 20px;
    border:1px solid #DED1CE;
    position: relative;
}
.sns-title {
    color:#420102;
    position: absolute;
    font-weight: bold;
    text-align: center;
    font-size:2rem;
    top:-0.75em;
    left:50%;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -o-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    display: inline-block;
    background-color: #fff;
    padding:0 0.5em;
    white-space: nowrap;
}
.sns-links li {
    float:left;
    width:22.75%;
}
.sns-links li ~ li {
    margin-left: 3%;
}

.app-links {
    width:448px;
    float:right;
    padding:30px 0 15px;
    border-top:1px solid #DED1CE;
    position: relative;
}
.app-title {
    color:#420102;
    position: absolute;
    font-weight: bold;
    text-align: center;
    font-size:1.6rem;
    top:-0.75em;
    left:50%;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -o-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    display: inline-block;
    background-color: #fff;
    padding:0 0.5em;
    white-space: nowrap;
}
.app-links li {
    float:left;
    width:48.5%;
}
.app-links li ~ li {
    margin-left: 3%;
}

.footer-nav1 a.footer-logo {
    display:block;
    width:144px;
    float:left;
}
.footer-nav1 .grouplink {
    float:left;
    position: relative;
    top:12px;
    margin-left:32px;
}
.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;
}
.arrow1 {
    display:block;
    position: relative;
}
.arrow1:after {
    content:"";
    display:block;
    width:4px;
    height:4px;
    border-top:1px solid #673627;
    border-right:1px solid #673627;
    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);
}

.footer-nav2 {
    padding-top:32px;
}
.footer-nav2 ul {
    float:left;
}
.footer-nav2 li {
    float:left;
    margin-right:1.5em;
}
.footer-nav2 li a {
    color:#666;
    font-size:1.2rem;
    text-decoration: none;
}
.footer-nav2 li a:before {
    content:"";
    display: inline-block;
    width:12px;
    height:12px;
    background: url(/img/icon01.png) no-repeat left top;
    background-size: cover;
    position: relative;
    top:2px;
    margin-right:0.3em;
}
.footer-nav2 li:last-of-type a:before {
    content:none;
    display: none;
}
.footer-nav2 .copy {
    float: right;
    font-size:1rem;
}

#gnav {
    background-color: #64493F;
    padding:8.75%;
    position: absolute;
    z-index: 10;
    display: none;
    width:100%;
}
#gnav .ddmenu li {
    border-bottom:1px solid #B2A5A0;
}
#gnav .ddmenu li a {
    color:#fff;
    text-decoration: none;
    font-size:2.4rem;
    font-weight:bold;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    display: block;
    padding:3% 0;
}
#gnav .ddmenu li a span {
    font-size:1.4rem;
    font-weight:normal;
    font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    letter-spacing: 0;
    display: inline-block;
    padding-left:1em;
}
#gnav .sns-links {
    width:100%;
    float:none;
    padding:4% 10% 7%;
    border:0px;
    position: relative;
    background-color: #fff;
    margin: 3.5em 0 0;
}
#gnav .sns-title {
    position: static;
    font-weight: bold;
    text-align: center;
    font-size:2.5rem;
    top:inherit;
    left:inherit;
    -webkit-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -o-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    display: block;
    background-color: #fff;
    padding:0 0 0.6em;
}
#gnav .sns-links li {
    float:left;
    width:22.75%;
}
#gnav .sns-links li ~ li {
    margin-left: 3%;
}

.emg {
    padding:24px 32px;
    border-bottom: 1px solid #f0f0f0;
}
.emg dt {
    font-weight: bold;
    font-size:1.8rem;
}
.emg dd {
    font-size:1.6rem;
    line-height: 1.8;
    letter-spacing: 1px;
    color:#c00;
    white-space: pre-wrap;
}

.app_bnr {
    display:none;
}

.u-title {
    padding:0 0 2.5em;
}
.u-title p {
    padding:1em 200px;
    font-size: 2.2rem;
    line-height: 1.8;
}
.u-title.small p {
    padding:1em 200px;
    font-size: 1.8rem;
    line-height: 1.8;
}
.common-section-title {
    color: #58382b;
    font-size: 3.2rem;
    letter-spacing: 3px;
    text-align: center;
    padding: 48px 0 24px;
    font-weight: bold;
}
.common-section-title span {
    font-size:1.5rem;
    display: block;
}
.content-body {
    padding:0 0 80px;
}

/* ------------------------------------------------------------------------ 店舗検索 */
.store-section01 .inner {
    padding:0 120px;
}
.store-section01 ul {
    display: block;
    width:100%;
}
.store-section01 ul li {
    display: block;
}
.store-section01 ul li a {
    width:100%;
    border:2px solid #74412e;
    display: block;
    color:#74412e;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    position: relative;
}
.store-section01 ul li a span {
    display: inline !important;
}
.store-section01 ul li a:after {
    content:"";
    display:block;
    width:12px;
    height:12px;
    border-top:3px solid #74412e;
    border-right:3px 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);
}
.search-main {
    display: none !important;
}
.search-map a:before {
    background-image: url(/img/store/icon02.png);
    background-size: cover;
}
.search-sub {
    padding:0 0 20px;
}
.search-sub li {
    width:48.19%;
    margin:0 0 20px;
    position: relative;
}
.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.8rem;
    padding:1.3em 0;
    position: relative;
}
.search-sub input[type='checkbox'] {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
.search-sub label {
    position: relative;
    display: inline-block;
    cursor: pointer;
    font-size:1.8rem;
    padding:1.3em 0;
    width:100%;
    text-align: center;
    border:2px solid #74412e;
    color:#74412e;
    font-weight: bold;
}
.search-sub label::before {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    content: ' ';
    height: 100%;
}
.search-sub input[type='checkbox']:checked + label {
    color: #ffffff;
}
.search-sub input[type='checkbox']:checked + label::before {
    top: 0;
    width: 100%;
    height: 100%;
    background: #74412e;
}
.search-sub input[type='checkbox']:checked + label::after {
    content: "";
    display: block;
    width: 18px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    position: absolute;
    top: 47%;
    left: 7%;
    -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);
}

.search-sub label, .search-sub label::before {
    -webkit-transition: 0.25s all ease;
            transition: 0.25s all ease;
}

.input-keyword {
    width:100%;
    border:2px solid #74412e !important;
    color:#74412e;
    padding:1.2em 2em !important;
    font-size:2rem !important;
    font-weight: bold;
}
input:-ms-input-placeholder {
    color: gray;
}
@media all and (-ms-high-contrast:none){
    *::-ms-backdrop, .input-keyword {
        height:2.5em !important;
        padding:0em 2em !important;
    }
}

.search-button {
    background-color: #74412e;
    width:50%;
    display: block;
    font-size:1.8rem;
    text-align: center;
    color:#fff;
    font-weight: bold;
    padding:1.3em 0;
    margin:2em auto 0;
}
.search-title {
    padding:0 0 0.8em;
    color:#74412e;
    font-size: 2rem;
}

/* ------------------------------------------------------------------------ 商品詳細 */
.product-detail .inner {
    padding:0 64px;
}
.product-name {
    font-size:2.2rem;
    color:#74412e;
    font-weight: bold;
    padding:0 0 1.2em;
}
.product-image {
    width:400px;
    float:left;
}
.product-info {
    width:368px;
    float:right;
}
.product-price {
    padding:0 0 1em;
}
.product-price li {
    color:#74412e;
    font-size: 2.2rem;
    font-weight: bold;
    float:left;
    padding:0 0.8em 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:1em 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.6rem;
}
.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;
    white-space: pre-wrap;
}
.transition-link {
    position: relative;
    padding-bottom: 20px;
}
.transition-link li.transition-prev {
    float:left;
}
.transition-link li.transition-back {
    width:340px;
    position: absolute;
    top: 0%;
    left: 50%;
    background-color: #DBCFCB;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -o-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}
.transition-link li.transition-back a {
    color:#74412e;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
}
.transition-link li.transition-next {
    float:right;
}
.transition-link li a {
    display:block;
    position: relative;
    padding:1em 10%;
    width:auto;
    white-space: nowrap;
    min-width: 240px;
    text-decoration: none;
    color: #74412e;
}
.transition-link li.transition-prev a {
    text-align: left;
}
.transition-link li.transition-next a {
    text-align: right;
}
.shop-search {
    clear: both;
    width:720px;
    margin:0 auto;
    padding:56px 0 0;
}
.shop-search a {
    position: relative;
    display: block;
    background-color: #74412e;
    color:#fff;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    font-size: 2.6rem;
    padding:0.8em 0;
}
.shop-search a:after {
    content:"";
    display:block;
    width:12px;
    height:12px;
    border-top:3px solid #fff;
    border-right:3px solid #fff;
    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);
}

/* ------------------------------------------------------------------------ 商品一覧 */
.tab {
    border-bottom:2px solid #74412e;
}
.tab ul {
    width:960px;
    margin:0 auto;
}
.tab li {
    float:left;
}
.tab2 li {
    width:50%;
}
.tab3 li {
    width:33.3333%;
}
.tab4 li {
    width:25%;
}
.tab li a {
    color:#666;
    display: block;
    text-align: center;
    text-decoration: none;
    font-size:2.2rem;
    padding:0.8em 0;
    font-weight: bold;
    background-color: #E4E4E4;
    border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
}
.tab3 li a {
    font-size:1.8rem;
    padding:0.5em 0;
}
.tab3 li:nth-of-type(2) {
    padding:0 1px 0;
}
.tab li.active a {
    background-color: #74412e;
    color:#fff;
}
.tab4 li a {
    font-size:1.8rem;
    padding:0.5em 0;
}
.tab4 li:nth-of-type(2) {
    padding:0 1px 0;
}
.tab4 li:nth-of-type(2) a {}

.news .tab3 li:nth-of-type(1).active a,
.news .tab3 li:nth-of-type(1) a:hover {
    background-color: #773037;
    color:#fff;
}
.news .tab3 li:nth-of-type(2).active a,
.news .tab3 li:nth-of-type(2) a:hover {
    background-color: #51684E;
    color:#fff;
}
.news .tab3 li:nth-of-type(3).active a,
.news .tab3 li:nth-of-type(3) a:hover {
    background-color: #384C79;
    color:#fff;
}

.procat-section01 .inner {
    padding:0 0 4em;
}
.procat-btns {
    padding:3em 0;
}
.procat-btns ul {
    width:100%;
}
.procat-btns li {
    float:left;
    padding:0 0.5em;
}
.procat-btns-2 li {
    width:50%;
}
.procat-btns-3 li {
    width:33.33%;
}
.procat-btns-4 li {
    width:25%;
}
.procat-btns li a {
    display: block;
    text-align: center;
    text-decoration: none;
    color:#74412e;
    font-size:1.8rem;
    background-color: #DBCFCB;
    padding:0.5em 1em 0.5em 0;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    position: relative;
    font-weight: bold;
}
.procat-btns.procat-btns-2 li a {
    font-size:2rem;
    padding:1em 1em 1em 0;
}
.procat-btns.procat-btns-3 li a {
    font-size:1.9rem;
    padding:1em 1em 1em 0;
}
.procat-btns li a:after {
    content:"";
    display:block;
    width:10px;
    height:10px;
    border-top:2px solid #74412e;
    border-right:2px solid #74412e;
    position: absolute;
    top: 50%;
    right: 6%;
    -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(135deg);
}
.procat-btns li a:hover {
    color:#fff;
    background-color: #74412e;
}
.procat-btns li a:hover:after {
    border-top:2px solid #fff;
    border-right:2px solid #fff;
}
.procat-outer h3 {
    font-size:2.4rem;
    color:#74412e;
    font-weight: bold;
    padding:1.2em 0;
}
.procat-boxes {
    width:50%;
    float:left;
    padding:0 0 48px;
    display:block;
}
.procat-boxes:nth-of-type(2n+1) {
    clear: left;
}
.procat-boxes img {
    width:210px;
    float:left;
}
.procat-boxes .procat-info {
    width:200px;
    float:left;
    margin:0 40px 0 30px;
}
.procat-boxes .procat-info h4 {
    font-size:1.8rem;
    color:#74412e;
    font-weight: bold;
    padding:0.4em 0 0.8em;
}
.procat-boxes:hover .procat-info h4 {
    text-decoration: underline;
}
.procat-boxes .procat-info p {
    font-size:1.8rem;
    color:#333;
    line-height: 1.5;
}

.service-info {
    border-top:2px solid #74412e;
    border-bottom:2px solid #74412e;
    padding:1em 0 2.5em;
}
.service-info .inner {
    width:560px;
    margin:0 auto;
    padding:0;
}
.service-info h5 {
    font-size: 2rem;
    color:#74412e;
    font-weight: bold;
    padding:0.8em 0;
}
.service-info p {
    font-size:1.8rem;
    line-height: 1.5;
    padding:0 0 0.3em;
}
.service-info-btn {
    padding:1em 0 0;
}
.service-info-btn 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;
}
.service-info-btn 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);
}
.service-info-btn 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;
}

/* ------------------------------------------------------------------------ 店舗詳細 */
.shopdetail-section01 .inner {
    padding:0 64px;
}
.shopdetail-section01 h3 {
    font-size:2.4rem;
    color:#74412e;
    font-weight: bold;
    padding:0 0 1.2em;
    float:left;
}
.shopdetail-bnr {
    float:right;
    width:360px;
}
.shopdetail-map {
    padding:24px 0 20px;
    clear: both;
}
.shopdetail-map iframe {
    width:100%;
    height:480px;
}
.shopdetail-btn {
    text-align: right;
    padding-top:12px;
}
.shopdetail-btn a {
    width: 320px;
    color:#74412e;
    text-decoration: none;
    display: inline-block;
    position: relative;
    border:1px solid #74412e;
    text-align: center;
    padding:0.4em 0;
    font-size: 1.4rem;
}
.shopdetail-btn 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);
}

.shopdetail-info table {
    width:100%;
}
.shopdetail-info th,
.shopdetail-info td {
    font-size:1.8rem;
    text-align: left;
    border-bottom: 1px solid #999;
    color:#333;
    padding:1.8em 0;
    vertical-align: top;
    white-space: pre-wrap;
    word-break: break-all;
}
.shopdetail-info th {
    font-weight: bold;
    padding-right:2em;
    white-space: nowrap;
}
.shopdetail-info-icons li {
    float:left;
    margin-left:5px;
    margin-bottom:5px;
}
/* .shopdetail-info-icons li ~ li {
    padding-left:5px;
} */
.shopdetail-info-icons li img {
    width:36px;
    height:36px;
    display: block;
}

.image-slider {
    width:560px;
    margin:0 auto;
    padding:4em 0 2em;
}
.thumb-item-nav li {
    padding:2px 1px 0;
    cursor: pointer;
}
.thumb-item-nav li img {
    border:2px solid #fff;
}
.thumb-item-nav li.slick-current img {
    border:2px solid #f00;
}

.shopdetail-info-msg a {
    color: #428bca;
}

/* ------------------------------------------------------------------------ ニュース*/
.news-inner {
    padding:32px 40px !important;
}
.news-boxes {
    width:205px;
    float:left;
    margin:0 20px 32px 0;
    display: block;
    text-decoration: none;
}
.news-boxes:nth-of-type(4n+1) {
    clear: left;
}
.news-boxes:nth-of-type(4n) {
    margin-right:0;
}
.news-boxes img {
    margin:0 0 0.8em;
}
.news-boxes .news-date {
    font-size: 1.4rem;
    color:#818181;
}
.news-boxes .news-date:before {
    display: inline-block;
    padding:0.1em 1.8em;
    color:#fff;
    font-size: 1rem;
    font-weight: bold;
    vertical-align: text-bottom;
    margin-right:1em;
}
.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.3em 0 0;
    color: #333;
    font-size:1.4rem;
}
.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:32px 40px 64px !important;
}
.news-detail-title {
    background-color: #EDEDED;
    padding:1em 0;
}
.news-detail-title span {
    font-size:2.6rem;
    display: block;
    width:960px;
    margin:0 auto;
}
.news-detail-title span:before {
    display: inline-block;
    padding:0.1em 1.8em;
    color:#fff;
    font-size: 1.6rem;
    font-weight: bold;
    vertical-align: text-bottom;
    margin-right:1em;
}
.news-detail-title.category-info span:before {
    content: "お知らせ";
    background-color: #773138;
}
.news-detail-title.category-camp span:before {
    content: "キャンペーン";
    background-color: #51684F;
}
.news-detail-title.category-newi span:before {
    content: "新商品";
    background-color: #3F4F72;
}
.news-detail-inner .image-slider {
    padding:1em 0 3.5em;
}
.news-detail-inner p {
    font-size:1.8rem;
    line-height: 2;
    white-space: pre-wrap;
}
.news-detail-inner p ~ p {
    padding:1.5em 0 0;
}
.news-bnrarea {
    padding:0;
    width:960px;
    margin:0 auto;
    padding:0 0 5em;
}
.news-bnrarea li {
    width:48.95%;
    float: left;
    margin-bottom: 1em;
}
.news-bnrarea li:nth-of-type(2n+1) {
    clear: both;
}
.news-bnrarea li:nth-of-type(2n) {
    float: right;
}

/* ------------------------------------------------------------------------ ログイン*/
.header-point,
.header-charge {
    color:#693929;
    font-size:2.2rem;
    width:auto !important;
    height:auto !important;
    margin:0.2em 2em 0 0 !important;
}
.header-point:before,
.header-charge:before {
    display:inline-block;
    font-size:1.2rem;
    background-color: #693929;
    color: #fff;
    text-align: center;
    padding:0.2em 0.5em;
    vertical-align: text-top;
    letter-spacing: 5px;
    text-indent: 5px;
    margin-right:1em;
}
.header-point:after,
.header-charge:after {
    display:inline-block;
    font-size:1.6rem;
}
.header-point:before {
    content:"ポイント";
}
.header-point:after {
    content:"pt";
}
.header-charge:before {
    content:"残　高";
}
.header-charge:after {
    content:"円";
}
.header-login_sp {
    display:none;
}
#footer-loginlink {
    margin-top:3em;
}
#footer-loginlink ul {
    width:100%;
    text-align: center;
}
#footer-loginlink li {
    font-size: 1.8rem;
    display: inline-block;
}
#footer-loginlink li ~ li:before {
    content:"｜";
    display: inline-block;
    padding:0 1em;
}
#footer-loginlink li a {
    color:#693929;
}
#footer-loginlink li a:hover {
    color:#A3583F;
    text-decoration: none;
}

/* ------------------------------------------------------------------------ 店舗一覧*/
.storelist-table {
    width:100%;
    border:1px solid #ccc;
}
.storelist-table th,
.storelist-table td {
    font-size: 1.8rem;
    padding:0.5em 1em;
}
.storelist-table th {
    text-align: left;
    color: #fff;
    background-color:#693929;
}
.storelist-table tr:nth-of-type(4n) td,
.storelist-table tr:nth-of-type(4n+1) td {
    background-color: #F7ECE2;
}
.storelist-table td a {
    text-decoration: none;
    color:#693929;
    line-height: 36px;
}
.storelist-table td a:hover {
    text-decoration: underline;
}
.storelist-table td.icon01 {background: url(../img/shop/icon_b01.png) no-repeat 8px 8px;}
.storelist-table td.icon04 {background: url(../img/shop/icon_b04.png) no-repeat 8px 8px;}
.storelist-table td.icon05 {background: url(../img/shop/icon_b05.png) no-repeat 8px 8px;}
.storelist-table td.icon06 {background: url(../img/shop/icon_b06.png) no-repeat 8px 8px;}
.storelist-table td.icon07 {background: url(../img/shop/icon_b07.png) no-repeat 8px 8px;}
.storelist-table td.icon08 {background: url(../img/shop/icon_b08.png) no-repeat 8px 8px;}
.storelist-table td.icon09 {background: url(../img/shop/icon_b09.png) no-repeat 8px 8px;}
.storelist-table td.icon10 {background: url(../img/shop/icon_b10.png) no-repeat 8px 8px;}
.storelist-table td.icon11 {background: url(../img/shop/icon_b11.png) no-repeat 8px 8px;}
.storelist-table td.icon12 {background: url(../img/shop/icon_b12.png) no-repeat 8px 8px;}
.storelist-table td.icon16 {background: url(../img/shop/icon_b17.png) no-repeat 8px 8px;}
.storelist-table td.category01:before {
    content:"";
    width:36px;
    height:36px;
    display: block;
    /* background: url(/img/shop/icon_shop01.png) no-repeat 0 0; */
    background-size: cover;
    float:left;
    margin-right:0.8em;
}
.storelist-pager {
    padding:2em 0 0;
}
.storelist-pager-inner {
    text-align: center;
    font-size: 0;
}
.storelist-pager span {
    display: inline-block;
    border: 1px solid #fff;
}
.storelist-pager span a {
    display: block;
    text-align: center;
    padding:0.5em 0;
    font-size: 1.5rem;
    min-width: 2.6em;
    text-decoration: none;
    color:#693929;
    background-color:#F9F5F1;
}
.storelist-pager span.active a {
    background-color: #693929;
    color:#fff;
    font-weight: bold;
}
.search-word {
    padding:0 0 1.5em;
}
.search-word p {
    font-size: 1.8rem;
    color:#74412e;
}
.search-word p span {
    display: inline-block;
    border: 1px solid #74412e;
    padding:0.2em 0.5em;
    margin:0.2em 0.5em;
    font-size:1.5rem;
}
.storelist-table td.search-style {
    padding-top: 0;
    padding-left: calc(40px + 1.5em);
}

/* ------------------------------------------------------------------------ クーポンLP*/
.couponlp-section01 .inner {
    width:720px;
    margin:0 auto;
}
.couponlp-box {
    padding:0 0 96px;
}
.couponlp-box h3 {
    position: relative;
    padding:0.8em 0 0.8em 6em;
    font-size:2rem;
    line-height: 1.5;
    background: url(/img/coupon/img01.png) no-repeat 98% 70% #EEE9DF;
    background-size: 65px;
}
.couponlp-box h3:before {
    display: block;
    position: absolute;
    background: url(/img/coupon/bg01.png) no-repeat right top #744231;
    background-size: contain;
    color:#fff;
    top:0;
    left:0;
    bottom:0;
    padding:0.8em 1.5em 0.8em 1em;
}
.couponlp-box h3.coupon-h3-1:before {
    content: "特典１";
}
.couponlp-box h3.coupon-h3-2:before {
    content: "特典２";
    line-height: 3;
}
.couponlp-box h3.coupon-h3-3:before {
    content: "特典３";
}
.couponlp-image {
    padding:40px 0 24px;
    width:480px;
    margin:0 auto;
}
.couponlp-box h4 {
    color: #744231;
    font-size:2.2rem;
    width:480px;
    margin:0 auto;
    padding:0 0 0.6em;
}
.couponlp-box h4:before {
    content:"";
    width:28px;
    height:32px;
    display: inline-block;
    background: url(/img/coupon/icon01.png) no-repeat left center;
    background-size: contain;
    position: relative;
    top:6px;
    margin-right:0.4em;
}
.couponlp-box ul {
    width:480px;
    margin:0 auto;
}
.couponlp-box li {
    font-size: 2rem;
    text-indent: -1em;
    padding-left:1em;
    line-height: 1.8;
}
.couponlp-box li:before {
    content:"・";
}
.couponlp-btn {
    width:600px;
    padding:56px 0 0;
    margin:0 auto;
}
.coupon-aboutpc {
    padding:80px 0 24px;
}
.coupon-aboutpc img {
    display: block;
    width:100%;
}
.backbtn {
    width:240px;
    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;
}

/* ------------------------------------------------------------------------ サイトマップ*/
.sitemap-section {
    padding:0 0 6em;
}
.sitemap-row {
    background-color: #F6E9DE;
    margin:0 0 1em;
    padding:1em;
}
.sitemap-row dt a img,
.sitemap-row dd a img {
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: text-top;
    margin-left:0.5em;
}
.sitemap-row dd {
    background-color: #fff;
    width:49%;
    margin:1em 0 0;
}
.sitemap-row dd.sub {
    background-color: #FEF6EF;
}
.sitemap-row dd:nth-of-type(2n+1) {
    float:left;
}
.sitemap-row dd:nth-of-type(2n) {
    float:right;
}
.sitemap-row dd.sub-cb {
    clear: both;
}
.sitemap-row dd.float-left {
    float:left;
}
.sitemap-row dt a,
.sitemap-row dd a {
    display: block;
    color:#744231;
    text-decoration: none;
    font-size:1.6rem;
}
.sitemap-row dt a:hover,
.sitemap-row dd a:hover {
    text-decoration: underline;
}
.sitemap-row dt a {
    padding:0 1em 0;
    font-weight: bold;
    position: relative;
}
.sitemap-row dt a:before {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:2px solid #744231;
    border-right:2px solid #744231;
    position: absolute;
    top: 50%;
    left: 0;
    -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);
}
.sitemap-row dd a {
    padding:0.8em 1em;
    position: relative;
}
.sitemap-row dd a:after {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:2px solid #744231;
    border-right:2px solid #744231;
    position: absolute;
    top: 50%;
    right: 3%;
    -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);
}
.sitemap-section .backbtn {
    margin:5em auto 0;
}

/* ------------------------------------------------------------------------ 珈琲教室*/
.school-section01 .inner {
    width:720px;
    margin:0 auto;
}
.school h3 {
    background-color: #744231;
    color:#fff;
    font-size:2rem;
    padding:0.6em 1.5em;
}
.schoolinfo,
.schoolinfo-detail {
    width:640px;
    margin:0 auto;
}
.schoolinfo img {
    width:480px;
    margin: 40px auto 24px;
}
.schoolinfo h4 {
    font-size:2.2rem;
    font-weight: bold;
    margin:0 0 0.5em;
}
.schoolinfo h4:before {
    content:"【"
}
.schoolinfo h4:after {
    content:"】"
}
.schoolinfo p {
    font-size:1.8rem;
    white-space: pre-wrap;
}

.schoolinfo-detail {
    padding:5em 0 0;
}
.schoolinfo-detail h5 {
    background-color: #EEE9DF;
    font-size:1.8rem;
    padding:0.6em 1.5em;
}
.schoolinfo-detail p {
    font-size:1.5rem;
    line-height: 2;
    padding:1em 1.5em;
}
.schoolinfo-detail table {
    width:100%;
    margin:0.5em 0 40px;
}
.schoolinfo-detail th,
.schoolinfo-detail td {
    font-size:1.6rem;
    padding:0.5em 1em;
    border-bottom: 1px solid #fff;
}
.schoolinfo-detail th {
    font-weight: bold;
    text-align: left;
    background-color: #DCDCDC;
    color:#666;
    width:31.25%;
}
.schoolinfo-detail td {
    background-color: #f7f7f7;
}

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

/* ------------------------------------------------------------------------ プレシャスメンバーズ*/
.precious-section01 .inner {
    width:720px;
    margin:0 auto;
}
.precious h3 {
    background-color: #744231;
    color:#fff;
    font-size:2rem;
    padding:0.6em 1.5em;
}
.precious-contents-inner {
    width:640px;
    margin:0 auto;
    padding:32px 0 64px;
}
.precious-contents-inner p {
    font-size:1.8rem;
}
.precious-point {
    position: relative;
    background-color: #EEE9DF;
    border-radius: 40px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    margin:24px 0;
}
.precious-point-head {
    width:80px;
    height:80px;
    background-color: #744231;
    color:#fff;
    font-weight: bold;
    text-align: center;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    position: relative;
    float:left;
}
.precious-point-head-inner {
    position: absolute;
    top: 55%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    line-height: 1;
}
.precious-point-head span {
    display: block;
    font-size:4.2rem;
    line-height: 1;
}
.precious-point p {
    position: absolute;
    font-size:1.6rem;
    width:512px;
    top: 50%;
    left: 96px;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.precious-btns {
    padding:12px 0 0;
}
.precious-btns .precious-btn {
    width:320px;
    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:48.75%;
    margin:24px auto;
}
.precious-btns2 li:nth-of-type(1) {
    float:left;
}
.precious-btns2 li:nth-of-type(2) {
    float:right;
}
.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 80px;
}
.precious-img01 {
    margin:48px 0 72px;
}
.precious-img04 {
    margin:40px 0 0;
}
.precious-img06 {
    margin-bottom:48px;
}
.precious-img07 {
    margin:40px 0;
}
.precious-kome li {
    font-size:1.4rem;
    text-indent: -1em;
    padding:0 0 1em 1em;
}
.precious-kome li:before {
    content:"※";
}
.precious-kome li span {
    color:#c00;
}

.precious-section01 .tab li a {
    background-color: #EEE9DF;
}
.precious-section01 .tab li.active a {
    background-color: #74412e;
    color: #fff;
}
#precious-contents01,
#precious-contents02,
#precious-contents03 {
    display:block;
}

/* ------------------------------------------------------------------------ こだわり*/
.philosophy h3 {
    padding: 1em 200px;
    font-size: 3rem;
    line-height: 1.8;
}
.philosophy .backbtn {
    margin:5em auto 0;
}
.philosophy .kodawari-row ul,
.prod-ul {
    width:416px;
    margin:2em auto 0;
}
.philosophy .kodawari-row li,
.philosophy .kodawari-row li a,
.prod-ul li {
    color:#fff;
    font-size:1.6rem;
}
.prod .kodawari-row ul {
    width:416px;
    margin:2em auto 0;
    color:#fff;
}
.prod .kodawari-row li a {
    color:#fff;
    font-size:1.6rem;
}
.prod .kodawari-row li a:hover,
.koodawari-link:hover {
    text-decoration: none;
}
.prod-ul li {
    font-size:1.8rem;
    text-align: center;
}
.prod-ul li.prod-kome {
    font-size:1.4rem;
}

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

/* ------------------------------------------------------------------------ 各ページの画像*/
.mainvisual {
    width:100%;
    padding:0 0 6em;
}
.mainvisual img {
    display: block;
    width:100%;
}

/* ------------------------------------------------------------------------ マイページ*/
.mypage {
    font-size:1.6rem;
}
.mypage .common-button {
    line-height: 1 !important;
}
.mypage-section01 {
    padding:0 0 6em;
}
.mypage-section02 {
    padding:0 0 6em;
    border-top: 1px solid #d5cec9;
}
.mypage-section .inner {
    width:660px;
}
.mypage-section .error {
    display:none;
}
.mypage-section .backbtn {
    padding-top:4em;
}
.mypage-section .tc {
    color: #58382b;
    font-size: 2.8rem;
    letter-spacing: 3px;
    text-align: center;
    padding: 48px 0 24px;
    font-weight: bold;
}
.ng-hide {
    display: none;
}

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

/* ------------------------------------------------------------------------ こだわり*/
.philosophy-content {
    padding:4em 0 0;
}
.philosophy-content p {
    font-size:1.8rem;
    line-height: 2;
}
.philosophy-content p + p {
    padding:1em 0 0;
}
.philosophy-content h5 {
    font-size:2.2rem;
    line-height: 1.8;
    padding:2em 0 1em;
    color:#74412e;
}
.philosophy-content h5.phi-first {
    padding:0 0 1em;
}
.philosophy-content h5:before {
    content: "";
    width: 28px;
    height: 32px;
    display: inline-block;
    background: url(/img/coupon/icon01.png) no-repeat left center;
    background-size: contain;
    position: relative;
    top: 6px;
    margin-right: 0.4em;
}
.philosophy-content img.image-left,
.philosophy-content img.image-right {
    width:40%;
}
.philosophy-content img.image-left {
    float:left;
    margin:0 2em 1em 0;
}
.philosophy-content img.image-right {
    float:right;
    margin:0 0 1em 2em;
}
.philosophy-content img.image-wide {
    width:100%;
    margin:4em 0;
}
.philosophy-content img.image-wide-mt0 {
    margin: 0 0 2em !important;
}
.philosophy-inner-row + .philosophy-inner-row {
    padding:2em 0 0;
}
.philosophy-inner-row ul {
    margin-top:3em;
    border-right:1px solid #74412e;
    border-bottom:1px solid #74412e;
}
.philosophy-inner-row li {
    width:33.33%;
    float:left;
}
.philosophy-inner-row li a {
    padding:1em;
    display: block;
    width:100%;
    text-align: center;
    border-top:1px solid #74412e;
    border-left:1px solid #74412e;
    position: relative;
    font-size:1.8rem;
    color:#74412e;
    font-weight: bold;
}
.philosophy-inner-row li 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);
}
.phi-kome {
    padding-top:2em;
    display: block;
    font-size:1.3rem;
    line-height: 1.8 !important;
}

.mt40 {
    margin-top:40px !important;
}
.schoolinfo-detail a {
    text-decoration: underline;
}
.schoolinfo-detail a:hover {
    text-decoration: none;
}
.use-area {
    padding:1.5em 0 0;
}
.use-area p {
    font-weight: bold;
}
.common-link-list li a {
    position: relative;
    padding-left: 1em;
}
.common-link-list li a:before {
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-top:2px solid #744231;
    border-right:2px solid #744231;
    position: absolute;
    top: 50%;
    left: 0;
    -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);
}
