@charset "utf-8";

/* =============================================================================
    Stlye
============================================================================= */

/* Common
----------------------------------------------- */
html {
  font-size: 10px;
}

body {
  min-width: 1020px;
  overflow: hidden;
  line-height: 1.6;
  letter-spacing: 1px;
  font-family: "メイリオ", "Meiryo", sans-serif;
  font-size: 1.5em;
  background: #fff9ff;
}

a[href^="tel:"] {
  pointer-events: none;
  cursor: default;
  color: inherit;
  text-decoration: none;
}


/* Header
----------------------------------------------- */
div#header {
  position: fixed;
  top: 0;
  min-width: 1020px;
  width: 100%;
  z-index: 10;
  padding: 5px 0 0;
  border-top: 20px #e1f5bf solid;
  background: #fff2d4;
}

div#header::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 65px;
  background: #ffc133;
}

p#headerInformation {
  width: 1020px;
  line-height: 1;
  margin: -20px auto 2px;
  font-size: 1.3rem;
}

div#header div.box {
  width: 1020px;
  margin: 0 auto;
}

div#header div.box::after {
  content: "";
  display: block;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}

h1#headerLogo,
p#headerLogo {
  float: left;
  padding: 10px 0;
}

ul#headerMenu {
  position: relative;
  padding: 0 0 0 204px;
}

ul#headerMenu > li {
  float: left;
  margin: 0 0 0 72px;
}

ul#headerMenu div.lower {
  position: absolute;
  left: 0;
  overflow: hidden; /* float release */
  background: #ffc033;
}

ul#headerMenu div.lower {
  display: none;
  padding: 20px 50px 20px 50px;
}

ul#headerMenu div.lower ul > li {
  float: left;
  padding: 0 20px 0 0;
}

ul#headerMenu div.lower a {
  display: block;
  width: 205px;
  height: 125px;
  overflow: hidden;
}

ul#headerMenu div.lower a::before {
  content: "";
  display: block;
  width: 205px;
  height: 125px;
  background-repeat: no-repeat;
  background-size: 205px auto;
}

ul#headerMenu div.lower a:hover {
  opacity: 0.7;
}

ul#headerMenu div.lower a[href$="landlord/about.html"]::before {
  background-image: url(../image/header_navLandlord_knowledge.jpg);
}

ul#headerMenu div.lower a[href$="landlord/qanda.html"]::before {
  background-image: url(../image/header_navLandlord_qanda.jpg);
}

ul#headerMenu div.lower a[href$="landlord/success.html"]::before {
  background-image: url(../image/header_navLandlord_success.jpg);
}

ul#headerMenu div.lower a[href$="owner/about.html"]::before {
  background-image: url(../image/header_navOwner_knowledge.jpg);
}

ul#headerMenu div.lower a[href$="owner/qanda.html"]::before {
  background-image: url(../image/header_navOwner_qanda.jpg);
}

ul#headerMenu div.lower a[href$="owner/success.html"]::before {
  background-image: url(../image/header_navOwner_success.jpg);
}

ul#headerMenu div.lower a[href$="word/index.html"]::before {
  background-image: url(../image/header_nav_word.jpg);
}

div#headerContents {
  margin: 0 0 0 160px;
}

div#headerContents form,
div#headerContents p {
  float: left;
}

div#headerContents form {
  margin: 12px 0 0 146px;
}

div#headerContents input[type="text"] {
  width: 200px;
  height: 35px;
  box-sizing: border-box;
  margin: 0 3px 0 0;
  padding: 0 3px;
  border: 1px #ffd543 solid;
  border-radius: 3px;
  box-shadow: 0 0 3px 0 #c9ae52 inset;
}

div#headerContents input[type="image"] {
  vertical-align: middle;
  margin: 0 18px 0 0;
  border-top: 8px #42b627 solid;
  border-bottom: 8px #42b627 solid;
  border-right: 3px #42b627 solid;
  border-left: 3px #42b627 solid;
  border-radius: 3px;
  box-shadow: 1px 1px 0 0 #387818;
}

