@charset "UTF-8";
/* CSS Document */

@media screen and (max-width: 655px) {
/* スマートフォン用のスタイル記述 */

img, object, embed {
	max-width: 100%;
	height: auto;
}
img {
	-ms-interpolation-mode: bicubic;
}
#menu {
	background-color: #254892;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #fff;
	display: none;
	width: 100%;
}
#menu.open_menu {
	display:block;
}
#menu ul {
	width:100%;
	overflow:hidden;
	font-size: 70%;
}
#menu ul li {
	width:50%;
	height:50px;
	float:left;
	text-align:center;
}
#menu ul li a {
	height:50px;
	line-height:50px;
	color:#fff;
	float:left;
}
#menu ul li.nav01 a, #menu ul li.nav01c a {
	width:100%;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav02 a, #menu ul li.nav02c a {
	width:100%;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav03 a, #menu ul li.nav03c a {
	width:100%;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav04 a, #menu ul li.nav04c a {
	width:100%;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav05 a, #menu ul li.nav05c a {
	width:100%;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav06 a, #menu ul li.nav06c a {
	width:100%;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav07 a, #menu ul li.nav07c a {
	width:100%;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav08 a, #menu ul li.nav08c a {
	width:100%;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav09 a, #menu ul li.nav09c a {
	width:100%;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#menu ul li.nav01c a, #menu ul li.nav02c a, #menu ul li.nav03c a, #menu ul li.nav04c a, #menu ul li.nav05c a, #menu ul li.nav06c a, #menu ul li.nav07c a {
	background-color:#254892;
}
#phone-head {
	padding: 5px 3px;
	background-color: #254892;
}
.phone-nav {
	padding: 10px 0px;
	float: right;
	display: block;
}
.phone-logo {
	float: left;
	display: block;
	padding-top: 10px;
	width: 70%;
}
#wrapper {
	width:100%;
	font-size:16px;
	line-height: 180%;
	min-width:320px;
}

#header {
	display: none;
}
#header_inner {
	display: none;
}
#header h1 {
	display: none;
}
.logo {
	display: none;
}
.pc {
	display: none;
}
.phone {
	display: block;
}
.header_nav {
	display: none;
}
.header_nav li a {
	display: none;
}
.header_nav li a {
	display: none;
}


#main {
	width: 100%;
	background:none;
}
#main_bg {
	display:none;
}
.phone_main {
	width: 100%;
	height: 100%;
	display:block;
}
	
.top-catch{
	margin-top: 0px;
}
	
#contents-max {
	width: 98%;
	margin: 0px auto;
	overflow:hidden;
}
#contents {
	width: 100%;
	margin:0;
	overflow:hidden;
}

.left500 {
	width: 100%;
	height: auto;
}
.right460 {
	width: 100%;
	height: auto;
}


.left55 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.left40 {
	float: none;
	width: 96%;
	margin: 0 auto;
}


.right45 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.right55 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.left35 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.right60 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.right65 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.left23 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.left30 {
	float: none;
	width: 96%;
	margin: 0 auto;
}


.right75 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.left48 {
	float: none;
	width: 96%;
	margin: 0 auto;
}
.right48 {
	float: none;
	width: 96%;
	margin: 0 auto;
}

.frame01 {
	width: 90%;
	padding: 5%;
	background-color: #f7f7f7;
	border-top: 4px solid #ff4507;
	border-bottom: 2px solid #cecccc;
	margin: 0 auto;
}

.frame01 h4 {
	font-size: 130%;
	color: #ff4507;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: 16px;
}
.frame01 h4:before {
    background-color: #ff4507; /* 線色 */
    border-radius: 5px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 20px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 10px; /* 線幅 */
}

.frame01-all {
	padding: 5% 10px;
	background-color: #f7f7f7;
	border-top: 4px solid #ff4507;
	border-bottom: 2px solid #cecccc;
}
.frame01-all h3 {
	margin-left: 20px;
}

.frame01-all h4 {
	font-size: 130%;
	color: #ff4507;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: 16px;
}
.frame01-all h4:before {
    background-color: #ff4507; /* 線色 */
    border-radius: 5px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 20px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 10px; /* 線幅 */
}

.frame02 {
	padding: 20px 30px;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background-color: #fff;
	margin: 0 5px 25px 5px;
}

.frame02 p {
	margin-left: 0px !important;
	margin-bottom: 0px !important;
}

.frame03 {
	width: 90%;
	padding: 20px 5%;
	border: 3px solid #ff4507;
	border-radius: 10px;
	background-color: #f6f6f6;
	margin: 0 auto 35px auto;
}

.frame03 h3 {
	font-size: 130%;
	color: #333 !important;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: 16px;
}
.frame03 h3:before {
    background-color: #ff4507; /* 線色 */
    border-radius: 5px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 20px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 10px; /* 線幅 */
}
.frame03 h4 {
	padding: 5px 20px;
	background-color: #e3e3e3;
	font-size: 120%;
	font-weight: bold;
	margin-bottom: 20px;
}
.frame03 p {
	margin-left: 0px !important;
	margin-bottom: 20px !important;
}

#specarea {
	padding-left: 10px;
	margin: 0 5px;
}

#specarea h5 {
	font-size: 120%;
	padding: 8px 25px;
	color: #333 !important;
	line-height: 1.2;
	background-color: #e3e3e3;
	}
	
.special li {
	color: #ff4507;
	list-style: disc;
	font-size: 110%;
	margin-left: 15px;
}
/* ===================================================================
sp-top
=================================================================== */

#top-image {
	width:100%;
	height: auto;
	min-height: 120px;
	margin-bottom: 30px;
	background: url('../images/top-image-bk.png') no-repeat center top;
	-webkit-background-size:cover;
	-o-background-size:cover;
	background-size:cover;
	text-align: center;
	overflow: hidden;
	padding: 10px 0;
}
.top-mainimg {
	width: 96%;
	max-width: 1059px;
	height: auto;
	max-height: 368px;
	margin: 0 2%;
}

