@charset "utf-8";

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

Copyright (C) apricot-design All Rights Reserved.
------------------------------------------------------------
CSS information
 file name  :  layout.css
 style info :  レイアウトファイル
 admin info :  apricot-design

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


/*
0:セット
------------------------------------------------------------
*/
html,
body {
    width: 100%;
}

body {
    font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
    color: #231815;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
    letter-spacing: 1px;
    -webkit-text-size-adjust: 100%;
}

.win body {
    font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
}

a,
a:link,
a:active,
a:visited {
    text-decoration: none;
    transition: 0.5s;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
}

a:hover {
    color: #aaa;
}

a:focus {
    outline: none;
}

a:hover,
a:active {
    outline: 0;
}

.opacity:hover {
    filter: alpha(opacity=50);
    /* IE 6,7*/
    -ms-filter: "alpha(opacity=50)";
    /* IE 8,9 */
    -moz-opacity: 0.5;
    /* FF , Netscape */
    -khtml-opacity: 0.5;
    /* Safari 1.x */
    opacity: 0.5;
    zoom: 1;
    /*IE*/
}

img {
    max-width: 100%;
    height: auto;
}

.fit {
    object-fit: cover;
    /* 他のブラウザ用(＝通常の指定) */
    object-position: 50% 50%;
    /* 他のブラウザ用(＝通常の指定) */
    font-family: 'object-fit: cover; object-position: 50% 50%;'
        /* IE・Edge対応 */
}

.sp {
    display: none;
}

.pc {
    display: block;
}

/*
//ベース
------------------------------------------------------------
*/
#container_wrap {
    position: relative;
    overflow: hidden;
    padding: 0 50px;
}

#container {}

#content {}

.sidefix_txtleft,
.sidefix_txtright {
    position: absolute;
    font-size: 1.07em;
    font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    line-height: 1;
}

.sidefix_txtleft {
    left: 16px;
    top: 32%;
}

.sidefix_txtright {
    right: 16px;
    top: 47%;
}

#main {
    float: left;
    width: 58%;
    margin: 0 3% 0 0;
}

#sub {
    float: right;
    width: 39%;
}

#main_item {
    float: right;
    width: 79%;
    margin-left: 5%;
    overflow: hidden;
}

#sub_item {
    float: left;
    width: 16%;
    overflow: hidden;
}

.section_wrap {
    padding: 2em 0;
    clear: both;
    overflow: hidden;
}

.section_wrapB {
    padding: 0;
    clear: both;
}

.low_section_wrap {
    padding: 15px 0 2em 0;
    clear: both;
    overflow: hidden;
}

.sectionA {
    margin: 0 0 3em;
}

.sectioB {
    margin: 0 0 0 0;
}

.sectionC {
    margin: 0 0 3em;
    text-align: center;
}



.inner {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    clear: both;
}

.innerB {
    max-width: 1150px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}

.innerC {
    max-width: 1230px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}

.bg_kabegami {
    background: url(../images/bg_beigeimg.jpg);
    overflow: hidden;
}

.bg_kabegami.gizagiza {
    position: relative;
    width: 100%;
    padding: 0 0 100px 0;
}

.bg_kabegami.gizagiza::before {
    height: 30px;
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
}

.bg_kabegami.gizagiza::before {
    bottom: 0px;
    background: linear-gradient(30deg, #fff 10px, transparent 0), linear-gradient(330deg, #fff 10px, transparent 0);
    background-size: 30px 30px;
}

.bg_mokume {
    background: url(../images/bg_wood.jpg);
    background-size: contain;
}

.bg_itemwhite {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin: 30px auto 0;
    z-index: 0;
}

.bg_itemwhite::before {
    content: "";
    position: absolute;
    background: #fff;
    width: 90%;
    right: 0;
    height: 100%;
    z-index: -1;
}

.bg_itemwhite .inner {
    padding: 90px 0 90px 65px;
    overflow: hidden;
}

/*
//ヘッダー
------------------------------------------------------------
*/
header {
    overflow: hidden;
    clear: both;
    margin: 15px auto;
}

.header_box {
    width: 100%;
    margin: 0 auto 0;
    overflow: hidden;
    clear: both;
    text-align: center;
}

.h_logo {
    text-align: left;
    display: inline-block;
    margin-bottom: 20px;
transform: translateX(20%);
}

.h_logo img {
    width: 141px;
    height: 62.5px;
}

.header_navi {
    float: right;
    margin-top: 20px;
    letter-spacing: -.5em;
}

.header_navi li {
    display: inline-block;
    margin-right: 7px;
    margin-left: 7px;
    height: 17px;
    width: 17px;
}
.header_navi li:first-child img {
    width: 16px;
    height: 16px;
}
.header_navi li:last-child{
	display:none;
}
.header_navi li:last-child img {
    width: 7.4px;
    height: 16px;
}

.header_ttl {
    margin-bottom: 10px;
    font-size: .7em;
    text-align: center;
}


#gnavi {
    max-width: 1050px;
    width: 100%;
    margin: 0 auto;
    clear: both;
    text-align: center;
    letter-spacing: -.5em;
    /*
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
*/
}

#gnavi li {
    font-size: 1.07em;
    line-height: 1;
    padding: 0 19px;
    letter-spacing: .2em;
    display: inline-block;
}

