@charset "utf-8";

/* ===================================================================
corp
=================================================================== */

.display-flex,
.content-index {
  display: -webkit-box;   /* Chrome 4-20, Firefox 2-21, Safari 3.1-6.0 */
  display: -webkit-flex;  /* Chrome 21-27 */
  display: -moz-box;      /* Firefox 2-21 */
  display: -ms-flexbox;   /* IE9 */
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between;
            -ms-flex-pack: space-between;
}
.content-index .box {
  width: 300px;
  margin-bottom: 20px;
  padding: 20px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
}
.content-index .box img {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}
.content-index .box h2 {
  font-size: 1rem;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.content-index .box h2 a {
  color: #009a5a;
}
#content .content-index .box p {
  margin-top: 5px;
  margin-bottom: 0;
  font-size: 0.75rem;
}

.content-index .box2,
.content-index .box3 {
  width: 350px;
  margin-bottom: 20px;
  box-sizing: border-box;
  border: 2px solid #eeeeee;
  border-radius: 6px;
  background: #fff;
}
.content-index .box2 {
  width: 350px;
  padding: 20px;
}
.content-index .box3 {
  width: 460px;
  padding: 18px 20px;
}
.content-index .box2 img {
  display: block;
  width: 100%;
}
.content-index .box2 h3 {
  font-size: 1rem;
}
.content-index .box2 h3 a {
  color: #009a5a;
}
#content .content-index .box2 p,
#content .content-index .box3 p {
  margin-top: 4px;
  margin-bottom: 0;
}

.yearbox {
  padding: 1rem 0;
  border-top: 1px solid #eee;
}
.yearbox figure {
  width: 225px;
  margin: 0;
  padding: 0 0 0 20px;
}
.yearbox figure + figure {
  margin-top: 10px;
}
.yearbox figure img {
  width: 100%;
}
.yearbox figcaption {
  margin-top: 5px;
  font-size: 0.75rem;
  text-align: center;
}
.yearbox figcaption + img {
  margin-top: 10px;
}
.yearbox dt {
  clear: none;
  float: none;
  margin-bottom: 10px;
  color: #000;
  font-size: 1rem;
}
.yearbox dd {
  position: relative;
  float: none;
  margin-bottom: 10px;
  padding-left: 25px;
  /* background: url(../images/icon-circle.svg) 0 2px no-repeat; */
  font-size: 0.875rem;
}
.yearbox dd::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 9px;
  height: 9px;
  border: 2px solid #000;
  border-radius: 100%;
}

