@charset "utf-8";
/* CSS Document */
/* ================================================== *
 *   共通
 * ================================================== */
/* PC表示なし スマホ表示なし */
.pcnone {
  display: none !important;
}
@media (max-width: 639px) {
  .spnone {
    display: none !important;
  }
  .pcnone {
    display: inherit !important;
  }
}
/* text-align 調整用スタイル */
.ta-c {
  text-align: center !important;
}
.ta-r {
  text-align: right !important;
}
.ta-l {
  text-align: left !important;
}
/* vertical-align 調整用スタイル */
.va-t {
  vertical-align: top !important;
}
.va-m {
  vertical-align: middle !important;
}
.va-b {
  vertical-align: bottom !important;
}
/* image調整用スタイル */
.img-l {
  float: left !important;
}
.img-r {
  float: right !important;
}
/* border 調整用スタイル */
.bdt0 {
  border-top: none !important;
}
.bdb0 {
  border-bottom: none !important;
}
.bdr0 {
  border-right: none !important;
}
.bdl0 {
  border-left: none !important;
}
.bdt-b {
  border-top: 1px solid #000;
}
/* margin-bottom 調整用スタイル */
.mgb00 {
  margin-bottom: 0px !important;
}
.mgb05 {
  margin-bottom: 5px !important;
}
.mgb10 {
  margin-bottom: 10px !important;
}
.mgb15 {
  margin-bottom: 15px !important;
}
.mgb20 {
  margin-bottom: 20px !important;
}
.mgb25 {
  margin-bottom: 25px !important;
}
.mgb30 {
  margin-bottom: 30px !important;
}
.mgb35 {
  margin-bottom: 35px !important;
}
.mgb40 {
  margin-bottom: 40px !important;
}
.mgb45 {
  margin-bottom: 45px !important;
}
.mgb50 {
  margin-bottom: 50px !important;
}
.mgb55 {
  margin-bottom: 55px !important;
}
.mgb60 {
  margin-bottom: 60px !important;
}
.mgb65 {
  margin-bottom: 65px !important;
}
.mgb70 {
  margin-bottom: 70px !important;
}
.mgb75 {
  margin-bottom: 75px !important;
}
.mgb80 {
  margin-bottom: 80px !important;
}
.mgb140 {
  margin-bottom: 140px !important;
}
/* margin-top 調整用スタイル */
.mgt00 {
  margin-top: 0px !important;
}
.mgt05 {
  margin-top: 5px !important;
}
.mgt10 {
  margin-top: 10px !important;
}
.mgt15 {
  margin-top: 15px !important;
}
.mgt20 {
  margin-top: 20px !important;
}
.mgt25 {
  margin-top: 25px !important;
}
.mgt30 {
  margin-top: 30px !important;
}
.mgt35 {
  margin-top: 35px !important;
}
.mgt40 {
  margin-top: 40px !important;
}
.mgt45 {
  margin-top: 45px !important;
}
.mgt50 {
  margin-top: 50px !important;
}
.mgt55 {
  margin-top: 55px !important;
}
.mgt60 {
  margin-top: 60px !important;
}
.mgt65 {
  margin-top: 65px !important;
}
.mgt70 {
  margin-top: 70px !important;
}
.mgt75 {
  margin-top: 75px !important;
}
.mgt80 {
  margin-top: 80px !important;
}
/* table */
.table-in-table, .table-in-table tr, .table-in-table td {
  border: none !important
}
.table-in-table td {
  vertical-align: top !important;
}
.pcnopad {
  padding-left: 0 !important;
  padding-right: 0 !important
}
.pcpad5 {
  padding-left: 5px !important;
  padding-right: 5px !important
}
@media (max-width: 639px) {
  .pcnopad {
    padding-left: 10px !important;
    padding-right: 10px !important
  }
  .pcpad5 {
    padding-left: 10px !important;
    padding-right: 10px !important
  }
}
/* ================================================== *
 *   下層階サイドナビ
 * ================================================== */
