@charset "UTF-8";

/* タブレット */

@media screen and (min-width: 641px) and (max-width: 949px)
{
/* CSSリセット */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}



/* html
----------------------------------------------------- */

html{
	height: 100%;
	padding: 0;
	margin: 0;
}


/* body
-----------------------------------------------------*/

body{
	height: 100%;
	background-color: #FFFFFF;
	font-size: 1em;
	font-family:"メイリオ",sans-serif;
	line-height: 1.7em;
	margin: 0;
	padding: 0;
	word-wrap : break-word;
	overflow-wrap : break-word;
}

/* link関連
-----------------------------------------------------*/

a:link {
	text-decoration: none;
	color: #005073;
}

a:visited {
	text-decoration: none;
	color: #1EBBD7;
}

a:hover {
	text-decoration: none;
	color: #107DAC;
	font-weight: bold;
}

a:active {
	text-decoration: none;
	color: #107DAC;
}

/*ページトップへ戻る
-----------------------------------------------------*/

#page_top{
  width: 60px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: 55px;
  background: #189AD3;
  opacity: 0.5;
  border-radius: 3px;
  border: 1px solid #189AD3;
}
#page_top a{
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -25px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*wrap
-----------------------------------------------------*/

div#wrap{
	width: 100%;
	height: auto !important;
	height: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	padding: 0;
	margin: 0;
}


/*container
-----------------------------------------------------*/

div#container{
	width: 100%;
	height: auto !important;
	height: 100%;
	background-color: #FFFFFF;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	margin: 0 auto;
	position: relative;
	padding-bottom: 50px;
}


/*ヘッダー
-----------------------------------------------------*/

h1{
	font-size: 1.3em;
	color: #000000;
	font-weight: bold;
	padding: 20px 10px;
	text-shadow: #FFF 2px 0px,  #FFF -2px 0px,
				#FFF 0px -2px, #FFF 0px 2px,
				#FFF 2px 2px , #FFF -2px 2px,
				#FFF 2px -2px, #FFF -2px -2px,
				#FFF 1px 2px,  #FFF -1px 2px,
				#FFF 1px -2px, #FFF -1px -2px,
				#FFF 2px 1px,  #FFF -2px 1px,
				#FFF 2px -1px, #FFF -2px -1px;
}

div#header{
	width: 100%;
	background-image: url(img/header_bg.jpg);
	background-repeat: y-repeat;
	background-position: top right;
	background-color: #FFFFFF;
	padding: 0;
	margin: 0 auto;
}

/* tablet,smart用ヘッダーh1改行 */

span.mob_head{
	display: block;
	font-weight: bold;
	margin-top: 3px;
}


/*ヘッダー内ナビゲーション
-----------------------------------------------------*/

ul#menu1{
	width: 100%;
	height: 30px;
	margin: 0;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	flex-flow: row nowrap;
	justify-content: space-between;
}

ul#menu1 li{
	flex-basis: 33%;
	align-self: stretch;
	text-align: center;
	padding: 2px;
	margin: 0;
	font-size: 1em;
	font-weight: bold;
	background-color: rgba(126,229,225,0.4);
}

.hdnv_middle{
	flex-basis: 34%;
	align-self: stretch;
	text-align: center;
	padding: 2px;
	margin: 0;
	font-size: 1em;
	font-weight: bold;
	border-left: 1px solid #CCC;
	border-right: 1px solid #CCC;
}

ul#menu1 li:hover{
	background: linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -webkit-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -moz-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -o-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -ms-linear-gradient(top, #F7F8D1, #EDEE8C);
	font-weight: bold;
}

ul#menu1 li a {
	display: block;
}

/*middle
-----------------------------------------------------*/

div#middle{
	flex: 1 1 auto;
	background-color: #FFFFFF;
	width: 100%;
	height: auto !important;
	height: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	flex-flow: column wrap;
}
/*メインカラム
-----------------------------------------------------*/

div#main{
	width: 100%;
	height: 100%;
	font-size: 0.9em;
	line-height: 1.8em;
	color: #372E29;
	padding: 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

h2{
	width: 99%;
	padding: 4px 7px;
	border-bottom: 2px solid #71C7EC;
	font-size: 1.1em;
	font-weight: bold;
}

/* トップイメージ */
.top_img{
	max-width: 100%;
	display: block;
	margin: 30px 0;
}

div#main p{
	width: 100%;
}

/* 太字 */
span.futo{
	font-weight: bold;
}

/* PC用改行 
span.pc_br{
	display: block;
}*/

hr{
	width: 100%;
	margin: 20px 0;
	border-top: 1px dashed #CCC;
	border-right: none;
	border-bottom: none;
	border-left: none;
}

a.kochira{
	font-size: 1.3em;
	font-weight: bold;
}

ul.sanko{
	margin: 10px;
	padding-left: 10px;
	list-style: none;
}

ul.sanko li{
	position: relative;
  	margin-bottom: 5px;
  	padding-left: 30px;
  	line-height: 20px;
  	font-size: 0.9em;
}

ul.sanko li:before{
	font-family: 'Font Awesome 5 Free';
	content: "\f101";
	font-weight: 900;
	position: absolute;
	left: 5px;
	font-size: 1em;
	-webkit-transition: all 0.8s ease-in-out;
	transition: all 0.8s ease-in-out;
	background-position: bottom;
	color: #1EBBD7;
}