.content-network .tokyo-office {
  position: relative;
}
.content-network .tokyo-office-caption {
  position: absolute;
  bottom: 0;
  right: -10px;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.content-network .japanmap {
  min-height: 898px;
  padding-top: 20px;
  background: url(/corp/images/japanmap.png) right 0 no-repeat;
}
.content-network .office-data-list > dt {
  width: 5em;
  padding-right: 1em;
}
.content-network .overseas-office::before {
  content: "";
  display: block;
  width: 450px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #ccc;
}
.content-network .contact-link {
  margin-top: 80px;
}

.greeting figure{
	/*text-align:center;*/
}
.greeting .signature {
  /*text-align: right;*/
}

/* recruit */
.kmhead {
  height: 210px;
  margin-bottom: 40px;
  padding: 80px 0px 0px 270px;
  border-top: 2px solid #009a5a;
  border-bottom: 2px solid #009a5a;
  background:url(/corp/recruit/images/img1.gif) no-repeat 0px 20px;
}

.kmsubdesc {
  padding: 20px 0px 35px 180px;
}
.kmsubdesc h3 {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}
.kmd1 { background:url(/corp/recruit/images/img2.gif) no-repeat 0 0; }
.kmd2 { background:url(/corp/recruit/images/img3.gif) no-repeat 0 0; }
.kmd3 { background:url(/corp/recruit/images/img4.gif) no-repeat 0 0; }
.kmbfix { padding-left:60px; }

.snmlist { background:url(/corp/recruit/images/map.gif) no-repeat 0px 0px; padding-bottom:30px; }
.snmlist div { padding-bottom:10px; }

.techsets { list-style:none; margin:0px; padding:0px; padding-bottom:20px; }
.techsets li { float:left; margin:0px; padding-right:20px; padding-bottom:20px; }
.techsets li.s3, .techsets li.s6, .techsets li.s9 { padding-right:0px; }
.techsets a {
  display: block;
  width: 220px;
  height: 220px;
  text-indent: -9999px;
  overflow: hidden;
  outline: none;
  -webkit-transition: inherit;
  -moz-transition: inherit;
  -o-transition: inherit;
  -ms-transition: inherit;
  transition: inherit;
}
.techsets .s1 a { background:url(/corp/recruit/images/s1.gif) no-repeat 0px 0px; }
.techsets .s2 a { background:url(/corp/recruit/images/s2.gif) no-repeat 0px 0px; }
.techsets .s3 a { background:url(/corp/recruit/images/s3.gif) no-repeat 0px 0px; }
.techsets .s4 a { background:url(/corp/recruit/images/s4.gif) no-repeat 0px 0px; }
.techsets .s5 a { background:url(/corp/recruit/images/s5.gif) no-repeat 0px 0px; }
.techsets .s6 a { background:url(/corp/recruit/images/s6.gif) no-repeat 0px 0px; }
.techsets .s7 a { background:url(/corp/recruit/images/s7.gif) no-repeat 0px 0px; }
.techsets .s8 a { background:url(/corp/recruit/images/s8.gif) no-repeat 0px 0px; }
.techsets .s9 a { background:url(/corp/recruit/images/s9.gif) no-repeat 0px 0px; }
.techsets a:hover { opacity: 1; background-position:0px -220px; }

.popupbg { background-color:#000; width:100%; height:100%; position:fixed; z-index:100005; filter:alpha(opacity=0); opacity:0; }
.popblock { width: 840px; padding: 40px; box-sizing: border-box; border: 2px solid #eeeeee; border-radius: 6px; background: #fff; text-align:left; position:absolute; z-index:100006; filter:alpha(opacity=0); opacity:0; }
.popblock .title span { display: inline-block; }
.popblock .pcont p { font-size: 0.875rem; }
.popblock .pcont .im { padding: 20px 0 30px; }
.popblock .pcont .close { background:url(/corp/recruit/images/close.gif) no-repeat 0px 0px; width: 40px; height: 46px; position:absolute; right: 40px; top: 40px; filter:alpha(opacity=100); opacity:1; outline:none; }
.popblock .pcont .close:hover { filter:alpha(opacity=75); opacity:0.75; }

/* サイン事業 */
#colorbox .sp-horizontal .sp-arrows {
  top: inherit;
  bottom: -25px;
}
#colorbox .sp-arrow {
  width: auto;
  height: auto;
}
#colorbox .sp-arrow::after {
  display: none;
}
#colorbox .sp-horizontal .sp-next-arrow,
#colorbox .sp-arrow:before {
  -webkit-transform: none !important;
  -ms-transform: none !important;
  transform: none !important;
}
#colorbox .sp-horizontal .sp-previous-arrow {
  left: 50px;
}
#colorbox .sp-horizontal .sp-next-arrow {
  right: 50px;
}
#colorbox .sp-horizontal .sp-previous-arrow::before,
#colorbox .sp-horizontal .sp-next-arrow::before {
  position: relative;
  top: inherit;
  left: inherit;
  right: inherit;
  width: auto;
  height: auto;
  background: none;
}
#colorbox .sp-horizontal .sp-previous-arrow::before {
  content: "≪ 前の写真へ";
}
#colorbox .sp-horizontal .sp-next-arrow::before {
  content: "次の写真へ ≫";
}



/****************ここから追加*******************/

.subtitle {
    border-bottom: 1px solid #eeeeee;
    margin-bottom: 16px;
    padding: 6px 0 14px 0;
    font-size: 0.9375rem;
}
.textred { color: #f00; }

.pdf {
  display: inline-block;
  padding: 5px 0 5px 30px;
  background:url(/common/images/common/pdf.gif) no-repeat left 4px;
}

.borderbox {
    padding: 20px;
    border: 1px solid #ccc;
    background: #fff;
    text-align: left;
    vertical-align: top;
    margin-bottom: 10px;
}
.borderbox2 {
    padding: 20px;
    border: 1px solid #000;
    background: #fff;
    text-align: left;
    border-radius: 6px;
    vertical-align: top;
    margin-bottom: 10px;
}
#content .borderbox p {
    margin-bottom: 0;
}
#content .borderbox p + #content .borderbox p {
  margin-top: 1rem;
}
.captionbox {
    padding: 40px;
    border: 1px solid #ccc;
    background: #f8f8f8;
    text-align: center;
    vertical-align: top;
}