.here a {
  background-color: #2aa738 !important;
  color: #fff !important;
}
.reqruitnav a {
  background: #F2F2F2 url("../company/images/list.png") 10px 49% no-repeat !important;
  background-size: 8px auto !important;
  font-size: 12px !important;
}
.reqruitnavon a {
  background: #C4C3C3 url("../company/images/list.png") 10px 49% no-repeat !important;
  background-size: 8px auto !important;
  font-size: 12px !important;
}
.reqruitnav a:hover {
  color: #2AA738 !important;
}
@media (max-width: 639px) {
  .reqruitnav a {
    background-image: none !important;
    background-color: #666 !important;
  }
  .reqruitnavon a {
    background-image: none !important;
    background-color: #777 !important;
  }
}
.notice {
  font-size: 18px;
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
.attention {
  font-size: 14px;
  font-weight: bold;
  text-align: left;
}
/* ================================================== *
 *   コンテンツ基本
 * ================================================== */
#tsl-3rdContentcomp {
  padding-top: 50px;
}
@media (max-width: 639px) {
  #tsl-3rdContentcomp {
    padding-top: 0;
  }
}
/* 見出し */
.h1Stylecomp {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
  padding: 0 10px 20px;
  font-weight: bold;
  text-align: center !important;
  margin: 0 auto;
}
@media (min-width: 640px) {
  .h1Stylecomp {
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 1.47059;
    padding: 0 0 45px;
    width: 100%;
    max-width: 940px;
  }
}
.h2Stylecomp {
  text-align: center;
  overflow: hidden;
  margin: 0 0 14px;
  padding: 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: bold;
}
.h2Stylecomp span {
  display: inline-block;
  padding: 0 8px;
  position: relative;
}
.h2Stylecomp span:after, .h2Stylecomp span:before {
  content: '';
  display: block;
  height: 3px;
  background-color: #f2f2f2;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  width: 400%;
}
.h2Stylecomp span:before {
  right: 100%;
}
.h2Stylecomp span:after {
  left: 100%;
}
@media (min-width: 640px) {
  .h2Stylecomp.noborder span:before, .h2Stylecomp.noborder span:after {
    content: none;
  }
}
@media (min-width: 640px) {
  .h2Stylecomp {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.30769;
    margin: 0 auto 26px;
    width: 100%;
    max-width: 940px;
  }
  .h2Style span {
    padding: 0 20px;
  }
}
.h3Stylecomp {
  text-align: left;
  font-weight: bold;
  border-bottom: 3px solid #f2f2f2;
  padding-bottom: 9px;
}
@media (min-width: 640px) {
  .h3Stylecomp {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.33333;
    padding-bottom: 6px;
  }
  .h3Stylecomp span {
    padding: 0;
  }
  .h3Stylecomp span:before, .h3Stylecomp span:after {
    content: none;
  }
}
@media (max-width: 639px) {
  .h3Stylecomp {
    font-size: 18px;
  }
}
/* ================================================== *
 *   タイトル画像
 * ================================================== */
#tsl-t {
  height: 75px;
  margin: -18px 0 25px;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (min-width: 640px) {
  #tsl-t {
    margin: 0;
    height: 150px;
    min-width: 1060px;
  }
}
.smile #tsl-t {
  background-image: url(../smile/images/title.jpg);
  background-position: center right;
}
#titleWrapper {
  margin: 0;
  padding: 0;
  background-image: url(../company/images/h2bg.jpg);
  background-repeat: repeat-x;
  background-position: top center;
  width: 100%;
  height: 150px;
}
#titleWrapper #titleinner, #titleWrapper #titleinnerindex {
  margin: 0 auto 0;
  padding: 0;
  width: 940px;
  text-align: right !important;
}
@media (max-width: 639px) {
  #titleWrapper {
    margin: -18px 0 25px;
    height: 75px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  #titleWrapper #titleinner {
    margin: 68px auto 0 !important;
    padding: 0;
    max-width: 100%;
    text-align: center;
    overflow: hidden;
    outline: hidden;
    height: 75px;
  }
  #titleWrapper #titleinnerindex {
    margin: 0 auto 0 !important;
    padding: 0;
    max-width: 100%;
    text-align: center;
    overflow: hidden;
    outline: hidden;
    height: 75px;
  }
  #titleWrapper #titleinner img {
    height: 75px;
    width: auto;
  }
  #titleWrapper #titleinnerindex img {
    height: 75px;
    width: auto;
  }
}
/* ================================================== *
 *   企業情報トップ
 * ================================================== */
