@charset "UTF-8";
/*//////////////////////////////////////////////////////////////////////

	変数設定

//////////////////////////////////////////////////////////////////////*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&display=swap");
/* color */
/* font */
/* trans */
/* margin */
/* box */
/*//////////////////////////////////////////////////////////////////////

	home

//////////////////////////////////////////////////////////////////////*/
/*--------------------------------------------------------------
	keyVisualBlock
--------------------------------------------------------------*/
#keyVisualBlock {
  position: relative;
}
#keyVisualBlock h2 {
  position: absolute;
  bottom: 40px;
  right: 0;
  font-size: 5.7rem;
  font-weight: 700;
  text-align: right;
  line-height: 1.25;
  letter-spacing: 6px;
  color: #fff;
  z-index: 1;
}
#keyVisualBlock figure {
  position: relative;
}
#keyVisualBlock figure::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 161, 216, 0.4);
  mix-blend-mode: multiply;
}

/*--------------------------------------------------------------
	各Block
--------------------------------------------------------------*/
#homePage #newsBlock,
#homePage #companyBlock,
#homePage #businessBlock,
#homePage #recruitBlock {
  display: flex;
  gap: 80px;
  text-align: left;
  align-items: center;
  flex-direction: row-reverse;
  margin-bottom: 120px;
}
#homePage #newsBlock section hgroup,
#homePage #companyBlock section hgroup,
#homePage #businessBlock section hgroup,
#homePage #recruitBlock section hgroup {
  line-height: 1;
  margin-bottom: 30px;
}
#homePage #newsBlock section hgroup h2,
#homePage #companyBlock section hgroup h2,
#homePage #businessBlock section hgroup h2,
#homePage #recruitBlock section hgroup h2 {
  font-size: 5.14rem;
  font-weight: 700;
  color: #00A1D8;
  margin-bottom: 10px;
}
#homePage #newsBlock section hgroup h3,
#homePage #companyBlock section hgroup h3,
#homePage #businessBlock section hgroup h3,
#homePage #recruitBlock section hgroup h3 {
  font-size: 1.14rem;
  font-weight: 500;
  margin-left: 5px;
}
#homePage #newsBlock {
  align-items: flex-start;
  flex-direction: row;
}
#homePage #newsBlock section {
  width: 220px;
}
#homePage #newsBlock ul {
  width: calc(100% - 300px);
}
#homePage #newsBlock ul li a {
  display: flex;
  gap: 40px;
  padding: 20px 50px 20px 0;
  background: url(../img/common/arrow_r.svg) no-repeat center right 20px;
  font-size: 1.14rem;
}
#homePage #newsBlock ul li a time {
  white-space: nowrap;
}
#homePage #newsBlock ul li:not(:last-child) {
  border-bottom: 1px solid #E8E8E8;
}
#homePage #companyBlock section,
#homePage #businessBlock section,
#homePage #recruitBlock section {
  width: calc(50% - (50% - 500px) - 80px);
  margin-left: calc(50% - 500px);
}
#homePage #companyBlock section p,
#homePage #businessBlock section p,
#homePage #recruitBlock section p {
  margin-bottom: 30px;
}
#homePage #companyBlock figure,
#homePage #businessBlock figure,
#homePage #recruitBlock figure {
  width: 50%;
}
#homePage #businessBlock {
  flex-direction: row;
}
#homePage #businessBlock section {
  margin-left: 0;
  margin-right: calc(50% - 500px);
}
#homePage #recruitBlock {
  margin-bottom: 0;
}

/*//////////////////////////////////////////////////////////////////////

	company

//////////////////////////////////////////////////////////////////////*/
#companyPage #messageBlock {
  position: relative;
  margin-bottom: 120px;
}
#companyPage #messageBlock .container {
  display: flex;
  gap: 80px;
  flex-direction: row-reverse;
  position: relative;
  z-index: 2;
}
#companyPage #messageBlock .container section {
  width: 51%;
}
#companyPage #messageBlock .container figure {
  width: calc(49% - 80px);
}
#companyPage #messageBlock::before {
  position: absolute;
  content: "Message";
  bottom: -20px;
  right: -30px;
  font-size: 10rem;
  font-weight: 500;
  line-height: 1;
  color: #F7F7F7;
  z-index: 1;
}
#companyPage #philosophyBlock .container .lead_box {
  margin-bottom: 40px;
}
#companyPage #philosophyBlock .container #managementPolicy section {
  margin-bottom: 40px;
}
#companyPage #philosophyBlock .container #managementPolicy section h5 + p {
  margin-bottom: 10px;
}
#companyPage #outlineBlock .container table {
  margin-bottom: 40px;
}
#companyPage #outlineBlock .container table tr th {
  width: 80px;
}
#companyPage #outlineBlock .container section {
  margin-bottom: 40px;
}
#companyPage #outlineBlock .container #history p:not(:last-child) {
  padding-bottom: 1rem;
}
#companyPage #accessBlock {
  margin-top: 20px;
}
#companyPage #accessBlock .container section {
  margin-bottom: 40px;
}
#companyPage #accessBlock .container section address + p {
  margin-bottom: 10px;
}
#companyPage #accessBlock .container section .dot_list li {
  margin-bottom: 0px;
}
#companyPage #accessBlock .container #accessMap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 40%;
}
#companyPage #accessBlock .container #accessMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*//////////////////////////////////////////////////////////////////////

	business

