@charset "utf-8";





/*---------- ページ全体の指定 ----------*/

body {
    font-family: Verdana, Arial, Helvetica, sans-serif, "ＭＳ ゴシック", "Hiragino KaKu Gothic Pro", Osaka;
    margin: 0;
    padding: 0;
    font-size: 14px;
    background-color: #caeefc;
    background-image: url(img/bg.jpg);
    background-position: top;
    background-repeat: repeat-x;
}

a:link {
    color: #436CBA;
    text-decoration: underline;
}

a:visited {
    color: #436CBA;
    text-decoration: underline;
}

a:hover {
    color: #206CFF;
    text-decoration: none;
}

a img {
    border-style: none;
}

a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.clr {
    clear: both;
}

p {
    line-height: 150%;
    letter-spacing: 1px;
    font-size: 16px;
}




/*---------- ヘッダー ----------*/

#header {
    width: 900px;
    height: 700px;
    margin: 0 auto;
    padding: 0;
    background-image: url(img/header.png);
}

#header h1 {
    margin: 0;
    font-size: 21px;
    font-weight: bold;
    padding: 35px 0 0 65px;
    font-family: 'メイリオ', Meiryo, Verdana, Helvetica, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック';
}

#header2 {
    width: 900px;
    height: 540px;
    margin: 0 auto;
    padding: 0;
    background-image: url(img/header2.jpg);
}

#header3 {
    width: 900px;
    height: 540px;
    margin: 0 auto;
    padding: 0;
    background-image: url(img/header3.jpg);
}




/*---------- レイアウト ----------*/

#back {
    margin: 0;
    padding: 0x;
    background-color: #caeefc;
}

#wrapper {
    width: 900px;
    margin: 0 auto 0 auto;
    padding: 0 10px;
    background-image: url(img/bg.png);
    background-position: center;
    background-repeat: repeat-y;
}

#container {
    margin: 0;
    padding: 1px 45px 15px 45px;
    background-color: #FFFFFF;
}

#board {
    margin: -15px auto 10px auto;
    width: 810px;
    height: 685px;
    background-image: url(img/board.png);
    background-position: center;
    background-repeat: no-repeat;
}




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

h2 {}

h3 {}

h4 {}

