/*********************************
* common
*********************************/
.taC {
  text-align: center;
}

.taL {
  text-align: left;
}

.taR {
  text-align: right;
}

.mb00 {
  margin-bottom: 0 !important;
}

.pb00 {
  padding-bottom: 0 !important;
}

.pc-view {
  display: block;
}

/*.tb-view {
    display: none;
}
.sp-view {
    display: none;
}*/
@media screen and (max-width: 768px) {
  .pc-view {
    display: none;
  }
  .tb-view {
    display: block;
  }
}

@media screen and (max-width: 480px) {
  .pc-view {
    display: none;
  }
  .tb-view {
    display: none;
  }
  .sp-view {
    display: block;
  }
}

.inner {
  width: auto;
  max-width: 1280px;
  margin: 0 auto 180px;
}

@media screen and (max-width: 768px) {
  .inner {
    margin: 0 auto 100px;
  }
}

h2 {
  background: #d7c69b;
}

h2 .second-ttl {
  font-size: 50px;
  text-align: center;
  margin-bottom: 50px;
  background: url(../../en/images/second-ttl.jpg) no-repeat 100% 100%;
}

@media only screen and (max-width: 900px) {
  h2 .second-ttl {
    background: url(../../en/images/second-ttl.jpg) no-repeat 100% 100%;
    font-size: 24px;
  }
}

h3 {
  text-align: center;
}

h3 span {
  font-size: 36px;
  border-bottom: 2px solid #009fe8;
  padding: 0 10px;
  line-height: 1.4;
  display: inline-block;
}

@media only screen and (max-width: 900px) {
  h3 span {
    font-size: 20px;
  }
}

.btn {
  text-align: center;
  padding: 20px 0;
  /*@media only screen and (max-width: 900px){
        padding: 0 0 20px;
    }*/
}

.btn .btn-blue {
  font-size: 20px;
  padding: 10px 60px 10px 40px;
  color: #fff;
  background: #009fe8;
  border-radius: 50px;
  position: relative;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  -webkit-display: inline-flex;
  -moz-display: inline-flex;
  -ms-display: inline-flex;
  -o-display: inline-flex;
  display: inline-flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}

.btn .btn-blue:before {
  background: url(../../en/images/arrow-blue.png) no-repeat 50% 50%;
  content: '';
  display: inline-block;
  width: 36px;
  height: 21px;
  background-size: auto;
  background-size: contain;
  position: absolute;
  /*top: calc(50% - .5em);*/
  right: 10px;
}

@media only screen and (max-width: 900px) {
  .btn .btn-blue {
    font-size: 12px;
  }
}

.btn .btn-gold {
  font-size: 18px;
  margin: 0 10px;
  padding: 10px 60px 10px 40px;
  color: #222;
  background: #cfb46c;
  border-radius: 50px;
  line-height: 1;
  position: relative;
  /*display: inline-block;*/
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}

.btn .btn-gold .sub-txt {
  font-size: 13px;
  line-height: 1.2;
}

.btn .btn-gold:before {
  background: url(../../en/images/arrow-gold.png) no-repeat 50% 50%;
  content: '';
  display: inline-block;
  width: 36px;
  height: 21px;
  background-size: auto;
  background-size: contain;
  position: absolute;
  /*top: calc(50% - .5em);*/
  right: 10px;
}

@media only screen and (max-width: 900px) {
  .btn .btn-gold {
    font-size: 14px;
  }
  .btn .btn-gold .sub-txt {
    font-size: 12px;
  }
}

.btn .btn-gold02 {
  font-size: 18px;
  margin: 0 10px;
  padding: 17px 60px 17px 40px;
  color: #222;
  background: #cfb46c;
  border-radius: 50px;
  line-height: 1;
  position: relative;
  /*display: inline-block;*/
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  -webkit-display: inline-flex;
  -moz-display: inline-flex;
  -ms-display: inline-flex;
  -o-display: inline-flex;
  display: inline-flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}

.btn .btn-gold02:before {
  background: url(../../en/images/arrow-gold.png) no-repeat 50% 50%;
  content: '';
  display: inline-block;
  width: 36px;
  height: 21px;
  background-size: auto;
  background-size: contain;
  position: absolute;
  /*top: calc(50% - .5em);*/
  right: 10px;
}

