@charset "utf-8";

* {
    margin: 0;
    padding: 0;
}

header,
section,
footer,
nav {
    margin: 0;
    padding: 0;
}

body {
    font-family: "メイリオ", Meiryo, "HiraKakuProN-W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
    font-size: 14px;
    line-height: 20px;
    overflow: hidden;
}

input,
textarea {
    font-family: "メイリオ", Meiryo, "HiraKakuProN-W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}

ul,
ol {
    list-style-type: none;
}

ol.decimal {
    list-style: decimal;
    padding-left: 1em;
}

img {
    border: none;
    vertical-align: top;
}

p {
    margin-bottom: 14px;
}

header {
    width: 100%;
    height: 90px;
    background-color: #000000;
    position: fixed;
    left: 0px;
    top: 0px;
    z-index: 5000;
}

header #header-inner {
    width: 980px;
    margin: 0 auto;
    position: relative;
}

header #header-inner h1 {
    width: 117px;
    height: 40px;
    display: inline-block;
    position: absolute;
    left: 0px;
    top: 25px;
}

header #header-inner h1 img {}

header #header-inner nav {
    position: absolute;
    right: 0px;
    top: 40px;
    display: inline-block;
}

header #header-inner nav ul {}

header #header-inner nav ul li {
    margin: 0 0 0 30px;
    float: left;
}

h2.cont-title img,
div.cont-title img {
    margin: 0 0 50px 0;
}

section.cont-area,
div.cont-area {
    padding-top: 130px;
    position: relative;
    z-index: 100;
}

/* --- --- --- --- --- --- --- --- --- --- 
    背景
 --- --- --- --- --- --- --- --- --- --- */

#bg01 {
    position: fixed;
    left: 0px;
    top: 0px;
    z-index: 20;
}

#bg02 {
    position: fixed;
    right: 0px;
    top: 0px;
    z-index: 21;
}

/* --- --- --- --- --- --- --- --- --- --- 
    ホーム
 --- --- --- --- --- --- --- --- --- --- */

#home-area {
    width: 100%;
}

#home-area #main-copy {
    width: 701px;
    margin: 0 auto;
}

#main-copy img {
    margin: 0 0 40px 0;
}

#home-area #main-text {
    margin: 0 0 40px 0;
    line-height: 2em;
}

#home-area #news-area {
    width: 698px;
    margin: 0 auto;
    border: dashed 1px #333333;
}

#home-area #news-area #news-area-inner {
    padding: 20px;
}

#home-area #news-area #news-area-inner h2 {
    margin: 0 0 15px 0;
}

#home-area #news-area #news-area-inner h2 img {}

#home-area #news-area #news-area-inner ul {}

#home-area #news-area #news-area-inner ul li {
    margin: 0 0 5px 0;
}

#home-area #news-area #news-area-inner ul li.last {
    margin: 0;
}

#home-area #news-area #news-area-inner ul li .date {
    margin: 0 15px 0 0;
}

/* --- --- --- --- --- --- --- --- --- --- 
    サービス
 --- --- --- --- --- --- --- --- --- --- */

#service-area {}

#service-area h2.cont-title,
#service-area div.cont-title {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
}

#service-area h2.cont-title {
    height: 342px;
}

/* サービス案内（導入） */

#service-area #service-intro {
    position: relative;
    z-index: 200;
}

#service-area #service-intro ul#service-cont-list {
    height: 542px;
    width: 758px;
    margin: 0 auto;
    overflow: hidden;
}

#service-area #service-intro ul#service-cont-list li {
    width: 353px;
    height: 248px;
    overflow: hidden;
    display: inline-block;
}

#service-area #service-intro ul#service-cont-list li.l {
    float: left;
}

#service-area #service-intro ul#service-cont-list li.r {
    float: right;
}

#service-area #service-intro ul#service-cont-list li.t {
    margin-bottom: 46px;
}

#service-area #service-intro ul#service-cont-list li img {}

#service-area #service-intro ul#service-cont-list li p {
    width: 300px;
    margin: 0 25px;
    font-weight: bold;
    position: relative;
    top: -93px;
}

#service-area #service-sub-header {
    width: 1000px;
    /*margin: -342px auto 0 auto;*/
    margin: -100px auto 0 auto;
    display: none;
}

/* 各サービスのナビ */

#service-area #service-sub-header #services-nav {
    float: right;
}

#service-area #service-sub-header #services-nav ol {
    margin: 0 10px 0 0;
}

