/*****************************************************************
 * page-common
 *****************************************************************/
.common-text {
  line-height: 1.85;
}

.internal-link-list {
  position: relative;
  z-index: 20;
  background: #fff no-repeat left top;
  font-size: 0;
  text-align: center;
}

.internal-link-list li {
  display: inline-block;
  vertical-align: top;
  margin-right: 40px;
  width: 140px;
}

.internal-link-list li:last-child {
  margin-right: 0;
}

.internal-link-list li a {
  display: block;
}

.internal-link-list li a:hover {
  opacity: 1;
}

.internal-link-list li .icon {
  margin-bottom: 10px;
}

.internal-link-list li .icon {
  margin: 0 auto 10px;
  width: 90px;
}

.internal-link-list li a .icon .active,
.internal-link-list li.active a .icon .common {
  display: none;
}

.internal-link-list li.active a .icon .active {
  display: inline-block;
}

.internal-link-list li .title-en {
  font-size: 1.6rem;
  font-weight: bold;
}

.internal-link-list li .title-ja {
  font-size: 1.4rem;
}

.internal-link-list li.active a {
  color: #ff7200;
}

.internal-link-list.fix-list {
  position: fixed;
  top: 50%;
  right: 0;
  background-color: transparent;
  transform: translateY(-50%);
  height: 80%;
}

.internal-link-list.fix-list li {
  display: block;
  margin-right: 0;
  margin-bottom: 5%;
  max-width: 120px;
  width: 100%;
}

#sec-csr .internal-link-list.fix-list li {
  width: 130px;
}

.internal-link-list.fix-list li a {
  padding: 4px 0 4px;
}

.internal-link-list.fix-list li .icon {
  margin-bottom: 5px;
  width: 50%;
  border-radius: 50%;
  background: #fff no-repeat left top;
}

.internal-link-list.fix-list li .title-en {
  font-size: 1.5rem;
  line-height: 1.3;
}

.internal-link-list.fix-list li .title-ja {
  font-size: 1.3rem;
}

@media screen and (min-width: 768px) {
  .internal-link-list li a:hover .icon .common {
    display: none;
  }

  .internal-link-list li a:hover .icon .active {
    display: inline-block;
  }

  .internal-link-list li a:hover .title-en,
  .internal-link-list li a:hover .title-ja,
  .internal-link-list li a:hover .title,
  .internal-link-list li a:hover .year {
    color: #ff7200;
  }
}

@media screen and (max-width: 767px) {
  .internal-link-list li {
    margin-right: 0;
    width: 120px;
    padding: 0 5px;
    box-sizing: border-box;
  }

  #sec-csr .internal-link-list li {
    width: 150px;
    padding: 0;
  }

  .internal-link-list li:nth-child(2n) {
    margin-right: 0;
  }

  .internal-link-list li:nth-last-child(-n+2) {
    margin-bottom: 0;
  }

  .internal-link-list li .icon {
    margin: 0 auto 5px;
    width: 90px;
  }

  .internal-link-list.fix-list {
    top: auto;
    bottom: 0;
    width: 100%;
    background: rgba(255, 255, 255, 0.6) no-repeat left top;
    transform: translateY(0);
    height: -moz-fit-content;
    height: fit-content;
  }

  #our-business #wrapper,
  #history #wrapper,
  #csr #wrapper {
    padding-bottom: 140px;
  }

  .internal-link-list.fix-list li {
    display: inline-block;
  }
}

.oval-link a {
  display: inline-block;
  padding: 14px 22px;
  border: 2px solid #ff7200;
  border-radius: 30px;
  background: transparent no-repeat left top;
  transition-property: color, background-color;
  transition-duration: 0.25s;
  width: 190px;
}

.oval-link2 a {
  padding: 8px 22px;
}

.oval-link a:hover {
  color: #fff;
  background-color: #ff7200;
  opacity: 1;
}

.oval-link-lst {
  margin-top: 0.5rem;
}

.oval-link-lst a {
  display: grid;
  place-items: center;
  width: 238px;
  height: 50px;
  font-size: 22px;
  font-weight: bold;
  color: #ff7200;
  border: 2px solid #ff7200;
  border-radius: 30px;
  background: transparent no-repeat left top;
  transition-property: color, background-color;
  transition-duration: 0.25s;
  /* padding-top: 4px; (修正_20250814 )*/
}
.oval-link-lst a img.img-h24.sougou{
  height: 30px;
}


.oval-link-lst a:hover {
  color: #fff;
  background-color: #ff7200;
  opacity: 1;
}

.oval-link-lst a img {
  width: auto;
  height: auto;
}

.oval-link-lst a img.img-h24 {
  height: 24px;
}

.oval-link-lst a img.img-h25 {
  height: 25px;
}

.oval-link-lst a img.img-h28 {
  height: 28px;
}

.oval-link-lst a img.img-h30 {
  height: 30px;
}

/*****************************************************************
 * page-top-message
 *****************************************************************/
.message-content .photo {
  margin-bottom: 40px;
  background: #f7f7f7 no-repeat left top;
}

.message-content .message-head {
  margin-bottom: 30px;
  color: #000;
  font-size: 2.3rem;
  font-weight: bold;
}

.message-content .message-text {
  margin-bottom: 20px;
}

.message-content .message-text p {
  margin-bottom: 20px;
  line-height: 1.85;
}

.message-content .message-text p:last-child {
  margin-bottom: 0;
}

.message-content .name {
  font-size: 0;
  text-align: right;
}

.message-content .name span {
  display: inline-block;
  vertical-align: middle;
}

.message-content .name .position {
  font-size: 1.4rem;
  margin-right: 10px;
}

.message-content .name .name-box {
  font-size: 2.3rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .message-content .name span {
    display: block;
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .message-content .sp_none {
    display: none;
  }
}

/*****************************************************************
 * page-access
 *****************************************************************/
#access-map .place-box {
  padding: 50px 0;
  border-bottom: 1px solid #e5e5e5;
  font-size: 0;
}

#access-map .place-box:last-child {
  border-bottom: none;
}

.place-box .place-text,
.place-box .place-map {
  display: inline-block;
  vertical-align: top;
}

.place-box .place-text {
  width: 450px;
}

.place-text .place-name,
.place-text .access-text {
  display: inline-block;
  vertical-align: top;
}

.place-text .place-name {
  width: 130px;
}

.place-text .place-name p {
  margin-bottom: 17px;
  padding: 6px 0;
  border-bottom: 2px solid #ff7200;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.25;
}

.place-text .place-name a {
  display: block;
  border: 2px solid #ff7200;
  border-radius: 17px;
  color: #ff7200;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  line-height: 29px;
}

.place-text .place-name a .icon {
  display: inline-block;
  padding-left: 22px;
  background: transparent no-repeat left center;
  background-image: url("../images/page/print_icon_01.png");
}

.place-text .access-text {
  width: 320px;
  padding: 0 15px;
  box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 1.3;
}