#outlineindex {
  margin: 0 auto 30px;
  padding: 0;
  width: 940px;
}
#outlineindex #btnmessage {
  margin: 0;
  float: left;
  width: 470px;
}
#outlineindex #btnoutline {
  margin: 0;
  float: right;
  width: 470px;
}
#outlineindex #btnreqruit {
  margin: 0;
  clear: both;
  width: 940px;
}
/* np21 */
#outlineindex #safetyHealth01,
#outlineindex #safetyHealth01,
#outlineindex #health02 {
  margin: 0;
  clear: both;
  width: 940px;
}
/* np21_end */
#outlinespindex {
  display: none;
}
@media (max-width: 639px) {
  #outlineindex {
    display: none;
  }
  #outlinespindex {
    margin: 0 auto 30px;
    display: inherit;
    width: 94%;
  }
  #outlinespindex #btnmessagesp {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #333;
    max-width: 100%;
    height: auto;
    position: relative;
  }
  #outlinespindex #btnmessagesp p {
    position: absolute;
    top: 36%;
    left: 10px;
    width: 60%;
    font-size: 0.9em;
    line-height: 1.5em;
  }
  #outlinespindex #btnoutlinesp {
    margin-bottom: 10px;
    padding-bottom: 10px;
    max-width: 100%;
    height: auto;
    border-bottom: 1px dotted #333;
  }
  #outlinespindex #btnreqruitsp {
    margin: 0;
    max-width: 100%;
    height: auto;
  }
  #outlinespindex #btnreqruitsp p {
    margin-top: 5px;
    padding: 0;
    line-height: 1.4em;
  }
  /* np21 */
  #outlinespindex #safetyHealth02,
	#outlinespindex #ikiiki02,
	#outlinespindex #health02 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    max-width: 100%;
    height: auto;
    border-bottom: 1px dotted #333;
  }
  /* np21_end */
}
/* ================================================== *
 *   社長メッセージ
 * ================================================== */
#messagemain {
  margin: 0 auto 30px;
  padding: 0;
  max-width: 100%;
}
.img-name {
  margin-bottom: 40px;
  text-align: right;
}
@media (max-width: 639px) {
  #messagemain {
    margin: 0 auto 10px;
  }
}
/* ================================================== *
 *   アクセス
 * ================================================== */
#outlinedata dl {
  margin: 0;
  padding: 0;
}
#outlinedata dt {
  margin: 3px;
  padding: 3px;
  text-align: center;
  background-color: #cccccc;
  font-size: 14px;
  font-weight: bold;
  width: 100%;
}
#outlinedata dd {
  margin: 3px;
  padding: 5px;
  text-align: center;
  background-color: #fff;
  font-size: 14px;
  width: 100%;
}
.printbtn {
  margin-right: 10px;
  background-color: #ff6600;
  font-size: 14px;
  color: #fff;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
	border-radius: 5px;
  position: absolute;
  top: -70px;
  right: 5px;
  padding: 5px 10px;
}
.printbtn a {
  color: #fff;
}
.maparea {
  position: relative;
}
h4.h4Stylemap {
  text-align: left;
  background: url(../company/outline/images/h4bg.jpg) no-repeat top left;
  padding: 10px 0 10px 20px;
  margin-top: 10px;
  font-weight: normal;
}
/* ▼ NP21 */
.indad_pp01 .psr_image .popup_01 {
  margin-right: 0;
}
.indad_pp01 .psr_image .popup_01:hover {
  opacity: 1;
}
.indad_pp01 .psr_image .popup_01, .indad_pp01 .psr_image .popup_02 {
  display: block;
  margin: 0 auto 20px;
  max-width: 100%;
  width: auto;
}
.top-ticket {
  width: 500px;
  margin: 0 auto 100px;
}
.top-ticket-inner {
  margin: 0 0 30px 0;
}
.img-ticket {
  display: inline-block;
  width: 100%;
  max-width: 500px;
}
.ttl-top-present {
  font-weight: bold;
  text-align: center;
}
.kirei-kirei-inner, .animal-kitchen-inner {
  font-size: 0.875em;
  line-height: 140%;
  text-align: center;
}
.pr-top-present {
  padding-top: 10px;
  text-align: center;
}

