* {
    margin: 0px;
    padding: 0px;
	box-sizing:border-box;
}

html{
	font-size:15px; /* 変更しない */
}

body{
	background-repeat:no-repeat;
	background-size:contain;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	text-align:left;
	line-height:33px;
	color:#000000;
	margin:0px;
	padding:0px;
	background-position:top left;
	font-size:1rem;

	-webkit-text-size-adjust:100%;

	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	text-size-adjust: none;
}
address{
	font-style: normal;
}

table{
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1rem;
}

th, td
{ 
	margin: 0;
	padding: 0;
	word-wrap:break-word;
}
fieldset, img{ 
	border: 0;
}

caption,
th {
	text-align: left;
}


address{
	font-style: normal;
	padding:10px 0px 0px;
}


.android body{
	line-height:1.8;
}
.safari selecter html{
	font-size:13px;
}

body,
div,
dl, dt, dd,
ul, ol, li,
h1, h3, h4, h5, h6,
pre,
form, fieldset,
p, blockquote
{ 
	margin: 0;
	padding: 0;
	word-wrap:break-word;

}
a{
	text-decoration:none;
}
input, textarea{
	margin: 0;
	font-size: 1rem;
}
address, caption, cite, code, dfn, em, th, var,small{
	font-style: normal;
	font-weight: normal;
}
li{
	list-style:none;

}

header,
nav,
article,
aside,
section,
footer {
    display:block;
}
/* Hx */
h1,h3,h4,h5,h6{
	padding:0px;
	margin:0px;
	font-weight:normal;
}

nav .menu li.info:hover {
	border-bottom: 0px;
	height: auto;
}

footer .main .addrbox{
	text-align:left;
	margin-left:150px;
}
footer .main #footerlnk{
	text-align:left;
	position:absolute;
	top:110px;
	left:160px;
}

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

.boxradius{
	moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
}
.flexbox {
	display:-webkit-box; /* old ios */
    display: -webkit-flex;/*--- safari（PC）用 ---*/
    display:flex;
    -webkit-flex-direction:row;/*--- safari（PC）用 ---*/
    flex-direction:row;
}

.wh_center{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.panel-area .panel {
  display: none;
  text-align: left;
}
.panel-area .panel.active {
  display: block;
}


/* modal window */

.modal{
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	z-index:99;

	box-sizing: border-box;
	margin: 0;
	padding: 0;
	left:0;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	width: 100%;

	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
.modal__content{
	background: #fff;
	left: 50%;
	padding: 10px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 80%;
	color:#000000;
	text-align:left;
	
	moz-border-radius:15px;
	-webkit-border-radius:15px;
	border-radius:15px;
}

.modalwin{
	height:auto;
}
.modalwin img{
	max-width:90%;
	max-height:90%;
}


.modal__content > div.scroll{
	overflow:visible scroll;
	height:auto;
}
	
.modal__content  > div.scroll > div{
	margin-bottom:50px;
}

.modal__content p{
	min-height:30px;
}
.modal__content a{
	text-decoration:underline;
}
.modal__content .ttl{
	display:block;
	text-align:left;
	border-bottom:solid 1px #000000;
}


.modal__content .js-modal-close{
	display:inline-block !important;
}


/* ---------------------------------------------------------------------------------
 ◆ ページの先頭へ移動するボタンの入れ物 
--------------------------------------------------------------------------------- */
#to-pagetop {
	/* 表示位置の指定 (右下から 20px 固定) */
	position: fixed;
	right: 20px;
	bottom: 20px;
	/* 初期は非表示 */
	display: none;
	z-index:9999;
}

/* ---------------------------------------------------------------------------------
 ◆ 「ページの先頭へ」のリンクボタン 
--------------------------------------------------------------------------------- */
#to-pagetop a {
	/* 余白 */
	padding: 20px;
	/* リンクのテキスト装飾なし */
	text-decoration: none;
	/* 文字は太字 */
	font-weight: bold;
	/* マウスカーソルをポインター (指) にする */
	cursor: pointer;
	/* ブロック表示 */
	display: block;
	/* 背景色と前景色 */
	background-color: #004a7f;
	color: #fff;
	/* 角を丸めるスタイル */
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	/* マウスカーソルを合わせた時 (ホバー時) のアニメーション */
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}

