@charset "utf-8";
/* CSS Document */
@font-face {
		font-family: 'Noto Sans Japanese';
		font-style: normal;
		font-weight: 100;
		src: url('../../../fonts/NotoSansCJKjp-Thin.woff2') format('woff2'), url('../../../fonts/NotoSansCJKjp-Thin.woff') format('woff'), url('../../../fonts/NotoSansCJKjp-Thin.ttf') format('truetype'), url('../../../fonts/NotoSansCJKjp-Thin.eot') format('embedded-opentype');
}
/********** PC ***********/
body {}
a:hover {}
img {
		width: auto;
		max-width: 100%;
		height: auto;
}
.pc {}
.sp {
		display: none;
}
.sp-header {
		display: none;
}
.no-link {
	pointer-events: none;
}
.tel-tap,
.sp-block {
	display: none;
}

@media (max-width: 1400px) {
		/*モニタサイズ1400～スマホ */
}
@media (max-width: 767px) {
		/********** SP ***********/
		.pc {
				display: none;
		}
		.sp {
				display: block;
		}
		.pc-header {
				display: none;
		}
		.sp-header {
				display: block;
		}
		.header-nav, .header-contact {
				display: none;
		}
		#inner-header {
				width: auto;
				min-width: inherit;
		}
		#inner-header {
				padding: 10px 20px;
		}
		#logo {
				font-size: 100%;
		}
		#logo img {
				width: 50%;
				vertical-align: bottom;
				line-height: 1;
		}
		#mobile-head {
				display: none;
		}
		/* Fixed */
		#top-head.fixed {
				margin-top: 0;
				top: 0;
				position: fixed;
				padding-top: 10px;
				height: 55px;
				background: #fff;
				background: rgba(255, 255, 255, .7);
				transition: top 0.65s ease-in;
				-webkit-transition: top 0.65s ease-in;
				-moz-transition: top 0.65s ease-in;
		}
		#top-head.fixed .logo {
				font-size: 24px;
				color: #333;
		}
		#top-head.fixed #global-nav ul li a {
				color: #333;
				padding: 0 20px;
		}
		/* Toggle Button */
		#nav-toggle {
				display: none;
				position: fixed;
				right: 20px;
				top: 17px;
				width: 34px;
				height: 36px;
				cursor: pointer;
				z-index: 999;
				padding: 0;
		}
		#nav-toggle div {
				position: relative;
		}
		#nav-toggle span {
				display: block;
				position: absolute;
				height: 6px;
				width: 100%;
				background: #94CB10;
				left: 0;
				-webkit-transition: .35s ease-in-out;
				-moz-transition: .35s ease-in-out;
				transition: .35s ease-in-out;
		}
		#nav-toggle span:nth-child(1) {
				top: 0;
		}
		#nav-toggle span:nth-child(2) {
				top: 13px;
		}
		#nav-toggle span:nth-child(3) {
				top: 26px;
		}
		#top-head {
				width: 100%;
				padding: 0;
		}
		#top-head {
				top: 0;
				position: fixed;
				margin-top: 0;
				z-index: 1;
		}
		/* Fixed reset */
		#top-head.fixed {
				padding-top: 0;
				background: transparent;
		}
		#mobile-head {
				display: block;
				background: #fff;
				width: 100%;
				height: 66px;
				z-index: 999;
				position: relative;
				text-align: left;
				padding: 10px 20px;
				box-sizing: border-box;
		}
		#top-head.fixed .logo, #top-head .logo {
				position: absolute;
				left: 13px;
				top: 13px;
				color: #333;
				font-size: 26px;
		}
		#global-nav {
				position: absolute;
				/* 開いてないときは画面外に配置 */
				top: -500px;
				background: #333;
				width: 100%;
				text-align: center;
				padding: 10px 0;
				-webkit-transition: .5s ease-in-out;
				-moz-transition: .5s ease-in-out;
				transition: .5s ease-in-out;
		}
		#global-nav ul {
				list-style: none;
				position: static;
				right: 0;
				bottom: 0;
				font-size: 14px;
		}
		#global-nav ul li {
				float: none;
				position: static;
		}
		#top-head #global-nav ul li a, #top-head.fixed #global-nav ul li a {
				width: 100%;
				display: block;
				color: #fff;
				padding: 18px 0;
		}
		#nav-toggle {
				display: block;
		}
		/* #nav-toggle 切り替えアニメーション */
		.drawer-open #nav-toggle span:nth-child(1) {
				top: 11px;
				-webkit-transform: rotate(315deg);
				-moz-transform: rotate(315deg);
				transform: rotate(315deg);
		}
		.drawer-open #nav-toggle span:nth-child(2) {
				width: 0;
				left: 50%;
		}
		.drawer-open #nav-toggle span:nth-child(3) {
				top: 11px;
				-webkit-transform: rotate(-315deg);
				-moz-transform: rotate(-315deg);
				transform: rotate(-315deg);
		}
		/* #global-nav スライドアニメーション */
		.drawer-open #global-nav {
				/* #global-nav top + #mobile-head height */
				-moz-transform: translateY(556px);
				-webkit-transform: translateY(556px);
				transform: translateY(556px);
		}
		.drawer-open #nav-toggle span {
				background: #fff;
		}
		#mobile-head {
				padding: 0;
		}
		#logo {
				width: 230px;
				min-width: inherit;
				padding: 15px 0 0 15px;
				margin: 0;
		}
		#logo img {
				height: auto;
				width: auto;
		}
		.drawer-hamburger {
				z-index: 9998;
				padding: 20px;
		}
		.drawer-overlay {
				z-index: 9997;
		}
		.drawer-nav {
				z-index: 9999;
		}
		.drawer-menu li {
				padding: 0;
				position: relative;
		}
		.navbar-default {
				background: #fff;
		}
		.navbar-header {
				text-align: center;
				float: none;
		}
		.navbar-brand {}
		.navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
				margin: 0;
		}
		nav.drawer-nav {
				background-color: #222;
				padding-top: 60px;
				z-index: 998;
		}
		nav.drawer-nav a {
				position: relative;
				display: block;
				margin: 0;
				padding: 18px 20px;
				line-height: 1.6;
				overflow: hidden;
				text-decoration: none;
				color: #fff;
				font-size: 13px;
				-webkit-box-sizing: border-box;
				box-sizing: border-box;
				text-align: left;
				border-bottom: 1px solid #444444;
		}
		nav.drawer-nav a.nolink {
				pointer-events: none;
		}
		.drawer-open #top-head {
				background-color: #000;
		}
		.drawer-open .inner {}
		.drawer-menu .child_menu_button {
				display: block;
				position: absolute;
				text-align: center;
				width: 55px;
				height: 55px;
				right: 0px;
				top: 1px;
				z-index: 9;
				cursor: pointer;
		}
		.drawer-menu .child_menu_button .icon:before {
				content: url("../../../img/common/menu_icon_open.png");
				color: #fff;
				text-align: center;
				display: block;
				font-size: 12px;
				width: 12px;
				height: 12px;
				line-height: 12px;
				position: absolute;
				right: 22px;
				top: 25px;
		}
		.drawer-menu .child_menu_button.open .icon:before {
				content: url("../../../img/common/menu_icon_close.png");
		}
		.drawer-dropdown .drawer-dropdown-menu {
				background-color: #222;
		}
		.drawer-dropdown .drawer-dropdown-menu li a {
				padding-left: 40px;
				background-color: #333;
		}
		.drawer--top.drawer-open .drawer-nav {
				top: 0;
				overflow: auto;
				-webkit-overflow-scrolling: touch;
		}
		.drawer--left.drawer-open .drawer-nav, .drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
				left: 0;
				overflow: auto;
				-webkit-overflow-scrolling: touch;
		}
		.drawer--right.drawer-open .drawer-nav, .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
				right: 0;
				overflow: auto;
				-webkit-overflow-scrolling: touch;
		}
		.drawer-menu {
				margin: 0;
				padding: 0;
				list-style: none;
				height: calc(100% + 280px);
				overflow: scroll;
				-webkit-overflow-scrolling: touch;
		}
		/* iOS フォーム文字拡大問題の対策 */
		input[type="text"], input[type="email"], textarea {
				box-sizing: border-box;
				width: 100%;
				font-size: 16px;
			padding: 5px;
		}
		select {
				box-sizing: border-box;
				width: 100%;
				font-size: 16px;
		}
	