#service-area #service-sub-header #services-nav ol li {
    /*margin: 0 0 65px 0;*/
    margin: 0 10px 50px 0;
    float: left;
}

#service-area #service-sub-header #services-nav ol li.last {
    margin-right: 0px;
}

#service-area #service-sub-header #services-nav ol li a {
    height: 50px;
    overflow: hidden;
    display: block;
}

#service-area #service-sub-header #services-nav ol li.sn1 a {
    width: 177px;
}

#service-area #service-sub-header #services-nav ol li.sn2 a {
    width: 179px;
}

#service-area #service-sub-header #services-nav ol li.sn3 a {
    width: 153px;
}

#service-area #service-sub-header #services-nav ol li.sn4 a {
    width: 168px;
}

#service-area #service-sub-header #services-nav ol li a:hover img,
#service-area #service-sub-header #services-nav ol li.current a img {
    display: none;
}

#service-area #service-sub-header #services-nav ol li.sn1 a:hover,
#service-area #service-sub-header #services-nav ol li.sn1.current a {
    background: url(../images/nav_s1_on.png) no-repeat left top;
}

#service-area #service-sub-header #services-nav ol li.sn2 a:hover,
#service-area #service-sub-header #services-nav ol li.sn2.current a {
    background: url(../images/nav_s2_on.png) no-repeat left top;
}

#service-area #service-sub-header #services-nav ol li.sn3 a:hover,
#service-area #service-sub-header #services-nav ol li.sn3.current a {
    background: url(../images/nav_s3_on.png) no-repeat left top;
}

#service-area #service-sub-header #services-nav ol li.sn4 a:hover,
#service-area #service-sub-header #services-nav ol li.sn4.current a {
    background: url(../images/nav_s4_on.png) no-repeat left top;
}

/* ネクストボタン */

.service-paging-area {
    width: 64px;
    height: 64px;
    display: none;
    position: fixed;
    top: 100px;
    z-index: 4090;
}

.service-paging-area#service-back-btn {
    left: 10px;
}

.service-paging-area#service-next-btn {
    right: 10px;
}

.service-paging-area a {
    width: 64px;
    height: 64px;
    display: block;
}

.service-paging-area#service-back-btn a {
    background: url(../images/nav_back_on.png) no-repeat left top;
}

.service-paging-area#service-next-btn a {
    background: url(../images/nav_next_on.png) no-repeat left top;
}

.service-paging-area a:hover img {
    display: none;
}

/*
#service-next-btn {
	width: 880px;
	margin: -415px auto 0 auto;
	border-top: solid 1px transparent;
	position: relative;
}
#service-next-btn a {
	width: 64px;
	height: 64px;
	display: block;
	background: url(../images/nav_next_on.png) no-repeat left top;
	position: absolute;
	left: 892px;
	top: 0px;
	z-index: 4090;
}
#service-next-btn a:hover img {
	display: none;
}
*/

/* 各サービスのラッパー */

#service-area #services-wrapper {
    width: 880px;
    /*height: 2070px;
	margin: -130px auto 0 auto;*/
    margin: -545px auto 0 auto;
    position: relative;
    z-index: 300;
}

/* 各サービス共通 */

#service-area section.services {
    width: 880px;
    padding-bottom: 40px;
    opacity: 0.1;
    position: absolute;
    top: 0px;
}

#service-area section.services h3 {
    margin: 0 0 45px 0;
}

#service-area section.services h4 {
    margin: 40px 0 36px 0;
}

#service-area section.services h4.first {
    margin-top: 0px;
}

#service-area section.services .indent-box {
    margin-left: 30px;
    margin-right: 30px;
}

#service-area section.services dl.faq {}

#service-area section.services dl.faq dt,
#service-area section.services dl.faq dd {
    min-height: 32px;
    padding: 7px 0 0 45px;
}

#service-area section.services dl.faq dt {
    margin: 0 0 8px 0;
    background: url(../images/ico_q.png) no-repeat left top;
}

#service-area section.services dl.faq dd {
    margin: 0 0 18px 0;
    background: url(../images/ico_a.png) no-repeat left top;
}

#service-area section.services dl.faq dd ul {
    margin: 10px 0 10px 30px;
    list-style: disc;
}

#service-area section.services .contacts .l {
    width: 410px;
    float: left;
}

#service-area section.services .contacts .r {
    width: 390px;
    float: left;
}

#service-area section.services h5 {
    margin: 18px 0 10px 0;
}