#gnavi li:first-child {
    padding-left: 0;
}

#gnavi li:last-child {
    padding-right: 0;
}

#gnavi li span {
    display: block;
    font-size: .66em;
    margin-top: 10px;
    letter-spacing: .2em;
}

#gnavi li a {
    color: #000;
    display: block;
}

#gnavi li a {
    position: relative;
}

#gnavi li.current a::before,
#gnavi li.nocurrent a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: #888;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 55%;
}

#gnavi li.nocurrent a::before {
    opacity: 0;
    width: 0%;
    transition: .5s;
}

#gnavi li.nocurrent a:hover::before {
    opacity: 1;
    width: 100%;
}

/*-------下層のheader*/
header.low_header {
    margin: 35px auto;
}

.h_logo_box,
.header_navi.low_snsbox,
.low_navbox {
    vertical-align: top;
}

.h_logo_box {
    display: inline-block;
    float: left;
}

.h_logo_box .h_logo {
    text-align: center;
    margin-bottom: 0px;
}

.h_logo_box .h_logo img {
    width: 113px;
    height: 50px;
}

.header_navi.low_snsbox {
    margin-top: 10px;
}

.low_navbox {
    display: inline-block;
    margin-top: 10px;
}

.low_navbox > #gnavi {
    max-width: 1050px;
    width: 100%;
    margin: 0 auto;
    clear: both;
    text-align: center;
    /*
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
*/
}

.low_navbox > #gnavi li {
    font-size: 1.07em;
    line-height: 1;
}

.low_navbox > #gnavi li:first-child {
    padding-left: 0;
}

.low_navbox > #gnavi li:last-child {
    padding-right: 0;
}


/*
//フッター
------------------------------------------------------------
*/
#footer_wrap {
    margin: 30px 0 0 0;
    clear: both;
    width: 100%;
    overflow: hidden;
}

#footer {
    max-width: 1150px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    clear: both;
    padding: 0 15px;
}

.footer_navi {
    max-width: 1150px;
    width: 100%;
    overflow: hidden;
    margin: 0 auto 20px;
    clear: both;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.footer_navi > li {
    width: auto;
    font-size: 1.07em;
    line-height: 1.2;
    padding: 0 15px;
    letter-spacing: .17em;
    border-left: 1px #888 solid;
}

.footer_navi > li:first-child {
    padding-right: 30px;
    border-left: none;
}

.footer_navi > li:last-child {
    padding-right: 0;
}

.footer_navi li.current a {
    color: #000;
}

.footer_navi li span {
    display: block;
    font-size: .66em;
    margin-top: 10px;
}

.footer_navi li a {
    color: #888888;
    display: block;
}

.footer_navi li a:hover {
    color: #000;
}

.footer_navi li a {
    position: relative;
}

.footer_navi li.current a::before,
.footer_navi li.nocurrent a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: #000;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 55%;
}

.footer_navi li.nocurrent a::before {
    opacity: 0;
    width: 0%;
    transition: .5s;
}

.footer_navi li.nocurrent a:hover::before {
    opacity: 1;
    width: 100%;
}

.f_logo:hover {
    opacity: .5;
}

.footer_logo {
    width: 64px;
    height: 22.2px;
}

.copy {
    clear: both;
    font-size: .87em;
    padding: 1em 1em 3em;
    text-align: center;
    color: #888;
    letter-spacing: .1em;
}

.f_insta {
    width: 16px;
    height: 16px;
    margin-right: 20px;
    margin-left: 7px;
}

.f_fb {
    width: 7.4px;
    height: 16px;
}

.list_fsns {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
}

.list_fsns li a:hover {
    opacity: .5;
}

/*
5:div
------------------------------------------------------------
*/

.main_img {
    position: relative;
    height: 500px;
    overflow: hidden;
}

.main_slider{
    width: 100%;
    overflow: hidden;
}
.main_txt {
    position: absolute;
    right: 0;
    top: 40%;
    transform: translateY(-50%);
}

.main_txt li:first-child {
    margin-bottom: 25px;
}

.main_txt p {
    text-align: left;
    line-height: 1;
    font-size: 2em;
    padding: .5em .7em .5em .7em;
}

.gizagiza .txt_typeA {
    line-height: 2.5;
    margin: 45px auto 0;
}

.gif_box {
    width: 100%;
    position: relative;
    height: 140px;
}

.gif_box .tori01 {
    position: absolute;
    bottom: 0;
    left: 32%;
    width: 340px;
}

.gif_box .tori02 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 182px;
}

.gif_box .tori03 {
    position: absolute;
    bottom: 15%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 154px;
}

.gif_box .tori04 {
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 153px;
}

.gif_box .tori05 {
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 153px;
}

.gif_box .tori06 {
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 195px;
}

.gif_box .tori07 {
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 110px;
}

.map {
    padding: 20px 0;
}

.map::before {
    content: '';
    display: block;
    padding: 60% 0 0;
}

.map > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.article_box {
    padding: 40px;
    margin-bottom: 30px;
}

.article_box > .ttl {
    font-size: 1.42em;
    text-align: left;
    line-height: 1.5;
    margin-bottom: .7em;
}