@media only screen and (max-width: 900px) {
  .btn .btn-gold02 {
    font-size: 12px;
  }
  .btn .btn-gold02 .sub-txt {
    font-size: 10px;
  }
  .btn .btn-gold02:before {
    top: 12px;
  }
}

@media only screen and (max-width: 900px) {
  .btn02 {
    padding: 0 0 20px !important;
  }
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
}

#en {
  /*********************************
* header
*********************************/
  /*********************************
* en-inquiry 
*********************************/
  /*********************************
* top
*********************************/
  /*********************************
* strength
*********************************/
  /*********************************
* virtual
*********************************/
  /*********************************
* products
*********************************/
  /*********************************
* material
*********************************/
  /*********************************
* corporate
*********************************/
  /*********************************
* contact
*********************************/
  /*********************************
* contact
*********************************/
}

@media (min-width: 901px) {
  #en.p-top .l-header-menu__item--top > a:before,
  #en.p-strength .l-header-menu__item--strength > a:before,
  #en.p-virtual .l-header-menu__item--virtual > a:before,
  #en.p-products .l-header-menu__item--products > a:before,
  #en.p-material .l-header-menu__item--material > a:before,
  #en.p-corporate .l-header-menu__item--corporate > a:before,
  #en.p-contact .l-header-menu__item--contact > a:before,
  #en.p-privacy .l-header-menu__item--contact > a:before {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    opacity: 1;
  }
  #en.p-top .l-header-menu__item--top > a:after,
  #en.p-strength .l-header-menu__item--strength > a:after,
  #en.p-virtual .l-header-menu__item--virtual > a:after,
  #en.p-products .l-header-menu__item--products > a:after,
  #en.p-material .l-header-menu__item--material > a:after,
  #en.p-corporate .l-header-menu__item--corporate > a:after,
  #en.p-contact .l-header-menu__item--contact > a:after,
  #en.p-privacy .l-header-menu__item--contact > a:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

#en .en-inquiry {
  position: fixed;
  right: 50px;
  bottom: 80px;
  z-index: 2200;
}

#en .en-inquiry a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  width: 175px;
  height: 175px;
  color: #fff;
  line-height: 1;
  border-radius: 50%;
  background: #0096DF;
  border: 10px solid #c6e8ec;
  transition: 0.3s;
}

#en .en-inquiry a:hover {
  background: #EB8620;
}

#en .en-inquiry a span {
  display: block;
  line-height: 1.5;
  text-align: center;
  padding-bottom: 3px;
}

@media (max-width: 768px) {
  #en .en-inquiry a {
    width: 90px;
    height: 90px;
    border: 5px solid #c6e8ec;
  }
  #en .en-inquiry a img {
    width: 25px;
    margin: 0 0 5px;
  }
  #en .en-inquiry a span {
    font-size: 9px;
  }
}

#en.p-top .slide {
  margin-top: 100px;
  position: relative;
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide {
    margin-top: 0;
  }
}

#en.p-top .slide .slick-outer {
  position: relative;
  height: 500px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide .slick-outer {
    height: 400px;
  }
}

#en.p-top .slide .slick-outer img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  -o-object-position: center center;
  object-position: center center;
}

#en.p-top .slide .slick-outer .slick-content {
  position: absolute;
  top: 50%;
  left: 0;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 150;
  color: #fff;
  padding: 20px;
  background: rgba(34, 34, 34, 0.75);
  text-align: center;
  width: 100%;
}

#en.p-top .slide .slick-outer .slick-content .slide-txt {
  margin: 0 0 10px;
  padding: 0;
  font-weight: bold;
  font-size: 36px;
  color: #fff;
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide .slick-outer .slick-content .slide-txt {
    font-size: 20px;
  }
}

#en.p-top .slide .slick-outer .slick-content .slide-btn {
  font-size: 18px;
  color: #222;
  padding: 10px 40px 10px 70px;
  position: relative;
  background-image: -webkit-gradient(linear, left top, right top, from(#00d1e8), to(#e9c583));
  background-image: -webkit-linear-gradient(left, #00d1e8 0%, #e9c583 100%);
  background-image: linear-gradient(to right, #00d1e8 0%, #e9c583 100%);
  display: inline-block;
  margin: 0 auto;
  text-align: center;
}

#en.p-top .slide .slick-outer .slick-content .slide-btn:after {
  content: '';
  display: inline-block;
  border-style: solid;
  border-width: 8px 0 8px 8px;
  border-color: transparent transparent transparent #222;
  display: inline-block;
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: 40px;
  transform: translateY(-50%);
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide .slick-outer .slick-content .slide-txt {
    font-size: 18px;
  }
  #en.p-top .slide .slick-outer .slick-content .slide-btn {
    font-size: 14px;
  }
}

#en.p-top .slide .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  cursor: pointer;
}

