@charset "utf-8";

/* ===================================================================

	01. Default
	02. Structure
	03. Modules
	04. Support
	05. Media Queries

------------------------------------------------------------------- */

/* ----------------------------------------------------------------
    01. Default
----------------------------------------------------------------- */
body,h1,h2,h3,h4,h5,h6,ol,ul,li,dl,dt,dd,ruby,rb,rt,rp,table,th,td,p,img,a,div,em,small,sup,form,address{
padding:0;
margin:0;
font-size:100%;
font-style:normal;
font-weight:normal;
font-family:"メイリオ","ヒラギノ角ゴ Pro W4","ＭＳ Ｐゴシック", "Helvetica Neue",Helvetica,Arial,sans-serif;
line-height:1.6;
color:#333333;
-webkit-text-size-adjust: 100%;
}

a{
color:#367eb3;
text-decoration:none;
display:inline-block;
}

a:visited{
color:#367eb3;
text-decoration:none;
}

a:hover,
a:focus,
a:active{
color:#e6001e;
text-decoration:underline;
}

a[name]{
color:#112299;
text-decoration:none!important;
}

h1,h2,h3,h4,h5,h6{
line-height:1;
font-weight:bold;
color:#000000;
}

ul,ol{
list-style-type:none;
}

strong{
color:#e6001e;
font-weight:bold;
}

strong.str-normal{
color:#333333;
}

em{
font-weight:bold;
}

img{
max-width:100%;
border:none;
}

/* ----------------------------------------------------------------
    02. Structure
----------------------------------------------------------------- */

/* コンテンツ */
#container{
font-size:0.78em;
top: 0;
right: 0;
}

#contents #efSpace {
    padding-bottom: 5px;
}

#formArea{
margin:0 auto;
padding:9px 10px 0 10px;
max-width:960px;
}

#hdg-flow{
margin:15px auto;
border-radius:5px 5px 0 0;
border-bottom:none;
}

#hdg-flow-inner{
background-color:#fff;
border:1px solid #dfdfdf;
border-bottom:none;
padding:27px 39px 20px 39px;
}

