@charset "utf-8";

/* common
****************************************************/

	*{ margin:0; padding:0; word-break:break-all; box-sizing:border-box; }
	body{ font-size:19px; line-height:180%; color:#000; font-family:"A-OTF 新丸ゴ Pro", 'ヒラギノ丸ゴ ProN', 'Hiragino Maru Gothic ProN'; }
	img{ border:none; font-size:0; vertical-align:bottom; }
	ul{ list-style-type:none; }
	a{ text-decoration:none; color:#000; }
	a:hover{ text-decoration:underline; }
	a:hover img{ opacity: 0.8; }
	h1{ border-bottom:2px solid #1d22a4; font-weight:normal; }
	address{ font-style:normal; }

/* Flexbox
****************************************************/
.d-flex { display: flex; }
.fd-column { flex-direction: column; }
.jc-between { justify-content: space-between; }
.ai-center { align-items: center; }
@media screen and (min-width: 600px) {
  .pc_d-flex { display: flex; }
  .pc_fw-wrap { flex-wrap: wrap; }
  .pc_jc-between { justify-content: space-between; }
  .pc_f-gap30px { gap: 30px; }
}

/* margin
****************************************************/

	.mt10, .mt10ul li{ margin-top:10px; }
	.mt20, .mt20ul li{ margin-top:20px; }
	.mt30, .mt30ul li{ margin-top:30px; }
	.mt50{ margin-top:50px; }
	.mt75{ margin-top:75px; }
	.mt100{ margin-top:100px; }
	.mt-50{ margin-top:-50px; }
	.mb50{ margin-bottom:50px; }
	.mb75{ margin-bottom:75px; }

/* text-align
****************************************************/

	.tar{ text-align:right; }
	.tac{ text-align:center; }
	.ti1{ text-indent:1em; }
	.ti2{ text-indent:-1em; padding-left:1em; }
	.ti3, .ti3ul li{ text-indent:-1.4em; padding-left:1.4em; }
	.ti5{ text-indent:-5em; padding-left:5em; }

/* color
****************************************************/
	
	.col_red{ color:red; }
	.col_white{ color:white; }
	.col_1, .col1ul li:before, .col1icon:before{ color:#1d22a4; }
	.col_2, .col2ul li:before, .col2icon:before{ color:#2fb5ed; }
	.col_3, .col3ul li:before, .col3icon:before{ color:#e6faff; }
	.col_4, .col4ul li:before, .col4icon:before{ color:#f55064; }
	.col_5, .col5ul li:before, .col5icon:before{ color:#b2b2b2; }
	.col_6, .col6ul li:before, .col6icon:before{ color:#000000; }

/* background
****************************************************/
	
	/* color */
	.bg1col{ background-color:#e6faff; }

/* icon
****************************************************/

	.icon_1:before, .icon1ul li:before, .icon1dl dt:before{ content:"▶ "; }
	.icon_2:before, .icon2ul li:before, .icon2dl dt:before{ content:"● "; }
	.icon_3:before, .icon3ul li:before, .icon3dl dt:before{ content:"◆ "; }
	.icon_4:before, .icon4ul li:before, .icon4dl dt:before{ content:"■ "; }
	.icon_5:before, .icon5ul li:before, .icon5dl dt:before{ content:"▲ "; }
	.icon_6:before, .icon6ul li:before, .icon6dl dt:before{ content:"＞ "; }
	.icon_7:before, .icon7ul li:before, .icon7dl dt:before{ content:"※ "; }

/* font-size
****************************************************/
	
	.fs_s{ font-size:small; }
	.fs14{ font-size:14px; }
	.fs15{ font-size:15px; }
	.fs16{ font-size:16px; }
	.fs17{ font-size:17px; }
	.fs18{ font-size:18px; }
	.fs19{ font-size:19px; }
	.fs20{ font-size:20px; }
	.fs24{ font-size:24px; }

/* page title
****************************************************/

	.pp1ttl{ text-align:center; }

 /* list-style
****************************************************/

	.ls_disc{ list-style:disc; margin-left:1em; }

/* border
****************************************************/
	
	.bor1{ border: solid #1d22a4; padding:10px; text-align:center;}

/* border-radius
****************************************************/

	.br05{ border-radius:5px; -webkit-border-radius:5px; -moz-border-radius:5px; }
	.br10, .br10ul li{ border-radius:10px; -webkit-border-radius:10px; -moz-border-radius:10px; }
	.br15{ border-radius:15px; -webkit-border-radius:15px; -moz-border-radius:15px; }
	.br25, .br25ul li, .br25a a{ border-radius:25px; -webkit-border-radius:25px; -moz-border-radius:25px; }
	.br50{ border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; }
	
/* headline
****************************************************/
	
	.hl1{ font-size:28px; text-align:center; width:100%; position:relative; display:inline-block; line-height:18px; color:#000; letter-spacing:.2em; }
	.hl1:before{
		content:'';
		position:absolute;
		left:50%;
		bottom:-15px;
		display:inline-block;
		width: 60px;
		height:1px;
		-moz-transform:translateX(-50%);
		-webkit-transform:translateX(-50%);
		-ms-transform:translateX(-50%);
		transform:translateX(-50%);
		background-color:black;
	}
	
	
	/* content
****************************************************/
	
	/* section */
	.section{ padding:100px 0 80px; }
	/* notice */
	#notice{ height:200px; overflow:auto; }
	#notice li{}
	#notice::-webkit-scrollbar {
		all:unset;
		width:6px;
		background:transparent;
	}
	
	#notice::-webkit-scrollbar-track {
		all:unset;
		-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2);
		background: transparent;
	}
	
	#notice::-webkit-scrollbar-thumb {
		all:unset;
		background:#1d22a4;
		-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2);
		border-radius: 8px;
	}
	
	#notice::-webkit-scrollbar-thumb:hover {
		-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
		background: transparent;
	}
	/* greeting */
	#greeting .sec1 h3{ font-size:28px; }
	#greeting .sec2 .fl, #greeting .sec2 .fr{ border:1px solid #1d22a4; background:url(images/com1bg.png) no-repeat left top; padding:30px 20px 15px; }
	#greeting .sec2 h3{ border-bottom:1px solid #1d22a4; text-align:center; }
	#greeting .ff{ font-family:"A-OTF 新丸ゴ Pro", 'ヒラギノ丸ゴ ProN', 'Hiragino Maru Gothic ProN', Meiryo; }
	/* medical */
	#medical .sec3 .fl, #medical .sec3 .fr{ margin-top:50px; }
	#medical .sec2 h3, #medical .sec3 h3{ border-bottom:1px solid #1d22a4; color:#1d22a4; margin-bottom:20px; }
	/* guide */
	#guide .sec1 .box{ border:1px solid #1d22a4; background:url(images/com1bg.png) no-repeat left top; padding:40px 25px 10px; }
	#guide .sec1 h3{ border-bottom:1px solid #1d22a4; margin-bottom:20px; }
	#guide .sec2 .box{ border:1px solid #1d22a4; background:url(images/com1bg.png) no-repeat left top; padding:0 15px; }
	#guide .sec2 h3{ border-bottom:1px solid #1d22a4; text-align:center; }

/* symptom
****************************************************/
	
	/* common */
	#symptom dd a:before, #symptom2 li a:before, #symptom3 .back:before{ content:"▶"; font-size:14px; margin-right:5px; color:#1d22a4; }
	#symptom dd a:hover:before, #symptom2 li a:hover:before, #symptom3 .back:hover:before{ color:#f55064; text-decoration:none; }
	/* symptom */
	#symptom{ font-size:16px; }
	#symptom dl{ border:1px solid #1d22a4; }
	#symptom dt{ border-bottom:3px solid #1d22a4; padding:10px 20px; font-weight:bold; text-align:center; background:url(images/nav1bg.png) no-repeat center bottom; }
	#symptom dd{ padding:10px 20px 0; line-height:150%; }
	#symptom dd a{ display:block; margin-top:1em; text-align:right; }
	/* symptom2 */
	#symptom2 p{ margin-top:50px; }
	#symptom2 ul{ border:1px solid #1d22a4; }
	/* symptom3 */
	#symptom3 h4{ color:#1d22a4; }
	#symptom3 dt{ font-weight:bold; margin-top:1em; }
	#symptom3 dt:before{ content:"【"; margin-right:5px; }
	#symptom3 dt:after{ content:"】"; margin-left:5px; }
	#symptom3 .back{ padding-top:1em; }
	#symptom3 .outline{ border:1px solid #1d22a4; margin-top:50px; }

/* disease
****************************************************/

	#disease dt{ border-bottom:4px solid #1d22a4; padding:10px 1em 0; margin-top:2em; background-color:#e6faff; }
	#disease dd{ padding-top:1em; }
	#disease li a{ border:1px solid #1d22a4; position:relative; display:inline-block; padding:50px 0 70px; text-align:center; }
	#disease li a:hover{ text-decoration:none; background-color:#1d22a4; color:#fff; }

/* about
****************************************************/

	#about dt{ color:#1d22a4; margin-top:50px; }
	#about dt:first-child{ margin-top:0; }
	#about dd{ margin:15px; }
	
/* sitemap
****************************************************/

	#sitemap li{ margin-top:15px; }
	#sitemap .parent{ margin-top:-15px; }
	#sitemap .parent li:before{ content:"■"; color:#1d22a4; margin-right:.5em; }
	#sitemap .child li:before{ content:"";  margin-right:0; }
	#sitemap .child a{ text-decoration:underline; }
	#sitemap .child a:hover{ text-decoration:none; }

/* footer
****************************************************/

	footer .sec1{ background-color:#e6faff; }
	address{ font-size:12px; text-align:center; padding:5px 0; color:#fff; background-color:#1d22a4; }

/* 404
****************************************************/

	.error404{ text-align:center; color:red; padding:100px 0; }

/* pagetop
****************************************************/

	.pagetop {
		display:none;
		position:fixed;
		bottom:40px;
		right:10px;
		line-height:0;
	}
	.pagetop a{
		display:block;
		padding:5px;
		background-color:#1d22a4;
		text-align:center;
		color:#ffffff;
		text-decoration:none;
		margin-bottom:5px;
		border-radius:5px;
		-webkit-border-radius:5px;
		-moz-border-radius:5px;
		opacity:.5;
	}
	.pagetop a:hover, .pagetop a:hover img{ opacity:1.0; }

/* vitreous
****************************************************/

#vitreous { line-height: 160%; }
#vitreous h3{ border-bottom:1px solid #1d22a4; color:#1d22a4; margin-bottom:20px;/*border-bottom:4px solid #2fb5ed; padding:5px 1em; background-color:#1d22a4; color:#ffffff;*/ }





/**************************************************

	600px over

**************************************************/
@media only screen and (min-width:600px), print{
	
	/* common
	****************************************************/
	
		.wrap{ margin-left:auto; margin-right:auto; width:1000px; }
		.wrap1300{ margin-left:auto; margin-right:auto; width:1300px; }
		.sp{ display:none!important; }
	
	/* width
	****************************************************/
		
		.w50p, .w50p_ul li{ width:50%; }
		.w480{ width:480px; }
		.w580{ width:580px; }
		.w650{ width:650px; }
	
	/* margin
	****************************************************/
	
		.ml30{ margin-left:30px; }
		.mr20{ margin-right:20px; }
		.mr50{ margin-right:50px; }
		.mlr50{ margin-left:50px; margin-right:50px; }
		
	/* padding
	****************************************************/
	
		.pb50{ padding-bottom:50px; }
		.p20no40{ padding:20px 40px; }
	
	/* overflow:hidden;
	****************************************************/
	
		.oh, .oh_ul{ overflow:hidden; }
		.oh .fl, .oh_ul li{ float:left; }
		.oh .fr{ float:right; }
		.oh .cb{ clear:both; }

	/* column
	****************************************************/
	
		.clm{ letter-spacing:-0.4em; }
		.clm li{ display:inline-block; letter-spacing:normal; vertical-align:top; }
	
	/* header
	****************************************************/
		
		h1{ font-size:14px; padding:0 .5em; }
		header{ position:relative; height:110px; }
		header p{ position:absolute; }
		header .logo{ left:0; top:30px; }
		header .tel{ left:400px; top:40px; }
		header .adr{ right:0; top:-40px; }

	/* nav
	****************************************************/
		
		nav{ font-weight:bold; width:100%; font-size:16px; border-bottom:4px solid #1d22a4; background-color:#fff; }
		nav ul{ overflow:hidden; background:url(images/nav2bg.png) no-repeat top left; }
		nav li{ float:left; background:url(images/nav2bg.png) no-repeat top right; width:170px; }
		nav li:first-child{ width:150px; }
		nav a{ display:block; text-align:center; line-height:20px; padding:15px 0; }
		nav a:hover, nav .on{ background:url(images/nav1bg.png) no-repeat center bottom; text-decoration:none; }
		.fixed{ position:fixed; top:0px; left:0px; z-index:9999; }
		.space{ margin-top:80px; }

	/* page title
	****************************************************/
	
		.pp1ttl{ line-height:30px; padding:60px 0 60px; }

	/* content
	****************************************************/
		
		/* common */
		.section{ padding:80px 0; }
		/* notice */
		#notice{ border-left:1px solid #b2b2b2; width:850px; height:200px; padding-left:20px; }
		/* index */
		#index .sec1 .fl{ padding-top:75px; }
		#index .sec2 .fl{ padding:50px 0 0 150px; }
		#index .sec3 .box1 li{ width:300px; margin-right:50px; }
		#index .sec3 .box1 li:nth-child(3n){ margin-right:0; }
		#index .sec5 .fl{ padding-top:40px; }
		#index .sec5 .fr{ border-left:1px solid #b2b2b2; width:850px; padding:25px 75px; }
		/* greeting */
		#greeting .sec2 .fl, #greeting .sec2 .fr{ width:480px; height:350px; }
	/* medical */
		#medical .sec2 .box{ width:680px; }
		#medical .sec3 .fl, #medical .sec3 .fr{ width:480px; height:300px; }
		#medical .sec3 .fl.--h400px , #medical .sec3 .fr.--h400px { height:400px; }
		/* guide */
		#guide .sec1 .box{ width:480px; height:350px; }
/*		#guide .sec2 .box{ width:300px; height:300px; }*/
		#guide .sec2 .box{ width:300px; height:340px; }
		#guide .sec2 .oh{ margin-top:50px; }
		#guide .sec2 .fl, #guide .sec2 .fr{ width:300px; }		
		#guide .sec2 .fl{ margin-right:50px; }		
		#guide .sec2 h3{ font-size:20px; text-align:center; line-height:125%; height:70px; display:table-cell; vertical-align:middle; width:300px; }

	/* symptom
	****************************************************/
	
		#symptom2 .wrap, #symptom3 .wrap{ padding:40px; }
		/* symptom */
		#symptom li{ width:300px; margin:20px 50px 20px 0; }
		#symptom li:nth-child(3n){ margin-right:0; }
		#symptom dt{ font-size:20px; }
		#symptom dd{ height:130px; }
		/* symptom2 */
		#symptom2 dt, #symptom3 h3{ font-size:26px; }
		#symptom2 dd{ padding:10px; }
		#symptom2 ul{ margin-top:40px; padding:20px 0 40px 100px; overflow:hidden; }
		#symptom2 li{ float:left; width:31%; margin-left:1%; margin-top:20px; }
		/* symptom3 */
		#symptom3 h4{ font-size:20px; margin-top:40px; }
		#symptom3 .des{ margin-top:1em; }
		#symptom3 .back{ margin:0 1em; }
		#symptom3 .outline{ padding:0 30px 40px; }
		#symptom2 .adj, #symptom3 .adj{ margin-left:50px; margin-right:50px; }

	/* disease
	****************************************************/

		/* disease */
		#disease h3{ font-size:28px; }
		#disease dl{ padding:40px 0; }
		#disease li{ margin:20px 50px 20px 0; }
		#disease li:nth-child(3n){ margin-right:0; }
		#disease li a{ width:300px; height:90px; line-height:20px; }
		#disease li a:before{
			content:'';
			position:absolute;
			left:50%;
			bottom:40px;
			display:inline-block;
			width: 120px;
			height:1px;
			-moz-transform:translateX(-50%);
			-webkit-transform:translateX(-50%);
			-ms-transform:translateX(-50%);
			transform:translateX(-50%);
			background-color:#1d22a4;
		}
		#disease li a:hover:before{ background-color:#fff; }
		
/* vitreous
****************************************************/

#vitreous .ht{ width: 680px; margin-left: 160px; }


	/* sitemap
	****************************************************/
	
		#sitemap{ padding-left:100px; }
		#sitemap .child{ margin-left:1.5em; overflow:hidden; }
		#sitemap .child li{ float:left; width:33%; }
	
	/* bnr_list
	****************************************************/
	
		.bnr1list{ padding:20px 0; }
		.bnr1list li{ margin:0 15px; }
		
	/* footer
	****************************************************/
	
		footer{ line-height:150%; font-size:17px; }
		footer .sec1{ padding:50px 0; }
		footer .time{ position:relative; height:60px; }
		footer .time .ads{ position:absolute; top:0; right:0; }
		footer .sec1 .fl, footer .sec1 .fr{ width:480; }
		footer .sec2{ padding:10px 0; text-align:center; font-size:16px; }
		footer .sec2 li{ margin:0 5px; }

	/* gmap
	****************************************************/
	
		.gmap{
			width:100%;
			position: relative;
			padding-bottom:400px;
			height: 0;
			overflow: hidden;
		}
		.gmap iframe, .gmap object, .gmap embed{
			position: absolute;
			top:0;
			left:0;
			width:100%;
			height:400px;
		}

	/* anc_adj
	****************************************************/
	
		.anc_adj{ margin-top:-85px; padding-top:85px; }

	/* table
	****************************************************/
	
		.tbl1 th{ width:35%; height:70px; }

	/* page anchor
	****************************************************/
		
		#pa1, #pa2, #pa3, #pa4, #pa5, #pa6, #pa7, #pa8, #pa9, #pa10, #pa11, #pa12, #pa13, #pa14, #index
		{ padding-top:85px; margin-top:-85px; }

}





/**************************************************

	600px under

**************************************************/
@media only screen and (max-width:599px){
	
	/* common
	****************************************************/
	
		body{ font-size:16px; }
		.wrap, .wrap800, .section{ padding:15px; line-height:1.5em; }
		img{ max-width:100%; height:auto; }
		.pc{ display:none!important; }
		.sp_tac{ text-align:center; }
	
	/* margin
	****************************************************/
	
		.mt75, .mt100{ margin-top:50px; }
	
	/* padding
	****************************************************/
		
		.p20no40{ padding:10px 20px; }
	
	/* padding
	****************************************************/
		
		ol{ margin-left:30px; }
		
	/* btn
	****************************************************/
		
		.btn1tmp{ display:block; }
	
	/* headline
	****************************************************/
		
		.hl1, .hl2{ font-size:24px; background-size:contain; }
	/* header
	****************************************************/
		
		h1{ font-size:10px; text-align:center; }
		header{ text-align:center; }
		header .tel, header .adr{ margin-top:15px; }
		header .adr{ background-color:#2fb5ed; text-align:left; color:#fff; padding:10px 15px; }

	/* nav
	****************************************************/
	
		nav{ text-align:center; }
		nav ul{ margin-bottom:10px; padding:0 0 0 0; letter-spacing: -0.4em; }
		nav li{
			display:inline-table;
			width:31%;
			margin:5px 1% 0 1%;
			vertical-align:top;
			letter-spacing:normal;
			line-height:20px;
			font-size:12px;
		}
		nav li a{
			height:50px;
			display:table-cell;
			vertical-align:middle;
			color:#fff;
			text-align:center;
			border:1px solid #1d22a4;
			background-color:#1d22a4;
			border-radius:10px;
			-webkit-border-radius:10px; /* Safari,Google Chrome */
			-moz-border-radius:10px;	/* Firefox */
		}
		nav li a:hover{ background-color:#fff; color:#1d22a4; text-decoration:none; }
	
	/* page title
	****************************************************/
	
		.pp1ttl{ padding:15px 0; }

	/* content
	****************************************************/
		
		/* common */
		.section{ padding-top:30px; padding-bottom:30px; }
		/* notice */		
		#notice li{ padding-right:10px; }
		/* index */
		#index .sec1 .fr, #index .sec4 .fr, #index .sec5 .fr{ margin-top:20px; }
		#index .sec2 .fl{ padding:30px 0; }
		#index .sec4 h2, #greeting .sec1 h3{ line-height:150%; }
		/* greeting */
		#greeting .sec1 .fr{ margin-top:30px; }
		/* medical */

		/* guide */
		#guide .sec1 .box{ margin-top:20px; }
		#guide .sec2 .box{ padding:20px 15px; }

	/* symptom
	****************************************************/

		#symptom2 .wrap, #symptom3 .wrap{ padding:20px; }
		/* symptom */
		#symptom ul{ margin-bottom:20px; }
		#symptom li{ margin-top:30px; }
		#symptom dd{ padding-bottom:10px; }
		/* symptom2 */
		#symptom2 dd{ margin-top:1em; }
		#symptom2 ul{ margin-top:30px; padding:10px 0 20px 15px; }
		#symptom2 li{ margin-top:10px; }
		/* symptom3 */
		#symptom3 h3{}
		#symptom3 h4{ font-size:20px; margin-top:15px; }
		#symptom3 .des, #symptom3 dl, #symptom3 .back{ margin-top:10px; }
		#symptom3 .outline{ padding:0 15px 15px; }

	/* disease
	****************************************************/
	
		/* disease */
		#disease ul{ margin-top:30px; padding:0 0 20px; }
		#disease li{ margin-top:20px; }
		#disease li a{ display:block; border:1px solid #2c4f91; padding:15px 25px; }
		#disease li a:hover{ background-color:#2c4f91; color:#fff; }

	/* footer
	****************************************************/
	
		footer .sec1 .logo{ text-align:center; }
		footer .sec1 .fr{ margin-top:20px; padding-bottom:10px; }
		footer .sec1 .time .ads{ margin-top:10px; }
		footer .sec2{ padding:15px; }

	/* pagetop
	****************************************************/
	
		.pagetop { bottom:40px; }

	/* gmap
	****************************************************/
	
		.gmap{
			position: relative;
			padding-bottom: 56.25%;
			padding-top:30px;
			height: 0;
			overflow: hidden;
		}
		.gmap iframe, .gmap object, .gmap embed{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

}