.top-contact {
	width: 80%;
	max-width: 495px;
	height: auto;
	margin: 10px auto 30px auto;
}
	
#top-contents {
	width: 98%;
	max-width: auto;
	margin: 0px 1%;
	padding-top: 20px;
}

.top-detail-btn01 {
	margin-left: 0;
	margin-top: 20px;
	text-align: right;
}
#top-contents-left01 {
	width: 100%;
	min-height: 320px;
	float: none;
	padding-top: 10px;
	padding-bottom: 40px;
	padding-right: 0;
}

#top-contents-left01 h2 {
	width: 60%;
}

#top-contents-right01 {
	width: 100%;
	float: none;
	padding-bottom: 40px;
}
#top-contents-right01 h3 {
	text-align: left;
}
#top-contents-left02 {
	width: 100%;
	min-height: 320px;
	float: none;
	padding-top: 10px;
	padding-bottom: 40px;
	padding-right: 0;
}

#top-contents-right02 {
	width: 100%;
	float: none;
	padding-bottom: 40px;
}
#top-contents-left03 {
	width: 100%;
	float: none;
	padding-top: 0px;
	padding-bottom: 10px!important;
	padding-right: 0;
}

#top-contents-right03 {
	width: 100%;
	float: none;
	padding-bottom: 40px;
	text-align: center!important;
}
	
	
.cer-list{
	display: block;
}
.cer-list li {
	width: 80%;
	margin: 0 auto 20px;
}
	
	
.catch01{
	font-size: 140%!important;
}
.catch02{
	width: 85%;
	margin-left: 0px auto!important;
	font-size: 140%!important;
	height: auto;
}
.catch03{
	font-size: 140%!important;
}
.contact-txt{
	font-size: 120%!important;
	color: #fc0000;
	text-align: center!important;
	padding-top: 0px;
	padding-right: 0px;
}


#top-news {
	width: 100%;
	margin-bottom: 30px;
}

#top-sonix-list {
	margin-top: 70px;
	max-width: 400px;
}

#top-sonix-list li {
	width: 30%;
	float: left;
	margin-left: 3%;
	text-align: center;
}

.works-list li p {
	font-size: 70%;
}
.service-list li p {
	line-height: 1.4;
}

#slider {width:100%; height:100%; min-height: 180px; overflow:hidden; position:relative;}
#slider h2 {
	position:absolute;
		width: 20%;
		height: auto;
		top: 10px;
		left: 0;
		right: 0;
		margin: auto;
	z-index: 10;
}
.slide-wrap {width:300%; height:auto; position:absolute; left:50%; margin-left:-150%;}

/* コントローラー */
.bx-controls {
position:absolute;
width:100%;
z-index:100;
top:0;
left:50%;
margin-left:-50%;
}

.bx-controls-direction {
max-width:100%; min-width:100%;
top:0;
position:absolute;
}

.bx-controls-direction a {
position:absolute;
width:100%;
height:auto;
display:block;
background-color:rgba(255,255,255,0.7);
z-index:9999;
}

a.bx-prev {left:-100%; text-align:right;}
a.bx-next {right:-100%; text-align:left;}


#top-category-list li {
	float: left;
	width: 320px;
	height: 167px;
	background: url(../images/top-category-bk.png) no-repeat right center;
	position: relative;
}
#top-category-list li.li01 {
	margin-right: 0;
}

.top-category-left {
	width: 128px;
	margin-top: 10px;
	margin-left: 5px;
	float: left;
}

.top-category-right {
	width: 160px;
	margin-top: 20px;
	margin-right: 20px;
	float: right;
}

.top-category-right h3 {
	font-size: 110%;
	font-weight: bold;
}

.top-category-right h3.letter-space {
	letter-spacing: 0.5em;
}
.top-category-right p {
	font-size: 85%;
	line-height: 1.4;
}

.top-category-right .detail-btn {
	width: 82px;
	position: absolute;
	right: 20px;
	bottom: 8px;
}

#news-list {
	margin-left: 0px;
	margin-right: 0px;
}

#news-list dt {
	float: none;
	width: 100px;
	padding-left: 30px;
	background: url(../images/arrow-org.png) no-repeat left 5px;
	font-size: 90%;
	color: #666;
	clear: both;
}
#news-list dd {
	padding-left: 30px;
	padding-bottom: 15px;
	background: url(../images/line-dot.gif) repeat-x left bottom;
	margin-bottom: 20px;
}

#top-banner {
	width: 100%;
	padding-bottom: 40px;
}
#top-banner li {
	float: none;
	margin-right: 0;
	text-align: center;
}
#top-banner li.last {
	float: none;
}


#contents-title {
	height: 100px;
	width: 100%;
	background: url(../images/category-ttl-bk.png)  no-repeat center top;
	background-size: auto 100%;
	margin-bottom: 35px;
	margin-top: 0px;
}

#contents-title h1 {
	margin-left: 0px;
	font-size: 180%;
	padding-top: 30px;
	padding-bottom: 30px;
}


#top-main {
	width: 100%;
	height: auto;
}

#top-main h2 {
	width: 100%;
	height: auto;
}

#top-main h2 img {
	width: 100%;
}

#top-mainbtn {
	width: 100%;
}

#top-mainbtn li {
	float: left;
	width: 80%;
	margin-left: 10%;
}

#top-mainbtn li img {
	width: 100%;
}

#content_left {
	width: 100%;
	float:none;
}

#content_left p {
	margin-bottom: 25px;
	padding-left: 3%;
}

/* ===================================================================
SONIX
=================================================================== */

#sonix01 {
	padding-top: 0px;
	background-size: auto;
	background: url(../images/sonix-mainimg.png) no-repeat center 70px;
}