//////////////////////////////////////////////////////////////////////*/
#businessPage .container {
  position: relative;
}
#businessPage .container .scrollnav_box {
  position: absolute;
  left: calc(50% - 500px);
  width: 150px;
}
#businessPage .container .scrollnav_box nav ul li::before {
  background: #00A1D8;
}
#businessPage .container .contents_box {
  width: calc(100% - 200px);
  margin-left: 200px;
}
#businessPage .container .contents_box section h3 + P {
  margin-bottom: 20px;
}
#businessPage .container .contents_box section ul {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
#businessPage .container .contents_box section ul li {
  position: relative;
  width: calc(50% - 8px);
}
#businessPage .container .contents_box section ul li figure figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #fff;
  background: rgba(0, 161, 216, 0.8);
  padding: 5px 10px;
}
#businessPage .container .contents_box #trainInspectionBlock,
#businessPage .container .contents_box #rehurbishmentWorkBlock,
#businessPage .container .contents_box #equipmentConstructionBlock,
#businessPage .container .contents_box #goodsSalesBlock,
#businessPage .container .contents_box #consultantBlock {
  margin-bottom: 120px;
}
#businessPage .container .contents_box #rehurbishmentWorkBlock ul + p {
  margin: 20px 0;
}
#businessPage .container .contents_box #goodsSalesBlock ul {
  margin-bottom: 20px;
}

#businessSalesPage .container #salesBlock h3.headline_1 + p {
  margin-bottom: 20px;
}
#businessSalesPage .container #salesBlock h4.headline_2 + p {
  margin-bottom: 20px;
}
#businessSalesPage .container #salesBlock .item_list,
#businessSalesPage .container #salesBlock .product_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#businessSalesPage .container #salesBlock .item_list {
  gap: 40px;
  margin-bottom: 80px;
}
#businessSalesPage .container #salesBlock .item_list li {
  width: calc((100% - 80px) / 3);
}
#businessSalesPage .container #salesBlock .item_list li figure figcaption {
  font-size: 1.14rem;
  font-weight: 500;
  color: #fff;
  background: #00A1D8;
  padding: 10px 15px;
  margin-bottom: 10px;
}
#businessSalesPage .container #salesBlock .product_list {
  gap: 20px;
  margin-bottom: 20px;
}
#businessSalesPage .container #salesBlock .product_list li {
  width: calc((100% - 60px) / 4);
  /*
  .icon_acidic,
  .icon_neutral,
  .icon_alkaline,
  .icon_solution { display:inline-block; color:#fff; font-size:12px; line-height:1; text-align:center; padding:5px; }
  .icon_acidic { background:#FF3333; }
  .icon_neutral { background:#FFB133; }
  .icon_alkaline { background:#335AFF; }
  .icon_solution { background:#33DB00; }
  */
}
#businessSalesPage .container #salesBlock .product_list li figure {
  position: relative;
  margin-bottom: 10px;
}
#businessSalesPage .container #salesBlock .product_list li figure img {
  width: 100%;
}
#businessSalesPage .container #salesBlock .product_list li h5 {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 5px;
}
#businessSalesPage .container #salesBlock .product_list li > p {
  margin-bottom: 10px;
}
#businessSalesPage .container #salesBlock .product_list li .but_more {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  color: #00A1D8;
  font-weight: bolder;
  cursor: pointer;
}
#businessSalesPage .container #salesBlock .product_list li .but_more::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #60add2;
  border-right: solid 2px #00A1D8;
  transform: rotate(45deg);
  margin-top: -5px;
}
#businessSalesPage .container #salesBlock .product_list li .but_more:hover {
  opacity: 0.5;
}
#businessSalesPage .container #salesBlock .product_list + p {
  margin-bottom: 80px;
  text-align: center;
}

