  @charset "UTF-8";
/* ===============================================
  （共通） 表示パーツ
=============================================== */
.jp_language,
.cn_language {
  font-size: 1.5rem;
}

.jp_language .main article #TopServices > div .services_content p,
.cn_language .main article #TopServices > div .services_content p {
  line-height: inherit;
}

.jp_language .section_title,
.cn_language .section_title {
  font-family: inherit;
}

.jp_language .article_details_title,
.cn_language .article_details_title {
  font-family: inherit;
}

.jp_language .title_back_blue_line,
.cn_language .title_back_blue_line {
  font-family: inherit;
}

.jp_language .title_blue_line,
.cn_language .title_blue_line {
  font-family: inherit;
}

.jp_language .projects_content section a div h4,
.cn_language .projects_content section a div h4 {
  font-family: inherit;
}

.jp_language .projects_content section a div .content_title,
.cn_language .projects_content section a div .content_title {
  font-family: inherit;
}

.jp_language .projects_content_list > div section a div h4,
.cn_language .projects_content_list > div section a div h4 {
  font-family: inherit;
}

.pc_none {
  display: none;
}

.burger_icon {
  display: none;
}

.category,
.tag_list .category {
  display: none;
}

h5 {
  font-size: inherit;
}

.btn {
  margin-top: 35px;
  margin-bottom: 30px;
}

.btn > a {
  display: block;
  width: 300px;
  height: 48px;
  line-height: 48px;
  background: linear-gradient(180deg, #3286C5 0%, #24779D 100%);
  border-radius: 24px;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
  position: relative;
  padding-right: 20px;
  box-sizing: border-box;
  transition: all .2s;
}

.btn > a:before {
  content: '';
  width: 13px;
  height: 12px;
  border: 0;
  border-top: solid 1px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 93px;
  margin-top: -3px;
}

.btn > a:after {
  content: '';
  width: 20px;
  height: 12px;
  border: 0px;
  border-bottom: solid 1px #fff;
  position: absolute;
  top: 50%;
  right: 90px;
  margin-top: -8px;
}

.btn > a:hover {
  opacity: .7;
}

.btn.icon_blue_btn > a {
  background: linear-gradient(262deg, #2989B4 0%, #325EA8 100%);
  padding: 0;
}

.btn.icon_blue_btn > a:before {
  content: none;
}

.btn.icon_blue_btn > a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -4px;
}

.btn.icon_white_btn {
  margin-top: 24px;
  margin-bottom: 0;
}

.btn.icon_white_btn > a {
  background: #FFF;
  padding: 0;
  color: #356CB6;
  border: solid 1px #356CB6;
}

.btn.icon_white_btn > a:before {
  content: none;
}

.btn.icon_white_btn > a:after {
  content: none;
}

.btn.icon_white_btn > a:hover {
  color: #fff;
  background: #356CB6;
}

.btn.icon_white_square_btn {
  margin: 0 0 24px;
}

.btn.icon_white_square_btn > a {
  background: #FFFFFF;
  border: 1px solid #B5B5B5;
  border-radius: 0;
  color: #356CB6;
  text-align: left;
  padding-left: 32px;
  font-size: 1.7rem;
  width: 100%;
}

.btn.icon_white_square_btn > a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px #356CB6;
  border-right: solid 2px #356CB6;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -4px;
}

.btn.icon_left_btn > a {
  background: transparent linear-gradient(180deg, #619FCE 0%, #168ABE 100%) 0% 0% no-repeat padding-box;
  padding: 0;
}

.btn.icon_left_btn > a:before {
  content: none;
}

.btn.icon_left_btn > a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px #FFF;
  border-left: solid 2px #FFF;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 40px;
  margin-top: -4px;
}

.btn.gray_left_btn > a {
  background: linear-gradient(262deg, #999999 0%, #888888 100%);
  padding: 0;
}

.btn.gray_left_btn > a:before {
  content: none;
}

.btn.gray_left_btn > a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px #FFF;
  border-left: solid 2px #FFF;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 40px;
  margin-top: -4px;
}

.btn.white_square_btn a {
  background: #FFFFFF 0% 0% no-repeat padding-box;
  color: #4076B4;
  border: 1px solid #4076B4;
  width: 100%;
  text-align: left;
  border-radius: 0;
  line-height: 1.2;
}

.btn.white_square_btn a:before {
  content: none;
}

.btn.white_square_btn a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 1px #4076B4;
  border-right: solid 1px #4076B4;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -3px;
}

.btn.white_square_btn a:hover {
  background: #4076B4 0% 0% no-repeat padding-box;
  color: #FFFFFF;
  border: 1px solid #ffffff;
  opacity: 1;
}

.btn.white_square_btn a:hover:after {
  border-top: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
}

.btn.icon_search_btn a {
  width: 100%;
  height: 36px;
  line-height: 36px;
  padding: 0;
  background: #426BAF 0% 0% no-repeat padding-box;
}

.btn.icon_search_btn a:before {
  content: "";
  position: absolute;
  border: none;
  left: 13px;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 11px;
  height: 11px;
  background-image: url(/common/images/search-icon-sp.svg);
  background-repeat: no-repeat;
  background-size: 11px;
  background-position: center;
  transform: none;
}

.btn.icon_search_btn a:after {
  content: none;
}

.btn.icon_search_btn {
  position: relative;
  transition: all .2s;
}

.btn.icon_search_btn:after {
  content: "";
  position: absolute;
  border: none;
  left: 13px;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 11px;
  height: 11px;
  background-image: url(/common/images/search-icon-sp.svg);
  background-repeat: no-repeat;
  background-size: 11px;
  background-position: center;
  transform: none;
  right: 93px;
  pointer-events: none;
}

.btn.icon_search_btn input {
    transition: all .2s;
    border: none;
    cursor: pointer;
    width: 100%;
    border-radius: 24px;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    margin: 0 auto;
    padding-right: 20px;
    box-sizing: border-box;
    height: 36px;
    line-height: 36px;
    padding: 0;
    background: #426BAF 0% 0% no-repeat padding-box;
}

.btn.icon_search_btn input:hover {
  opacity: .7;
}


.btn.circle_btn {
  margin: 0;
}

.btn.circle_btn a {
  margin: 0 23px 0 auto;
  padding: 0;
  width: 80px;
  height: 80px;
  line-height: 90px;
  border-radius: 50px;
  font-size: 1.8rem;
  background: #426BAF 0% 0% no-repeat padding-box;
  box-shadow: 0px 3px 10px #00000029;
}

.btn.circle_btn a:before {
  content: "";
  position: absolute;
  border: none;
  top: -30px;
  left: 35px;
  bottom: 0;
  margin: auto;
  display: block;
  width: 11px;
  height: 11px;
  background-image: url(/common/images/search-icon-sp.svg);
  background-repeat: no-repeat;
  background-size: 11px;
  background-position: center;
  transform: none;
}

.btn.circle_btn a:after {
  content: none;
}

.btn.circle_btn a:hover {
  opacity: .8;
}

.card_btn {
  border: 1px solid #e2e6e8;
  margin-bottom: 16px;
}
.card_btn a {
  padding: 30px 12px;
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  line-height: 1.4;
  transition: all .2s;
}
.card_btn a:after {
    content: "";
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 1px #356cb6;
    border-right: solid 1px #356cb6;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate( 45deg );
    transform: rotate( 45deg );
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -4px;
}
.card_btn a:hover {
  background-color: #eff3f9;
  text-decoration: none;
}

.t_right {
  text-align: right;
  margin: 0 0 24px;
}

.t_right p {
  margin: 0;
}

.t_left {
  text-align: left;
  margin: 0 0 24px;
}

.t_left p {
  margin: 0;
}

.t_center {
  text-align: center;
}