.access-text .address {
  padding-bottom: 10px;
}

.access-text .address p {
  margin-bottom: 20px;
}

.access-text .address p:last-child {
  margin-bottom: 0;
}

.access-text .transport {
  padding-top: 15px;
  border-top: 2px dotted #d8d8d8;
}

.transport .transport-box {
  margin-bottom: 20px;
}

.transport .transport-box:last-child {
  margin-bottom: 0;
}

.transport-box .transport-type {
  font-weight: bold;
}

.transport-box .transport-detail {
  font-size: 0;
}

.transport-box .transport-detail span {
  display: inline-block;
  vertical-align: top;
  font-size: 1.4rem;
}

.place-box .place-map {
  width: 550px;
}

.place-box .place-map .place-map-box {
  height: 350px;
}

.print-logo {
  display: none;
}

@media print {

  #sp-menu,
  #header,
  #footer,
  .type-visual,
  .breadcrumbs,
  .common-caption,
  .place-box {
    display: none;
  }

  #wrapper,
  .wrap-width,
  .content-width {
    margin: 0 auto;
    width: 800px;
    min-width: 0;
  }

  .print-logo,
  .place-box.visible {
    display: block;
  }

  .print-logo {
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: left;
  }

  #access-map .place-box {
    width: 800px;
    padding: 0;
  }

  #access-map .section-inner {
    width: 800px;
    padding: 0;
  }

  .place-box .place-text,
  .place-box .place-map {
    display: block;
    width: 100%;
  }

  .place-box .place-map {
    width: 800px;
  }

  .place-box .place-text {
    margin-bottom: 50px;
  }

  .place-text .place-name {
    width: auto;
    min-width: 270px;
  }

  .place-text .place-name p {
    font-size: 2rem;
  }

  .place-text .place-name a {
    display: none;
  }

  .place-text .access-text {
    display: block;
    width: 100%;
    font-size: 0;
  }

  .access-text .address,
  .access-text .transport {
    display: inline-block;
    vertical-align: top;
    padding: 0;
    font-size: 1.4rem;
  }

  .access-text .address {
    width: 40%;
  }

  .access-text .transport {
    width: 60%;
    padding-left: 26px;
    border-top: none;
    border-left: 2px dotted #d8d8d8;
    box-sizing: border-box;
  }

  .place-box .place-map iframe {
    width: 100%;
    height: 540px;
  }
}

@media screen and (max-width: 767px) {
  #access-map .place-box {
    padding: 30px 0 40px;
  }

  .place-box .place-text,
  .place-box .place-map {
    display: inline-block;
    width: 100%;
  }

  .place-box .place-text {
    margin-bottom: 30px;
  }

  .place-text .place-name,
  .place-text .access-text {
    display: block;
    width: 100%;
  }

  .place-text .place-name p {
    font-size: 1.8rem;
  }

  .place-text .access-text {
    font-size: 1.6rem;
  }

  .transport-box .transport-detail span {
    font-size: 1.6rem;
  }
}

/*****************************************************************
 * page-company-profile
 *****************************************************************/
.profile-content .profile-text {
  margin-bottom: 30px;
  line-height: 1.85;
}

.company-profile-table {
  border-top: 5px solid #000;
  border-left: none;
}

.company-profile-table th,
.company-profile-table td {
  vertical-align: top;
  padding-top: 22px;
  padding-bottom: 22px;
  line-height: 1.85;
}

.company-profile-table th {
  border-right: none;
  background-color: transparent;
}

.company-profile-table td {
  border-right: none;
}

.company-profile-table .branch {
  margin-bottom: 20px;
}

.company-profile-table .branch:last-child {
  margin-bottom: 0;
}

.company-profile-table .branch span {
  display: block;
}

.company-profile-table .branch span.text_annotation {
  font-size: 1.1rem;
}

.company-profile-table .branch .name {
  font-weight: bold;
}

.company-profile-table .branch .detail {
  margin-top: 8px;
}

@media screen and (max-width: 767px) {

  .company-profile-table th,
  .company-profile-table td {
    display: block;
  }

  .company-profile-table th {
    padding-bottom: 0;
    border-bottom: none;
    text-align: left;
  }

  .company-profile-table td {
    padding-top: 15px;
    padding-left: 15px;
  }
}

/*****************************************************************
 * page-our-business
 *****************************************************************/
#our-business-head {
  margin-bottom: 90px;
}

#our-business-head .common-text {
  padding-bottom: 50px;
}

.business-section {
  margin-bottom: 80px;
}

.business-section#sec-trade {
  margin-bottom: 0;
}

.business-section .sec-main-image {
  content: "";
  margin: 0 auto 45px;
  width: 100%;
  height: 500px;
  background: transparent no-repeat center center;
  background-image: url("../images/page/business_detail_img_01.jpg");
  background-size: cover;
  background-attachment: fixed;
}

.business-section#sec-chemical .sec-main-image {
  background-image: url("../images/page/business_detail_img_01.jpg");
}

.business-section#sec-solar-energy .sec-main-image {
  background-image: url("../images/page/business_detail_img_05.jpg");
}

.business-section#sec-security .sec-main-image {
  background-image: url("../images/page/business_detail_img_03.jpg");
}

.business-section#sec-trade .sec-main-image {
  background-image: url("../images/page/business_detail_img_04.jpg");
}

.business-section .detail-container {
  display: table;
  background: #fff no-repeat left top;
}

.business-section .detail-container .detail-icon,
.business-section .detail-container .detail-text {
  display: table-cell;
  vertical-align: top;
  padding: 20px 0;
}

.business-section .detail-container .detail-icon {
  width: 230px;
}

.business-section .detail-container .detail-text {
  padding: 20px 40px;
  border-left: 1px solid #e5e5e5;
}

.detail-container .detail-text .detail-head {
  margin-bottom: 25px;
  font-size: 2rem;
  font-weight: bold;
}

.detail-container .detail-text .description {
  margin-bottom: 35px;
  line-height: 1.85;
}

.detail-container .detail-text .description p {
  margin-bottom: 20px;
}

.detail-container .detail-text .description p:last-child {
  margin-bottom: 0;
}

.detail-container .detail-text .products .head {
  margin-bottom: 15px;
  color: #f56c00;
  font-weight: bold;
}

.detail-container .detail-text .products .item {
  line-height: 1.85;
}

.detail-container .detail-text .detail-link {
  margin-top: 50px;
}

.detail-container .detail-text .detail-link a {
  color: #ff7200;
}

.detail-container .detail-text .detail-link a:hover {
  color: #fff;
}

.products-link-btn li {
  display: inline-block;
  margin: 0 20px 20px 0;
  width: 245px;
  text-align: center;
}

.products-link-btn li a {
  display: block;
}

.detail-container .detail-text .link-group {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}