.article_box .day_box {
    font-size: .92em;
    float: right;
    letter-spacing: .15em;
    padding: 0 0 .2em .5em;
    line-height: 1.5;
    display: inline-block;
    border-left: 1px #888 solid;
    border-bottom: 1px #888 solid;
    margin-bottom: 1.2em;
}

.article_box .day_box .day {
    display: inline-block;
    margin-right: 1em;
}

.article_box .txt img {
    width: 100%;
}

.article_box .txt {
    line-height: 2.2;
    clear: both;
}

/*-------sideber*/
.section_sideA {
    width: 100%;
    margin: 0 0 3em;
}

.side_contact {
    text-align: center;
    margin: 0 0 3em;
}

.side_ttlA {
    display: block;
    width: 100%;
    font-size: 1.14em;
    padding-bottom: .8em;
    line-height: 1;
    margin: 0 auto 1em;
}

.list_subitem {
    padding: 2em 0;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
}

.list_subitem li {
    margin-bottom: 1em;
}

.list_subitem li:last-child {
    margin-bottom: 0;
}

.list_subitem li a {
    font-size: 1.14em;
    color: #888888;
    letter-spacing: .01em;
}

.list_subitem li a.current {
    color: #000;
}

.list_subitem li a:hover {
    color: #000;
}

.list_subitem li a.current:hover {
    opacity: .5;
}

.section_sideB {
    width: 100%;
    padding: 40px;
    margin-bottom: 35px;
    background: #fff;
}

.side_ttlB {
    display: block;
    position: relative;
    width: 100%;
    font-size: 1.14em;
    line-height: 1;
    margin: 0 auto 1.5em;
    padding: 0 0 0 20px;
}

.side_ttlB::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 8px;
    height: 8px;
    border-bottom: 1px #888 solid;
    border-right: 1px #888 solid;
    transform: rotate(-45deg);
}

.list_subarticle {
    width: 100%;
}

.list_subarticle a {
    color: #221714;
    display: block;
}

.list_subarticle a:hover {
    opacity: .6;
}

.list_subarticle li {
    margin: 0 auto 35px;
}

.list_subarticle li:last-child {
    margin: 0 auto 0;
}

.list_subarticle dl {
    letter-spacing: -.5em;
}

.list_subarticle dl dd,
.list_subarticle dl dt {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
}

.list_subarticle dl dd {
    overflow: hidden;
    position: relative;
    width: 30%;
    margin: 0 7% 0 0;
    height: auto;
}

.list_subarticle dl dd::after {
    padding-top: 100%;
    display: block;
    content: "";
}

.list_subarticle dl dd img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0;
}

.list_subarticle dl dt {
    width: 63%;
    text-align: left;
}

.list_subarticle dl dt .ttl {
    font-size: 1.14em;
    line-height: 1.5;
    margin-bottom: .5em;
    letter-spacing: .07em;
}

.list_subarticle dl dt .txt {
    line-height: 1.5;
}


.list_subtenpo li {
    margin: 0 0 1em 0;
}

.list_subtenpo li:last-child {
    margin: 0 0 0 0;
}

.list_subtenpo li a {
    color: #000;
}

.list_subtenpo li a:hover {
    opacity: .5;
}

.archive_ttl {
    font-size: 1.28em;
    display: inline-block;
    margin-right: 20px;
}

.selectWrap {
    width: 73%;
    position: relative;
    display: inline-block;
}

.selectWrap::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    border-bottom: solid 1px #231815;
    border-right: solid 1px #231815;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -4px;
    z-index: 1;
}

.select {
    display: inline-block;
    background: #E7E7E7;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 25px;
    font-size: 1.07em;
    position: relative;
    z-index: 1;
    padding: 0 20px 0 10px;
    border-radius: 2px;
    font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
    border: transparent;
}

select::-ms-expand {
    display: none;
}

.basic_txt {
    line-height: 2.5;
}


/*
6:ul
------------------------------------------------------------
*/
.list_topblog {
    width: 100%;
    margin-top: 50px;
}

.list_topblog li {
    margin-bottom: 35px;
    position: relative;
    padding: 35px 0;
    z-index: 1;
}

.list_topblog li:last-child {
    margin-bottom: 50px;
}

.list_topblog li::before {
    content: "";
    position: absolute;
    background: #fff;
    width: 94%;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
    height: 100%;

}

.list_topblog li dl {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    max-width: 800px;
    margin: 0 auto;
    width: 100%;
    overflow: hidden;
}

.list_topblog.shop_list li dl {
    max-width: 688px;
}

.list_topblog li dl dd {
    overflow: hidden;
    position: relative;
    width: 28%;
    height: auto;
}

.list_topblog.shop_list li dl dd {
    width: 32%;
}

.list_topblog li dl dd::after {
    padding-top: 100%;
    display: block;
    content: "";
}

.list_topblog li dl dd img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0;
}

.list_topblog li dt {
    padding: 10px 0 0 0;
    width: 67%;
    margin-left: 5%;
    text-align: center;
}

.list_topblog.shop_list li dt {
    width: 62%;
    margin-right: 6%;
    margin-left: 0;
    padding: 0 0 0 0;
}

