@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');
@font-face {
font-family:"AudiTypeNormal";
    src: url("/shared/font/AudiType-ExtendedNormal_08.woff") format("woff");
}
@font-face {
font-family:"AudiTypeBold";
    src: url("/shared/font/AudiType-ExtendedBold_08.woff") format("woff");
}



/* 2-2-6. WebFont */
@font-face{
font-family: 'fontello';
src: url('../../../assets/fonts/fontello.eot?54481897');
src: url('../../../assets/fonts/fontello.eot?54481897#iefix') format('embedded-opentype'),
url('../../../assets/fonts/fontello.woff2?54481897') format('woff2'),
url('../../../assets/fonts/fontello.woff?54481897') format('woff'),
url('../../../assets/fonts/fontello.ttf?54481897') format('truetype'),
url('../../../assets/fonts/fontello.svg?54481897#fontello') format('svg');
font-weight: normal;
font-style: normal;
}
[class^="icon-"]:before, [class*=" icon-"]:before{
font-family: "fontello";
font-style: normal;
font-weight: normal;
speak: none;

display: inline-block;
text-decoration: inherit;
width: 1em;
margin-right: .2em;
text-align: center;
font-variant: normal;
text-transform: none;
line-height: 1em;
margin-left: .2em;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-mail:before { content: '\f0e0'; }
.icon-basket:before{ content: '\e800'; }
.icon-play:before{ content: '\e801'; }
.icon-cancel:before{ content: '\e802'; }
.icon-arrow-right:before{ content: '\e803'; }
.icon-arrow-left:before{ content: '\e804'; }
.icon-arrow-down:before{ content: '\e805'; }
.icon-arrow-up:before{ content: '\e806'; }
.icon-plus:before{ content: '\e807'; }
.icon-minus:before{ content: '\e808'; }
.icon-menu:before{ content: '\e809'; }
.icon-external{
	margin-left: 5px;
}
.icon-external:before{ content: '\f08e'; }
.icon-twitter:before{ content: '\f099'; }
.icon-coffee:before{ content: '\f0f4'; }
.icon-facebook-official:before{ content: '\f230'; }
.icon-menu01:before{
	content: "";
	background: url("../../../assets/images/cmn-icn-menu.png") no-repeat center;
	background-size: auto 20px;
	height: 20px;
	display: block;
}




/* ========================================================
	template.css => テンプレート用CSS
======================================================== */
html,body{
    width: 100%;
    overflow-x: hidden;
}
html {
	font-size: 62.5%;
}
body {
	background-color: #fff;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.6;
	color: #212121;
	font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro","Noto Sans", "Noto Sans CJK JP", "NotoSansCJKjp-Jxck","游ゴシック","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック"
	-webkit-text-size-adjust: 100%;
}
.AudiType {
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
}
.AudiType_b {
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 1.7;
}
a {
	text-decoration: none;
	-webkit-transition: color 0.2s, background-color 0.2s, background-image 0.2s, border 0.2s, opacity 0.2s;
	-o-transition: color 0.2s, background-color 0.2s, background-image 0.2s, border 0.2s, opacity 0.2s;
	transition: color 0.2s, background-color 0.2s, background-image 0.2s, border 0.2s, opacity 0.2s;
	color: #212121;
}
a:hover {

}
a.a_reverse,
.a_reverse a {
	text-decoration: none;
}
a.a_reverse[href]:hover,
.a_reverse a[href]:hover {
	text-decoration: underline;
}
a.deco {
    color: #67b5bf !important;
    text-decoration: underline !important;
}
a.deco:hover {
    text-decoration: none !important;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

label {
	cursor: pointer;
}
input, select, textarea, button {
	margin: 0;
	vertical-align: middle;
	font-family: inherit;
	outline: none;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

button {
	cursor: pointer;
}
iframe {
	vertical-align: middle;
}
@media screen and (max-width: 960px) {
	img {
		max-width: 100%;
		height: auto;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	iframe {
		max-width: 100%;
		height: 200px;
	}
}

@media screen and (max-width: 768px) {
    .mainvisual{margin-top: 35px;}}
    

/* pc / tab / sp
============================================================================================================ */
.pcs,
.tab,
.sp,
.sps{
	display: none !important;
}
@media screen and (max-width: 1000px) {
	.pc {
		display: none !important;
	}
	.tab {
		display: block !important;
	}
	img.tab, span.tab, br.tab, em.tab, strong.tab {
		display: inline !important;
	}
}
@media screen and (max-width: 768px) {
	.sp {
		display: block !important;
	}
	img.sp, spsan.sp, br.sp, em.sp, strong.sp {
		display: inline !important;
	}
}
@media screen and (max-width: 480px) {
	.sps {
		display: block !important;
	}
	img.sps, spsan.sps, br.sps, em.sps, strong.sps {
		display: inline !important;
	}
}

/* sp
============================================================================================================ */
@media screen and (max-width: 768px) {
	*[data-label] img {
		display: none;
	}
	*[data-label]:before {
		content: attr(data-label);
	}
	*[data-label-r]:after {
		content: attr(data-label-r);
	}
}


/* w
============================================================================================================ */
.w {
	position: relative;
	display: block;
	width: 1000px;
	margin: 0 auto;
	padding: 0 10px;
}
.mw {
	min-width: 1000px;
}
.w:after,
.mw:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
@media screen and (max-width: 768px) {
	.w {
		width: auto;
		padding: 0;
	}
	#container.sub .w {
		width: auto;
		padding: 0 10px;
	}
	.mw {
		min-width: 0;
	}
	.pl {
		width: auto;
		padding: 0 10px;
	}
}



/* hv_wh
============================================================================================================ */
a.hv_wh,
button.hv_wh,
a .hv_wh,
.hv_wh a {
	position: relative;
	display: inline-block;
}
a.hv_wh:after,
button.hv_wh:after,
a .hv_wh:after,
.hv_wh a:after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0);
	-webkit-transition: background 0.15s;
	-o-transition: background 0.15s;
	transition: background 0.15s;
	z-index: 3;
}
a.hv_wh:hover:after,
button.hv_wh:hover:after,
a:hover .hv_wh:after,
.hv_wh a:hover:after {
	background-color: rgba(255,255,255,0.3);
}
@media screen and (max-width: 768px) {
	a.hv_wh:after,
	button.hv_wh:after,
	a .hv_wh:after,
	.hv_wh a:after {
		content: none;
	}
}


/* ヘッダー
============================================================================================================ */
#header {
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
	font-size: 14px;
	position: fixed;
	width: 100%;
    /*height: 60px;*/
	z-index: 100;
    background: #e9e1d1;
    color: #333333;
}
#header > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 3vw;
    height: 60px;
}
#header > div > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
#header .logo {
    width: 120px;
    height: auto;
}
#header .logo img {
    width: 100%;
    height: auto;
    vertical-align: top;
}
#header nav ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: 1vw;
}