/* ===================================================================
support
=================================================================== */

.page-support .table-default {
  margin-bottom: 20px;
}
.page-abolition_cylinder .table-default th,
.page-abolition_cylinder .table-default td {
  padding: 14px;
}
.page-keyplan .borderbox p {
  padding: 0 120px;
}
.page-keyplan .borderbox p.excel {
  background: url(/tec/support/images/keyplan/icon_excel.gif) no-repeat left center;
}
.page-keyplan .borderbox p.pdf {
  background: url(/tec/support/images/keyplan/icon_pdf.gif) no-repeat left center;
}

.page-support #content table p {
    margin-bottom: 0;
}
.page-support #content ul {
    /* margin-bottom: 1rem; */
    font-size: 0.875rem;
    line-height: 1.7;
}
.page-support #content ul li {
    /* margin-bottom: 10px; */
}

.page-support #content ul.default li {
    list-style-type: disc;
    margin-left: 1rem;
}

.page-support #content .bgy10{
  background-color: #fffeee;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 20px;
}
.page-lock_finish_list .lock-finish-table {
  table-layout: fixed;
}
.page-lock_finish_list .lock-finish-table td {
  vertical-align: middle;
}
.page-lock_finish_list .lock-finish-table td > span {
  display: block;
}
.page-lock_finish_list .lock-finish-table .btn {
  padding: 6px 0;
}
.page-lock_finish_list .lock-finish-table .icon-dl::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  background: transparent url(/assets/images/icon-download.svg) center center no-repeat;
  vertical-align: middle;
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

/* ===================================================================
products
=================================================================== */
.page-products img.main {
  margin-bottom:20px;
}

.page-products ul.default li {
  list-style-type: disc;
  margin-left: 1rem;
}

.page-products .upperbox {
  font-size: 14px;
  text-align: center;
}

.page-products .upperbox .upperbox_l {
  width: 300px;
}

.page-products .upperbox .upperbox_c {
  width: 120px;
}

.page-products .upperbox .upperbox_r {
  width: 300px;
}

.page-products .upperbox p {
  background-color: #e5e5e5;
  padding: 1rem;
}

.page-products .upperbox .upperbox_l.upperbox_r p {
  background-color: #e5e5e5;
}

.page-products .upperbox .upperbox_c p {
  background-color: #707070;
  color: #fff;
}

.page-products .upperbox p.line1 {
  height:312px;
  line-height: 312px !important;
}

.page-products .upperbox p img {
  width: 270px;

}

.page-products .content-index .box {
  width: 350px;
}

#achievement .sign-list-block {
  width: 940px;
  overflow: hidden;
}
#achievement .sign-list {
  position: relative;
  width: 960px;
  margin-right: -20px;
}

#achievement .sign-list li {
  display: none;
  float: left;
  width: 220px;
  margin-right: 20px;
}
#achievement .sign-list li a {
  display: block;
  width: 100%;
  margin-bottom: 16px;
  box-sizing: border-box;
  background: #fff;
  color: #222;
  font-size: 0.875rem;
}
#achievement .sign-list li a h2 {
  margin-top: 5px;
  margin-bottom: 0;
}
#achievement .sign-list li a img {
  width: 100%;
}

/*  */
#selectdownload{
  width: 640px;
  float :left;
}
#selectdownload .download{
  background-color: #e8f4eb;
  width: 620px;
  height: 135px;
  margin: 15px 0px 30px;
  padding: 17px 15px 20px;
}
#selectdownload .bggray{
  background-color: #e5e5e5;
  height: 110px;
}
#selectdownload .download h3{
  display: flex;
  align-items: center;
  padding-left : 20px;
  font-weight: bold;
  height: 38px;
  color: #009865;
}
#selectdownload .btndl {
  width: 200px;
  display: flex;
  align-items: center;
  height: 38px;
  text-align: center;
 background: linear-gradient(to bottom, #ebe9f9 1%,#ffffff 50%,#cccccc 52%,#ebe9f9 100%);
 /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
 border: 1px solid #b2b2b2;
 float: left;
}
#selectdownload .btndl a{
  color: #000000;
  font-weight: bold;
  font-size: 1.125rem;
  display: inline-block;
 width: 100%;
 text-decoration: none;
}
#selectdownload .download p{
 font-size: 0.82rem;
 margin: 13px 0 0 0;
}