#en.p-top .slide .slick-prev {
  left: 30px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide .slick-prev {
    left: 20px;
  }
  #en.p-top .slide .slick-prev img {
    width: 20px;
  }
}

#en.p-top .slide .slick-next {
  right: 30px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .slide .slick-next {
    right: 20px;
  }
  #en.p-top .slide .slick-next img {
    width: 20px;
  }
}

#en.p-top .lead {
  margin-bottom: 50px;
  padding: 70px 0;
  border-bottom: 1px solid #bbbbbb;
  background: url(../../en/images/bg.png) no-repeat;
  background-position: center;
  background-size: 100% auto;
  /*@media only screen and (max-width: 767px){
                background: url(../../en/images/bg_sp.png)no-repeat;
                background-position: center;
                background-size: 100% auto;
                text-shadow: #fff 3px 0px 10px, #fff -3px 0px 10px, #fff 0px -3px 10px, #fff -3px 0px 10px, #fff 3px 3px 10px, #fff -3px 3px 10px, #fff 3px -3px 10px, #fff -3px -3px 10px;
                .lead-box{
                    width: 90%;
                }
            }*/
}

#en.p-top .lead .lead-box {
  width: 65%;
  margin: 0 auto;
}

#en.p-top .lead .lead-box .lead-ttl {
  font-size: 34px;
  font-weight: bold;
  text-align: center;
}

#en.p-top .lead .lead-box .lead-txt {
  font-size: 18px;
  line-height: 2;
}

@media only screen and (max-width: 900px) {
  #en.p-top .lead .lead-box {
    width: 70%;
  }
  #en.p-top .lead .lead-box .lead-ttl {
    font-size: 22px;
  }
  #en.p-top .lead .lead-box .lead-txt {
    font-size: 16px;
    line-height: 1.4;
  }
}

#en.p-top .top-news {
  width: 80%;
  margin: 0 auto;
}

#en.p-top .top-news .c-news-m50 {
  margin: 50px 0;
}

#en.p-top .top-strength {
  margin: 60px auto 80px;
  padding: 50px 0 70px;
  background: #f3eee4;
}

#en.p-top .top-strength .img-strength {
  text-align: center;
  margin: 50px 0;
}

@media only screen and (max-width: 900px) {
  #en.p-top .top-strength {
    padding: 50px 20px 70px;
  }
}

#en.p-top .btn-strength-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}

#en.p-top .btn-strength-box .btn-strength {
  width: 40%;
}

#en.p-top .btn-strength-box .btn-strength a {
  min-height: 70px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .btn-strength-box {
    display: block;
  }
  #en.p-top .btn-strength-box .btn-strength {
    width: auto;
  }
  #en.p-top .btn-strength-box .btn-strength a {
    min-height: 53px;
  }
}

#en.p-top .top-example {
  margin: 60px auto 80px;
}

#en.p-top .top-example .example-txt {
  font-size: 14px;
  width: 45%;
  margin: 40px auto 20px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .top-example {
    padding: 0 20px;
  }
  #en.p-top .top-example .example-txt {
    width: auto;
  }
}

#en.p-top .top-new {
  margin: 60px auto 80px;
  padding: 50px 0 70px;
  background: #f3eee4;
}

#en.p-top .top-new .new-txt {
  font-size: 14px;
  width: 45%;
  margin: 40px auto 20px;
}

#en.p-top .top-new .new-img {
  text-align: center;
  margin: 30px 0 90px;
}

#en.p-top .top-new .new-img .caption {
  font-size: 18px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .top-new {
    padding: 50px 20px 70px;
  }
  #en.p-top .top-new .new-txt {
    width: auto;
  }
  #en.p-top .top-new .new-img .caption {
    font-size: 16px;
  }
}

#en.p-top .top-technology {
  margin: 60px auto 80px;
}

#en.p-top .top-technology .technology-img {
  text-align: center;
  margin-top: 70px;
}

#en.p-top .top-technology .technology-img .caption {
  font-size: 18px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .top-technology {
    padding: 0 20px;
  }
  #en.p-top .top-technology .technology-img .caption {
    font-size: 16px;
  }
}