/* --------------------------- */

.margin_btm0 {
  margin-bottom: 0 !important;
}

.margin_btm24 {
  margin-bottom: 24px !important;
}

.margin_btm48 {
  margin-bottom: 48px !important;
}

.margin_btm80 {
  margin-bottom: 80px !important;
}

.margin_top0 {
  margin-top: 0 !important;
}

.margin_top24 {
  margin-top: 24px !important;
}

.margin_top48 {
  margin-top: 48px !important;
}

.margin_top80 {
  margin-top: 80px !important;
}

/* --------------------------- */

.w10per {
  width: 10% !important; 
}

.mw10per {
  max-width: 10% !important; 
}

.w15per {
  width: 15% !important; 
}

.mw15per {
  max-width: 15% !important; 
}

.mw200 {
  max-width: 200px !important; 
}

.mw250 {
  max-width: 250px !important; 
}

.w20per {
  width: 20% !important; 
}

.mw20per {
  max-width: 20% !important; 
}

.mw300 {
  max-width: 300px !important; 
}

.w25per {
  width: 25% !important; 
}

.mw25per {
  max-width: 25% !important; }

.mw350 {
  max-width: 350px !important; }

.w30per {
  width: 30% !important; 
}

.mw30per {
  max-width: 30% !important; 
}

.mw400 {
  max-width: 400px !important; 
}

.w35per {
  width: 35% !important; 
}

.mw35per {
  max-width: 35% !important; 
}

.mw450 {
  max-width: 450px !important; 
}

.w40per {
  width: 40% !important; 
}

.mw40per {
  max-width: 40% !important; 
}

.mw500 {
  max-width: 500px !important; 
}

.w45per {
  width: 45% !important; 
}

.mw45per {
  max-width: 45% !important; 
}

.mw550 {
  max-width: 550px !important; 
}

.w50per {
  width: 50% !important; 
}

.mw50per {
  max-width: 50% !important; 
}

.mw600 {
  max-width: 600px !important; 
}

.w55per {
  width: 55% !important; }

.mw55per {
  max-width: 55% !important; }

.mw650 {
  max-width: 650px !important; }

.w60per {
  width: 60% !important; 
}

.mw60per {
  max-width: 60% !important; 
}

.mw700 {
  max-width: 700px !important; 
}

.w65per {
  width: 65% !important; 
}

.mw65per {
  max-width: 65% !important; 
}

.mw750 {
  max-width: 750px !important; 
}

.w70per {
  width: 70% !important; 
}

.mw70per {
  max-width: 70% !important; 
}

.mw800 {
  max-width: 800px !important; 
}

.w75per {
  width: 75% !important; 
}

.mw75per {
  max-width: 75% !important; 
}

.mw850 {
  max-width: 850px !important; 
}

.w80per {
  width: 80% !important; 
}

.mw80per {
  max-width: 80% !important; 
}

.mw900 {
  max-width: 900px !important; 
}

.w85per {
  width: 85% !important; 
}

.mw85per {
  max-width: 85% !important; 
}

.mw950 {
  max-width: 950px !important; 
}

.w90per {
  width: 90% !important; 
}

.mw90per {
  max-width: 90% !important; 
}

.mw1000 {
  max-width: 1000px !important; 
}

.w95per {
  width: 95% !important; 
}

.mw95per {
  max-width: 95% !important; 
}

.mw1050 {
  max-width: 1050px !important; 
}

.w100per {
  width: 100% !important; 
}

.mw100per {
  max-width: 100% !important; 
}

/* --------------------------- */

.font-size-xs {
  font-size: 1rem !important;  
}

.font-size-s {
  font-size: 1.2rem !important;  
}

.font-size-m {
  font-size: 1.3rem !important; 
}

.font-size-l {
  font-size: 1.6rem !important; 
}

.font-size-xl {
  font-size: 1.7rem !important; 
}

.font-size-xxl {
  font-size: 1.8rem !important; 
}

/* --------------------------- */

.background_blue01{
	background: #F4F8F7;
}

.background_blue02{
	background: #eff3f9;
}

.bg_blue_message p,
.bg_lightblue_message p{
	margin: 0;
}

.bg_blue_message{
	background: #F4F8F7;
	padding: 20px;
}

.bg_lightblue_message{
	background: #eff3f9;
	padding: 20px;
}

/* --------------------------- */

.block_center {
  display: block;
  margin: auto;
}

.block100 {
  width: 100%;
  max-width: 100px;
}

.block150 {
  width: 100%;
  max-width: 150px;
}

.block200 {
  width: 100%;
  max-width: 200px;
}

.block250 {
  width: 100%;
  max-width: 250px;
}

.block300 {
  width: 100%;
  max-width: 300px;
}

.block350 {
  width: 100%;
  max-width: 350px;
}

.block400 {
  width: 100%;
  max-width: 400px;
}

.block450 {
  width: 100%;
  max-width: 450px;
}

.block500 {
  width: 100%;
  max-width: 500px;
}

.block550 {
  width: 100%;
  max-width: 550px;
}

.block600 {
  width: 100%;
  max-width: 600px;
}

.block650 {
  width: 100%;
  max-width: 650px;
}

.block630 {
  width: 100%;
  max-width: 630px;
}

.block800 {
  width: 100%;
  max-width: 800px;
}

.block920 {
  width: 100%;
  max-width: 920px;
}

.pdf_icon {
  margin-top: 48px;
}

.pdf_icon a {
  padding: 2px;
  padding-left: 24px;
  position: relative;
  border-radius: 15px;
  transition: all .2s;
}

.pdf_icon a:before {
  content: "";
  position: absolute;
  left: 2px;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 18px;
  height: 20px;
  background-image: url(/common/images/pdf-icon.svg);
  background-repeat: no-repeat;
  background-size: 18px 20px;
  background-position: center;
}

.pdf_icon_r {
    margin-bottom: 6px;
}
.pdf_icon_r a {
  display: inline-block;
  padding-right: 24px;
  position: relative;
  border-radius: 15px;
  transition: all .2s;
}

.pdf_icon_r a:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0px;
  margin: auto;
  display: block;
  width: 14px;
  height: 16px;
  background-image: url(/common/images/pdf-icon.svg);
  background-repeat: no-repeat;
  background-size: 14px 26px;
  background-position: center;
}

.pdf_icon a:hover {
  opacity: .7;
}

.pdf_icon_r a:hover {
  opacity: .7;
}
.indent40 {
  margin: 30px 40px 0;
}

.facility_usages_list,
.region_list {
  background: #FFFFFF 0 0 no-repeat padding-box;
  box-shadow: 0 8px 6px rgba(0, 0, 0, 0.16);
  display: none;
}

.facility_usages_list .flex_2_colomn,
.region_list .flex_2_colomn {
  justify-content: center;
  padding: 0 16px;
}

.facility_usages_list .flex_2_colomn .flex_left,
.region_list .flex_2_colomn .flex_left {
  width: calc((100% - 16px) / 2);
  margin-right: 16px;
}

.facility_usages_list .flex_2_colomn .flex_left a,
.region_list .flex_2_colomn .flex_left a {
  width: 100%;
  height: 36px;
  line-height: 36px;
}

.facility_usages_list .flex_2_colomn .flex_right,
.region_list .flex_2_colomn .flex_right {
  width: calc((100% - 16px) / 2);
}

.facility_usages_list .flex_2_colomn .flex_right a,
.region_list .flex_2_colomn .flex_right a {
  width: 100%;
  height: 36px;
  line-height: 36px;
}

.facility_usages_list .open_list,
.region_list .open_list {
  display: block;
}

.toggle_list {
  margin: 0;
  padding: 18px 10px;
}

.toggle_list li {
  list-style: none;
  font-size: 1.7rem;
}