/* ---------------------------------------------------------------------------------
 ◆ 「ページの先頭へ」のリンクボタンにマウスカーソルを合わせた時 (ホバー時)
--------------------------------------------------------------------------------- */
#to-pagetop a:hover {
	/* 背景色と前景色 */
	background-color: #adddff;
	color: #003459;
}

.js-modal-close{
	border:solid 2px #000000;
	padding:5px;
	color:#000000;
	font-weight:bold;
}

#scroll-to-top-btn{
	position: fixed;
	bottom: 10px;
	right: 10px;
	height: 50px;
	width: 50px;
	color: #FFF;
	font-size:30px;
	font-weight: bold;
	background-color:#9E9E9E;
	border: none;
	border-radius: 50%;
	transform: rotate(-90deg);
	opacity: 0;
	transition-duration: 0.5s;
	z-index:99;
}

.flexslider {
	border: 0;
	@include box-shadow(black 0 0 0);
	width:100%;
}

/* スマホ用ハンバーガー */
/*チェックボックス等は非表示に*/

.nav-unshown {
	display:none;
}

.hamburger_drawer {
	position: relative;
}

/*アイコンのスペース*/

.hamburger_open{
	position:relative;
	display: inline-block;
	width: 30px;
	height: 22px;
	vertical-align: middle;
}

.hamburger_open:after{

	height:22px;
	line-height:22px;
	display:inline-block;
	position:absolute;
	top:0px;
	left:35px;
}

/*ハンバーガーアイコンをCSSだけで表現*/

.hamburger_open span, 
.hamburger_open span:before, 
.hamburger_open span:after {
	position: absolute;
	
	height: 3px;/*線の太さ*/
	width: 25px;/*長さ*/
	border-radius: 3px;
	background: #555;
	display: block;
	content: '';
	cursor: pointer;
}

.hamburger_open span:before {

	bottom: -8px;
}

.hamburger_open span:after {
	bottom: -16px;
}

/*閉じる用の薄黒カバー*/
.hamburger_close {
	display: none;/*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0;/*全体に広がるように*/
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}

/*チェックが入ったらもろもろ表示*/

#nav-input:checked ~ .hamburger_close {
	display: block;/*カバーを表示*/
	opacity: .5;
}

#nav-input:checked ~ .hamburger_content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);/*中身を表示（右へスライド）*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
	z-index:100;
}

.hamburger_content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;/*最前面に*/
	width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
	max-width: 90%;/*最大幅（調整してください）*/
	height: 100%;
	background: #fff;/*背景色*/
	transition: .3s ease-in-out;/*滑らかに表示*/
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);/*左に隠しておく*/

	background-image:url(../img/design/menubg.png);
	background-position:0px 0px;
	background-repeat: no-repeat;
	background-size:50%;
}

#nav-open:after{
	margin-left:5px;
}

.hamburger_open:after{
	font-weight:bold;
	width:550px;
}

.inquirySection{
	padding:10px;
}
#item_page_wrap #second_column{
	width:auto;
}

#item_page_wrap #second_column{
	display:block;
}

#item_page_wrap #first_column{
	width:100% !important;
}


.container{
	text-align:center;
	background-color:rgba(255,255,255,0.7);
}

header{
	background-attachment: scroll;
	background-repeat: no-repeat;
	background-position: center top;
	position:relative;
	box-sizing:border-box;
	margin:0px auto 20px;
	padding:0px;
	background-color:#FFFFFF;
	color:#000000;
	height:150px;
	z-index:99;
	width:100%;
	display:block;
}
header .main{
	position:relative;
	height:80px;
}
header .info{
	top:10px;
	right:10px;
	text-align:right;
	position:absolute;
}
header .info span{
	display:block;
}
header .info .tel{
	font-size:30px;
}
header a.js-modal-open{
	display:inline-block;
	width:150px;

	line-height:25px;
	font-size:12px;

	font-weight:bold;
	border:solid 2px #990000;
	color:#990000;
	top:50px;
	left:20px;
	position:absolute;
}