.icon_acidic,
.icon_neutral,
.icon_alkaline,
.icon_solution {
  display: inline-block;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  padding: 5px 15px;
  border-radius: 15px;
}

.icon_acidic {
  background: #FF3333;
}

.icon_neutral {
  background: #FFB133;
}

.icon_alkaline {
  background: #335AFF;
}

.icon_solution {
  background: #33DB00;
}

.modal_wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000000000;
  display: none;
  text-align: left;
}
.modal_wrapper .modal_layer {
  height: 100%;
  background: rgba(0, 0, 0, 0.85);
  cursor: pointer;
}
.modal_wrapper .modal_close {
  position: absolute;
  top: -100px;
  right: 0;
  cursor: pointer;
}
.modal_wrapper .modal_container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 1100px;
  max-height: 80vh;
  overflow-y: auto;
}
.modal_wrapper .modal_container #but_close {
  position: absolute;
  top: 30px;
  right: 30px;
  cursor: pointer;
}
.modal_wrapper .modal_container .modal_inner {
  background: #fff;
  padding: 50px;
}
.modal_wrapper .modal_container .modal_inner .title_box {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
.modal_wrapper .modal_container .modal_inner .title_box h1 {
  font-size: 1.9rem;
  font-weight: bold;
}
.modal_wrapper .modal_container .modal_inner .title_box p {
  position: relative;
  padding-left: 1rem;
}
.modal_wrapper .modal_container .modal_inner .title_box p::before {
  position: absolute;
  content: "⚫︎";
  top: 0;
  left: 0;
  color: #00A1D8;
}
.modal_wrapper .modal_container .modal_inner .point_box {
  display: flex;
  gap: 30px;
  margin-bottom: 30px;
}
.modal_wrapper .modal_container .modal_inner .point_box figure {
  width: 400px;
}
.modal_wrapper .modal_container .modal_inner .point_box figure figcaption {
  margin-top: 5px;
}
.modal_wrapper .modal_container .modal_inner .point_box figure figcaption .before,
.modal_wrapper .modal_container .modal_inner .point_box figure figcaption .after {
  display: inline-block;
  width: 50%;
  text-align: center;
}
.modal_wrapper .modal_container .modal_inner .point_box section {
  width: calc(100% - 430px);
  /*
  h2 { font-size:1.28rem; line-height:1.6; font-weight:bolder; margin-bottom:15px;
         span { display:block; font-size:0.85rem; color:$key_color; }
       }
  */
}
.modal_wrapper .modal_container .modal_inner .point_box section .point_list {
  margin-bottom: 15px;
}
.modal_wrapper .modal_container .modal_inner .point_box section .point_list li {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 5px;
}
.modal_wrapper .modal_container .modal_inner .point_box section .point_list li::before {
  position: absolute;
  content: "⚫︎";
  top: 0;
  left: 0;
}
.modal_wrapper .modal_container .modal_inner .point_box section .word_list {
  display: flex;
  gap: 10px;
}
.modal_wrapper .modal_container .modal_inner .point_box section .word_list li {
  display: inline-block;
  font-size: 0.85rem;
  border-radius: 40px;
  padding: 5px 15px;
  background: #ccc;
}
.modal_wrapper .modal_container .modal_inner .point_box section .word_list li.blue {
  color: #00A1D8;
  background: #ccecf7;
}
.modal_wrapper .modal_container .modal_inner .point_box section .word_list li.red {
  color: #FF3333;
  background: #ffd6d6;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box,
.modal_wrapper .modal_container .modal_inner .detail_box,
.modal_wrapper .modal_container .modal_inner .other_box {
  margin-bottom: 20px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section,
.modal_wrapper .modal_container .modal_inner .detail_box section,
.modal_wrapper .modal_container .modal_inner .other_box section {
  /*h3 { font-size:1.14rem; font-weight:bolder; border-left:3px solid $key_color; margin-bottom:15px; padding-left:10px; }*/
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section h3.headline_2,
.modal_wrapper .modal_container .modal_inner .detail_box section h3.headline_2,
.modal_wrapper .modal_container .modal_inner .other_box section h3.headline_2 {
  font-size: 1.2rem;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div,
.modal_wrapper .modal_container .modal_inner .detail_box section > div,
.modal_wrapper .modal_container .modal_inner .other_box section > div {
  display: flex;
  gap: 20px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list {
  display: flex;
  gap: 15px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li figure img,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li figure img,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li figure img {
  width: 150px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li figure figcaption,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li figure figcaption,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li figure figcaption {
  font-size: 0.9rem;
  text-align: center;
  margin-top: 5px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li .caution,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li .caution,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li .caution {
  font-size: 9px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li.column_2,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li.column_2,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li.column_2 {
  width: 100%;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li.column_2 figure div,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li.column_2 figure div,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li.column_2 figure div {
  display: flex;
  gap: 8px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li.column_2 figure div img,
.modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li.column_2 figure div img,
.modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li.column_2 figure div img {
  width: 150px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div .methods_list li,
.modal_wrapper .modal_container .modal_inner .detail_box section > div .methods_list li,
.modal_wrapper .modal_container .modal_inner .other_box section > div .methods_list li {
  position: relative;
  font-size: 0.9rem;
  padding-left: 1rem;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div .methods_list li::before,
.modal_wrapper .modal_container .modal_inner .detail_box section > div .methods_list li::before,
.modal_wrapper .modal_container .modal_inner .other_box section > div .methods_list li::before {
  position: absolute;
  content: "⚪︎";
  top: 0;
  left: 0;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div .methods_list li:not(:last-child),
.modal_wrapper .modal_container .modal_inner .detail_box section > div .methods_list li:not(:last-child),
.modal_wrapper .modal_container .modal_inner .other_box section > div .methods_list li:not(:last-child) {
  margin-bottom: 10px;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div .other_list li,
.modal_wrapper .modal_container .modal_inner .detail_box section > div .other_list li,
.modal_wrapper .modal_container .modal_inner .other_box section > div .other_list li {
  position: relative;
  font-size: 0.8rem;
  padding-left: 1rem;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box section > div .other_list li::before,
.modal_wrapper .modal_container .modal_inner .detail_box section > div .other_list li::before,
.modal_wrapper .modal_container .modal_inner .other_box section > div .other_list li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}
.modal_wrapper .modal_container .modal_inner .detail_img_box {
  display: flex;
  gap: 40px;
  margin-bottom: 20px;
}
.modal_wrapper .modal_container .modal_inner .caution_box ul li {
  position: relative;
  font-size: 0.8rem;
  padding-left: 1rem;
}
.modal_wrapper .modal_container .modal_inner .caution_box ul li::before {
  position: absolute;
  content: "※";
  top: 0;
  left: 0;
}
.modal_wrapper .modal_container #modal_6_2 .detail_img_box .img_list {
  width: 100%;
}
.modal_wrapper .modal_container #modal_6_2 .detail_img_box .img_list li {
  width: 100%;
}
.modal_wrapper .modal_container #modal_6_2 .detail_img_box .img_list li figure {
  width: 100%;
  text-align: center;
}
.modal_wrapper .modal_container #modal_6_2 .detail_img_box .img_list li .caution {
  font-size: 0.8rem;
}
.modal_wrapper .modal_container #modal_6_2 .detail_box table {
  width: 100%;
  margin-top: 20px;
}
.modal_wrapper .modal_container #modal_6_2 .detail_box table tr th, .modal_wrapper .modal_container #modal_6_2 .detail_box table tr td {
  padding: 5px;
  text-align: center;
  font-size: 0.8rem;
  border: 1px solid #ccc;
  vertical-align: middle;
}
.modal_wrapper .modal_container #modal_6_2 .detail_box table tr th {
  background: #eee;
}
.modal_wrapper .modal_container #modal_6_2 .detail_box table tr .spbr {
  display: none;
}
.modal_wrapper .modal_container #modal_6_2 .detail_box table tr:nth-child(2) {
  background: #eee;
}

/*//////////////////////////////////////////////////////////////////////

	recruit

//////////////////////////////////////////////////////////////////////*/
#recruitPage #pamphletBlock {
  margin-bottom: 40px;
}
#recruitPage #pamphletBlock p {
  margin-bottom: 20px;
}
#recruitPage #pamphletBlock a:hover {
  opacity: 0.5;
}
#recruitPage #contactBlock {
  text-align: center;
  padding: 40px;
  border: 1px solid #E8E8E8;
  background: #fff;
  margin-bottom: 120px;
}
#recruitPage #contactBlock h3 {
  font-size: 1.42rem;
  font-weight: 500;
}
#recruitPage #contactBlock a {
  font-size: 2.28rem;
  font-weight: 500;
  color: #00A1D8;
}
#recruitPage #contactBlock p {
  font-size: 1.42rem;
}
#recruitPage #specialMovieBlock h3 + p {
  margin-bottom: 20px;
}

