@charset "utf-8";

/* webfonts
----------------------------------------------------------------------*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);


/* default
----------------------------------------------------------------------*/
* { margin: 0; padding: 0; }
img { border: 0; vertical-align: top; }
ul, ol { list-style: none; }
a { color: #6779AC; text-decoration: none; }
a:hover { color: #95A1C5; }

/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix { display: inline-block; }
/* Hides from IE-mac \*/
* html .clearfix { height: 1px; }
.clearfix { display: block; }
/* End hide from IE-mac */

	
/* structure
----------------------------------------------------------------------*/
body {
	color: #323232;
	min-width: 980px;
	font-size: 15px;
	font-family: 'Noto Sans Japanese', sans-serif;
	line-height: 1.6;
	background: #FFF;
}
.sp { display: none; }

/*--------------------------------------------------*/
main {
	position: relative;
	display: block;
	width: 100%;
}

.gNavi { background-color: #F25119; }
.gNavi ul {
	width: 532px;
	margin: 0 auto;
}
.gNavi ul li { float: left; }

.column {
	width: 980px;
	margin: 0 auto;
}

/*--------------------------------------------------*/
.bg_title {
	color: #FFF;
	width: 100%;
	height: 412px;
	background: url(../img/photo_main.jpg) center center no-repeat;
	background-size: cover;
	margin-bottom: 25px;
	padding-top: 115px;
	overflow: hidden;
}
.bg_title .column {
	position: relative;
	height: 100%;
}
.bg_title .column > * { opacity: 0; }

.bg_title h1 { margin-bottom: 30px; }
.bg_title p {
	font-size: 14px;
	font-weight: bold;
}

.bg_title p.lead {
	color: #FFF;
	font-size: 17px;
	font-weight: bold;
	text-shadow: 0 0 5px #074962;
	margin-bottom: 45px;
}
.bg_title ul.app { margin-bottom: 5px; }
.bg_title ul.app li {
	float: left;
	margin-right: 10px;
}
.bg_title ul.app li span {
	font-size: 12px;
	background-color: #008CD6;
	border-radius: 8px;
	padding: 3px 15px;
}

.bg_title p.sp_img {
	position: absolute;
	right: 0;
	bottom: 0;
}

/*--------------------------------------------------*/
.info {
	width: 890px;
	border: 1px solid #CCC;
	margin: 0 auto 30px auto;
	padding: 20px 30px;
	opacity: 0;
}

.info ul { margin-bottom: 10px; }
.info ul li {
	margin-bottom: 5px;
	padding-left: 1em;
}
.info ul li:before {
	content: '・';
	margin-left: -1em;
}
.info p {
	color: #009CFF;
	font-size: 13px;
	line-height: 1.5;
}

/*--------------------------------------------------*/
.box_dl {
	width: 950px;
	border: 1px solid #CCC;
	border-radius: 4px;
	margin: 0 auto 40px auto;
	text-align: center;
	opacity: 0;
}

.box_dl h2 {
	color: #1E3677;
	font-size: 22px;
	font-weight: normal;
	line-height: 48px;
	background-color: #EBEBEB;
	border-bottom: 1px solid #CCC;
	margin-bottom: 20px;
	padding: 6px 0;
}
.box_dl h2 img { margin-right: 30px; }
.box_dl p { margin-bottom: 25px; }
.box_dl dl {
	width: 836px;
	margin: 0 auto 35px auto;
}
.box_dl dl dd {
	float: right;
	width: 350px;
	border: 4px solid #EBEBEB;
	padding: 18px;
}
.box_dl dl dd:first-child { float: left; }
.box_dl dl dd h3 {
	color: #FFF;
	width: 320px;
	font-size: 16px;
	font-weight: normal;
	background-color: #FCB243;
	border-radius: 25px;
	margin: 0 auto 10px auto;
}
.box_dl dl dd:first-child h3 { background-color: #5E90C2; }
.box_dl dl dd p {
	font-size: 11px;
	color: #999;
	margin: 10px 0 0 0;
}

/*--------------------------------------------------*/
h2.st_app {
	color: #666;
	width: 920px;
	font-size: 24px;
	font-weight: normal;
	background: url(../img/bg_title.gif) left center repeat-x;
	margin: 0 auto 40px auto;
	text-align: center;
	opacity: 0;
}
h2.st_app span {
	background-color: #FFF;
	padding: 0 30px;
}

/*--------------------------------------------------*/
.box_app {
	width: 950px;
	border: 1px solid #C6DEF4;
	border-radius: 4px;
	margin: 0 auto 40px auto;
	opacity: 0;
}
.box_app dl dd > * { opacity: 0; }

.box_app h3 {
	color: #1E3677;
	font-size: 22px;
	font-weight: normal;
	background-color: #EBF3FA;
	border-bottom: 1px solid #C6DEF4;
	padding: 8px 0;
	text-align: center;
	opacity: 0;
}
.box_app h4 {
	color: #1E3677;
	font-size: 18px;
	margin-bottom: 20px;
}
.box_app h4 img { margin-right: 15px; }
.box_app dl dd {
	float: left;
	width: 424px;
	padding: 20px 20px 0 20px;
}
.box_app dl dd:first-child { border-right: 1px solid #C6DEF4; }
.box_app dl dd p { margin-bottom: 30px; }

.box_app dl.other dt {
	float: right;
	width: 420px;
	padding-top: 50px;
	opacity: 0;
}
.box_app dl.other dd { border: none; }

/*--------------------------------------------------*/
.box_service {
	width: 950px;
	border: 1px solid #D36CA1;
	border-radius: 4px;
	margin: 0 auto 30px auto;
	-moz-box-shadow: 0px 0px 20px #000;
	-webkit-box-shadow: 0px 0px 20px #000;
	box-shadow: 0px 0px 20px #000;
	opacity: 0;
}
.box_service dl dd > * { opacity: 0; }

.box_service h3 {
	color: #E95504;
	font-size: 22px;
	font-weight: normal;
	background-color: #FFE3F1;
	border-bottom: 1px solid #D36CA1;
	padding: 8px 0;
	text-align: center;
	opacity: 0;
}
.box_service h3 img { margin-right: 15px; }
.box_service h4 {
	color: #1E3677;
	font-size: 18px;
	line-height: 1.2;
	margin-bottom: 20px;
	padding-left: 60px;
	text-indent: -60px;
}
.box_service h4 img {
	margin-right: 15px;
	vertical-align: middle;
}

.box_service dl {
	border-bottom: 1px solid #D36CA1;
	margin-bottom: 25px;
}
.box_service h3+dl {
	margin-bottom: 0;
}
.box_service dl dd {
	float: left;
	width: 424px;
	padding: 20px 20px 0 20px;
}
.box_service .dl_recept dd:first-child {
	float: none;
	box-sizing: border-box;
	width: 928px;
	border: none;
}
.box_service .dl_recept dd:first-child .txt {
	float: left;
	width: 464px;
}
.box_service dl dd:first-child { border-right: 1px solid #D36CA1; }
.box_service dl dd p { margin-bottom: 30px; }

ul.insurance {
	float: left;
	width: 304px;
	margin: 0 0 15px 80px;
	opacity: 0;
}
ul.insurance li { margin-bottom: 10px; }
ul.insurance li p { font-size: 11px; }

.details {
	float: right;
	width: 465px;
	padding-top: 20px;
	text-align: center;
	opacity: 0;
}
.details p {
	color: #E95504;
	font-size: 18px;
	margin-bottom: 20px;
}
.details span {
	font-size: 22px;
	font-weight: bold;
}
.details  a {
	display: block;
	width: 238px;
	line-height: 38px;
	margin: 0 auto;
	background: linear-gradient(#365595, #234789);
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	color: #fff;
}
.details a:hover {
	background: #5e77aa;
}

/*--------------------------------------------------*/
.notes {
	width: 950px;
	margin: 0 auto;
}
.notes .column { opacity: 0; }

.notes ul {
	font-size: 13px;
	margin-bottom: 30px;
}

.notes ul  li {
	margin-left: 1em;
	text-indent: -1em;
}

.center { text-align: center; }
.txt_right { text-align: right; }

/*--------------------------------------------------*/

/* スマートフォン用 */
@media(max-width: 767px) {
img { max-width: 100%; }

body {
	min-width: 100%;
	font-size: 13px;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
}

.gNavi ul { width: 98%; margin: 0 auto; }
.gNavi ul li {
	width: 33.3%;
	text-align: center;
}
.gNavi ul li a { display: block; }

.column { width: 90%; }
.pc { display: none; }
.sp { display: block; }

/*--------------------------------------------------*/
.bg_title {
	height: 450px;
	padding-top: 35px;
}

.bg_title h1 { margin-bottom: 30px; }
.bg_title p { font-size: 13px; }
.bg_title p.lead {
	font-size: 15px;
	margin-bottom: 25px;
}
.bg_title ul.app { margin-bottom: 0; }
.bg_title ul.app li {
	width: 49%;
	max-width: 183px;
	margin: 0 0 5px 0;
}
.bg_title ul.app li:first-child { margin-right: 2%; }
.bg_title ul.app li:last-child { clear: left; }
.bg_title p.sp_img { display: none; }

/*--------------------------------------------------*/
.info {
	width: 90%;
	padding: 5%;
}

/*--------------------------------------------------*/
.box_dl { width: 100%; }
.box_dl h2 { font-size: 20px; }
.box_dl h2 img { margin-right: 15px; }
.box_dl p {
	width: 90%;
	margin: 0 auto 25px auto;
}
.box_dl dl {
	width: 80%;
	margin: 0 auto 15px auto;
}
.box_service .dl_recept dd:first-child {
	width: auto;
}
.box_dl dl dd {
	float: none;
	width: 87.5%;
	margin-bottom: 20px;
	padding: 5%;
}
.box_dl dl dd:first-child { float: none; }
.box_dl dl dd h3 {
	width: auto;
	font-size: 15px;
	padding: 0 5%;
}
.box_service .dl_recept dd:first-child {
	border-bottom: 1px solid #D36CA1;
}
.box_service .dl_recept dd:first-child .txt {
	float: none;
	width: auto;
}
.box_service ul.insurance li {
	text-align: center;
}

/*--------------------------------------------------*/
h2.st_app {
	width: 100%;
	font-size: 18px;
}
h2.st_app span {
	display: inline-block;
	width: 86%;
	padding: 0 2%;
}

/*--------------------------------------------------*/
.box_app { width: 100%; }
.box_app h3,
.box_service h3 { font-size: 18px; }
.box_app dl dd {
	float: none;
	width: 90%;
	padding: 20px 5% 0 5%;
}
.box_app dl dd:first-child {
	border-right: none;
	border-bottom: 1px solid #C6DEF4;
}

.box_app dl.other dt {
	float: none;
	width: 90%;
	margin-bottom: 30px;
	padding: 0 5%;
}
.box_app dl.other dd { border: none; }

/*--------------------------------------------------*/
.box_service { width: 100%; }
.box_service h3 img {
	display: block;
	margin: 0 auto 5px auto;
}

.box_service dl {
	border-bottom: none;
	margin-bottom: 25px;
}
.box_service dl dd {
	float: none;
	width: 90%;
	padding: 20px 5% 0 5%;
	border-bottom: 1px solid #D36CA1;
}
.box_service dl dd:first-child {
	border-right: none;
}

ul.insurance {
	float: none;
	width: 90%;
	margin: 0 0 15px 0;
	padding: 0 5%;
}

.details {
	float: none;
	width: 90%;
	margin-bottom: 30px;
	padding: 0 5%;
}
.details span {
	font-size: 22px;
	font-weight: bold;
}

/*--------------------------------------------------*/
.notes { width: 100%; }
.notes ul li {
	padding-left: 1em;
	text-indent: -1em;
}
}

.pc_nav_menu li a {
	display: block;
	color: #464646;
	font-size: 14px;
	font-weight: normal;
	padding: 12px;
	text-decoration: none;
}
.pc_nav_menu .btn_close a {
	display: inline-block;
	width: 20px;
	font-size: 19px;
	line-height: 1;
	background: #FFF;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	padding: 1px 0 7px 0;
	text-align: center;
}
.sp_nav_menu .btn_close a { line-height: 1; }