#selectdownload .download ul{
  margin-top : 6px;
  font-size: 0.75rem;
}
#selectdownload .outnote{
  margin : 50px 15px;
  font-size: 0.82rem;
}
#inner{
  float: left;
}


#manual{
  width: 700px;
  float :left;
}
#manual .manualdl{
  margin-bottom: 40px;
}
#manual .manualdl2{
  margin-bottom: 0px;
}
#manual h2{
  font-size: 1.25rem;
  padding: 0.9rem 0;
  width: 700px;
  height: 30px;
    border-bottom: 1px solid #ccc;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: rgb(204, 204, 204);
     margin-bottom:  15px;
}
#manual h3 {
  font-size: 1.125rem;
  color: #009a5a;
  margin-bottom: 10px;
  float: left;
}
.icon1:before {
    content: "";
    padding:0.4em 0.5em;
    border-left: 6px solid #009a5a;
}
.icon2:before {
    content: "";
    padding-right: 10px;
    border-left: 6px solid #009a5a;
}
.bkgprocedure{
  width: 145px;
  height: 93px;
  background-image: url("../../tec/products/images/manual/downloadprocedure.png");
  display: flex;
  align-items: center;
  float:left;
}
.bkgprocedure2{
  width: 120px;
  height: 93px;
  background-image: url("../../tec/products/images/manual/downloadprocedure2.png");
  display: flex;
  align-items: center;
  float:left;
}
.bkgcheck{
  width: 245px;
  height: 25px;
  background-image: url("../../tec/products/images/manual/checkdl.png");
  display: flex;
  align-items: center;
  margin-left: auto;
  margin-top: 30px;
}
.bkgcheck2{
  width: 245px;
  height: 25px;
  background-image: url("../../tec/products/images/manual/checkdl.png");
  display: flex;
  align-items: center;
  margin-left: auto;
  margin-top: 30px;
  margin-bottom: 30px;
}
.bkgprocedure p {
  font-size: 0.75rem;
  padding: 12px 15px 10px 10px;
  color: #2e3230;
  }
.bkgprocedure2 p {
  font-size: 0.7rem;
  padding: 12px 8px 12px 8px;
  color: #2e3230;
  }
.manualdl .bkgcheck2 a {
  font-size: 0.65rem;
  padding: 12px 8px 12px 36px;
  color:#ffffff;
  text-decoration: none;
}

#manual .manualdl .sentence{
  font-size: 0.875rem;
  color: #2e3230;
}
#manual .manualdl .marknew{
  display:inline-block;
  text-align:center;
  font-size: 8px;
  margin-left:0px;
  width:40px;
  background-color:#e10006;
  color:#ffffff;
}
#manual .manualdl table{
  margin-top: 10px;
  border: 1px solid #ccc;
}
#manual .manualdl th {
 background-color: #e2e2e2;
 font-size: 1rem;
}
#manual .manualdl td {
  color: #515452;
  font-size: 0.875;
}
#manual label {
  width: 12px;
  height: 12px;
  border: 1px solid #ccc;
  display: flex;
  padding:2px 2px;
}
#manual .note {
  color: #e10006;
  font-size: 0.5rem;
}
#manual .note2 {
  margin: 3px 0px 0px 270px;
  font-size: 0.7rem;
  color: #2e3230;
}

#term {
  width: 760px;
  float :left;
}
.conditions {
  width: 720px;
  height: 400px;
overflow-y: scroll;
border: 1px solid #727574;
}
.conditions p{
  color: #040f10;
  font-size: 0.875rem;
  height: 400px;
  border-right : 1px solid #727574;
  padding: 20px;
}

.consent {
  border-radius:3px;
  width: 280px;
  height: 30px;
  background-color: #009865;
  text-align:center;
  margin-left: 160px;
  margin-top: 0px;
  float: left;
}
 .consent a {
  display: inline-block;
  width: 280px;
   margin : 3px 0px;
    font-size: 1rem;
  color:#ffffff;
  text-decoration: none;
}
.noconsent {
  border: 1px solid #727574;
  border-radius:3px;
  width: 120px;
  height: 30px;
  display: flex;
  margin-left: 460px;
  margin-top: 50px;
}
 .noconsent a {
   margin : 3px 20px;
    font-size: 1rem;
  color:#727574;
  text-decoration: none;
}