.movie_list {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}
.movie_list li {
  width: calc(50% - 20px);
  background: #fff;
  /*
  a {
  	figure { @include transition_hover; }
  }
  a:hover {
  	figure { }
  	section {
  		h4,p { color:$text_color; }
  		.but_movie { color:#fff; background-color:$key_color; background-image:url(../img/common/icon_blank_w.svg); }
  	}
  }
  */
}
.movie_list li section {
  padding: 30px;
}
.movie_list li section h4 {
  font-size: 1.28rem;
  font-weight: 500;
  margin-bottom: 10px;
}
.movie_list li section p {
  margin-bottom: 10px;
}
.movie_list li section .but_movie {
  display: block;
  text-align: center;
  font-size: 1.14rem;
  font-weight: 500;
  color: #00A1D8;
  border: 1.5px solid #00A1D8;
  border-radius: 40px;
  background: url(../img/common/icon_blank.svg) no-repeat center right 20px #fff;
  padding: 5px;
}

/*//////////////////////////////////////////////////////////////////////

	license

//////////////////////////////////////////////////////////////////////*/
#licensePage .container section .qualifications_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#licensePage .container section .qualifications_list li {
  width: 20%;
}
#licensePage .container section .qualifications_list li:nth-child(2),
#licensePage .container section .qualifications_list li:nth-child(7),
#licensePage .container section .qualifications_list li:nth-child(12),
#licensePage .container section .qualifications_list li:nth-child(17),
#licensePage .container section .qualifications_list li:nth-child(22) {
  width: 15rem;
}
#licensePage .container section .qualifications_list li:nth-child(5n) {
  width: 10rem;
}
#licensePage .container section:not(:last-child) {
  margin-bottom: 40px;
}