#sonix01 h1 {
	margin-bottom: 550px;
}

#sonix01 h2 {
	margin-bottom: 20px;
}

#sonix01 iframe {
	padding-left: 0px;
	margin-bottom: 25px;
}

#sonix01 ul.point {
	width: 100%;
	display: table;
	border-collapse: separate;  /* セルの間隔を空ける */
	border-spacing: 15px 0;  /* 左右 上下で記述 */
	margin-bottom: 20px;
}

#sonix01 ul.point li {
	display: table-cell;
	width: 15%;
	min-height: 65px;
	text-align: center;
	vertical-align:middle;
	padding: 10px 3px;
	color: #fff;
	background-color: #008add;
	border-radius: 10px;
	font-size: 110%;
	line-height: 1.4;
}

#sonix01 ul.apeal li {
	font-size: 110%;
	margin-bottom: 10px;
}

#sonix-subttl {
	padding-top: 80px;
	padding-left: 0px;
	background: url(../images/sonix-logo-s.png) no-repeat left top;
	margin-bottom: 23px;
}

#sonix-subttl h2 {
	padding: 8px 0px 5px 15px;
	color: #ff3b21;
	background-color: #f9f9f9;
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
	border-radius: 0px 30px 30px 0px;
}

.table-box2 {
	width: 90%;
	display: block;
	margin: 0 auto 20px auto;
}

.table-box2 li {
	width: 100%;
	display: block;
	min-height: 65px;
	vertical-align:top;
	background-color: #fcfcfc;
	border: 1px solid #d6d6d6;
	border-radius: 10px;
	margin-bottom: 20px;
}

.table-box2 li h3 {
	padding: 8px;
	text-align: center;
	color: #fff !important;
	background-color: #0072b7;
	border-radius: 10px 10px 0px 0px;
	font-weight: normal !important;
}

.table-box2 li p {
	padding: 0px 10px 0px 10px;
}

.voice-box {
	padding-top: 200px;
	padding-left: 10px;
	min-height: 210px;
	width: 90%;
	margin: 0 auto;
}

.voice-box h3 {
	color: #333 !important;
	background: url(../images/line-dot.png) repeat-x left bottom;
}
.voice-box p {
	margin-left: 0px !important;
}
.voice01 {
	background: url(../images/sonix-voiceimg01.png) no-repeat center top;
}
.voice02 {
	background: url(../images/sonix-voiceimg02.png) no-repeat center top;
}
.voice03 {
	background: url(../images/sonix-voiceimg03.png) no-repeat center top;
}


/* ===================================================================
GAIT
=================================================================== */

#gait01 {
	padding-top: 0px;
	background-size: auto;
	background: url(../images/gait-mainimg.png) no-repeat center 180px;
}

#gait01 h1 {
	margin-bottom: 420px;
}

#gait01 h2 {
	margin-bottom: 20px;
}

.gait-point250 {
	width: 90%;
	border-left: 1px solid #cecece;
	border-right: 1px solid #cecece;
	border-top: 1px solid #cecece;
	margin: 0 auto 30px auto;
}

.gait-point250 h3 {
	padding: 6px 5%;
	color: #fff !important;
	background-color: #ff3b21;
	margin-bottom: 0px !important;
}

.gait-point250 li {
	padding: 4px 5%;
	border-bottom: 1px solid  #cecece;
	background-color: #fff;
}
.gait-point250 li h4 {
	color: #333 !important;
	padding-left: none;
	font-size: 130%;
	font-weight: bold;
	margin-bottom: 0px;
}
.gait-point250 li p {
	margin-left: 0px !important;
	margin-bottom: 5px !important;
}
#gait-subttl {
	padding-top: 80px;
	padding-left: 0px;
	background: url(../images/gait-logo-s.png) no-repeat left top;
	margin-bottom: 23px;
}

#gait-subttl h2 {
	padding: 8px 0px 5px 15px;
	color: #ff3b21;
	background-color: #f9f9f9;
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
	border-radius: 0px 30px 30px 0px;
	margin-bottom: 30px;
}
	
.gait-point250-2 {
	border-left: 1px solid #cecece;
	border-right: 1px solid #cecece;
	border-top: 1px solid #cecece;
	margin-bottom: 30px;
}

.gait-point250-2 h3 {
	padding: 6px 5%;
	color: #fff !important;
	background-color: #ff3b21;
	margin-bottom: 0px !important;
}

.gait-point250-2 li {
	padding: 4px 5%;
	border-bottom: 1px solid  #cecece;
	background-color: #fff;
}
.gait-point250-2 li h4 {
	color: #333 !important;
	background-color: none !important;
	padding-left: none;
	font-size: 130%;
	font-weight: bold;
	margin-bottom: 0px;
}
.gait-point250-2 li p {
	margin-left: 0px !important;
	margin-bottom: 5px !important;
}

#gait03 {
	padding-left: 10px;
}

#gait03 h4 {
	font-size: 150%;
	color: #333 !important;
	line-height: 1.2;
	margin-bottom: 16px;
	padding-bottom: 10px;
	background: url(../images/line-dot.png) repeat-x left bottom;
	}
	
#gait03 h4:before {
    background-color: #ff4507; /* 線色 */
    border-radius: 5px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 20px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 10px; /* 線幅 */
}

/* ===================================================================
TRUEFEET
=================================================================== */

#true01 {
	padding-top: 0px;
	background-size: auto;
	background: url(../images/true01-mainimg.png) no-repeat center 180px;
}

#true01 h1 {
	margin-bottom: 390px;
}

#true01-txtarea {
	width: 100%;
}

#true01-txtarea h2 {
	color: #ff3b21 !important;
	font-size: 150%;
	margin-bottom: 10px;
	margin-left: 0px !important;
}
#true01-txtarea p {
	font-size: 115%;
	margin-left: 0px !important;
}

