@charset "utf-8";

/*------------------------------------------------
見出し
------------------------------------------------*/

h2.title {
	font-size: 187.5%;
	color: #004490;
	position: relative;
	padding: 20px 0 20px 30px;
	background: #fff;
	border: 3px solid #004490;
	margin-bottom: 30px;
	border-radius: 7px;
}

h2.title img {
	position: absolute;
	top: -15px;
	right: 25px;
}

h3.title {
	font-size: 175%;
	color: #00438f;
	background: url(../images/common/line02.gif) left center no-repeat;
	margin-bottom: 20px;
	padding: 0 0 0 15px;
	border-bottom: 1px solid #b3b3b3;
}

h4.title {
	font-size: 125.0%;
	color: #694796;
	background: #eae5ff;
	margin-bottom: 20px;
	padding:  5px 15px 5px 20px;
	border-radius: 5px;
}

h4.title a {
	color: #694796;
	text-decoration: none;
	display: block;
	background: url(../images/common/icon_arrow02.png) right center no-repeat;
}
h4.title a:hover {
	text-decoration: underline;
}

h5.title {
	font-size: 112.5%;
	color: #004490;
	background: #dfeaf7;
	margin: 0 0 15px 15px;
	padding: 5px 10px;
	border-radius: 5px;
}

/*------------------------------------------------
テキスト
------------------------------------------------*/

.txtType01 {
	font-size: 125.0%;
	color: #00812d;
	font-weight: bold;
}

a.pdf01 {
	background: url(../images/common/icon_pdf.png) right center no-repeat;
	padding: 0 20px 0 1em;
	color: #b01919;
}

a.pdf01:hover {
	text-decoration: none;
}

.linklist {
	margin-left: -20px;
}

.linklist li {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-left: 20px;
}
.linklist li p {
	border-bottom: 1px solid #ccc;
	padding: 12px 0;
}
.linklist li a {
	display: inline-block;
	padding: 0 0 0 20px;
	background: url(../images/common/icon_btn03.png) left 0.5em no-repeat;
	color: #333;
	position: relative;
}
.linklist li a span {
	display: inline-block;
	vertical-align: text-top;
	margin-left: 5px;
	line-height: 0;
}

.linklist li a:hover {
	text-decoration: none;
}
.linklist li ul {
	margin-left: 30px;
}
.linklist li li {
	float: none;
	width: 100%;
	border-bottom: 1px dotted #ccc;
	padding: 10px 0;
}

.linklist li li a {
	background: url(../images/common/icon_arrow03.png) left 0.5em no-repeat;
	background-size: 8px auto;
	padding-left: 18px;
}


/*------------------------------------------------
リスト
------------------------------------------------*/

.list01 {
	background: #fff;
	border: 3px solid #dbceeb;
	padding: 15px;
}

.list01 li {
	text-indent: -2em;
	margin-left: 2em;
}

.list02 dt {
	font-weight: bold;
	margin-bottom: 5px;
}

.list02 dt span {
	color: #004490;
	padding-right: 0.3em;
}


.list02 dd {
	padding-left: 1.3em;
}

.list03 {
}

.list03 li {
	text-indent: -2em;
	margin-left: 2em;
}

.list04 {
}

.list04 li {
	text-indent: -2.4em;
	margin-left: 2.4em;
}
.list05 {
	overflow: hidden;
}
.list05 dt {
	float: left;
	font-weight: bold;
}
.list05 dd {
	overflow: hidden;
}

.list06 {
	overflow: hidden;
}
.list06 dt {
	float: left;
	font-weight: bold;
}
.list06 dt span {
	color: #004490;
	padding-right: 0.3em;
}
.list06 dd {
	overflow: hidden;
	padding-left: 2em;
}
.list06 + .list06 {
	border-top: 1px solid #ccc;
	padding-top: 25px;
	margin-top: 25px;
}

.list07 {
}

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

/*------------------------------------------------
ボックス
------------------------------------------------*/

.box01 {
	padding: 15px 20px;
	background: #fff;
	border: 3px solid #dbceea;
}

.box02 {
	padding: 15px 20px;
	background: #ffffe6;
	border: 4px solid #004490;
}


/*------------------------------------------------
ボタン
------------------------------------------------*/

.btn01 {
	text-align: center;
}

.btn01 a {
	display: inline-block;
	background: url(../images/common/bg_btn04.png) center center no-repeat;
	background-size: cover;
	padding: 10px 65px 10px 25px;
	color: #fff;
	text-decoration: none;
	border-radius: 7px;
	position: relative;
}

.btn01 a:before {
	background: url(../images/common/icon_btn04.png) 0 0 no-repeat;
	position: absolute;
	width: 21px;
	height: 21px;
	right: 20px;
	top: 50%;
	margin-top: -10px;
	z-index: 2;
	content: "";
}

