
.sp_only {display: none;}
.sp_none {display: inline;}


a:hover{
	opacity:70%;
	transition: 0.3s;
}

body {
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
}

/*h2,h3 {
	font-family:Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}*/

h2 {
	font-size: 30px!important;
    margin: 60px auto!important;
    text-align: center;
    color: #fff;
    background: #482c17;
    padding: 20px;
    border-radius: 6px;
    font-weight: bold!important;
}

h3 {
	font-size: 24px!important;
	margin:30px auto 10px auto!important;
	/*text-align: center;*/
	color:#257642;
	font-weight: bold!important;
}

/* ヘッダー */

#header_wrap {
	width: 100%;
	/*background: linear-gradient(#d1c2b8, #ece2da);*/
	background:#f1efee;
	height: 120px;
	border-bottom: 3px solid #000;
}

#header {
	/* width: 1200px; */
	max-width: 100%;
	
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding: 10px 0 20px 0;
	height: 120px;
	width: 1400px;
}

#header_wrap.m_fixed {
  left: 0;
  position: fixed;
  top: 0;
  z-index: 100;
}

.logo {
	display: flex;
	font-size: 20px;
	color: #482c17;
	padding-left: 30px;
}

.logo h1 img {
	width: 86px;
}

.logo h1 {
	margin-right: 30px;
}

.logo p {
	font-size:24px;
	margin-top:14px;
}

.logo span {
	font-size: 18px;
	display: block;
	margin-top: 6px;
	margin-left: 2px;
}

#gmenu {
	color: #482c17;
	display: flex;
	margin-top: 60px;
	margin-right: 20px;
	position: relative;
}

#gmenu li {
	margin-right: 20px;
}

#gmenu a{font-size:120%;}
#gmenu a:hover{transition: 0.3s;}

#gmenu .sub_gmenu {
	display: none;
	top: 30px;
	left: 0;
	position: absolute;
	width:100%;
	padding:20px 0;
	z-index: 120
}

#gmenu .sub_gmenu li {
	margin-bottom:12px;
	font-size:12px;
	
	}

#gmenu .sub_gmenu li:hover {
	opacity: 70%;
}

#gmenu .sub_gmenu li a{
	display: block;
	padding:14px;
	background:#000;
	color:#fff;
	border-radius: 10px;
	}

/* コンテンツ */

#contents {
	/* width: 1200px; */
	margin: 0 auto;
	color: #151515;
	background: #fff;
}

#img_slider {
	width: 100%;
	max-width: 1400px;
	margin:10px auto;
}

#img_slider img {
	margin:0 auto;
}

/*  */

#line_prescription_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#line_prescription {
	width: 1200px;
	margin:100px auto;
	text-align:center;
	font-size: 18px;
    text-align: center;
    line-height: 1.6;
}

#line_img {
	display: flex;
	width: 1200px;
	justify-content:space-between;
	margin-top:40px;
	margin-bottom:40px;
}

#line_img li {
	width: 350px;
}

#line_img li img {
	width: 100%;
}


/* 店舗紹介 */

#about_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#about {
	width: 1200px;
	margin:100px auto;
	
}

#about_flex {
	display: flex;
	justify-content:space-between;
	font-size: 18px;
	}

#about #about_pict {
	width: 560px; 
}

#about #about_pict img {
	width: 480px;
}

#about #about_table {
	width: 580px;
}

#about #about_table td {
    vertical-align: inherit;
}

#about #about_table td:first-child {
width: 22%;
}

#tenpo_photos {
	display: flex;
	width: 1200px;
	justify-content:space-between;
	margin-top:40px;
}

#tenpo_photos li {
	width: 280px;
}

#tenpo_photos li img {
	width: 100%;
}

#about #tenpo_photos_sp01,#about #tenpo_photos_sp02 {
	display: none;
} 



/* 代表挨拶 */

#greeting_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#greeting {
	width: 1200px;
	margin:100px auto;
}

#greeting img {
	width: 100%;
	max-width: 1200px;
}

#greeting p {
	line-height: 1.8;
}

/* 医療DXへの取り組みについて */

#about_dx_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#about_dx {
	width: 1200px;
	margin:100px auto;
}

#about_dx img {
	width: 100%;
	max-width: 1200px;
}