div#headerContents p.tel {
  width: 275px;
  line-height: 1;
  margin: 8px 20px 0 0;
}

div#headerContents p.tel img {
  margin: 0 0 3px;
}

div#headerContents p.contact {
  margin: 12px 0 0;
}


/* Footer
----------------------------------------------- */
div#footer {
  position: relative;
  z-index: 0;
  border-top: 2px #ffc033 solid;
  background: #fff2d5;
}

div#footer a {
  color: inherit;
}

div#footer a:hover {
  color: #8c8c8c;
}

div#footer div.sitemap {
  width: 1020px;
  margin: 0 auto 5px;
  padding: 5px 0;
  border-bottom: 2px #ffc033 solid;
}

div#footer ul.sitemap {
  overflow: hidden; /* float release */
  font-size: 1.3rem;
}

div#footer ul.sitemap p.title::before {
  content: "\0025a0";
}

div#footer ul.sitemap > li {
  float: left;
  padding: 0 40px 0 0;
}

div#footer div.access {
  position: relative;
  width: 1020px;
  margin: 0 auto 20px;
}

div#footer ul.nav {
  position: absolute;
  right: 0;
  overflow: hidden; /* float release */
  font-size: 1.3rem;
}

div#footer ul.nav > li {
  float: left;
}

div#footer ul.nav > li::before {
  content: "|";
  margin: 0 0.5em;
}

div#footer ul.nav > li:first-child::before {
  content: none;
}

div#footer address {
  padding: 0 0 3px;
  font-size: 1.3rem;
}

div#footer address dl {
  overflow: hidden; /* float release */
}

div#footer address dt,
div#footer address dd {
  float: left;
}

div#footer address dt::after {
  content: ":";
  margin: 0 2px 0 0;
}

div#footer address dd {
  margin: 0 1em 0 0;
}

div#footer address dd.address {
  float: none;
}

p#ssl {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin: 0 0 32px 420px;
}

p#copyright {
  padding: 2px 0;
  font-size: 1.3rem;
  text-align: center;
  background: #ffc033;
}


/* Contents
----------------------------------------------- */

/* ------ ページ内リンクのヘッダ高さ吸収 ------ */
.linkWrap {
  margin-top: -144px !important;
  padding-top: 144px !important;
}

/* ------ top ------ */
h1#top {
  width: 1020px;
  line-height: 70px;
  margin: 0 auto 25px;
  color: #fff;
  font-size: 3.2rem;
}

h1#top::before {
  content: "";
  position: absolute;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 70px;
  background: #ffc033;
}

/* ------ gotoTop ------ */
p#gotoTop {
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 10;
  opacity: 0.8;
}

/* ------ breadcrumbs => ------ */
p#breadcrumbs {
  width: 1020px;
  margin: 156px auto 0;
  padding: 0.3em 0;
  font-size: 1.2rem;
}

p#breadcrumbs::before {
  content: "";
  position: absolute;
  left: 0;
  z-index: -1;
  width: 100%;
  margin: -0.3em 0 0;
  height: 2.2em;
  background: #f2f2f2;
}

p#breadcrumbs a,
p#breadcrumbs span.parent {
  margin: 0 2px 0 0;
  padding: 2px 10px 0 0;
  color: #adadad;
  text-decoration: none;
  background: url(../image/icon_gt.svg) no-repeat right center;
}
/* ------ <= breadcrumbs ------ */


/* 下層ページ
----------------------------------------------- */
div#parent {
  display: table;
  width: 1020px;
  margin: 0 auto 60px;
}

div#sideNav,
div.mainContents {
  display: table-cell;
  vertical-align: top;
}

/* ======= Side Navi ====== */
div#sideNav {
  width: 240px;
  padding: 0 30px 0 0;
}