#true01 ul.point01 {
	margin: 0 auto;
	display: block;
	width: 90%;
	margin: 0 auto 40px auto;
}

#true01 ul.point01 li {
	width: 90%;
	display: block;
	min-height: 65px;
	vertical-align:top;
	padding: 10px 5%;
	background-color: #fff;
	border-radius: 10px;
	font-size: 110%;
	line-height: 1.4;
	border: 1px solid #e6e6e6;
	margin-bottom: 10px;
}
#true01 ul.point01 li h4 {
	font-size: 110% !important;
}
#true01 ul.point01 li p {
	margin-left: 0px !important;
	margin-bottom: 10px !important;
}

#true01 ul.point02 {
	width: 90%;
	margin: 0 auto;
	display: block;
	border-collapse: separate;  /* セルの間隔を空ける */
	border-spacing: 10px 0;  /* 左右 上下で記述 */
	margin-bottom: 10px;
}

#true01 ul.point02 li {
	width: 90%;
	display: block;
	min-height: 65px;
	vertical-align:top;
	padding: 20px 5% 10px 5%;
	background-color: #fff;
	border-radius: 10px;
	font-size: 110%;
	line-height: 1.4;
	border: 1px solid #e6e6e6;
	margin-bottom: 10px;
}
#true01 ul.point02 li h4 {
	font-size: 110% !important;
}
#true01 ul.point02 li p {
	margin-left: 0px !important;
	margin-bottom: 10px !important;
	min-height: 70px;
	padding-left: 80px;
}
#true01 ul.point02 li p.true-soes {
	background: url(../images/true01-icon01.png) no-repeat left top;
}
#true01 ul.point02 li p.true-labo {
	background: url(../images/true01-icon02.png) no-repeat left top;
}
#true01 ul.point02 li p.true-sports {
	background: url(../images/true01-icon03.png) no-repeat left top;
}
#true01 ul.point02 li p.true-medical {
	background: url(../images/true01-icon04.png) no-repeat left top;
}

.true-illust {
	text-align: center;
	padding: 0 20px 20px 20px;
}
.true-catch {
	font-size: 220% !important;
	text-align: center;
}
#true-subttl {
	padding-top: 80px;
	padding-left: 0px;
	background: url(../images/true-logo-s.png) no-repeat left top;
	margin-bottom: 23px;
}

#true-subttl h2 {
	padding: 8px 0px 5px 15px;
	color: #ff3b21;
	background-color: #f9f9f9;
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
	border-radius: 0px 30px 30px 0px;
	margin-bottom: 30px;
}

.true02-imgarea {
	text-align: center;
	background-color: #fff;
	border: 1px solid #d4d4d4;
	padding: 8px;
}
.true02-imgarea h3 {
	background-color: #ff3b21;
	font-weight: normal !important;
	padding: 5px 0;
	color: #fff !important;
	padding-left: 0px !important;
	font-size: 110% !important;
	margin-bottom: 5px !important;
}
.true02-imgarea h3:before {
    margin-right: 0; /* 線右の余白 */
    width: 0; /* 線幅 */
}
.true02-imgarea p {
	margin-left: 0px !important;
	margin-bottom: 5px !important;
}
.true02-imgarea p strong {
	color: #333 !important;
}

/* ===================================================================
StimUp
=================================================================== */

#stim01 {
	padding-top: 0px;
	background-size: auto;
	background: url(../images/stim01-mainimg.png) no-repeat center 180px;
}

#stim01 h1 {
	margin-bottom: 480px;
}

#stim01-txtarea {
	width: 90%;
	margin: 0 auto;
}

#stim01-txtarea h2 {
	color: #ff3b21 !important;
	font-size: 170%;
	margin-bottom: 10px;
	margin-left: 0px !important;
}
#stim01-txtarea p {
	font-size: 115%;
	margin-left: 0px !important;
}


#stim01 ul.point02 {
	width: 90%;
	margin: 0 auto;
	display: block;
	border-collapse: separate;  /* セルの間隔を空ける */
	border-spacing: 20px 0;  /* 左右 上下で記述 */
	margin-bottom: 30px;
}

#stim01 ul.point02 li {
	width: 90%;
	display: block;
	min-height: 65px;
	vertical-align:top;
	padding: 20px 5% 10px 5%;
	background-color: #fff;
	border-radius: 10px;
	font-size: 110%;
	line-height: 1.4;
	border: 1px solid #e6e6e6;
	maring-bottom: 10px;
}
#stim01 ul.point02 li h4 {
	font-size: 110% !important;
}
#stim01 ul.point02 li p {
	margin-left: 0px !important;
	margin-bottom: 10px !important;
}
#stim01 .frame02 {
	margin: 0 20px;
}
#stim01 .frame02 h4 {
	margin-bottom: 20px;
}
.h4-comment {
	font-size: 75%;
	color: #333;
	font-weight: normal;
	margin-left: 20px;
}

#stim-subttl {
	padding-top: 80px;
	padding-left: 0px;
	background: url(../images/stim-logo-s.png) no-repeat left top;
	margin-bottom: 23px;
}

#stim-subttl h2 {
	padding: 8px 0px 5px 15px;
	color: #ff3b21;
	background-color: #f9f9f9;
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
	border-radius: 0px 30px 30px 0px;
	margin-bottom: 30px;
}
#stim-place li {
	width: 30%;
	float: left;
	margin: 10px;
}

