@charset "UTF-8";
/* CSS Document */



/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/




	



/* min 801px */
@media screen and (min-width: 801px), print {

	
	
/* menu
--------------------- */
#menu {
	padding-top: 100px;
	background: #fff url(../img/bg01.jpg) no-repeat center -150px;
	background-size: 100%;
}
	#menu .flex {
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
		#menu .flex .box {
			width: 525px;
			margin-right: 50px;
			margin-bottom: 50px;
		}
		#menu .flex .box:nth-child(2n) {
			margin-right: 0;
		}
			#menu .flex .box a {
				display: block;
				background: url(../img/icon_arrow.png) no-repeat 95% 95%;
				transition: 0.3s;
				-webkit−transition: 0.3s;
			}
			#menu .flex .box a:hover {
				background: url(../img/icon_arrow.png) no-repeat 96% 95%;
			}
				#menu .flex .box a .pht {
					overflow: hidden;
				}
					#menu .flex .box a .pht img {
						width: 100%;
						height: auto;
						-moz-transition: -moz-transform 0.2s linear;
						-webkit-transition: -webkit-transform 0.2s linear;
						-o-transition: -o-transform 0.2s linear;
						-ms-transition: -ms-transform 0.2s linear;
						transition: transform 0.2s linear;
					}
					#menu .flex .box a:hover .pht img {
						-webkit-transform: scale(1.05);
						-moz-transform: scale(1.05);
						-o-transform: scale(1.05);
						-ms-transform: scale(1.05);
						transform: scale(1.05);
					}
	
				#menu .flex .box a h3 {
					padding-top: 15px;
					font-size: 18px;
					letter-spacing: 2px;
					text-align: center;
					color: #000;
				}

	
	
/* detail
--------------------- */
#detail {
	padding-top: 100px;
	background: #fff url(../img/bg01.jpg) no-repeat center -150px;
	background-size: 100%;
}
#detail #contents {
	width: 780px;
}
	#detail #contents .title {
		border-top: solid 1px #ddd;
		border-bottom: solid 1px #ddd;
		padding: 25px 0 20px 0;
	}
		#detail #contents .title .cat {
			font-size: 115%;
			line-height: 1;
			letter-spacing: 3px;
			padding-bottom: 7px;
		}
	
		#detail #contents .title h2 {
			font-size: 32px;
			color: #004F9A;
			line-height: 1;
			letter-spacing: 3px;
		}
	
	
	#detail #contents .read {
		padding-top: 30px;
		padding-bottom: 30px;
		position: relative;
	}
		#detail #contents .read p {
			width: 415px;
			letter-spacing: 2px;
			line-height: 30px;
		}
	
		#detail #contents .read .pht {
			width: 280px;
			position: absolute;
			/*top: -55px;*/
			right: 0;
		}
			#detail #contents .read .pht img {
				width: 100%;
				height: auto;
			}
	
	
	#detail #contents .cell {
		padding-top: 35px;
		margin-top: 35px;
		border-top: dashed 1px #ddd;
	}
		#detail #contents .cell h3 {
			font-size: 172%;
			color: #004F9A;
			letter-spacing: 2px;
			line-height: 1.4em;
			margin-bottom: 15px;
		}
		
		#detail #contents .cell h4 {
			font-size: 150%;
			letter-spacing: 2px;
			line-height: 1.4em;
		}
	
		#detail #contents .cell p {
			letter-spacing: 2px;
			line-height: 32px;
		}
			#detail #contents .cell p img {
				width: 280px;
				height: auto;
				padding-left: 20px;
				padding-bottom: 15px;
				float: right;
			}
			#detail #contents .cell div.change img {
				width: 280px;
				height: auto;
				padding-left: 20px;
				padding-bottom: 15px;
				margin-bottom: 15px;
				float: right;
			}
			#detail #contents img.pht_full {
				max-width: 780px;
				height: auto;
			}
	
	
	#detail #contents .btn {
		padding-top: 60px;
	}
	
	
	
	