.detail-container .detail-text .link-group .link-box {
  text-align: center;
  margin-right: 2rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .business-section .sec-main-image {
    width: 100%;
    height: 300px;
    background-attachment: scroll;
  }

  .business-section .detail-container {
    width: 450px;
    padding: 0;
  }

  .business-section .detail-container .detail-icon,
  .business-section .detail-container .detail-text {
    display: block;
    width: 100%;
    padding: 20px;
    border-top: 1px solid #e5e5e5;
    border-left: none;
    box-sizing: border-box;
  }

  .detail-container .detail-text .detail-link a {
    margin-right: 0;
    margin-bottom: 30px;
    width: 230px;
  }

  .detail-container .detail-text .detail-link a:last-child {
    margin-bottom: 0;
  }

  .detail-container .detail-text .detail-link {
    margin: 50px auto 0;
    width: 280px;
  }

  .products-link-btn li {
    width: 280px;
  }

  .detail-container .detail-text .link-group .link-box {
    font-size: 80%;
  }
}

@media screen and (max-width: 592px) {
  .detail-container .detail-text .link-group {
    display: block;
  }

  .detail-container .detail-text .link-group .link-box {
    margin-right: 0;
    margin-bottom: 2rem;
  }
}

/*****************************************************************
 * page-vision-value
 *****************************************************************/
#hanwha-vision .head {
  margin-bottom: 15px;
  color: #000;
  font-size: 2.8rem;
  font-weight: bold;
}

#hanwha-spirit-core-value .spirit-core-value-image {
  margin-top: 40px;
}

.corevalue_inner img {
  width: 100px;
  height: auto;
  margin-top: 30px;
}

.blandvalue_inner {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.corevalue_inner {
  margin-bottom: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blandvalue_inner img {
  width: 150px;
  height: auto;
  margin-top: 30px;
}

.brandvalue_img {
  text-align: center;
}

.corevalue_img {
  text-align: center;
  margin-bottom: 20px;
}

.bv_lttl {
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
  font-size: 1.8rem;
}

.brandvalue_ctt {
  width: 25%;
  box-sizing: border-box;
}

.brandvalue_ctt:nth-child(2) {
  margin: 0 20px;
}

.corevalue_ctt {
  width: 20%;
  min-width: 200px;
  margin-bottom: auto;
}

.dotted_line {
  background-image: linear-gradient(to right, #ED7100, #ED7100 2px, transparent 2px);
  background-size: 10px 2px;
  background-position: center middle;
  background-repeat: repeat-x;
  width: 120px;
  height: 2px;
  margin: 0 20px;
}

@media screen and (max-width: 767px) {

  .blandvalue_inner,
  .corevalue_inner {
    flex-direction: column;
  }

  .dotted_line {
    height: 70px;
    width: 2px;
    background-size: 2px 10px;
    background-repeat: repeat-y;
    background-image: linear-gradient(to bottom, #ED7100, #ED7100 2px, transparent 2px);
    margin: 15px 0;
  }

  .corevalue_inner img {
    margin-top: 0;
  }

  .corevalue_ctt {
    width: 100%;
    max-width: 450px;
  }

  .pc_only {
    display: none;
  }

  .brandvalue_ctt {
    width: 100%;
    max-width: 450px;
    align-self: center;
  }

  .twolines_img {
    height: 20px;
    padding-bottom: 15px !important;
  }
}

/*****************************************************************
 * page-history
 *****************************************************************/
.history-link-list {
  font-size: 0;
  text-align: center;
}

.history-link-list.fix-list {
  transform: translateY(-50%);
}

.history-link-list li {
  display: inline-block;
  vertical-align: top;
  margin-right: 0;
  width: 120px;
  font-size: 1.2rem;
}

.history-link-list li.active {
  color: #ff7200;
}

.history-link-list li a {
  display: block;
}

.history-link-list li .icon {
  margin-bottom: 10px;
}

.history-link-list li .title {
  margin-bottom: 4px;
}

.history-link-list.fix-list li .icon {
  width: 35%;
  max-width: 70px;
  border-radius: 0;
  background-color: transparent;
}

.history-link-list.fix-list li .title,
.history-link-list.fix-list li .year {
  line-height: 1.4;
}

.history-link-list.fix-list li .title {
  margin-bottom: 0;
}

#history .section-inner {
  padding-top: 120px;
}

.sec-time-line .period-year {
  margin: 0 auto 30px;
  width: 240px;
  border-radius: 22px;
  background: #fa7216 no-repeat left top;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 44px;
}

.sec-time-line .period-title {
  margin-bottom: 10px;
  color: #000;
  font-size: 2.3rem;
  font-weight: bold;
  text-align: center;
}

.sec-time-line .description {
  margin-bottom: 30px;
  text-align: center;
}

.time-line {
  position: relative;
}

.time-line::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background: #ff7200 no-repeat left top;
}

#found-period .time-line::before {
  height: 305px;
}

#growth-period .time-line::before {
  height: 505px;
}

#second-found-period .time-line::before {
  height: 910px;
}

#jump-period .time-line::before {
  height: 505px;
}

#global-period .time-line::before {
  height: 2565px;
}

#sustainable-period .time-line::before {
  height: 1723px;
}

.time-line .time-row {
  position: relative;
}

.time-line .time-row .circle {
  content: "";
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  margin-top: -14px;
  margin-left: -14px;
  width: 29px;
  height: 29px;
  border: 1px solid #ff7200;
  box-sizing: border-box;
  border-radius: 50%;
  background: #fff no-repeat left top;
}

.time-line .time-row .circle::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  margin-top: -3px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ff7200 no-repeat left top;
}

.time-line .time-row .image,
.time-line .time-row .text {
  width: 465px;
  height: 204px;
}

.time-line .time-row .text {
  display: table;
}

.time-line .time-row .text .text-inner {
  display: table-cell;
  vertical-align: middle;
}

.time-line .time-row .text .year {
  color: #000;
  font-size: 2.3rem;
  font-weight: bold;
}

.time-line .time-row.img-l .image {
  float: left;
}

.time-line .time-row.img-l .text {
  float: right;
}

.time-line .time-row.img-r .image {
  float: right;
}

.time-line .time-row.img-r .text {
  float: left;
  text-align: right;
  line-height: 1.85;
}

#sp_dummy {
  display: none;
  height: 0;
}