.h2_01 {
    height: 60px;
    background-image: url(img/h2_01.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 30px 0 0 0;
}

.h2_02 {
    height: 60px;
    background-image: url(img/h2_02.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 30px 0 0 0;
}

.h2_03 {
    height: 60px;
    background-image: url(img/h2_03.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 30px 0 0 0;
}

.h2_04 {
    height: 60px;
    background-image: url(img/h2_04.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 0 0 2px 0;
}

.h2_05 {
    height: 60px;
    background-image: url(img/h2_05.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 0 0 2px 0;
}

.h2_06 {
    height: 60px;
    background-image: url(img/h2_06.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 0 0 2px 0;
}

.h2_07 {
    height: 60px;
    background-image: url(img/h2_07.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 0 0 2px 0;
}

.h2_08 {
    height: 60px;
    background-image: url(img/h2_08.gif);
    background-position: center;
    text-indent: -3000px;
    margin: 0 0 2px 0;
}

.h3_01 {
    height: 50px;
    background-image: url(img/h3_01.gif);
    text-indent: -3000px;
    margin: 30px 0 0 0;
}

.h3_02 {
    height: 50px;
    background-image: url(img/h3_02.gif);
    text-indent: -3000px;
    margin: 0 0 0 0;
}

.h3_03 {
    height: 50px;
    background-image: url(img/h3_03.gif);
    text-indent: -3000px;
    margin: 30px 0 0 0;
}

.h3_04 {
    height: 50px;
    background-image: url(img/h3_04.gif);
    text-indent: -3000px;
    margin: 0 0 0 0;
}

.style_01 {
    margin: 25px 0 5px 0;
    padding: 0;
    border-bottom: dotted 1px #0d70a5;
}

.style_01b {
    margin: 15px 0 5px 0;
    padding: 0 0 5px 0;
    border-bottom: dotted 1px #0d70a5;
}

.style_02 {
    margin: 25px 0 5px 0;
    padding: 0 0 5px 0;
    border-bottom: dotted 1px #28b8b9;
}

.style_03 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 5px 0;
    padding: 3px 0 2px 20px;
    border-bottom: dotted 1px #999999;
    background-image: url(img/style_01.png);
    background-position: left center;
    background-repeat: no-repeat;
}




/*---------- コンテンツ ----------*/

.contents {
    margin: 0 0 45px 0;
    padding: 15px 30px;
    border: solid 1px #CCCCCC;
}

.contents_01 {
    margin: 0;
    padding: 15px 30px;
    border-left: solid 5px #26a5df;
    border-right: solid 5px #26a5df;
    border-bottom: solid 5px #26a5df;
}

.point {
    margin: 0 0 15px 0;
    padding: 10px 15px 10px 10px;
    font-size: 14px;
    line-height: 150%;
    color: #155894;
    background-color: #f0f2f2;
    border-top: solid 1px #4a94bc;
    border-bottom: solid 1px #4a94bc;
}

.point img {
    float: left;
    margin: -2px 10px 10px 0
}

dl.caution {
    margin: 0 0 15px 0;
    padding: 10px 15px 10px 10px;
    font-size: 14px;
    line-height: 150%;
    color: #155894;
    background-color: #f0f2f2;
    border-top: solid 1px #4a94bc;
    border-bottom: solid 1px #4a94bc;
}

dl.caution dt {
    clear: left;
    float: left;
    width: 50px;
    margin: 0px;
}

dl.caution dd {
    margin: 0 0 0 50px;
    padding: 0;
}


.title {
    margin: 30px 0 5px 0;
    padding: 0;
}

.box_01 {
    margin: 0 0 15px 0;
    padding: 15px;
    background-color: #ffb13b;
    border-top: dotted 1px #fff;
}

.box_02 {
    margin: 0;
    padding: 15px 30px;
    background-color: #fff;
}

.voicebox {
    margin: 0 0 15px 0;
    padding: 5px 30px 20px 30px;
    background-color: #e5f1f2;
    border: solid 1px #6ab1c7;
}

#voice {
    margin: 0 auto;
    padding: 30px 30px 30px 30px;
    background-color: #FFFFFF;
}

#voice table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

#voice table th {
    width: 15%;
    padding: 0;
}

#voice table td {
    font-size: 16px;
    line-height: 180%;
    letter-spacing: 1px;
}

.text_right {
    padding: 0 0 0 30px;
}

.text_left {
    padding: 0 30px 0 0;
}

.name {
    margin: 0 0 10px 0;
    padding: 0;
    color: #1ea3db;
    font-size: 16px;
    line-height: 180%;
    letter-spacing: 1px;
}

.voice {
    margin: 15px 0 0 0;
    padding: 0 0 15px 0;
    border-bottom: dotted 1px #999;
}

.voice img {
    width: 100%;
    vertical-align: bottom;
    border: solid 1px #ddd;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.ym {
    background: linear-gradient(transparent 40%, #ffff66 40%);
}

.guide {
    margin: 0 0 15px 0;
    padding: 10px 30px 15px 30px;
    border: solid 2px #28b8b9;
}

.green {
    color: #28b8b9;
}

.promise {
    margin: 45px 0 45px 0;
    padding: 90px 30px 15px 30px;
    border: solid 5px #ece2c7;
    background-image: url(img/promise.gif);
    background-position: top center;
    background-repeat: no-repeat;
    color: #444444;
}

.flow {
    margin: 0 0 15px 0;
    padding: 5px 20px;
    border: solid 1px #0d70a5;
    color: #444444;
}

.merit {
    margin: 0 0 30px 0;
    padding: 0;
    text-align: center;
    border: solid 1px #ec6d81;
}

.qus {
    font-size: 16px;
    font-weight: bold;
    color: #2493c8;
    margin: 0 0 10px 0;
    padding: 8px 0 4px 35px;
    background-image: url(img/q.gif);
    background-position: 10px center;
    background-repeat: no-repeat;
    border-top: solid 1px #2493c8;
    border-bottom: solid 1px #2493c8;
    background-color: #e8fbff;
}

.ans {
    margin: 0 0 20px 0;
    padding: 0 0 10px 35px;
    background-image: url(img/a.gif);
    background-position: 10px top;
    background-repeat: no-repeat;
    border-bottom: dotted 1px #CCCCCC;
    font-size: 14px;
    line-height: 150%;
    color: #333333;
}

.flow {
    margin: 0;
    padding: 15px;
    background-color: #fdfaf1;
    border: solid 3px #e8d394;
    font-family: 'メイリオ', Meiryo, Verdana, Helvetica, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック';
    font-size: 14px;
    line-height: 150%;
}

.step {
    margin: 0 0 10px 0;
    padding: 0;
    font-size: 18px;
    line-height: 150%;
    font-weight: bold;
    border-bottom: dotted 1px #e8d394;
    color: #195297;
}


.device {
    margin: 0 15px 20px 15px;
    padding: 1px 0;
    border: solid 3px #ddd;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

table.komaki {
    border-collapse: collapse;
    margin: 15px 0;
}

table.komaki th {
    font-size: 14px;
    font-weight: normal;
    line-height: 150%;
    letter-spacing: 1px;
    border: solid 1px #b9a289;
    padding: 10px;
    text-align: center;
    background-color: #f2efe6;
}

table.komaki td {
    font-size: 16px;
    line-height: 150%;
    letter-spacing: 1px;
    border: solid 1px #b9a289;
    padding: 10px;
    text-align: center;
}



/*---------- ブレット ----------*/

ul.list_01 {
    list-style: none;
    margin: 0 0 30px 0;
    padding: 15px 0 10px 20px;
    border: solid 2px #f16c89;
    background-image: url(img/bg_list01.png);
    background-position: top right;
    background-repeat: no-repeat;
}

ul.list_01 li {
    list-style: none;
    margin: 0 0 5px 0;
    padding: 3px 0 0 26px;
    font-size: 14px;
    line-height: 150%;
    font-weight: bold;
    color: #333333;
    background-image: url(img/list_01.gif);
    background-position: left center;
    background-repeat: no-repeat;
}

ul.list_02 {
    list-style: none;
    margin: 0 0 15px 0;
    padding: 15px 0 10px 20px;
    border: solid 2px #155894;
    background-image: url(img/bg_list02.png);
    background-position: top right;
    background-repeat: no-repeat;
}

ul.list_02 li {
    list-style: none;
    margin: 0 0 5px 0;
    padding: 3px 0 0 26px;
    font-size: 14px;
    line-height: 150%;
    font-weight: bold;
    color: #333333;
    background-image: url(img/list_02.gif);
    background-position: left center;
    background-repeat: no-repeat;
}


table.ex {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 15px 0;
}

table.ex td {
    padding: 5px 0 0 0;
    font-size: 18px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 160%;
    text-align: center;
    color: #777777;
}

.border {
    padding: 5px;
    border: solid 1px #ccc;
}

table.spec {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 5px 0;
}

table.spec td {
    font-size: 16px;
    line-height: 150%;
    letter-spacing: 1px;
    border: solid 1px #CCCCCC;
    padding: 5px;
    text-align: center;
}

table.spec td.item {
    font-weight: bold;
    background-color: #5f7786;
    color: #FFFFFF;
    text-align: center;
    padding: 10px 0 8px 0;
    font-size: 16px;
}

table.spec td.arrow {
    border: none;
    text-align: center;
}

.form {
    margin: 0;
    padding: 0 30px;
}

.form p {
    font-size: 12px;
    color: #333333;
}



/*---------- 文字装飾 ----------*/

.bold {
    font-weight: bold;
}

.boldul {
    font-weight: bold;
    text-decoration: underline;
}

.bold18 {
    font-size: 18px;
    font-weight: bold;
}

.boldul18 {
    font-size: 18px;
    font-weight: bold;
    text-decoration: underline;
}

.red {
    font-weight: bold;
    color: #CC0000;
}

.color {
    color: #FF0066;
}

.ul {
    text-decoration: underline;
}

.ym {
    background-color: #FFFF00;
    padding: 1px;
    font-weight: bold;
}

.caption {
    font-size: 12px;
    color: #666666;
    font-weight: normal;
    line-height: 150%;
}

.req {
    font-size: 12px;
    color: #FFFFFF;
    background-color: #CC0000;
}




/*---------- 文字位置 ----------*/

.center {
    text-align: center;
}

.right {
    text-align: right;
}




/*---------- 画像位置 ----------*/

.img_right01 {
    float: right;
    border: solid 1px #CCCCCC;
    background-color: #FFFFFF;
    padding: 3px;
    margin: 15px 0 0 15px;
}

.img_right02 {
    float: right;
    margin: 15px 0 0 15px;
}

.img_right03 {
    float: right;
    margin: 0 0 0 15px;
}

.imgbox {
    float: right;
    margin: 5px 0 0 15px;
    text-align: right;
    font-size: 12px;
    line-height: 150%;
    color: #666666;
}

.imgbox img {
    margin: 10px 0 0 0;
}

.imgbox2 {
    float: right;
    margin: 15px 0 0 15px;
    text-align: right;
    font-size: 12px;
    line-height: 150%;
    color: #666666;
}

.imgbox2 img {
    margin: 0 0 5px 0;
    padding: 3px;
    border: solid 1px #CCCCCC;
}




/*---------- フッター ----------*/

#link {
    padding: 10px 0 0 0;
    text-align: center;
    font-size: 12px;
    color: #CCCCCC;
    border-top: solid 2px #CCCCCC;
}

#footer {
    margin: 0 auto 0 auto;
    font-size: 12px;
    line-height: 150%;
    padding: 10px 0 10px 0;
    color: #FFFFFF;
    background-color: #185196;
}

.ad {
    font-family: Arial, Helvetica, sans-serif;
    margin: 0;
    text-align: center;
}



/*---------- 201808 ----------*/

.mailform * {
	box-sizing: border-box;
}

.mailform #wrapper {
    width: 920px;
}

.mailform #container {
    background: #fff;
}

.mailform img {
    display: block;
    max-width: 100%;
    height: auto;
}

.mailform {
    padding: 0;
    line-height: 1.5;
    font-size: 16px;
}

.mailform header {
    padding: 20px 45px;
    border-bottom: 2px solid #185196;
    background: #fff;
}

.mailform main {
    padding: 45px 0;
}

.mailform img[src*="logo"] {
    width: 250px;
    height: auto;
}

.mailform h1 {
    color: #185196;
    font-size: 24px;
    margin: 0 0 45px;
}

.mailform h1:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0e0";
    font-weight: 900;
    display: inline-block;
    margin: 0 10px 0 0;
}