/* ここからレスポンシブ化 */
	*,html,body {
    box-sizing: border-box;
	}
#page {
    width: auto;
}	
	#head div,
	#navi{
		display: none;
	}	
#head {
	display: none;
    padding: 5px 20px;
    min-height: 74px;
}	
#mobile-head {
    width: auto;
    background: url(../../../img/common/head-back.png) repeat-x bottom,#fff;
    padding: 12px 15px;
    min-height: 74px;
}
#logo {
    width: auto;
    min-width: inherit;
    padding: 0;
    margin: 0;
}	
div p#mainimg {
    background: url(../../../img/top/main-img-sp.jpg) no-repeat center top;
    height: 212px;
    background-size: cover;
}	
#index {
    margin: 15px;
    min-height:inherit;
}	
#index li#indexContact a,
	#index li#indexCase a,
	#index li#indexCost a {
    background-position: top;
    background-repeat: no-repeat;
		width: auto;
    height: auto;
	min-height: 60px;
		display: flex;
		justify-content: center;
		align-items: center;
    text-indent: inherit;
    overflow: auto;
	background: url("../../../img/common/top_contact_bg.gif") repeat-x top center,#fff;
		text-align: center;
}
	#index {
		display: flex;
		justify-content: flex-start;
		flex-wrap: nowrap;
	}
	#index li {
		width: calc( 100% / 3 );
	}

	#index li#indexContact a {
				border-left: 1px solid #CCCCCC;
				border-top: 1px solid #CCCCCC;
				border-bottom: 1px solid #CCCCCC;
		border-radius: 10px 0 0 10px;
	}

	#index li#indexCase a {
				border-left: 1px solid #CCCCCC;
				border-top: 1px solid #CCCCCC;
				border-bottom: 1px solid #CCCCCC;		
	}
		#index li#indexCost a {
				border: 1px solid #CCCCCC;
		border-radius: 0 10px 10px 0;
	}
	#index:after {
		display: none;
	}