#en.p-top .top-contact {
  margin: 60px auto 0;
  padding: 50px 0 70px;
  background: #f3eee4;
}

#en.p-top .top-contact .contact-txt {
  font-size: 14px;
  width: 45%;
  margin: 40px auto 20px;
}

@media only screen and (max-width: 900px) {
  #en.p-top .top-contact {
    padding: 50px 20px 70px;
  }
  #en.p-top .top-contact .contact-txt {
    width: auto;
  }
}

#en.p-strength .anchor {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 60px 0;
}

#en.p-strength .anchor li {
  font-size: 18px;
  margin: 0 20px 10px;
  width: 46%;
  text-indent: -2em;
  padding-left: 2em;
}

@media only screen and (max-width: 900px) {
  #en.p-strength .anchor li {
    font-size: 14px;
    width: 100%;
    margin: 0 20px 10px;
  }
}

#en.p-strength .development {
  padding: 70px 0;
  background: #f3eee4;
}

#en.p-strength .development .ttl-box {
  text-align: center;
  margin-bottom: 50px;
}

#en.p-strength .development .ttl-box .development-ttl {
  font-size: 50px;
  font-weight: bold;
  color: #867663;
  margin: 20px 10px;
}

#en.p-strength .development dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 85%;
  margin: 0 auto 80px;
}

#en.p-strength .development dl dt {
  width: 6%;
  margin-bottom: 10px;
}

#en.p-strength .development dl dd {
  font-size: 20px;
  width: 94%;
  margin-bottom: 10px;
}

#en.p-strength .development table {
  width: 70%;
  border-top: 1px solid #222;
  border-left: 1px solid #222;
  margin: 40px auto 0;
}

#en.p-strength .development table th {
  background: #867663;
  color: #fff;
  font-size: 18px;
  padding: 0 10px;
  vertical-align: middle;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-strength .development table td {
  font-size: 16px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-strength .development table .date {
  width: 210px;
  background: #ddd5c8;
  text-align: center;
  vertical-align: middle;
}

#en.p-strength .development table .name {
  background: #fff;
  padding: 0 20px;
}

@media only screen and (max-width: 900px) {
  #en.p-strength .development {
    padding: 70px 20px;
  }
  #en.p-strength .development .ttl-box .development-ttl {
    font-size: 28px;
    line-height: 1.4;
  }
  #en.p-strength .development .ttl-box .icon {
    width: 50%;
    margin: 0 auto;
  }
  #en.p-strength .development dl {
    width: auto;
    margin: 0 auto 50px;
  }
  #en.p-strength .development dl dd {
    font-size: 16px;
  }
  #en.p-strength .development table {
    width: auto;
  }
  #en.p-strength .development table th {
    font-size: 14px;
  }
  #en.p-strength .development table td {
    font-size: 14px;
  }
  #en.p-strength .development table .date {
    width: 80px;
  }
}

@media only screen and (max-width: 767px) {
  #en.p-strength .development dl dt {
    width: 14%;
  }
  #en.p-strength .development dl dd {
    width: 86%;
  }
}

#en.p-strength .performance {
  padding: 70px 0;
}

#en.p-strength .performance .ttl-box {
  text-align: center;
  margin-bottom: 50px;
}

#en.p-strength .performance .ttl-box .performance-ttl {
  font-size: 50px;
  font-weight: bold;
  color: #867663;
  margin: 20px 0;
}

#en.p-strength .performance .performance-txt01 {
  font-size: 36px;
  text-align: center;
  margin: 50px 0 0;
}

#en.p-strength .performance .performance-txt02 {
  font-size: 20px;
  text-align: center;
  margin-bottom: 30px;
}

#en.p-strength .performance .performance-txt03 {
  width: 80%;
  font-size: 28px;
  text-align: center;
  margin: 30px auto 0;
}

@media only screen and (max-width: 900px) {
  #en.p-strength .performance {
    padding: 70px 20px;
  }
  #en.p-strength .performance .ttl-box .performance-ttl {
    font-size: 28px;
    line-height: 1.4;
  }
  #en.p-strength .performance .ttl-box .icon {
    width: 50%;
    margin: 0 auto;
  }
  #en.p-strength .performance .arrow {
    width: 50%;
    margin: 0 auto;
  }
  #en.p-strength .performance .performance-txt01 {
    font-size: 20px;
  }
  #en.p-strength .performance .performance-txt02 {
    font-size: 14px;
    margin-bottom: 10px;
  }
  #en.p-strength .performance .performance-txt03 {
    width: auto;
    font-size: 16px;
    margin-top: 10px;
  }
}

