@charset "utf-8";

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

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

body {
  line-height: 1.6;
  letter-spacing: 1px;
  font-family: "メイリオ", "Meiryo", sans-serif;
  font-size: 1.5em;
}

.mbNone {
  display: none;
}

img {
  max-width: 100%;
}


/* Header
----------------------------------------------- */
div#header {
  width: 100%;
  z-index: 10;
  padding: 5px 0 0;
  border-top: 2px #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 {
  display: none;
}

h1#headerLogo,
p#headerLogo {
  text-align: center;
}

ul#headerMenu {
  position: relative;
  display: table;
  width: 100%;
  padding: 10px 0 0;
}

ul#headerMenu > li {
  display: table-cell;
  width: 105px;
  margin: 0 1px 0 2px;
  vertical-align: top;
}

ul#headerMenu > li:first-child {
  width: 90px;
}

ul#headerMenu > li > a,
ul#headerMenu > li p.parent a {
  display: block;
  width: 105px;
  height: 44px;
  overflow: hidden;
  margin: 0 auto;
}

ul#headerMenu > li > a {
  width: 90px;
}

ul#headerMenu > li.top > a { /* preload */
  background: url(../image/mb_header_navTop_on.svg);
}

ul#headerMenu > li.landlord p.parent a { /* preload */
  background: url(../image/mb_header_navLandlord_on.svg);
}

ul#headerMenu > li.owner p.parent a { /* preload */
  background: url(../image/mb_header_navOwner_on.svg);
}

ul#headerMenu > li > a::before,
ul#headerMenu > li p.parent a::before {
  content: "";
  display: block;
  width: 105px;
  height: 46px;
}

ul#headerMenu > li > a::before {
  width: 90px;
}

ul#headerMenu > li.top > a::before {
  background: url(../image/mb_header_navTop_off.svg);
}

ul#headerMenu > li.landlord p.parent a::before {
  background: url(../image/mb_header_navLandlord_off.svg);
}

ul#headerMenu > li.owner p.parent a::before {
  background: url(../image/mb_header_navOwner_off.svg);
}

ul#headerMenu > li.top p.parent.on > a::before {
  background: url(../image/mb_header_navTop_on.svg);
}

ul#headerMenu > li.landlord p.parent.on a::before {
  background: url(../image/mb_header_navLandlord_on.svg);
}

ul#headerMenu > li.owner p.parent.on a::before {
  background: url(../image/mb_header_navOwner_on.svg);
}

ul#headerMenu div.lower {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
}

ul#headerMenu div.lower ul {
  margin: 3px 0 0;
  font-size: 1.4rem;
}

ul#headerMenu div.lower ul > li {
  position: relative;
  margin: 0 10px;
  border: 1px #fff solid;
  border-top: none;
  background: #ffc133;
}

ul#headerMenu div.lower a {
  display: block;
  padding: 15px 10px;
  color: #000;
  text-decoration: none;
}

ul#headerMenu div.lower a::before,
ul#headerMenu div.lower a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

ul#headerMenu div.lower a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #fff solid;
  border-radius: 50%;
}

ul#headerMenu div.lower a::after {
  width: 0;
  height: 0;
  margin: -5px 6px 0 0;
  border-bottom: 5px transparent solid;
  border-top: 5px transparent solid;
  border-left: 8px #fff solid;
}


img[src$="button_close.svg"] {
  display: none;
}

div#headerContents form {
  margin: 12px 0;
  text-align: center;
}

div#headerContents input[type="text"] {
  width: 200px;
  height: 35px;
  box-sizing: border-box;
  margin: 0 3px 0 0;
  padding: 0 4px;
  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,
div#headerContents p.contact {
  display: none;
}


/* Footer
----------------------------------------------- */
div#footer {
  border-top: 2px #ffc033 solid;
  background: #fff2d5;
}

div#footer h2 {
  margin: 0 3px;
}

div#footer a {
  color: inherit;
}

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

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