.btn01 a:hover {
	opacity: 0.7;
}

.btn02 {
	text-align: center;
}

.btn02 a {
	display: inline-block;
	background: url(../images/common/icon_open.png) left center no-repeat;
	padding: 0 0 0 33px;
	color: #333;
	text-decoration: none;
}

.btn02 a:hover {
	opacity: 0.7;
}

.btn03 {
	text-align: center;
}

.btn03 a {
	display: inline-block;
	background: url(../images/common/bg_btn02.png) center center no-repeat;
	background-size: cover;
	padding: 10px 45px;
	color: #fff;
	text-decoration: none;
	border-radius: 7px;
	position: relative;
	line-height: 1.375;
}
.btn03 a span {
	display: table-cell;
	width: 310px;
	height: 40px;
	vertical-align: middle;
}

.ta03 .btn03 a span {
	width: 370px;
}

.btn03 a:before {
	background: url(../images/common/icon_open01.png) 0 0 no-repeat;
	position: absolute;
	width: 26px;
	height: 26px;
	left: 20px;
	top: 50%;
	margin-top: -13px;
	z-index: 2;
	content: "";
}

.btn03 a:hover {
	opacity: 0.7;
}

/*------------------------------------------------
テーブル
------------------------------------------------*/

.ta01 {
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 0px;
}

.ta01 th,
.ta01 td {
	padding: 10px 20px;
	border-top: 1px solid #c0c0c0;
	border-bottom: 1px solid #c0c0c0;
	border-left: 1px solid #c0c0c0;
	border-right: 1px solid #c0c0c0;
	border-collapse: collapse;
	background: #fff;
}

.ta01 th span {
  color: #af1919;
  font-weight: normal;
}