#en.p-strength .grow {
  padding: 70px 0;
  background: #f3eee4;
}

#en.p-strength .grow .ttl-box {
  text-align: center;
  margin-bottom: 50px;
}

#en.p-strength .grow .ttl-box .grow-ttl {
  font-size: 50px;
  font-weight: bold;
  color: #867663;
  margin: 20px 10px;
}

#en.p-strength .grow .grow-txt {
  font-size: 20px;
  text-align: center;
  margin: 0 10px;
}

#en.p-strength .grow .grow-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  margin: 50px auto 30px;
}

#en.p-strength .grow .grow-box li {
  text-align: center;
  margin: 0 10px;
  font-size: 18px;
  line-height: 1.4;
}

#en.p-strength .grow table {
  width: 70%;
  border-top: 1px solid #222;
  border-left: 1px solid #222;
  margin: 40px auto 0;
}

#en.p-strength .grow table th {
  background: #867663;
  color: #fff;
  font-size: 18px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-strength .grow table td {
  font-size: 16px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-strength .grow table .date {
  width: 15%;
  background: #ddd5c8;
  text-align: center;
  vertical-align: middle;
}

#en.p-strength .grow table .name {
  background: #fff;
  padding: 0 20px;
}

@media only screen and (max-width: 900px) {
  #en.p-strength .grow {
    padding: 70px 20px;
  }
  #en.p-strength .grow .ttl-box .grow-ttl {
    font-size: 28px;
    line-height: 1.4;
  }
  #en.p-strength .grow .ttl-box .icon {
    width: 50%;
    margin: 0 auto;
  }
  #en.p-strength .grow .grow-txt {
    font-size: 16px;
    margin: 0;
  }
  #en.p-strength .grow .grow-box li {
    font-size: 14px;
  }
  #en.p-strength .grow table {
    width: auto;
  }
  #en.p-strength .grow table th {
    font-size: 14px;
  }
  #en.p-strength .grow table td {
    font-size: 14px;
  }
  #en.p-strength .grow table .date {
    width: 80px;
  }
}

#en.p-strength .surface {
  padding: 70px 0;
}

#en.p-strength .surface .ttl-box {
  text-align: center;
  margin-bottom: 50px;
}

#en.p-strength .surface .ttl-box .surface-ttl {
  font-size: 50px;
  font-weight: bold;
  color: #867663;
  margin: 20px 10px;
}

#en.p-strength .surface .surface-box {
  width: 70%;
  margin: 0 auto;
}

#en.p-strength .surface .surface-box .surface-txt {
  font-size: 26px;
  font-weight: bold;
  color: #009fe8;
}

#en.p-strength .surface .surface-box .surface-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 50px;
}

#en.p-strength .surface .surface-box .surface-flex li {
  font-size: 20px;
  margin-left: 1em;
  text-indent: -12px;
}

@media only screen and (max-width: 900px) {
  #en.p-strength .surface {
    padding: 70px 20px;
  }
  #en.p-strength .surface .ttl-box .surface-ttl {
    font-size: 28px;
    line-height: 1.4;
  }
  #en.p-strength .surface .ttl-box .icon {
    width: 50%;
    margin: 0 auto;
  }
  #en.p-strength .surface .surface-box {
    width: auto;
    line-height: 1.6;
  }
  #en.p-strength .surface .surface-box .surface-txt {
    font-size: 20px;
  }
  #en.p-strength .surface .surface-box .surface-flex {
    margin-bottom: 30px;
  }
  #en.p-strength .surface .surface-box .surface-flex li {
    font-size: 16px;
    width: 100%;
  }
}

#en.p-virtual .video-box {
  width: 100%;
  aspect-ratio: 16 / 9;
}

#en.p-virtual .video-box .matterport-video {
  width: 100% !important;
  height: 100% !important;
}

#en.p-virtual .f-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  -ms-align-items: center;
  align-items: center;
  margin: 30px;
}

#en.p-virtual .f-box .f-logo {
  font-size: 16px;
}