div#footer ul.sitemap > li p.title {
  padding: 8px 3px 5px;
  background: #ffc133;
}

div#footer ul.sitemap > li a {
  display: block;
  position: relative;
  padding: 8px 5px 5px;
  border-top: 1px #ffc133 solid;
  text-decoration: none;
}

div#footer ul.sitemap > li a::before,
div#footer ul.sitemap > li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

div#footer ul.sitemap > li a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #ffc133 solid;
  border-radius: 50%;
}

div#footer ul.sitemap > li a::after {
  width: 0;
  height: 0;
  margin: -5px 6px 0 0;
  border-bottom: 5px transparent solid;
  border-top: 5px transparent solid;
  border-left: 8px #ffc133 solid;
}

div#footer ul.sitemap > li li:first-child a {
  border: none;
}

div#footer ul.sitemap ul {
  margin: 0 0 1px;
  border-bottom: 1px #ffc133 solid;
}

div#footer ul.nav {
  margin: 0 0 30px;
  text-align: center;
}

div#footer ul.nav li {
  margin: 0 0 20px;
}

div#footer ul.nav a {
  position: relative;
  display: inline-block;
  padding: 0.5em 3em;
  border-radius: 2.6em;
  text-decoration: none;
  background: #ffc133;
}

div#footer ul.nav a::before,
div#footer ul.nav a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

div#footer ul.nav a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #fff solid;
  border-radius: 50%;
}

div#footer ul.nav a::after {
  width: 0;
  height: 0;
  margin: -5px 6px 0 0;
  border-bottom: 5px transparent solid;
  border-top: 5px transparent solid;
  border-left: 8px #fff solid;
}

div#footer address {
  margin: 0 5px;
  padding: 10px 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 {
  margin: 10px 0;
  text-align: center;
}

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


/* Contents
----------------------------------------------- */
div.article {
  position: relative;
  z-index: 0;
  padding-bottom: 1px;
  background: #fff9ff;
}

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

/* ------ top ------ */
h1#top {
  margin: 0 0 20px;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  background: #ffc033;
}

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

/* ------ breadcrumbs => ------ */
p#breadcrumbs {
  margin: 224px 0 0;
  padding: 0.3em 3px;
  font-size: 1.2rem;
  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 ------ */


/* 下層ページ
----------------------------------------------- */

/* ======= Side Navi ====== */
div#sideNav div.block {
  display: none;
  position: relative;
  z-index: 1;
  margin: 0 10px 20px;
  color: #479963;
  background: #e1f5bf;
}

div#sideNav div.block:first-child {
  display: block;
}

div#sideNav p.knowledge {
  position: relative;
  padding: 10px 0 8px;
  border: 1px #54b272 solid;
  text-align: center;
}

div#sideNav p.knowledge::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  width: 8px;
  height: 8px;
  margin: -6px 20px 0 0;
  border-right: 2px #54b272 solid;
  border-bottom: 2px #54b272 solid;
  border-radius: 1px;
}

div#sideNav p.knowledge.on::after {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  margin-top: -2px;
}

div#sideNav ul.list {
  display: none;
  position: absolute;
  z-index: 1;
  box-sizing: border-box;
  width: 100%;
  padding: 10px 10px 0;
  border: 1px #54b272 solid;
  border-top: none;
  background: #e1f5bf;
}

div#sideNav ul.list > li {
  margin: 0 0 10px;
  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 {
  color: #fff;
  background: #54b272;
}


/* ======= Main Contents ====== */
div.mainContents {
  position: relative;
  margin: 0 5px;
}

div.mainContents ul.index {
  margin: 0 0 30px;
}

div.mainContents ul.index > li {
  margin: 0 10px 10px;
  font-size: 1.4rem;
}

div.mainContents ul.index > li a {
  display: block;
  position: relative;
  padding: 10px 0 8px;
  border: 1px #ccc solid;
  border-radius: 3px;
  color: #000;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  background: #e6e6e6;
}