#detail #localnav {
	width: 240px;
}
	#detail #localnav .tit {
		background: #004F9A;
		text-align: center;
		color: #fff;
		padding: 17px 0;
	}
		#detail #localnav .tit h3 {
			font-size: 14px;
			line-height: 1;
			padding-bottom: 10px;
		}
	    #detail #localnav .tit h4 {
			font-size: 14px;
			line-height: 1;
			padding-bottom: 10px;
		} 
		#detail #localnav .tit p {
			font-size: 115%;
			font-weight: 600;
			line-height: 1;
		}
	
	
	#detail #localnav ul li {
		border-bottom: solid 1px #ddd;
	}
		#detail #localnav ul li a {
			display: block;
			height: 50px;
			line-height: 50px;
			padding-left: 10px;
			transition: 0.3s;
			-webkit−transition: 0.3s;
		}
		#detail #localnav ul li a:hover {
			color: #004F9A;
		}




}








/* max 800px */
@media only screen and (max-width: 800px) {




	
/* menu
--------------------- */
#menu {
	background: #fff url(../img/bg01.jpg) no-repeat right top;
	background-size: 100%;
	padding: 50px 0 0 0;
}
	#menu h2 {
		font-size: 143%;
		color: #25852a;
		position: relative;
		margin-bottom: 10px;
	}
	#menu h2:after {
		content: "";
		width: 100%;
		height: 1px;
		background: #ddd;
		position: absolute;
		top: 20px;
		left: 0;
		z-index: -1;
	}
		#menu h2 span {
			background: #fff;
			padding-right: 15px;
		}
	
	
	#menu .flex {
		display: flex;
		-ms-flex-wrap: wrap;
      flex-wrap: wrap;
	}
		#menu .flex .box {
			width: 49%;
			margin-right: 2%;
			margin-bottom: 30px;
		}
		#menu .flex .box:nth-child(2n) {
			margin-right: 0;
		}
			#menu .flex .box a {
				display: block;
				transition: 0.3s;
				-webkit−transition: 0.3s;
			}
				#menu .flex .box a .pht {
					overflow: hidden;
				}
					#menu .flex .box a .pht img {
						width: 100%;
						height: auto;
					}
	
				#menu .flex .box a h3 {
					padding-top: 10px;
					font-size: 93%;
					letter-spacing: 2px;
					text-align: center;
					color: #000;
				}

	
	
/* detail
--------------------- */
#detail {
	background: #fff url(../img/bg01.jpg) no-repeat right top;
	background-size: 100%;
	padding: 50px 0;
}
#detail .inner {
	padding: 0;
}
#detail #contents {
	padding: 20px 5% 40px 5%;
}
	#detail #contents .title {
		border-top: solid 1px #ddd;
		border-bottom: solid 1px #ddd;
		padding: 25px 0 20px 0;
	}
		#detail #contents .title .cat {
			font-size: 100%;
			line-height: 1;
			padding-bottom: 7px;
		}
	
		#detail #contents .title h2 {
			font-size: 150%;
			color: #004F9A;
			line-height: 1;
		}
	
	
	#detail #contents .read {
		padding-top: 20px;
		position: relative;
	}
		#detail #contents .read p {
			font-size: 93%;
			line-height: 2em;
		}
	
		#detail #contents .read .pht {
			padding-bottom: 15px;
		}
			#detail #contents .read .pht img {
				width: 100%;
				height: auto;
			}
	
	
	#detail #contents .cell {
		padding-top: 25px;
		margin-top: 25px;
		border-top: dashed 1px #ddd;
	}
		#detail #contents .cell h3 {
			font-size: 122%;
			color: #004F9A;
			line-height: 1.4em;
			margin-bottom: 15px;
		}
		#detail #contents .cell h4 {
			font-size: 122%;
			color: #004F9A;
			line-height: 1.4em;
		}
	
	
		#detail #contents .cell p {
			font-size: 93%;
			line-height: 2em;
		}
			#detail #contents .cell p img {
				width: 50%;
				height: auto;
				padding-left: 10px;
				padding-bottom: 15px;
				float: right;
			}
			#detail #contents .cell div.change img {
				width: 100%;
				height: auto;
				padding-left: 0px;
				padding-bottom: 15px;
				margin-bottom: 15px;
				float: none;
			}
			
			#detail #contents img.pht_full {
				width: 100%;
				height: auto;
			}
	
		#detail #contents .bnr img {
			width: 100%;
			max-width: 450px;
			height: auto;
		}
	
	
	#detail #contents .btn {
		padding-top: 40px;
	}
	
	
	
	