.toggle_list li label {
  display: flex;
  cursor: pointer;
}

.toggle_list li input[type=checkbox] {
  display: none;
}

.toggle_list li .checkbox-parts {
  color: #356CB6;
  text-decoration: none;
  padding: 4px 30px;
  box-sizing: border-box;
  position: relative;
  display: block;
  width: 100%;
  transition: all .2s;
}

.toggle_list li .checkbox-parts:hover {
  background: #F9F8F8;
}

.toggle_list li .checkbox-parts:before {
  content: "";
  display: block;
  position: absolute;
  top: 8px;
  left: 5px;
  width: 16px;
  height: 16px;
  border: none;
  border-radius: 4px;
  background: #EFEFEF;
}

.toggle_list li .checkbox_input:checked + .checkbox-parts {
  font-weight: bold;
}

.toggle_list li .checkbox_input:checked + .checkbox-parts:before {
  background: #44639B;
  background-image: url(/common/images/checkbox-icon.svg);
  background-repeat: no-repeat;
  background-size: 10px 8px;
  background-position: center;
}

.toggle_list li .toggle_head {
  margin: 0;
  padding: 0 20px;
  font-weight: bold;
  font-size: 1.7rem;
}

.toggle_list li .toggle_head:nth-of-type(n + 2) {
  margin-top: 32px;
}