div.mainContents ul.index > li a::before,
div.mainContents ul.index > li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

div.mainContents ul.index > li a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #666 solid;
  border-radius: 50%;
}

div.mainContents ul.index > li a::after {
  width: 0;
  height: 0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  width: 8px;
  height: 8px;
  margin: -6px 6px 0 0;
  border-right: 2px #666 solid;
  border-bottom: 2px #666 solid;
  border-radius: 1px;
}

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: 2rem;
  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;
}

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;
  border-bottom: 1px #000 solid;
  font-size: 2rem;
  text-align: center;
}

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

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

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


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

/* ====== topImage ====== */
p#topImage {
  width: 100%;
  overflow: hidden;
  padding: 10px 0 0;
}

p#topImage img {
  position: relative;
  left: 50%;
  max-width: none;
  width: 170%;
  margin: 0 0 0 -73%;
}

div.indexContents {
  padding: 20px 0 60px;
}

div.indexContents p#greeting {
  margin: 0 10px 30px;
}

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

div.indexContents ul.pickup {
  text-align: center;
}

div.indexContents ul.pickup li {
  display: inline-block;
  width: 50%;
  box-sizing: border-box;
  margin: 0 0 10px;
  padding: 0 5px;
}

div.indexContents div.troubleBox {
  margin: 0 0 30px;
}

div.indexContents div.troubleBox div.trouble {
  margin: 0 10px 30px;
}

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

div.indexContents div.troubleBox div.trouble dl dt {
  position: relative;
  height: 78px;
  overflow: hidden;
  margin: 0 10px 10px 0;
}

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

div.indexContents div.troubleBox div.trouble dl dt::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 25.5%;
  height: 76px;
  background: #87dfff;
}

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;
}

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

div.indexContents ul.success li {
  margin: 0 10px 20px;
}

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

div.indexContents ul.contentsLink li {
  float: left;
  width: 50%;
  margin: 0 0 20px;
  padding: 0 10px;
  box-sizing: border-box;
}

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

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

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

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

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 10px 5px;
}

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

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

div.indexContents div.listBox ol li {
  margin: 0 10px 10px;
  padding: 0 0 0 1.5em;
  text-indent: -1.5em;
}

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

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 10px 5px;
}

div.indexContents div.consultationBox h2::before {
  content: "";
  display: block;
  width: 100%;
  height: 33px;
  background: url(../image/index_str_consultation.svg) no-repeat center top;
}

div.indexContents div.consultationBox ul.banner {
  margin: 0 0 50px;
}

div.indexContents div.consultationBox ul.banner li {
  margin: 0 10px 10px;
}

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

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

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 {
  margin: 50px 0;
  text-align: center;
}

div.mainContents ul.moveLink li {
  margin: 0 0 20px;
}

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

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: 32px;
}

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

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

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


/* ====== Button ====== */
.btnOrange {
  text-align: center;
}

.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;
}


/* 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 {
  margin: 1em 0;
}

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

div#landlord div#appraisal div.imageBox table {
  margin: 0 auto;
  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 1em;
}


/* Pages: Trouble, Inherit(地主)
----------------------------------------------- */
div#landlord div#trouble ul.mark li,
div#landlord div#inherit ul.link li {
  margin: 0 10px 10px;
}

div#landlord div#trouble ul.mark a,
div#landlord div#inherit ul.link a {
  display: block;
  position: relative;
  padding: 10px 0 8px;
  border: 1px #ccc solid;
  border-radius: 3px;
  color: #000;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  background: #e6e6e6;
}

div#landlord div#trouble ul.mark a::before,
div#landlord div#trouble ul.mark a::after,
div#landlord div#inherit ul.link a::before,
div#landlord div#inherit ul.link a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

div#landlord div#trouble ul.mark a::before,
div#landlord div#inherit ul.link a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #666 solid;
  border-radius: 50%;
}