.conditionstitle {
  margin-bottom: 40px;
  padding: 43px 40px 40px;
  border-bottom: 1px solid #ccc;
}
.conditionstitle h1 {
  font-size: 1.5rem;
  line-height: 1.1;
}
.conditionstitle p {
  margin-top: 15px;
  color: #767676;
  font-size: 0.875rem;
  line-height: 1.1;
}
#manualform{
  width: 700px;
  float :left;
}
#manualform h2{
  font-size: 1.25rem;
  padding: 0.9rem 0;
  width: 700px;
  height: 30px;
    border-bottom: 1px solid #ccc;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: rgb(204, 204, 204);
    margin-bottom: 15px;
}
.manualemail p{
  font-size: 0.825rem;
  color: #2e3230;
  margin-bottom:  50px;
}
#manualform .emailrecord {
  width:450px;
  background-color: #eaeaea;
  padding: 40px 40px 25px;
  margin:auto;
  margin-bottom:100px;
  vertical-align: middle;
}

#manualform .emailrecord dl{
   height: 25px;
  margin-bottom:15px;
}

#manualform .emailrecord dl dt{
    margin-top: 2px;
    margin-bottom: 0px;
}

#manualform .emailrecord dl dd{
  width:300px;
  margin-bottom: 0px;
}
#manualform .emailrecord .email{
  width:300px;
}
#manualform .emailrecord .password {
  width: 300px;
  }
#manualform .manualemail .send {
  border-radius: 3px;
  width: 245px;
  text-align:center;
  background-color : #009a5a;
  margin:auto;
  margin-bottom: 10px;
}
#manualform .manualemail .send a {
  display:inline-block;
  width:245px;
  font-size: 1rem;
  padding: 3px 0px;
  color: #ffffff;
  text-decoration: none;
}
#manualform .sentence{
  display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
 font-size: 0.875rem;
 text-align:center;
 margin-bottom:5px;
}
#manualform .sendmiss{
  display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
 font-size: 0.78rem;
 color: #2e3230;
 padding-top: 20px;
}

#manualform .errormessage{
  color: #ff0000;
  margin: 0px 214px;
  margin-bottom: 5px;
  display: inline-block;
  font-size: 1rem;
}
#manual .manualdl .errormessage2{
  color: #ff0000;
  margin: 0px 238px;
  margin-top: 30px;
  margin-bottom: 5px;
  display: inline-block;
}

.page-products_smartlock .menu-smartlock {
  position: relative;
}
.page-products_smartlock .menu-smartlock_btn {
  position: absolute;
  bottom: 0;
}
/*.page-products_smartlock .menu-smartlock:nth-child(3) .menu-smartlock_btn {
  right: 0;
}*/
.page-products_smartlock .menu-smartlock:nth-of-type(odd) .menu-smartlock_btn {
  right: 0;
}
.page-products_smartlock .menu-smartlock:nth-of-type(even) .menu-smartlock_btn {
  left: 0;
}

/* ===================================================================
recruit 170215追加
=================================================================== */

h3.qatitle {
  position: relative;
  margin-bottom: 20px;
  padding: 8px 10px;
  background-color: #009a5a;
  color: #fff;
  font-weight: bold;
}
  h3.qatitle.career::before,
  h3.qatitle.newgrad::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 60px;
    color: #fff;
    font-size: 13px;
    line-height: 40px;
    text-align: center;
  }
  h3.qatitle.career::before {
    content: "キャリア";
    background-color: #0076ad;
  }
  h3.qatitle.newgrad::after {
    content: "新卒";
    background-color: #dda600;
  }
  h3.qatitle.career.newgrad::after {
    right: 60px;
  }

.voice-division {
  margin-top: 60px;
}
h3.voicetitle {
  padding: 10px;
  background-color: #009a5a;
  color: #fff;
  font-weight: bold;
}
.voice-division section {
  padding: 30px;
  background-color: #f0f0f0;
}

