@charset "utf-8";

/*reset*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic", "Osaka",sans-serif;
	vertical-align: baseline;
	background: transparent;
	list-style-type: none;
	font-size: 16px;
}

/*clearfix*/
.clearfix {zoom:1;}
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
}


/*contents*/

body {
  background: #fff;
  border-top: 3px #993399 solid;
}

.outer {
	width: 100%;
}

.logo {
	margin: 25px auto 20px;
}

article {
	padding: 0 10px;
	margin: 0 auto;
}

header p {
	padding: 3px 12px;
	background: #efefef;
	
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-topright: 5px;
	font-size: 85%;
}

header h1 {
	margin:0.5rem 12px;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1.1;
}

header nav {
	margin: 0 0 0 12px;
	font-size: 80%;
}

section {
	padding: 1rem;
	margin: 30px 12px 0 12px;
	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	box-shadow: 0 0 5px #999;
	-webkit-box-shadow: 0 0 5px #999;
	-moz-box-shadow: 0 0 5px #999;
}

h2 {
	background: #40bfb0;
	
	padding: 0.625rem;
	margin: 0;
	
	border: 1px #40bfb0 solid;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	color: #FFF;
    font-weight: bold;
}
section h2:nth-child(n+2) {
	margin-top: 2rem;
}

h3 {
	background: #f1f9f8;
	background: -moz-linear-gradient(top, #f1f9f8 0%, #e4f6f4 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#f1f9f8), to(#e4f6f4));
	border: 3px #40bfb0 solid;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	color: #40bfb0;
    font-weight: bold;
	margin: 0;
	padding: 0.625rem 0.625rem 0.625rem 1.625rem;
	text-indent: -1rem;
}

h4 {
	color: #40bfb0;
    font-weight: bold;
	margin: 1.5rem 0 0 0.5rem;
	padding-left: 0.5rem;
	border-left: 5px solid #40bfb0;
}

h5 {
	color: #40bfb0;
    font-weight: bold;
	margin: 1rem 0 0 1rem;
	font-size: 0.95rem;
}

h3:before, .inquiry_list a:before { content: "■"; }
h5:before, .inquiry_list-detail a:before{ content: "・"; }

section div {
	padding: 0.5rem;
}

.inquiry_list {
	margin-top: 1rem;
}

.inquiry_list li {
	padding: 0.25rem 0.25rem 0.25rem 1.25rem;
	text-indent: -1rem;
	color: #40bfb0;
    font-weight: bold;
}

.inquiry_list-detail a {
	padding-left: 1rem;
	text-indent: -1rem;
} 

.text {
	padding-top: 0.5rem;
	display: block;
	font-size: 0.9rem;
	line-height: 1.6;
}

.text + .step {
	margin-top: 1rem;
}

/* color */
.text span {
	color: rgb(255, 0, 0);
	font-size: 100%;
	background: rgb(255, 255, 0);
	padding: 0 0.3rem;
}

.text a,
.inquiry_list a {
	color: #40bfb0;
}

.text_red {
	color: rgb(255, 0, 0);
}

/* Step */
.step {
	padding: inherit 1rem;
}

.step ul {
    display: flex;
    flex-wrap: wrap;
	margin:0 0 1rem;
}

.step .mb0 {
	margin-bottom:0;
}

.step ul li {
	margin:0 2rem 0 1rem;
}

.step ul li .text {
	padding: 0.5rem 0 0.5rem 1.5rem;
	text-indent: -0.8rem;
}

.step .text_notes {
	padding: 0 0 0.5rem 2.5rem !important;
	text-indent: -0.8rem;
}

.step ul li figure { margin: 0 0 0.5rem 1.5rem; } 

.step ul li ul li figure { margin: 0 0 0.5rem 0.5rem; } 

.step ul li figure img { border: 1px #ccc solid;}

.step ul li figcaption {
	display: block;
	text-align: center;
	font-size: 0.8rem;
	color: #40bfb0;
	font-weight: bold;
	margin-bottom: 0.15rem;
}

hr {
	border: none;
	border-top: #ccc dotted 1px;
	margin: 1rem 0;
}

/* pagetop */
.pagetop {
	text-align: right;
	margin: 0.5rem 1rem 0 0;
}
.pagetop a {
	color: #40bfb0;
	font-size: 0.8rem;
}

/* footer */
footer {
	margin-top: 20px;
	padding: 15px 15px 10px;
	border-top: 1px #efefef solid;
}
footer p {
	font-size: 0.85rem;
	line-height: 1.2;
}

@media screen and (min-width: 961px) {
	.logo {	max-width: 960px; }

	article {
		max-width: 940px;
		margin: 0 auto;
	}

	footer p {
		max-width: 960px;
		margin: 5px auto;
	}
}

@media screen and (max-width: 960px) {
	.logo {	margin: 10px 0 5px 10px; }
}

@media screen and (max-width: 440px) {
	.step { 
		padding: 0 0.5rem;
	}
	.step ul { 
		justify-content: center;
	}
	.step ul li { 
		width: 100%;
		margin:0;
		text-align: center;
	} 
	.step ul li ul li { margin: 0.5rem 0 0; }
	.step ul li .text { 
		text-align: left;
	} 
	.step ul li figure,
	.step ul li ul li figure { margin: 0 0 0.5rem; } 
	.step ul li figure img { width: 80%; height: auto; }
	.step .text_notes {
	padding: 0 0 0.5rem 1.5rem !important;
	text-indent: -0.8rem;
}

}

@media screen and (max-width: 320px) {
	.logo {	margin: 10px 0 5px 10px; }
}