div#sideNav div.block {
  display: none;
  margin: 0 0 20px;
  border: 1px #54b272 solid;
  color: #479963;
  background: #e1f5bf;
}

div#sideNav p.title {
  font-size: 2rem;
  text-align: center;
}

div#sideNav p.title.knowledge {
  font-size: 2.2rem;
}

div#sideNav ul.list {
  padding: 10px 10px 0;
  border-top: 1px #54b272 solid;
}

div#sideNav ul.list > li {
  margin: 0 0 10px;
  font-size: 2rem;
  text-align: center;
}

div#sideNav ul.list > li a {
  display: block;
  padding: 10px 0;
  color: #479963;
  text-decoration: none;
  background: #fff;
}

div#sideNav ul.list > li.on a,
div#sideNav ul.list > li a:hover {
  color: #fff;
  background: #54b272;
}

div#sideNav p.title a {
  display: block;
  padding: 10px 0;
  color: #479963;
  text-decoration: none;
}

div#sideNav div.block.on p.title a,
div#sideNav div.block p.title a:hover {
  color: #fff;
  background: #54b272;
}

/* ======= Main Contents ====== */
div.mainContents {
  position: relative;
  width: 750px;
}

div.mainContents ul.index {
  margin: 0 0 10px;
  text-align: center;
}

div.mainContents ul.index > li {
  display: inline-block;
  margin: 0 0 15px 25px;
}

div.mainContents ul.index > li:first-child {
  margin-left: 0;
}

div.mainContents ul.index > li a {
  display: inline-block;
  position: relative;
  padding: 5px 30px 5px 15px;
  border: 3px solid #54b272;
  border-radius: 3px;
  color: inherit;
  text-decoration: none;
}

div.mainContents ul.index > li a:hover {
  background: #e1f5bf;
}

div.mainContents ul.index > li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  margin: -4px 10px 0 0;
  border-right: 6px transparent solid;
  border-left: 6px transparent solid;
  border-top: 8px #54b272 solid;
}

div.indexContents h1.belt,
div.indexContents h2.belt,
div.mainContents h2.belt {
  display: table;
  margin: 0 0 20px 5px;
  padding: 0 0.2em;
  font-size: 2.4rem;
  background: #fff9ff;
}

div.indexContents h1.belt::before,
div.indexContents h2.belt::before,
div.mainContents h2.belt::before {
  content: "";
  position: absolute;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 1.3em;
  margin: 0.1em 0 0;
  background: #33a1db;
}

div.indexContents h2.borderPink,
div.mainContents h2.borderPink {
  padding-bottom: 8px;
  background: url(../image/border_pink.png) no-repeat center bottom;
  background-size: 981px auto;
}

div.indexContents h3.em,
div.mainContents h3.em {
  margin: 0 0 15px 10px;
  font-size: 2rem;
}

div.mainContents ul.mark li,
div.mainContents ol.mark li {
  margin: 0 0 5px 1em;
  text-indent: -1em;
}

/* ====== Image ====== */
p#topImage img[src$="index_top.jpg"] {
  width: 1500px;
}

p#greeting img[src$="index_greeting.jpg"] {
  width: 981px;
}

div.indexContents img[src$="index_pickup_sell.png"],
div.indexContents img[src$="index_pickup_inherit.png"],
div.indexContents img[src$="index_pickup_solution.png"] {
  width: 315px;
}

div.indexContents img[src$="index_success_owner.jpg"],
div.indexContents img[src$="index_success_landlord.jpg"] {
  width: 482px;
}

div.indexContents img[src$="index_consultation_mail.png"],
div.indexContents img[src$="index_consultation_tel.png"] {
  width: 400px;
}


div.mainContents img[src$="landlord_about_image.png"] {
  width: 417px;
}

div.mainContents img[src$="landlord_appraisal_image.png"] {
  width: 266px;
}