@media screen and (max-width: 767px) {
  .history-link-list {
    display: flex;
    flex-wrap: wrap;
    padding: 0 10px;
  }

  .history-link-list li {
    width: 96px;
    margin-bottom: 20px;
    flex-grow: 1;
  }

  .history-link-list.fix-list {
    margin-top: 0;
    transform: translateY(0);
    display: block;
  }

  .history-link-list.fix-list li .icon {
    width: 40%;
  }

  .time-line .time-row.img-l .image,
  .time-line .time-row.img-l .text,
  .time-line .time-row.img-r .image,
  .time-line .time-row.img-r .text {
    float: none;
  }

  .sec-time-line .period-year {
    margin-bottom: 20px;
  }

  .sec-time-line .description {
    text-align: left;
  }

  .time-line::before {
    left: 14px;
  }

  #found-period .time-line::before {
    height: 391px;
  }

  #growth-period .time-line::before {
    height: 708px;
  }

  #second-found-period .time-line::before {
    height: 1365px;
  }

  #jump-period .time-line::before {
    height: 685px;
  }

  #global-period .time-line::before {
    height: 3744px;
  }

  #sustainable-period .time-line::before {
    height: 2625px;
  }

  .time-line .time-row {
    margin-bottom: 30px;
    padding-left: 40px;
  }

  .time-line .time-row:last-child {
    margin-bottom: 0;
  }

  .time-line .time-row .circle {
    top: 80px;
    left: 0;
    margin-top: 0;
    margin-left: 0;
  }

  .time-line .time-row .circle::before {
    margin-top: -4px;
    margin-left: -4px;
  }

  .time-line .time-row .image,
  .time-line .time-row .text {
    display: block;
    width: 100%;
    height: auto;
  }

  .time-line .time-row .image {
    margin-bottom: 5px;
  }

  .time-line .time-row.img-r .text {
    text-align: left;
  }

  #sp_dummy {
    visibility: hidden;
    display: inline-block;
  }
}

/*****************************************************************
 * page-csr
 *****************************************************************/
.csr-link-list.fix-list li .icon {
  width: 100px;
}

#sec-csr {
  padding-bottom: 35px;
}

#sec-csr .common-text {
  margin-bottom: 45px;
}

.csr-content .area-wrap {
  margin-top: 100px;
}

.csr-content .area-wrap .area {
  margin-bottom: 80px;
}

.csr-content .area .area-title {
  margin-bottom: 60px;
  color: #000;
  font-size: 2.6rem;
  font-weight: bold;
}

.activity-list .activity-box {
  display: table;
  margin-bottom: 30px;
  width: 100%;
}

.activity-list .activity-box:last-child {
  margin-bottom: 0;
}

.activity-box .image,
.activity-box .text {
  display: table-cell;
  vertical-align: middle;
  width: 500px;
  box-sizing: border-box;
}

.activity-box .text {
  padding: 0 50px;
}

.activity-box .text .activity-title {
  margin-bottom: 15px;
  color: #000;
  font-size: 1.8rem;
  font-weight: bold;
}

.list_comit {
  display: flex;
}

.list_comit strong {
  text-align: center;
  display: block;
  margin: 15px 0;
  font-size: 1.8rem;
}

.list_comit li {
  display: flex;
  width: 33%;
}

.list_comit li:nth-child(2) {
  margin: 0 7%;
}

@media screen and (min-width: 768px) {
  .activity-box.team-hanwha-q-cells .text .activity-title {
    text-align: left;
  }
}

@media screen and (max-width: 767px) {
  .csr-link-list.fix-list li .icon {
    width: 90px;
  }

  .csr-content .area-wrap {
    margin-top: 40px;
  }

  .csr-content .area .area-title {
    margin-bottom: 30px;
  }

  .activity-box .image,
  .activity-box .text {
    display: block;
    width: 100%;
  }

  .activity-box .image {
    margin-bottom: 20px;
  }

  .activity-box .text {
    padding: 0;
  }

  .activity-box .text .activity-title {
    text-align: center;
  }

  .list_comit {
    flex-direction: column;
  }

  .list_comit li,
  .list_comit li:nth-child(2) {
    width: 100%;
    margin: 0 0 60px 0;
  }

  .imgframe {
    display: block;
    text-align: center;
  }
}

/*****************************************************************
 * page-global-footprint
 *****************************************************************/
#global-footprint-content .head-text {
  margin-bottom: 30px;
}

.footprint-image {
  margin-bottom: 75px;
}

.footprint_inner {
  display: flex;
  justify-content: space-between;
}

.footprint_inner .footprint-image:nth-child(2) {
  margin: 0 50px;
}

.spirit-core-value-image {
  margin-top: 20px;
}

.group-container .group-box {
  margin-bottom: 20px;
}

.group-container .group-box:last-child {
  margin-bottom: 0;
}

.group-box .group-name {
  position: relative;
  padding-left: 50px;
  border-bottom: 1px solid #d6d6d6;
  color: #ff7200;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 56px;
}

.group-box .group-name:hover {
  cursor: pointer;
}

.group-box .group-name::before {
  content: "";
  position: absolute;
  top: 12px;
  right: 50px;
  width: 32px;
  height: 32px;
  border: 1px solid #d7d7d7;
  box-sizing: border-box;
  border-radius: 50%;
}

.group-box .group-name::after {
  content: "";
  position: absolute;
  top: 21px;
  right: 61px;
  width: 10px;
  height: 10px;
  border-width: 2px 2px 0 0;
  border-style: solid;
  border-color: #ff7200;
  box-sizing: border-box;
  transform: rotate(135deg);
}

.group-box .group-name.active::after {
  top: 25px;
  transform: rotate(-45deg);
}

.group-box .common-text {
  display: none;
  margin-top: 14px;
  padding: 0 50px;
}

@media screen and (max-width: 767px) {
  #global-footprint-content .head-text {
    text-align: left;
  }

  .footprint_inner {
    flex-direction: column;
  }

  .footprint_inner .footprint-image {
    margin: 0 auto 40px !important;
    max-width: 350px;
  }
}

/*****************************************************************
 * page-requirements
 *****************************************************************/
.recruitment-link {
  margin-top: 96px;
}

.number-list li .recruit-num-detail {
  margin-bottom: 15px;
}

.number-list li .gender-num {
  margin: 0 auto;
  width: 190px;
  color: #ff7200;
  font-size: 2rem;
  text-align: right;
  line-height: 1.5;
}

.number-list li .gender-num .gender-box {
  background: transparent no-repeat left top;
}

.number-list li .gender-num .gender-box.male {
  background-image: url("../images/page/recruit_num_icon_01.png");
}

.number-list li .gender-num .gender-box.female {
  background-image: url("../images/page/recruit_num_icon_02.png");
}

.number-list li .gender-num .gender-box .number {
  display: inline-block;
  vertical-align: baseline;
  min-width: 70px;
  font-size: 3.5rem;
}

ul.office-photo {
  margin-bottom: 40px;
  font-size: 0;
  text-align: center;
}

ul.office-photo li {
  display: inline-block;
  vertical-align: top;
  width: 400px;
}

.office-text {
  text-align: center;
}

/*****************e************************************************
 * page-members
 *****************************************************************/
.members-first-visual {
  position: relative;
  display: table;
  margin-bottom: 70px;
  width: 100%;
  height: 550px;
}

.members-first-visual .fv-text {
  position: relative;
  z-index: 2;
  color: #fff;
}

.members-first-visual .fv-text h3 {
  margin-bottom: 40px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.6;
}