#header nav ul li:last-child{padding: 19px 10px;
    background: #333;
    margin-left: 10px;}

#header nav ul li a {
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #333333;
    padding: 0 0.8vw;
    text-align: center;
}
#header nav ul li a span {
    display: block;
    font-size: 14px;
    font-weight: normal;
}

#header nav ul li:last-child a span{
    color: #FFF;}
#header nav ul li a:hover {
    color: #67b5bf;
}
#header.shop > div:first-child {
    opacity: 1;
    animation-duration: 0.3s;
    animation-name: fade-in;
    -moz-animation-duration: 0.3s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.3s;
    -webkit-animation-name: fade-in;
    
}
#header.shop.fixed > div:first-child {
    opacity: 0;
    display: none;
}

@keyframes fade-in {
    0% {display: none;opacity: 0;}
    1% {display: block;opacity: 0;}
    100% {display: block;opacity: 1;}
}
@-moz-keyframes  fade-in {
    0% {display: none;opacity: 0;}
    1% {display: block;opacity: 0;}
    100% {display: block;opacity: 1;}
}
@-webkit-keyframes  fade-in {
    0% {display: none;opacity: 0;}
    1% {display: block;opacity: 0;}
    100% {display: block;opacity: 1;}
}

@media screen and (max-width: 1150px) {
    #header > div {
        margin: 0 2vw;
    }
    #header nav ul li a {
        font-size: 15px;
        white-space: nowrap;
    } 
    #header nav ul li a span {
        font-size: 1.1rem;
    }
}

@media screen and (max-width: 1000px) {
	#header {
		height: 50px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
	}
    #header > div {
        margin: 0 110px 0 3vw;
        height: 50px;
        
    }
    #header .logo {
    max-width: 110px;
    width: 100%;
    height: auto;
    }
    #header .logo img {
        vertical-align: middle;
    }
    #header nav ul {
        margin-left: 0;
        display: block;
    }
    #header nav ul li a {
        display: block;
        font-size: 20px;
        padding: 0.4em 2em;
        height: auto;
        position: relative;
        color: #fff;
        text-align: center;
    }
    #header nav ul li a span {
        font-size: 13px;
        color: #B3B3B3;
    }
    #header.shop > div:first-child {
        opacity: 1;
        animation-name: none;
        -moz-animation-name: none;
        -webkit-animation-name: none;

    }
    #header.shop.fixed > div:first-child {
        opacity: 1;
        display: flex;
    }
}
/* shop_navi
------------------------------------------------------------- */
#header.shop > div.shop_navi {
    background: #67b5bf;
    margin: 0;
    padding: 0 3vw;
}
#header.shop > div.shop_navi ul {
    margin-right: -webkit-calc(27px + 2vw);
	margin-right: calc(27px + 2vw);
}
#header.shop > div.shop_navi ul a:hover {
    color: #333333;
}
#header.shop .shop_navi_shopname {
    font-size: 22px;
    font-family:"AudiTypeBold", 'Noto Sans JP', sans-serif;
}
#header.shop .shop_navi_shopname a {
    color: #fff;
}
#header.shop .navi_tab {
    display: none;
}
@media screen and (max-width: 1000px) {
    #header.shop > div {
        width: 100%;
    }
    #header.shop > div.shop_navi {
        display: none;
    }
    #header.shop .navi_tab {
        display: block;
    }
    #header.shop .navi_title {
        font-size: 20px;
        text-align: center;
        color: #fff;
        position: relative;
        margin-top: 2em;
        font-family:"AudiTypeBold", 'Noto Sans JP', sans-serif;
    }
    #header.shop nav ul li a {
        font-weight: normal;
        font-size: 19px;
    }
    #header.shop nav p.navi_title:before,
    #header.shop nav p.navi_title[aria-selected="false"]:after,
    #header.shop nav p.navi_title[aria-selected="true"]:after{
        background:#fff;
        position:absolute;
        display:flex;
        align-items:center;
        margin:auto;
        content: "";
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    #header.shop nav p.navi_title:before{
        top:0;
        bottom:0;
        right:15px;
        width:20px;
        height:2px;
    }
    #header.shop p.navi_title[aria-selected="false"]:after{
        top:0;
        bottom:0;
        right:24px;
        width:2px;
        height:20px;
    }
    #header.shop p.navi_title[aria-selected="true"]:after{
        top:0;
        bottom:0;
        right:24px;
        width:2px;
        height:20px;
        -webkit-transform: translateY(0) rotate(90deg);
		-ms-transform: translateY(0) rotate(90deg);
		transform: translateY(0) rotate(90deg);
    }
}