.mailform section {
	padding: 0 0 45px;
}

.mailform section p {
    margin: 0 0 5px;
}

.mailform section small {
    display: block;
    font-size: 12px;
    margin: 0 0 10px;
}

.mailform section h2 {
    margin: 0 0 20px;
}

.mailform section h2:after {
    font-family: "Font Awesome 5 Free";
    content: "\f103";
    font-weight: 900;
    display: inline-block;
    margin: 0 0 0 5px;
}

.mailform img[src*="tel-banner"] {
    width: 500px;
    height: auto;
}

.mailform section table {
	margin: 0 0 30px;
	width: 100%;
	border-top: 1px solid #f5f5f5;
}

.mailform section table th,
.mailform section table td {
	padding: 20px 5px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #f5f5f5;
}

.mailform section table th {
	width: 40%;
}

.mailform section table td {
	width: 60%;
}

.mailform section table th span {
	font-size: 12px;
	color: #fff;
	background: #d00;
	padding: 0 5px;
	display: inline-block;
	margin: 0 5px 0 0;
	position: relative;
	top: -2px;
}

.mailform section table tr:last-of-type th span {
	color: #fff;
	background: #999;
}

.mailform section table select,
.mailform section table input,
.mailform section table textarea {
	font-size: 16px;
	padding: 7px;
	border: 1px solid #ccc;
	border-radius: 3px;
}

.mailform section table select {
	height: 30px;
}

.mailform section table input[type*="email"] {
    width: 70%;
}

.mailform section table textarea {
	width: 100%;
	height: 10em;
}

.mailform section table select option:nth-of-type(1),
.mailform section table .request,
.mailform section table input[type*="date"] {
    display: none;
}

.mailform section button {
	display: block;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	width: 50%;
	margin: 0 auto;
	background: #dc2c72;
	padding: 10px;
	border: none;
	border-radius: 3px;
}

.mailform section button:after {
    font-family: "Font Awesome 5 Free";
    content: "\f0a9";
    font-weight: 900;
    display: inline-block;
    margin: 0 0 0 5px;
}

.mailform section:nth-of-type(2) div {
    background: #f5f5f5;
    padding: 20px;
    margin: 30px 0 0;
}

.mailform section:nth-of-type(2) div p {
    font-size: 14px;
}

.confirm section p {
    margin: 0 0 20px;
}

.confirm section button:nth-of-type(2) {
    font-size: 12px;
    font-weight: normal;
    width: 30%;
    margin: 20px auto 0;
    background: #999;
    padding: 5px;
}

.confirm section button:nth-of-type(2):after {
    content: none;
}
