ul.sanko li:hover:before{
	-webkit-transform: rotateY(-360deg);
	transform: rotateY(-360deg);
	color: #FFC300;
}

/*メイン内製品紹介ページ　前置き〜ページ内リンク
-----------------------------------------------------*/

h3{
	font-size: 1em;
	font-weight: bold;
	margin: 20px 10px 0;
	border-left: 7px solid #FF5252;
	padding-left: 7px;
}

ul.eki_chui{
	margin: 15px 20px 30px 0;
	width: 100%;
}

ul.eki_chui li{
	position: relative;
  	margin-bottom: 5px;
  	padding-left: 30px;
  	line-height: 20px;
  	font-size: 0.9em;
}

ul.eki_chui li:before{
	font-family: 'Font Awesome 5 Free';
	content: "\f071";
	font-weight: 900;
	position: absolute;
	left: 10px;
	font-size: 1.1em;
	background-position: bottom;
	color: #FF5252;
}

ul.linkinpage{
	padding: 10px 30px;
	background-color: #EEE;
	border: 1px solid #CCC;
	width: 60%;
	margin: 20px auto;
	list-style: none;
}

ul.linkinpage li{
	font-size: 1em;
	color: #372E29;
	margin: 5px 0;
}

ul.linkinpage li > ul{
	padding-left: 20px;
	margin-left: 15px;
	list-style: square;
}

ul.linkinpage li > ul > li{
	font-size: 1em;
	margin: 0;
}


/*メイン内製品紹介ひな形
-----------------------------------------------------*/

h4{
	width: 100%;
	margin: 60px 0 15px;
	padding: 3px 8px 2px;
	border-left: 7px solid #61CFE3;
	border-bottom: 1px solid #61CFE3;
}

h4 a{
	font-size: 1.1em;
	font-weight: bold;
}

div.seihin_wrap{
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
}

div.seihin_gazou{
	flex-grow: 1;
	flex-basis: 30%;
	align-self: flex-start;
}

img.seihin_img{
	max-width: 100%;
}

div.seihin_setumei{
	flex-grow: 1;
	flex-basis: 70%;
}

span.midashi{
	font-size: 1em;
	font-weight: bold;
	display: block;
	padding: 2px 8px 1px;
	margin: 10px;
	border-left: 7px solid #4EDACB;
}

div.seihin_setumei ul{
	list-style: disc;
	padding-left: 20px;
	margin-left: 10px;
}

div.seihin_setumei ul li{
	font-size: 1em;
	color: #372E29;
}

div.seihin_setumei table{
	border-cllapse: cllapse;
	border-spacing: 0;
	width: 360px;
	margin: 10px 20px;
}
div.seihin_setumei table td{
	background-color: #EEE;
	padding: 6px;
	text-align: center;
	border: 1px solid #B9B9B9;
	font-size: 1em;
	color: #372E29;
	width: 30%;
}

div.seihin_setumei table td:last-child{
	background-color: #FFF;
	padding: 6px;
	text-align: left;
	border: 1px solid #B9B9B9;
	font-size: 1em;
	color: #372E29;
	width: 70%;
}

ol{
	margin: 15px 10px;
	padding-left: 20px;
}

ol li{
	font-size: 1em;
	margin: 5px 0;
	color: #372E29;
}

ul.seihin_chu{
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.seihin_chu li{
	list-style: none;
	font-size: 0.9em;
	text-indent: -0.9em;
	padding-left: 0.9em;
	margin: 0 0 0 -20px;
}

ul.seihin_chu li:before{
	content: "※";
	font-size: 0.9em;
}

img.sekourei{
	display: block;
	margin: 10px auto;
	max-width: 100%;
}


/*サイドカラム内ナビゲーション
-----------------------------------------------------*/

div#side{
	width: 100%;
	height: 100%;
	padding: 5px;
	top: 10px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

ul#menu2{
	width: 100%;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-content: flex-start;
	padding: 0;
	margin: 30px 0 0;
}

ul#menu2 li{
	width: 30%;
	margin: 3px 0;
	padding: 5px 5px 5px 10px;
	background-color: #E8F8FB;
	border-top: 1px solid #78D6E7;
	border-bottom: 1px solid #78D6E7;
	border-right: 1px solid #78D6E7;
	border-left: 7px solid #78D6E7;
}

ul#menu2 li:hover{
	background: linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -webkit-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -moz-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -o-linear-gradient(top, #F7F8D1, #EDEE8C);
	background: -ms-linear-gradient(top, #F7F8D1, #EDEE8C);
	font-weight: bold;
}

ul#menu2 li a {
	display: block;
}

ul.link{
	width: 100%;
	margin: 10px auto;
	padding: 0;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	align-content: flex-start;
}

ul.link li{
	flex-basis: 40%;
	font-size: 0.7em;
	line-height: 1.3em;
	color: #372E29;
	margin: 3px 0;
}

img.link_img{
	display: block;
	max-width: 100%;
}

/* footer
-----------------------------------------------------*/

div#footer{
	width: 100%;
	margin-top: auto;
	padding: 0;
}

footer{
	width: 100%;
	height: 50px;
	border-top: 1px solid #CCC;
	background-image: url(img/header_bg.jpg);
	background-repeat: no-repeat;
	background-position: top right;
	background-color: #FFFFFF;
	position: absolute;
	bottom: 0;
}

div#footer p{
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
	text-align: center;
	font-size: 0.7em;
	color: #372E29;
}