/* ===================================================================
ULTRA SHIELD
=================================================================== */
#ultra01 {
	width: 100%;
	background: url(../images/ultra-bk.png) no-repeat right 10px;
	background-size: 100% auto;
}
#ultra-ttlarea {
	width: 100%;
	padding-left: 0%;
	margin: 0 auto;
}
#ultra-ttlarea h1 {
	font-size: 110%;
	width: 100%;
	float: left;
	padding-left: 20px;
}
#ultra-ttlarea h2 {
	width: 95%;
	padding-top: 20px;
}
#ultra-ttlarea h3 {
	width: 95%;
	padding-left: 0%;
	margin: 0 auto;
}
#ultra-ttlarea2 {
	width: 80%;
	padding-right: 2%;
	float: right;
}
#ultra02 h2 {
	width: 50%;
}
.ultra02-text {
	margin-right: 0%;
	font-size: 120%;
	padding-left: 20px;
}
.ultra02-img {
	width: 50%;
	float: none;
	margin: 0 auto;
}


#ultra01 ul.point01 {
	margin: 0 auto;
	display: block;
	width: 90%;
	margin: 0 auto 40px auto;
}

#ultra01 ul.point01 li {
	width: 90%;
	display: block;
	min-height: 65px;
	vertical-align:top;
	padding: 10px 5%;
	background-color: #fff;
	border-radius: 10px;
	font-size: 110%;
	line-height: 1.4;
	border: 1px solid #e6e6e6;
	margin-bottom: 10px;
}
	
#ultra01 ul.point01 li img {
	width: 80%;
	margin: 0 auto;
}
.frame01-ultra {
	padding: 5% 10px;
	background-color: #f7f7f7;
	border-bottom: 2px solid #cecccc;
	margin-bottom: 60px;
}

.frame01-ultra h3 {
	font-size: 190% !important;
	padding-bottom: 8px;
	padding-left: 20px;
	padding-right: 20px;
	margin-bottom: 5px;
	color: #0165ac !important;
	border-bottom: 4px solid #0165ac;
}

.frame01-ultra p {
	font-size: 120% !important;
}

.ultra03-img {
	width: 60%;
	float: none;
	margin: 0 auto;
}

.ultra03-text {
	width: 100%;
	
}

#ultra-subttl {
	padding-top: 150px;
	padding-left: 0px;
	background: url(../images/ultra02-ttl.png) no-repeat left top;
	background-size: 100% auto;
	width: 80%;
	margin: 0 auto 25px;
}

#ultra-subttl h2 {
	padding: 8px 0px 5px 15px;
	color: #ff3b21;
	background-color: #f9f9f9;
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
	border-radius: 0px 30px 30px 0px;
	margin-bottom: 30px;
}





/* ===================================================================
support
=================================================================== */

#support-main {
	margin-top: 20px;
	padding-left: 0;
	padding-top: 300px;
	background-size: auto 300px;
	min-height: 350px;
}

#support-main h2 {
	padding-bottom: 8px;
	background: url(../images/line-dot-l.png) repeat-x left bottom;
	margin-bottom: 20px;
}

.support-text p {
	padding-left: 10px;
}

.food-main {
	background: url(../images/food-mainimg.png) no-repeat center top;
}

.sale-main {
	background: url(../images/sale-mainimg.png) no-repeat center top;
}

.others-main {
	background: url(../images/other-mainimg.png) no-repeat center top;
}

.contents-left {
	width: 100%;
	float: none;
}

.contents-right {
	width: 100%;
	float: none;
}




/* ===================================================================
products
=================================================================== */

.products01-photo {
	float: none;
	width: 100%;
}
.products01-text {
	float: none;
	width: 100%;
	margin-right: 0;
}

.products02-frame01 {
	padding: 10px 10px 5px 10px;
	margin: 25px 2% 30px 2%;
	border-radius: 10px;
}

.products02-frame01:after {
	left: 100px;
}
.products02-frame02 {
	padding: 10px 10px 5px 10px;
	margin: 25px 2% 30px 2%;
	border-radius: 10px;
}

.products02-frame02:after {
	left: 100px;
}
.products02-frame03 {
	padding: 10px 10px 5px 10px;
	margin: 25px 2% 30px 2%;
	border-radius: 10px;
}

.products02-frame03:after {
	left: 100px;
}
.products02-inner {
	background-color: #fff;
	padding: 10px 18px;
}
.products02-inner h4 {
	margin-left: 0;
}
.products02-inner h5 {
	margin-left: 0;
}
.products02-inner ul {
	margin-left: 5%;
	margin-bottom: 30px;
}
.products02-inner li {
	margin-bottom: 8px;
	list-style: disc;
}
.products02-inner h6 {
	margin-left: 2%;
	background-color: #0064af;
	color: #fff;
	border-radius: 10px;
	padding-left: 2%;
	margin-bottom: 10px;
}

.tekigou-list h5 {
	margin: 0px 0px 20px 0px;
	border-radius: 10px;
}
.tekigou-left {
	float: none;
	width: 100%;
	margin-left: 0;
}

.supporter-left {
	float: none;
	width: 100%;
}

.supporter-right {
	float: none;
	width: 100%;
	margin-right: 0;
}

#message-photo {
	float: left;
	width: auto;
	margin-bottom: 20px;
}