#contents {
    float: none;
    width: auto;
    margin: 0 15px;
}
h2#h2Compliments,
	h2#h2business,
.ttl {
	background: url("../../../img/common/h2_bg.jpg") repeat-x left top;
	border: 1px solid #94CB10;
	border-radius: 5px;
	text-indent: inherit;
	color: #fff;
	height: auto;
	min-height: 30px;
	display: flex;
	align-items: center;
	padding: 0 0 0 20px;
	margin-bottom: 20px;
	line-height: 1;
	font-size: 14px;
}	
.top-profile figure {
    display: block;
}	
.top-profile figure img {
    order: 2;
    margin: 0 auto;
    padding: 0;
    display: block;
}
	
	.frame {
    padding: 5px 0 0 0;
    background-size: 100% auto;
}
.frame div {
    background-size: 100% auto;
}	
.frame div div div.gradation {
    padding: 15px 10px;
}
.top-business-inner dd ul li {
		width: calc( (100% - 20px ) / 3 ) !important;
	min-height: 36px;
    margin: 0 10px 10px 0;
	padding: 0 !important;
    border-radius: 5px;
    font-size: 12px;
    box-shadow: 1px 1px 1px 1px rgb(195 226 112 / 50%);
    line-height: 1.5;
    display: flex;
    justify-content: center;
    align-items: center;
}	
.top-business-inner dd ul li:nth-child(5n) {
	margin-right: 10px;
	}
	.top-business-inner dd ul li:nth-child(3n) {
	margin-right: 0;
	}
.top-business-inner dt, .top-business-inner dd {
    padding-top: 5px;
}
#info dt {
    padding: 18px 20px 0 20px;
    font-size: 125%;
    background-size: 100% auto;
}	
#info dl {
    min-height: inherit;
    background-size: 100% auto;
	padding-bottom: 10px;
}	
#info dd.tel {
    background: none;
    width: 100%;
    height: auto;
    margin: auto;
    text-indent: inherit;
    text-align: center;
    padding: 10px 15px;
}
.top-business-cnt {
    width: auto;
    height: auto;
    margin-bottom: 30px;
}	
#info {
    margin: 0 0 30px 0;
    padding-bottom: 8px;
    background-size: 100% auto;
}	
#info dd.mailto {
    width: 100%;
	position: relative;
}	
#info dd.mailto a {
    width: 259px;
	height: 77px;
    margin: auto;
}	
#menu {
    float: none;
    width: auto;
    margin: 0 15px;
}	
#menu dd {
    background: url(../../../img/common/menu_bg.png) repeat-x left center;
    margin: 0;
    border-left: 1px solid #CCCCCC;
    border-right: 1px solid #CCCCCC;
}	
	#footer {
		border: none;
	}