/* Pages: Index
----------------------------------------------- */
div#index {
  margin: 156px 0 0;
}

/* ====== topImage ====== */
p#topImage {
  position: relative;
  overflow: hidden;
  height: 200px;
  padding: 10px 0 0;
}

p#topImage img {
  position: absolute;
  left: 50%;
  margin: 0 0 0 -750px;
}

div.indexContents {
  position: relative;
  width: 1020px;
  margin: 0 auto;
  padding: 20px 0 60px;
}

div.indexContents p#greeting {
  margin: 0 0 20px;
  text-align: center;
}


div.indexContents ul.pickup {
  overflow: hidden; /* float release */
  margin: 0 0 30px 2px;
}

div.indexContents ul.pickup li {
  float: left;
  margin: 0 0 0 18px;
}

div.indexContents ul.pickup a:hover {
  opacity: 0.7;
}

div.indexContents div.troubleBox {
  display: table;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin: 0 0 35px;
  padding: 0 12px;
}

div.indexContents div.troubleBox div.trouble {
  display: table-cell;
  width: 50%;
  height: 100%;
  vertical-align: top;
}

div.indexContents div.troubleBox div.trouble dl {
  height: 100%;
  margin: 0 8px;
  border: 1px #fff solid;
  box-shadow: 0px 0px 0px 2px #2fa3e0;
  background: #87dfff;
}

div.indexContents div.troubleBox div.trouble dl dt {
  width: 475px;
  height: 78px;
  overflow: hidden;
  margin: 0 auto 10px;
}

div.indexContents div.troubleBox div.trouble dl dt::before {
  content: "";
  display: block;
  width: 475px;
  height: 78px;
}

div.indexContents div.troubleBox div.trouble dl#troubleOwner dt::before {
  background: url(../image/index_owner_trouble.png) no-repeat;
  background-size: 475px auto;
}

div.indexContents div.troubleBox div.trouble dl#troubleLandlord dt::before {
  background: url(../image/index_landlord_trouble.png) no-repeat;
  background-size: 475px auto;
}

div.indexContents div.troubleBox div.trouble dl dd {
  margin: 0 0 0 1.2em;
  padding: 0 5px 1em 15px;
  text-indent: -1.2em;
}

div.indexContents div.troubleBox div.trouble a {
  display: block;
  color: #000;
  text-decoration: none;
}

div.indexContents div.troubleBox div.trouble a:hover {
  background: #c9f2ff;
}

div.indexContents ul.success {
  overflow: hidden; /* float release */
  margin: 0 0 30px;
}

div.indexContents ul.success li {
  float: left;
  margin: 0 0 0 19px;
}

div.indexContents ul.success a:hover,
div.indexContents ul.contentsLink a:hover {
  opacity: 0.7;
}

div.indexContents ul.contentsLink {
  overflow: hidden;
}

div.indexContents ul.contentsLink + ul.contentsLink {
  margin: 0 0 30px;
}

div.indexContents ul.contentsLink li {
  float: left;
  margin: 0 0 20px;
  padding: 0 0 0 20px;
}

div.indexContents ul.contentsLink li:first-child {
  padding-left: 12px;
}

div.indexContents ul.contentsLink li img {
  width: 234px;
}

div.indexContents div.listBox {
  margin: 0 0 50px;
}

div.indexContents div.listBox > h2 {
  height: 35px;
  overflow: hidden;
  margin: 0 0 30px;
}

div.indexContents div.listBox > h2::before {
  content: "";
  display: block;
  height: 44px;
  background-position: center top;
  background-repeat: no-repeat;
}

div.indexContents div.listBox ol {
  padding: 10px 15px;
  border: 1px #cf729a solid;
  background: #fff;
}

div.indexContents div.listBox ol li {
  margin: 0 0 5px;
}

div.indexContents div.listBox ol a {
  color: inherit;
}

