
/*base--------------------------------*/

*{
	font-family: 'Meiryo', 'メイリオ', 'ヒラギノ 角ゴPro W3', 'Hiragino Kaku Gothic Pro', 'MS PGothic', 'ＭＳ Ｐゴシック';
	font-size: 100%;
	}

html, body {
	height: 100%;
	overflow: visible;
	margin: 0;
	padding: 0;
}

html {
    background-color: #fff;
}

body{
	padding: 0;
    background: linear-gradient(#ececec,#fff);
}

/* よく登場する要素のリセット */

h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form, div {
	margin: 0;
	padding: 0;
	border: none;
	font-style: normal;
	font-weight: normal;
	font-size: 100%;
	text-align: left;
	list-style-type: none;
	font-family: 'ヒラギノ 角ゴPro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', 'MS PGothic', 'ＭＳ Ｐゴシック';
	color: #333;
}

/* テキストエリア内文字サイズのブラウザ間での差異をなくす */
textarea { font-size: 100%; }

/* 画像の下にできる隙間をなくす */
img {
	vertical-align: bottom;
}

.cf:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}

.cf {
	min-height: 1px;
}

* html .cf {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/*common--------------------------------*/

p{
	line-height: 1.2em;
}

a:link,
a:visited,
a:active,
a:hover {
	color: #333;
	text-decoration: none;
}

a:focus {
	outline:none;
}

a img {
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

a img:hover {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity:0.6;
	-khtml-opacity: 0.6;
	zoom:1;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

.container {
	width: 960px;
	margin: 0 auto;
	position: relative;
}

.sp {
	display: none;
}

.red {
	color: #c22923;
}

article {
	width: 100%;
    background: linear-gradient(#ececec,#fefefe);
}

/*header--------------------------------*/

header #logo {
    position: absolute;
    top: 0px;
    right: 0;
}



/*footer--------------------------------*/

footer {
    background: linear-gradient(#fefefe,#fff);
    border-bottom: 10px solid #006160;
}

footer .container {
    height: 170px;
}

footer .container #pagetop {
    position: absolute;
    bottom: 0;
    right: 0;
}

footer .container address {
    font-size: 13px;
    text-align: center;
    padding-top: 140px;
}

/*----------------------------------------*/
/* top */
/*----------------------------------------*/

/*header--------------------------------*/

#top header {
    background: #fff url('../img/top/header_bg_pc.png') center top no-repeat;
	width: 100%;
    text-align: center;
    padding-bottom: 80px;
}

#top header h1 {
    text-align: center;
    padding-top: 520px;
}

#top header h2 {
    font-size: 24px;
    text-align: center;
    padding: 40px 0 20px
}

#top header p {
    font-size: 16px;
    text-align: center;    
}

#top header dl {
    width: 800px;
    margin: 30px auto 45px;
    border: 1px solid #c5cac3;
}

#top header dl dt {
    font-size: 18px;
    text-align: center;
    padding: 10px 0;
    background-color: #ddedd2;
    border-bottom: 1px solid #c5cac3;
}

#top header dl dd {
    font-size: 18px;
    text-align: center;
    padding: 10px 0;
}

#top header a {
    display: block;
    width: 600px;
    margin: 0 auto;
}



/*sec01--------------------------------*/

#top #sec01 h3 {
    background:  url('../img/top/sec01_bg.gif') left top;
    width: 100%;
    height: 63px;
    font-size: 36px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding-top: 12px;
}

#top #sec01  dl {
    width: 880px;
    margin: 0 auto;
    padding: 50px 0 5px;
}

#top #sec01  dl dt {
    width: 110px;
    height: 75px;
    float: left;
}

#top #sec01  dl dd {
    width: 330px;
    height: 75px;
    float: left;
}

#top #sec01  dl dd #month {
    margin-right: .5em;
}

#top #sec01  dl dd select,
#top #sec01  dl dd input {
    width: 210px;
}

#top #sec01  dl dd #amountUnit,
#top #sec01  dl dd #capacityUnit {
    padding-left: .5em;
}



/*sec02--------------------------------*/

#top #sec02 {
    width: 900px;
    background-color: #fff;
    margin: 0 auto;
    padding-bottom: 35px;
}

#top #sec02 h3 {
    background:  url('../img/top/sec01_bg.gif') left top;
    width: 100%;
    height: 63px;
    font-size: 36px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding-top: 12px;
}

#top #sec02 p {
    font-size: 18px;
    text-align: center;
    padding: 45px 0 25px;
}

#top #sec02 .blk01 {
    background: url('../img/top/sec02_bg_pc.png') center top no-repeat;
    width: 750px;
    height: 296px;
    padding: 40px 25px 0;
    margin: 0 auto;
}

#top #sec02 .blk01 dl:first-child {
    float: left;
}