#footer ul {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
    margin: 0;
    padding: 10px 15px;
    text-align: center;
    background-color: #eee;
    margin-top: 30px;
}	
#footer ul br {
	display: none;
	}
	#footer ul li {
		width: 50%;
	display: block;
	text-align: left;
	margin-bottom: 5px;
	}
#footer ul li a {
	display: block;
	padding: 5px;
	}
	#footer ul li:first-child {
		border-left: 1px solid #666;
		padding: 0 5px;
	}

	#footer ul li:first-child a {
	}
#footer p {
    background: url(../img/common/copyright.png) repeat-x bottom;
    padding: 5px 15px;
    margin: 0;
    height: inherit;
    text-align: center;
    line-height: 1.5;
    border-top: 1px solid #EEEEEE;
    font-size: 10px;
}	
#menu1 dt,
#menu2 dt {
    background-image: url(../../../img/common/menu-tit1-sp.png);
    height: 34px;
    background-size: 100% auto;
}	
#menu2 dt {
    background-image: url(../../../img/common/menu-tit2-sp.png);
}	
/* セカンド以降 */
.sec-head-ttl {
    width: auto;
    height: auto;
    margin: 89px 15px 0 15px;
}
h2 {
    height: 64px;
    background-size: 100% auto;
}	
#pageNavi {
    background: none;
    height: auto;
    margin: 10px 0 20px 0;
    display: flex;
    justify-content: flex-start;
    border: 2px solid #E8E8E8;
}	
#contents p {
	font-size: 14px;
	line-height: 1.8;
}	
#accessionTxt p {
    margin: 5px 0 20px 0;
}	
	#contents p:first-child {
		margin-top: 0;
	}
#pageNavi li {
    width: auto;
    height: auto;
	line-height: normal;
    float: none;
padding: 0 0 0 10px;
    margin: 0 0 0 10px;	
}	
#pageNavi li a {
    line-height: 1.8;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    padding: 5px;
    font-size: 14px;
}
#contents .frame .gradation ol li {
    padding: 0;
    margin-bottom: 0;
}	
.frame div div {
    padding: 0 10px 10px 10px;
    background-size: 100% auto;
}	
#contents .frame .gradation li {
    float: none;
    width: auto;
    margin-right: 5px;
    padding: 2px 0 2px 15px;
}	
#contents h4, #contents .frame .gradation h5 {
    margin: 0;
}	
#contents .frame .gradation ul {
    padding: 10px 0 0 0;
    min-height: 1px;
}	
	#contents .frame .gradation #vender,
	#contents .frame .gradation #purchaser,
	#contents .frame .gradation #presents,
	#contents .frame .gradation #presented{
    margin-top: 15px;
}
#contents #present1 {
    background-image: none;
}
#contents #present1,
#contents #present2 {
	background-image: none;
	width: auto;
    height: auto;
    text-indent: inherit;
	margin: 0 0 5px 15px;
	color: orange;
	font-weight: bold;
	font-size: 16px;
}	
	.ol-list {
		margin-left: 20px;
	}
	.ol-list li {
		list-style: decimal;
	}	
	#contents .frame .gradation p {
		margin-top: 15px;
		margin-left: 0;
	}
	.frameTable table {
		
	}	
	.frameTable table th,
	.frameTable table td {
		display: block;
	}
.frameTable td {
    width: auto;
}	
.gmap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}

.gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#contents th {
    width: auto;
}	
#contents .textfield2,
	#contents .textfield4,
	#contents .textfield5{
    width: 100%;
		max-width: 90%;
}	
#contents .form {
    width: auto;
}	
#contents select {
    width: auto;
}	
.tel-tap {
    display: block;
    position: fixed;
    right: 65px;
    top: 16px;
    width: 34px;
    height: 34px;
    z-index: 998;
}	
h3#accession {
    background-size: 170% auto;
}	
#contents .merit-tbl table th,
#contents .merit-tbl table td {
		width: auto;
	}	
	.sp-block {
		display: block;
	}
	.sp-none {
		display: none !important;
	}	
	
}