.list_topblog li dt .day {
    font-size:.92em;
    position: relative;
    line-height: 1.2em;
    padding-bottom: .7em;
    margin-bottom: 1.2em;
    text-align: left;
}
.list_topblog li dt .ttl {
    font-size: 1.4em;
    line-height: 1.2em;
    margin-bottom: .5em;
    text-align: left;
}
.list_topblog.shop_list li dt .name {
    font-size: 1.64em;
    position: relative;
    line-height: 1.2em;
    padding-bottom: .4em;
    margin-bottom: .7em;
    text-align: left;
}

.list_topblog li dt .day::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 1px;
    background: #000;
    bottom: 0;
    left: 0;
}

.list_topblog li dt .name::after {
    content: "";
    position: absolute;
    width: 27px;
    height: 1px;
    background: #000;
    bottom: 0;
    left: 0;
}

.list_topblog li dt .txt {
    line-height: 2;
    font-size: 1em;
    text-align: left;
    margin-bottom: .7em;
    font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
}

.list_topblog.shop_list li dt .txt .hosoku {
    display: block;
    font-size: .75em;
    margin-top: 3px;
    text-align: left;
}

.list_topblog.shop_list li dt .txt {
    line-height: 2;
    font-size: 1.14em;
    text-align: left;
    margin-bottom: .7em;
    font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
}

.list_topblog.shop_list li dt .txt .pc {
    display: inline;
}

.list_topblog li dt a {
    color: #888;
    text-align: center;
    line-height: 1;
    padding-bottom: 5px;
    display: inline-block;
    position: relative;
    font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
}

.list_topblog.shop_list li dt a.more_googlemap {
    color: #231815;
    text-align: center;
    line-height: 35px;
    padding-bottom: 0px;
    display: block;
    width: 165px;
    height: 35px;
    border: 1px #AEAEAE solid;
    position: relative;
    font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
}

.list_topblog li dt a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0%;
    height: 1px;
    transition: .5s;
    background: #000;
    opacity: 0;
}

.list_topblog li dt a:hover::after {
    opacity: 1;
    width: 100%;
}

.list_topblog li dt a:hover {
    color: #000;
}

.list_style_slide {
    width: 90%;
    margin: 50px auto 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

}

.list_style_slide a {
    color: #000000;
    display: block;
}

.list_style_slide a:hover {
    opacity: .7;
}

.list_style_slide li {
    margin: 0 .7%;
}

.list_style_slide li:last-child {}

.list_style_slide li dd {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.list_style_slide li dd::after {
    padding-top: 72.6%;
    display: block;
    content: "";
}

.list_style_slide li dd img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0;
}

.list_style_slide li dt {
    text-align: left;
}

.list_style_slide li dt .cat {
    display: inline-block;
    padding: .5em 1em;
    line-height: 1;
    margin-bottom: .5em;
    font-size: .87em;
}

.list_style_slide li dt .ttl {
    font-size: 1.25em;
    line-height: 1.3
}

.list_style_slide li dt .day {
    font-size: .87em;
}

.list_style_slide li dt .txt {
    font-size: 1em;
    line-height: 1.5;
    font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
}