.voice-division section a {
  text-decoration: underline;
}
.round-arrow {
  position: relative;
  padding-left: 20px;
  color: #009a5a !important;
  font-size: 0.875rem;
  line-height: 1.0;
}
.round-arrow::before {
  content: "";
  position: absolute;
  display: block;
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background: #009a5a;
}
.round-arrow::after {
  content: "";
  position: absolute;
  display: block;
  top: 7px;
  left: 6px;
  width: 12px;
  height: 6px;
  border-top: 3px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 3px solid transparent;
  border-left: 6px solid #fff;
  box-sizing: border-box;
}
.round-arrow.round-arrow-r {
  padding-right: 20px;
  padding-left: 0;
}
.round-arrow.round-arrow-r::before {
  left: inherit;
  right: 0;
}
.round-arrow.round-arrow-r::after {
  left: inherit;
  right: -2px;
}

.senior-list {
  padding-top: 20px;
}
.senior-list li {
  float: left;
  width: 220px;
  margin-bottom: 30px;
  margin-left: 30px;
  box-sizing: border-box;
  border: 2px solid #eeeeee;
}
.senior-list li:nth-child(3n-2) {
  margin-left: 0;
}
.senior-list li a {
  position: relative;
  display: block;
  padding: 12px 10px 6px;
  box-sizing: border-box;
  border-bottom: 5px solid #009a5a;
  background-color: #fff;
  text-align: right;
  text-decoration: none;
}
.senior-list li a img {
  display: block;
  margin-bottom: 6px;
}
.senior-list li a p {
  margin: 0 !important;
  color: #000;
  white-space: nowrap;
}
.senior-list .label-div {
  display: inline-block;
  margin-bottom: 5px;
  padding: 4px 12px;
  background-color: #009a5a;
  color: #fff;
  font-size: 0.75rem;
  line-height: 1.0;
}

.other-list ul {
  margin-top: 16px;
}
.other-list li {
  float: left;
  width: 165px;
  margin-bottom: 12px;
  margin-right: 20px;
  box-sizing: border-box;
}
.other-list li:nth-child(4n) {
  margin-right: 0;
}
.other-list li a {
  display: block;
  box-sizing: border-box;
}
.other-list li a img {
  display: block;
  margin-bottom: 5px;
}
.other-list li a p {
  text-decoration: underline;
}
.other-list + .voice-division {
  margin-top: 10px;
}

/**
 * flex row
 */
.flex-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
[class*="flex-col-"] > img {
  width: 100%;
}
.flex-col-3 {
  -moz-box-sizing:  border-box;
  box-sizing:  border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-end;
  width: calc(100% / 3 - 40px);
  margin-right: 30px;
  margin-left: 30px;
}
.flex-col-3:nth-child(3n+1) {
  margin-left: 0;
}
.flex-col-3:nth-child(3n+3) {
  margin-right: 0;
}
.flex-col-3:nth-child(n+4) {
  margin-top: 30px;
}

/* ===================================================================
sitemap
=================================================================== */

.page-sitemap .title {
  margin-bottom: 24px;
}

.sitemap-list {
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-column-rule: 1px solid #ccc;
  -moz-column-rule: 1px solid #ccc;
  -o-column-rule: 1px solid #ccc;
  -ms-column-rule: 1px solid #ccc;
  column-rule: 1px solid #ccc;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  -o-column-count: 2;
  -ms-column-count: 2;
  column-count: 3;
}
.sitemap-list + .sitemap-list {
  margin-top: 16px;
}
.sitemap-list li:not(:first-child) {
  margin-top: 8px;
}
.sitemap-list li {
  padding-left: 15px;
  line-height: 1.0;
}
.sitemap-list a {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  color: #000;
  font-size: 0.8125rem;
  line-height: 1.6;
  vertical-align: top;
}
.sitemap-list a::before {
  content: "";
  position: absolute;
  display: block;
  top: 5px;
  left: 1px;
  width: 16px;
  height: 8px;
  border-top: 4px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 8px solid #009a5a;
  box-sizing: border-box;
}


/* ===================================================================
option
=================================================================== */

.o-img-per {
  width: 100%;
}

.o-m-ctr {
  margin-left: auto;
  margin-right: auto;
}

.o-borderline {
  display: block;
  height: 0;
  border-bottom: solid 1px #ccc;
}
.o-borderbox {
  border: solid 1px #ccc;
}

.o-movie-block {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.o-movie-block iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}


/* -------------------------------------------- corp 会社情報配下共通 */