.present-closed{
  margin:0 0 40px 0; 
}
.present-closed__title{
  text-align: center;
  font-weight: 600;
}
.present-closed__text{
  margin-bottom: 30px;
}
.present-closed__row{
  display: flex;
  justify-content: space-between;
}
.present-closed__define {
  margin: 0;
  padding: 0;
  text-align: center;
}
.present-closed__term {
  margin: 0;
  padding: 0;
  font-size: 13px;
}
.present-closed__term.is-line {
  padding: 10px 0;
}
.present-closed__qr {
  margin: 0;
  padding: 0;
}
.present_list {
  list-style: none;
}
.present_list p {
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
  margin: 0 0 20px 0;
  padding: 0;
}
.flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 639px) {
  /* ▲ 202103 改修追記 */
  .present-closed__row{
    display: block;
  }
  .present-closed__define{
    margin-bottom: 60px;
  }
  .present-closed__term.is-line {
    padding: 0;
  }
  .flex.present_list {
    flex-direction: column;
    text-align: center;
  }
  .flex.present_list li {
    margin-bottom: 40px;
  }
  .present_list p {
    margin-bottom: 10px;
  }
}
.closure {
  width: 100%;
  margin: 0 auto 30px;
}
.closure__list {
  margin: 0;
  padding: 0;
	border-radius: 5px;
	border:2px solid red;
	box-shadow:0 2px 2px 0 rgba(0,0,0,0.2);
}
.closure__title {
  margin: 0;
  padding: 0;
	background: red;
	color: white;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
}
.closure__date {
  padding: 15px 10px 5px;
  color: red;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
}
.closure__message {
  margin: 0;
  padding: 0 20px 15px;
  font-size: 1.2em;
  text-align: left;
  line-height: 180%;
}
/* ▲ NP21 */
@media (max-width: 639px) {
  #outlinedate dl {
    margin-top: 15px;
  }
  .printbtn {
    display: none;
  }
  /* ▼ NP21 190408 */
  .top-ticket {
    width: auto;
    margin: 0 auto 50px;
  }
  .kirei-kirei-inner {
    margin: 0 0 30px 0;
  }
  .animal-kitchen-inner {
    margin: 0;
  }
  /* ▲ NP21 190408 */
}
@media (min-width: 640px) {
  .h4Stylemap {
    font-size: 14px !important;
    line-height: 1.33333;
    padding-bottom: 6px;
  }
  .h4Stylemap span {
    padding: 5px 0;
  }
  .h4Stylemap span:before, .h4Stylemap span:after {
    content: none;
  }
  .closure {
    width: 90%;
  }
  .closure__message {
    text-align: center;
  }
}
@media (max-width: 639px) {
  .h4Stylemap {
    font-size: 12px;
  }
}
/* ================================================== *
 *   採用情報
 * ================================================== */
.reqbosyu {
  display: inline-block;
  padding: 5px 15px!important;
  margin-right: 10px;
  background-color: #CC3437;
  font-size: 14px;
  color: #fff;
  white-space: nowrap;
}
.reqbosyu.is-end {
  background-color: #666;
}
h4.h4Stylereq {
  text-align: left;
  font-weight: bold;
  background: url(../company/recruit/images/req_hr.png) repeat-x bottom;
  padding-bottom: 20px;
  margin-top: 30px;
}
.reqbtn {
  margin: 0 auto;
  padding: 15px;
  text-align: center;
  background-color: #333333;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  border: 1px solid #eee;
  color: #fff;
  display: inline-block;
  text-shadow: 0px 0px 0px #000;
  width: 96%;
  font-weight: bold;
  cursor: pointer;
}
.reqbtn a {
  color: #fff;
}
.reqbtn:hover {
  background-color: #4a4a4c;
}
@media (min-width: 640px) {
  .h4Stylereq {
    font-size: 14px !important;
    line-height: 1.33333;
    padding-bottom: 6px;
  }
  .h4Stylereq span {
    padding: 5px 0;
  }
  .h4Stylereq span:before, .h4Stylereq span:after {
    content: none;
  }
}
@media (max-width: 639px) {
  h4.h4Stylereq2 {
    text-align: left;
    background: url(../company/recruit/images/h4reqbg.jpg) no-repeat top left;
    padding: 15px 0 20px 40px;
    margin-top: 30px;
    background-size: auto 50px;
  }
  .reqbtn {
    width: 100%;
  }
}
@media (min-width: 640px) {
  .ttl-recruit {
    width: 100%;
    margin: 0 0 60px 0;
  }
  .mv-recruit {
    width: 100%;
    margin: 0;
  }
  .white500 {
    width: 100%;
    margin: 0 0 60px 0;
  }
  .white500_list {
    width: 100%;
    margin: 0 auto;
  }
  .white500_title {
    width: 100%;
    margin: 0 0 20px 0;
    font-size: 1.5em;
    line-height: 150%;
    text-align: center;
  }
  .white500_body {
    max-width: 450px;
    margin: 0 auto 20px;
  }
  .white500_link {
    width: 100%;
    font-size: 1em;
    text-align: center;
  }
  .graduateBlock {
    display: flex;
    align-items: center;
    width: 100%;
    background: #007098;
  }
  .graduateBlock_list {
    width: 35%;
    padding: 0 30px;
    color: white;
    text-align: right;
  }
  .graduateBlock_title {
    margin: 0 0 50px 0;
    font-size: 1.25em;
    line-height: 1;
  }
  .graduateBlock_body {
    margin: 0 0 30px 0;
    font-size: 1.5em;
    line-height: 150%;
  }
  .graduateBlock_photo {
    width: 65%;
    margin: 0;
  }
  .careerBlock {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    width: 100%;
    margin: 0 0 60px 0;
    background: #991420;
  }
  .careerBlock_list {
    width: 35%;
    padding: 0 30px;
    color: white;
  }
  .careerBlock_title {
    margin: 0 0 50px 0;
    font-size: 1.25em;
    line-height: 1;
  }
  .careerBlock_body {
    margin: 0 0 30px 0;
    font-size: 1.5em;
    line-height: 150%;
  }
  .careerBlock_photo {
    width: 65%;
    margin: 0;
  }
}
/* ================================================== *
 *   すまいる館
 * ================================================== */