.members-first-visual .fv-text .name-box {
  margin-bottom: 20px;
}

.members-first-visual .fv-text .name-box .name-en,
.members-first-visual .fv-text .name-box .name-ja {
  display: block;
  font-weight: bold;
}

.members-first-visual .fv-text .name-box .name-en {
  font-size: 2.4rem;
}

.members-first-visual .fv-text .name-box .name-ja {
  font-size: 1.5rem;
}

.members-first-visual .fv-photo {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
}

.members-first-visual .fv-photo::before,
.members-first-visual .fv-photo::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  width: 100%;
  height: 100%;
  background: transparent repeat-x top right;
}

.members-first-visual .fv-photo::before {
  right: 50%;
  background-image: url("../images/page/members_bg_01.jpg");
}

.members-first-visual .fv-photo::after {
  left: 50%;
  background-image: url("../images/page/members_bg_02.jpg");
}

.members-first-visual .fv-photo .img-box {
  text-align: right;
}

.members-first-visual .fv-photo img {
  max-height: 550px;
}

.hover-question.qa-01 {
  margin-bottom: 40px;
  padding-top: 220px;
}

.hover-question.qa-02 {
  margin-bottom: 50px;
  padding-top: 150px;
}

.hover-question.qa-01 .qa-text {
  min-height: 470px;
}

.hover-question.qa-02 .qa-text {
  min-height: 540px;
}

.hover-question .qa-text .upper-box {
  width: 620px;
  padding-top: 40px;
  padding-bottom: 40px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.8);
}

.hover-question.qa-01 .qa-text .upper-box {
  margin-left: auto;
  padding-left: 40px;
}

.hover-question.qa-02 .qa-text .upper-box {
  margin-right: auto;
}

.hover-question .qa-image {
  position: absolute;
  z-index: -1;
  top: 0;
}

.hover-question.qa-01 .qa-image {
  left: 0;
}

.hover-question.qa-02 .qa-image {
  right: 0;
}

.common-questions {
  margin-bottom: 50px;
}

.question-box {
  margin-bottom: 40px;
}

.question-box:last-child {
  margin-bottom: 0;
}

.question-text {
  margin-bottom: 25px;
  color: #ff7200;
  font-size: 2.2rem;
  font-weight: bold;
}

.hover-question.qa-02 .answer-text {
  padding-right: 40px;
}

.work-flow .text-box {
  float: right;
  width: 605px;
  padding-top: 15px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.85;
}

.work-flow .text-box .type-box {
  margin-bottom: 15px;
}

.work-flow .text-box .type-box:last-child {
  margin-bottom: 0;
}

.work-flow .flow-title {
  position: relative;
  padding-left: 12px;
}

.work-flow .flow-title::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  background: #ff7200 no-repeat left top;
}

.work-flow ul.time-flow li {
  padding: 5px 0;
  background: transparent repeat-x left bottom;
  background-image: url("../images/page/members_border_01.png");
  font-size: 0;
}

.work-flow ul.time-flow li:last-child {
  background-image: none;
}

.work-flow ul.time-flow li .time,
.work-flow ul.time-flow li .work {
  display: inline-block;
  vertical-align: top;
  font-size: 1.4rem;
}

.work-flow ul.time-flow li .time {
  margin-right: 10px;
  min-width: 45px;
  color: #ff7200;
}

.work-flow .img-box {
  float: left;
  max-width: 550px;
}

@media screen and (max-width: 767px) {
  .members-first-visual {
    margin-bottom: 50px;
    height: 210px;
  }

  .members-first-visual .fv-text h3 {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }

  .members-first-visual .fv-text .name-box {
    margin-bottom: 10px;
  }

  .members-first-visual .fv-text .name-box .name-en {
    font-size: 1.8rem;
  }

  .hover-question.qa-01,
  .hover-question.qa-02 {
    padding-top: 0;
  }

  .hover-question .qa-text {
    margin-bottom: 20px;
    width: 100%;
    padding: 0;
  }

  .hover-question .qa-text .upper-box {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }

  .hover-question.qa-01 .qa-text .upper-box {
    padding-left: 0;
  }

  .hover-question .qa-image {
    position: relative;
  }

  .work-flow .text-box,
  .work-flow .img-box {
    float: none;
    width: 100%;
  }

  .work-flow .text-box {
    margin-bottom: 30px;
  }

  .work-flow ul.time-flow li .work {
    width: 395px;
  }
}

/*****************e************************************************
 * page-privacy-policy
 *****************************************************************/
.privacy-text {
  margin-bottom: 70px;
}

.privacy-text .article {
  margin: 0 0 50px;
}

.privacy-text .article:last-child {
  margin-bottom: 0;
}

.privacy-text .date {
  text-align: right;
}

.article-head {
  color: #0f0f0f;
  font-size: 2.2rem;
}

.article-text {
  margin-bottom: 20px;
}

.article-text:last-child {
  margin-bottom: 0;
}

.article-list li {
  margin-bottom: 20px;
}

.article-list li:last-child {
  margin-bottom: 0;
}

.article-list-detail {
  padding-left: 1.5em;
}

.article-list-detail .article-list-text {
  margin-bottom: 20px;
}

.article-list-detail .article-list-text.text-m0,
.article-list-detail .article-list-text:last-child {
  margin-bottom: 0;
}

.article-list-detail .detail-list .detail-list-item {
  margin-bottom: 20px;
}

.article-list-detail .detail-list .detail-list-item:last-child {
  margin-bottom: 0;
}

.detail-number-list li,
.indent-number-list li {
  margin-bottom: 0;
}

.indent-number-list {
  padding-left: 1.5em;
}

.indent-number-list li {
  padding-left: 2em;
  text-indent: -2em;
}

.consent p {
  margin-bottom: 15px;
  color: #ff7200;
  text-align: center;
}

.consent .btn {
  text-align: center;
}

a.consent-button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
  width: 250px;
  border: 2px solid #ff7200;
  box-sizing: border-box;
  border-radius: 25px;
  background: transparent no-repeat left top;
  color: #ff7200;
  font-size: 2rem;
  text-align: center;
  line-height: 46px;
  transition-property: color, background-color;
  transition-duration: 0.25s;
}

a.consent-button:hover {
  color: #fff;
  background-color: #ff7200;
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .indent-number-list {
    padding-left: 0;
  }
}

/*****************************************************************
 * page-thanks
 *****************************************************************/
.thanks-content {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .thanks-content {
    text-align: left;
  }
}

/* = ContactForm7
-------------------------------------------------------------- */
.input-type {
  margin-bottom: 45px;
}

.input-type.recent-corp-02,
.input-type.recent-corp-03 {
  display: none;
}

.input-type:last-child {
  margin-bottom: 0;
}

.input-type-name {
  margin-bottom: 50px;
  border-bottom: 2px solid #eaeaea;
  font-size: 1.6rem;
  font-weight: bold;
}

