@charset "UTF-8";

@media screen and (max-width : 768px) {
/* ==================================================
shared
================================================== */
body {
	-webkit-text-size-adjust:none;
	min-width:320px;
    font-size:85.7%;
}
input[type="submit"],
input[type="button"],
input[type="text"],
input[type="password"],
input[type="reset"] {
	-webkit-appearance:none; /* 変更しない */
	-webkit-border-radius:0; /* Webkit */
	-moz-border-radius:0; /* Mozilla */
	border-radius:0; /* CSS3 */
}
img {
	max-width:100%;
	height:auto;
}
#wrapper {
	min-width:320px;
	padding-bottom:30px;
}
.container {
	padding:0 10px;
	max-width:none;
	min-width:320px;
}
/* header
============================== */
header {
	border-bottom:2px solid #000;
	border-top-width:3px;
	padding:15px 0;
	z-index:100;
}
header::before {
	top:-3px;
	width:100px;
	height:3px;
}
#head_logo {
	float:none;
	width:150px;
}
#head_means {
	display:none;
}
/* footer
============================== */
/* foot_main */
#foot_main {
	padding:10px 0 0;
}
#foot_main .foot_ttl {
	margin:0 0 10px;
}
#foot_main .foot_ttl p {
	font-size:71.4%;
}
#foot_main .foot_ttl .flogo {
	width:120px;
	padding-right:10px;
}
#foot_main .foot_cnt .shop {
	float:none;
	display:block;
	width:100%;
	padding-bottom:10px;
}
#foot_main .foot_cnt .shop > div {
	display:block;
	text-align:center;
}
#foot_main .foot_cnt .shop_ttl {
	width:100%;
	padding:6px 0;
}
#foot_main .foot_cnt .shop_ttl br {
	display:none;
}
#foot_main .foot_cnt .shop_ttl p {
	font-size:100%;
}
#foot_main .foot_cnt .shop_ttl span {
	font-size:85.7%;
}
#foot_main .foot_cnt .shop_tel {
	padding:8px 0;
	width:100%;
}
#foot_main .foot_cnt .shop_cnt {
	padding-top:0;
}
#foot_main .foot_cnt .shop_cnt li {
	margin:0 auto 3px;
}
#foot_main .foot_cnt .shop_tel p a {
	text-decoration:none;
	color:#000;
}
/* foot_navi */
#foot_navi .container {
	padding:0;
}
#foot_navi ul li {
	width:50%;
	text-align:left;
}
#foot_navi ul li:nth-child(odd) {
	clear:both;
}
#foot_navi ul li a {
	padding:3px 5px 3px 10px;
	border-bottom:1px solid #ccc;
}
#foot_navi ul li:nth-child(even) a {
	border-right:none;
}
#foot_navi ul li:first-child a {
	border-left:none;
}
#foot_navi ul li span::after {
	width: 5px;
	height: 5px;
	border-bottom: 1px solid #666;
	border-right: 1px solid #666;
}
/* foot_add */
#foot_add {
	padding:10px 0;
}
/* menu
============================== */
nav.globalMenuSp {
    position: fixed;
    z-index: 200;
    top: 0;
    left: 0;
    background: #fff;
    color: #000;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
	box-shadow:none;
}
nav.globalMenuSp .container {
	padding:0;
	background:#FDF8F8;
	border-bottom:3px solid #D71518;
}
.model_sp nav.globalMenuSp {
    transform: translateY(0%);
	position: relative;
	box-shadow: 0 8px 10px -5px rgba(0,0,0,0.5);
}
nav.globalMenuSp ul {
    margin: 0 auto;
	padding:20px 10px;
    width:auto;
}
nav.globalMenuSp ul li {
	float:none;
    width: 100%;
	text-align:left;
    border-bottom: 1px dotted #666;
}
nav.globalMenuSp ul #gnavi01 {
    border-top: 1px dotted #666;
}
nav.globalMenuSp ul li a {
    display: block;
    color: #000;
    padding:10px;
	border-right:none;
}
.globalMenuSp ul #gnavi01 a {
	border-left:none;
}
.globalMenuSp ul li span {
	padding:0 10px 0 0;
}
.globalMenuSp ul li span::after {
	content:"";
	position:absolute;
	bottom:auto;
	left:auto;
	right:0;
	top:50%;
	width: 7px !important;
	height: 7px;
	margin-top:-3px;
	background:#fff;
	border-bottom: 2px solid #666;
	border-right: 2px solid #666;
	transform: rotate(-45deg);
}
.globalMenuSp ul li.active a::after {
	display:none;
}
.navToggle {
    display: block;
    position: absolute;
    right: 13px;
    top: 10px;
    width: 42px;
    height: 44px;
    cursor: pointer;
    z-index: 300;
    background: #000;
    text-align: center;
}
.navToggle span {
    display: block;
    position: absolute;
    width: 20px;
    border-bottom: solid 3px #eee;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 11px;
}
.navToggle span:nth-child(1) {
    top: 9px;
}
.navToggle span:nth-child(2) {
    top: 16px;
}
.navToggle span:nth-child(3) {
    top: 23px;
}
.navToggle span:nth-child(4) {
    border: none;
    color: #eee;
    font-size: 9px;
    font-weight: bold;
    top: 28px;
	left:8px;
}
.navToggle.active span:nth-child(1) {
    top: 14px;
	left:10px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 14px;
 	left:10px;
	-webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* pagetitle
============================== */
#pagetitle_wrap {
	padding:20px 0;
}
#pagetitle_wrap::before {
	top:40px;
	height:100px;
}
#pagetitle .container {
	-webkit-background-size:150px auto !important;
	-moz-background-size:150px auto !important;
	background-size:150px auto !important;
}
#pagetitle h1 {
	height:100px;
	font-size:157%;
	padding-left:30px;
	text-shadow:
		#ffffff 2px 0px,  #ffffff -2px 0px,
		#ffffff 0px -2px, #ffffff 0px 2px,
		#ffffff 2px 2px , #ffffff -2px 2px,
		#ffffff 2px -2px, #ffffff -2px -2px,
		#ffffff 1px 2px,  #ffffff -1px 2px,
		#ffffff 1px -2px, #ffffff -1px -2px,
		#ffffff 2px 1px,  #ffffff -2px 1px,
		#ffffff 2px -1px, #ffffff -2px -1px;
}
#pagetitle h1::before {
	top:50%;
	width:20px;
	height:5px;
	margin-top:-3px;
}
#pagetitle::before {
	top:-20px;
	width:60%;
	height:100px;
	-webkit-background-size:auto 100px !important;
	-moz-background-size:auto 100px !important;
	background-size:auto 100px !important;
	background-position:center top;
}
/* topcontrol
============================== */
#topcontrol,
#topcontrol p {
	width:100%;
	height:30px;
}
#topcontrol span {
	width:100%;
	top:50%;
}
#topcontrol p::before {
	top:50%;
	left:30px;
	margin:-3px 0 0;
}
/* ==================================================
top
================================================== */
/* visual
============================== */
#visual {
	height:270px;
}
#visual::before,
#visual::after {
	width:75px;
	height:30px;
	-webkit-background-size:75px auto;
	-moz-background-size:75px auto;
	background-size:75px auto;
}
#visual .slick-dots {
    bottom:10px;
}
#visual .visual_img {
	height:270px;
}
#visual .catchcopy {
	padding:10px 30px 20px 10px;
	color:#ffffff;
	-webkit-background-size:100% auto;
	-moz-background-size:100% auto;
	background-size:100% auto;
	max-width:100%;
}
#visual .catchcopy p {
	font-size:87.5%;
}
#visual .catchcopy .ttl {
	font-size:112.5%;
}
/* info
============================== */
#info {
	padding:20px;
	display:block;
	margin:0 0 40px;
}
#info::after {
	top:-5px;
	right:-5px;
	left:auto;
	bottom:auto;
	-webkit-background-size:100px auto;
	-moz-background-size:100px auto;
	background-size:100px auto;
	width:100px;
	height:37px;
}
#info_ttl,
#info_cnt {
	display:block;
	width:100%;
	text-align:left;
}
#info_ttl {
	padding-bottom:10px;
	border-bottom:1px dotted #ED1D25;
}
#main #info_ttl h2 {
	font-size:100%;
	-webkit-background-size:20px auto;
	-moz-background-size:20px auto;
	background-size:20px auto;
	padding:5px 0 5px 30px;
	background-position:left center;
}
/* cate
============================== */
#main .cate {
	margin:0 0 50px;
}
#main .cate::before {
	left:30px;
	bottom:0;
	width:100%;
	height:100px;
	border-left:none;
}
#main #cate_life::before {
	left:auto;
	right:30px;
	border-right:none;
}
#main .cate .container {
	padding:0 20px;
}
#main .cate h2 {
	text-align:center;
	font-size:125%;
	padding:0 0 15px;
	margin:0 0 30px;
}
#main .cate h2::after {
	left:50%;
	margin-left:-15px;
	width:30px;
	height:2px;
}
#main .cate_main {
	float:none;
	width:100%;
	padding-top:0;
}
#main .cate_img {
	float:none;
	width:100%;
	padding:0 !important;
	padding-bottom:20px !important;
}
#main .cate_img p::after {
	right:-20px;
	bottom:-20px;
}
#cate_amenity .cate_img p::after {
	width:230px;
	height:65px;
	-webkit-background-size:230px auto;
	-moz-background-size:230px auto;
	background-size:230px auto;
}
#cate_life .cate_img p::after {
	width:215px;
	height:60px;
	right:auto;
	left:-20px;
	-webkit-background-size:215px auto;
	-moz-background-size:215px auto;
	background-size:215px auto;
}
#cate_energy .cate_img p::after {
	width:215px;
	height:55px;
	-webkit-background-size:215px auto;
	-moz-background-size:215px auto;
	background-size:215px auto;
}