.ta02 {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.ta02 th,
.ta02 td {
	vertical-align: top;
}
.ta02 th {
	text-align: left;
	font-weight: normal;
}

.ta03 {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.ta03 th,
.ta03 td {
	padding: 10px 20px;
	border: 1px solid #ccc;
}
.ta03 th {
	text-align: left;
	vertical-align: top;
	background: #ebebeb;
	width: 35%;
}
.ta03 th span {
	color: #af1919;
	font-weight: normal;
}

.ta03 th span.required {
	background: #af1919;
	color: #fff;
	font-weight: normal;
	border-radius: 4px;
	padding: 3px 5px;
	font-size: 11px;
	display: inline-block;
	vertical-align: top;
}

.ta03 th strong {
	display: inline-block;
	padding-left: 10px;
}

.ta03 th strong.lv04 {
	display: inline-block;
	padding-left: 46px;
	letter-spacing: -0.1em;
}

.ta03 td {
	background: #fff;
	vertical-align: middle;
}

.ta04 {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.ta04 th,
.ta04 td {
	border: 1px solid #ccc;
	line-height: 1.625;
}
.ta04 th {
	text-align: left;
	background: #fafdea;
	padding: 10px 10px 10px 20px;
}
.ta04 td {
	background: #fff;
	padding: 10px 20px;
}

.ta05 {
	width: 100%;
	border: 3px solid #b3b3b3;
	border-collapse: collapse;
}
.ta05 th,
.ta05 td {
	border: 1px solid #ccc;
	line-height: 1.625;
	text-align: center;
	padding: 10px 5px;
}

.ta05 td {
	background: #fff;
}

.ta06 {
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 10px;
}

.ta06 th {
	border: 1px solid #cfcfcf;
	border-radius: 3px;
	text-align: center;
	background: #ecfce8;
	padding: 10px;
}

.ta06 td {
	border: 1px solid #cfcfcf;
	border-radius: 3px;
	text-align: center;
	background: #fff;
	padding: 10px 15px;
}

.ta07 {
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 10px;
}

.ta07 th {
	border: 2px solid #004490;
	border-radius: 3px;
	text-align: left;
	background: #fff;
	padding: 10px;
	vertical-align: middle;
	font-weight: normal;
}

.ta07 td {
	text-align: left;
	vertical-align: middle;
}

.ta08 {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}

.ta08 th,
.ta08 td {
	padding: 10px 5px;
	border: 1px solid #ccc;
	border-collapse: collapse;
	line-height: 1.625;
	background: #fff;
	text-align: center;
}

.ta09 {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.ta09 th,
.ta09 td {
	border: 1px solid #ccc;
	line-height: 1.625;
}
.ta09 th {
	text-align: center;
	background: #fafdea;
	padding: 10px 5px;
}
.ta09 th:last-child {
	width: 160px;
}

.ta09 td {
	background: #fff;
	padding: 10px 5px;
	text-align: center;
}



/*------------------------------------------------
整列
------------------------------------------------*/

#mainContainer section {
	margin-bottom: 60px;
}
.alL {
	text-align: left !important;
}

.alC {
	text-align: center !important;
}

.alR {
	text-align: right !important;
}

.valC {
	vertical-align: middle !important;
}

.valT {
	vertical-align: top !important;
}

.bold {
	font-weight: bold !important;
}

.tdu {
	text-decoration: underline;
}

.phase01 {
	padding:  0 15px;
}

.phase02 {
	padding:  0 30px;
}

/*------------------------------------------------
マージン
------------------------------------------------*/

.mg00 {
	margin: 0 !important;
}

.mgt05 {
	margin-top: 5px !important;
}

.mgt10 {
	margin-top: 10px !important;
}

.mgt15 {
	margin-top: 15px !important;
}

.mgt20 {
	margin-top: 20px !important;
}

.mgt25 {
	margin-top: 25px !important;
}

.mgt30 {
	margin-top: 30px !important;
}

.mgt35 {
	margin-top: 35px !important;
}

.mgt40 {
	margin-top: 40px !important;
}

.mgt45 {
	margin-top: 45px !important;
}

.mgt50 {
	margin-top: 50px !important;
}

.mgr05 {
	margin-right: 5px !important;
}

.mgr10 {
	margin-right: 10px !important;
}

.mgr15 {
	margin-right: 15px !important;
}

.mgr20 {
	margin-right: 20px !important;
}

.mgr25 {
	margin-right: 25px !important;
}

.mgr30 {
	margin-right: 30px !important;
}

.mgr35 {
	margin-right: 35px !important;
}

.mgr40 {
	margin-right: 40px !important;
}

.mgr45 {
	margin-right: 45px !important;
}

.mgr50 {
	margin-right: 50px !important;
}

.mgb05 {
	margin-bottom: 5px !important;
}

.mgb10 {
	margin-bottom: 10px !important;
}

.mgb15 {
	margin-bottom: 15px !important;
}

.mgb20 {
	margin-bottom: 20px !important;
}

.mgb25 {
	margin-bottom: 25px !important;
}

.mgb30 {
	margin-bottom: 30px !important;
}

.mgb35 {
	margin-bottom: 35px !important;
}

.mgb40 {
	margin-bottom: 40px !important;
}

.mgb45 {
	margin-bottom: 45px !important;
}

.mgb50 {
	margin-bottom: 50px !important;
}

.mgl05 {
	margin-left: 5px !important;
}

.mgl10 {
	margin-left: 10px !important;
}

.mgl15 {
	margin-left: 15px !important;
}

.mgl20 {
	margin-left: 20px !important;
}

.mgl25 {
	margin-left: 25px !important;
}

.mgl30 {
	margin-left: 30px !important;
}

.mgl35 {
	margin-left: 35px !important;
}

.mgl40 {
	margin-left: 40px !important;
}

.mgl45 {
	margin-left: 45px !important;
}

.mgl50 {
	margin-left: 50px !important;
}


/*------------------------------------------------
パディング
------------------------------------------------*/

.pdt05 {
	padding-top: 5px !important;
}

.pdt10 {
	padding-top: 10px !important;
}

.pdt15 {
	padding-top: 15px !important;
}

.pdt20 {
	padding-top: 20px !important;
}

.pdt25 {
	padding-top: 25px !important;
}

.pdt30 {
	padding-top: 30px !important;
}

.pdt35 {
	padding-top: 35px !important;
}

.pdt40 {
	padding-top: 40px !important;
}

.pdt45 {
	padding-top: 45px !important;
}

.pdt50 {
	padding-top: 50px !important;
}

.pdr05 {
	padding-right: 5px !important;
}

.pdr10 {
	padding-right: 10px !important;
}

.pdr15 {
	padding-right: 15px !important;
}

.pdr20 {
	padding-right: 20px !important;
}

.pdr25 {
	padding-right: 25px !important;
}

.pdr30 {
	padding-right: 30px !important;
}

.pdr35 {
	padding-right: 35px !important;
}

.pdr40 {
	padding-right: 40px !important;
}

.pdr45 {
	padding-right: 45px !important;
}

.pdr50 {
	padding-right: 50px !important;
}

.pdb05 {
	padding-bottom: 5px !important;
}

.pdb10 {
	padding-bottom: 10px !important;
}

.pdb15 {
	padding-bottom: 15px !important;
}

.pdb20 {
	padding-bottom: 20px !important;
}

.pdb25 {
	padding-bottom: 25px !important;
}

.pdb30 {
	padding-bottom: 30px !important;
}

.pdb35 {
	padding-bottom: 35px !important;
}

.pdb40 {
	padding-bottom: 40px !important;
}

.pdb45 {
	padding-bottom: 45px !important;
}

.pdb50 {
	padding-bottom: 50px !important;
}

.pdl05 {
	padding-left: 5px !important;
}

.pdl10 {
	padding-left: 10px !important;
}

.pdl15 {
	padding-left: 15px !important;
}

.pdl20 {
	padding-left: 20px !important;
}

.pdl25 {
	padding-left: 25px !important;
}

.pdl30 {
	padding-left: 30px !important;
}

.pdl35 {
	padding-left: 35px !important;
}

.pdl40 {
	padding-left: 40px !important;
}

.pdl45 {
	padding-left: 45px !important;
}

.pdl50 {
	padding-left: 50px !important;
}


/*------------------------------------------------
背景色
------------------------------------------------*/
.bg01 {
	background: #ecfce8 !important;
}
.bg02 {
	background: #fafdea !important;
}
.bg03 {
	background: #ebebeb !important;
}
.bg04 {
	background: #ebb03b !important;
}


/*------------------------------------------------
フォントの色
------------------------------------------------*/
.colorRed01 {
	color: #ce1823 !important;
}
.colorRed02 {
	color: #af1919 !important;
}
.colorRed03 {
	color: #b01919 !important;
}
.colorBule01 {
	color: #004490 !important;
}
.colorBule02 {
	color: #0049a3 !important;
}

.colorBule03 {
	color: #00438f !important;
}



/*------------------------------------------------
フォーム
------------------------------------------------*/
.inpS {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 50px;
	height: 27px;
	padding: 0 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.inpN {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 138px;
	height: 27px;
	padding: 0 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.inpM {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 433px;
	height: 27px;
	padding: 0 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.inpM02 {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 433px;
	height: 27px;
	padding: 0 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.inpL {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 100%;
	height: 27px;
	padding: 0 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.textarea {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 100%;
	height: 100px;
	padding: 10px;
	line-height: 1.5;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	overflow: hidden;
}

.selectLL {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 170px;
	height: 27px;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}
.selectL {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 100px;
	height: 27px;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}
.selectM {
	box-sizing: border-box;
	border: 1px solid #ccc;
	width: 70px;
	height: 27px;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

.postBtn {
	width: 75px;
	height: 27px;
	line-height: 27px;
	color: #fff;
	text-align: center;
	display: block;
	float: right;
	margin-left: 10px;
	background: #cc3b1f;
	text-decoration: none;
}
.postBtn:hover {
	opacity: 0.7;
}

.submit {
	display: inline-block;
	background: url(../images/common/icon_btn01.png) 95% center no-repeat, url(../images/common/bg_btn01.png) center center no-repeat;
	background-size: auto auto, cover;
	padding: 10px 65px;
	color: #fff;
	text-decoration: none;
	border-radius: 7px;
	position: relative;
	width: 364px;
	box-sizing: border-box;
	border: 0;
	cursor: pointer;
	-webkit-appearance: none;
	-webkit-border-radius: 7px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","游ゴシック体","游ゴシック","Yu Gothic",YuGothic,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size: 116%;
}

.submit.back {
	background: url(../images/common/icon_btn05.png) 5% center no-repeat, url(../images/common/bg_btn01.png) center center no-repeat;
	background-size: auto auto, cover;
	font-size: 116%;
}

.submit:hover {
	opacity: 0.7;
}

label input {
	display: inline-block;
	margin-right: 5px;
}

.addr01,
.addr02,
.addr03,
.telForm,
.ftBox {
	overflow: hidden;
}
.addr02,
.addr03,
.telForm {
	margin-top: 5px;
}
.addr01 dt,
.addr02 dt,
.addr03 dt {
	float: left;
	width: 150px;
}
.telForm dt {
	float: left;
	width: 60px;
}
.addr01 dd,
.addr02 dd,
.addr03 dd,
.telForm dd {
	overflow: hidden;
}
.addr01 dd {
	max-width: 300px;
}
.telForm dd {
	max-width: 495px;
}

.checkList01 li {
	float: left;
	width: 29%;
	text-indent: -1.5em;
	margin-left: 1.5vw;
	margin-bottom: 5px;
	line-height: 1.4;
}
.checkList02 li {
	float: left;
	margin-right: 1.5em;
}




.imgCenter {
	display: inline-block;
	text-align: right;
}
.imgCenter img {
	max-width: 100%;
}
.imgCenter span {
	font-size: 12px;
	display: inline-block;
	padding-top: 15px;
}

.imgCenter .visiblePC {
	display: inline-block;
}

.imgCenter .visibleTS {
	display: none;
}