/*//////////////////////////////////////////////////////////////////////

	link

//////////////////////////////////////////////////////////////////////*/
#linkPage .container ul li a {
  display: block;
  padding: 20px 50px 20px 0;
  background: url(../img/common/arrow_r.svg) no-repeat center right 20px;
}
#linkPage .container ul li a dl dt {
  font-size: 1.28rem;
  font-weight: 500;
}
#linkPage .container ul li a dl dd {
  color: #A0A0A0;
}
#linkPage .container ul li a:hover * {
  color: #00A1D8 !important;
}
#linkPage .container ul li a:visited dl dt {
  color: #333333;
}
#linkPage .container ul li a:visited dl dd {
  color: #A0A0A0;
}
#linkPage .container ul li:not(:last-child) {
  border-bottom: 1px solid #E8E8E8;
}

/*//////////////////////////////////////////////////////////////////////

	site-policy

//////////////////////////////////////////////////////////////////////*/
#sitePolicyPage .container section:not(:last-child) {
  margin-bottom: 40px;
}
#sitePolicyPage .container section:not(:last-child) dl {
  margin-top: 20px;
}

/*//////////////////////////////////////////////////////////////////////

	privacy-policy

//////////////////////////////////////////////////////////////////////*/
#privacyPolicyPage .container h4 + p {
  margin-bottom: 40px;
}
#privacyPolicyPage .container section:not(:last-child) {
  margin-bottom: 40px;
}