div.indexContents div.listBox ol a:hover {
  color: #808080;
}

div.indexContents div#popularity > h2::before {
  background-image: url(../image/index_str_popularity.svg);
}

div.indexContents div#popularity ol {
  margin: 0 20px 20px;
}

div.indexContents div#blog > h2::before {
  background-image: url(../image/index_str_blog.svg);
}

div.indexContents div#blog ol {
  margin: 0 20px 20px;
}

div.indexContents div#qanda > h2::before {
  background-image: url(../image/index_str_qanda.svg);
}

div.indexContents div#qanda h3 {
  height: 25px;
  overflow: hidden;
  margin: 0 0 5px;
}

div.indexContents div#qanda h3::before {
  content: "";
  display: block;
  height: 25px;
  background-repeat: no-repeat;
}

div.indexContents div#qanda > div {
  margin: 0 20px 20px;
}

div.indexContents div#qanda div.sokoti h3::before {
  background-image: url(../image/index_str_sokoti.svg);
}

div.indexContents div#qanda div.syakuya h3::before {
  background-image: url(../image/index_str_syakuya.svg);
}

div.indexContents div.consultationBox h2 {
  height: 25px;
  overflow: hidden;
  margin: 0 20px 5px;
}

div.indexContents div.consultationBox h2::before {
  content: "";
  display: block;
  height: 33px;
  margin: 0 0 0 50px;
  background: url(../image/index_str_consultation.svg) no-repeat;
}

div.indexContents div.consultationBox ul.banner {
  overflow: hidden; /* float release */
  margin: 0 0 0 20px;
}

div.indexContents div.consultationBox ul.banner li {
  float: left;
  margin: 0 0 0 60px;
}

div.indexContents div.consultationBox ul.banner a:hover {
  opacity: 0.7;
}

/* Common
----------------------------------------------- */
div.contents {
  margin: 0 0 50px 30px;
}

div.contents h3.em {
  margin-left: -20px;
}

div.contents em {
/* 
  text-decoration: underline;
 */
  background: linear-gradient(transparent 50%, #ffff66 60%);
  font-weight:bold;
}

div.contents em.bold {
  font-weight: bold;
  text-decoration: none;
}

ul.mark > li {
  margin: 0 0 0 1em;
  text-indent: -1em;
}

dl.example {
  margin: 30px 0 0;
}

dl.example dt {
  line-height: 1.2;
  margin: 0 0 5px;
  padding: 0 0 3px;
  border-bottom: 1px #000 solid;
}

dl.example dd {
  margin: 0 0 40px;
}

dl.exampleEm {
  margin: 30px 0 0;
}

dl.exampleEm dt {
  line-height: 1.2;
  margin: 0 0 5px;
  padding: 0 0 3px;
  border-bottom: 1px #000 solid;
  font-size: 1.7rem;
}

dl.exampleEm dd {
  margin: 0 0 40px;
}

div.mainContents p.text {
  margin: 0 0 1em;
}

div.mainContents ul.moveLink {
  overflow: hidden;
}

div.mainContents ul.moveLink li.prev {
  float: left;
}

div.mainContents ul.moveLink li.next {
  float: right;
}

div.mainContents ul.moveLink li a {
  display: inline-block;
  position: relative;
  padding: 8px 20px 6px;
  border: 1px #008740 solid;
  border-radius: 3px;
  color: #fff;
  text-decoration: none;
  background: #54b272;
}

div.mainContents ul.moveLink li a:hover {
  color: #008740;
  background: #eaf9ad;
}

div.mainContents ul.moveLink li a::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  margin-top: -4px;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
}

div.mainContents ul.moveLink li.prev a {
  padding-left: 30px;
}

div.mainContents ul.moveLink li.prev a::after {
  left: 0;
  margin-left: 10px;
  border-right: 8px solid #fff;
}

div.mainContents ul.moveLink li.prev a:hover::after {
  border-right: 8px solid #008740;
}