#about_dx p {
	line-height: 1.8;
}

/* 汎用コンテンツ */

#other_contents_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#other_contents {
	width: 1200px;
	margin:100px auto;
	text-align:center;
	font-size: 18px;
    text-align: left;
    line-height: 1.6;
}

#other_contents h4 {
	margin:40px 0 20px 0;
	font-weight: bold;
	font-size:22px;
	text-align: left;
	}

/* フッター */



#footer {
	/* width: 1200px; */
	margin: 0 auto;
}

#contact_wrap {
	padding-top:120px;
	margin-top:-120px;
}

#contact {
	text-align: center;
	background: #482c17;
	color: #fff;
	font-size: 24px;
	line-height: 1.7;
	padding-top: 140px;
    padding-bottom: 90px;
}

#contact p {
	margin-bottom: 56px;
}

#contact a span {
	background: linear-gradient(#FC2F2F, #8E0303);
	padding: 14px 70px;
	border-radius: 10px;
	margin: 0 auto;
}

#footer_link {
	margin: 0 auto;
	background: linear-gradient(#FFFFFF, #DBDBDB);
	color: #444444;
	display: flex;
	justify-content: space-between;
	padding: 42px 40px;
	align-items: baseline;
	justify-content: center;
}

#footer_link li {
	margin-right:30px;
}

#footer_link p {
	font-size: 22px;
}

#footer_link ul {
	font-size: 18px;
	line-height: 1.7;
	margin-top: 20px;
	margin-left: 20px;
}

#footer_link ul li {}

.footer_links {
	border-right: 1px solid #B9B9B9;
	box-shadow: 1px 0 0 rgba(255,255,255,1);
	padding: 0 30px;
}

.footer_links:nth-child(3) {
	border: none;
	box-shadow: none;
}

#copy {
	padding: 60px 0;
	background:#f1efee;
}