header h2{
	font-size:0.94rem;
	font-weight:normal;
	position:absolute;
	top:20px;
	left:15px;
}
header h2 span{
	display:inline-block;
}

header #hplogo{
	color:#000000;
}
footer #hplogo{
	color:#ffffff;
}
header h1{
	font-weight:bold;
	font-size:1.8rem;
	display:inline-block;
	z-index:1;
}
header h1 a{
	position:relative;
}
footer .name span,
header h1 a span{

	font-size:14px;
	vertical-align:top;
	margin-right:5px;
}
header h1 img{
	max-width:400px;

}

header nav .menu li{
	float:none;
	margin-left:10px;
}
header .OUCHImenu{
	text-align:center;
	margin:0px auto;
	padding:5px 0px;
	display:inline-block;
	z-index:1;

	background:none;
	border:none;
}
header .OUCHImenu:before{
	display:block;
	text-align:left;
}

header .OUCHImenu h3{
	position:absolute;
	top:-30px;
	right:250px;
}
header .OUCHImenu nav .btnbox{
	width:auto;
	padding:0px;
	margin:0px;
	box-sizing:border-box;
	text-align:right;
	font-size:1.07rem;
	display:block;

}
header .OUCHImenu nav .btnbox{
	letter-spacing: -0.4em;
}
header .OUCHImenu nav .btnbox > *{
	display:block;
	letter-spacing: normal;
	vertical-align:top;
	box-sizing:border-box;
}

header .OUCHImenu nav{
	margin:0px auto 5px;
	text-align:left;
	background-color:#FFFFFF;
	width:auto;
	display:inline-block;
	padding:10px 5px 10px 10px;
	position:absolute;
	top:10px;
	left:10px;
	border:solid 1px #666666;
	position:fixed;
	z-index:100;

	moz-border-radius:30px;
	-webkit-border-radius:30px;
	border-radius:30px;
}

header .OUCHImenu nav a{
	padding:0px 17px;
	display:inline-block;
	text-align:center;
	letter-spacing: normal;
	vertical-align:top;
	box-sizing:border-box;

	height:100%;
	margin-bottom:5px;
	background-color:#ffffff;
	color:#000000;
	margin-right:3px;
}

header .OUCHImenu nav a.act {

	background-color:#000000;
	color:#FFFFFF;
}

header .OUCHImenu nav a span{
	display:block;
	font-size:0.74rem;
	text-align:center;
	line-height:13px;
	font-weight:normal;
}

header .OUCHImenu nav .btnbox{
	width:auto !important;
	position:relative !important;
	top:10px !important;
	left:auto !important;
	display:block !important;
	height:auto !important;
	padding:0px 5px !important;
	margin-top:20px;
	margin-left:30%;
}

footer{
	position:relative;
	display:block;
	padding:30px 0px;
	box-sizing:border-box;
	font-size:1rem;
	background-color:#000000;
	color:#ffffff;
}

footer #footer1,
footer #footer2{
	position:relative;
	text-align:left;
}

footer #footer1 .comment{
	right:20px;
	top:20px;
}
footer #footer1 .tel{
	right:20px;
	top:120px;
	text-align:center;
}
footer #footer1 .tel span{
	font-size:50px;
	display:block;
	margin:10px 0px;
}
footer #footer1 .inner,
footer #footer2 .inner{
	width:500px;
	margin:0px auto 60px;

}
footer #footer2 .footerlogo img{
	width:100%;
}
footer #footer2 .info{
	text-align:left;
}
footer #footer2 .iconarea a{
	width:60px;
	display:inline-block;
}
footer #footer2 .iconarea img{
	width:100%;
}
footer #footer2 .iconarea,
footer #footer2 .mail{
	width:400px;
	margin:0px auto 60px;
	padding:10px;
	font-weight:bold;
	color:#ffffff;
	display:block;
	text-align:center;
}