/* nav ハンバーガー
------------------------------------------------------------- */
#header nav {
}
#header .nav_btn {
	display: none;
}
@media screen and (max-width: 1000px) {
	#header nav {
		position: fixed;
		overflow: hidden;
        height: 100%;
		/*height: -webkit-calc(100% - 60px);
		height: calc(100% - 60px);
		top: 60px;*/
        top: 0;
		right: 0;
		width: 0;
		pointer-events: none;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	#header nav > div {
		height: 100%;
		/*overflow-y: scroll;*/
		-webkit-overflow-scrolling: touch;
	}
	#header nav > div > div {
        height: -webkit-calc(100% - 50px);
        height: calc(100% - 50px);
		overflow-y: auto;
		background: rgba(0,0,0,0.80);
		pointer-events: auto;
        margin-top: 50px;
	}

	#header .nav_btn {
		display: block;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 10;
	}
	#header .nav_btn a {
		position: relative;
		display: block;
		width: 60px;
		height: 50px;
		z-index: 2;
	}
	#header .nav_btn:before,
	#header .nav_btn a:before,
	#header .nav_btn a:after {
		content: "";
		position: absolute;
		left: 15px;
		right: 15px;
		top: 50%;
		height: 2px;
		margin-top: -1px;
		background-color: #333;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
    #header .nav_btn:before {
        left: 25px;
		right: 15px;
    }
	#header .nav_btn a:before {
		-webkit-transform: translateY(-12px);
		-ms-transform: translateY(-12px);
		-o-transform: translateY(-12px);
		transform: translateY(-12px);
	}
	#header .nav_btn a:after {
		-webkit-transform: translateY(12px);
		-ms-transform: translateY(12px);
		-o-transform: translateY(12px);
		transform: translateY(12px);
	}
	/* open */
	#header.open nav {
		opacity: 1;
		visibility: visible;
		width: 100%;
	}
	#header.open .nav_btn:before {
		opacity: 0;
	}
    #header.open .nav_btn a:before,
	#header.open .nav_btn a:after {
        background-color: #333;
    }
	#header.open .nav_btn a:before {
		-webkit-transform: translateY(0) rotate(45deg);
		-ms-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#header.open .nav_btn a:after {
		-webkit-transform: translateY(0) rotate(-45deg);
		-ms-transform: translateY(0) rotate(-45deg);
		transform: translateY(0) rotate(-45deg);
	}
}
@media screen and (max-width: 768px) {
	#header nav > div > div {
        height: -webkit-calc(100% - 110px);
        height: calc(100% - 110px);
		overflow-y: auto;
		background: rgba(0,0,0,0.80);
		pointer-events: auto;
        margin-top: 50px;
	}
}

/* dropdown
------------------------------------------------------------- */
#header .search {
    cursor: pointer;
    display: block;
}
#header .search p {
    height: 100%;
    padding: 0 1vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
#header .search p img {
    width: 27px;
    height: 27px;
}
#header .dropdown-item {
    display: none;
    position: absolute; 
    right:0 ;
    border-radius: 0; 
    background: #333333;
    border:none;
    margin:0;
    top: 100%;
    z-index: 1000;
    padding: 20px;
}
#header .dropdown-item input {
    padding: 0.5em;
    border: none;
    border-radius: 0;
    outline: none;
    background: #fff;
}
#header .dropdown-item button img {
    width: 25px;
    height: 25px;
    margin-left: 10px;
}
@media screen and (max-width: 1000px) {
    #header .search {
        position: absolute;
        right: 60px;
        top: 0;
        height: 50px;
    }
    #header .search p {
        padding: 0 2vw;
    }
}
@media screen and (max-width: 768px) {
    #header .dropdown-item {
        position: fixed;
        right: 0;
        top: 50px;
    }
}