#service-area section.services h5.first {
    margin-top: 0;
}

/* サービス 1 */

#services1 {
    left: 1000px;
}

#services1 #useflow-image {}

#services1 .medias .l {
    width: 357px;
    float: left;
}

#services1 .medias .r {
    width: 340px;
    float: right;
}

/* サービス 2 */

#services2 {
    left: 2000px;
}

#services2 table.compare {
    width: 99%;
}

#services2 table.compare th,
#services2 table.compare td {
    padding: 10px 30px;
    white-space: nowrap;
}

#services2 table.compare thead th {
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    background-color: #666666;
}

#services2 table.compare tr.even th,
#services2 table.compare tr.even td {
    background-color: #cccccc;
}

/* サービス 3 */

#services3 {
    left: 3000px;
}

/* サービス 4 */

#services4 {
    left: 4000px;
}

/* --- --- --- --- --- --- --- --- --- --- 
    ABOUT US
 --- --- --- --- --- --- --- --- --- --- */

#about-area {
    height: 900px;
}

#about-area h2.cont-title {
    width: 1000px;
    margin: 0 auto;
}

#about-area table {
    width: 800px;
    margin: 0 auto;
    background-color: #ffffff;
    border-collapse: collapse;
    border-left: solid 1px #000000;
    border-top: solid 1px #000000;
}

#about-area table th,
#about-area table td {
    padding: 10px 30px;
    white-space: nowrap;
    border-right: solid 1px #000000;
    border-bottom: solid 1px #000000;
}

#about-area table th.b_r_white,
#about-area table td.b_r_white {
    border-right: solid 1px #ffffff;
}

#about-area table tr.odd th,
#about-area table tr.odd td {
    color: #ffffff;
    background-color: #000000;
}

#about-area table tbody th {}

#about-area table tbody td {}

/* --- --- --- --- --- --- --- --- --- --- 
    コンタクト
 --- --- --- --- --- --- --- --- --- --- */

#contact-area {
    margin-bottom: 120px;
}

#contact-area h2.cont-title {
    width: 1000px;
    margin: 0 auto;
}

#contact-area table {
    width: 900px;
    margin: 0 auto 40px auto;
    background-color: #ffffff;
    border-collapse: collapse;
    border-left: solid 1px #000000;
    border-top: solid 1px #000000;
}

#contact-area table th,
#contact-area table td {
    padding: 10px 30px;
    border-right: solid 1px #000000;
    border-bottom: solid 1px #000000;
}

#contact-area table th.black,
#contact-area table td.black {
    color: #ffffff;
    background-color: #000000;
}

#contact-area table th.b_r_white,
#contact-area table td.b_r_white {
    border-right: solid 1px #ffffff;
}

#contact-area table th {
    text-align: left;
    white-space: nowrap;
}

#contact-area table td input {
    margin: 0 20px 0 0;
}

#contact-area table td .error-text {
    color: #ff0000;
    font-size: 12px;
}

#contact-area p.check {
    margin: 0 0 30px 0;
    text-align: center;
}

#contact-area a.btn {
    width: 314px;
    height: 44px;
    margin: 0 auto;
    display: block;
    background: url(../images/btn_contact1_on.gif) no-repeat left top;
}

#contact-area a.btn:hover img {
    display: none;
}

#privacy-area {
    width: 1000px;
    margin: 0 auto 60px;
}

#privacy-area #privacy-wrapper {
    width: 880px;
    margin: 0 auto;
}

.p-ttl {
    border-left: 20px solid #f0e992;
    padding: 0 0 0 24px;
    color: #333;
    font-size: 1.3em;
    background: #f0e020;
    height: 46px;
    display: flex;
    align-items: center;
    margin: 0 0 24px;
}

#privacy-area #privacy-wrapper p {
    margin-bottom: 36px;
}


/* --- --- --- --- --- --- --- --- --- --- 
    scroll nav
 --- --- --- --- --- --- --- --- --- --- */

#scroll-nav {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 400;
    display: none;
}

#scroll-nav li {}

#scroll-nav li.up {
    margin: 0 0 40px 0;
}

#scroll-nav li.down {}

#scroll-nav li img {
    cursor: pointer;
}

/* --- --- --- --- --- --- --- --- --- --- 
    other
 --- --- --- --- --- --- --- --- --- --- */

.clearfix {
    height: 1%;
}

.clearfix:after {
    clear: both;
    content: "";
    height: 0px;
    overflow: hidden;
    display: block;
}