.form-row {
  display: table;
  margin-bottom: 30px;
}

.form-row:last-child {
  margin-bottom: 0;
}

.form-row-name,
.form-row-input {
  display: table-cell;
  vertical-align: top;
}

.form-row-name {
  width: 210px;
  padding-top: 7px;
  box-sizing: border-box;
  font-size: 0;
}

.form-row-name .text,
.form-row-name .required {
  display: inline-block;
  vertical-align: middle;
  line-height: 20px;
}

.form-row-name .text {
  width: 160px;
  font-size: 1.4rem;
  font-weight: bold;
}

.form-row-name .required {
  padding: 0 6px;
  background: #ff7200 no-repeat left top;
  color: #fff;
  font-size: 1.2rem;
}

.form-row-input {
  padding-left: 30px;
  border-left: 2px dotted #d8d8d8;
}

.input-row {
  margin-bottom: 10px;
}

.input-row:last-child {
  margin-bottom: 0;
}

input[type=text],
input[type=tel],
input[type=email] {
  width: 350px;
}

input[type=text].text-short {
  width: 110px;
}

textarea {
  width: 550px;
  resize: none;
}

select {
  width: 180px;
}

.input-notice {
  margin: 0 10px;
}

.input-notice:first-child {
  margin-left: 0;
}

.input-notice:last-child {
  margin-right: 0;
}

span.wpcf7-list-item {
  display: table-row;
}

span.wpcf7-list-item input[type=radio],
span.wpcf7-list-item input[type=checkbox] {
  vertical-align: middle;
}

.submit-button {
  text-align: center;
}

.submit-notice {
  margin-bottom: 10px;
  color: #ff7200;
  text-align: center;
}

input[type=submit],
input[type=button] {
  width: 300px;
  padding: 0;
  border: 2px solid #ff7200;
  border-radius: 25px;
  background: #fff no-repeat left top;
  color: #ff7200;
  font-size: 2rem;
  line-height: 46px;
  transition-property: color, background-color;
  transition-duration: 0.25s;
}

input[type=submit]:hover,
input[type=button]:hover {
  color: #fff;
  background-color: #ff7200;
}

form.custom-wpcf7c-confirmed select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.confirm-show {
  display: none;
}

form.custom-wpcf7c-confirmed .confirm-show {
  display: block;
}

form.custom-wpcf7c-confirmed .confirm-hide {
  display: none;
}

.wpcf7 input[type=text],
.wpcf7 input[type=tel],
.wpcf7 input[type=email],
.wpcf7 input[type=number],
.wpcf7 input[type=url],
.wpcf7 input[type=password],
.wpcf7 textarea,
.wpcf7 select {
  box-shadow: none;
  padding: 6px 4px;
  font-size: 1.6rem;
  line-height: 1.4;
  background: #fafafa;
  vertical-align: middle;
}

.wpcf7 select {
  padding: 4px 6px;
}

.wpcf7-submit[type=submit]:hover,
.wpcf7-back[type=button]:hover {
  transition: 0.5s;
  opacity: 0.7;
}

form.custom-wpcf7c-confirmed .wpcf7c-conf {
  border: none;
  background: transparent no-repeat left top;
}

.wpcf7 img.ajax-loader {
  display: block;
  margin: 4px auto !important;
}

@media screen and (max-width: 767px) {
  .input-type-name {
    margin-bottom: 25px;
  }

  .form-row-name,
  .form-row-input {
    display: block;
    width: 100%;
  }

  .form-row-name {
    margin-bottom: 10px;
  }

  .form-row-name .text {
    margin-right: 10px;
    width: auto;
  }

  .form-row-input {
    padding: 0;
    border-left: none;
  }

  input[type=text],
  input[type=tel],
  input[type=email] {
    width: 100%;
    box-sizing: border-box;
  }

  .your-graduation-year input[type=text],
  .your-graduation-month input[type=text],
  .your-graduation-day input[type=text] {
    width: 60px;
  }

  textarea {
    width: 100%;
  }

  .wpcf7 input[type=text],
  .wpcf7 input[type=tel],
  .wpcf7 input[type=email],
  .wpcf7 input[type=password],
  .wpcf7 textarea,
  .wpcf7 select {
    padding: 6px 2px;
    font-size: 1.6rem;
  }

  .wpcf7-form-control-wrap {
    position: relative;
    display: inline-block;
    /* width: 100%; */
  }

  .wpcf7-submit[type=submit],
  .wpcf7-back[type=button] {
    width: 240px;
    height: 48px;
    padding: 0;
  }

  .wpcf7-back[type=button] {
    margin-bottom: 20px;
  }

  .wpcf7-submit[type=submit]:hover {
    opacity: 1;
  }

  div.wpcf7 .ajax-loader {
    display: block;
    margin: 10px auto 0;
  }
}

/*****************************************************************
 * page-notice
 *****************************************************************/
.privacy-text .head-text {
  margin-bottom: 30px;
}

.notice-list,
.notice-list li {
  list-style-type: disc;
}

.notice-list {
  margin-bottom: 20px;
  padding-left: 2em;
}

.notice-list:last-child {
  margin-bottom: 0;
}

.notice-list li {
  margin-bottom: 5px;
}

.notice-list li:last-child {
  margin-bottom: 0;
}

.modified-date {
  text-align: right;
}

/*****************************************************************
 * page-recruit
 *****************************************************************/
.career-not-found {
  margin-bottom: 60px;
  text-align: center;
}

.type-visual.recruit-visual {
  height: 630px;
  background-image: url("../images/page/recruit_fv_bg_01.jpg");
}

.recruitment-link .category-link li {
  width: 25%;
}

.recruitment-link.p-member .category-link li {
  width: 50%;
}

.recruitment-link .category-link li a:hover {
  border-color: #ff7200;
  color: #ff7200;
  font-weight: bold;
  opacity: 1;
}

.new-graduate {
  margin-bottom: 65px;
}

.recruit-common .text {
  margin-bottom: 15px;
  text-align: center;
}

.recruit-common .text span.logo {
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  width: 230px;
}

.detail-oval-btn {
  font-size: 0;
  text-align: center;
}

.detail-oval-btn a {
  display: inline-block;
  vertical-align: middle;
  margin-right: 50px;
  padding: 0 60px;
  border: 2px solid #ff7200;
  border-radius: 33px;
  background: transparent no-repeat left top;
  color: #ff7200;
  font-size: 2rem;
  line-height: 62px;
  transition-property: color, background-color, opacity;
  transition-duration: 0.25s;
}

.detail-oval-btn a:hover {
  color: #fff;
  background-color: #ff7200;
  opacity: 1;
}

.detail-oval-btn a.mynavi {
  padding: 18px 40px;
  border-color: #09a2d4;
}

.detail-oval-btn a.mynavi:hover {
  background-color: inherit;
  opacity: 0.7;
}