.service_box {
	width: 100%;
	margin-bottom:35px;
}
.service_box .head {
	background: url(../images/phone/ttl_bg01.png) no-repeat;
	width: 93%;
	height: 60px;
	padding: 10px 2% 0 5%;
}
.service_box .head h1 {
	background:none;
	width: 177px;
	height: 35px;
	padding:0px;
	float: left;
	display:block;
}
.service_box .head span {
	width: 97px;
	height: 35px;
	float: right;
}
.service_box .head span a {
	background:none;
	width: 97px;
	height: 35px;
	padding:0px;
	display:block;
}
.service_box .inner {
	display:none;
}
.service_box .inner_phone {
	width: 100%;
	display:block;
	padding:5px 0px 0px 0px;
}
.service_list {
	width: 100%;
	border-bottom: 1px dotted #999999;
	float:left;
	padding-bottom:15px;
	margin-bottom:15px;
}
.service_list a.service_left {
	width: 35%;
	float:left;
	margin-right: 20px;
}
.service_list dl {
	width: 58%;
	float: left;
}
.service_list dl dt {
	margin-bottom:5px;
}
.service_list dl a {
	background: url(../images/common/arr.png) no-repeat scroll left center;
	color: #0080CC;
	font-weight: bold;
	padding-left: 18px;
}
.works_box {
	width: 100%;
	margin-bottom:25px;
}
.works_box .head {
	background: url(../images/phone/ttl_bg01.png) no-repeat;
	width: 93%;
	height: 60px;
	padding: 10px 2% 0 5%;
}
.works_box .head h1 {
	background:none;
	width: 128px;
	height: 35px;
	padding:0px;
	float: left;
	display:block;
}
.works_box .head span {
	width: 97px;
	height: 35px;
	float: right;
}
.works_box .head span a {
	background:none;
	width: 97px;
	height: 35px;
	padding:0px;
	display:block;
}
.works_box .inner {
	width: 100%;
	padding:5px 0px 15px 0px;
	border:none;
}
.works_left {
	width: 100%;
	float: left;
	overflow:hidden;
	text-align:center;
	margin-bottom:15px;
}
.works_right {
	width: 100%;
	float: left;
}
.works_right li {
	width: 100%;
	margin-bottom:5px;
}
.works_right li a {
	background: url(../images/common/arr.png) no-repeat left center;
arr_s  padding-left:18px;
	color:#0080cc;
	font-weight:bold;
}
.news_box {
	width: 100%;
	margin-bottom: 50px;
}
.news_box .head {
	background: url(../images/phone/ttl_bg02.png) no-repeat;
	width: 100%;
	padding: 10px 0 0 5%;
}
.news_box .head h1 {
	background:none;
	width: 128px;
	height: 35px;
	padding:0px;
	float: left;
	display:block;
}
.news_box .head span {
	margin-top: 10px;
	float: right;
}
.news_box .head span a {
	background:none;
	width: 103px;
	height: 25px;
	padding:0px;
	display:block;
}
.news_box .head span a img {
	float:right;
}
.news_box .inner {
	background:#FAFAFA;
	width: 95%;
	padding: 5px 15px 15px 15px;
	border:none;
}
.news_box .inner dl {
	width: 100%;
	float: left;
	border-bottom: 1px dotted #999999;
	margin-bottom:10px;
}
.news_box .inner dt {
	width: 96%;
	float: left;
	line-height: 20px;
	margin: 15px 0px 15px 0px;
	padding-left: 4%;
	color: #666666;
}
.news_box .inner dd {
	width: 100%;
	float: left;
	padding-bottom:15px;
}
.tag_recruit {
	background: url(../images/common/tag_recruit.png) no-repeat left center;
}
.tag_news {
	background: url(../images/common/tag_news.png) no-repeat left center;
}
.tag_works {
	background: url(../images/common/tag_works.png) no-repeat left center;
}
#content_right {
	float: none;
	width: 100%;
}
#aside {
	width: 100%;
	margin-bottom: 15px;
	texr-align: center;
	max-width: 98%;
}
#aside h1 {
	background:url(../images/phone/search_ttl_bg.png) repeat-x;
	width: 100%;
	height: 50px;
	overflow: block;
	padding: 0px;
	margin-bottom: 2px;
}
.aside_inner {
	background: #F3F3F3;
	width: 94%;
	padding: 20px 3% 15px;
	margin-bottom: 2px;
}
.aside_inner ul {
	width: 100%;
}
.side-inq-box {
	width: 100%;
}
.aside h3 {
	width: 100%;
	text-align: center;
	margin: 0px auto;
	background-color: #fd8f00;
}
.aside h3 img {
	text-align: center;
	margin: 0px auto;
}
.aside h3 span {
	text-align: center;
	margin: 0px auto;
}
.aside_inner ul li {
	width: 100%;
	margin-bottom: 2px;
}
.aside_inner ul li a {
	background: url(../images/phone/side_bg.png) no-repeat;
	width: 95%;
	height: 50px;
	display: block;
	line-height: 50px;
	padding-left: 5%;
}
.side_ttl01 {
	background:none;
	width: 100%;
	height: 25px;
	display:block;
	margin-bottom:15px;
	padding:0px;
}
.side_ttl02 {
	background:none;
	width: 100%;
	height: 25px;
	display:block;
	margin-bottom:15px;
	padding:0px;
}
.side_ttl03 {
	background:none;
	width: 100%;
	height: 25px;
	display:block;
	margin-bottom:15px;
	padding:0px;
}
.banner_box {
	display:none;
}

#totop {
	width: 100%;
	height: auto;
	margin: 0px auto;
}
#totop p {
	line-height: 0;
	margin: 0px  0px;
}

#footer {
	width: 100%;
	height: auto;
	padding: 15px 0px 10px 0px;
}
#footer_inner {
	width: 96%;
	height: auto;
	margin: 0px auto;
	color: #fff;
}
#footer_inner h3 {
	padding-left: 0;
	padding-top: 10px;
	background-image: none;
}
.footer_nav {
	display: none;
	height: 50px;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 0px 5px;
	font-size: 75%;
	line-height: 1.2;
}

.footer_nav li {
	display: inline;
	padding: 0px 0px 0px 10px;
	margin: 0px 15px 0px 0px;
	color: #fff;
	background: url(../images/arrow-w.png) no-repeat left center;
}

.footer_nav li a {
	color: #fff;
}

#footer_inner small {
	font-size: 70%;
	line-height: 1.2;
	color: #8a8a8a;
}

#footer_inner h3 {
	font-size: 100%;
	line-height: 1.4;
	margin-bottom: 10px;
}

#footer_inner p {
	font-size: 80%;
	line-height: 1.4;
}

