@charset "utf-8";

/* =============================================================================
   （下階層用）.main
   ========================================================================== */

/*----------------------------------------------------
	h1,h2
----------------------------------------------------*/

/* h1 */

.main_title {
	margin: 0;
	padding:20px;
	font-size: 3.6rem;
	color:#fff;
	background:#0076bf;
	text-align: center;
}

@media only screen and (max-width:767px){
	.main_title {
	padding:16px;
	font-size: 1.8rem;
	}
}

.main h1 {
	display:flex;
	margin: 0 0 40px 0 ;
    padding: 5px;
	flex-direction: column;
    justify-content: center;
	font-size: 2.6rem;
    font-weight: normal;
	line-height:1.35;
    border-top:1px solid #209eda;
    border-bottom:1px solid #209eda;
	min-height: 120px;
	height: auto !important;
	height: 120px;
	box-sizing: border-box;
}

@media only screen and (max-width:767px){
	.main h1 {
	display:block;
	font-size: 1.5rem;
    padding: 15px 5px 10px 3px;
	min-height: 40px;
	height: auto !important;
	height: 40px;
	}
}

/* h2 */

.main h2 {
	margin: 60px 0 14px 0;
	padding: 0 0 2px 0;
	font-size: 2rem;
	line-height:1.35;
	border-bottom: 1px solid #209eda;
}

@media only screen and (max-width:767px){
	.main h2 {
	margin: 40px 0 14px 0;
	font-size: 1.6rem;
	}
}

.main h2 + h3 {
	margin-top: 30px !important;
}


/*----------------------------------------------------
	p
----------------------------------------------------*/

.main p {
	margin: 0 0 1.5em 0 ;
    padding: 0;
}

@media only screen and (max-width:767px){
	.main .sp_pc {
	display:none !important;
	}
}


/*----------------------------------------------------
	link
----------------------------------------------------*/

.main .link_b::before {
	content: "＞";
	margin: 0 2px 0 0;
	padding: 0;
}

.main a.link_f::after {
	content: " >"; 
}

.main a.link_b::before {
	content: " <"; 
}

.main a.link_q {
	display:inline-block;
	margin: 0 2px;
	padding: 0;
	border-radius: 50%;
	color:#fff;
	background:#0076bf;
	border: 1px solid #0076bf;
	height: 1.5em;
	width: 1.5em;
	line-height:1.5;
	text-align:center;
}

.main a.link_q:hover {
	background:#fff;
	border: 1px solid #0076bf;
	color:#0076bf;
}

.main a.link_q:link	{ color:#fff; text-decoration:none;}
.main a.link_q:visited { color:#fff; text-decoration:none;}
.main a.link_q:active  { color:#0076bf; text-decoration:none;}
.main a.link_q:hover   { color:#0076bf; text-decoration:none;}


/*----------------------------------------------------
	img
----------------------------------------------------*/

/* img */

@media only screen and (max-width:767px){
	.main img {
	max-width: 100%;
	height:auto;
	}
}