.detail-oval-btn a:last-child {
  margin-right: 0;
}

#recruit #sec-members {
  border-top: 1px solid #d9d9d9;
}

#sec-numbers {
  background: #fafafa no-repeat left top;
}

#recruit-odometer {
  text-align: center;
}

#recruit-odometer li {
  margin-bottom: 0;
}

.gender-ratio .item-number {
  font-size: 0;
  text-align: center;
}

#recruit-odometer .gender-ratio .item-number .gender {
  display: inline-block;
  vertical-align: top;
  margin-right: 12px;
  font-size: 2rem;
  font-weight: bold;
}

#recruit-odometer .gender-ratio .item-number .gender:last-child {
  margin-right: 0;
}

#recruit-odometer .gender-ratio .item-number .gender .name {
  margin-bottom: 10px;
}

#recruit-odometer .gender-ratio .item-number .gender .number {
  font-size: 3.5rem;
}

#recruit-odometer .gender-ratio .item-number .gender .unit {
  font-size: 2.2rem;
}

@media screen and (max-width: 767px) {
  .detail-oval-btn a {
    margin-right: 0;
    margin-bottom: 30px;
  }

  .detail-oval-btn a:last-child {
    margin-bottom: 0;
  }

  #recruit-odometer li {
    margin-bottom: 40px;
    width: 100%;
  }

  #recruit-odometer li:last-child {
    margin-bottom: 0;
  }
}

/*****************************************************************
 * page-ir
 *****************************************************************/
a.download-link {
  display: inline-block;
  padding: 6px 55px;
  border: 2px solid #fc4848;
  border-radius: 24px;
  color: #fc4848;
  font-weight: bold;
  text-align: center;
}

a.download-link span.icon-pdf {
  display: inline-block;
  padding-left: 40px;
  background: transparent no-repeat left center;
  background-image: url("../images/common/icon_pdf_01.png");
  line-height: 32px;
}

#f-highlights a.download-link {
  margin-bottom: 80px;
}

#financial-graphs {
  font-size: 0;
}

#financial-graphs .graph-wrap {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 80px;
  width: 50%;
  padding: 0 68px;
  box-sizing: border-box;
}

.graph-wrap .graph-name {
  margin-bottom: 10px;
  line-height: 1.4;
}

.graph-name .name {
  font-size: 2.4rem;
  font-weight: bold;
}

.graph-name .unit {
  font-size: 1.4rem;
}

.figure-wrap .figure-box {
  display: inline-block;
  vertical-align: bottom;
  margin-right: 48px;
  width: 89px;
  text-align: center;
}

.figure-wrap .figure-box:last-child {
  margin-right: 0;
}

.figure-box .bar-wrap {
  position: relative;
  margin-bottom: 24px;
  height: 338px;
}

.figure-box .bar-wrap .bar-inner {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.figure-box .number {
  margin-bottom: 10px;
  color: #ff7200;
  font-size: 2rem;
  opacity: 0;
  transform: translateY(10px);
  transition-property: opacity, transform;
  transition-duration: 0.3s;
}

.move .figure-box .number {
  opacity: 1;
  transform: translateY(0);
}

.figure-box .bar {
  content: "";
  margin: 0 auto;
  width: 45px;
  height: 0;
  background: #ff7200 no-repeat left top;
  transition-property: height;
  transition-duration: 0.5s;
  border-radius: 30px 30px 0 0;
}

.move .figure-box .bar {
  height: 220px;
}

.figure-box .year {
  height: 67px;
  padding-top: 15px;
  border-top: 2px solid #f7ba81;
  box-sizing: border-box;
  color: #ff7200;
  font-size: 1.8rem;
  line-height: 1.4;
}

.figure-box .year span.small {
  font-size: 1.4rem;
}

.figure-01 .number {
  color: #f7ba81;
  transition-delay: 0.5s;
}

.figure-01 .bar {
  background-color: #f7ba81;
}

.move .figure-01 .bar {
  height: 220px;
}

.figure-01 .year {
  color: #f7ba81;
}

.figure-02 .number {
  color: #f69f4f;
  transition-delay: 0.7s;
}

.figure-02 .bar {
  background-color: #f69f4f;
  transition-delay: 0.2s;
}

.move .figure-02 .bar {
  height: 264px;
}

.figure-02 .year {
  color: #f69f4f;
}

.figure-03 .number {
  font-size: 2.2rem;
  font-weight: bold;
  transition-delay: 0.9s;
}

.figure-03 .bar {
  transition-delay: 0.4s;
}

.sale.move .figure-01 .bar {
  height: 230px;
}

.sale.move .figure-02 .bar {
  height: 264px;
}

.sale.move .figure-03 .bar {
  height: 298px;
}

.asset.move .figure-01 .bar {
  height: 237px;
}

.asset.move .figure-02 .bar {
  height: 290px;
}

.debt.move .figure-01 .bar {
  height: 220px;
}

.debt.move .figure-02 .bar {
  height: 271px;
}

.debt.move .figure-03 .bar {
  height: 237px;
}

.fund.move .figure-01 .bar {
  height: 232px;
}

.fund.move .figure-02 .bar {
  height: 248px;
}

.fund.move .figure-03 .bar {
  height: 210px;
}

ul.graph-notice li {
  margin-bottom: 1em;
  padding-left: 1em;
  text-indent: -1em;
}

ul.graph-notice li:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #financial-graphs .graph-wrap {
    margin-bottom: 70px;
    width: 100%;
    padding: 0;
  }

  .graph-wrap .graph-name {
    margin-bottom: 0;
  }

  .graph-wrap .figure-wrap {
    text-align: center;
  }

  .figure-wrap .figure-box {
    margin-right: 40px;
    width: 100px;
  }

  .figure-box .bar {
    width: 60px;
  }

  .figure-box .year {
    height: 70px;
    font-size: 2rem;
  }
}

/*****************************************************************
 * page-inquiry,
 *****************************************************************/
.inquiry_section .internal-link-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 30px;
  margin: 0 auto;
  width: 70%;
}

.inquiry_section .internal-link-list.under_list {
  /* margin: initial; */
}

.inquiry_section .internal-link-list.under_list li {
  width: 30%;
}

@media screen and (max-width: 767px) {
  .inquiry_section .internal-link-list.under_list li {
    width: 100%;
  }
}


.inquiry_section .internal-link-list.under_list li a {
  height: 46px;
  padding: initial;
  justify-content: center;
  padding-top: 4px;
}

@media screen and (max-width: 767px) {
  .inquiry_section .internal-link-list {
    flex-direction: column;
    gap: 30px;
  }
}

.inquiry_section .press_box {
  margin-top: 30px;

  width: 70%;
  margin: 30px auto 0;
  text-align: center;

}

.inquiry_section .press_box .internal-link-anchor {
  padding: 10px;
  box-sizing: border-box;
  display: block;
  border: 1px solid #ff7200;
}