#footer-bottom {
	width: 100%;
	padding: 8px 0px;
}
.copyright {
	width: 100%;
	margin: 0px auto;
	font-size: 70%;
	line-height: 1.2;
	color: #8a8a8a;
	text-align: right;
	color: #fff;
}
#category-ttl {
	height: 80px;
}
#category-ttl h2 {
	margin: 0px auto;
	padding: 20px 0px 0px 10px;
	line-height: 1.0;
	font-size: 120%;
	color: #fff;
}

#contents .subttl-h3 {
	width: 90%;
	height: 41px;
	padding: 12px 0px 0px 10%;
	background: url(../images/contents-ttl-bk.png) no-repeat left center;
	margin-bottom:  20px;
	font-size: 90%;
}

/* ===================================================================
news
=================================================================== */

.newslist dt {
	width: 100%;
	float: left;
	line-height: 1.6;
	color: #ed3351;
	padding-left: 16px;
}
.newslist dd {
	line-height: 1.6;
	float: left;
}

.news-date {
	padding-left: 18px;
	color: #666666;
	background: url(../images/arrow-top-date.png) no-repeat left center;
}

.news-list li {
	background: url(../images/line-dot.png) repeat-x left bottom;
}

.news-list p {
	padding-left: 20px;
	padding-bottom: 8px;
	margin-bottom: 18px;
}

.news-list p a {
	text-decoration: underline;
}
.size-medium, .alignleft {
	margin-right: 20px;
}
.alignright {
	margin-left: 20px;
}

/* ===================================================================
about
=================================================================== */
.subcontents-left645 {
	width: 100%;
	float: left;
}

.subcontents-right256 {
	width: 100%;
	float: right;
}

.table-normal {
	width: 100%;
	font-size: 12px;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	border-right: solid 1px #dddddd;
	border-bottom: solid 1px #dddddd;
}

.table-normal td{
	margin: 0px;
	padding: 15px 8px;
	border-left: solid 1px #dddddd;
	border-top: solid 1px #dddddd;
	text-align: left;
}

.table-normal th{
	width: 25%;
	margin: 0px;
	padding: 15px 8px;
	border-left: solid 1px #dddddd;
	border-top: solid 1px #dddddd;
	background-color:#bdd3d7;
	text-align: left;
	font-weight: normal;
	vertical-align: top;
}

.table-normal a {
	color: #3A6EE7;
}
.table-full {
	font-size: 12px;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	border-right: solid 1px #dddddd;
	border-bottom: solid 1px #dddddd;
}

.table-full td{
	margin: 0px;
	padding: 5px 8px;
	border-left: solid 1px #dddddd;
	border-top: solid 1px #dddddd;
}

.table-full th{
	margin: 0px;
	padding: 5px 8px;
	border-left: solid 1px #dddddd;
	border-top: solid 1px #dddddd;
	background-color:#ffa624;
	font-weight: normal;
	vertical-align: top;
	color: #fff;
}

.subcontents-banner-about {
	width: 100%;
}

.subcontents-banner-about li {
	margin-bottom: 20px;
	width: 100%;
}

.subcontents-banner-about li img {
	width: 100%;
}

.subcontents-banner-about li p {
	font-size: 85%;
}
/* ==================================================================
products
=================================================================== */

.products-mainimg {
	width: 100%;
	float: none;
	text-align: center;
}
.products-sign {
	width: 100%;
	float: none;
	text-align: left;
}
.purpose-list li {
	float: left;
	margin-right: 10px;
	margin-bottom: 15px;
}
.seibun-list li {
	float: left;
	margin-right: 10px;
	margin-bottom: 15px;
}
/* ===================================================================
common
=================================================================== */
.subcontents-inner {
	padding: 0px 10px;
	margin-bottom: 30px;
}

.subcontents-inner p {
	margin-bottom: 10px;
}

.subcontents-banner-btn {
	width: 100%;
}

.subcontents-banner-btn li {
	margin-bottom: 20px;
	width: 100%;
}

.subcontents-banner-btn li img {
	width: 100%;
}

.subcontents-banner-btn li p {
	font-size: 85%;
}

.white-text-b {
	padding: 8px 15px;
	background-color: #ff6000;
	color: #fff;
	font-size: 110%;
}
/* ===================================================================
attention
=================================================================== */
.atention-list {
	list-style-type: decimal;
	list-style-position: inside;
}

.atention-list li {
	padding-bottom: 10px;
	border-bottom: 1px dotted #999999;
	margin-bottom: 10px;
}

.ng-list {
	padding-left: 20px;
	list-style-type: disc;
	list-style-position: outside;
}

.ng-list li {
	margin-bottom: 10px;
}
/* ===================================================================
faq
=================================================================== */
.faq h4 {
	margin-bottom: 10px;
	color: #ff7b00;
	padding: 8px 0px 3px 32px;
	font-size: 130%;
	background: url(../images/mark-faq.png) no-repeat left center;
	border-bottom: 1px solid #ffcd9f;
}
.faq p {
	margin: 0px 0px 30px 0px;
	padding: 0px 0px 0px 35px;
}
.faq p a {
	text-decoration: underline;
}

/* ================================================================================
	#page-nav
================================================================================ */
.page-nav {
	font-size: 80%;
	text-align: left;
	margin-bottom: 20px;
}
.page-nav li {
	display: inline;
	list-style: none outside none;
}
.page-nav li a {
	border: 1px solid rgb(230,230,230);
	color: rgb(102,102,102);
	text-decoration: none;
	border-radius: 3px;
}

.page-nav li a:hover {
	border: 1px solid rgb(230,230,230);
}
.page-nav li a:active {
	box-shadow: 0 0 3px rgba(0,0,0,0.2) inset;
	top:1px;
}