.list_toprecruit {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.list_toprecruit li {
    width: 50%;
}

.list_toprecruit li:first-child {
    padding: 3% 2.5% 3%;
    text-align: center;
}

.list_toprecruit li:last-child {
    background: url(../images/top_recruit.jpg) center center/cover no-repeat;
    height: 100%;
    min-height: 415px;
    overflow: hidden;
    position: relative;
}

.list_toprecruit li:last-child::after {
    padding-top: 70%;
    display: block;
    content: "";
}


.list_toprecruit li .txt_typeA {
    margin-bottom: 1.5em;
    letter-spacing: normal;
    font-size: 1.14em;
    line-height: 2.5;
}


.list_cafepurin {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.list_cafepurin li {
    width: 50%;
}

.list_cafepurin li:first-child {
    padding: 3% 2.5% 3%;
    text-align: center;
}

.list_cafepurin li:last-child {
    background: url(../images/cafepurin.jpg) center center/cover no-repeat;
    height: 100%;
    min-height: 415px;
    overflow: hidden;
    position: relative;
}

.list_cafepurin li:last-child::after {
    padding-top: 70%;
    display: block;
    content: "";
}


.list_cafepurin li .txt_typeA {
    margin-bottom: 1.5em;
    letter-spacing: normal;
    font-size: 1.14em;
    line-height: 2.5;
}


.list_cafepurin li .button {
    display: inline-block;
}

.list_cafepurin li .button:nth-of-type(1) {
    width: 210px;
    margin-right: 40px;
}

.list_cafepurin li .button:last-child {
    width: 280px;
}
.list_cafepurin li a.button:hover .border--top {
    width: calc(100% - 6px);
}
.list_cafepurin li a.button:hover .border--bottom {
    width: calc(100% - 6px);
}


.list_topitem {
    letter-spacing: -.5em;
}

.list_topitem li {
    vertical-align: top;
    letter-spacing: normal;
    width: 32.5%;
    display: inline-block;
    margin: 0 1.25% 1.25% 0;
}

.list_topitem li:nth-child(3n) {
    margin: 0 0 1.25% 0;
}

.list_topitem {
    display: flex;
    flex-wrap: wrap;
}
.list_topitem li {
    background: url(../images/bg_beigeimg.jpg);
    position: relative;
    display: flex;
    align-items: center;
}
.list_topitem li{
    padding: 210px 0 0;
}
.list_topitem li:nth-child(3n+2){
    padding: 0 0 210px;
}
.list_topitem li::before {
    content: '';
    width: 100%;
    height: 210px;
    position: absolute;
    left: 0;
    top: 0;
}
.list_topitem li:nth-child(3n+2)::before {
    bottom: 0;
    top: auto;
}
.list_topitem li.li01::before {
    background: url(../images/top_housewere.jpg)no-repeat center/cover;
}
.list_topitem li.li02::before {
    background: url(../images/top_gardening.jpg)no-repeat center/cover;
}
.list_topitem li.li03::before {
    background: url(../images/top_kitchin.jpg)no-repeat center/cover;
}
.list_topitem li.li04::before {
    background: url(../images/top_fashion.jpg)no-repeat center/cover;
}
.list_topitem li.li05::before {
    background: url(../images/top_babykids.jpg)no-repeat center/cover;
}
.list_topitem li.li06::before {
    background: url(../images/top_wear.jpg)no-repeat center/cover;
}
.list_topitem li.li07::before {
    background: url(../images/top_stationery.jpg)no-repeat center/cover;
}
.list_topitem li.li08::before {
    background: url(../images/top_cosme.jpg)no-repeat center/cover;
}
.list_topitem li.li09::before {
    background: url(../images/top_variety.jpg)no-repeat center/cover;
}
.topitem_desc {
    padding: 3em 1.2em;
}
.topitem_desc p {
    text-align: center;
    margin: 0 0 1em;
}

.list_insta {
    letter-spacing: -.5em;
    margin: 50px auto 35px;
}

.list_insta li {
    display: inline-block;
    width: 19%;
    margin: 0 1.25% 1.25% 0;
}

.list_insta li:nth-child(5n) {
    margin: 0 0 1.25% 0;
}

.list_button {
    max-width: 535px;
    width: 100%;
    margin: 0 auto;
    letter-spacing: -.5em;
}

.list_button li {
    display: inline-block;
    letter-spacing: .08em;
}

.list_button li:first-child {
    margin: 0 21% 0 0;
}

.list_item {
    letter-spacing: -.5em;
    margin: 0 auto 10px;
}

.list_item li {
    width: 30%;
    display: inline-block;
    vertical-align: top;
    letter-spacing: .1em;
    margin: 0 5% 3% 0;
}

.list_item li:nth-child(3n) {
    margin: 0 0 3% 0;
}

.list_item li dl dd {
    margin-bottom: 10px;
}

.list_item li dl dt .cat {
    font-size: 1em;
    line-height: 1;
	margin-bottom: .5em;
}

.list_item li dl dt .name {
    font-size: 1.28em;
	line-height: 1.2em;
    margin-bottom: .5em;
}
.list_item li dl dt .syosai {
    font-size: .9em;
}

.relation_box {
    border-top: 1px #888 solid;
    padding: 25px 0 0 0;
    margin: 30px auto 0;
    clear: both;
}

.relation_box .list_subarticle {
    width: 100%;
    letter-spacing: -.5em;
}

.relation_box .list_subarticle li {
    width: 46%;
    letter-spacing: normal;
    display: inline-block;
    margin: 0 8% 0 0;
}

.relation_box .list_subarticle li a {
    color: #221714;
}

.relation_box .list_subarticle li:last-child {
    margin: 0 0 0 0;
}

.relation_box .list_subarticle dl dd {
    width: 40%;
    margin: 0 7% 0 0;
}

.relation_box .list_subarticle dl dt {
    width: 53%;
    text-align: left;
}


.relation_box .list_subarticle dl dt .ttl {
    font-size: 1.14em;
    line-height: 1.2;
    margin-bottom: .9em;
}

.relation_box .list_subarticle dl dt .txt {
    line-height: 1.5;
    font-size: .92em;
}


ul.list_category {
    letter-spacing: -0.5em;
    clear: both;
    overflow: hidden;
    font-size: .9em;
}

ul.list_category li {
    letter-spacing: .02em;
    vertical-align: top;
    display: inline-block;
    width: 48%;
    margin: 0 4% 6% 0;
}

ul.list_category {}

ul.list_category li:nth-child(2n) {
    margin-right: 0;
}


ul.list_category li a {
    color: #231815;
    display: block;
}

ul.list_category li a:hover {
    opacity: .7;

}

ul.list_category li dt {
    position: relative;
    max-height: 210px;
    margin-bottom: 3%;
    overflow: hidden;
}

ul.list_category li dt .cat {
    font-size: .92em;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: inline-block;
    padding: 5px 5px;
    line-height: 1.5;
    margin: 0 0 8px 0;
}

ul.list_category li dt:before {
    padding-top: 72.6%;
    display: block;
    content: "";
}

ul.list_category li dt img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0;
}

ul.list_category li dd .ttl {
    font-size: 1.31em;
    line-height: 1.5;
}


ul.list_category li dd .day {
    font-size: .92em;
    letter-spacing: .1em;
    line-height: 1em;
    /*    font-family: 'Lato', sans-serif;*/
    margin: 0 0 5px 0;
}


/*
7:dl
------------------------------------------------------------
*/


/*
8:table
------------------------------------------------------------
*/




/*
9:タイトル
------------------------------------------------------------
*/
.basic_ttl {
    line-height: 1;
    text-align: center;
}

.ttl_typeA {
    font-size: 2em;
    margin-bottom: 1em;
    letter-spacing: .2em;
}

.ttl_typeA span {
    display: block;
    font-size: .57em;
    margin-top: 1em;
    letter-spacing: .2em;
}

.ttl_typeB {
    font-size: 1.57em;
    margin-bottom: .5em;
    letter-spacing: .2em;
}

.ttl_typeB span {
    display: block;
    font-size: .54em;
    margin-top: 1em;
    letter-spacing: .2em;
}

.ttl_typeC {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    font-size: 2em;
    margin-bottom: .5em;
    letter-spacing: .2em;
}

.ttl_typeC span {
    display: inline-block;
    font-size: .57em;
    margin-left: 1.3em;
    letter-spacing: .2em;
}

.ttl_typeD {
    font-size: 2em;
    margin-bottom: 1em;
    letter-spacing: .2em;
}

.ttl_typeD span {
    display: block;
    font-size: .57em;
    margin-bottom: 1em;
    letter-spacing: .2em;
}

.top_instaimg {
    width: 20.4px;
    height: 20.4px;
    margin-right: 15px;
}

/*
10：装飾
------------------------------------------------------------
*/
.bg_gray {
    background: #ccc;
}

.bg_gray2 {
    background: #AEAEAE;
}

.bg_white {
    background: #fff;
}

.bg_black {
    background: #000;
}

.bg_blue {
    background: #076BAF;
}

.txt_clr_gray {
    color: #ccc;
}

.txt_clr_grayB {
    color: #888;
}

.txt_clr_white {
    color: #fff;
}

.txt_clr_black {
    color: #000;
}

.txt_clr_blue {
    color: #076BAF;
}

.txt_left {
    text-align: left;
}

.txt_center {
    text-align: center;
}

.txt_right {
    text-align: right;
}


/*
11:ボタン系
------------------------------------------------------------
*/
#topcontrol {
    width: 40px;
    height: 40px;
    background: url(../images/pagetop.svg) no-repeat center/auto 100%;
    z-index: 5;
}