/* ------- for Mobile ------- */


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

	.sp_none {display: none;}
	.sp_only {display: inline;}

	h2 {
		border-radius: 0px;
		font-size:24px!important;
		margin: 30px auto!important;
	}

	#header {
		padding: 10px 0;
		width: 100%;
		height: 90px;
	}

	#header_wrap {
		height: 90px;
	}

	.logo {
		font-size: 70%;
		padding-left: 10px;
		width: 100%;
	}

	.logo h1 {
		width: 18%;
		margin-right: 2%;
	}
	.logo h1 img {width: 100%!important;}
	.logo span {
		font-size: 12px;
		margin-top: 2px;
		margin-left: 0;
	}

	.logo p {
    font-size: 22px;
    margin-top: 12px;
    line-height: 1.2;
}

	#contents {
		background: #ECECEC
	}

	#mv img {
		width: 65% !important;
		top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	}

	#line_prescription_wrap {
		margin-top: -40px;
		padding-top: 40px;
	}

	#line_prescription {
		max-width: 100%;
		margin: 10px auto 40px auto;
		padding: 0 10px;
	}

	#line_img {
		flex-direction:column;
		width: 100%;
		align-items:center;
	}

	#line_img li {
		margin-bottom:20px;
	}

	#about_wrap {
		margin-top: -40px;
		padding-top: 40px;
	}

	#about {
		max-width: 100%;
		padding: 0 10px;
		margin: 40px auto;
	}

	#about_flex {
		display: block;
	}

	#about #about_pict {
		width: 100%;
	}

	#about #tenpo_photos {
		display: none;
	}

	#about #tenpo_photos_sp01 {
		display: flex;
		width: 100%;
		margin-top:30px;
	}

	#about #tenpo_photos_sp01 li {
		width: 50%;
	}

	#about #tenpo_photos_sp01 li img {
		width: 100%;
	}

	#about #tenpo_photos_sp02 {
		display: flex;
		width: 100%;
	}

	#about #tenpo_photos_sp02 li {
		width: 50%;
	}

	#about #tenpo_photos_sp02 li img {
		width: 100%;
	}

	#about #about_table {
		width: 100%;
		margin-top:20px;
	}

	#about #about_table td {
		padding: 12px 6px;
	}

	#greeting_wrap {
		margin-top: -40px;
		padding-top: 40px;
	}

	#greeting {
		max-width: 100%;
		padding: 0 10px;
		margin: 40px auto;
	}

	#about_dx_wrap {
		margin-top: -40px;
		padding-top: 40px;
	}

	#about_dx {
		max-width: 100%;
		padding: 0 10px;
		margin: 40px auto;
	}

	#other_contents_wrap {
		margin-top: -70px;
		padding-top: 40px;
	}

	#other_contents {
		max-width: 100%;
		padding: 0 10px;
		margin: 40px auto;
		font-size:14px;
	}

	#other_contents h2 {
		font-size:20px!important;
		padding:20px 0;
	}

	#other_contents h3 {
		font-size:18px!important;
	}

	#other_contents h4 {
		font-size:16px;
	}


	#contact_wrap {
	margin-top: -40px;
		padding-top: 40px;
}

	#contact {
		padding: 118px 0;
	}

	#contact p {
		font-size: 18px;
		margin-bottom: 28px;
	}

	#contact a span {
		background: linear-gradient(#FC2F2F, #8E0303);
		border-radius: 10px;
		margin: 0 auto;
/* 		font-size: 60px; */
	}

	#footer_link {
		color: #fff;
		display: block;
		width: 100%;
		text-align: center;
		padding: 0;
	}

	#footer_link p {
		background: #AA1E1E;
		font-size: 90%;
		border-bottom: 1px solid #fff;
		padding: 14px 0;

	}

	#footer_link ul {
		font-size: 80%;
		margin: 0;
	}

	#footer_link ul li {
		background: #6E6E6E;
		border-bottom: 1px solid #fff;
		padding: 22px 0;
	}

	#footer_link li {
		margin:10px 0;
		color:#444444;
		padding: 14px 0;
		border-bottom: 1px solid #bbb;
	}

	#footer_link li a {
		color:#444444;
		display: block;
	}

	.footer_links {
		border: none;
		box-shadow: none;
		padding: 0;
	}

	#copy {
		padding : 10px 0;
		display: flex;
	}

	/* ハンバーガーメニュー */

	.hamburger {
		display : block;
		position: fixed;
		z-index : 3;
		right : 5%;
		top   : 2%;
		width : 8%;
		height: 18%;
		cursor: pointer;
		text-align: center;
	}

	.hamburger span {
		display : block;
		position: absolute;
		width   : 100%;
		height  : 2% ;
		background : #482c17;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}

	.hamburger span:nth-child(1) {
		top: 0;
	}

	.hamburger span:nth-child(2) {
		top: 8%;
	}

	.hamburger span:nth-child(3) {
		top: 16%;
	}

	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
		top : 8%;
		left: 6%;
		background :#fff;
		-webkit-transform: rotate(-45deg);
		-moz-transform   : rotate(-45deg);
		transform        : rotate(-45deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 8%;
		background :#fff;
		-webkit-transform: rotate(45deg);
		-moz-transform   : rotate(45deg);
		transform        : rotate(45deg);
	}

	nav.globalMenuSp {
		position: fixed;
		z-index : 2;
		top  : 0;
		left : 0;
		color: #fff;
		background: rgba(0,0,0,0.7);
		text-align: center;
		width: 100%;
		opacity: 0;
		transition: opacity .6s ease, visibility .6s ease;
		display: none;
	}

	nav.globalMenuSp ul {
		margin: 0 auto;
		padding: 60px 0;
		width: 100%;
		font-size: 100%;
	}

	nav.globalMenuSp ul li {
		list-style-type: none;
		padding: 0;
		width: 100%;
		transition: .4s all;
	}

	nav.globalMenuSp ul li:last-child {
		padding-bottom: 0;
	}

	nav.globalMenuSp ul li:hover{
		background :#ddd;
	}

	nav.globalMenuSp ul li a {
		display: block;
		color: #fff;
		padding: 1em 0;
		text-decoration :none;
	}

	/* このクラスを、jQueryで付与・削除する */

	nav.globalMenuSp.active {
		opacity: 100;
		display: inline;
	}

	nav .sub_gmenu_sp {
	display: none;
}

nav .sub_gmenu_sp ul {
	padding:10px 0!important;
	        background: rgba(0, 0, 0, 0.8);
	        opacity: 80%;
}

}