/* footer
============================================================================================================ */
/*2-1-1.  Wrap     [wrp-***]*/
.wrp-container{
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 20px;
}
.wrp-container--sm{
	max-width: 1000px;
}
/* 2-3. State [is-***]
-------------------------------------------------- */
.is-error{
	background-color: #f9eceb;
}
.is-disabled{
	opacity: 0.3;
}
.is-visiblePc{
	display: block!important;
}
.is-visiblePc--inline{
	display: inline-block!important;
}
.is-visibleTablet{
	display: none!important;
}
.is-visibleSp{
	display: none!important;
}
@media only screen and (min-width:768px) and (max-width:1119px){
	.is-visibleTablet{
		display: block!important;
	}
}/* endMedia */
@media only screen and (min-width:1px) and (max-width:767px){
	.is-visiblePc{
		display: none!important;
	}
	.is-visiblePc--inline{
		display: none!important;
	}
	.is-visibleTablet{
		display: none!important;
	}
	.is-visibleSp{
		display: block!important;
	}
}/* endMedia */
/* 1-4. #l-footer
-------------------------------------------------- */
#l-footer{
	position: relative;
	margin-top: 75px;
}
.l-footer__inner{
	background-color: #f5f3f2;
	padding: 50px 0 30px;
}
.l-footer__content{
	margin-bottom: 65px;
}
.l-footer__logo{
	float: left;
	padding: 5px 10px;
}
.l-footer__logo img{
	width: 252px;
}
.l-footer__link{
	float: right;
}
.l-footer__link__detail > li{
	display: inline-block;
	padding: 0 57px;
}
.l-footer__link__content a{
	color: #000;
	font-size: 15px;
	display: block;
	margin-bottom: 5px;
}
.l-footer__social{
	border-top: 2px solid #ddd;
}
.l-footer__social__button{
	float: right;
	width: 27.7%;
	text-align: center;
	border-left: 2px solid #ddd;
	box-sizing: border-box;
}
.l-footer__social__button2{
	text-align: center;
	border-left: 2px solid #ddd;
	box-sizing: border-box;
	width: 100%;
}
.l-footer__social__button a{
	color: #000;
	display: block;
	padding: 15px 15px 5px;
	font-size: 15px;
}
.l-footer__social__button a:hover{
	text-decoration: none;
}
.l-footer__social__button a .icon{
	font-size: 24px;
	padding-right: 10px;
	vertical-align: middle;
}
.l-footer__social__detail{
	float: left;
	width: 72.3%;
	display: table;
}
.l-footer__social__detail li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
.l-footer__social__detail li a{
	color: #595757;
	font-size: 14px;
	display: block;
	padding: 15px 15px 5px;
}
.l-footer__social__detail li a:hover{
	text-decoration: none;
}
.l-footer__social__detail li a .icon{
	font-size: 24px;
	padding-right: 10px;
	vertical-align: middle;
}
.l-footer__social__detail .l-footer__social__button2 a{
	padding: 15px 15px 5px 10px;
}
.l-footer__link__sub li{
	display: block;
	position: relative;
}
.l-footer__link__sub li:before{
	content: "-";
	display: inline-block;
	padding-right: 5px;
}
.l-footer__link__sub li a{
	font-size: 13px;
	display: inline-block;
}
.l-footer__link__more{
	margin-top: 30px;
}
.l-footer__more{
	background-color: #000;
	color: #fff;
}
.l-footer__more__link{
	float: left;
	padding: 24px 0;
	font-size: 0;
}
.l-footer__more__link li{
	display: inline-block;
	border-left: 1px solid #fff;
}
.l-footer__more__link li:first-child{
	border-left: 0;
}
.l-footer__more__link li a{
	color: #fff;
	font-size: 12px;
	display: block;
	line-height: 1;
	padding: 0 25px;
}
.l-footer__more__link li:first-child a{
	padding: 0 25px 0 0;
}
.txt-copyright{
	float: right;
	padding: 20px 0;
	font-size: 12px;
}
.l-footer__pagetop{
	position: absolute;
	top: -30px;
	right: 20px;
	z-index: 5;
	transition: all .6s;
	background-color: #fff;
}
.l-footer__pagetop.is-show{
	opacity: 1;
}
.l-footer__pagetop.is-fixed{
	position: fixed;
	right: 20px;
	bottom: 20px;
	top: auto;
}
.l-footer__pagetop a{
	width: 60px;
	height: 60px;
	border: 1px solid #ddd;
	display: table;
	box-sizing: border-box;
	text-align: center;
	color: #000;
}
.l-footer__pagetop a span{
	display: table-cell;
	vertical-align: middle;
	font-size: 30px;
}
@media only screen and (min-width: 1000px) and (max-width: 1170px){
	.l-footer__link__detail > li{
		padding: 0 25px;
	}
}
@media only screen and (min-width: 768px) and (max-width: 999px){
	.l-footer__link__detail > li{
		padding: 0 5px;
	}
	.l-footer__link__content a{
		font-size: 12px;
	}
	.l-footer__social__detail li a{
		padding: 15px 10px;
	}
	.l-footer__more__link li a{
		padding: 0 15px;
	}
	.l-footer__more__link li:first-child a{
		padding: 0 15px 0 0;
	}
	.l-footer__social__detail li{
		line-height: 1;
	}
	.l-footer__social__detail li > a{
		font-size: 12px;
	}
}
@media only screen and (min-width: 1px) and (max-width: 767px){
	#l-footer{
		margin-top: 40px;
	}
	.l-footer__inner{
		padding: 15px 0 13px;
	}
	.l-footer__pagetop a{
		width: 35px;
		height: 35px;
	}
	.l-footer__pagetop a span{
		font-size: 16px;
	}
	.l-footer__content{
		margin-bottom: 22px;
	}
	.l-footer__logo{
		float: none;
		text-align: center;
	}
	.l-footer__logo img{
		width: 150px;
	}
	.l-footer__link{
		float: none;
		display: none;
	}
	.l-footer__social{
		border-top: 0;
	}
	.l-footer__social__button{
		float: none;
		width: 100%;
		border-left: 0;
	}
	.l-footer__social__button2{
		border-left: none;
	}
	.l-footer__social__button a{
		border: 1px solid #ddd;
		padding: 7px 20px;
		font-size: 12px;
	}
	.l-footer__social__button a .icon{
		font-size: 16px;
		padding-right: 5px;
	}
	.l-footer__social__button.__president{
		text-align: center;
	}
	.l-footer__social__button.__president a{
		padding: 18px 20px;
		border-bottom: 1px solid #ddd;
		border-top: none;
		border-right: none;
		border-left: none;
		font-size: 9px;
		color: #595757;
	}
	.l-footer__social__button.__president i{
		font-size: 9px;
		color: #595757;
	}
	.l-footer__social__detail{
		width: 100%;
		float: none;
		margin: 16px 0 0;
		font-size: 0;
	}
	.l-footer__social__detail li{
		padding: 0 6px;
		text-align: center;
	}
	.l-footer__social__detail li a{
		font-size: 9px;
		padding: 0;
	}
	.l-footer__social__detail li a .icon{
		font-size: 10px;
		padding-right: 5px;
	}
	.l-footer__more__link{
		float: none;
		text-align: center;
		padding: 13px 0 5px;
	}
	.l-footer__more__link li a{
		font-size: 9px;
		padding: 0 10px;
	}
	.l-footer__more__link li:first-child a{
		padding: 0 5px 0 0;
	}
	.l-footer__more__link li:last-child a{
		padding: 0 0 0 10px;
	}
	.txt-copyright{
		font-size: 8px;
		text-align: center;
		float: none;
		padding: 0 0 10px;
	}
	.l-footer__pagetop{
		top: -15px;
	}
	.l-footer__pagetop.is-fixed{
		right: 10px;
		bottom: 10px;
	}
}
/* page_top
------------------------------------------------------------- */
.page_top {
    position: absolute;
    right: 3vw;
    top: 5em;
    width: 16px;
    height: auto;
}
.page_top img {
    width: 100%;
    height: auto;
}
.page_top a:hover {
    opacity: 0.8;
}
@media screen and (max-width: 768px) {
    .page_top {
        position: absolute;
        right: 4vw;
        top: 2.5em;
        width: 14px;
    }
}

/* ===================================================================================================================

	コンテンツ

=================================================================================================================== */

/* topic_path
============================================================================================================ */
.topic_path{
	font-size: 12px;
	font-size: 12px;
	padding: 10px 0 10px 0;
	position: relative;
	z-index: 1;
}
.topic_path ul{
    max-width:1100px;
    margin: 0 auto;
}
.shoptop + .topic_path ul{
    max-width: 98%;
    margin: 0 auto;
}

.topic_path li a {
    text-decoration: none!important;
}
.topic_path li{
	display: inline-block;
}
.topic_path li a:after{
	content:">";
	margin-left: 5px;
    color: #333;
}
@media screen and (max-width: 1000px) {
    .topic_path ul{
        width: 100%;
        padding: 0 3vw;
    } 
}
@media screen and (max-width: 768px) {
    .topic_path{
        padding-bottom: 0;
    }
    .topic_path li{
        display: inline;
    }
}