/* more_btn
============================== */
#main .more_btn {
	margin:30px auto 40px;
}

/* ==================================================
free
================================================== */
#main h2 {
	padding:5px 10px 5px 40px;
	font-size:143%;
	-webkit-background-size:60px auto;
	-moz-background-size:60px auto;
	background-size:60px auto;
}
#main h3 {
	font-size:130%;
}
/* ==================================================
class
================================================== */
/* col
============================== */
#main .col2,
#main .col4 {
	margin:0;
	padding-bottom:0;
}
#main .col2 .col,
#main .col4 .col {
	width:100%;
	padding:0 0 20px;
}
#main .box_photo {
	margin:0;
}
#main .life_col2L,
#main .life_col2R,
#main .box_photo_img,
#main .box_photo_cnt {
	float:none;
	width:100%;
	margin:0 0 20px;
}
/* box_note
============================== */
#main .box_note_ttl h3 {
	padding:4px 0 4px 30px;
	-webkit-background-size:20px auto;
	-moz-background-size:20px auto;
	background-size:20px auto;
}
.box_note_cnt {
	border-width:5px;
	padding:12px 15px 10px;
}
/* piece_list
============================== */
#main .piece_list li {
	width:49%;
}
#main .piece_list li:nth-child(5n+1) {
	clear:none;
}
#main .piece_list li:nth-child(odd) {
	clear:both;
}
/* ==================================================
list_table
================================================== */
#main .list_table,
#main .list_table thead,
#main .list_table tbody,
#main .list_table tfoot,
#main .list_table tr,
#main .list_table th,
#main .list_table td {
	display:block;
	width:100% !important;
}
#main .list_table th,
#main .list_table td {
	padding:5px 10px;
}
/* ==================================================
mailform
================================================== */
table.mailform,
table.mailform thead,
table.mailform tbody,
table.mailform tfoot,
table.mailform tr,
table.mailform th,
table.mailform td {
	display:block;
	width:100% !important;
}
table.mailform tr th {
	padding:5px 3.5em 5px 10px;
	border-bottom:none;
}
table.mailform tr td {
	padding:0 10px 5px;
}
table.mailform tr th .must {
	position:static;
	margin:0 0 0 1em !important;
}
table.mailform tr td textarea,
table.mailform input[type='text'] {
	width:98% !important;
	padding:2px 4px;
	letter-spacing: normal;
	border-radius: 0 !important;
}
table.mailform input[type='text'].add_post {
	width:6em !important;
}
#main .box_btn {
	margin:0;
}
#main .box_btn p {
	margin: 0;
	display:block;
	float:left;
	width:50%;
	padding:0 5px;
}
#main .box_btn p input {
	min-width:auto;
	padding:10px 5px;
}




}