div.mainContents ul.moveLink li.next a {
  padding-right: 30px;
}

div.mainContents ul.moveLink li.next a::after {
  right: 0;
  margin-right: 10px;
  border-left: 8px solid #fff;
}

div.mainContents ul.moveLink li.next a:hover::after {
  border-left: 8px solid #008740;
}

div.mainContents a[href*="/word/"] {
  padding: 0 2px;
  color: inherit;
  text-decoration: underline dashed;
  background: #e6e6e6;
}

div.mainContents a[href*="/word/"]:hover {
  background: #d9d9d9;
}

/* ====== Button ====== */
.btnOrange a {
  display: inline-block;
  padding: 8px 10px 6px;
  border: 1px #fe8a00 solid;
  text-shadow:
    0 1px 0 #fe8a00,
    1px 0 0 #fe8a00,
    0 -1px 0 #fe8a00,
    -1px 0 0 #fe8a00,
    -1px -1px 0 #fe8a00,
    1px -1px 0 #fe8a00,
    -1px 1px 0 #fe8a00,
    1px 1px 0 #fe8a00
  ;
  color: #fff;
  text-decoration: none;
  background: #ffc033;
}

.btnOrange a::after {
  content: url(../image/btnOrange_delta.svg);
  vertical-align: middle;
  margin: 0 0 0 3px;
}

.btnOrange a:hover {
  background: #ffe882;
}


/* Pages: About
----------------------------------------------- */
div#landlord div#about p.text {
  margin: 0 0 1em;
}

div#landlord div#about p.image {
  text-align: center;
}


/* Pages: Appraisal
----------------------------------------------- */
div#landlord div#appraisal div.imageBox {
  width: 480px;
  margin: 1em auto;
}

div#landlord div#appraisal div.imageBox p.image {
  float: left;
  padding: 0 30px 0 0;
}

div#landlord div#appraisal div.imageBox table {
  text-align: center;
}

div#landlord div#appraisal div.imageBox table th,
div#landlord div#appraisal div.imageBox table td {
  padding: 2px 5px;
}

div#landlord div#appraisal div.imageBox table thead th {
  border: 1px #6e6e6e solid;
  font-weight: normal;
  background: #bcdfc7;
}

div#landlord div#appraisal div.imageBox table td {
  border: 1px #6e6e6e solid;
}

div#landlord div#appraisal div.imageBox table .short {
  letter-spacing: 1em;
  text-indent: 1em;
}

div#landlord div#appraisal dl.example {
  margin: 1em 0;
}

div#landlord div#appraisal dl.example dd {
  margin: 0 0 0 1.5em;
}

div#landlord div#appraisal p.btnOrange {
  margin: 50px 0 0;
  text-align: center;
}


/* Pages: Trouble
----------------------------------------------- */


/* Pages: Inherit(地主)
----------------------------------------------- */
div#landlord div#inherit div.contents > ul.mark {
  margin: 1em 0;
}

div#landlord div#inherit h4 {
  margin: 0 0 15px;
  font-size: 2rem;
}

div#landlord div#inherit div.subContents {
  margin: 0 0 30px 20px;
}


/* Pages: Forward
----------------------------------------------- */
div#forward div.formula {
  display: table;
  width: 100%;
  margin: 20px 0;
}

div#forward div.formula dl,
div#forward div.formula p {
  display: table-cell;
}

div#forward div.formula dl,
div#forward div.formula p.result {
  width: 210px;
}

div#forward div.formula dl.income {
  color: #fff;
  background: #54b272;
}

div#forward div.formula dl.expense {
  color: #fff;
  background: #5bafd2;
}

div#forward div.formula dt {
  line-height: 1;
  padding: 15px 0 10px;
  font-size: 5rem;
  text-align: center;
}

div#forward div.formula ul {
  margin: 0 0 15px 20px;
}