.side_menu_btn_title {
  font-size: 1.7rem;
  color: #FFF;
  background: transparent linear-gradient(261deg, #2989B4 0%, #325EA8 100%);
  border-bottom: none;
  padding: 7px 47px 7px 16px;
  position: relative;
  margin: 0 0 16px;
}

.section_title {
  font-family: Roboto Condensed;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 9px;
}

.article_details_title {
  font-family: Roboto;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 9px;
}

.title_back_blue_line {
  font-family: Roboto;
  font-size: 3.4rem;
  line-height: 1.2;
  margin: 0 0 24px;
  padding-left: 10px;
  position: relative;
  max-width: 700px;
}

.title_back_blue_line:before {
  content: "";
  position: absolute;
  background: #9CD0DE;
  width: 94%;
  height: 26px;
  bottom: -4px;
  right: 0;
  z-index: -1;
}

.title_back_blue_line:after {
  content: "";
  position: absolute;
  background: #F4F8F7;
  width: calc(100% - 4px);
  height: 26px;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.title_blue_line {
  font-family: Roboto;
  color: #202020;
  font-size: 2.0rem;
  line-height: 1.2;
  font-weight: bold;
  margin: 0 0 10px;
  position: relative;
}

.title_blue_line:before {
  content: "";
  max-width: 190px;
  width: 100%;
  height: 4px;
  background: linear-gradient(269deg, #ADDED5 0%, #9BDDDF 100%);
  position: absolute;
  left: 0;
  bottom: 2px;
  z-index: -1;
}

.title_bold {
  font-size: 1.6rem;
	font-weight: 900;
}

.title_large_text{
    font-weight: bold;
    font-size: 3.2rem;
margin: 0 0 24px;
}

.contact {
  width: 100%;
  margin: auto;
}

.contact .required {
  color: #CC0000;
}

.contact form {
  margin: 48px 0 80px;
}

.contact form .form_list {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  width: 100%;
  margin: 0 0 80px;
  padding: 0;
}

.contact form .form_list dt {
  padding: 16px 27px 16px 16px;
  width: 100%;
  max-width: 162px;
  font-weight: bold;
}

.contact form .form_list dd {
  margin: 0;
  width: calc(100% - 205px);
}

.contact form .form_list input {
  width: 100%;
  padding: 8px 16px;
  margin: 10px 0;
  box-sizing: border-box;
  border: 1px solid #D5D5D5;
  font-family: Verdana, Meiryo, sans-serif;
}

.contact form .form_list select {
  width: 100%;
  padding: 8px 12px;
  margin: 10px 0;
  box-sizing: border-box;
  border: 1px solid #D5D5D5;
  font-family: Verdana, Meiryo, sans-serif;
}

.contact form .form_list .comment_area {
  width: 100%;
  height: 220px;
  padding: 8px 16px;
  margin: 10px 0;
  box-sizing: border-box;
  overflow: auto;
  resize: none;
  border: 1px solid #D5D5D5;
  font-family: Verdana, Meiryo, sans-serif;
}

.contact form .form_list .error {
  background: #ffe6ea;
}

.contact .conf_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 80px;
  padding: 0;
}

.contact .conf_list dt {
  padding: 16px 27px 16px 16px;
  width: 100%;
  height: auto;
  max-width: 162px;
  font-weight: bold;
  border-bottom: 1px dashed #d6d6d6;
}

.contact .conf_list dd {
  padding: 16px 0 16px;
  margin: 0;
  width: calc(100% - 205px);
  height: auto;
  box-sizing: border-box;
  border-bottom: 1px dashed #d6d6d6;
  white-space: pre-wrap;
}
.contact .flex_2_colomn {
  justify-content: space-around;
}

.projects_content {
  width: 100%;
  margin-right: 28px;
}

.projects_content.top_content {
  width: 50%;
}

.projects_content .slider {
  display: grid;
}

.projects_content .slick-prev,
.projects_content .slick-next {
  top: calc(100% - 60%);
  z-index: 1;
  opacity: 1;
  width: 43px;
  height: 43px;
  background: #999999;
  border-radius: 25px;
}

.projects_content .slick-prev:before,
.projects_content .slick-next:before {
  content: '';
  width: 12px;
  height: 12px;
  border: 0;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 11px;
}

.projects_content .slick-prev:focus,
.projects_content .slick-next:focus {
  background: #999999;
}

.projects_content .slick-prev:hover,
.projects_content .slick-next:hover {
  background: #999999;
  opacity: .7;
}

.projects_content .slick-prev {
  left: 10px;
}

.projects_content .slick-prev:before {
  right: 11px;
  border-left: solid 4px #FFF;
  border-bottom: solid 4px #FFF;
}

.projects_content .slick-next {
  right: 10px;
}

.projects_content .slick-next:before {
  left: 11px;
  border-top: solid 4px #FFF;
  border-right: solid 4px #FFF;
}

.projects_content .slick-prev:before,
.projects_content .slick-next:before {
  opacity: 1;
  font-size: 50px;
  color: #999999;
}

.projects_content section a {
  text-decoration: none;
  outline: none;
}

.projects_content section a figure {
  margin: 0 auto;
  width: calc(100% - 120px);
}

.projects_content section a img {
  object-fit: contain;
  font-family: 'object-fit: contain';
  width: 100%;
  /* max-height: 529px; */
  height: 529px;
  vertical-align: bottom;
  transition: all .2s;
  border: 1px solid #F0F0F0;
}

.projects_content section a img.img100p {
  max-width: 100%;
}

.projects_content section a img.img_height {
  max-width: 100%;
  height: 530px;
}

.projects_content slick-list section a div {
  width: 100%;
  margin: 0 auto;
  padding: 8px 0;
  background: #FFF;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
}

.projects_content section a div .area {
  color: #5E9273;
  padding-left: 28px;
  position: relative;
  margin: 0 0 2px;
}

.projects_content section a div .area:before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background-image: url("/common/images/map-icon.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-color: #5E9273;
  border-radius: 2px;
}

.projects_content section a div .content_title {
  font-family: Roboto Condensed;
  font-size: 3.8rem;
  line-height: 1.4;
  font-weight: bold;
  color: #202020;
  margin: 0 0 4px;
}

.projects_content section a div h4 {
  font-family: Roboto;
  font-size: 2.4rem;
  line-height: 1.4;
  color: #202020;
  margin: 0 0 12px;
  word-break: break-word;
}

.projects_content section a div .category {
  color: #888888;
  margin: 0;
}

.projects_content section a:hover img {
  opacity: .7;
}

.projects .projects_content {
  position: relative;
}

.projects .projects_content:after {
  content: 'PICK UP';
  position: absolute;
  top: -55px;
  font-family: Roboto Condensed;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
}

.projects_content_list {
  display: flex;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  width: 50%;
}

.projects_content_list > div {
  width: calc(50% - 8px);
  margin: 0 16px 18px 0;
}

.projects_content_list > div:nth-child(2n) {
  margin-right: 0;
}

.projects_content_list > div section {
  box-sizing: border-box;
}

.projects_content_list > div section a {
  text-decoration: none;
}

.projects_content_list > div section a img {
  object-fit: contain;
  font-family: 'object-fit: contain';
  width: 100%;
  height: 206px;
  margin: auto;
  display: block;
  vertical-align: bottom;
  transition: all .2s;
  border: 1px solid #F0F0F0;
}

.projects_content_list > div section a div {
  width: 100%;
  margin: 0 auto;
  padding: 8px 0;
  background: #FFF;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
}

.projects_content_list > div section a div .area {
  color: #5E9273;
  padding-left: 28px;
  position: relative;
  margin: 0 0 2px;
  word-break: break-word;
}

.projects_content_list > div section a div .area:before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background-image: url("/common/images/map-icon.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-color: #5E9273;
  border-radius: 2px;
}

.projects_content_list > div section a div h4 {
  font-family: Roboto;
  font-size: 1.5rem;
  line-height: 1.4;
  color: #202020;
  margin: 0 0 12px;
  height: auto;
  word-break: break-word;
}

.projects_content_list > div section a div .category {
  color: #888888;
  margin: 0;
}

.projects_content_list > div section a:hover img {
  opacity: .7;
}

.projects_content_list.list_3_column {
  width: 100%;
}

.projects_content_list.list_3_column > div {
  /* width: calc(34% - 15px); */
    /* margin: 0 0 60px 0; */
    max-width: 300px;
    margin: 0 20px 20px 0;
    width: calc((100% - 40px) / 3);
}

.projects_content_list.list_3_column > div > section {
  margin-bottom: 0;
}

.projects_content_list.list_3_column > div > section a img {
  object-fit: contain;
  font-family: 'object-fit: contain';
  height: 196px;
}

.projects_content_list.list_3_column > div:nth-child(3n) {
  margin-right: 0;
}

.services_content {
  max-width: 32%;
  margin-right: 2%;
}

.services_content img {
  width: 100%;
  border-radius: 3px;
  box-shadow: 0 0 4px #999;
}

.services_content_list {
  display: flex;
  flex-wrap: wrap;
}

.services_content_list .services_content:nth-child(3n) {
  margin-right: 0;
}

.news_container {
  display: flex;
  flex-wrap: wrap;
}

.news_content_link {
  max-width: 300px;
  margin: 0 40px 0 0;
  width: calc((100% - 120px) / 4);
}

.news_content_link:nth-child(4n) {
  margin-right: 0;
}

.news_content_link:nth-child(n + 5) {
  margin-bottom: 0;
}

.news_content_link section a {
  text-decoration: none;
  transition: all .2s;
  display: block;
  height: 100%;
}

.news_content_link section a img {
  width: 100%;
  height: 187px;
  object-fit: contain;
  font-family: 'object-fit: contain;';
  border: 1px solid #F0F0F0;
}

.news_content_link section a div h4 {
  font-size: 1.6rem;
  line-height: 1.4;
  color: #0066CC;
  margin: 0 0 8px;
  min-height: 54px;
  overflow: hidden;
  visibility: hidden;
  word-break: break-word;
}

@media all and (-ms-high-contrast: none) {
  .news_content_link section a div h4 {
    font-weight: normal;
    font-size: 1.5rem;
  }
}

@media all and (-ms-high-contrast: active) {
  .news_content_link section a div h4 {
    font-weight: normal;
    font-size: 1.5rem;
  }
}

.news_content_link section a div time {
  color: #999999;
  display: block;
  margin-bottom: 8px;
}

.news_content_link section a div p {
  color: #202020;
  border-top: 1px dashed #D6D6D6;
  padding-top: 8px;
  margin: 0;
  /*height: 68px;
  overflow: hidden;*/
  visibility: hidden;
  word-break: break-word;
}

.news_content_link section a:hover {
  opacity: .7;
}

/* ----------------------------------------------
　　下層ページ
---------------------------------------------- */
.flex_2_colomn {
  display: flex;
  justify-content: space-between;
}

.flex_2_colomn .flex_left {
  margin-right: 45px;
}

.flex_2_colomn .flex_left img {
  width: 100%;
}

.flex_2_colomn .flex_right img {
  width: 100%;
}

.flex_2_colomn.content_end {
  justify-content: flex-start;
}

.right_300 .flex_left {
  width: calc(100% - 345px);
}

.right_300 .flex_right {
  width: 300px;
  height: auto;
  align-self: flex-start;
}

.right_200 .flex_left {
  width: calc(100% - 245px);
}

.right_200 .flex_right {
  width: 200px;
  height: auto;
}

.both_200 .flex_left {
  width: 50%;
}

.both_200 .flex_left img {
  max-width: 200px;
}

.both_200 .flex_right {
  width: 50%;
}

.both_200 .flex_right img {
  max-width: 200px;
}

.both_300 .flex_left {
  width: 50%;
}

.both_300 .flex_left img {
  max-width: 300px;
}

.both_300 .flex_right {
  width: 50%;
}

.both_300 .flex_right img {
  max-width: 300px;
}

.both_350 .flex_left {
  width: 50%;
}

.both_350 .flex_left img {
  max-width: 350px;
}

.both_350 .flex_right {
  width: 50%;
}

.both_350 .flex_right img {
  max-width: 350px;
}

.both_colomn .flex_left {
  width: 50%;
}

.both_colomn .flex_right {
  width: 50%;
}

.left_300 .flex_left {
  width: 300px;
  height: auto;
  align-self: flex-start;
}

.left_300 .flex_right {
  width: calc(100% - 345px);
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.left_200 .flex_left {
  width: 200px;
  height: auto;
}

.left_200 .flex_right {
  width: calc(100% - 245px);
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.left_100 {
  align-items: center;
}

.left_100 .flex_left {
  width: 100px;
  height: auto;
}

.left_100 .flex_right {
  width: calc(100% - 125px);
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.flex_3_colomn {
  display: flex;
  justify-content: center;
}

.flex_3_colomn .flex_left {
  margin-right: 45px;
}

.flex_3_colomn .flex_left img {
  width: 100%;
}

.flex_3_colomn .flex_center {
  margin-right: 45px;
}

.flex_3_colomn .flex_center img {
  width: 100%;
}

.flex_3_colomn .flex_right img {
  width: 100%;
}

.align_height .flex_left {
  height: 250px;
}

.align_height .flex_left img {
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.align_height .flex_right {
  height: 250px;
}

.align_height .flex_right img {
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.table_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 80px;
  padding: 0;
}

.table_list dt {
  padding: 16px 27px 16px 16px;
  width: 100%;
  max-width: 162px;
  font-weight: bold;
  border-bottom: 1px dashed #D6D6D6;
}

.table_list dt:nth-of-type(2n) {
  background: #f3f3f3;
}

.table_list dd {
  margin: 0;
  padding: 16px 16px 16px 0;
  width: calc(100% - 205px);
  border-bottom: 1px dashed #D6D6D6;
  box-sizing: border-box;
}

.table_list dd:nth-of-type(2n) {
  background: #f3f3f3;
}

.table_list.no_border {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 0;
  margin: 0;
}

.table_list.no_border dt {
  width: 100%;
  max-width: 162px;
  padding: 0;
  font-weight: bold;
  border-bottom: none;
}

.table_list.no_border dd {
  width: calc(100% - 205px);
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-bottom: none;
}

.table_list.dt_narrow dt {
  max-width: 60px;
}

.table_list.dt_narrow dd {
  width: calc(100% - 103px);
}

.span_table {
  width: 100%;
  margin: 0 0 80px;
  padding: 0;
  border-collapse: collapse;
}

.span_table tr {
  width: 100%;
}

.span_table tr th {
  padding: 16px 27px 16px 16px;
  width: 30%;
  max-width: 162px;
  font-weight: bold;
  border-bottom: 1px solid #D6D6D6;
}

.span_table tr td {
  margin: 0;
  padding: 16px 16px 16px 0;
  width: calc(100% - 205px);
  border-bottom: 1px solid #D6D6D6;
  box-sizing: border-box;
}

.span_table tr td.span_border {
  border-bottom: 1px dashed #D9D9D9;
}

.span_table tr td p {
  margin: auto 0;
}

.img_2_column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.img_2_column li {
  list-style: none;
  margin-bottom: 34px;
  width: calc(50% - 22px);
  box-sizing: border-box;
  text-align: center;
}

.img_2_column li img {
  max-width: 100%;
  vertical-align: bottom;
}

.img_2_column li:last-child {
  margin-bottom: 0;
}

.img_2_column.col_even li:nth-last-child(2) {
  margin-bottom: 0;
}

.img_2_column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.img_2_column li {
  list-style: none;
  margin-bottom: 34px;
  width: calc(50% - 22px);
  box-sizing: border-box;
  text-align: center;
}

.img_2_column li img {
  max-width: 100%;
  vertical-align: bottom;
}

.img_2_column li:last-child {
  margin-bottom: 0;
}

.img_2_column.col_even li:nth-last-child(2) {
  margin-bottom: 0;
}

.img_3_column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.img_3_column li {
  list-style: none;
  margin-bottom: 34px;
  width: calc(33% - 22px);
  box-sizing: border-box;
  text-align: center;
}

.img_3_column li img {
  max-width: 100%;
  vertical-align: bottom;
}

.img_3_column li:last-child {
  margin-bottom: 0;
}

.img_3_column.col_even li:nth-last-child(2) {
  margin-bottom: 0;

}

.img_3_column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.img_3_column li {
  list-style: none;
  margin-bottom: 34px;
  width: calc(33% - 22px);
  box-sizing: border-box;
  text-align: center;
}

.img_3_column li img {
  max-width: 100%;
  vertical-align: bottom;
}

.img_3_column li:last-child {
  margin-bottom: 0;
}

.img_3_column.col_even li:nth-last-child(2) {
  margin-bottom: 0;
}
.img_maxsize {
  width: 100%;
}

.highlight_text {
  font-weight: bold;
  font-size: 1.6rem;
}

.border_bottom {
  display: inline-block;
  border-bottom: 1px solid #202020;
}

.decoration_none {
  margin-right: 50px;
}

.decoration_none:last-child {
  margin-right: 0;
}

.decoration_none:hover {
  text-decoration: none;
  opacity: .7;
}

figure {
  margin: 0 0 24px;
}

ol {
  margin: 0;
  padding-left: 20px;
}

.normal_list {
  margin: 0;
  padding-left: 14px;
}

.normal_list > li {
  list-style-type: none;
  text-indent: -3px;
}

.normal_list > li p {
  margin: 12px 0 10px;
}

.normal_list.dot > li:before {
  content: '';
  width: 3px;
  height: 3px;
  display: inline-block;
  border-radius: 100%;
  background: #202020;
  position: relative;
  left: -10px;
  top: -3px;
}

.normal_list.border li:before {
  content: '';
  width: 3px;
  height: 1px;
  display: inline-block;
  border-radius: 100%;
  background: #202020;
  position: relative;
  left: -10px;
  top: -3px;
}

.normal_list.white li:before {
  background: #fff;
}

.alphabet_list li {
  list-style-type: lower-alpha;
}

.border_list {
  list-style: none;
  margin-bottom: 80px;
  padding: 0;
}

.border_list li {
  border-bottom: 1px dashed #9F9F9F;
  padding: 32px 0;
}

.border_list li .margin_btm0 {
  margin-bottom: 0;
}

.border_list li h3 {
  font-family: inherit;
  margin: 0 0 10px;
}

.border_list li p {
  word-break: break-word;
}

.border_list li a {
  word-break: break-word;
}

.border_list li .match_txt {
  font-weight: bold;
  background: #e4ec44;
}

.btn_list {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
}

.btn_list li {
  width: calc(100% / 5 - 9px);
  list-style: none;
  letter-spacing: -0.05rem;
}

.btn_list li a {
  display: flex;
  box-sizing: border-box;
  align-items: center;
  padding-left: 10px;
}

.info_qr p {
  margin: 0;
}

.info_qr > div {
  margin-top: 24px;
}

.info_qr > div img {
  max-width: 189px;
  width: 100%;
}

.ssl_link {
  text-align: center;
}

.ssl_link .icon_link img {
  width: 115px;
  vertical-align: bottom;
}

.ssl_link .icon_link a {
  transition: all .2s;
}

.ssl_link .icon_link a:hover {
  opacity: .7;
}

.ssl_link .text_link {
  margin: 6px 0 0;
}

.ssl_link .text_link a {
  color: #0066CC;
  text-decoration: none;
}

.ssl_link .text_link a:hover {
  text-decoration: underline;
}

.icon_link_blank {
    text-decoration: none;
    position: relative;
    margin-right: 20px;
}

.icon_link_blank:after {
    content: "";
    position: absolute;
    right: -14px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: block;
    width: 9px;
    height: 9px;
    background-image: url(/common/images/outside-icon-blue.png);
    background-repeat: no-repeat;
    background-size: 9px 9px;
    background-position: center;
}

.details_img_slider .details_slider {
  margin: 0 0 40px;
  padding: 0;
  list-style: none;
}

.details_img_slider .details_slider li {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
  outline: none;
}

.details_img_slider .details_slider li img {
  display: block;
  width: calc(100% - 128px);
  height: 676px;
  margin: 0 auto;
  object-fit: contain;
  font-family: 'object-fit: contain';
}

.details_img_slider .details_slider li.slide_none.slick-slide {
  display: none;
}

.details_img_slider .details_thumb {
  max-width: 780px;
  margin: 0 auto;
  padding: 0;
}

.details_img_slider .details_thumb li {
  margin: 0 14px 0 0;
}

.details_img_slider .details_thumb li a {
  display: block;
  width: 136px;
  height: 100px;
  background: #ffffff;
  list-style: none;
  cursor: pointer;
  transition: all .2s;
  border: 1px solid #e5e5e5;
  box-sizing: content-box;
  padding: 4px;
}

.details_img_slider .details_thumb li a img {
  width: 100%;
  height: 100px;
  object-fit: contain;
  font-family: 'object-fit: contain';
}

.details_img_slider .details_thumb li.slick-current a {
  border: 4px solid #1D3763;
  box-sizing: content-box;
  padding: 0;
}

.details_img_slider .details_thumb li.slide_none.slick-slide.slick-active {
  display: none;
}

.details_img_slider .slick-prev,
.details_img_slider .slick-next {
  z-index: 1;
  opacity: 1;
  width: 43px;
  height: 43px;
  background: #999999;
  border-radius: 25px;
}

.details_img_slider .slick-prev:before,
.details_img_slider .slick-next:before {
  content: '';
  width: 12px;
  height: 12px;
  border: 0;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 11px;
}

.details_img_slider .slick-prev:focus,
.details_img_slider .slick-next:focus {
  background: #999999;
}

.details_img_slider .slick-prev:hover,
.details_img_slider .slick-next:hover {
  background: #999999;
  opacity: .7;
}

.details_img_slider .slick-prev {
  left: 10px;
}

.details_img_slider .slick-prev:before {
  right: 11px;
  border-left: solid 4px #FFF;
  border-bottom: solid 4px #FFF;
}

.details_img_slider .slick-next {
  right: 10px;
}

.details_img_slider .slick-next:before {
  left: 11px;
  border-top: solid 4px #FFF;
  border-right: solid 4px #FFF;
}

.details_img_slider .slick-prev:before,
.details_img_slider .slick-next:before {
  opacity: 1;
  font-size: 50px;
  color: #999999;
}

.article_link {
  display: block;
  text-decoration: none;
}

.article_link .article_img {
  width: 100%;
  transition: all .2s;
}

.article_link .article_title {
  color: #202020;
  font-weight: bold;
  margin: 0;
}

.article_link:hover {
  text-decoration: none;
}

.article_link:hover .article_img {
  opacity: .7;
}

.article_4_column {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.article_4_column li {
  width: calc(25% - 12px);
  list-style: none;
  margin: 0 15px 6px 0;
}

.article_4_column li:nth-child(4n) {

  margin: 0 0 6px 0;
}

.article_4_column li img {
  object-fit: contain;
  font-family: 'object-fit: contain';
  width: 100%;
  height: 146px;
  border: 1px solid #f0f0f0;
}

.color_list li {
  list-style: none;
}

.color_list li span {
  font-size: 2.0rem;
  font-weight: bold;
}

.color_list li span:before {
  content: '';
  width: 10px;
  height: 10px;
  display: inline-block;
  border-radius: 100%;
  position: relative;
  left: -10px;
  top: 0;
}

.color_list li span.txt_orange {
  color: #e4742d;
}

.color_list li span.txt_orange:before {
  background: #e4742d;
}

.color_list li span.txt_blue {
  color: #2c7ad4;
}

.color_list li span.txt_blue:before {
  background: #2c7ad4;
}

.color_list li span.txt_green {
  color: #a4c45c;
}

.color_list li span.txt_green:before {
  background: #a4c45c;
}

.normal_table {
  width: 100%;
  margin: 0;
  padding: 0;
  background: linear-gradient(180deg, #3286C5 0%, #24779D 100%);
  border-collapse: collapse;
}

.normal_table tr {
  width: 100%;
  border-bottom: 1px solid #D6D6D6;
}

.normal_table tr th {
  padding: 16px 27px 16px 16px;
  width: 25%;
  font-weight: bold;
  color: #fff;
}

.normal_table tr th.row_title {
  width: 15%;
}

.normal_table tr td {
  margin: 0;
  padding: 16px;
  background: #F4F8F7;
  box-sizing: border-box;
}

.normal_table tr td.span_border {
  border-bottom: 1px dashed #D9D9D9;
}

.normal_table tr td p {
  margin: auto 0;
}

.mark_table {
  width: 100%;
  margin: 0;
  padding: 0;
  border-collapse: collapse;
}

.mark_table tr {
  width: 100%;
  border-bottom: 1px dashed #B5B5B5;
  background: #F4F8F7;
  text-align: center;
}

.mark_table tr:first-child {
  background: linear-gradient(180deg, #3286C5 0%, #24779D 100%);
  color: #fff;
}

.mark_table tr.marked {
  background: #ccdbe0;
}

.mark_table tr th {
  padding: 16px;
  width: 10%;
  font-weight: bold;
}

.mark_table tr th.col_title {
  width: 18%;
}

.mark_table tr td {
  margin: 0;
  padding: 16px;
  box-sizing: border-box;
}

.mark_table tr td.span_border {
  border-bottom: 1px dashed #D9D9D9;
}

.mark_table tr td p {
  margin: auto 0;
}

.usage_guide {
  padding-left: 35px;
}

.usage_guide:before {
  content: '';
  width: 35px;
  height: 20px;
  display: inline-block;
  border: 1px solid #B5B5B5;
  background: #ccdbe0;
  position: relative;
  left: -30px;
  top: 5px;
}

.txt_red {
  color: #ff0000;
}

.img_link {
  transition: all .2s;
}

.img_link:hover {
  text-decoration: none;
  opacity: .7;
}

.tag_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tag_list li {
  display: block;
  color: #828282;
  padding: 6px 16px;
  margin-right: 16px;
  margin-bottom: 16px;
  border: 1px solid #828282;
  border-radius: 20px;
  height: 28px;
  box-sizing: border-box;
  line-height: 1;
}

.tag_list li:last-child {
  margin-right: 0;
}

.search_box {
  display: flex;
  background: #F6F6F6 0% 0% no-repeat padding-box;
  justify-content: space-between;
  border-radius: 10px;
  padding: 18px 24px;
}

.search_box > div {
  display: flex;
}

.search_box > div input[type=search] {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #CCCCCC;
  width: 240px;
  margin: 0 10px;
  outline: none;
}

.search_box > div input[type=submit] {
  display: inline-block;
  width: 120px;
  height: 24px;
  line-height: 1.2;
  background: #426BAF 0% 0% no-repeat padding-box;
  color: #ffffff;
  border-radius: 12px;
  border: none;
  cursor: pointer;
  transition: all .2s;
}

.search_box > div input[type=submit]:hover {
  opacity: .7;
}

.highlight_big {
  font-weight: bold;
  font-size: 1.8rem;
}
.highlight_big_msg {
  font-weight: bold;
  font-size: 3.2rem;
}

.news_pdf {
  display: flex;
}

.news_pdf time {
  position: relative;
}

.news_pdf time:after {
  content: '';
  position: absolute;
  right: -40px;
  width: 18px;
  height: 20px;
  background-image: url(/common/images/pdf-icon.svg);
  background-repeat: no-repeat;
  background-size: 18px 20px;
  background-position: center;
}

.news_pdf_link {
  position: relative;
}
.news_pdf_link:after {
  content: '';
  position: absolute;
  right: -30px;
  width: 18px;
  height: 20px;
  background-image: url(/common/images/pdf-icon.svg);
  background-repeat: no-repeat;
  background-size: 18px 20px;
  background-position: center;
}
/*画像左側トリム*/
.trim_left {
  object-position: 100% 50%;
}

/*吃瓜tv*/
.management {
    max-width: 450px;
    margin: auto;
}
.management > div img {
    width: 100px;
}
.management p {
    margin: 0 0 16px;
    width: 100%;
}
.management_list {
    width: 370px;
    display: flex;
    background: #f3f3f3;
}
.management_list > div {
    padding: 16px;
    box-sizing: border-box;
}
.management_list > div:nth-child(1) {
    width: 50%;
}
.management_list > div:nth-child(2) {
    width: 50%;
    text-align: center;
}
.management_list:nth-of-type(2n) {
    background: #fff;
}
.sub_management {
    display: block;
    margin-left: 80px;
    margin-top: 40px;
    position: relative;
    width: 370px;
}
.sub_management:before {
        content: "";
    display: block;
    position: absolute;
    top: -40px;
    left: -30px;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    height: 280px;
    width: 30px;
}
.sub_management > div {

    display: flex;
}
/* 2204 id management */
#management h4{
	font-size: 1.9rem;
}
#management figcaption{
	font-size: 1.6rem;
}
/* 2204 accordion */
.accordion {
	max-width: 1200px;
	margin: 0 auto;
}
.accordion .accordion_header {
    background: linear-gradient(180deg, #3286C5 0%, #24779D 100%);
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 10px 11% 10px 20px;
    text-align: left;
    position: relative;
    z-index: +1;
    cursor: pointer;
    transition-duration: 0.2s;
}
.accordion .accordion_header:hover {
	opacity: .8;
}
.accordion .accordion_header .i_box {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	right: 5%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	box-sizing: border-box;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
}
.accordion .accordion_header.stay .i_box {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.accordion .accordion_header .i_box .one_i {
	display: block;
	width: 18px;
	height: 18px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
	position: relative;
}
.accordion .accordion_header.stay .i_box .one_i {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.accordion .accordion_header.stay.open .i_box .one_i {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.accordion .accordion_header.open .i_box {
	-webkit-transform: rotate(-360deg);
	transform: rotate(-360deg);
}
.accordion .accordion_header.stay.open .i_box {
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
}
.accordion .accordion_header .i_box .one_i:before, .accordion .accordion_header .i_box .one_i:after {
	display: flex;
	content: '';
	background-color: #fff;
	border-radius: 10px;
	width: 18px;
	height: 4px;
	position: absolute;
	top: 7px;
	left: 0;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	transform-origin: center center;
}
.accordion .accordion_header .i_box .one_i:before {
	width: 4px;
	height: 18px;
	top: 0;
	left: 7px;
}
.accordion .accordion_header.stay .i_box .one_i:before {
	content: none;
}
.accordion .accordion_header.open .i_box .one_i:before {
	content: none;
}
.accordion .accordion_header.stay.open .i_box .one_i:before {
	content: "";
}
.accordion .accordion_header.open .i_box .one_i:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.accordion .accordion_header.stay.open .i_box .one_i:after {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.accordion .accordion_inner {
	display: none;
	border-left: 2px solid #3286C5;
    border-right: 2px solid #3286C5;
    border-bottom: 2px solid #3286C5;
    border-top: 1px solid #ffffff;
	box-sizing: border-box;
}
.accordion .accordion_inner.stay {
	display: block;
}
.accordion .accordion_inner .accordion_box {
	height: auto;
}
.accordion_contents{
	padding: 15px;
}
/* 2207 buleFrame */
.buleFrame {
  position: relative;
  width: 100%;
  margin: auto;
  border: 2px solid #dae2f0; }
  .buleFrame:before, .buleFrame:after {
    content: "";
    width: 10px;
    height: 10px;
    border-top: solid 2px #356cb6;
    position: absolute;
    top: -2px; }
  .buleFrame:before {
    border-left: solid 2px #356cb6;
    left: -2px; }
  .buleFrame:after {
    border-right: solid 2px #356cb6;
    right: -2px; }

.buleFrame-inner {
  position: relative;
  padding: 15px; }
  .buleFrame-inner:before, .buleFrame-inner:after {
    content: "";
    width: 10px;
    height: 10px;
    border-bottom: solid 2px #356cb6;
    position: absolute;
    bottom: -2px; }
  .buleFrame-inner:before {
    border-left: solid 2px #356cb6;
    left: -2px; }
  .buleFrame-inner:after {
    border-right: solid 2px #356cb6;
    right: -2px; }

.buleFrame-link {
  background: #eff3f9;
  display: table;
  width: 100%;
  height: 88px; }
  .buleFrame-link:hover .buleFrame-img {
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.buleFrame-img {
  display: table-cell;
  width: 117px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s; }
  .buleFrame-img.vertical {
    width: 78px; }

.buleFrame-text {
  background: #eff3f9;
  padding: 20px; }

/* 2209 lightbox */
.modal_images{
	display: flex;
	flex-wrap:wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: flex-start;
}
.modal_images a{
	margin-bottom: 20px;
	margin-left: 10px;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}
.modal_images a:hover{
	opacity: .7;
}
.modal_images img{
	width: 143px;
}

/* 20230807 GoogleMAP */
.google_map iframe {
	width: 100%;
	vertical-align: top;
}

/* ===============================================
  レスポンシブ
  タブレット?端末（共通）
=============================================== */
@media (max-width: 1024px) {
  .pc_none {
    display: block;
  }
  .flex_2_colomn {
    display: block;
  }
  .flex_2_colomn .flex_left {
    width: 100%;
    box-sizing: border-box;
    margin-right: 0;
  }
  .flex_2_colomn .flex_right {
    margin: 0 auto 24px;
  }
  .left_300 .flex_left {
    margin: 0 auto 48px;
    max-width: 300px;
  }
  .left_300 .flex_right {
    width: 100%;
    box-sizing: border-box;
  }
  .left_200 .flex_left {
    margin: 0 auto 48px;
    max-width: 300px;
  }
  .left_200 .flex_right {
    width: 100%;
    box-sizing: border-box;
  }
  .left_100 .flex_left {
    margin: 0 auto 0;
    max-width: 100px;
  }
  .left_100 .flex_right {
    margin: 0;

    width: 100%;
  }
  .both_350 .flex_left {
    width: 100%;
    margin-bottom: 24px;
  }
  .both_350 .flex_left img {
    max-width: 100%;
  }
  .both_350 .flex_right {
    width: 100%;
  }
  .both_350 .flex_right img {
    max-width: 100%;
  }
  .both_colomn .flex_left {
    width: 100%;
  }
  .both_colomn .flex_right {
    width: 100%;
  }
  .align_height .flex_left {
    height: auto;
  }
  .align_height .flex_right {
    height: auto;
  }
  .projects_content.top_content {
    width: 100%;
  }
  .projects_content.top_content section a img {
    height: auto;
    max-height: 730px;
  }
  .projects_content_list {
    width: 100%;
  }
  .details_img_slider .details_slider li img {
    height: 476px;
  }
  .btn_list {
    display: block;
  }
  .btn_list li {
    width: 100%;
  }
  .btn_list li a {
    font-size: 1.6rem;
    padding: 13px 15px;
  }
  .block630 {
    max-width: 100%;
  }
  .btn.circle_btn {
    position: fixed;
    right: 0;
    z-index: 9;
    top: 85%;
  }
  .flex_reverse_sp {
    display: flex;
    flex-wrap: wrap;
    flex-flow: column-reverse;
  }
	/* 2204 accordion */
	.accordion .accordion_header {
		font-size: 18px;
	}
	.accordion .accordion_header .i_box {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}
	/* 2209 lightbox */
	.modal_images a:nth-child(4n){
		 margin-left: 10px;
	}
	.modal_images img{
		width: 225px;
	}
}

/* ===============================================
  レスポンシブ
  タブレット
=============================================== */
@media (max-width: 1024px) and (min-width: 768px) {
  .tb_none {
    display: none !important;
  }
  .news_container {
    width: 100%;
    justify-content: space-around;
  }
  .news_container .news_content_link {
    width: calc((100% - 50px) / 2);
    margin: 0 0 56px;
    max-width: none;
  }
  .news_container .news_content_link:nth-child(n + 7) {
    margin-bottom: 0;
  }
  .news_container .news_content_link img {
    width: 100%;
    height: 246px;
  }
  .projects_content.top_content {
    margin-bottom: 32px;
  }
  .projects_content section a img.img_height {
    height: 380px;
  }
  .projects_content_list > div section a img {
    height: 300px;
  }
  .search_box div.flex {
    display: flex;
  }
  .search_box div input[type=search] {
    width: 200px;
  }
}

/* ===============================================
  レスポンシブ
  スマホ
=============================================== */
@media (max-width: 768px) {
  /* 共通 */
  .sp_none {
    display: none !important;
  }
  /* 各パーツ */
  .indent40 {
    margin: 20px 0 0;
  }
  .projects_content {
    margin-right: 0;
    max-width: 100%;
    margin-bottom: 32px;
  }
  .projects_content section a img {
    max-width: 100%;
  }
  .projects_content section a img.img_height {
    height: 360px;
  }
  .projects_content section a div {
    max-width: 100%;
    width: 100%;
  }
  .projects_content section a div h4 {
    font-size: 2.2rem;
  }
  .projects_content section a div .content_title {
    font-size: 2.2rem;
  }
  .projects_content_list > div {
    width: 100%;
  }
  .projects_content_list > div section a img {
    max-width: 100%;
    height: auto;
    max-height: 730px;
  }
  .projects_content_list > div section a div {
    max-width: 100%;
    width: 100%;
  }
  .projects_content_list > div section a div h4 {
    font-size: 2.2rem;
  }
  .projects_content_list > div:nth-child(n + 2) {
    display: none;
  }
  .projects_content_list.list_3_column {
    display: block;
  }
  .projects_content_list.list_3_column > div {
    max-width: 100%;
    width: 100%;
    margin: 0 0 24px 0;
  }
  .projects_content_list.list_3_column > div section a img {
    max-width: 100%;
    height: auto;
  }
  .projects_content_list.list_3_column > div:nth-child(n + 2) {
    display: block;
  }
  .services_content {
    max-width: 100%;
    margin-right: 0;
  }
  .services_content_list {
    display: block;
  }
  .title_back_blue_line {
    font-size: 2.6rem;

  }
  .flex_2_colomn:not(.sp_retain) .flex_right {
    width: 100%;
    box-sizing: border-box;
  }
  .both_350 .flex_left {
    width: 100%;
  }
  .both_350 .flex_left img {
    max-width: 100%;
  }
  .both_350 .flex_right img {
    max-width: 100%;
  }
  .table_list {
    display: block;
  }
  .table_list dt {
    max-width: 100%;
    width: 100%;
    padding: 12px 12px 6px;
    border: none;
    box-sizing: border-box;
  }
  .table_list dd {
    width: 100%;
    padding: 0 12px 16px;
    box-sizing: border-box;
  }
  .table_list.dt_narrow dt {
    max-width: 100%;
  }
  .table_list.dt_narrow dd {
    width: 100%;
  }
  .span_table tr {
    text-align: center;
  }
  .span_table tr th {
    width: 100%;
    max-width: 100%;
    padding: 12px;
    box-sizing: border-box;
    display: block;
    border: none;
    background: #f3f3f3;
  }
  .span_table tr td {
    width: 100%;
    display: block;
    padding: 12px;
    box-sizing: border-box;
    border: none;
  }
  .img_2_column {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
  .img_2_column li {
    width: 100%;
    padding: 0;
    margin: 0 0 16px;
  }
  .img_2_column li img {
    max-width: 100%;
  }
  .img_3_column {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
  .img_3_column li {
    width: 100%;
    padding: 0;
    margin: 0 0 16px;
  }
  .img_3_column li img {
    max-width: 100%;
  }
  .info_qr > div img {
    display: block;
    margin: auto;
  }
  .article_link {
    width: 100%;
  }
  .article_link .article_img {
    max-width: 100%;
  }
  .article_4_column {
    display: block;
  }
  .article_4_column li {
    width: 100%;
    margin: 0 0 6px 0;
  }
  .article_4_column li:nth-child(4n) {
    margin: 0 0 6px 0;
  }
  .article_4_column li img {
    max-width: 100%;
    height: auto;
  }
  .table_list_line {
    display: block;
  }
  .table_list_line dt {
    max-width: 100%;
  }
  .table_list_line dd {
    width: 100%;
  }
  .news_container {
    display: block;
    width: 100%;
  }
  .news_container .news_content_link {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 50px;
  }
  .news_container .news_content_link:last-child {
    margin-bottom: 0;
  }
  .news_container .news_content_link img {
    width: 100%;
    height: auto;
  }
  .contact form {
    margin: 24px 0 80px;
  }
  .contact form .form_list {
    display: block;
    width: 100%;
  }
  .contact form .form_list dt {
    max-width: 100%;
    padding: 0;
  }
  .contact form .form_list dd {
    width: 100%;
    margin: 0 0 14px;
  }
  .contact form .form_list dd input {
    margin: 0;
  }
  .contact .conf_list {
    display: block;
    width: 100%;
  }
  .contact .conf_list dt {
    max-width: 100%;
    padding: 10px 0;
    border-bottom: none;
  }
  .contact .conf_list dd {
    width: 100%;
    margin: 0;
  }
  .contact .conf_list dd input {
    margin: 0;
  }
  .projects_content {
    margin-right: 0;
    max-width: 100%;
    margin-bottom: 32px;
  }
  .projects_content section a img {
    max-width: 100%;
  }
  .projects_content section a div {
    max-width: 100%;
    width: 100%;
  }
  .projects_content section a div h4 {
    font-size: 2.2rem;
  }
  .projects_content_list > div {
    width: 100%;
    margin: 0;
  }
  .projects_content_list > div section a img {
    max-width: 100%;
  }
  .projects_content_list > div section a div {
    max-width: 100%;
    width: 100%;
  }
  .projects_content_list > div section a div h4 {
    font-size: 2.2rem;
  }
  .projects_content_list > div:nth-child(n + 2) {
    display: none;
  }
  .details_img_slider .details_slider {
    margin: 0 0 20px;
  }
  .details_img_slider .slick-next {
    right: 0;
  }
  .details_img_slider .slick-prev {
    left: 0;
  }
  .details_img_slider .details_slider li img {
    width: calc(100% - 52px);
    height: 276px;
  }
  .details_img_slider .slick-prev,
  .details_img_slider .slick-next {
    width: 22px;
    height: 22px;
  }
  .details_img_slider .slick-prev:before,
  .details_img_slider .slick-next:before {
    width: 6px;
    height: 6px;
    margin-top: -4px;
  }

  .details_img_slider .slick-prev:before {
    right: 5px;
    border-left: solid 3px #FFF;
    border-bottom: solid 3px #FFF;
  }
  .details_img_slider .slick-next:before {
    left: 5px;
    border-top: solid 3px #FFF;
    border-right: solid 3px #FFF;
  }
  .details_img_slider .details_thumb li a {
    margin: 0 auto;
  }
  .normal_table tr {
    font-size: 1.2rem;
  }
  .normal_table tr th {
    padding: 5px;
  }
  .normal_table tr td {
    padding: 5px;
  }
  .mark_table tr {
    font-size: 1.2rem;
  }
  .mark_table tr th {
    padding: 6px 1px;
  }
  .mark_table tr td {
    padding: 6px 1px;
  }
  .search_box {
    display: block;
  }
  .search_box div {
    display: block;
  }
  .search_box div.flex {
    display: flex;
  }
  .search_box div input[type=search] {
    width: 100%;
  }
  .search_box div input[type=submit] {
    margin: 24px auto;
  }
  .tag_list li:last-child {
    margin-right: 16px;
  }
  .sub_management:before{
    content: none;
  }
  .management_list{
    width: 100%;
  }
  .sub_management{
    width: 100%;
    margin-left: 0;  }
  .flex_3_colomn.sp_block{
    display: block;
  }
  .flex_3_colomn.sp_block .flex_left{
    margin-right: 0;
  }
  .flex_3_colomn.sp_block .flex_center{
    margin: 24px 0 24px auto;
  }
	/* 2202 tsuika */
	.sp_mwnone{
		max-width: none;
	}
	/* 2204 accordion */
	.accordion .accordion_header {
		font-size: 16px;
		text-align: left;
		padding: 15px 60px 15px 15px;
	}
	/* 2209 lightbox */
	.modal_images a{
		margin-bottom: 10px;
	}
	.modal_images a:nth-child(4n){
		 margin-left: 10px;
	}
	.modal_images a:nth-child(2n+1){
		 margin-left: 0;
	}
	.modal_images img{
		width: 180px;
	}
}
/*# sourceMappingURL=parts.css.map */