footer #footer2 .iconarea{
	display: flex;
	flex-direction: row;
	justify-content: space-around; /* 均等割 */
}
footer #footer2 .iconarea a{
	margin-right:30px;
}
footer #footer2 .mail{
	border:solid 2px #ffffff;
}

footer #footer2 .linkbox{
	text-align:center;
}
footer #footer2 .linkbox > *{
	display:flex;
	vertical-align:top;
}
footer #footer2 .linkbox .cell{
	text-align:center;
	margin:0px auto 60px;
	width:235px;
	display:inline-block;
}
footer #footer2 .linkbox .cell img,
footer #footer2 .linkbox .cell a{
	display:block;
	width:100%;
}
footer #footer2 .link img{
	width:100%;
}

footer #footer2 p{
	width:300px;
}
footer #footer2 p span{
	font-size:40px;
	display:block;
}
footer #footer2 .comment{
	width:90%;
	margin:0px auto;
}
footer #footer2 .companynm{
	font-size:20px;
}
footer #footer2 span{
	margin:0px 0px 20px 0px;
	display:inline-block;
}
footer .telephone{
	display:block;
	font-size:30px;
}
footer #footerlnk{
	text-align:center;
}
footer small{
	text-align:center;
	display:block;
}
footer .main .addrbox span.name{
	font-size:1.6rem;
	display:block;
}

header .main,
footer .main,
footer #copyright .main{
	position:relative;
	margin:0px auto;
	padding:10px 0px 5px;
}

footer #footerlnk a{
	display:inline-block;
	padding:5px 0px;
	color:#ffffff;
}
footer #footerlnk a:after{
	margin-left:5px;
	content:"|";
}

.header_nav{
	width:90%;
	margin:0px auto;
	position:absolute;
	top:100px;
	right:0;
	left:0;
	margin:0 auto;
}
.header_nav a{
	display:inline-block;
	font-weight:bold;
	padding:0px 30px;
	color:#000000;
	font-weight:bold;
}
.header_nav a.act{
	border-bottom:solid 2px #000000;
}

header .OUCHImenu{
	top:60px;
	left:0px;
	line-height:30px;
	height:50px;
	display:inline-block;
	width:auto;
}

header .OUCHImenu nav a{
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	padding:0px !important;
	margin:1px 1px 3px !important;

	width:auto !important;
	background:none !important;
	color:#000000 !important;
}

header .OUCHImenu nav a{
	height:40px;
	line-height:40px;
	display:block;
	text-decoration:none;
	padding:0px 15px !important;
	margin:0px;
	width:100%;
	height:100%;
	color:#000000;
	background-image:none !important;
	text-align:center !important;
	box-sizing:border-box;
}

header .OUCHImenu nav a span{
	margin-bottom:5px;
}

header .OUCHImenu nav a.act {
	background-color:rgba(200,200,200,0.5) !important;
}

header .OUCHImenu:before{
	content:'';
}

/* modal window */

.OUCHI_content{
	margin: 0 10px;
}
.OUCHI_content a{
	background-color:#ffffff;
	color:#000000;
	padding:5px;
	border:solid 2px #000000;
	height:40px;
	line-height:40px;
	text-decoration:none;
}

.breadcrumb {
	margin: 0 auto 30px;
	text-align:left;
	width:70%;
}

.breadcrumb a {
	display:inline-block;/*横に並ぶように*/
	list-style: none;
	font-weight: bold;/*太字*/
	margin-bottom:10px;
	margin-right:10px;
	padding-right:10px;
	position: relative;
}

.breadcrumb a:after {
     position: absolute;
     content: '';
     width: 6px;
     height: 6px;
     border-top: solid 2px #697b91;
     border-right: solid 2px #697b91;
     -webkit-transform: rotate(45deg);
     transform: rotate(45deg);
     top: 50%;
     right: -10px;
     margin-top: -3px;
	 margin-left:10px;
}

