@charset "utf-8";

html {
	font-size: 50%;
}
.sp_none {
	display: none;
}

h1, h2, h3, h4, h5, h6, div, p, pre, a, abbr, address, cite, code, q, dt, dd, li, legend, caption, th, td, embed, figcaption, summary {
	font-size: 1.6rem;
}

.inner, .inner_mini {padding: 0 15px;}
.inner_in {padding: 0 30px; margin: 0 auto;}

.mbl_s {margin-bottom: 20px;}
.mbl_m {margin-bottom: 30px;}
.mbl_l {margin-bottom: 40px;}

.blogtop_wrap_all {
	margin-top: -40px;
}

/*****************************
------------------------------
header
------------------------------
*****************************/
#under .header_logo {
	width: 81px;
}

.mod_header {
	overflow: hidden;
	padding: 16px 15px 17px;
}

#top .logo_block {
	width: auto;
	position: absolute;
	top: 30px;
	right: 15px;
	z-index: 1000;
	transition: opacity 0.5s;
}
#top .logo_block img {
	width: 51px;
}
#top .logo_block.js_logo_move {
	left: auto;
}

/*****************************
------------------------------
nav
------------------------------
*****************************/
.navbtn_def {
	width: 46px;
	height: 46px;
	padding: 12px 11px 11px;
}

.navbtn p:before,
.navbtn p:after {
	height: 4px;
}

.navbtn p:before {
	top: 8px;
}

.navbtn p:after {
	top: 16px;
}

.navbtn span {
	width: 22px;
	height: 4px;
}

.navbtn p {
	width: 22px;
	height: 22px;
}

#under .navbtn {
	top: 7px;
	left: 5px;
}

#under .closebtn {
	top: 7px;
	left: 5px;
}

.closebtn:before,
.closebtn:after {
	top: 21px;
	width: 30px;
	height: 2px;
	left: 8px;
}

.nav_block nav {
	margin-top: 100px;
}
.nav_block {
	width: 100%;
}

.main_menu li a {
	padding: 15px 20px;
}

.main_menu li a:before {
	top: 20px;
	right: 15px;
}

.main_menu li .sub-menu a {
	padding-left: 40px;
}

.main_menu li {
	border-top: 1px solid #fff;
}

.main_menu > li:last-of-type {
	border-bottom: 1px solid #fff;
}

.slick-dots li {
	width: 10px;
	height: 10px;
	display: inline-block;
	cursor: pointer;
}

.slick-dots li:not(:last-of-type) {
	margin-right: 18px;
}

/*****************************
------------------------------
ttl
------------------------------
*****************************/
.ttl_lv02 {
	font-size: 2.3rem;
	margin-bottom: 10px;
}

.ttl_maintxt {
	display: block;
	font-size: 3.3rem;
	margin-bottom: -10px;
	margin-right: 0;
}

.ttl_lv03 {
	line-height: 2;
	margin-bottom: 20px;
}
.s_marker {
	display: inline-block;
	line-height: 1;
}
.ttl_lv03 .ttl_sub {
	display: block;
	margin-left: 0;
}

.ttl_top_lv02 {
	margin-top: 0;
	margin-bottom: 25px;
}


.ttl_line_under {
	margin-bottom: 65px;
}

.ttl_top_lv03:before {
	width: 100%;
}

/*****************************
------------------------------
section
------------------------------
*****************************/
.feature02 .section_in + .section_in .inner {
	margin-top: 40px;
	padding-top: 30px;
}

.feature02 .section_in:last-of-type .inner {
	padding-bottom: 40px;
}

.section_catch {
	margin-bottom: 25px;
}

.feature01 .section_in + .section_in .inner {
	margin-top: 0;
	padding-top: 0;
}

.section_in + .section_in {
	margin-top: 30px;
}

#top .section_in + .section_in {
	margin-top: 45px;
}

/*****************************
------------------------------
mod
------------------------------
*****************************/
.col02 .col_block {
	width: 100%;
}

.col_block p img {
	margin-left: auto;
	margin-right: auto;
}

.col02 .col_block:nth-of-type(2n+1) {
	margin-right: 0;
}
.flex_unique01 .col_block,
.col02 .col_block+.col_block {
	margin-top: 35px;
}