#detail #localnav {
}
	#detail #localnav .tit {
		background: #004F9A;
		text-align: center;
		color: #fff;
		padding: 17px 0;
	}
		#detail #localnav .tit h3 {
			font-size: 14px;
			line-height: 1;
			padding-bottom: 10px;
		}
	
		#detail #localnav .tit p {
			font-size: 115%;
			font-weight: 600;
			line-height: 1;
		}
	
	
	#detail #localnav ul li {
		border-bottom: solid 1px #ddd;
	}
		#detail #localnav ul li a {
			display: block;
			height: 50px;
			font-size: 93%;
			line-height: 50px;
			padding-left: 10px;
			background: url(../img/icon_arrow.png) no-repeat 95% center;
		}



}

	



/* min 801px */
@media screen and (min-width: 801px), print {
	
	
	
	
/* trouble
--------------------- */
#trouble {
	width: 100%;
/*	padding: 100px 0 0 0;
	background: #fff url(../img/bg01.jpg) no-repeat center -150px; */
	background-size: 100%;
}
	#trouble h2 {
		font-size: 28px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 25px;
		text-align: left;
	}
	
	
	#trouble ul {
		width: 500px;
	/*	margin: auto; */
	}
		#trouble ul li {
			background: url(../img/icon_check.png) no-repeat left center;
			font-size: 129%;
			padding-left: 35px;
			margin-bottom: 10px;
		}
	
	
	
	
/* what
--------------------- */
#what {
	width: 100%;
	padding: 90px 0 0 0;
}
	#what h2 {
		font-size: 28px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 25px;
		text-align: center;
	}
	
	#what p {
		margin-bottom: 20px;
	}
	
	
	
	
/* concept
--------------------- */
#concept {
	width: 100%;
	padding: 100px 0 0 0;
}
	#concept h2 {
		font-size: 28px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 25px;
		text-align: center;
	}


	#concept .box {
		padding-top: 30px;
	}
		#concept .box .pht {
			width: 350px;
		}
			#concept .box .pht img {
				width: 100%;
				height: auto;
			}

		#concept .box .text {
			width: 710px;
		}
			#concept .box .text h3 {
				font-size: 18px;
				font-weight: 500;
				color: #004F9A;
				margin-bottom: 10px;
			}
	
	
	
	
/* introduction
--------------------- */
#introduction {
	width: 100%;
	padding: 100px 0 0 0;
}
	#introduction h2 {
		font-size: 28px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 25px;
		text-align: center;
	}
	
	
	#introduction .text {
		width: 810px;
	}
		#introduction .text h3 {
			font-size: 18px;
			font-weight: 500;
			color: #004F9A;
			margin-bottom: 10px;
		}
	
		#introduction .text table {
			width: 100%;
			border-collapse: collapse;
			border-top: solid 1px #ddd;
			margin-bottom: 20px;
		}
			#introduction .text table th {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
			#introduction .text table td {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
	
		#introduction .text .name {
			text-align: right;
			padding-top: 10px;
		}
	
	
	#introduction .pht {
		width: 250px;
		padding-top: 40px;
	}
		#introduction .pht img {
			width: 100%;
			height: auto;
		}




}








/* max 800px */
@media only screen and (max-width: 800px) {
	
	
	
	
/* trouble
--------------------- */
#trouble {
	width: 100%;
	padding: 50px 0 0 0;
	background: #fff url(../img/bg01.jpg) no-repeat center -150px;
	background-size: 100%;
}
	#trouble h2 {
		font-size: 22px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 15px;
		text-align: center;
	}
	
	
	#trouble ul {
	}
		#trouble ul li {
			background: url(../img/icon_check.png) no-repeat left center;
			font-size: 100%;
			padding-left: 35px;
			margin-bottom: 10px;
		}
	
	
	
	