.corp-menu {
  display: flex;
  justify-content: space-between;
  border-left: solid 1px #999;
}
.corp-menu * {
  box-sizing: border-box;
}
.corp-menu > li {
  padding: 0 12px;
  width: 100%;
  border-right: solid 1px #999;
}
.corp-menu > li > a,
.corp-menu > li > a:active,
.corp-menu > li > a:focus,
.corp-menu > li > a:visited {
  display: block;
  padding: 8px 4px;
  width: 100%;
  background: #999;
  color: #fff;
  text-align: center;
  text-decoration: none;
  opacity: 1;
  transition: background 0.3s linear;
}
.corp-menu > li > a:hover {
  background: #666;
  text-decoration: none;
  opacity: 1;
}


.corp-hr {
  margin-top: 50px;
  border-top: solid 1px #ccc;
}

.corp-colmun {
  display: flex;
  border: solid 2px #ccc;
  background: #fff;
}


/* -------------------------------------------- about 会社情報-会社情報 */

.access-tokyo {
  display: flex;
  border: solid 1px #999;
  background: #fff;
}
.access-tokyo * {
  vertical-align: top;
  box-sizing: border-box;
}
.access-tokyo-img{
  width: 190px;
}
.access-tokyo-info{
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 20px;
  width: 348px;
}
.access-tokyo-info h2{
  font-weight: bold;
  font-size: 20px;
}
.access-tokyo-info .ico-mail {
  display: inline-block;
  padding-top: 4px;
}
.access-tokyo-info .ico-mail::before {
  display: inline-block;
  content: "";
  width: 36px;
  height: 28px;
  margin: -2px 8px 0 0;
  background: url(/assets/images/icon-mail.svg) center center no-repeat;
  vertical-align: middle;
}
.access-tokyo-map{
  padding: 5px;
  width: 400px;
}

.access-list {
  margin-top: 48px;
  overflow: hidden;
}
.access-list * {
  box-sizing: border-box;
}
.access-list > ul {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  margin-left: -15px;
}
.access-list > ul > li {
  position: relative;
  padding-top: 40px;
  width: calc(33.33% - 10px);
  border-left: solid 1px #ccc;
  padding-left: 15px;
}
.access-list > ul > li:nth-child(-n+3) {
  padding-top: 0;
}
#content .access-list p {
  margin-bottom: 0;
}
.access-list .access-list-place {
  font-weight: bold;
  font-size: 17px;
}
#content .access-list p.access-list-address {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.6;
}
.access-list .access-list-map {
  position: absolute;
  top: 40px;
  right: 0;
  z-index: 1;
}
.access-list > ul > li:nth-child(-n+3) .access-list-map {
  top: 0;
}
.access-list .access-list-map a {
  display: block;
  padding: 6px 10px 5px 10px;
  background: #999;
  color: #fff;
  text-decoration: 0;
  font-size: 13px;
  line-height: 1.0;
}


/* -------------------------------------------- history 会社情報-沿革 */

.sct-history {
  display: flex;
  justify-content: space-between;
}
.sct-history * {
  box-sizing: border-box;
}

.history-list {
  width: 680px;
}
.history-list-inr {
  position: relative;
  width: 100%;
}
.history-list-inr::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 170px;
  width: 1px;
  height: 100%;
  background: #000;
  box-sizing: border-box;
}
.history-list dl {
  display: flex;
  justify-content: space-between;
}
.history-list dl:not(:first-child)  {
  margin-top: 40px;
}
.history-list dl > dt,
.history-list dl > dd {
  float: none;
  margin-bottom: 0;
}
.history-list dl > dt {
  padding-right: 0;
  width: 155px;
  background: #fff;
  line-height: 1.0;
}
.history-list dl > dt > span {
  margin-right: 4px;
  font-size: 21px;
  color: #009a5a;
  vertical-align: -2px;
}
.history-list-point {
  position: relative;
  width: 21px;
}
.history-list-point::before,
.history-list-point::after {
  display: block;
  content: "";
  position: absolute;
  box-sizing: border-box;
  border-radius: 50%;
}
.history-list-point::before {
  top: 2px;
  left: -6px;
  width: 19px;
  height: 19px;
  border: solid 2px #009a5a;
  background: #fff;
  z-index: 1;
}
.history-list-point::after {
  top: -3px;
  left: -11px;
  width: 29px;
  height: 29px;
  background: #fff;
}
.history-list dl > dd + dd {
  padding-top: 2px;
  width: 480px;
}

.history-img {
  width: 210px;
}
#content p.history-img-cap {
  font-size: 13px;
}