#top #sec02 .blk01 dl:last-child  {
    float: right;
}

#top #sec02 .blk01 dl dt {
    font-size: 28px;
    color: #fff;
    text-align: center;
    width: 350px;
    height: 60px;
    padding-top: 15px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}

#top #sec02 .blk01 dl:first-child dt {
    background-color: #55b8e2;
}

#top #sec02 .blk01 dl:last-child dt {
    background-color: #97c950;
}

#top #sec02 .blk01 dl dd {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    padding-top: 20px;
}

.blk01 .sfont {
    font-size: 15px;
    font-weight: bold;
    text-align: right;
}



#top #sec02 .blk02 {
    padding-top: 30px;
    position: relative;
}

.blk02 .sfont {
	width: 50px;
    font-size: 10px;
	padding:0px 0 0 110px;
	position: relative;
    top: -10px;
}

.blk02 .sfont01 {
    font-size: 10px;
}

#top #sec02 .blk02  p {
    font-size: 12px;
    position: absolute;
    top: -30px;
    left:485px;
}

#top #sec02 .blk02 dl {
    background: url('../img/top/sec02_graph_pc.png') 200px top no-repeat;
    position: relative;
    padding-left: 50px;
}

#top #sec02 .blk02 dl dt {
    font-size: 16px;
    color: #fff;
    text-align: center;
    background-color: #97c950;
    width: 140px;
    height: 30px;
    padding-top: 5px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

#top #sec02 .blk02 dl dt:first-child {
    background-color: #55b8e2;
}

#top #sec02 .blk02 dl dd {
    font-size: 18px;
    padding: 25px 0 30px;
}

#top #sec02 .blk02 dl dd.graph {
    width: 350px; 
}

#top #sec02 .blk02 dl dd.graph#graphNow  {
    position: absolute;
    top: 25px;
    left:200px;
}

#top #sec02 .blk02 dl dd.graph#graphNow div {
    background-color: #55b8e2;
    height: 45px;
}

#top #sec02 .blk02 dl dd.graph#graphCentral  {
    position: absolute;
    top: 140px;
    left:200px;
}

#top #sec02 .blk02 dl dd.graph#graphCentral div {
    background-color: #97c950;
    height: 45px;
}

#top #sec02 .blk02 dl dd#scale ul {
    position: absolute;
    top: 245px;
    left: 175px;
}

#top #sec02 .blk02 dl dd#scale ul li {
    font-size: 10px;
    width: 60px;
    float: left;
}

#top #sec02 .blk02 #result {
    background: url('../img/top/sec02_obj_pc.png') left top no-repeat;
    width: 245px;
    height: 362px;
    padding-top: 160px;
    position: absolute;
    top: -90px;
    right: 45px;
}

#top #sec02 .blk02 #result div {
    font-size: 22px;
    font-weight: bold;
    color: #d93a1a;
    text-align: center;
}

#top #sec02 .blk02 #result div span,
#top #sec02 .blk02 #result div#resultText  {
    font-size: 40px;
}
#top #sec02 .blk02 #result div#resultText.price_t  {
    font-size: 22px;
    line-height: 1.2em;
    width: 9em;
    display: block;
    margin: 0 auto;
}

#top #sec02 .blk02 #result div#feeDiff,
#top #sec02 .blk02 #result div#feeDiff  span {
    font-size: 35px;
    line-height: 1.2em;
}

#top #sec02 .blk03 table {
    width: 800px;
    margin: 0 auto;
    border-collapse: collapse;
    border: 1px solid #878b8a;
}

#top #sec02 .blk03 table th {
    background-color: #ddedd2;
    border: 1px solid #c5c7c6;
    font-size: 12px;
    text-align: center;
    height: 32px;
    padding-top: 6px;
}

#top #sec02 .blk03 table td {
    border: 1px solid #c5c7c6;
    font-size: 12px;
    text-align: center;
    height: 32px;
    padding-top: 6px;
}

#top #sec02 .blk03 p.note {
    font-size: 13px;
    padding: 5px 0 0 0;
    width: 800px;
    margin: 0 auto;
    text-align: right;
}



/*sec03--------------------------------*/

#top #sec03 {
    padding-top: 60px;
}

#top #sec03 a {
    display: block;
    width: 600px;
    margin: 0 auto 15px;
}

#top #sec03 dl {
    width: 800px;
    margin: 0 auto;
    padding-top: 35px;
}

#top #sec03 dl dt {
    font-size: 20px;
}

#top #sec03 dl dd {
    font-size: 18px;
    padding-left: 1em;
    text-indent: -1em;
}

#top #sec03 dl:last-child dd {
    padding-left: 0;
    text-indent: 0;
}



/*----------------------------------------*/
/* contact */
/*----------------------------------------*/

/*header--------------------------------*/