a.more {
    font-size: .92em;
    text-align: center;
    color: #000;
    width: 143px;
    height: 33px;
    background: #fff;
    display: block;
    line-height: 33px;
    margin: 0 auto;
    border: 1px dotted transparent;
    position: relative;
}

a.more::after {
    position: absolute;
    content: '';
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    right: 10%;
    top: 45%;
    margin: auto;
    width: 5px;
    height: 5px;
    z-index: 1;
    transform: rotate(-45deg);
}

a.more:hover {
    border: 1px dotted #111;
}

a.button {
    font-size: 1.14em;
    text-align: center;
    line-height: 48.5px;
    color: #fff;
    display: block;
    position: relative;
    background: #076BAF;
    width: 210px;
    height: 48.5px;
    overflow: hidden;
    margin: 0 auto;
}

a.button:after {
    position: absolute;
    content: '';
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    right: 10%;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 5px;
    height: 5px;
    z-index: 1;
    transform: rotate(-45deg);
}

a.button .border {
    position: absolute;
    z-index: 10;
    display: block;
    background-color: #fff;
}

a.button .border--top {
    top: 3px;
    left: 3px;
    z-index: 1;
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.3s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.3s;
}

a.button .border--right {
    top: 3px;
    right: 3px;
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.2s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.2s;
}

a.button .border--bottom {
    right: 3px;
    bottom: 3px;
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s;
}

a.button .border--left {
    bottom: 3px;
    left: 3px;
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

a.button .border--top,
a.button .border--bottom {
    width: 0;
    height: 1px;
}

a.button .border--right,
a.button .border--left {
    width: 1px;
    height: 0;
}

a.button:hover .border--top {
    width: 204px;
}

a.button:hover .border--bottom {
    width: 204px;
}

a.button:hover .border--right {
    height: 42.5px;
}

a.button:hover .border--left {
    height: 42.5px;
}

a.button:hover .border--top {
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

a.button:hover .border--right {
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s;
}

a.button:hover .border--bottom {
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.2s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.2s;
}

a.button:hover .border--left {
    -webkit-transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.3s;
    transition: all 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.3s;
}

#main_item a.button {
    float: right;
}

a.button.button404 {
    margin: 0 auto 40px;
}


/*
12:その他パーツ
------------------------------------------------------------
*/
#list_breadcrumb {
    font-size: .87em;
    padding: 0 15px;
    color: #076BAF;
    letter-spacing: .05em;
}

#list_breadcrumb a {
    color: #076BAF;
}

#list_breadcrumb a:hover {
    opacity: .5;
}

.alignleft {
    float: left;
    padding: 0 15px 15px 0;
}

.alignright {
    float: right;
    padding: 0 0 15px 15px;
}

.aligncenter {
    display: block;
    margin: 0 auto 20px;
}

.photoL {
    float: left;
    padding: 0 15px 15px 0;
}

.photoL p {
    overflow: auto;
}

.photoR {
    float: right;
    padding: 0 0 15px 15px;
}

.photoR p {
    overflow: auto;
}


/*
13:コンタクトフォーム
------------------------------------------------------------
*/
.contact_box{
    width: 90%;
    padding: 70px 20px;
    max-width: 1000px;
    margin: 0 auto ;
}