div#landlord div#trouble ul.mark a::after,
div#landlord div#inherit ul.link a::after {
  width: 0;
  height: 0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  width: 8px;
  height: 8px;
  margin: -6px 6px 0 0;
  border-right: 2px #666 solid;
  border-bottom: 2px #666 solid;
  border-radius: 1px;
}

div#landlord div#inherit h4 {
  margin: 0 0 15px;
  border-bottom: 1px #000 dotted;
  font-size: 2rem;
  text-align: center;
}

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


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

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 dd {
  padding: 0 0 1px;
}

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.calculation {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}

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;
  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;
  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;
}

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 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 {
  overflow: hidden;
}

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

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 {
  margin: 0 0 10px;
  border-bottom: 3px #31814b double;
  font-size: 1.3rem;
}

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: 480px;
  height: 2px;
  margin: 0.7em 0 0;
  background: #31814b;
}

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

div.law_fig1 p.notes span.important {
  display: block;
}

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

div.law_fig1 table {
  margin: 0 0 15px;
  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;
}


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


/* Pages: Word
----------------------------------------------- */
div#word div#sideNav {
  display: none;
}

ul.word > li {
  margin: 0 0 20px;
}

ul.word > li a {
  display: block;
  position: relative;
  padding: 10px 30px 8px 5px;
  border: 1px #ccc solid;
  border-radius: 3px;
  color: #000;
  text-decoration: none;
  text-indent: 0;
  background: #e6e6e6;
}

ul.word > li a::before,
ul.word > li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
}

ul.word > li a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #666 solid;
  border-radius: 50%;
}

ul.word > li a::after {
  width: 0;
  height: 0;
  margin: -5px 6px 0 0;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-left: 8px solid #666;
}

div#word p.link a {
  display: block;
  position: relative;
  padding: 10px 0 8px;
  border: 1px #ccc solid;
  border-radius: 3px;
  color: #000;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  background: #e6e6e6;
}

div#word p.link a::before,
div#word p.link a::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 12px;
}

div#word p.link a::before {
  margin-top: -11px;
  padding: 10px;
  border: 1px #666 solid;
  border-radius: 50%;
}

div#word p.link a::after {
  width: 0;
  height: 0;
  margin: -5px 0 0 6px;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-right: 8px solid #666;
}


/* Pages: Privacy
----------------------------------------------- */
div#privacy div.indexContents {
  position: relative;
  margin: 0 5px;
}

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 30px 1.5em;
  text-indent: -1.5em;
}

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

div#privacy dl.personality dt {
  border-bottom: 1px #000 dotted;
}

div#privacy dl.personality dd {
  margin: 0 0 30px;
}

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;
  margin: 0 0 60px;
}

div#contact p.information,
div#contact p.text,
div#contact p.attention {
  margin: 5px 5px 1em;
}

div#contact p.caution,
div#contact span.caution {
  color: #f00;
  font-weight: bold;
}

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 ul.error li {
  margin: 0 5px 5px;
}

div#contact dl.form {
  margin: 30px 0 0;
}

div#contact dl.form dt {
  margin: 0 0 5px;
  padding: 0.2em 0;
  border-top: 1px #ffc133 solid;
  border-bottom: 1px #ffc133 dotted;
  font-weight: bold;
  text-align: center;
  background: #fff2d4;
}

div#contact dl.form dt span[lang="en"] {
  margin: 0 0 0 1em;
  font-size: 1.2rem;
  font-weight: normal;
}

div#contact dl.form dd {
  margin: 0 10px 1em;
}

div#contactForm div.innerBox dl.form dt {
  margin: 0 0 5px;
}

div#contactForm div.innerBox dl.form dd {
  margin: 0 0 1em;
}

div#contact dl.form input[type="text"],
div#contact dl.form textarea {
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  padding: 2px;
}

div#contact dl.form textarea {
  height: 6em;
}

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 {
  margin: 0 0 10px;
}

div#contact ul.link li,
div#contact ul.virticalButton li {
  margin: 0 10px 1em;
}

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