div#forward div.formula li {
  line-height: 1.2;
  margin-bottom: 0;
}

div#forward div.formula p {
  vertical-align: middle;
  font-size: 4rem;
  text-align: center;
}

div#forward div.formula p.result {
  vertical-align: middle;
  color: #fff;
  font-size: 5rem;
  background: #fdaafc;
}

div#forward ul.example {
  margin: 1em;
}


/* Pages: Q&A
----------------------------------------------- */
dl.qanda {
  margin: -144px 0 30px 30px;
  padding: 144px 0 0;
}

dl.qanda > dt {
  position: relative;
  min-height: 25px;
  padding: 3px 0 5px 64px;
}


dl.qanda > dt span.num {
  position: absolute;
  left: 0;
  padding: 0 10px;
  border-radius: 12.5px;
  color: #fff;
  background: #ffc133;
}

dl.qanda > dd {
  display: none;
  position: relative;
  margin: 0 0 0 12px;
  padding: 10px 8px 8px 42px;
  background: #e1f5bf url(../image/icon_answer.svg) no-repeat 8px 8px;
}

dl.qanda > dd::after {
  content: "";
  clear: both;
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
}

dl.qanda > dd > img {
  position: absolute;
  bottom: 0;
  right: 0;
  line-height: 1;
  margin: 0 8px 6px 0;
  padding: 0 0 0 18px;
  background: #e1f5bf;
}

dl.qanda > dd.open {
  padding-bottom: 2.4em;
}

dl.qanda > dd.fold {
  height: 1.4em;
  overflow: hidden;
}

dl.qanda ol.mark.topSpace {
  margin-top: 1em;
}

dl.qanda span.slimSpace {
  margin-left: -12px;
}

div.mainContents dl.qanda > dd a[href*="/word/"] {
  background: #ccddaa;
}

div.mainContents dl.qanda > dd a[href*="/word/"]:hover {
  background: #adbc91;
}

div.mainContents dl.qanda > dd table a[href*="/word/"] {
  background: #e6e6e6;
}

div.mainContents dl.qanda > dd table a[href*="/word/"]:hover {
  background: #d9d9d9;
}

/* --- fold時の文章隠し --- */
dl.qanda > dd.fold::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background: #e1f5bf;
}

dl.details > dt {
  font-weight: bold;
}

dl.details > dd {
  margin: 0 0 10px 1em;
}

dl.description {
  margin: 0 0 0 1em;
}

dl.description dd {
  margin: 0 0 0 1em;
  padding: 0 0 10px 18px;
  background: url(../image/icon_arrow_red.svg) no-repeat 0 0.2em;
}

div.law_fig1 h4 {
  line-height: 1.2;
  margin: 0 0 10px;
  padding: 3px 5px 1px;
  color: #fff;
  background: #54b373;
}

div.law_fig1 p.before,
div.law_fig1 p.after {
  float: left;
  width: 56px;
  font-size: 1.3rem;
  text-align: center;
}

div.law_fig1 p.before {
  height: 72px;
  padding: 40px 25px 0;
  background: url(../image/land_fig1_up.svg) no-repeat;
}

div.law_fig1 p.after {
  height: 90px;
  padding: 60px 25px 40px;
  background: url(../image/land_fig1_down.svg) no-repeat;
}

div.law_fig1 p.border {
  display: table;
  position: relative;
  z-index: 0;
  margin: 0 auto 15px;
  padding: 0 0 0 10px;
  text-align: center;
  color: #fff;
  background: #31814b;
}

div.law_fig1 p.border::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  z-index: -1;
  width: 658px;
  height: 2px;
  margin: 0.7em 0 0 -329px;
  background: #31814b;
}

div.law_fig1 p.notes {
  margin: 0 0 0 1.5em;
  text-indent: -1em;
  font-size: 1.4rem;
}

div.law_fig1 p.figName {
  margin: 10px 0 0;
  text-align: center;
}