.breadcrumb a:last-child:after {
	border:0px;
}

.breadcrumb a {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 10px;
	text-decoration: none;
	color: #999999;
	background: #ffffff;
	font-size: 0.9em;
	border:solid 1px #cccccc;
}

.breadcrumb a:hover {
	background: #c9dbfb;
}


.iblk{
	letter-spacing: -0.4em;
}
.iblk > *{
	display:inline-block;
	letter-spacing: normal;
	vertical-align:top;
	box-sizing:border-box;
}

/* Table Basic */

ol, ul{
	list-style: none;
}

.bold {
	font-weight: bold;
}


span.pic{
	width:300px;
	margin-right:50px;
	display:inline-block;
}
.contents h3{
	text-align:left;
	width:70%;
	margin:0px auto 30px;
	font-size:25px;
	font-weight:bold;
	
}
#point h2{
	text-align:center;
}
.txt{
	width:70%;
	margin:0px auto;
}
.contents{
	padding-bottom:60px;
	display:block;
}


.slick-slider li{
	overflow:hidden;
}
.slick-slider li img{
	width:100%;
	object-fit:cover;
}
.honbun{
	width:80%;
}
.page_contents .line .honbun h2{
	text-align:left;
	margin-bottom:20px;
}

.intro > *{
	display:block;	
}
.intro span{
	padding:0px;
	margin:0px;
	height:auto;
}

.intro h2{
	text-align:center;
	font-size:16px;
	color:#FFFFFF;
	padding:40px 0px;
	box-sizing:border-box;
}
.intro h2 span{
	font-size:50px;
	display:block;
	text-align:center;
	width:100%;
	line-height:50px;
	
}
.intro div{
	text-align:center;
	background-color:#666666;
	padding:0px;
	box-sizing:border-box;
	height:auto;
}


.contents p {
	text-align:left;
	margin-bottom:20px;
}

.column a{
	color:#0000FF;
}
.txt h4{
	font-weight:bold;
	text-align:left;
	font-size:16px;
	margin:0px auto 10px;
}

.page_contents .contents dl{
	text-align:left;
	margin:0px auto 10px;
	display:flex;
}
.page_contents .contents dt{
	font-weight:bold;
}

.gotomail{
	font-size:22px;
	text-align:center;
	line-height:50px;
	height:50px;
	width:500px;
	color:#FFFFFF;
	background-color:#666666;
	moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	border:solid 2px #000000;
	display:block;
	margin:0px auto;
}


.contents dl > *{
	display:inline-block;
	vertical-align:top;
}

.contents dt{
	width:140px;
}
.contents dd{
	max-width:60%;
}


@media print, screen and (max-width: 1280px) { 

	.contents .slide_index{
		width:100%;
	}

	.contents p {
		margin: 0px auto 20px;
	}	
	.intro div{
		width:auto;
	}
	.header_nav{
		width:auto;
	}
	.header_nav a{
		padding:0px 10px;
	}

	header{
		background-size:contain;
		position:relative;
		width:auto;
		height:160px;
	}

	header h1{
		top:15px;
		position:absolute;

		color:#666666;
		font-weight:bold;
		font-size:1.34rem;
		left:100px;
	}
	header h2{
		text-align:left;
		line-height:25px;
		top:30px;
	}

	header h1 img{
		max-width:200px;
		position:absolute;
		top:10px;
		left:0px;
	
		display:inline-block;
		text-align:left;
	}

	footer #footer2{
		background-size:20%;
		background-position:10px 70px;
	}
	footer #footer2 .comment{
		width:90%;
		margin:0px auto;
	}

	header .main{
		height:100px;
	}

	header .OUCHImenu nav a{
		padding:0px 5px;
	}

	header .main,
	header .OUCHImenu nav .btnbox,
	footer .main{
		position:relative;
		font-size:15px;
	}

	header a.js-modal-open{
		top:75px;
		left:auto;
		right:5px;
		line-height:18px;
		width:200px;
	}

	div.slide_index{
		height:400px;
		width:auto;
	}
}