.page-nav li.current span {
	border: 1px solid rgb(186,166,132);
	color: #fff;
	font-weight: bold;
	border-radius: 3px;
	background-color: #ffa624;
}
.page-nav li.first span,
.page-nav li.previous span,
.page-nav li.next span,
.page-nav li.last span {
	background: rgb(248,248,248);
	border: 1px solid rgb(230,230,230);
	color: rgb(180,180,180);
	text-decoration: none;
	border-radius: 3px;
}

.page-nav li.page_nums span {
	background: rgb(102,102,102);
	border: 1px solid rgb(51,51,51);
	color: rgb(255,255,255);
}
.page-nav li a,
.page-nav li.current span,
.page-nav li.first span,
.page-nav li.previous span,
.page-nav li.next span,
.page-nav li.last span,
.page-nav li.page_nums span {
	padding: 0.25em 0.8em;
	display: inline-block;
	position:relative;
}

/* ================================================================================
	#jump
================================================================================ */

#jumptext {
	width: 70%;
	padding: 20px 0px;
	margin: 30px auto;
	font-size: 80%;
	line-height: 1.6;
	border: none;
}

#jumptext p a {
	text-decoration: underline;
}
 /* ================================================================================
	#ready
================================================================================ */

#readytext {
	width: 70%;
	padding: 60px 0px;
	margin: 30px auto;
	line-height: 2.5;
	border: 4px solid #ffa624;
	font-size: 80%;
}
/* ===================================================================
shop
=================================================================== */


/* 検索ボックス*/
.searchshop{
	width:100%;
	height: 300px;
	margin: 0px auto 20px auto;
	padding-top: 20px;
	background-color: #ffefd7;
}

.searchshop-block {
	float: none;
	display: block;
	width:280px;
	height: 80px;
	padding-left: 15px;
  overflow: hidden; /* 伸ばした分を隠す */
}

.searchshop-block h4 {
	font-size: 100%;
}

.searchshop form.keyword{
	height:60px;
}

.searchshop form.keyword .style_1{
	margin:3px 10px 0px 0px;
	width:278px;
	height:29px;
	vertical-align:11px;
	font-size:14px;
	border: 1px solid #cccccc;
}

.searchshop form.keyword .style_2{
	padding:4px 0 0 0;
	behavior: url("/csshover3.htc");
}

.searchshop form.keyword .style_2:hover{
	padding:4px 0 0 0;
	filter:alpha(opacity=0);
	opacity:0.0;
}


/* セレクトボックス*/
.searchshop select{
	width:270px;
    height: 37px;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    text-indent: .01px; /*Firefox用*/
    text-overflow: ""; /*Firefox用*/
	border:none;
	margin:0 0 0 4px;
	background:url(../images/shop-select-bk.png) no-repeat;
	padding:1px 0 0 20px;
	font-size:14px;
}

/* セレクトボックス*/
.searchshop *+html select{
	width:273px !important;
    height: 37px !important;
	border:none;
	margin:0 0 0 4px;
	background:url(../images/shop-select-bk.png) no-repeat  !important;
}

.searchshop-block > select {
  width: 110%; /* IEで矢印を消すためにUI分を伸ばす */
}

/* -------------------------------------------------- */
/* contact */
/* -------------------------------------------------- */

.contact-message {
	width: 100%;
	font-size: 100%;
	letter-spacing: 0.1em;
	line-height: 1.8;
	margin: 0px auto 50px auto;
}
.contact-form {
	width: 100%;
	margin: 0px auto;
	background: url(../images/common/line-rough-double.png) repeat-x left top;
}
.contact-form-table {
	margin: 0px auto 50px auto;
	width: 95%;
}
.contact-form-table th {
	width: 40%;
	padding: 18px 0px;
	font-size: 100%;
	letter-spacing: 0.2em;
	background: url(../images/line-dot.png) repeat-x left bottom;
	vertical-align:top;
	text-align: left;
	font-weight: normal;
}
.contact-form-table .form-necessary {
	padding-right: 40px;
	background: url(../images/mark-necessary.png) no-repeat right center;
}
.contact-form-table td {
	width: 60%;
	padding: 18px 0px ;
	background: url(../images/line-dot.png) repeat-x left bottom;
	vertical-align:top;
	text-align: left;
}

.name input, .company input, .section input, .zip input, .address input, .tel input, .fax input, .e-mail01 input, .e-mail02 input, .kana input {
	width: 98%;
	padding: 4px;
	border: 1px solid #d9d9d9;
}

.contact-form-table .wpcf7-textarea {
	font-size: 100%;
	width: 98%;
	line-height: 1.6;
	border: 1px solid #d9d9d9;
}
.contact-form-table textarea {
	font-size: 100%;
	width: 98%;
	line-height: 1.6;
	border: 1px solid #d9d9d9;
}
.wpcf7-form-control.wpcf7-submit{
	float: left;
   	display: block;
   	width: 123px;
   	height: 39px;
   	border: none;
   	text-indent: -9999px;
   	background: url(../images/form-btn-send.png) no-repeat;
	margin-left: 5%;
}
.submit input {
	color: #fff;
}
.submit2 input {
	float: left;
   	display: block;
   	width: 123px;
   	height: 39px;
   	border: none;
   	text-indent: -9999px;
   	background: url(../images/form-btn-send.png) no-repeat;
	margin-left: 5%;
}

/* 2019.9　追加 */

#top-contents-left2019 {
	width: 100%;
	min-height: 320px;
	float: none;
	padding-top: 10px;
	padding-bottom: 40px;
	padding-right: 0;
}


#top-contents-right2019 {
	width: 100%;
	float: none;
	padding-bottom: 40px;
	text-align: center;
}

#top-news2019 {
	width: 100%;
	margin-bottom: 30px;
}

#top-banner2019 {
	width: 100%;
}
}


@media screen and (max-width: 340px) {
/* スマートフォン用のスタイル記述 */


.works-list li {
	margin-left: 25px;
}

.service-list li {
	margin-left: 25px;
}

.banner-list li {
	margin-left: 25px;
}
}