.contact_box .txt {
    font-size: 1.2em;
    text-align: center;
    margin: 0 auto 3em;
}

table.contactform {
    max-width: 765px;
    margin: 0 auto ;
    width: 100%;
    margin-bottom: 50px;
    table-layout: fixed;
    box-sizing: border-box;
}
table.contactform tr{
    border-bottom: 1px #231815 solid;
}
table.contactform tr:first-child{
     border-top: 1px #231815 solid;
}
table.contactform th {
    font-size: 1.14em;
    padding: 3% 3%;
    width: 35%;
    font-weight: normal;
    text-align: left;
    box-sizing: border-box;
}

table.contactform td {
    font-size: 1em;
    padding: 3% 3%;
    width: 65%;
    box-sizing: border-box;

}

.required {
    color: red;
    font-size: .78em;
    margin-left: 10px;
}

textarea {
    width: 100%;
    padding: 2% 3%;
  border: none;
    background: #EDEDED;
    margin: 10px 0;
    box-sizing: border-box;
font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
}

input[type="text"],
input[type="email"],
.selectkibou {
    width: 100%;
    padding: 2% 3%;
    border: none;
    background: #EDEDED;
    font-family: 'Noto Sans JP', Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", Arial, sans-serif;
}


input.tel_input {
    width: 28% !important;
}

.submitBox {
    text-align: center;
}

span.red {
    color: #f44d4d;
    font-size: 0.7em;
    margin-left: 5%;
}

input[type="submit"]:hover {
    opacity: .6;
}

input[type="submit"].button_form {
font-size: 1.14em;
    text-align: center;
    line-height: 48.5px;
    color: #fff;
    display: block;
    position: relative;
    border: 1px #076baf solid;
    background: #076baf;
    width: 210px;
    height: 48.5px;
    overflow: hidden;
    margin: 0 auto;
font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
}

input[type="submit"].button_backform {
font-size: 1.14em;
    text-align: center;
    line-height: 48.5px;
    color: #076baf;
    display: block;
    position: relative;
     border: 1px #076baf solid;
    background: #fff;
    width: 210px;
    height: 48.5px;
    overflow: hidden;
    margin: 0 auto;
 font-family: 'YuMincho','游明朝','ヒラギノ明朝 ProN','Hiragino Mincho ProN', 'MS Mincho','ＭＳ 明朝','Noto Serif JP', serif,'Noto Sans JP', serif;
}

.mwform-tel-field {
    color: #231815;
}

.mw_wp_form .error {
    color: #f44d4d !important;
}

#mw_wp_form_mw-wp-form-53 .btn {
    margin-bottom: 3%;
}


ul.contactform li {
    float: left;
}

/*
14:ワードプレス
------------------------------------------------------------
*/
.wp-pagenavi {
    text-align: center;
    float: left;
    display: inline-block;
}

.wp-pagenavi a,
.wp-pagenavi span.extend {
    display: inline-block;
    padding: 5px;
    margin-right: 8px;
    margin-bottom: 5px;
    color: #888;
    font-family: 'Lato', sans-serif;
}

.wp-pagenavi a.last,
.wp-pagenavi a.first {
    width: 60px;
    margin-left: 8px;
    margin-bottom: 5px;
}

.wp-pagenavi span.pages {
    display: inline-block;
    margin-right: 8px;
    margin-bottom: 5px;
    padding: 5px;
    color: #888;
    border: 1px #888 solid;
    font-family: 'Lato', sans-serif;
}

.wp-pagenavi a:hover {
    opacity: .5;
}

.wp-pagenavi span.current {
    color: #231815;
    display: inline-block;
    border-bottom: 1px #231815 solid;
    font-family: 'Lato', sans-serif;
    padding: 5px;
    margin-right: 8px;
    margin-bottom: 5px;
}

/*
15:マージン・パディング
------------------------------------------------------------
*/
.m0 {
    margin-bottom: 0;
}

.m05 {
    margin-bottom: 5px;
}

.m10 {
    margin-bottom: 10px;
}

.m12 {
    margin-bottom: 12px;
}

.m15 {
    margin-bottom: 15px;
}

.m20 {
    margin-bottom: 20px;
}

.m30 {
    margin-bottom: 30px;
}

.m40 {
    margin-bottom: 40px;
}

.m50 {
    margin-bottom: 50px;
}

.m60 {
    margin-bottom: 60px;
}

.mt05 {
    margin-top: 5px;
}

.mt10 {
    margin-top: 10px;
}

.mt12 {
    margin-top: 12px;
}

.mt15 {
    margin-top: 15px;
}