.col02 .col_img+.col_img {
	margin-top: 20px;
}

.flex_unique01 .col_block:nth-of-type(2n+1) {
	width: 100%;
	margin-right: 0;
}
.flex_unique01 .col_block:nth-of-type(2n) {
	width: 100%;
}
.mod_flex_spno.col03_fit .col_block {
	width: 100%;
}
.mod_flex_spno.col03_fit .col_block+.col_block {
	margin-top: 20px;
}

.mod_block_top {
	border-bottom: 1px solid #abaaaa;
	padding-bottom: 40px;
	margin-bottom: 40px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_intro
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.intro_person {
	margin-bottom: 10px;
}
.intro_txt {
	margin-bottom: 40px;
}
.intro_info dl {
	letter-spacing: 0;
}

.intro_info dt {
	display: block;
	letter-spacing: 0;
}

.intro_info dd {
	display: block;
}

.intro_info dd+dt {
	margin-left: 0;
}

.intro_point {
	padding: 10px 10px;
	margin-bottom: 40px;
}

.point_ttl {
	display: block;
	padding-left: 28px;
	background: url(../images/icon_point.png) left top 4px no-repeat;
	background-size: 22px auto;
	margin-bottom: 2px;
}

.feature01 .section_in:not(:last-of-type) {
	margin-bottom: 30px;
	padding-bottom: 40px;
	border-bottom: 1px solid #abaaaa;
}

.section_item+.section_item {
	margin-top: 35px;
}
.mod_imgshow + .mod_menu {
	margin-top: 40px;
}

.mod_menu + .mod_pickup {
	margin-top: 60px;
}

@media screen and (max-width: 320px) {
	.mod_menu .menu_list dt {
		font-size: 1.7rem;
	}
	.mod_menu  .main_list dd {
		font-size: 1.6rem;
	}
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_news
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_news span {
	font-size: 1.4rem;
	display: block;
}

.news_date {
	font-size: 1.4rem;
	display: block;
}

.news_txt {
	font-size: 1.4rem;
	display: block;
}

.news_txt * {
	font-size: 1.4rem;
}

.mod_news li {
	padding: 6px;
}

.mod_flex_spno {
	display: block;
}

.s_stick_bottom {
	position: relative;
	left: auto;
	bottom: auto;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_summary
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.summary_img {
	float: none;
	width: 100%;
	margin-right: 0%;
	margin-bottom: 15px;
}
.summary_detail {
	float: none;
	width: 100%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_easyshow
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_easyshow .easyshow_txt {
	font-size: 1.4rem;
	line-height: 1.7;
}

.easyshow_img {
	margin-bottom: 10px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_imgshow
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.imgshow_block {
	width: 100%;
	float: none;
}

.imgshow_block+.imgshow_block {
	margin-top: 25px;
}

.imgshow_block:not(:nth-of-type(2n)) {
	margin-right: 0;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_pickup
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.ttl_pickup {
	margin-top: -2em;
	margin-bottom: 10px;
}

.ttl_pickup strong {
	padding: 0 20px;
	display: inline-block;
}

.pickup_detail {
	padding: 10px 15px;
	overflow: hidden;
}

.pickup_detail img {
	width: 127px;
	margin-left: 10px;
}
.mod_pickup {
	padding: 5px 10px 10px 10px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_menu
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.menu_term {
	font-size: 1.8rem;
}

.menu_list dt .gothic {
	display: block;
	margin-left: 0;
}

.menu_list {
	padding: 25px 15px 20px;
}

.mod_menu {
	max-width: 100%;
}
.main_list dd {
	-webkit-transform: translateY(50%);
	transform: translateY(50%);
	-webkit-transform: translateY(calc(50% - 3px));
	transform: translateY(calc(50% - 3px));
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_basic
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_basic p+p {
	margin-top: 15px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_under_price
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_under_price {
	padding: 15px;
	margin-bottom: 40px;
}

.ttl_under_price:after {
	width: 20px;
	bottom: -15px;
}

.ttl_under_price {
	font-size: 3rem;
}
.under_price_list {
	margin-right: auto;
	margin-left: auto;
	max-width: 360px;
}

.under_price_list dt {
	font-size: 2.5rem;
	letter-spacing: 1px;
}

.under_price_list dd {
	font-size: 2.5rem;
	letter-spacing: 2px;
}

.under_price_list span {
	font-size: 1.6rem;
}

@media screen and (max-width: 374px) {
.under_price_list dt {
	font-size: 2.5rem;
	letter-spacing: 0;
}

.under_price_list dd {
	font-size: 2.5rem;
	letter-spacing: 0;
}
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_features
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_features {
	max-width: 600px;
	width: 100%;
}
.features_block {
	width: 48%;
}
.features_img {
	width: 90%;
}

.features_block .ttl_feature_num {
	font-size: 2rem;
}

.ttl_features {
	font-size: 1.7rem;
	text-align: center;
}

.ttl_features_sub {
	line-height: 1.6;
}

.data_wrap {
	padding: 0 10px;
}

.data_img {
	margin-bottom: 30px;
}

.data_detail {
	width: 100%;
	float: none;
	margin-bottom: 30px;
	text-align: center;
}
.data_link {
	display: inline-block;
	margin: 15px 0 0!important;
	float: none;
}


#slideBX {
	width: 100%;
}

#slideBX .features_block {
	width: 100%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
gmap
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.data_map {
	width: 100%;
	max-width: 100%;
	float: none;
}

.data_map iframe {
	width: 100%;
	max-width: 100%;
	height: 300px;
}


/*****************************
------------------------------
btn
------------------------------
*****************************/
.btn01 {
	width: 48%;
	max-width: 170px;
	height: 50px;
	font-size: 2.2rem;
	padding: 11px;
}

.btn02 {
	width: 100%;
	height: 40px;
	color: #fff;
	font-size: 2rem;
	background: #000;
	text-align: center;
	padding: 12px;
}

.btn03 {
	width: 48%;
	max-width: 170px;
	height: auto;
	min-height: 50px;
	font-size: 1.5rem;
	padding: 5px 10px;
}

.btn03 .ttl_feature_num {
	font-size: 1.4rem;
}

.feature02 .btn+.btn {
	margin-left: 2%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
voicebox
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.voice_box {
	margin-top: 15px;
}

/*****************************
------------------------------
main_section
------------------------------
*****************************/
.main_section {
	margin-top: 50px;
}
.feature02 .main_section{
	margin-bottom: 35px;
}

/*****************************
------------------------------
news_section
------------------------------
*****************************/
.news_section {
padding-top: 40px;
}

/*****************************
------------------------------
orderitems
------------------------------
*****************************/
.orderitems .ttl_top_lv02 {
margin-top: 0px;
}
.atherorder {
	margin-top:25px!important;
}

/*****************************
------------------------------
easyshow
------------------------------
*****************************/
.easyshow_name {
	font-size: 1.7rem;
	letter-spacing: 0;
}

/*****************************
------------------------------
shopdata
------------------------------
*****************************/
.shopdata.main_block {
padding-top: 20px;
}
/*****************************
------------------------------
style
------------------------------
*****************************/
.s_over_box {
	text-align: center;
	margin-top: 0;
	margin-bottom: -15px;
}

.s_over_box img {
	display: inline-block;
	max-width: 282px;
	width: 40%;
}

/*****************************
------------------------------
top
------------------------------
*****************************/
.main_block {
	padding-top: 40px;
	padding-bottom: 40px;
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
regularshop
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.regularshop {
	margin-top: 30px;
}
.regularshop span:nth-of-type(2n+1) {
	text-align: right;
}
.regularshop span {
	width: 46%;
}
.regularshop span:nth-of-type(2n+1) img {
	display: inline-block;
}

#under main {
	padding-top: 30px;
	border-top: 0;
	margin-top: 60px;
}

.ttl_blogtop_link {
	font-size: 1.7rem;
}

.ttl_blogtop_link:before {
	top: 7px;
}

.article_list li:nth-of-type(2n+1) {
	clear: both;
}

.article_ttl,
.main_area .ttl_blogpage {
	font-size: 2.6rem;
	margin-bottom: 45px;
}

.sub_area .ttl_blogpage {
	line-height: 1.3;
	margin-bottom: 25px;
}

.ttl_blogpage img {
	width: 140px;
    padding: 5px 0;
}

.main_area .ttl_blogpage {
	margin-top: 0;
}

.main_area .ttl_blogpage span {
	padding: 7px 0;
	margin-right: 10px;
	font-size: 3rem;
}

.blog .main_area {
	width: 100%;
	float: none;
	margin-bottom: 50px;
}

.blog .sub_area {
	width: 100%;
	margin-bottom: 50px;
	float: none;
}




/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
article_list
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.article_list li {
	width: 45%;
	margin-right: 10%;
	float: left;
}

.article_list li:nth-of-type(3n) {
	margin-right: 10%;
}

.article_list li:nth-of-type(2n) {
	margin-right: 0;
}

.article_list li:nth-of-type(n+3) {
	margin-top: 25px;
}


.article_list_date {
	margin-top: 5px;
}

.article_list img {
	width: 100%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
staff_box
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.staff_boxwrap {
	overflow: hidden;
}

.staff_box {
	width: 50%;
	float: left;
}

.staff_box span {
	font-size: 1.3rem;
}

.staff_box img {
	width: 60%;
}

.staff_box+.staff_box {
	margin-top: 0;
}

.staff_boxwrap .staff_box:nth-of-type(n+3) {
	margin-top: 20px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
accordion
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.accordion_btn:before {
	top: 12px;
	right: 20px;
	width: 12px;
	height: 12px;
}

.accordion_btn.on:before {
	top: 18px;
}

.accordion_btn {
	padding: 10px;
}

.accordion_list li a {
	padding: 10px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
prev_article,next_article
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.prev_article a,
.next_article a {
	padding: 5px 8px 3px;
	font-size: 1.3rem;
}

.prev_article a {
	padding-left: 25px;
}

.next_article a {
	padding-right: 25px;
}

.prev_article a:before,
.next_article a:before {
	top: 8px;
	width: 9px;
	height: 9px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}

.prev_article a:before {
	left: 10px;
}

.next_article a:before {
	right: 10px;
}

.blogtop_link a {
	padding: 4px 15px 2px;
}

/*****************************
------------------------------
wp-pagenavi
------------------------------
*****************************/
.wp-pagenavi {
	margin-top: 50px;
}
.wp-pagenavi .current,
.wp-pagenavi .page {
	font-size: 1.4rem;
	padding: 0 15px;
	line-height: 3;
}

.wp-pagenavi .smaller + .current:before,
.wp-pagenavi .smaller + .smaller:before,
.wp-pagenavi .larger:before {
	content: '';
	position: absolute;
	left: -2px;
	border-left: 1px solid #000;
	width: 1px;
	height: 10px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	width: 22px;
	height: 22px;
}

.wp-pagenavi .previouspostslink:before,
.wp-pagenavi .nextpostslink:before {
	top: 6px;
	width: 10px;
	height: 10px;
}

.wp-pagenavi .nextpostslink:before {
	left: 3px;
}


.wp-pagenavi .previouspostslink:before {
	right: 3px;
}

.feature02 .ttl_lv02 {
	margin-bottom: 30px;
}
.feature02 .ttl_lv03 {
	margin-bottom: 30px;
}

/*****************************
------------------------------
pagetop
------------------------------
*****************************/
#pagetop {
	width: 40px;
	height: 40px;
	bottom: 15px;
	right: 15px;
}

#pagetop a:before {
	width: 10px;
	height: 10px;
	top: 18px;
}


/*****************************
------------------------------
contact
------------------------------
*****************************/
.contact .inner_big {
	background: url(../images/top_footer_img.jpg) left -170px top no-repeat ;
}

.contact .inner {
	padding-bottom: 70px;
}

.mod_contact {
	margin-top: 0;
	float: none;
	width: 100%;
	padding: 35px 15px 20px;
	background: rgba(255,255,255,0.6);
}
.contact_tel a {
	font-size: inherit;
	text-decoration: none;
}
.contact_form dt {
	width: 120px;
	clear: both;
	font-size: 1.2rem;
	padding-top: 4px;
	font-weight: bold;
}
.contact_form dd {
	width: 100%;
	width: calc(100% - 120px);
}
.contact_form textarea,
.contact_form input:not([type="submit"]) {
	font-size: 2rem;
}
.contact .inner_big {
background: url(../images/top_footer_img_sp.png) left top no-repeat ;
background-size: cover;	}