/* what
--------------------- */
#what {
	width: 100%;
	padding: 50px 0 0 0;
}
	#what h2 {
		font-size: 22px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 15px;
		text-align: center;
	}
	
	#what p {
		margin-bottom: 20px;
	}
	
	#what .pht img {
		width: 100%;
		height: auto;
	}
	
	
	
	
/* concept
--------------------- */
#concept {
	width: 100%;
	padding: 50px 0 0 0;
}
	#concept h2 {
		font-size: 22px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 15px;
		text-align: center;
	}


	#concept .box {
		padding-top: 30px;
	}
		#concept .box .pht {
		}
			#concept .box .pht img {
				width: 100%;
				height: auto;
			}

		#concept .box .text {
			padding-top: 15px;
		}
			#concept .box .text h3 {
				font-size: 18px;
				font-weight: 500;
				color: #004F9A;
				margin-bottom: 7px;
			}
	
	
	
	
/* introduction
--------------------- */
#introduction {
	width: 100%;
	padding: 50px 0 0 0;
}
	#introduction h2 {
		font-size: 22px;
		font-weight: 500;
		letter-spacing: 5px;
		margin-bottom: 15px;
		text-align: center;
	}
	
	
	#introduction .text {
	}
		#introduction .text h3 {
			font-size: 18px;
			font-weight: 500;
			color: #004F9A;
			margin-bottom: 10px;
		}
	
		#introduction .text table {
			width: 100%;
			border-collapse: collapse;
			border-top: solid 1px #ddd;
			margin-bottom: 20px;
		}
			#introduction .text table th {
				width: 80px;
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
			#introduction .text table td {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
	
		#introduction .text .name {
			text-align: right;
			padding-top: 10px;
		}
	
	
	#introduction .pht {
		padding-top: 20px;
	}
		#introduction .pht img {
			width: 100%;
			height: auto;
		}









}

	


/* min 801px */
@media screen and (min-width: 801px), print {
	
	
	
	
/*freebox
--------------------- */
.freebox {
	width: 100%;
	padding-bottom:35px;
}
		
	.freebox .pht {
		width: 260px;
		float: left;
		padding: 0 20px 0 0;
	}
		.freebox .pht img {
			width: 100%;
			height: auto;
		}
.freebox .text .name {
			text-align: right;
			padding-top: 10px;
		}


/* profile
--------------------- */

		#profile table {
			/*width: 100%;*/
			border-collapse: collapse;
			border-top: solid 1px #ddd;
			margin-bottom: 20px;
		}
		#profile table.wid {
			width: 100%;
		}
			#profile table th {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
			#profile table td {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
	

/* voice
--------------------- */
#voice {
	width: 100%;
}
#voice img {
	max-width: 390px;
	width: 100%;
}
#voice .btn_txt a {
    width: 450px;
    margin: 30px auto 0 auto;
    display: block;
    height: 60px;
    background: #004f9a url(../img/btn_arrow.png) no-repeat 95% center;
    background-size: 18px;
    color: #fff;
    line-height: 60px;
    font-weight: 700;
    text-align: center;
}

#detail #contents .cell .right {
	float: right;
}



}



/* max 800px */
@media only screen and (max-width: 800px) {
	
	
	
	
/* symptoms
--------------------- */
.freebox {
	width: 100%;
}
	
	
	.freebox .pht {
		display: none;
		float: none;
	}

 .freebox .text .name {
			text-align: right;
			padding-top: 10px;
		}
	
/* introduction
--------------------- */

		#profile .text table {
			width: 100%;
			border-collapse: collapse;
			border-top: solid 1px #ddd;
			margin-bottom: 20px;
		}
			#profile table th {
				width: 80px;
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
			#profile table td {
				border-bottom: solid 1px #ddd;
				padding: 10px 0;
			}
	
	
/* voice
--------------------- */
#voice {
	width: 100%;
}

#voice img {
	width: 100%;
}
	#voice .btn_txt a {
		display: block;
		height: 60px;
		background: #004f9a url(../img/btn_arrow.png) no-repeat 95% center;
		background-size: 16px;
		color: #fff;
		line-height: 60px;
		font-weight: 700;
		text-align: center;
		letter-spacing:1.6px;
	}


#detail #contents .cell .right {
	float: right;
}



}

	