.smilebtn {
  margin-bottom: 15px;
  padding: 0;
  -webkit-box-shadow: rgba(200, 202, 204, 0.57) 0px 0px 6px 3px;
  -moz-box-shadow: rgba(200, 202, 204, 0.57) 0px 0px 6px 3px;
	box-shadow: rgba(200, 202, 204, 0.57) 0px 0px 6px 3px;
  height: 270px;
}
.smilebtn h4 {
  margin: 0;
  padding: 0;
}
.smilebtn img {
  margin: 0;
  padding: 0;
  max-width: 100%;
  height: auto;
  text-align: center;
}
.smilebtn p {
  margin: 0;
  padding: 10px;
  font-size: 13px;
  line-height: 1.4em;
  color: #333 !important;
}
.h146 {
  height: 146px !important;
}
@media (max-width: 639px) {
  .smilebtn {
    height: auto;
  }
  .smilebtn div {
    float: left;
    width: 45%;
  }
  .smilebtn p {
    float: right;
    width: 55%;
  }
  .smilebtn p.w100 {
    float: none !important;
    width: 100% !important;
  }
  .smilebtn h4 {
    max-width: 100%;
    display: block;
    clear: both;
  }
  .h146 {
    height: auto !important;
  }
}
/* ================================================== *
 *   新築
 * ================================================== */