@media screen and (max-width:1000px) {


	header{
		margin:10px 10px 30px;
	}
	header nav .menu li{
		float:none;
		margin:0px;
	}
	header nav .menu li.itemSearch{
		margin-top:30px;	
	}

	footer ul{
		width:auto;
	}
	#mainFooter{
		padding:10px;
		box-sizing:border-box;
	}
	#item_page_wrap .bxslider .img_box,
	.bx-viewport,
	.bx-wrapper,
	#item_page_wrap #first_column{
		position:relative !important;
		width:auto !important;
		margin:0px;
	}

	#item_page_wrap .bxslider .img_box img{
		width:100%;
	}

	ul.bxslider li{
		position:relative !important;
		width:100% !important;
	}

	#item_page_wrap{
		padding:5px;
	}

	.inquirySection dl dd textarea,
	.inquirySection dl,
	.inquirySection dl dd input,
	.inquirySection form{
		width:auto;
		display:block;
	}
	#item_page_wrap .bxslider .img_box{
		width:100%;
		height:auto;
		line-height:normal;
	}
	.bx-wrapper{
		height:auto;
		margin-bottom:30px;
	}

	.wrapper,
	#privacy, #law,
	section.tmpBox,
	#item_page_wrap,
	.main{
		width:auto !important;
		margin:0px 10px;
	}
	#mainFooter{
		padding:10px;
		box-sizing:border-box;
	}

}
@media screen and (max-width:800px) {

	article{
		margin:0px auto;
		width:auto;
	}
	main{
		padding-top:20px;
	}


	.breadcrumb,
	.line .honbun,
	.contents h3,
	.txt{
		width:auto;
		margin:30px 20px;
	}
	#point{
		margin:0px auto;
	}
	.contents{
		padding-bottom:20px;
	}

	.header_nav{
		display:none;
	}
	#ndpg_company .contents dt{
		text-align:left;
	}

	.point{
		width:auto;
	}

	.line span{
		margin:0px auto !important;
	}
	
	dl,dt,dd,
	.line{

		text-align:left !important;
		display:block !important;
		width:auto !important;
		max-width:none !important;
	}
	dl{
		margin-bottom:30px !important;
	}

	header{
		padding:0px;
		height:8vh;
		position:relative;
	}

	header h1 img{
		max-width:200px;
	}
	header h2{
		width:400px;
	}

	header #hplogo{
		width:200px;
		right:auto;
	}

	header .main{
		height:auto;
		padding-bottom:30px;
		width:auto !important;
	}

	header #hplogo{
		bottom:auto !important;
	}
	header a.js-modal-open{
		top:100px;
		left:auto;
		right:5px;
		width:80px;
		line-height:18px;
		font-size:10px;
		border:solid 2px #000000;
		color:#000000;
	}
	header a.js-modal-open span{
		display:inline-block;
	}

	footer #footer2 .linkbox > *{
		display:block;
		vertical-align:top;
	}
	footer #footer2 .linkbox .cell{
		display:block;
	}

	footer .main,
	footer #copyright .main{
		position:relative;
		width:auto !important;
	}
	footer .main,
	footer #copyright .main{
		height:250px !important;
	}

	footer #copyright{
		height:300px;	
		line-height:300px;
	}
	footer #copyright .copy{
		font-size:0.74rem;
	}
	footer #copyright .main .addrbox > span{
		display:block;
	}

	footer a.privacy{
		top:200px;
		bottom:auto;
		right:5px;
	}
	footer a.sitemap{
		top:120px;
		bottom:auto;
		right:5px;
	}

	footer a.support{
		top:160px;
		bottom:auto;
		right:5px;
	}
	footer #footer2{
		background-position:10px 100px;
	}
	
	footer #footer2 span{
		margin:0px 0px 0px 60px;
	}

	footer #footer2 .iconarea, footer #footer2 .mail{
		width:auto;
		margin:5px 5px 20px;
	}

	footer #footer2 .inner{
		width:auto;
		padding-top:0px;
	}

	.footerlogo{
		width:90%;
		margin:0px auto;
	}
	.lightboxpicsbox img{
		max-width:200px;
	}

	.gallerycell img:not(.zoomicon){
		max-width:100%;
	}
	div.slide_index{
		height:300px;
	}

	#ndpg_sitemap ul.sitemap{
		width:auto;
	}

}