.inquiry_section .press_box .internal-link-anchor:hover {
  color: #ff7200;
  opacity: 1;
}

.inquiry_section .internal-link-list li {
  display: block;
  width: 48%;
  margin-right: initial;
  border: 1px solid #ff7200;
  box-sizing: border-box;
  border-radius: 50px;
}

@media screen and (max-width: 767px) {
  .inquiry_section .internal-link-list li {
    width: 100%;
  }
}

.inquiry_section .internal-link-list li .internal-link-anchor {
  display: flex;
  align-items: center;
  gap: 40px;
  padding: 10px 16px 8px;
}

.inquiry_section .internal-link-list li .internal-link-anchor .icon {
  margin: initial;
  width: 50px;
}

.inquiry_section .internal-link-list li .internal-link-anchor .contact_text_box:hover {
  color: #ff7200;
}

.inquiry_section .title-en {
  font-size: 1.6rem;
  font-weight: bold;
}

.inquiry_section .title-ja {
  font-size: 1.4rem;
}



/*****************************************************************
 * page-greenenergy-inquiry,
   page-chemical-inquiry,
   page-security-inquiry,
   page-productsolution-inquiry,
   page-press-inquiry,
 *****************************************************************/


.inquiry_section .common-text {
  padding-bottom: 25px;
}

.inquiry_section .common-text.attention {
  padding-bottom: 14px;
  width: 70%;
  margin: 50px auto 0;
}

.inquiry_section h3 {
  margin-top: 25px;
  margin-bottom: 50px;
  font-size: 2rem;
  font-weight: bold;
  border-bottom: 2px solid #eaeaea;
}

.inquiry_section .detail-link {
  margin-top: 25px;
}

.inquiry_section .products {
  margin-top: 15px;
}

.inquiry_section .products .head {
  margin-bottom: 15px;
  color: #ff7200;
  font-weight: bold;
}

.inquiry_section .link-group {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}

.inquiry_section .link-group .link-box {
  text-align: center;
  margin-right: 2rem;
  margin-bottom: 20px;
}







/*****************************************************************
taxonomy-subject-general.php
 *****************************************************************/
.products_contents{

}
@media screen and (max-width: 767px) {
  .products_contents  {
   width: 100%;

  }
}

 
.press_house {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .press_house  {
   flex-direction: column;

  }
}

.products_contents .press_house .press_box {
  width: 47%;
}
@media screen and (max-width: 767px) {
  .products_contents .press_house .press_box  {
   width: 100%;
   
  }
}



.inquiry_section .press_box .internal-link-anchor.products_box {
  padding: 24px;
  /* border-radius: 50px; */
}

.inquiry_section .internal-link-list.under_list .products_list {
  width: 48%;
}
@media screen and (max-width: 767px) {
  .inquiry_section .internal-link-list.under_list .products_list  {
   width: 100%;
   
  }
}

.inquiry_section .internal-link-list .products_add {
  background-color: #ff7200;
  transition-property: color, background-color;
  transition-duration: 0.25s;
}

.inquiry_section .internal-link-list .products_add .title-en {
  color: #fff;
  letter-spacing: 1.2px;
  transition-property: color, background-color;
  transition-duration: 0.25s;
}
.inquiry_section .internal-link-list .products_add:hover {
  background-color: #fff;
}

.inquiry_section .internal-link-list .products_add:hover .title-en {
  color: #000;
}



/*****************************************************************
 * page-product-inquiry
 *****************************************************************/
.switch-btn {
  display: table;
  table-layout: fixed;
  margin-bottom: 40px;
  width: 100%;
  text-align: center;
}

.switch-btn label {
  display: table-cell;
  font-size: 2rem;
  text-align: center;
}

.switch-btn label input {
  vertical-align: middle;
}

.switch-btn label span.char {
  display: block;
  /* vertical-align: middle; */
  padding: 15px 0;
  border-bottom: 4px solid #d6d6d6;
}

.switch-btn label span.char:hover {
  cursor: pointer;
}

.switch-btn label input[type=radio] {
  display: none;
}

.switch-btn label input[type=radio]:checked+.char {
  border-color: #ff7200;
  color: #ff7200;
  font-weight: bold;
}

.switch-form-box {
  display: none;
}

.switch-form-box.show {
  display: block;
}

.switch-form-box .title {
  margin-bottom: 15px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.switch-form-box p.description {
  margin-bottom: 15px;
}

.switch-form-box ol.notice {
  margin-bottom: 15px;
  padding-left: 1.5em;
}

.switch-form-box ol.notice li {
  list-style-type: decimal;
}

.recaptcha {
  text-align: center;
}

.recaptcha .wpcf7-form-control-wrap {
  display: inline-block;
}

div.wpcf7 .ajax-loader {
  display: block;
  margin: 8px auto 0;
}

@media screen and (max-width: 767px) {
  .switch-btn label {
    font-size: 1.8rem;
  }
}

.contact_solar {
  text-align: center;
  margin-bottom: 40px;
}

.contact_solar a {
  display: block;
  border: 1px solid #ff7200;
  border-radius: 200px;
  padding: 20px;
}

.contact_solar a:hover {
  background-color: #ff7200;
}

.contact_solar a:hover p {
  color: #fff;
}

.contact_solar .lead {
  margin-bottom: 20px;
  font-size: 2.4rem;
  font-weight: 800;
  color: #ff7200;
}

.contact_solar .sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .contact_solar a {
    padding: 20px;
  }

  .contact_solar .lead {
    font-size: 1.8rem;
  }

  .contact_solar .sp {
    display: block;
  }
}

#banner .pc {
  display: block;
}

#banner .sp {
  display: none;
}

@media screen and (max-width: 480px) {
  #banner .pc {
    display: none;
  }

  #banner .sp {
    display: block;
  }
}

.graph-wrap.move.sale .figure-01.f2021 .bar {
  height: 298px;
}

.graph-wrap.move.sale .figure-02.f2022 .bar {
  height: 260px;
}

.graph-wrap.move.sale .figure-03.f2023 .bar {
  height: 286px;
}

.graph-wrap.move.asset .figure-01.f2021 .bar {
  height: 234px;
}

.graph-wrap.move.asset .figure-02.f2022 .bar {
  height: 240px;
}

.graph-wrap.move.asset .figure-03.f2023 .bar {
  height: 200px;
}

.graph-wrap.move.debt .figure-01.f2021 .bar {
  height: 278px;
}

.graph-wrap.move.debt .figure-02.f2022 .bar {
  height: 237px;
}

.graph-wrap.move.debt .figure-03.f2023 .bar {
  height: 210px;
}

.graph-wrap.move.fund .figure-01.f2021 .bar {
  height: 200px;
}

.graph-wrap.move.fund .figure-02.f2022 .bar {
  height: 280px;
}

.graph-wrap.move.fund .figure-03.f2023 .bar {
  height: 248px;
}

/*# sourceMappingURL=page.css.map */