.copy {
  margin: 5px 0 10px;
}
.contentarea {
  margin: 0;
  padding: 0;
  text-align: center;
  max-width: 100%;
}
.contentarea h2 {
  margin: 30px 0 0;
  padding: 0;
}
.contentarea .copy {
  margin: 5px 0 10px;
}
#meritarea {
  margin: 0;
  padding-bottom: 20px;
  background-color: #EFEFEF;
  background-position: bottom center;
  background-repeat: no-repeat;
}
#meritarea h4 {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  text-align: left;
}
#t001 {
  text-align: center;
}
#meritother {
  margin: 30px auto 0;
  padding: 0;
  width: 900px;
}
#meritother .parts {
  margin: 0;
  padding: 0;
  height: 220px;
  float: left;
}
#meritother.parts h5 {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  text-align: left;
}
#meritother .parts .rimg {
  margin: 0;
  padding: 10px 5px;
  float: right;
}
#meritother .parts .mtext {
  margin: 0;
  padding: 20px 10px 0;
  width: 58%;
  float: left;
  line-height: 1.5em;
  font-size: 12px;
  text-align: left;
}
#meritother .parts .text {
  margin: 0;
  padding: 10px 10px 0;
  max-width: 100%;
  line-height: 1.5em;
  font-size: 12px;
  text-align: left;
}
@media (max-width: 639px) {
  #meritother {
    max-width: 100%;
  }
  #meritother .parts {
    margin: 0;
    padding: 0;
    max-width: 100%;
    height: auto;
    float: none;
  }
  #meritother .parts .mtext {
    margin: 0;
    padding: 20px 5px 0;
    width: 50%;
    float: left;
    line-height: 1.5em;
    font-size: 12px;
    text-align: left;
  }
}
#jireiarea {
  margin: 40px auto 30px;
  padding: 0;
  width: 900px;
  position: relative;
}
#jireiarea #watch {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 19px;
  right: -21px;
}
@media (max-width: 639px) {
  #jireiarea {
    max-width: 100%;
  }
  #jireiarea #watch {
    display: none;
  }
}
#safearea {
  margin: 40px 0 0;
  padding: 0;
  width: 900px;
}
.safebt {
  float: left;
  width: 25%;
}
@media (max-width: 639px) {
  #safearea {
    max-width: 100%;
  }
  .safebt {
    float: left;
    width: 50%;
  }
}
#lineup {
  margin: 40px auto 40px;
  padding: 0;
  width: 900px;
}
@media (max-width: 639px) {
  #lineup {
    max-width: 100%;
  }
}
/* ================================================== *
 *   お問い合わせ
 * ================================================== */
#inquiry {
  margin-bottom: 100px;
}
#inquiry h5 {
  margin: 20px 0 50px;
  padding-left: 15px;
  border-left: 5px solid #96D15D;
  font-weight: bold;
}
#inquiry #req_default {
  margin-bottom: 15px;
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  border: 1px solid #83c41a;
  padding: 15px;
  text-decoration: none;
  background-color: #9dce2c;
  color: #ffffff;
  display: inline-block;
  text-shadow: 0px 0px 0px #689324;
  width: 96%;
}
#inquiry #req_default:hover {
  background-color: #8cb82b;
}
.borleft {
  border-left: #ccc dotted 1px;
}
@media (max-width: 639px) {
  .borleft {
    border: none;
  }
  #inquiry {
    margin-bottom: 30px;
  }
}
/* ================================================== *
 *    会社概要追加2016.01.20
 * ================================================== */
.comp_left {
  width: 50%;
  float: left;
}
.comp_tt {
  margin-bottom: 5px;
  font-weight: bold;
}
.comp_left dl {
  overflow: hidden;
  margin: 0;
  line-height: 1.0em !important;
}
.comp_left dt {
  float: left;
  width: 50%;
  font-weight: normal;
  padding: 0;
}
.comp_left dd {
  float: right;
  width: 50%;
}
.comp_right {
  width: 50%;
  float: left;
}
.comp_right dl {
  overflow: hidden;
  line-height: 1.0em !important;
}
.comp_right dt {
  float: left;
  width: 50%;
  font-weight: normal;
  padding: 0;
}
.comp_right dd {
  float: right;
  width: 50%;
}
.com_inner_table {
  width: 100%;
}
.com_inner_table th {
  background: #fff !important;
  text-align: left!important;
  white-space: nowrap;
}
@media (max-width: 639px) {
  .comp_left {
    width: 100%;
    margin: 2%;
    clear: both;
  }
  .comp_right {
    width: 100%;
    margin: 2%;
    clear: both;
  }
  .com_inner_table th{
    display: block;
    width: 100%;
    padding-bottom: 0!important;
    border-bottom: none!important;
    white-space: normal;
  }
  .com_inner_table td {
    display: block;
    border-top: none!important;
  }
}
/* ================================================== *
 *    SDGsの取り組み追加2024.02.21
 * ================================================== */
.sdgs-content {
  padding: 50px 20px;
  border-top: 1px dashed #0099d9;
}
.sdgs-item__ttl {
  background: #0099d9;
  text-align: center;
  margin: 0 0 30px 0;
  border-radius: 30px;
}
.sdgs-item__ttl img {
  width: 40%;
}
.sdgs-item__box {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
@media (max-width: 639px) {
  .sdgs-item__box {
    display: block;
}
  .sdgs-item__ttl img {
  width: 75%;
}
  .sdgs-item__icon {
    margin-top: 30px;
  }
  .sdgs-item__img {
  margin-bottom: 30px;
  }
}