/* コンテナ
============================================================================================================ */
#container {
	position: relative;
	font-size: 14px;
	display: block;
    letter-spacing: 0.05rem;
        margin-top: 0;
}
#container a:hover {
	opacity: 0.8;
}
.contents_w1000 {
    width: 1100px;
    margin-left: auto;
    margin-right: auto;
}
.contents_w760 {
    width: 760px;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 1000px) {
   .contents_w1000 {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0 3vw;
    } 
}
@media screen and (max-width: 800px) {
    .contents_w760 {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0 3vw;
    }
}
@media screen and (max-width: 768px) {
	#container {
		font-size: 13px;
	}
   .contents_w1000 {
        padding: 0 5%;
    }
    .contents_w760 {
        padding: 0 5%;
    }
    
}



/* ===================================================================================================================

	モジュール

=================================================================================================================== */

/* section
============================================================================================================ */
.section + .section,
.section-border + .section,
.section_s + .section {
	margin-top: 40px;
}
@media screen and (max-width: 768px) {
	.section + .section {
		margin-top: 30px;
	}
}

/* padding
============================================================================================================ */
.pd_l {
	padding-top: 80px;
	padding-bottom: 80px;
}
.pd_m {
	padding-top: 50px;
	padding-bottom: 50px;
}
.pd_s {
	padding-top: 30px;
	padding-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.pd_l {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.pd_m {
		padding-top: 35px;
		padding-bottom: 35px;
	}
	.pd_s {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}
/* margin
============================================================================================================ */
.mgt_l {
	margin-top: 80px;
}
.mgt_m {
	margin-top: 50px;
}
.mgt_s {
	margin-top: 30px;
}
@media screen and (max-width: 768px) {
    .mgt_l {
        margin-top: 60px;
    }
    .mgt_m {
        margin-top: 35px;
    }
    .mgt_s {
        margin-top: 20px;
    }
}
/* btn
============================================================================================================ */
.btn,
.next.page-numbers{
    display: inline-block;
    /*width: 280px;*/
    min-width: 280px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #B5B5B6;
    padding: 0.75em 1.6em 0.75em 1em;
    border-radius: 3rem;
	-webkit-border-radius: 3rem;
	-moz-border-radius: 3rem;
    position: relative;
    font-family: 'AudiTypeNormal', 'Noto Sans JP', sans-serif;
}
.btn_line {
    display: inline-block;
    /*width: 280px;*/
    min-width: 280px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    border: 1px solid #fff;
    padding: 0.75em 1.6em 0.75em 1em;
    border-radius: 3rem;
	-webkit-border-radius: 3rem;
	-moz-border-radius: 3rem;
    position: relative;
}
.btn.back {
    color: #666;
}
.btn:after,
.btn_line:after,
.next.page-numbers:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    margin-top: -2px;
    right: 1em;
    width: 5px;
    height: 5px;
    border-top: 2px solid #67b5bf;
    border-right: 2px solid #67b5bf;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.btn.back:after{
    left: 1em !important;
    border-top: 2px solid #444;
    border-right: 2px solid #444;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.btn:hover,
.next.page-numbers:hover {
    opacity: 1 !important;
    border: 1px solid #67b5bf;
    background: #67b5bf;
    color: #fff;
}
.btn:hover:after,
.next.page-numbers:hover:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.btn_line:hover {
    opacity: 1 !important;
    border: 1px solid #fff;
    background: #fff;
    color: #000;
}
.btn_line:hover:after {
    border-top: 2px solid #67b5bf;
    border-right: 2px solid #67b5bf;
}
.btn.btn_2lines {
    line-height: 1.4;
    padding: 0.4em 1.6em 0.4em 1em;
}
.btn_area {
    display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.btn_area .btn {
    margin: 0 10px;
}
@media screen and (max-width: 768px) {
    .btn,.btn_line,.next.page-numbers {
        border: 1px solid #67b5bf;
        background: #67b5bf;
        color: #fff;
    }
    .btn.back {
        color: #666;
        background: none;
        border: 1px solid #B5B5B6;
    }
    .btn:after,
    .btn_line:after,
    .next.page-numbers:after {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .btn_area {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .btn_area .btn {
        margin: 10px 0;
    }
}


/*pager
--------------------------------------------------------*/
.next.page-numbers{
    width: auto;
    margin: 0px auto;
}

.next.page-numbers::before{
    position: static;
    top: auto;
    right: auto;
    width: auto;
    height: auto;
    background-image: none;
    background-size: 0%;
    content: "";
}

.pagination h2.screen-reader-text {
    display: none;
}
.pagination {
    position: relative;
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
    clear: both;
}
.pagination a {
    padding: 1px 8px;
    display: inline-block;
    color: #fff;
    text-decoration: none;
    background-color: #B4B4B4;
    margin: 0px 5px;
}
.pagination .nav-links > * + * {
    margin-left: 10px;
}
.pagination span {
    padding: 1px 8px;
    display: inline-block;
}
.pagination span.current, .pagination a:hover {
    color: #fff;
    background: #181818;
}
.next, .prev {
    background: none!important;
}
.next {
    color: #333!important;
}
.prev img {
    transform: rotate(-180deg)
}
.next.page-numbers {
    width: auto;
    min-width: auto;
    font-weight: normal;
    border: none;
    padding: 1px 8px;
    text-decoration: none;
}

.prev.page-numbers:after {
    content: "";
    display: inline-block;
    top: 50%;
    margin-top: -2px;
    right: 1em;
    width: 5px;
    height: 5px;
    border-bottom: 2px solid #181818;
    border-left: 2px solid #181818;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.next.page-numbers:hover:after {
    border-top: 2px solid #181818;
    border-right: 2px solid #181818;
}
.next.page-numbers:hover {
    border: none;
}
.next.page-numbers:after {
    border-top: 2px solid #181818;
    border-right: 2px solid #181818;
}
}
@media screen and (max-width: 680px) {
.pagination {
    position: relative;
    overflow: hidden;
    margin-top: 40px;
    margin-bottom: 30px;
    text-align: center;
    clear: both;
}
}

/* title
============================================================================================================ */
.title_l {
	font-size: 40px;
	text-align: center;
    letter-spacing: 0;
	font-weight: normal;
    /*font-family: bigcity-grotesque-pro, sans-serif;*/
    font-family:bigcity-grotesque-pro, Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro","Noto Sans", "Noto Sans CJK JP", "NotoSansCJKjp-Jxck","游ゴシック","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック";
    margin-bottom: 1em;
    text-transform: lowercase;   /* 全体を小文字にリセット */
    line-height: 4rem;
}
.title_l::first-letter {
  text-transform: capitalize;  /* 先頭文字だけ大文字化 */
}
#container.top .title_l {
    text-transform: none;
}
#container.top .title_l::first-letter {
  text-transform: none;
}
.title_l span {
    text-align: center;
    display: block;
    font-size: 18px;
    letter-spacing: 1px;
    margin-bottom: 20px;
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
    text-transform: none;
    padding-top: 10px;
    letter-spacing: .1vw;
}
.title_l_bg {
	font-size: 40px;
	font-size: 4.0rem;
	text-align: center;
    letter-spacing: 0;
	font-weight: normal;
    font-family: 'AudiTypeBold', 'Noto Sans JP', sans-serif;
    color: #fff;
    background: #333;
    padding: 1em 0;
}
.title_m {
    font-weight: normal;
	font-size: 18px;
	letter-spacing: 1px;
    text-align: center;
    margin-bottom: 20px;
}
.title_s {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 1px solid #67b5bf;
    margin-bottom: 1em;
    padding-bottom: 0.3em;
    font-family: 'AudiTypeBold', 'Noto Sans JP', sans-serif;
}
.title_s.title_s_gray {
    border-bottom: 1px solid #CCCCCC;
}
.title_ss {
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
    font-size: 18px;
    /*font-weight: bold;*/
    border-bottom: 1px solid #67b5bf;
    margin-bottom: 15px;
        padding-bottom: 10px;
}
.title_between_line {
    font-size: 2.8rem;
    font-weight: bold;
    margin-bottom: 1em;
    padding-bottom: 0.3em;
    font-family: 'AudiTypeBold', 'Noto Sans JP', sans-serif;
}
.title_between_line span {
    display: block;
    font-size: 20px;
    position: relative;
    padding-top: 0.3em;
}
.title_between_line span:before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1px;
    background: #CCC;
    position: absolute;
    top: 0;
}
.lead {
    font-size: 17px;
    font-family: 'AudiTypeNormal', 'Noto Sans JP', sans-serif;
    font-weight: normal;
    text-align: center;
}

@media screen and (max-width: 768px) {
	.title_l {
		font-size: 3.0rem;
        padding-right: 3%;
        padding-left: 3%;
	}
    .title_l span {
        font-size: 15px;
        padding-top: 0;
    }
    .title_l_bg {
        font-size: 28px;
    }
	.title_m {
		font-size: 15px;
        margin-bottom: 1.75em;
	}
    .title_between_line {
        font-size: 20px;
    }
    .title_between_line span {
        font-size: 16px;
    }
    .lead {
        font-size: 15px;
        text-align: left;
        padding: 0 1em;
    }
}


/* table
============================================================================================================ */
table.basic {
	width: 100%;
	border: 1px solid #d9d9d9;
	line-height: 1.6;
	table-layout: fixed;
}
table.basic th,
table.basic td {
	padding: 0.6em 1em;
	border: 1px solid #d9d9d9;
	word-wrap:break-word;
}
table.basic th {
	background:#f2f2f2;
}
table.basic.th_center th {
	text-align: center;
	font-weight: bold;
}
table.basic.td_cetner td {
	text-align: center;
}
table.basic.td_right td {
	text-align: right;
}

table.border_none td,
table.border_none th{
	padding-bottom: 20px;
}

table.form {
	width: 100%;
	border: 1px solid #212121;
	line-height: 1.6;
	table-layout: fixed;
}
table.form th,
table.form td {
	padding: 0.6em 1em;
	border-bottom: 1px dashed #212121;
	word-wrap:break-word;
}
table.form tr:nth-child(odd) td {
	background:#efefef;
}
table.form th {
	background:#efefef;
	border-right: 1px solid #212121;
}

table.basic.border_c th,
table.basic.border_c td{
	border: 1px solid #231815 !important;
}
table.form input[type=text],
table.form input[type=tel],
table.form select,
table.form textarea {
	max-width: 100%;
	padding: .4em;
	border: 1px solid #aaaaaa;
	font-size: 14px;
}
table.form input.size01 {
	width: 80%;
}
table.form input.size02 {
	width: 150px;
}
table.form input.size03 {
	width: 320px;
}
table.form input.size04 {
	width: 85px;
}
table.form textarea.size01 {
	width: 100%;
	height: 160px;
}
table .w10 {width: 10%;}
table .w15 {width: 15%;}
table .w20 {width: 20%;}
table .w25 {width: 25%;}
table .w30 {width: 30%;}
table .w35 {width: 35%;}
table .w40 {width: 40%;}
table .w45 {width: 45%;}
table .w50 {width: 50%;}

@media screen and (max-width: 768px) {
	table.basic {
		border-width: 2px;
		font-size: 12px;
		line-height: 1.5;
	}
	table.basic th,
	table.basic td {
		padding: 0.5em;
	}
	table.basic th {
		width: 10%;
	}
	table.basic td {
		width: 20%;
	}

	table.form th,
	table.form td {
		display: block;
		border-right: none;
		padding: 10px;
	}
	table.form td {
		background: none !important;
	}


}


/* link
============================================================================================================ */
/*a.blank {
	padding: 3px 26px 3px 0;
	background: url(../images/parts/ico_blank.png) 100% no-repeat;
}
a.pdf {
	padding: 3px 22px 3px 0;
	background: url(../images/parts/ico_pdf.png) 100% no-repeat;
}

@media screen and (max-width: 768px) {
	a.blank {
		background-image: url(../images/parts/ico_blank_sp.png);
		-webkit-background-size: 16px;
		background-size: 16px;
	}
	a.pdf {
		background-image: url(../images/parts/ico_pdf_sp.png);
		-webkit-background-size: 16px;
		background-size: 16px;
	}
}*/



/* li
============================================================================================================ */
/* square
------------------------------------------------------------- */
ul.square li {
	position: relative;
	padding-left: 1em;
}
ul.square li:before {
	content: "■";
	position: absolute;
	left: 0;
}

/* circle
------------------------------------------------------------- */
ul.circle li {
	position: relative;
	padding-left: 1em;
}
ul.circle li:before {
	content: "●";
	position: absolute;
	left: 0;
}

/* asterisk
------------------------------------------------------------- */
ul.asterisk li {
	position: relative;
	padding-left: 1em;
	margin-bottom: 5px;
}
ul.asterisk li:before {
	content: "＊";
	position: absolute;
	left: 0;
}


/* disc
------------------------------------------------------------- */
ul.disc li {
	position: relative;
	padding-left: 1em;
}
ul.disc li:before {
	content: "・";
	position: absolute;
	left: 0;
}

/* notes
------------------------------------------------------------- */
ul.notes li {
	position: relative;
	padding-left: 1em;
}
ul.notes li:before {
	content: "※";
	position: absolute;
	left: 0;
}

/* decimal
------------------------------------------------------------- */
ol.decimal {
	list-style-type: decimal;
}
ol.decimal li {
	margin-left: 2em;
}

/* parentheses
------------------------------------------------------------- */
ol.parentheses li {
	position: relative;
	padding-left: 2em;
}
ol.parentheses li .num {
	position: absolute;
	left: 0;
}

/* img
============================================================================================================ */
.ofi {
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

/* img.radius
============================================================================================================ */
img.radius {
	border-radius: 50%;
}

/* border_box
============================================================================================================ */
.border_box {
	border: 1px solid #BCBCBC;
	padding: 3% 5%;
	box-sizing: border-box;
}


/* border_radius
============================================================================================================ */
.border_radius {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

/* flex
============================================================================================================ */
.d_flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.align_items_center {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.align_items_end {
	-webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.justify_content_center {
	-webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.justify_content_s_between {
	-webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.flex_wrap {
	-webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

/* sidenavi
============================================================================================================ */
.side_navi {
   display: block;
   position: fixed;
   bottom: 0;
   height: 60px;
   width: 100%;
   z-index: 10;
   box-shadow: 0 -1px 5px rgba(0,0,0,0.30);
}
.side_navi ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
}
.side_navi ul li {
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    background: #67b5bf;
    /*max-width: 33.3%;
    max-width: 50%;
    min-width: 33.3%;*/
    width: 100%;
    height: 60px;
    display: block;
    text-align: center;
    box-shadow: 3px 0 5px rgba(0,0,0,0.20);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.side_navi ul li:first-child {
    z-index: 3;
}
.side_navi ul li:nth-child(2) {
    z-index: 2;
}
.side_navi ul li:nth-child(3) {
    z-index: 1;
}
.side_navi ul li a {
    color: #fff;
    font-size: 12px;
    padding-top: 8px;
    display: block;
    width: 100%;
    height: 60px;
    position: relative;
}
.side_navi ul li a:before {
    content:"";
    display: block;
    margin: auto;
    background-size: 30px 30px;  
    position: relative;
    width: 30px;
    height: 30px;
}
.side_navi ul li.contact a:before {
    background: url("../images/icon_contact.svg") no-repeat center top;
}
.side_navi ul li.test_drive a:before {
    background: url("../images/icon_test_drive.svg") no-repeat center top;
}
.side_navi ul li.car_inspection a:before {
    background: url("../images/icon_car_inspection.svg") no-repeat center top;
}

@media screen and (min-width: 769px) {
    .side_navi {
        display: block;
        position: fixed;
        top: 13vw;
        right: 0;
        width: 50px;
        height: auto;
        box-shadow: none;
    }
    .side_navi ul {
        display: block;
        box-shadow: 0 -1px 5px rgba(0,0,0,0.30);
    }
    .side_navi ul li {
        max-width: 50px;
        min-width: 50px;
        height: 50px;
    }
    .side_navi ul li a {
        height: 50px;
        padding-top: 0;
    }
    .side_navi ul li a:before {
        content:"";
        display: block;
        margin: auto;
        background-size: 30px 30px;  
        position: relative;
        width: 30px;
        height: 30px;
        top: 50%;
        margin-top: -15px;
    }
    .side_navi ul li a span {
        opacity: 0;
        position: absolute;
        top: 0;
        right: 50px;
        width: 9em;
        height: 50px;
        background: rgba(0,0,0,0.75);
        color: #fff;
        font-size: 14px;
        line-height: 50px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all  0.3s ease;
    }
    .side_navi ul li + li a span {
        border-top: 1px solid rgba(255,255,255,0.50);
    }
    .side_navi:hover li a span {
        opacity: 1;
    }
}

/* readmore
============================================================================================================ */
a.readmore{
    display: block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    padding-bottom: 3em;
    position: relative;
    /*height: 100%;*/
}
a.readmore:hover {
    opacity: 1 !important;
    -webkit-box-shadow: 2px 2px 7px rgba(51,51,51,0.2);
	-moz-box-shadow: 2px 2px 7px rgba(51,51,51,0.2);
	-ms-box-shadow: 2px 2px 7px rgba(51,51,51,0.2);
	box-shadow: 2px 2px 7px rgba(51,51,51,0.2);
}
a.readmore:after {
    opacity: 0;
    content: "もっと見る";
    font-family: Helvetica, dnp-shuei-gothic-gin-std, Arial, "Hiragino Kaku Gothic Pro", "Noto Sans", "Noto Sans CJK JP", NotoSansCJKjp-Jxck, 游ゴシック, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック";
    background: #ee8081;
    color: #fff;
    display: inline-block;
    position: absolute;
    width: 9em;
    bottom: 0;
    padding: 0.2em 0;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
a.readmore:hover:after {
    opacity: 1; 
}

/* author_box
============================================================================================================ */
.author_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1em;
    margin-bottom: 1em;
    width: 100%;
}
.author_box .photo_icon {
    width: 50px;
    height: 50px;
}
.author_box .photo_icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
    border: 1px solid #67b5bf;
}
.author_box > div {
    width: -webkit-calc(100% - 50px);
    width: calc(100% - 50px);
}
.author_box > div p {
    padding-left: 1em;
    padding-top: 0.1em;
    padding-bottom: 0.1em;
}
.author_box > div p:first-child {
    border-bottom: 1px solid #67b5bf;
}

/* contens_main 
============================================================================================================ */
.contens_main,
.no_mainvisual {
    position: relative;
    padding-top: 45px;

}
.contens_main.shoptop {
    position: relative;
    padding-top: 120px;
}
.contens_main.shop {
    position: relative;
    padding-top: 125px;
}
.contens_main > div.over_text {
    position: absolute;
    margin-top: 5vw;
    margin-left: 6vw;
}
.contens_main .title {
    color: #fff;
    font-family:"AudiTypeBold", 'Noto Sans JP', sans-serif;
    font-size: 5.0rem;
    padding-top: 66px;
}
.contens_main.shop .title{ 
  text-transform: lowercase;   /* 全体を小文字にリセット */
}
.contens_main.shop .title::first-letter {
  text-transform: capitalize;  /* 先頭文字だけ大文字化 */
}
.contens_main .title span {
    font-size: 2.6rem;
    margin-left: 1em;
    text-transform: none; 
}
.contens_main .title:after {
    content: "";
    display: block;
    background: url("../images/logomark_w.svg") no-repeat;
    background-size: cover;
    width: 160px;
    height: 56px;
    position: absolute;
    top: 0;
}
.contens_main .mainvisual {
    height: 25vw;
    max-height: 400px;
}
.contens_main .mainvisual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media screen and (max-width: 1000px) {
    .contens_main,
    .no_mainvisual {
        padding-top: 53px;
    }
    .contens_main.shoptop {
        padding-top: 50px;
    }
    .contens_main.shop {
        padding-top: 53px;
    }
}
@media screen and (max-width: 768px) {
    .contens_main > div.over_text {
        margin-top: 10vw;
        margin-left: 5vw;
        margin-right: 3vw;
    }
    .contens_main .title {
        font-size: 2.8rem;
        padding-top: 30px;
    }
    .contens_main .title span {
        font-size: 14px;
        display: inline-block;
    }
    .contens_main .title:after {
        width: 90px;
        height: 31px;
    }
    .contens_main .mainvisual {
        height: 51vw;
        max-height: 51vw;
    }
}
/* mainvisual_slide 
============================================================================================================ */
.mainvisual_slide {
max-width:100%;
    margin-top: 65px;
}

/*slider
----------------------------------------------------*/
.mainvisual_slide .slider img{
width:100%;
}
/*矢印位置*/
/*.slick-prev:after {
    right: -5vw!important;
}
.slick-next:after {
    right: 5vw!important;
}*/

.mainvisual_slide .slick-prev,.mainvisual_slide .slick-next{
    width: 60px !important;
    height: 60px !important;
 /*   border: solid red 1px;*/

}

.mainvisual_slide .slick-prev {
    left: 4vw !important;
    z-index: 10;
}
.mainvisual_slide .slick-next {
    right: 5vw !important;
    z-index: 10;
}

.slick-prev:after, .slick-next:after{
        right:1vw!important;
}

@media screen and (max-width: 768px) {
    .mainvisual_slide {
margin-top:50px;
}
    .mainvisual_slide .slick-prev, .mainvisual_slide .slick-next {
    top: 40%;
}
    .mainvisual_slide .slick-prev {
    left: -15px !important;
}
    .mainvisual_slide .slick-next {
    right:10px !important;
}
}

/* col2 col3 
============================================================================================================ */
.col2,
.col3,
.col4{
    display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
}
.col2 > li,
.col2 > div {
    width: 48%;
    margin-bottom: 2rem;
}
.col3 > li,
.col3 > div {
    width: 31.5%;
    margin-bottom: 2rem;
}
.col4 > li,
.col4 > div,
.col4 > ul{
    width: 23.7%;
    margin-bottom: 2rem;
}
.col3:after{
  content:"";
  display: block;
  width: 31.5%;
}
.col4:before{
  content: "";
  display: block;
  width: 23.7%;
  order: 1;
}
.col4:after{
  content: "";
  display: block;
  width: 23.7%;
}
@media screen and (max-width: 768px) {
    .col2 > li,
    .col2 > div {
        width: 100%;
    }
    .col3 > li,
    .col3 > div {
        width: 100%;
    }
    .col4 > li,
    .col4 > div {
        width: 48%;
    }
    .col3:after{
      content:none;
    }
    .col4:before{
      content:none;
    }
    .col4:after{
      content:none;
    }
}

#page-navi ul li {
    display: none;
}
#page-navi ul li:last-child {
    display: block;
    text-align: center;
}

/*ブログ sns
========================================================--*/
@media screen and (min-width: 681px) {
    .sns{
        display: flex;
    display: -ms-flexbox; /* IE10 */
justify-content: flex-end;
        align-items: center;
        margin:3em auto;
    }
    .sns > p + p{
        margin-left:1.5em;
    }
    .sns_midasi{
        position: relative;
        background: #fff;
        border-radius: 5px;
        padding: 5px 15px;
    }
        .sns_midasi:after{
        position: absolute;
            content: "";
    border: 5px solid transparent;
    border-left: 9px solid #fff;
    top: 50%;
    right:0;
    -webkit-transform: translate(100%, -50%);
    -moz-transform: translate(100%, -50%);
    -ms-transform: translate(100%, -50%);
    -o-transform: translate(100%, -50%);
    transform: translate(100%, -50%);
    }
}


@media screen and (max-width: 680px) {
    .sns {
    display: flex;
    display: -ms-flexbox;
    justify-content: flex-end;
    align-items: center;
    margin: 3em 0;
}
    .sns > p + p{
        margin-left:1em;
    }
    .sns_midasi{
        position: relative;
        background: #fff;
        border-radius: 5px;
        padding: 5px 15px;
    }
        .sns_midasi:after{
        position: absolute;
            content: "";
    border: 5px solid transparent;
    border-left: 9px solid #fff;
    top: 50%;
    right:0;
    -webkit-transform: translate(100%, -50%);
    -moz-transform: translate(100%, -50%);
    -ms-transform: translate(100%, -50%);
    -o-transform: translate(100%, -50%);
    transform: translate(100%, -50%);
    }

}