@media screen and (max-width: 1200px) {
  .container {
    width: 90%;
  }
  /*//////////////////////////////////////////////////////////////////////

  	license

  //////////////////////////////////////////////////////////////////////*/
  #licensePage .container section .qualifications_list li {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  /*//////////////////////////////////////////////////////////////////////

  	home

  //////////////////////////////////////////////////////////////////////*/
  /*--------------------------------------------------------------
  	keyVisualBlock
  --------------------------------------------------------------*/
  #keyVisualBlock {
    margin-top: 60px;
    margin-bottom: 0;
  }
  #keyVisualBlock h2 {
    bottom: 20px;
    font-size: 2rem;
    letter-spacing: 3px;
  }
  /*--------------------------------------------------------------
  	各Block
  --------------------------------------------------------------*/
  #homePage #newsBlock,
  #homePage #companyBlock,
  #homePage #businessBlock,
  #homePage #recruitBlock {
    display: block;
    margin-bottom: 60px;
  }
  #homePage #newsBlock section hgroup,
  #homePage #companyBlock section hgroup,
  #homePage #businessBlock section hgroup,
  #homePage #recruitBlock section hgroup {
    margin-bottom: 15px;
  }
  #homePage #newsBlock section hgroup h2,
  #homePage #companyBlock section hgroup h2,
  #homePage #businessBlock section hgroup h2,
  #homePage #recruitBlock section hgroup h2 {
    font-size: 3rem;
  }
  #homePage #newsBlock section hgroup h3,
  #homePage #companyBlock section hgroup h3,
  #homePage #businessBlock section hgroup h3,
  #homePage #recruitBlock section hgroup h3 {
    font-size: 0.85rem;
    margin-left: 2px;
  }
  #homePage #newsBlock section {
    width: 100%;
  }
  #homePage #newsBlock ul {
    width: 100%;
  }
  #homePage #newsBlock ul li a {
    gap: 30px;
    padding: 10px 20px 10px 0;
    background-position: center right;
    font-size: 1rem;
  }
  #homePage #companyBlock section,
  #homePage #businessBlock section,
  #homePage #recruitBlock section {
    width: 90%;
    margin: 0 auto;
  }
  #homePage #companyBlock section p,
  #homePage #businessBlock section p,
  #homePage #recruitBlock section p {
    margin-bottom: 15px;
  }
  #homePage #companyBlock figure,
  #homePage #businessBlock figure,
  #homePage #recruitBlock figure {
    width: 95%;
    margin-bottom: 20px;
  }
  #homePage #businessBlock figure {
    margin-left: 5%;
  }
  #homePage #businessBlock section {
    margin: 0 auto;
  }
  #homePage #recruitBlock {
    margin-bottom: 0;
  }
  /*//////////////////////////////////////////////////////////////////////

  	company

  //////////////////////////////////////////////////////////////////////*/
  #companyPage #messageBlock {
    margin-bottom: 60px;
  }
  #companyPage #messageBlock .container {
    display: block;
  }
  #companyPage #messageBlock .container section {
    width: 100%;
    margin-bottom: 20px;
  }
  #companyPage #messageBlock .container figure {
    width: 100%;
  }
  #companyPage #messageBlock::before {
    display: none;
  }
  #companyPage #philosophyBlock .container .lead_box {
    margin-bottom: 20px;
  }
  #companyPage #philosophyBlock .container #managementPolicy section {
    margin-bottom: 20px;
  }
  #companyPage #outlineBlock .container table {
    margin-bottom: 20px;
  }
  #companyPage #outlineBlock .container section {
    margin-bottom: 20px;
  }
  #companyPage #accessBlock {
    margin-top: 20px;
  }
  #companyPage #accessBlock .container section {
    margin-bottom: 20px;
  }
  #companyPage #accessBlock .container section address + p {
    margin-bottom: 5px;
  }
  /*//////////////////////////////////////////////////////////////////////

  	business

  //////////////////////////////////////////////////////////////////////*/
  #businessPage .container {
    width: 100%;
  }
  #businessPage .container .scrollnav_box {
    position: fixed;
    left: 0;
    padding: 20px 5%;
    width: 100%;
    margin-top: -30px;
    background: #fff;
    z-index: 1000;
  }
  #businessPage .container .scrollnav_box nav {
    position: static;
    width: 100%;
    border: 1px solid #00A1D8;
    background: #fff;
    z-index: 100;
    margin: 0 auto;
  }
  #businessPage .container .scrollnav_box nav h4 {
    padding: 10px 15px;
    background: url(../img/common/arrow_d.svg) no-repeat center right 15px;
    cursor: pointer;
  }
  #businessPage .container .scrollnav_box nav ul {
    border-top: 1px solid #00A1D8;
    padding-top: 5px;
    display: none;
  }
  #businessPage .container .scrollnav_box nav ul li a {
    display: block;
    font-size: 0.92rem;
    background: url(../img/common/arrow_r_b.svg) no-repeat center right 18px;
    background-size: 6px 9px;
    padding: 5px 0;
  }
  #businessPage .container .scrollnav_box nav ul li::before {
    display: none;
  }
  #businessPage .container .scrollnav_box.active nav ul {
    display: block;
  }
  #businessPage .container .contents_box {
    position: static;
    width: 90%;
    margin-left: 5%;
  }
  #businessPage .container .contents_box section ul {
    display: block;
  }
  #businessPage .container .contents_box section ul li {
    width: 100%;
  }
  #businessPage .container .contents_box section ul li:not(last-choild) {
    margin-bottom: 20px;
  }
  #businessPage .container .contents_box #trainInspectionBlock,
  #businessPage .container .contents_box #rehurbishmentWorkBlock,
  #businessPage .container .contents_box #equipmentConstructionBlock,
  #businessPage .container .contents_box #goodsSalesBlock,
  #businessPage .container .contents_box #consultantBlock {
    margin-bottom: 60px;
  }
  #businessSalesPage .container #salesBlock h3.headline_1 + p {
    margin-bottom: 10px;
  }
  #businessSalesPage .container #salesBlock h4.headline_2 + p {
    margin-bottom: 10px;
  }
  #businessSalesPage .container #salesBlock .item_list,
  #businessSalesPage .container #salesBlock .product_list {
    display: block;
  }
  #businessSalesPage .container #salesBlock .item_list {
    margin-bottom: 40px;
  }
  #businessSalesPage .container #salesBlock .item_list li {
    width: 100%;
  }
  #businessSalesPage .container #salesBlock .item_list li figure figcaption {
    font-size: 1rem;
    padding: 10px;
    margin-bottom: 10px;
  }
  #businessSalesPage .container #salesBlock .item_list li:not(:last-child) {
    margin-bottom: 20px;
  }
  #businessSalesPage .container #salesBlock .product_list {
    margin-bottom: 40px;
  }
  #businessSalesPage .container #salesBlock .product_list li {
    width: 100%;
  }
  #businessSalesPage .container #salesBlock .product_list li h4 {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
  #businessSalesPage .container #salesBlock .product_list li > p {
    margin-bottom: 10px;
  }
  #businessSalesPage .container #salesBlock .product_list li:not(:last-child) {
    margin-bottom: 30px;
  }
  #businessSalesPage .container #salesBlock .product_list + p {
    margin-bottom: 60px;
    text-align: left;
  }
  .modal_wrapper .modal_container {
    width: 80vw;
    height: 90vh;
    overflow-y: auto;
  }
  .modal_wrapper .modal_container #but_close {
    top: 10px;
    right: 10px;
  }
  .modal_wrapper .modal_container .modal_inner {
    padding: 20px;
  }
  .modal_wrapper .modal_container .modal_inner .title_box {
    display: block;
    margin-bottom: 15px;
  }
  .modal_wrapper .modal_container .modal_inner .title_box h1 {
    font-size: 1.35rem;
    margin-bottom: 8px;
  }
  .modal_wrapper .modal_container .modal_inner .title_box p {
    font-size: 0.9rem;
  }
  .modal_wrapper .modal_container .modal_inner .title_box .icon_acidic,
  .modal_wrapper .modal_container .modal_inner .title_box .icon_neutral,
  .modal_wrapper .modal_container .modal_inner .title_box .icon_alkaline,
  .modal_wrapper .modal_container .modal_inner .title_box .icon_solution {
    margin-top: 5px;
  }
  .modal_wrapper .modal_container .modal_inner .point_box {
    display: block; /*margin-bottom:30px;*/
  }
  .modal_wrapper .modal_container .modal_inner .point_box figure {
    width: 100%;
    margin-bottom: 15px;
  }
  .modal_wrapper .modal_container .modal_inner .point_box section {
    width: 100%;
    /*
    h2 { font-size:1.14rem; margin-bottom:5px;
            span { font-size:10px; margin-top:0; }
          }
    */
  }
  .modal_wrapper .modal_container .modal_inner .point_box section .point_list li {
    padding-left: 1rem;
  }
  .modal_wrapper .modal_container .modal_inner .point_box section .word_list {
    display: block;
  }
  .modal_wrapper .modal_container .modal_inner .point_box section .word_list li {
    font-size: 12px;
  }
  .modal_wrapper .modal_container .modal_inner .point_box section .word_list li:not(:last-child) {
    margin-bottom: 5px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section,
  .modal_wrapper .modal_container .modal_inner .detail_box section,
  .modal_wrapper .modal_container .modal_inner .other_box section {
    /*h3 { font-size:1rem; margin-bottom:10px; }*/
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section h3.headline_2,
  .modal_wrapper .modal_container .modal_inner .detail_box section h3.headline_2,
  .modal_wrapper .modal_container .modal_inner .other_box section h3.headline_2 {
    font-size: 1rem;
    margin-bottom: 10px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div,
  .modal_wrapper .modal_container .modal_inner .other_box section > div {
    display: block;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list,
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list {
    display: block;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li figure img,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li figure img,
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li figure img {
    width: 100%;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li figure figcaption,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li figure figcaption,
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li figure figcaption {
    font-size: 0.8rem;
    text-align: center;
    margin-top: 5px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li:not(:last-child),
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li:not(:last-child),
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li:not(:last-child) {
    margin-bottom: 10px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li.column_2,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li.column_2,
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li.column_2 {
    width: 100%;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div ul.img_list li.column_2 figure div img,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div ul.img_list li.column_2 figure div img,
  .modal_wrapper .modal_container .modal_inner .other_box section > div ul.img_list li.column_2 figure div img {
    width: calc((100% - 8px) / 2);
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section > div .img_list + .methods_list,
  .modal_wrapper .modal_container .modal_inner .detail_box section > div .img_list + .methods_list,
  .modal_wrapper .modal_container .modal_inner .other_box section > div .img_list + .methods_list {
    margin-top: 20px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box section:not(:last-child),
  .modal_wrapper .modal_container .modal_inner .detail_box section:not(:last-child),
  .modal_wrapper .modal_container .modal_inner .other_box section:not(:last-child) {
    margin-bottom: 20px;
  }
  .modal_wrapper .modal_container .modal_inner .detail_img_box {
    display: block;
  }
  .modal_wrapper .modal_container .modal_inner .caution_box ul li {
    font-size: 0.8rem;
  }
  .modal_wrapper .modal_container #modal_6_2 .detail_box table {
    width: 100%;
    margin-top: 20px;
  }
  .modal_wrapper .modal_container #modal_6_2 .detail_box table tr th, .modal_wrapper .modal_container #modal_6_2 .detail_box table tr td {
    padding: 3px;
    font-size: 10px;
  }
  .modal_wrapper .modal_container #modal_6_2 .detail_box table tr .spbr {
    display: block;
  }
  /*//////////////////////////////////////////////////////////////////////

  	recruit

  //////////////////////////////////////////////////////////////////////*/
  #recruitPage #pamphletBlock {
    margin-bottom: 20px;
  }
  #recruitPage #contactBlock {
    padding: 20px;
    margin-bottom: 60px;
  }
  #recruitPage #contactBlock h3 {
    font-size: 1rem;
  }
  #recruitPage #contactBlock a {
    font-size: 2rem;
  }
  #recruitPage #contactBlock p {
    font-size: 1rem;
  }
  #recruitPage #specialMovieBlock {
    margin-bottom: 60px;
  }
  .movie_list {
    display: block;
  }
  .movie_list li {
    width: 100%;
    /*
    a {
    	figure { }

    }
    a:hover { }
    */
  }
  .movie_list li section {
    padding: 15px;
  }
  .movie_list li section h4 {
    font-size: 1.14rem;
  }
  .movie_list li section .but_movie {
    font-size: 1rem;
  }
  .movie_list li:not(:last-child) {
    margin-bottom: 20px;
  }
  /*//////////////////////////////////////////////////////////////////////

  	license

  //////////////////////////////////////////////////////////////////////*/
  #licensePage .container section .qualifications_list li,
  #licensePage .container section .qualifications_list li:nth-child(5n),
  #licensePage .container section .qualifications_list li:nth-child(5n-2) {
    width: 100%;
  }
  #licensePage .container section ul li {
    margin-bottom: 5px;
  }
  /*//////////////////////////////////////////////////////////////////////

  	link

  //////////////////////////////////////////////////////////////////////*/
  #linkPage .container ul li a {
    padding: 15px 20px 15px 0;
    background-position: center right;
  }
  #linkPage .container ul li a dl dt {
    font-size: 1.1rem;
  }
  #linkPage .container ul li a dl dd {
    font-size: 0.9rem;
  }
  #linkPage .container ul li:not(:last-child) {
    border-bottom: 1px solid #E8E8E8;
  }
  /*//////////////////////////////////////////////////////////////////////

  	site-policy

  //////////////////////////////////////////////////////////////////////*/
  #sitePolicyPage .container .notes {
    font-size: 0.85rem;
  }
  #sitePolicyPage .container .notes dd {
    margin-bottom: 10px;
  }
  /*//////////////////////////////////////////////////////////////////////

  	privacy-policy

  //////////////////////////////////////////////////////////////////////*/
  #privacyPolicyPage .container h4 + p {
    margin-bottom: 20px;
  }
  #privacyPolicyPage .container section:not(:last-child) {
    margin-bottom: 20px;
  }
}/*# sourceMappingURL=page.css.map */