div.law_fig1 table {
  width: 540px;
  margin: 0 0 15px 115px;
  border: 2px #6e6e6e solid;
  font-size: 1.3rem;
  background: #fff;
}

div.law_fig1 table th,
div.law_fig1 table td {
  padding: 0 2px;
}

div.law_fig1 table thead th {
  border: 1px #6e6e6e solid;
  border-bottom: 3px #6e6e6e double;
  font-weight: normal;
  background: #bcdfc7;
}

div.law_fig1 table td {
  border: 1px #6e6e6e solid;
}

div.law_fig1 table.before .notes {
  width: 17em;
}

div.law_fig1 table.after .notes {
  width: 10em;
}

div.law_fig1 table .update {
  width: 5.2em;
}


/* Pages: Success
----------------------------------------------- */
div#success p.text,
div#success ul.mark {
  margin: 0 0 40px;
}


/* Pages: Word
----------------------------------------------- */
ul.word > li {
  margin: 0 0 10px;
}

ul.word > li a {
  color: #000;
  border-bottom: 1px #000 dashed;
  text-decoration: none;
}

ul.word > li a:hover {
  background: #e6e6e6;
}


/* Pages: Privacy
----------------------------------------------- */
div#privacy div.indexContents h3.em {
  margin-left: 0;
}

div#privacy div.indexContents > p.text {
  margin: 0 0 1em;
}

div#privacy ol.personality > li {
  margin: 0 0 1em 1.5em;
  text-indent: -1.5em;
}

div#privacy ol.personality p.text {
  margin: 0;
  text-indent: 0;
}

div#privacy dl.personality dd {
  margin: 0 0 1em 1.5em;
}

div#privacy dl.personality ul.mark {
  margin: 0 0 1em;
}

div#privacy dl.personality ol.mark {
  margin: 1em 0;
}

div#privacy dl.personality dd p.text {
  margin: 0 0 0 1.5em;
}

div#privacy dl.personality dd p.text + ul.mark {
  margin-left: 1.5em;
}

div#privacy dl.company dd {
  margin: 0 0 0 1em;
}


/* Pages: Contact
----------------------------------------------- */
div#contact {
  position: relative;
  width: 1020px;
  margin: 0 auto 60px;
}

div#contact p.information {
  margin: 0 0 1em;
}

div#contact p.caution,
div#contact span.caution {
  color: #f00;
}

div#contact label {
  cursor: pointer;
}

div#contact ul.error li,
div#contact p.caution {
  position: relative;
  padding: 0 0 0 14px;
  color: #f00;
}

div#contact ul.error > li:before,
div#contact p.caution:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0.4em 0 0 1px;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-left: 7px solid #f00;
}

div#contact dl.form {
  margin: 40px 0 20px;
  border-top: 1px #466e9f solid;
}

div#contact dl.form dt {
  margin: 1em 0 -2.8em 1em;
  line-height: 1.4;
}

div#contact dl.form dd {
  min-height: 1.6em;
  padding: 1.4em 0 1.4em 13em;
  border-bottom: 1px #466e9f solid;
}

div#contact input[type="text"],
div#contact textarea {
  width: 100%;
  box-sizing: border-box;
  margin: -4px 0 2px;
  padding: 2px;
}

div#contact input#postcode {
  width: 6em;
}

div#contact input#tel {
  width: 12em;
}

div#contact textarea {
  height: 8em;
}

div#contact input[type="radio"],
div#contact input[type="checkbox"] {
  position: relative;
  top: 1px;
  margin: 0 4px 0 0;
}

div#contact ul.button {
  text-align: center;
}

div#contact ul.button > li {
  display: inline-block;
  margin: 0 10px;
}

div#contact ul.virticalButton {
  margin: 20px 0 0;
}

div#contact ul.virticalButton li {
  margin: 0 0 10px;
  text-align: center;
}