#en.p-virtual .f-box .f-btn a {
  font-size: 18px;
  padding: 20px 20px 20px 40px;
  position: relative;
  background-image: -webkit-gradient(linear, left top, right top, from(#00d1e8), to(#e9c583));
  background-image: -webkit-linear-gradient(left, #00d1e8 0%, #e9c583 100%);
  background-image: linear-gradient(to right, #00d1e8 0%, #e9c583 100%);
  display: inline-block;
  text-align: center;
}

#en.p-virtual .f-box .f-btn a:after {
  content: '';
  display: inline-block;
  border-style: solid;
  border-width: 8px 0 8px 8px;
  border-color: transparent transparent transparent #222;
  display: inline-block;
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
}

#en.p-virtual .f-box .f-btn a + a {
  margin-left: 15px;
}

#en.p-virtual .f-box .f-info a {
  background: #009fe8;
  border-radius: 50px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 20px 30px;
}

@media only screen and (max-width: 1100px) {
  #en.p-virtual .f-box {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    text-align: center;
    margin: 50px 20px 30px;
  }
  #en.p-virtual .f-box .f-logo {
    order: 3;
  }
  #en.p-virtual .f-box .f-btn {
    order: 1;
  }
  #en.p-virtual .f-box .f-btn a {
    font-size: 14px;
  }
  #en.p-virtual .f-box .f-info {
    order: 2;
    padding: 50px 0;
  }
  #en.p-virtual .f-box .f-info a {
    font-size: 14px;
    padding: 20px 50px;
  }
}

@media only screen and (max-width: 640px) {
  #en.p-virtual .f-box .f-btn a {
    display: block;
  }
  #en.p-virtual .f-box .f-btn a + a {
    margin: 10px 0 0;
  }
}

#en.p-products .products-box {
  margin: 0 auto 50px;
}

#en.p-products .products-box .scroll-txt {
  display: none;
}

#en.p-products .products-box .tbl-scroll {
  margin-bottom: 80px;
}

#en.p-products .products-box .tbl-scroll .tbl-scroll-inner table {
  border-top: 1px solid #222;
  border-left: 1px solid #222;
  width: 98%;
  margin: 50px auto 20px;
}

#en.p-products .products-box .tbl-scroll .tbl-scroll-inner table th {
  background: #867663;
  color: #fff;
  font-size: 18px;
  padding: 5px 10px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  vertical-align: middle;
  line-height: 1.2;
}

#en.p-products .products-box .tbl-scroll .tbl-scroll-inner table td {
  font-size: 14px;
  text-align: center;
  padding: 5px 10px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  vertical-align: middle;
  line-height: 1.2;
}

#en.p-products .products-box .tbl-scroll .tbl-scroll-inner table .name {
  background: #ddd5c8;
}

@media only screen and (max-width: 960px) {
  #en.p-products .products-box {
    margin: 50px 0;
    width: auto;
  }
  #en.p-products .products-box .scroll-txt {
    font-size: 14px;
    color: #ff0000;
    margin: 30px 0 5px 12px;
    display: inherit;
  }
  #en.p-products .products-box .tbl-scroll {
    overflow-x: scroll;
  }
  #en.p-products .products-box .tbl-scroll .tbl-scroll-inner {
    width: 1480px;
  }
  #en.p-products .products-box .tbl-scroll .tbl-scroll-inner table {
    margin: 0 auto 20px;
  }
  #en.p-products .products-box .tbl-scroll .tbl-scroll-inner table th {
    font-size: 16px;
  }
  #en.p-products .products-box .tbl-scroll .tbl-scroll-inner table td {
    font-size: 14px;
  }
}

#en.p-material .material-box {
  margin: 50px auto;
  width: 80%;
}

#en.p-material .material-box .material-ttl {
  font-size: 20px;
  font-weight: bold;
  padding: 10px;
  margin-bottom: 10px;
  background: #ddd5c8;
}

#en.p-material .material-box .material-txt {
  font-size: 16px;
}

@media only screen and (max-width: 900px) {
  #en.p-material .material-box {
    width: auto;
    padding: 0 20px;
  }
  #en.p-material .material-box .material-ttl {
    font-size: 16px;
  }
  #en.p-material .material-box .material-txt {
    font-size: 14px;
  }
}

#en.p-material .scroll-txt {
  display: none;
}

@media only screen and (max-width: 900px) {
  #en.p-material .scroll-txt {
    display: inherit;
    font-size: 14px;
    margin: 30px 0 5px 12px;
    color: #ff0000;
  }
}