/* ----------------------------------------------------------------
    03. Modules
----------------------------------------------------------------- */
.h1-01{
padding:13px 20px 15px 6px;
margin:20px auto;
border:1px solid #e5e5e5;
border-bottom:1px solid #bcbcbc;
border-radius:3px;
box-shadow:inset 0px 0px 5px rgba(255, 255, 255, 1);
min-height:24px;
background-size:100%;
background:linear-gradient(to bottom, #fff 0%,#f3f3f3 3%,#f9f9f9 50%,#fcfcfc 100%);
}

.h1-01 span{
font-size:2em;
padding:2px 0 0 30px;
position: relative;
display:inline-block;
min-height:24px;
}

.h1-01 span::before{
left:10px;
width:11px;
height:24px;
}

.h1-01 span::before,
.h2-01 span::before{
content: "";
position: absolute;
top:50%;
transform: translate(0, -50%);
border-radius:3px;
background:linear-gradient(to bottom, #f00000 0%,#e00101 40%, #c20303 100%);
}

.h2-01{
font-size:1.3em;
border-radius:5px 5px 0 0;
padding:10px 10px 10px 20px;
border:1px solid #dfdfdf;
border-bottom:none;
box-shadow:inset 0px 0px 5px rgba(255, 255, 255, 1);
background-size:100%;
background:linear-gradient(to bottom, #f2f2f2 0%,#f6f6f6 9%,#fcfcfc 60%);
position:relative;
}

.h2-01 span{
padding:5px 0 5px 19px;
display:inline-block;
min-height:17px;
position: relative;
}

.h2-01 span::before{
left:0;
width:7px;
height:19px;
margin-top: -1px;
}

.h3-01{
color:#000;
font-weight:bold;
margin:40px 0 10px 0;
padding:7px 10px 7px 15px;
border:1px solid #e3e3e3;
border-radius:5px 0 0 5px;
font-size:1.0em;
position:relative;
overflow: hidden;
}

.h3-01::before{
content: "";
position: absolute;
top: 0;
left: 0;
bottom: 0;
background-color: #f00000;
width: 5px;
}

.image {
margin-bottom: 30px;
}

.close-btn{
padding:20px 10px;
text-align:center;
}

.close-btn a{
padding:10px 25px 10px 10px;
font-weight:bold;
color:#333;
text-decoration:none;
border-radius:3px;
border:1px solid #dbdbdb;
display:inline-block;
background-size:13px 14px;
position: relative;
}

.close-btn a:hover,
.close-btn a:focus,
.close-btn a:active{
background:linear-gradient(to bottom, #f8f8f8 0%,#ededed 57%,#e7e7e7 100%);
text-decoration: underline;
}

.close-btn a::after{
content: "";
position: absolute;
z-index: 1;
top: 50%;
right: 4px;
margin-top: -1px;
transform: translate(0, -50%);
width: 11px;
height: 11px;
border: 1px solid #d70505;
border-radius: 2px;
box-sizing: border-box;
background:linear-gradient(to bottom, #f78d8d 0%,#f00808 100%);
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
}

.close-btn a span::before,
.close-btn a span::after {
content: "";
position: absolute;
z-index: 2;
top: 50%;
right: 9px;
margin-top: -1px;
width: 1px;
height: 9px;
transform: translate(0, -50%) rotate(45deg);
background-color: #ffffff;
image-rendering: pixelated;
transform-origin: center;
}

.close-btn a span::after {
transform: translate(0, -50%) rotate(-45deg);
}

/* ----------------------------------------------------------------
    04. Support
----------------------------------------------------------------- */
.pb00{
padding-bottom:0!important;
}

.pl00{
padding-left:0!important;
}

.pl05{
padding-left:5px!important;
}

.pl10{
padding-left:10px!important;
}

.pl15{
padding-left:15px!important;
}

.pl20{padding-left:20px!important;
}

.pr00{
padding-right:0!important;
}

.pr10{
padding-right:10px!important;
}

.pr15{padding-right:15px!important;
}

.pr20{
padding-right:20px!important;
}

.mt00{
margin-top:0!important;
}

.mt10{
margin-top:10px!important;
}

.mt20{
margin-top:20px!important;
}

.mt30{
margin-top:30px!important;
}

.mb00{
margin-bottom:0!important;
}

.mb10{
margin-bottom:10px!important;
}

.mb20{
margin-bottom:20px!important;
}


.mb30{
margin-bottom:30px!important;
}

.ml05{
margin-left:5px!important;
}

.mr05{
margin-right:5px!important;
}

.mr20{
margin-right:20px!important;
}

.mr40{
margin-right:40px!important;
}

.align-C{
text-align:center!important;
}

.align-R{
text-align:right!important;
}

.align-L{
text-align:left!important;
}

.align-T{
vertical-align:top!important;
}

.align-M{
vertical-align:middle!important;
}

.align-B{
vertical-align:bottom!important;
}

.font-l{
font-size:0.9375rem!important;
}

.font-m{
font-size:0.875rem!important;
}

.font-s {
font-size: 0.625rem!important;
}

.bt-dash{
border-top: 1px dashed #DEDEDE;
}

.bb-dash{
border-bottom: 1px dashed #DEDEDE;
}

.hdg-square{
position:relative;
padding-left:1em;
}

.hdg-square:before{
display:block;
content:"";
width:7px;
height:7px;
background:#555;
position:absolute;
left:2px;
top:5px;
}

/* ----------------------------------------------------------------
    05. Media Queries
----------------------------------------------------------------- */
/************************ START 960～1000px ************************/
@media screen and (max-width:1000px){
}

/************************ START 721～960px ************************/
@media screen and (max-width:960px){

#hdg-flow-inner{
padding:27px 10px 20px 10px;
}

}

/************************ START ～720px ************************/
@media screen and (max-width:720px){
*{
-webkit-text-size-adjust:none;
}

body,h1,h2,h3,h4,h5,ol,ul,li,dl,dt,dd,ruby,rb,rt,rp,table,th,td,p,img,a,div,em,small,sup,form,address{
line-height:1.4;
}

.sp-none{
display:none;
}

.h1-01{
padding:14px 20px 16px 0;
}

.h1-01 span{
font-size:1.5em;
vertical-align:middle;
}

.h2-01{
padding:10px;
}

.h2-01 span{
background-position:0 6px;
}

.h3-01{
margin:15px 0 10px 0;
}

#contents{
padding:0 5px;
}

#hdg-flow-inner{
padding:18px 7px 18px 7px;
}

}