.mt20 {
    margin-top: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mt40 {
    margin-top: 40px;
}

.mt50 {
    margin-top: 50px;
}

.mt60 {
    margin-top: 60px;
}

.ml05 {
    margin-left: 5px;
}

.ml10 {
    margin-left: 10px;
}

.ml12 {
    margin-left: 12px;
}

.ml15 {
    margin-left: 15px;
}

.ml20 {
    margin-left: 20px;
}

.ml30 {
    margin-left: 30px;
}

.ml40 {
    margin-left: 40px;
}

.ml50 {
    margin-left: 50px;
}

.ml60 {
    margin-left: 60px;
}

.mr05 {
    margin-right: 5px;
}

.mr10 {
    margin-right: 10px;
}

.mr15 {
    margin-right: 15px;
}

.mr20 {
    margin-right: 20px;
}

.mr30 {
    margin-right: 30px;
}

.mr40 {
    margin-right: 40px;
}

.mr50 {
    margin-right: 50px;
}

.mr60 {
    margin-right: 60px;
}

.pt05 {
    padding-top: 5px;
}

.pt10 {
    padding-top: 10px;
}

.pt15 {
    padding-top: 15px;
}

.pt20 {
    padding-top: 20px;
}

.pt30 {
    padding-top: 30px;
}

.pt40 {
    padding-top: 40px;
}

.pb05 {
    padding-bottom: 5px;
}

.pb10 {
    padding-bottom: 10px;
}

.pb15 {
    padding-bottom: 15px;
}

.pb20 {
    padding-bottom: 20px;
}

.pb30 {
    padding-bottom: 30px;
}

.pb40 {
    padding-bottom: 40px;
}

.pl05 {
    padding-left: 5px;
}

.pl10 {
    padding-left: 10px;
}

.pl15 {
    padding-left: 15px;
}

.pl20 {
    padding-left: 20px;
}

.pl30 {
    padding-left: 30px;
}

.pl40 {
    padding-left: 40px;
}

.pr05 {
    padding-right: 5px;
}

.pr10 {
    padding-right: 10px;
}

.pr15 {
    padding-right: 15px;
}

.pr20 {
    padding-right: 20px;
}

.pr30 {
    padding-right: 30px;
}

.pr40 {
    padding-right: 40px;
}

.imgTi {
    margin-bottom: 15px;
}

.imgTi0 {
    margin-bottom: 0;
}

.imgTi5 {
    padding-bottom: 5px;
}

.imgTi10 {
    padding-bottom: 10px;
}

.imgTi15 {
    padding-bottom: 15px;
}

.imgTi20 {
    padding-bottom: 20px;
}

.imgTi30 {
    padding-bottom: 30px;
}

/*
16:Pagination
------------------------------------------------------------
*/
.pagination_box {
    margin: 0 auto 50px;
    text-align: center;
    padding: 40px 15px 45px 15px;
}

.list_pagination {
    clear: both;
    width: 100%;
    letter-spacing: -0.5em;
    margin: 0 auto 15px;
    padding: 0px 30px;
    overflow: hidden;
    position: relative;
}

.list_pagination::before {
    content: "";
    position: absolute;
    width: 91%;
    margin: 0 auto;
    height: 1px;
    background: #888;
    right: 0;
    left: 0;
    top: 30px;
}

.list_pagination li {
    position: relative;
    letter-spacing: .05em;
    vertical-align: top;
    align-items: center;
    text-align: left;
    width: 49%;
}

.list_pagination li::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    border-bottom: 2px #888 solid;
    border-left: 2px #888 solid;
    top: 50%;
    transition: .5s;
}

.pagenation_ttl {
    font-size: 1.14em;
    color: #888;
    line-height: 1;
    margin-bottom: 40px;
}

.list_pagination li.prev:first-child .pagenation_ttl {
    text-align: left;
}

.list_pagination li.next:last-child .pagenation_ttl {
    text-align: right;
}

.list_pagination li:hover::before {
    border-bottom: 2px #ccc solid;
    border-left: 2px #ccc solid;
}

.list_pagination li.prev::before {
    left: -20px;
    transform: rotate(45deg);
}

.list_pagination li.next::before {
    right: -20px;
    transform: rotate(-135deg);
}

.list_pagination li a {
    color: #221714;
    display: block;
}

.list_pagination li a:hover {
    opacity: .5;
}

.list_pagination li.prev {
    float: left;
    margin: 0 2% 0 0;
}

.list_pagination li.next {
    float: right;
    margin: 0 0 0 0;
}

.list_pagination li dl dd {
    width: 40%;
    margin: 0 7% 0 0;
}

.list_pagination dl dt {
    width: 53%;
    text-align: left;
}

.list_pagination dl {
    letter-spacing: -.5em;
}

.list_pagination dl dd,
.list_pagination dl dt {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
}

.list_pagination dl dd {
    overflow: hidden;
    position: relative;
    width: 30%;
    margin: 0 7% 0 0;
    height: auto;
}

.list_pagination dl dd::after {
    padding-top: 100%;
    display: block;
    content: "";
}

.list_pagination dl dd img {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0;
}

.list_pagination dl dt .ttl {
    font-size: 1.14em;
    line-height: 1.2;
    margin-bottom: .9em;
}

.list_pagination dl dt .txt {
        line-height: 1.5;
    font-size: .92em;
}


.list_pagination .nopost::before {
    position: inherit;
    border: none;
}

.page_more {
    font-size: 1.14em;
    text-align: center;
    line-height: 1em;
    padding: 0 5px .5em 5px;
    position: relative;
    color: #888;
    display: inline-block;
}

.page_more::before {
    content: "";
    position: absolute;
    width: 0%;
    right: 0;
    left: 0;
    margin: 0 auto;
    height: 1px;
    background: #888;
    bottom: 0;
    transition: .5s;
}

.page_more:hover::before {
    width: 100%;
}