#en.p-material .scroll-txt02 {
  display: none;
}

@media only screen and (max-width: 900px) {
  #en.p-material .scroll-txt02 {
    display: inherit;
    font-size: 14px;
    margin: 0 0 5px 0;
    color: #ff0000;
  }
}

#en.p-material .tbl-scroll {
  margin-bottom: 80px;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table {
  border-top: 1px solid #222;
  border-left: 1px solid #222;
  width: 98%;
  margin: 50px auto 20px;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table th {
  background: #867663;
  color: #fff;
  font-size: 18px;
  text-align: center;
  padding: 5px 10px;
  line-height: 1.2;
  vertical-align: middle;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table td {
  font-size: 16px;
  text-align: center;
  padding: 0 10px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  vertical-align: middle;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .name {
  background: #ddd5c8;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .blue {
  color: #0066d4;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .green {
  color: #009944;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .red {
  color: #ea0014;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .yellow {
  color: #fab700;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .brown {
  color: #c30d23;
}

#en.p-material .tbl-scroll .tbl-scroll-inner table .purple {
  color: #7007ac;
}

@media only screen and (max-width: 900px) {
  #en.p-material .tbl-scroll .tbl-scroll-inner table th {
    font-size: 16px;
  }
  #en.p-material .tbl-scroll .tbl-scroll-inner table td {
    font-size: 14px;
  }
}

@media only screen and (max-width: 900px) {
  #en.p-material .tbl-scroll {
    overflow-x: scroll;
  }
  #en.p-material .tbl-scroll .tbl-scroll-inner {
    width: 1000px;
  }
  #en.p-material .tbl-scroll .tbl-scroll-inner table {
    margin: 0 auto 20px;
  }
}

#en.p-material .material-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  margin: 50px 10px 80px;
}

#en.p-material .material-flex .bag-img {
  width: 37%;
  margin-bottom: 30px;
}

#en.p-material .material-flex .bag-txt {
  width: 63%;
  margin-left: 20px;
}

#en.p-material .material-flex .bag-txt .bag-ttl {
  font-size: 18px;
  font-weight: bold;
}

#en.p-material .material-flex .bag-txt .bag-table {
  width: 100%;
  margin: 0 0 20px;
}

#en.p-material .material-flex .bag-txt .filter {
  border-top: 1px solid #222;
  border-left: 1px solid #222;
  width: 100%;
  margin: 50px auto 20px;
}

#en.p-material .material-flex .bag-txt .filter th {
  background: #867663;
  color: #fff;
  font-size: 18px;
  text-align: center;
  padding: 5px 10px;
  line-height: 1.2;
  vertical-align: middle;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}

#en.p-material .material-flex .bag-txt .filter td {
  font-size: 16px;
  text-align: center;
  padding: 0 10px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  vertical-align: middle;
}

@media only screen and (max-width: 900px) {
  #en.p-material .material-flex {
    display: block;
  }
  #en.p-material .material-flex .bag-img {
    width: auto;
    padding: 0 20px;
    text-align: center;
  }
  #en.p-material .material-flex .bag-txt {
    width: auto;
    margin-left: 0;
  }
  #en.p-material .material-flex .bag-txt .bag-ttl {
    font-size: 16px;
  }
  #en.p-material .material-flex .bag-txt .bag-table {
    width: 100%;
  }
  #en.p-material .material-flex .bag-txt .filter {
    margin: 50px 0 80px;
  }
  #en.p-material .material-flex .bag-txt .filter th {
    font-size: 16px;
  }
  #en.p-material .material-flex .bag-txt .filter td {
    font-size: 14px;
    text-align: left;
  }
}

#en.p-corporate .l-wrapper {
  padding: 80px 0 0;
}

#en.p-corporate .history {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  max-width: 960px;
  margin: 0 auto 30px;
}

#en.p-corporate .history li {
  width: 30%;
  margin: 0 0 20px;
  padding: 0 10px;
}

#en.p-corporate .history li figure figcaption {
  margin: 5px 0 0;
  font-size: 13px;
  text-align: center;
}

@media (max-width: 640px) {
  #en.p-corporate .history li {
    width: 50%;
    padding: 0 5px;
  }
  #en.p-corporate .history li figure figcaption {
    font-size: 11px;
  }
}

#en.p-contact .l-wrapper {
  padding: 80px 0 0;
}

#en.p-privacy .l-wrapper {
  padding: 80px 0 0;
}