@media screen and (max-width:600px) {
	
	html{
		font-size:13px;
	}

	main{
		padding-top:10px;
	}
	header{
		margin:0px;
	}

	header #hplogo{
		background-size:20px 20px;
		right:auto;
		left:0px;
		top:0px;
	}
	header #hplogo img{
		width:200px;
	}
	header h1{
		top:0px;
	}

	header h1 img{
		max-width:300px;
	}
	header h2{
		top:45px;
		left:5px;
		line-height:20px;
		width:auto;
		font-size:11px;
	}

	header .main{
		height:auto;
	}	

	header .OUCHImenu{
		top:5px;
		right:5px;
		left:auto;
		line-height:normal;
		height:auto;
		position:absolute;
		width:40px;
	}

	header .OUCHImenu nav ul{
		text-align:left;
	}

	header .OUCHImenu nav{
		top:0px;
	}
	
	header .info{
		top:auto;
		right:auto;
		bottom:-10px;
		left:10px;
		padding:0px;
		margin:0px;
		
	}
	header .info span{
		display:inline-block;
		font-size:11px;
	}
	header .info .tel{
		font-size:11px;
	}
	header a.js-modal-open{
		top:60px;
	}

	footer{
		padding:5px;
		margin-top:60px;
	}
	footer #footer1 .inner, 
	footer #footer2 .inner{
		width:auto;
	}

	footer a.support{
		top:auto;
		bottom:10px;
	}
	footer #footer1 .tel,
	footer #footer1 .comment{
		width:auto;
		font-size:12px;
		line-height:18px;
	}
	footer #footer1 .comment{
		padding:10px 10px 30px;
	}
	footer #footer1 .tel span{
		font-size:20px;
	}
	footer #footer2 span{
		margin:0px;
	}

	footer #footer2 .companynm{
		font-size:16px;
	}

	footer .link_mailform{
		top:150px;
		left:0px;
		font-size:0.8rem;
		line-height:30px;
		height:30px;
		display:inline-block;
	}

	footer .main{
		height:380px !important;
		padding-bottom:100px;
		line-height:30px;

	}

	footer .main .iconarea{
		bottom:50px;
		top:auto;
		right:auto;
		left:0px;
		min-width:0;
		display:inline-block;
	}

	footer .main .addrbox{
		font-size:0.94rem;
	}
	footer .main .addrbox span[itemprop="faxNumber"] {
	   display:inline-block;
	}

	.container{
		margin:0px auto;
	}

	.breadcrumb{
		margin-bottom:10px;
	}
	.breadcrumb a{
		line-height:25px;
	}
	.footerlogo{
		margin:0px 10px;
	}
	
	div.slide_index{
		height:150px;
	}

	.fixed_btn{
		top:300px;
	}

	.tab-area{
		display:block;
	}
	.tab-area li{
		margin-bottom:5px;
	}
	.hamburger_open:after{
		color:#000000;
		width:280px;
	}

	#ndpg_index #bottommenu > span a span{
		display:inline-block;
	}
	#ndpg_index #bottommenu > a{
		width:46% !important;
		height:170px !important;
	}
	#ndpg_index #bottommenu > a.kanri2{
		width:auto !important;
		height:auto !important;
		display:block;
	}
	#ndpg_index #bottommenu > span a{
		width:auto !important;
		height:auto !important;
	}
	#ndpg_index #bottommenu > span a.kanri{
		height:140px !important;
	}
	#ndpg_index #bottommenu > span a.kanri2{
		font-size:11px;	
	}


}

@media screen and (max-width:480px) {
	.msg_startButton{
		position:relative !important;
	}
	#item_page_wrap #bx-pager{
		width:auto;
	}

}