#contact header p {
    background: url('../img/contact/arrow.png') left 35px no-repeat;
    font-size: 18px;
    text-indent: 1em;
    padding-top: 30px;
}

#contact header p a {
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

#contact header p a:hover {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity:0.6;
	-khtml-opacity: 0.6;
	zoom:1;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}


/*sec01--------------------------------*/

#contact #sec01 {
    width: 100%;
    padding-top: 40px;
}

#contact #sec01 h1 {
    background:  url('../img/top/sec01_bg.gif') left top;
    width: 100%;
    height: 63px;
    font-size: 36px;
    font-weight: bold;
    color: #fff;
    padding-top: 12px;
    margin-bottom: 10px;
}

#contact #sec01 h1 span {
	width: 960px;
	display: block;
	margin: 0 auto;
}

#contact #sec01 #wrap {
    width: 960px;
    background-color: #fff;
    padding: 1px;
    margin: 0 auto;
}

#contact #sec01 .container {
    width: 958px;
    background-color: #fff;
    border: 1px solid #d6d6d6;
}

#contact #sec01 .container #form {
    width: 700px;
    padding-top: 50px;
    margin: 0 auto;
}

#contact #sec01 .container #form p {
    padding-top: 10px;
    line-height: 1.5em;
}

#contact #sec01 .container table {
    width: 700px;
    padding: 30px 0 70px;
    margin: 0 auto;
    border-bottom: 2px dotted #7d7b7c;
}

#contact #sec01 .container table th {
    width: 190px;
    font-size: 16px;
    padding-bottom: 15px;
}

#contact #sec01 .container table td {
    font-size: 16px;
    padding-bottom: 15px;
}

#contact #sec01 .container table td span.red {
    font-size: 14px;
    display: block;
}

#contact #sec01 .container table td .input01,
#contact #sec01 .container table td .select {
    width: 200px;
}

#contact #sec01 .container table td .input01.first {
    margin-right: .2em;
}

#contact #sec01 .container table td .mail,
#contact #sec01 .container table td .input02 {
    width: 510px;
}

#contact #sec01 .container table td .input03,
#contact #sec01 .container table td .input04 {
    width: 100px;
}

#contact #sec01 .container table td .input05 {
    width: 80px;
}

#contact #sec01 .container table td .input06 {
    width: 430px;
    height: 110px;
}

#contact #sec01 .container table tr.separate th,
#contact #sec01 .container table tr.separate td {
    padding-bottom: 45px;
}

#contact #sec01 .container table th.vat {
    vertical-align: top;
}

#contact #sec01 .container table th.vab {
    vertical-align: bottom;
}

#contact #sec01 .container table td span {
    display: block;
}

#contact #sec01 .container table td span#unit {
    display: inline;
}

#contact #sec01 .container table td span.mt15 {
    margin-top: 15px;
}

#contact .submitContainer {
    padding: 30px 0 40px;
}

#contact .submitContainer #submit {
    background: url('../img/contact/contact_submit.png') left top no-repeat;
    display: block;
    width: 296px;
    height: 70px;
    border: none;
    margin: 0 auto;
    text-indent: -9999px;
    cursor: pointer;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

#contact.confirm .submitContainer {
    width: 550px;
    margin: 0 auto;
    padding: 30px 0 40px;
    clear: both;
}

#contact.confirm .submitContainer  #btnBack {
    background: url('../img/contact/confirm_btn_back.png') left top no-repeat;
    display: block;
    width: 264px;
    height: 60px;
    border: none;
    float: left;
    text-indent: -9999px;
    cursor: pointer;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

#contact.confirm .submitContainer #submit {
    background: url('../img/contact/confirm_submit.png') left top no-repeat;
    display: block;
    width: 255px;
    height: 60px;
    border: none;
    float: right;
    text-indent: -9999px;
    cursor: pointer;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

#contact.confirm .submitContainer  #btnTop {
    background: url('../img/contact/complete_btn_back.png') left top no-repeat;
    display: block;
    width: 296px;
    height: 70px;
    border: none;
    margin: 0 auto;
    text-indent: -9999px;
    cursor: pointer;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

.submitContainer #submit:hover,
.submitContainer #btnBack:hover,
.submitContainer #btnTop:hover {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity:0.6;
	-khtml-opacity: 0.6;
	zoom:1;
	-webkit-transition: .5s ease-out;
	-moz-transition: .5s ease-out;
	-ms-transition: .5s ease-out;
	transition: .5s ease-out;
}

#contact.confirm  #sec01 .container h2 {
    font-size: 24px;
    color: #015d5c;
    padding: 30px 0 35px;
}

#contact.confirm #complete {
    width: 100%;
    padding-top: 60px;
    border-bottom: 2px dotted #7d7b7c;
    position: relative
}

#contact.confirm #complete img {
    position: absolute;
    bottom: 0;
    right: 0;
}