.constructiondetail #constructionList{
	background: #5199c3;
}

#advantageKV{
	position: relative;
	z-index: 100;
	top: -7em;
	margin-bottom: -7em;
}
#advantageKV .photo{
	width: 90%;
	aspect-ratio: 750 / 280;
}
#advantageKV #advantageKVIn{
	position: absolute;
	top: 3em;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 1580px;
	color: #fff;
	padding: 0 40px;
	display: flex;
	align-items: flex-start;
}
#advantageKV #advantageKVIn h3{
	font-size: 40px;
	line-height: 1.6em;
}
#advantageKV #advantageKVIn .en{
	writing-mode: vertical-rl;
	font-size: 12px;
	font-weight: bold;
	color: #0965A8;
	margin: 1em 1.5em 0 0;
	position: relative;
	padding-bottom: 5em;
}
#advantageKV #advantageKVIn .en:before{
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 1px;
	height: 4em;
	background: #0965A8;
}
#detailTitle{
	position: relative;
	z-index: 100;
	top: -7em;
	margin-bottom: -7em;
	padding: 3em 40px;
	color: #fff;
}
#detailTitle:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 90%;
  height: 100%;
  background: #076EAA;
}
#detailTitleIn{
	max-width: 1500px;
	position: relative;
	z-index: 10;
	margin: 0 auto;
}
#detailTitleIn h3{
	font-size: 40px;
	padding-bottom: 0.5em;
	margin-bottom: 0.7em;
	line-height: 1.3em;
	position: relative;
}
#detailTitleIn h3:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.2em;
  height: 2px;
  background: #fff;
}
#detailTitleIn > p{
	width: 90%;
	font-size: 18px;
	line-height: 1.7em;
	font-weight: bold;
}


.constructionContent:nth-of-type(n+2){
	margin-top: 5em;
}
.constructionContent .halfContent .halfIn{
	background: #fff;
}
.constructionContent .halfContent .halfIn .DescText{
	padding: 1.5em;
	text-align: center;
	position: relative;
	
}
.constructionContent .halfContent .halfIn .DescText:before{
	content: "";
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 20px 20px;
	border-color: transparent transparent #076EAA transparent;

}
.constructionContent .halfContent .halfIn .DescText .name{
	font-size: 18px;
	line-height: 1.5em;
}

#packageOuter{
	padding: 5em 40px;
}
#packageOuterIn{
	max-width: 1200px;
	margin: 0 auto;
}

.tabArea {
  display: flex;
  cursor: pointer;
}
.tabArea .tab {
	width: 50%;
	background: #076EAA;
	text-align: center;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	padding: 1.3em;
	position: relative;
}
.tabArea .tab:nth-of-type(2){
	border-left: #054A83 solid 1px;
}
.tabArea .tab.active {
	background: #054A83;
}
.tabArea .tab:before{
	content: "";
	position: absolute;
	bottom: -0.6em;
	left: 0;
	right: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.7em 0.7em 0 0.7em;
	border-color: #F1F1F1 transparent transparent transparent;
	opacity: 0;
}
.tabArea .tab.active:before{
	border-color: #054A83 transparent transparent transparent;
	opacity: 1;
}
.tabArea .tab span{
	position: relative;
	padding-left: 1.2em;
}
.tabArea .tab span:before{
	content: "";
	border-top: #fff solid 3px;
	border-right: #fff solid 3px;
	width: 0.5em;
	height: 0.5em;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	transform:rotate(45deg);
}
.tabArea .tab.active span:before{
	transform:rotate(135deg);
	top: -0.3em;
}

.contentArea {
	background: #F1F1F1;
}
.contentArea .content {
	display: none;
	padding: 2em 3em;
}
.contentArea .content.show {
	display: block;
}
.contentArea .content ul li{
	background: #fff;

}
.contentArea .content ul li:nth-of-type(n+2){
	margin-top: 1em;
}
.contentArea .content ul li a{
	display: flex;
	align-items: center;
	padding: 1.5em;
	text-decoration: none;
	transition: 0.2s;
}
.contentArea .content ul li a:hover{
	opacity: 0.7;
}
.contentArea .content ul li .name{
	font-weight: bold;
	font-size: 18px;
	min-width: 22em;
	position: relative;
	padding-left: 1.3em;
}
.contentArea .content ul li .name:before{
	content: "";
	border-top: #076EAA solid 3px;
	border-right: #076EAA solid 3px;
	width: 0.5em;
	height: 0.5em;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	transform:rotate(45deg);
}


#constructionTopPhoto{
	background: #5199c3;
	padding: 3em 40px;
}
#constructionTopPhotoIn{
	max-width: 1200px;
	margin: 0 auto;
} 
#constructionTopPhotoIn .halfContent .halfIn{
	width: 43%;
	text-align: center;
	color: #fff;
	position: relative;
}
#constructionTopPhotoIn .halfContent .halfIn .name{
	font-size: 28px;
	font-weight: bold;
	line-height: 1.5;
	margin: 0.8em 0 0.4em;
}
#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):before,
#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):after{
	content: "";
	position: absolute;
	top: 37%;
	left: -23%;
	display: block;
	width: 70px;
	height: 10px;
	background: #fff;
}
#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):before{
	transform: rotate(45deg);
}
#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):after{
	transform: rotate(-45deg);
}
#constructionTopPhotoIn .halfContent .halfIn .btnBrueGrada{
	width: 20em;
	margin: 0 auto;
}

.listBlue li{
	color: #0965A8;
	font-size: 18px;
	line-height: 1.5em;
	list-style: disc;
	margin-left: 1.2em;
}
.listBlue li:nth-of-type(n+2){
	margin-top: 0.5em;
}


.figureTable{
	table-layout: fixed;
}
.figureTable tr th,
.figureTable tr td{
	border-top: #707070 solid 1px;
	border-left: #707070 solid 1px;
	text-align: center;
	font-size: 18px;
	padding: 0.7em 1.5em;
}
.figureTable tr:last-child > *,
.border{
	border-bottom: #707070 solid 1px;
}
.figureTable tr .bNone,
.figureTable.borderNone tr th,
.figureTable.borderNone tr td{
	border: none !important;
}

.figureTable tr th.gray{
	background: #BEBEBE;
	font-weight: normal;
}
.figureTable tr th.red{
	background: #F0C8C8;
	color: #c00000;
	border-left: none;
	border-right: #707070 solid 1px;
}
.figureTable tr th.blue{
	background: #CCDFED;
	color: #0965A8;
	text-align:left;
}
.figureTable tr th.deepblue{
	background: #054A83;
	color: #fff;
}
.figureTable tr td{
	background: #fff;
}
.figureTable tr td.red{
	background: #FAEDED;
	color: #000;
	border-left: none;
	border-right: #707070 solid 1px;
}
.figureTable tr .w20{
	width: 20%;
}
.figureTable tr .txtRed{
	color: #C00000 !important;
}

.figureTable tr .position{
	position: relative;
}
.figureTable tr .arrow{
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15%;
	margin: auto;
}
.figureTable tr .arrow:before{
	content: "";
	background: #0965A8;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 4em;
	height: 5px;
	display: block;
}
.figureTable tr .arrow:after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.5em;
	margin: auto;
	width: 2em;
	height: 2em;
	display: block;
	border-top: #0965A8 solid 5px;
	border-right: #0965A8 solid 5px;
	transform: rotate(45deg);
}

.subtitlef18{
	font-size: 18px;
	font-weight: bold;
}

.exampleArea{
	margin-top: 4em;
	background: #fff;
	padding: 3em;
}
.exampleArea .title{
	font-weight: bold;
	font-size: 26px;
	color: #076EAA;
	margin-bottom: 1em;
}
.exampleArea .image{
	width: 95%;
	margin: 0 auto;
}
.exampleArea .explanation{
	width: 95%;
	margin: 0 auto;
}
.exampleArea .explanation img{
	width: 50%;
	max-width: 500px;
}


#reductionGraphArea{
	padding-bottom: 5em;
}
#reductionGraphArea > .title{
	background: #5199C3;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 22px;
	line-height: 1.5em;
	padding: 1.5em;
	max-width: 1200px;
	width: calc(100% - 80px);
	margin: 80px auto 0;
}/*
#reductionGraphArea > .title{
	background: #076EAA;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 24px;
	line-height: 1.5em;
	padding: 1.5em;
}*/
#reductionGraphIn{
	max-width: 1280px;
	padding: 0 40px;
	margin: 4em auto 0;
}
#reductionGraphIn .halfIn{
	padding: 2em;
	border: #707070 solid 1px;
}
#reductionGraphIn .halfIn .title{
	font-size: 22px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 0.7em;
}
#reductionGraphIn .halfIn .photo{
	width: 90%;
	margin: 0 auto;
}

/*--------220815追加----------*/
.constructionContent .halfContent .halfIn.bg_none{
	background: inherit;
}
.constructionContent .halfContent .halfIn.bg_none .DescText:before{
	display: none;
}
/*共通*/
.w90p{ 	width: 90%;}
.w80p{ 	width: 80%;}
.w75p{ 	width: 75%;}
.w70p{ 	width: 70%;}
.w60p{ 	width: 60%;}
.w55p{ 	width: 55%;}
.w50p{ 	width: 50%;}
.w40p{ 	width: 40%;}
.w35p{ 	width: 35%;}
.w33p{ 	width: 32%;}
.w30p{ 	width: 30%;}
.w25p{ 	width: 25%;}
.w20p{ 	width: 20%;}
.w15p{ 	width: 15%;}
.w1em{	width: 1em;}
.flexBox{
	display: flex;
	justify-content: space-between;
}
.friendly .exampleArea{
	margin-top: 30px;
} 
.supplement_flex{
	display: flex;
	align-items: baseline;
}
/*strengths*/
.eco_leaf{
	padding: 1.5em 3em;
	background: #CCDFED;
}
.eco_leaf.flexBox{
	align-items: center;
}
.eco_leaf .eco_leaf_list{
	text-indent: -0.5em;
	padding-left: 0.5em;
}
.eco_leaf .eco_leaf_list::before{
	content: "●";
	color: #076EAA;
}
.eco_leaf.flexBox p{
	width: 49%;
}
.friendly .exampleArea .title{
	display: block;
	margin-bottom: 10px;
}
.vimeoMovie {
	max-width: 630px;
	margin-left: auto;
	margin-right: auto;
}
.vimeoMovieIn{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.vimeoMovie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.contentArea .content ul li p.desc{
	padding-left: 1em;
}
/*確実・便利*/
.useful .w55p{
	display: flex;
	flex-flow: column;
	justify-content: space-between;
}

/*strengths/ 吹き出し*/
.figureTable tr td.speech span{
	position: relative;
}
.figureTable tr td.speech span img{
	position: absolute;
    top: -50px;
    right: 0;
    width: 50px;
    transform: translate(100%, 0);
}
/*solution/*/
#titleAreaIn .tag.promise{ margin-top: 0.5em;}
.white,p.white{	color: #fff;}
#constructionTopPhotoIn span.f16{
	display: block;
	margin-top: -0.5em;
}
.triangle{
	position: relative;
	margin-top: 4em;
	color: #0965A8;
	text-align: center;
	background: #CCDFED;
	font-size: 18px;
	border: solid 4px #388BBB;
	padding: 1em;
}
.triangle::after{
	content: "";
    position: absolute;
    top: -3em;
    left: 0;
    right: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 35px 50px 0 50px;
    border-color: #388BBB transparent transparent transparent;
}
.figureTable tr td.blue{	background: #CCDFED;}
.figureTable tr .txtBlue{	color: #076EAA;}
.detailed_information{
	background: #F7F7F7;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.detailed_information p.title{
	font-size: 26px;
	font-weight: bold;
}
.detailed_information ul{ padding-left: 1em;}
.detailed_information ul li.detailed_information_list{
	list-style: disc;
}
.detailed_information .detailed_information_left{
	padding: 3em;
	width: 50%;
}
.detailed_information .detailed_information_left .btnBlueGrada a{
	max-width: 400px;
	margin: auto;
}
.detailed_information .detailed_information_right{
	width: 40%;
	padding: 10em;
}
#reductionGraphIn .halfIn .flexBox{	position: relative;}
#reductionGraphIn .halfIn .flexBox .photo{
	width: 48%;
	margin: 0;
}
/*solution/list*/
.constructiondetail .listBlue li::before{
	content: "●";
	/*width: 1em;*/
	padding-right: 1em;
	
}
.constructiondetail .listBlue li{
	list-style: none;
	margin-left: 0;
	display: flex;
}
.constructiondetail .listBlue li .bold{
	white-space: nowrap;
}
.constructiondetail .listBlue li .bold::after{
	content: "：";
	color: #000;
	font-weight: normal;

}
.constructiondetail .listBlue li .black{
	/*text-indent: -1em;
	padding-left: 1em;*/
}
.product13 .listBlue li{
	display: list-item;
}
.product13 .listBlue li .black{
	text-indent: inherit;
	padding-left: 0;
}

/*solution/table*/
.figureTable .table_bilayer tr th,
.figureTable .table_bilayer tr td{ border: #707070 solid 1px !important; border-left: #707070 solid 1px !important; text-align: center;}
.figureTable .table_bilayer tr td{ font-size: 30px;}
.figureTable .table_bilayer tr td.blue{ background: #E5EFF6;}
.figureTable .table_bilayer tr th{	background: #fff; width: 16%; text-align: center; font-weight: bold;}
.figureTable .table_bilayer tr th.whiteGray,
.figureTable .table_bilayer tr td.whiteGray{ background: #F7F7F7;}
.figureTable .table_bilayer tr th.red{ background: #F0C8C8; width: 28%;}
.figureTable .table_bilayer tr th.blue{ background: #CCDFED; width: 28%;}
.figureTable .table_bilayer tr th.gray{ background: #BEBEBE; width: 28%; font-weight: bold;}

.figureTable tr th.vertical {
	text-align: center;
	padding: 0.7em 1.2em;
	position: relative;
}
.figureTable tr th.vertical p{
    writing-mode: vertical-rl;
	white-space: pre;
	top: 50%;
	left: 0;
	transform: translate(50%,-50%);
	position: absolute;
}
.collapse_inherit{
	border-collapse: inherit;
}
#constructionStartOuter.bg_gradation{
	background: linear-gradient(to bottom, #e5e5e5, #F7F7F7);
}
/*solution/06~*/
#constructionTopPhotoIn .halfContent .halfIn .flexBtn,
.detailed_information .flexBtn{
	display: flex;
	justify-content: space-between;
}
#constructionTopPhotoIn .halfContent .halfIn .flexBtn p,
.detailed_information .flexBtn p{	width: 65%;}
#constructionTopPhotoIn .halfContent .halfIn .flexBtn p.movie
,.detailed_information .flexBtn p.movie{	width: 30%;}

/*solution/06 矢印*/
#reductionGraphIn .halfIn .flexBox .arrow{
	position: absolute;
	top: 50%;
	left: 46%;
}
#reductionGraphIn .halfIn .flexBox .arrow:before{
	content: "";
    background: #0965A8;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0.2vw;
    margin: auto;
	max-width: 70px;
    width: 4vw;
    height: 5px;
    display: block;
}
#reductionGraphIn .halfIn .flexBox .arrow:after{
	content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 1.5vw;
    margin: auto;
    width: 2vw;
    height: 2vw;
    display: block;
    border-top: #0965A8 solid 5px;
    border-right: #0965A8 solid 5px;
    transform: rotate(45deg);
}
/*ハット形鋼矢板×堤防補強技術*/
.detailed_information .detailed_information_right.bg09_01{
		background: url(/product/prostruct/images/solution/09/detailed_information_01.jpg) no-repeat center / cover;
	}
.detailed_information .detailed_information_right.bg09_02{
		background: url(/product/prostruct/images/solution/09/detailed_information_02.jpg) no-repeat center / cover;
	}
.detailed_information .detailed_information_right.bg09_03{
		background: url(/product/prostruct/images/solution/09/detailed_information_03.jpg) no-repeat center / cover;
	}

/*ハット形鋼矢板×省スペース対応技術*/
.detailed_information .detailed_information_right.bg10_01{	background: url(/product/prostruct/images/solution/10/detailed_information_01.jpg) no-repeat center / cover;}
.detailed_information .detailed_information_right.bg10_02{	background: url(/product/prostruct/images/solution/10/detailed_information_02.jpg) no-repeat center / cover;}

/*パンくず*/
#Breadcrumb li{
	align-items: flex-end;
}
/*220920*/
.figureTable .title{
	font-weight: bold;
    font-size: 26px;
    color: #076EAA;
    margin-bottom: 1em;
}
.figureTable tr th.blue,.figureTable tr td.blue{
	border-right: #707070 solid 1px;
	border-left: none;
	text-align: center;
}
/*ここまで*/

/*2403*/
/*01*/
.product01 #methodOfConstruction {
    max-width: 1280px;
    padding: 0 40px 80px;
    margin: 4em auto 0;
}
.product01 #methodOfConstruction .title {
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 0.7em;
}
.product01 #methodOfConstruction > .title {
    font-size: 30px;
    margin-bottom: 1em;
}
.product01 #methodOfConstruction section {
    padding: 40px;
    border: #707070 solid 1px;
}
.product01 #methodOfConstruction section > .title {
    font-size: 22px;
}
.product01 #methodOfConstruction section .documentExample {
    border: 1px solid #BEBEBE;
    padding: 30px 40px;
}
.product01 #methodOfConstruction section .documentExample .title {
    font-size: 22px;
}
.product01 #methodOfConstruction section .documentExample ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 3rem;
    padding-left: 1rem;
}
.product01 #methodOfConstruction section .documentExample ul li {
    list-style: disc;
    font-size: 20px;
}
.product01 #methodOfConstruction section.methodExample .fig {
    max-width: 996px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.product01 #methodOfConstruction section.methodExample .fig img {
    height: auto;
}
.product01 #methodOfConstruction section.methodExample .fig .figRow {
    display: flex;
    align-items: flex-start;
    gap: 60px;
}
.product01 #methodOfConstruction section.methodExample .fig .figRow img:first-child {
    width: 458px;
}
.product01 #methodOfConstruction section.methodExample .fig .figRow img:last-child {
    width: 478px;
}
.product01 #methodOfConstruction section.methodExample .fig .figArrow img {
    width: 57px;
    margin-left: 200px;
}
.product01 #methodOfConstruction section.methodExample .fig p {
    font-size: 20px;
}

/*230309*/
/*04*/
.product04 #reductionGraphIn{
	padding: 0;
}
.product04 #reductionGraphIn .halfIn{
	border: none;
}
.product04 #reductionGraphIn .halfIn .title.purple{
	color: #220B7D;
}
.product04 #reductionGraphArea #reductionGraphIn .title{
    font-size: 22px;
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 0.7em;
}

/*05*/
.product05 .textBlue{ color: #076EAA;}
.product05 #reductionGraphIn{
	padding: 0;
}
.product05 #reductionGraphIn .halfIn{
	border: none;
}
.product05 .title{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 0.7em;
}
.product05 .customer_evaluation{
	color: #076EAA;
    text-decoration: underline;
    font-weight: bold;
    font-size: 18px;
}
.product05 .customer_evaluation:hover{
	text-decoration: none;
}

/*07*/
.product07 .title{
	font-size: 32px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 1em;
}
.product07 ul.disc,
.product07 ul.disc li{
	list-style: disc;
	line-height: 2.5;
}
.product07 ul.disc{
	padding-left: 1.5em;
}
.product07 ul.disc li::marker{
	color: #076EAA;
}
.product07 .textBlue{ color: #076EAA;}
.product07 .figureTable .table_bilayer tr th{
	width: auto;
}
.product07 .figureTable .table_bilayer tr th.min{
	font-size: 80%;
}
.product07 .figureTable .table_bilayer tr:nth-child(3n) th{
	width: 10%;
}
.product07 .figureTable .table_bilayer tr td{
	font-size: 18px;
}
.product07 .figureTable tr th.red{
	color: #231F20;
}
.product07 .figureTable tr:first-child th:first-child{
	width: 18%;
}
.product07 .halfContent{
	position: relative;
}
.product07 .halfContent .arrow{
	position: absolute;
	width: 15%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.product07 .num{
	display: flex;
	align-items: flex-start;
}
.product07 .num span{
	background: #076EAA;
    color: #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    font-weight: bold;
    font-size: 18px;
    margin-right: 0.5em;
}
.product07 .num p{
	width: calc(100% - 40px);
}
/*08*/
.product08 .title{
	font-size: 22px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 0.7em;
}
/*11*/
.product11 .figureTable .table_bilayer tr th.textBlue{
	color: #076EAA;
}
.product11 .figureTable .table_bilayer tr th,
.product11 .figureTable .table_bilayer tr td{
	font-size: 14px;
	width: 16%;
	line-height: 1.5;
}
.product11 .title{
	font-size: 22px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 0.7em;
}
.product11 #detailTitleIn > p.right{
	font-size: 14px;
}
.product11 .exampleArea{
	margin-top: 2em;
	line-height: 1.5;
}
/*12*/
.product12 .listBlue li{
	display: flex;
}
.product12 .listBlue li .bold{
	white-space: nowrap;
}/*
.product12 .listBlue li .black{
	text-indent: -1em;
	padding-left: 1em;
}*/
.product12 .exampleArea .title{
	font-size: 18px;
}
.product12 .exampleArea .title span{
	font-size: 22px;
}
/*13*/
.product13 .listBlue li ul {
	padding-left: 3.2em;
}
.product13 .listBlue li ul li{
	color: #000;
	list-style: disc;
}
.product13 .listBlue li ul li::before{
	display: none;
}
.product13 #reductionGraphIn .halfIn .halfContent .photo{
	width: 48%;
	margin: 0;
}
.product13 .redBox{
	background: #FAEDED;
	border: solid 2px #C00000;
	padding: 2em;
	text-align: center;
	font-weight: bold;
}
.product13 .redBox .txtRed{
	color: #C00000;
	font-size: 20px;
	padding: 0 3em;
}

.product13 .redBox .txtRed .arrow{
	left: -3em;
	margin: auto;
	position: relative;
}

.product13 .redBox .txtRed .arrow:before{
	content: "";
	background: #000;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 1.5em;
	height: 3px;
	display: block;
}

.product13 .redBox .txtRed .arrow:after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.5em;
	margin: auto;
	width: .8em;
	height: 0.8em;
	display: block;
	border-top: #000 solid 3px;
	border-right: #000 solid 3px;
	transform: rotate(45deg);
}

/*14*/
.product14 .figureTable .table_bilayer th:nth-child(1){
	width: 10%;
	white-space: nowrap;
}
.product14 .figureTable .table_bilayer th:nth-child(n+2){
	width: 45%;
}
.product14 .figureTable .table_bilayer th .min{
	margin-top: 2em;
	line-height: 1.2;
	font-size: 80%;
}
.product14 .figureTable .table_bilayer td{
	font-size: 18px;
	font-weight: bold;
}
.product14 .figureTable .table_bilayer tr:nth-child(2) td{
	padding: 20px;
}

/*15*/
.product15 #reductionGraphArea #reductionGraphIn .box {
	border: #707070 solid 1px;
	padding: 2rem;
}
.product15 #reductionGraphArea #reductionGraphIn .title {
	color: #076EAA;
	font-weight: bold;
	font-size: 22px;
	margin-bottom: 1rem;
}
.product15 #reductionGraphArea #reductionGraphIn .key {
	color: #076EAA;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 1rem;
}
.product15 #reductionGraphArea #reductionGraphIn .desc {
	font-size: 20px;
	line-height: 150%;
}
.product15 #reductionGraphArea #reductionGraphIn ol {
	list-style: none;
}
.product15 #reductionGraphArea #reductionGraphIn ol li {
	font-size: 18px;
	font-weight: bold;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround > .title {
	font-size: 30px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .key {
	font-size: 24px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .graph {
	max-width: 907px;
	margin: 2rem auto 1rem;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .note {
	text-align: center;
	font-size: 16px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .tech3 > .title {
	font-size: 25px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info {
	max-width: 630px;
	flex: 1;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .title {
	background-color: #076EAA;
	font-size: 28px;
	font-weight: bold;
	line-height: 100%;
	display: block;
	color: white;
	padding: .2rem 1.2rem .7rem;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .desc {
	font-size: 20px;
	font-weight: bold;
	line-height: 150%;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .key {
	color: #076EAA;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: .5rem;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info ol {
	list-style: decimal;
	padding-left: 1.5rem;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info ol li {
	font-size: 20px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .photo {
	width: 392px;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .gray {
	width: 34%;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .red {
	width: 66%;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .graph {
	padding: .7em;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .graph:first-child img {
	max-width: 306px;
	width: 100%;
}
.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .graph:last-child img {
	max-width: 663px;
	width: 100%;
}
.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .title {
	font-size: 30px;
	margin-bottom: 2rem;
}
.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .key {
	font-size: 24px;
}
.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .box {
	display: flex;
	justify-content: center;
	gap: 30px;
}
.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .box div {
	width: 430px;
}

/*16*/
.product16 h4 ~ .exampleArea {
	margin-top: 2.5em;
}
.product16 .fig_1 .box_1 img {
	width: 60%;
}
.product16 .fig_2 .box img {
	width: 60%;
}
.product16 .fig_3 .box img {
	width: 82%;
}
.product16 .fig_3 .note {
	line-height: 1.25;
}

/*17*/
.product17 #detailTitleIn .note {
	display: block;
	margin: 1em 0 0.5em;
	line-height: 1.5;
	font-size: 0.88em;
	font-weight: normal;
}
.product17 h4 ~ .exampleArea {
	margin-top: 2.5em;
}
.product17 .figureTable .table_bilayer {
	table-layout: fixed;
	word-break: break-all;
}
.product17 .figureTable .table_bilayer th,
.product17 .figureTable .table_bilayer td{
	padding: 0.58em 0.25em;
	line-height: 1.25;
	font-size: 1.375em;
	font-weight: bold;
}
.product17 .figureTable .colHalo {
	position: relative
}
.product17 .figureTable .colHalo::after {
	content: '';
	position: absolute;
	top: -8px;
	left: -8px;
	right: -8px;
	bottom: -8px;
	border-style: none solid;
	border-width: 3px;
	border-color: #c00000;
}
.product17 .figureTable .colHaloTop::after {
	content: '';
	position: absolute;
	border-top-style: solid;
	border-radius: 3px 3px 0 0;
}
.product17 .figureTable .colHaloBottom::after {
	content: '';
	position: absolute;
	border-bottom-style: solid;
	border-radius: 0 0 3px 3px;
}
.product17 .noteList li {
	padding-left: 1em;
	position: relative;
}
.product17 .noteList li::before {
	content: '●';
	position: absolute;
	left: 0;
	color: #076eaa;
}
.product17 .fig_1 .table_bilayer .text {
	width: 20%;
	white-space: nowrap;
}
.product17 .fig_1 .table_bilayer .value {
	width: 40%;
}
.product17 .fig_1 .note {
	margin-top: 0.75em;
}
.product17 .fig_2 .figureTable {
	display: flex;
	align-items: center;
}
.product17 .fig_2 .table_bilayer {
	width: 74%;
	flex: 1;
}
.product17 .fig_2 .table_bilayer col:nth-child(1) {
	width: 20%;
}
.product17 .fig_2 .table_bilayer col:nth-child(2) {
	width: 28%;
}
.product17 .fig_2 .table_bilayer col:nth-child(3) {
	width: 24%;
}
.product17 .fig_2 .table_bilayer col:nth-child(4) {
	width: 28%;
}
.product17 .fig_2 .effect {
	width: 26%;
	padding-left: 8px;
	min-width: 160px;
}
.product17 .fig_3 .title {
	margin-bottom: 0;
}
.product17 .fig_3 .table_bilayer .text {
	width: 30%;
}
.product17 .fig_3 .table_bilayer .value {
	width: 10%;
}
.product17 .fig_4 .box img {
	width: 60%;
}
.product17 .fig_4 .note {
	text-align: center;
}
.product17 .fig_5 .box img {
	width: 95%;
}
.product17 .arrow_down p{
	text-align: center;
}
.product17 .arrow_down img{
	max-width: 330px;
}

/*18*/
.product18 h4 ~ .exampleArea {
	margin-top: 2.5em;
}
.product18 .figureTable .table_bilayer {
	table-layout: fixed;
	word-break: break-all;
}
.product18 .figureTable .table_bilayer th,
.product18 .figureTable .table_bilayer td{
	padding: 0.58em 0.25em;
	line-height: 1.25;
	font-size: 1.375em;
	font-weight: bold;
}
.product18 .noteList li {
	padding-left: 1em;
	position: relative;
}
.product18 .noteList li::before {
	content: '●';
	position: absolute;
	left: 0;
	color: #076eaa;
}
.product18 .fig_1 .table_bilayer .head {
	width: 17%;
}
.product18 .fig_1 .table_bilayer .text {
	width: 35%;
}
.product18 .fig_1 .table_bilayer .value {
	width: 16%;
}
.product18 .fig_1 .note {
	margin-top: 0.75em;
}
.product18 .fig_3 .table_bilayer .text {
	width: 20%;
	white-space: nowrap;
}
.product18 .fig_3 .table_bilayer .value {
	width: 40%;
}
.product18 .fig_3 .table_bilayer img {
	width: 70%;
}
.product18 .fig_3 .table_bilayer .feat td {
	padding: 1em 0.5em 1em 5%;
	text-align: left;
}
.product18 .fig_3 .table_bilayer img + p,
.product18 .fig_3 .table_bilayer p + p {
	margin-top: 0.5em;
}
.product18 .fig_3 .table_bilayer .small {
	font-size: 0.85em;
	font-weight: normal;
}
.product18 .fig_4 .box img {
	width: 60%;
}
.product18 .fig_7 .box img{
	width: 50%;
}
.product18 .fig_6 .note {
	margin-top: 2em;
}
.product18 .arrow_down p{
	text-align: center;
}
.product18 .arrow_down img{
	max-width: 500px;
}

/*19*/
.product19 h4 ~ .exampleArea {
	margin-top: 2.5em;
}
.product19 .find {
	border: none;
	background: none;
	padding: 0;
	font-size: 1.25em;
}
.product19 .find::after {
	top: -2.75em;
	border-width: 1.5em 2.25em 0 2.25em;
}
.product19 .sheet {
	display: flex;
	line-height: 1.5;
	gap: 4em;	
}
.product19 .sheet .head {
	color: #076EAA;
	line-height: 1.25;
	font-size: 1.5em;
	font-weight: bold;
}
.product19 .sheet .desc {
	margin-top: 1em;
	font-size: 1.25em;
}
.product19 .sheet .thumb {
	margin-top: 1.5em;
	text-align: center;
}
.product19 .sheet .button {
	margin: 1.5em auto 0;
	max-width: 350px;
}
.product19 .fig_1 .compare {
	margin-top: 1.5em;
}
.product19 .figureTable .table_bilayer tr th,
.product19 .figureTable .table_bilayer tr td{
	font-size: 18px;
	font-weight: bold;
}
.product19 .figureTable .table_bilayer tr td{
	text-align: left;
}
.product19 .figureTable .table_bilayer tr td.center{
	text-align: center;
}
.product19 .figureTable .table_bilayer tr th{
	width: 15%;
}
.product19 .figureTable .table_bilayer tr th:nth-child(1){
	width: 20%;
}
.product19 .figureTable .table_bilayer tr th:nth-child(4){
	width: 65%;
}
.product19 .caption{
	text-indent: -1.25em;
	padding-left: 1.25em;
}

/*20*/
.product20 h4 ~ .exampleArea {
	margin-top: 2.5em;
}
.product20 .figureTable table .inner {
	padding: 1em;
	background: #fff;
}
.product20 .find {
	border: none;
	background: none;
	padding: 0;
	font-size: 1.25em;
}
.product20 .find::after {
	top: -2.75em;
	border-width: 1.5em 2.25em 0 2.25em;
}
.product20 .sheet {
	line-height: 1.5;
}
.product20 .sheet .head {
	color: #076EAA;
	line-height: 1.25;
	font-size: 1.5em;
	font-weight: bold;
}
.product20 .sheet .desc {
	margin-top: 1em;
	font-size: 1.25em;
}
.product20 .sheet .thumb {
	margin-top: 1.5em;
	text-align: center;
}
.product20 .sheet .button {
	margin: 1.5em auto 0;
	max-width: 350px;
}
.product20 .fig_1 .figureTable .inner > img {
	width: 60%;
}
.product20 .fig_1 table {
	table-layout: fixed;
}
.product20 .fig_1 .video {
	padding-top: 56.25%;
	height: 0;
	position: relative;
}
.product20 .fig_1 .video iframe {
	vertical-align: bottom;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.product20 .fig_2 .figureTable .inner > img {
	width: 60%;
}
.product20 .fig_2 .figureTable .inner .balloon {
	position: absolute;
	position: absolute;
	top: 17%;
	right: 83%;
	width: 40%;
}
.product20 .fig_2 .figureTable .inner .balloon + .arrow {
	top: 50%;
}

.product20 .figureTable .table_bilayer tr th,
.product20 .figureTable .table_bilayer tr td{
	font-size: 18px;
	font-weight: bold;
	text-wrap: nowrap;
	padding: 0.7em 0.5em;
}
.product20 .figureTable .table_bilayer tr th:nth-child(1){
	width: 11%;
}
.product20 .figureTable .table_bilayer tr th:nth-child(5){
	width: 32%;
}
.product20 .caption{
	text-indent: -1.7em;
	padding-left: 1.7em;
}

.product20 ul.disc,
.product20 ul.disc li{
	list-style: disc;
	line-height: 1.5;
}
.product20 ul.disc{
	padding-left: 2.5em;
}
.product20 .flexBox{
	align-items: flex-start;
	justify-content: left;
}
.product20 .flexBox > div{
	margin-right: 30px;
}

/*24*/
.product24 #constructionTopPhotoIn .halfContent .halfIn .name {
	line-height: 1.0;
}
.product24 #constructionTopPhotoIn span.f16 {
	letter-spacing: -0.5px;
}
.product24 .title {
    font-size: 32px;
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 1em;
}

/*25*/
.product25 #date04 .modalbox_img p{
	right: 53px;
    bottom: 37%;
    width: 33%;
}
.product25 #date05 .modalbox_img p{
	right: 53px;
    bottom: 48%;
    width: 33%;
}

/*26*/
.product26 #constructionTopPhotoIn .halfContent .halfIn:nth-child(1){
	width: 24%;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn:nth-child(2){
	width: 70%;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn .name{
	font-size: 24px;
	padding-top: 5px;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn:nth-child(1) .btnBlueGrada{
	margin-top: 15px;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):before,
.product26 #constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):after{
    left: -7.5%;
	width: 50px;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn .btn_list{
	margin-top: 20px;
	display: flex;
	align-items: center;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn .btn_list .btnBlueGrada{
	width: 32%;
}
.product26 #constructionTopPhotoIn .halfContent .halfIn .btn_list .btnBlueGrada:nth-child(n+2){
	margin-left: 2.5%;
}
.product26.constructiondetail .listModal li{
    padding: 2em 0;
}
.product26 #date02 .modalbox_img p{
    bottom: 22px;
}
.product26 #date03 .modalbox_img p{
	right: 53px;
    bottom: 41%;
    width: 33%;
}
.product26 #date03 .modalbox_img p a{
	padding: 0.8em;
}

/*civil*/
/*2403*/
.civil sub {
	top: .2em;
}
.civil .listBlue li .bold::after {
	content: "：";
	color: #000;
	font-weight: normal;
}
.civil .box {
	border: 1px solid #BEBEBE;
	padding: 40px;
}
.civil .title {
	color: #076EAA;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 0.7em;
}
.civil .title::before {
	display: none;
}
.civil .desc {
	font-size: 18px;
	line-height: 150%;
}
.civil .btnBlueGrada {
	max-width: 530px;
	margin: 1.5em auto 0;
}
.civil .btnBlueGrada a {
	padding: 1.3em;
}
.civil .btnBlueGrada a span {
	font-size: 20px;
}
.civil .figRow {
	display: flex;
	justify-content: space-between;
}
.civil .hat .figRow div:first-child {
	width: 450px;
}
.civil .hat .figRow div:last-child {
	width: 656px;
}
.civil .nseco .figRow {
	align-items: stretch;
	gap: 30px;
}
.civil .nseco .figRow .fig {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 40px;
}
.civil .nseco .figRow .fig:first-child {
	width: 44.1%;
}
.civil .nseco .figRow .fig:first-child img {
	max-width: 450px;
}
.civil .nseco .figRow .fig:last-child {
	flex: 1;
}
.civil .nseco .figRow .fig:last-child img {
	max-width: 574px;
}
.civil .nseco .figRow .fig .btnBlueGrada {
	width: 100%;
}
.civil .gyro .figRow {
	gap: 30px;
}
.civil .gyro .figRow .fig {
	width: 50%;
}
.civil .nsbox .photo {
	width: 500px;
	margin: 30px auto 0;
}
.civil .nsbox .figRow {
	align-items: center;
	gap: 30px;
}
.civil .nsbox .figRow .fig {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	width: 500px;
}
.civil .nsbox .figRow .fig p {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.civil .nsbox .figRow .figArrow {
	width: 81px;
}

/*ここまで*/

@media screen and (max-width:1279.5px){

	.figureTable tr .arrow{
		left: -5vw;
	}

    /*2403*/
    /*01*/
    .product01 #methodOfConstruction section.methodExample .fig {
        max-width: 77.8vw;
    }
    .product01 #methodOfConstruction section.methodExample .fig .figRow img:first-child {
        width: 35.8vw;
    }
    .product01 #methodOfConstruction section.methodExample .fig .figRow img:last-child {
        width: 37.3vw;
    }
    .product01 #methodOfConstruction section.methodExample .fig .figArrow img {
        width: 4.5vw;
        margin-left: 15.6vw;
    }
    
}

@media screen and (max-width:999.5px){
	.w1000{
		display: block;
	}
	#advantageKV #advantageKVIn h3 {
		font-size: 4vw;
	}
	.contentArea .content ul li .name{
		margin-right: 2em;
		min-width: 36vw;
	}

	
	#detailTitleIn{

	}
	.figureTable tr th,
	.figureTable tr td{
		padding: 0.7em;
	}
	.figureTable tr td img{
		width: 95%;
	}
	.figureTable tr .w20 {
		width: 25%;
	}
	/*20*/
	.product20 .figureTable .table_bilayer tr th, .product20 .figureTable .table_bilayer tr td{
		font-size: 14px;
		padding: 0.7em 0;
	}
}



@media screen and (max-width:767.5px){
	
	#advantageKV #advantageKVIn{
		padding: 0.8em 1em;
		top: 1.5em;
		position: static;
		background: #fff;
		width: 90%;
		margin: 0;
		color: #000;
		align-items: center;
	}
	#advantageKV #advantageKVIn h3 {
		font-size: 16px;
	}
	#advantageKV #advantageKVIn .en{
		margin: 0.5em 1em 0 0;
		font-size: 10px;
		padding-bottom: 3em;
	}
	#advantageKV #advantageKVIn .en:before{
		height: 2em;
	}
	
	
	
	#detailTitle{
		padding: 1em 20px;
	}
	#detailTitleIn h3 {
		font-size: 18px;
	}
	#constructionTopPhoto{
		padding: 2em 20px;
	}
	#constructionTopPhotoIn .halfContent{

	}
	#constructionTopPhotoIn .halfContent .halfIn{
		margin-top: 0 !important;
		width: auto;
	}
	#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2){
		margin-top: 4em !important;
	}
	#constructionTopPhotoIn .halfContent .halfIn .name {
		font-size: 18px;
	}
	#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):before,
	#constructionTopPhotoIn .halfContent .halfIn:nth-of-type(2):after{
		height: 6px;
		width: 10vw;
		top: -2.1em;
		left: 0;
		right: 0;
		margin: auto;
	}
	

	.listBlue li{
		font-size: 14px;
	}
	
	
	.figureTable tr th,
	.figureTable tr td{
		font-size: 12px;
		line-height: 1.3em;
	}
	.figureTable tr .arrow {
		left: -2em;
		width: 6vw;
	}
	.figureTable tr .arrow:before{
		width: 6vw;
		height: 3px;
	}
	.figureTable tr .arrow:after{
		left: auto;
		right: 0;
		width: 1em;
		height: 1em;
		border-top-width: 3px;
		border-right-width: 3px;
	}
	
	.figureTable.spScroll{
		overflow-x: scroll;
	}
	.figureTable.spScroll table{
		width: 1000px;
	}
	
	.exampleArea{
		padding: 1.5em 20px;
	}
	.exampleArea .title{
		font-size: 18px;
	}
	
	#reductionGraphArea > .title{
		font-size: 18px;
		padding: 1.5em 20px;
		width: calc(100% - 40px);
	}
	#reductionGraphIn{
		margin-top: 2em;
		padding: 0 20px;
	}
	#reductionGraphIn .halfIn {
		padding: 1em;
	}
	#reductionGraphIn .halfIn .title {
		font-size: 16px;
	}
	#reductionGraphIn .halfContent .halfIn:nth-of-type(n+2){
		margin-top: 1em;
	}
	
	

	
	.constructionContent:nth-of-type(n+2) {
		margin-top: 3em;
	}
	.constructionContent .halfContent .halfIn .DescText {
		padding: 1em;
	}
	.constructionContent .halfContent .halfIn .DescText .name {
		font-size: 14px;
	}
	
	#packageOuter {
		padding: 2em 20px;
	}
	.tabArea .tab{
		font-size: 16px;
	}
	.contentArea .content {
		padding: 2em 20px;
	}
	.contentArea .content ul li a {
		display: block;
		padding: 1em;
	}
	.contentArea .content ul li .name{
		font-size: 16px;
		margin: 0;
	}
	.contentArea .content ul li .name:before{
		top: 0.3em;
		bottom: auto;
	}
	.contentArea .content ul li .desc{
		margin-top: 0.3em;
	}
	/*-------220815追加---------*/
	.w80p{	width: 100%;}
	.w75p{	width: 100%;}
	.w70p{	width: 100%;}
	.w60p{	width: 100%;}
	.w20p{	width: 50%; margin: 0 auto;}

	/*strengths*/
	.constructionContent .halfContent .halfIn .DescText{
		padding: 0;
	}
	.constructionContent .halfContent .halfIn .DescText p{
		margin-top: 10px;
	}
	.constructionContent .halfContent .f18{
		font-size: 16px;
	}
	.figureTable tr td.speech span img{
		width: 40px;
		top: -40px;
	}

	.halfContent .w55p{	width: 100%;}
	.halfContent .w40p{	width: 100%;}
	.halfContent .w35p{	width: 100%;}
	.halfContent .w33p{	width: 100%;}
	.halfContent .w25p{	width: 100%;}
	.useful .halfContent .w25p,.useful .halfContent .w35p{
		margin-bottom: 20px;
	}
	.useful .halfContent .w25p .DescText p,.useful .halfContent .w35p .DescText p{
		margin-top: 10px;
	}
	.friendly img.w70p{
		width: 100%;
	}
	.detailed_information{
		display: block;
	}
	.detailed_information .detailed_information_left{
		padding: 1.3em;
		width: 100%;
	}
	.detailed_information .detailed_information_right{
		width: 100%;
	}
	.useful .halfContent .w55p{	margin-top: 30px;}
	
	.contentArea .content ul li p.desc{
		padding-left: 0;
	}
	/*strengths/04*/
	.friendly .flexBox{
		display: block;
	}
	.friendly .exampleArea .title{
		margin-top: 30px;
	}
	.eco_leaf{
		padding: 1em;
	}
	.eco_leaf.flexBox p{
		width: 100%;
		font-size: 16px;
	}
	.eco_leaf.flexBox p.btnBlueGrada a{
		margin-top: 10px;
	}

	/*solution/*/
	/*2403*/
	/*01*/
	.product01 #methodOfConstruction {
		padding: 0 20px 40px;
	}
	.product01 #methodOfConstruction .title {
		margin-bottom: 0.7em;
	}
	.product01 #methodOfConstruction > .title {
		font-size: 18px;
		margin-bottom: 1em;
	}
	.product01 #methodOfConstruction section {
		padding: 1em;
	}
	.product01 #methodOfConstruction section > .title {
		font-size: 16px;
	}
	.product01 #methodOfConstruction section .documentExample {
		padding: 1em;
	}
	.product01 #methodOfConstruction section .documentExample .title {
		font-size: 16px;
	}
	.product01 #methodOfConstruction section .documentExample ul {
		display: flex;
		flex-direction: column;
		gap: .2rem;
		padding-left: 1rem;
	}
	.product01 #methodOfConstruction section .documentExample ul li {
		font-size: 14px;
	}
	.product01 #methodOfConstruction section.methodExample .fig {
		gap: 20px;
	}
	.product01 #methodOfConstruction section.methodExample .fig .figRow {
		flex-direction: column;
		gap: 20px;
	}
	.product01 #methodOfConstruction section.methodExample .fig .figRow img:first-child {
		width: 100%;
	}
	.product01 #methodOfConstruction section.methodExample .fig .figRow img:last-child {
		width: 100%;
	}
	.product01 #methodOfConstruction section.methodExample .fig .figArrow img {
		display: block;
		width: 12vw;
		margin-left: auto;
		margin-right: auto;
	}
	.product01 #methodOfConstruction section.methodExample .fig p {
		font-size: 14px;
	}

	#constructionTopPhotoIn .f16{	font-size: 14px;}
	#constructionTopPhotoIn .right,#constructionTopPhotoIn p.right{
		text-align: left;
		padding-left: 1em;
		text-indent: -1em;
	}
	.constructiondetail .exampleArea{	margin-top: 1.5em;}
	#reductionGraphIn .halfIn .flexBox{
		display: block;
	}
	#reductionGraphIn .halfIn .flexBox .photo{
		width: 100%;
		margin: auto;
	}
	#reductionGraphIn .right,
	.constructiondetail .exampleArea .right{ text-align: left;}
	/*solution/06　矢印*/
	#reductionGraphIn .halfIn .flexBox .arrow {
		top: 46%;
		left: 46%;
	}
	#reductionGraphIn .halfIn .flexBox .arrow:before {
		top: 0.5em;
		bottom: 0;
		left: 1em;
		width: 5px;
		height: 2em;
	}
	#reductionGraphIn .halfIn .flexBox .arrow:after {
		left: 0.5em;
		bottom: auto;
		transform: rotate(135deg);
		width: 1em;
		height: 1em;
	}
	/*solution/06 ▼*/
	.triangle{
		margin-top: 4em;
		font-size: 14px;
		padding: 1em 0.5em;
	}
	.triangle::after{
		border-width: 25px 35px 0 36px;
		top: -3em;
	}
	/**/
	#reductionGraphIn .halfIn .photo{
		width: 100%;
	}
	.detailed_information p.title{
		font-size: 16px;
	}
	.figureTable tr th.vertical{
		text-align: center;
	}
	/*solution/06*/
	#constructionTopPhotoIn .halfContent .halfIn .flexBtn,
	.detailed_information .flexBtn{ display: block;}
	#constructionTopPhotoIn .halfContent .halfIn .flexBtn p,
	.detailed_information .flexBtn p{ width: 100%;}
	#constructionTopPhotoIn .halfContent .halfIn .flexBtn p.movie,
	.detailed_information .flexBtn p.movie{ width: 100%; margin-top: 1em;}
	/*solution/09*/
	.figureTable.spScroll table.table_bilayer{ width: 800px; border-bottom: #707070 solid 1px;}
	.constructiondetail #reductionGraphIn  .exampleArea{
		padding: 0;
	}
	/*220920*/
	.figureTable .title{
		font-size: 18px;
	}
	
	/*230309*/
	/*04*/
	.product04 .w50p{ width: 90%;}
	/*05*/
	.product05 .exampleArea .right { text-align: right;	}
	
	.product05 .title{
		font-size: 16px;
	}
	/*06*/
	
	.product06 .constructionContent .noFlex {
		display: block;
		padding-left: 2em;
	}

	.product06 .constructionContent .noFlex::before {
		margin-left: -2em;
	}
	.product06 .constructionContent .noFlex span {
		white-space: normal;
		padding-left: 0;
	}
	/*07*/
	.product07 .title{
		font-size: 16px;
	}
	.product07 .halfContent .arrow{
		width: 65%;
		margin: 1em auto;
		position: initial;
		transform: translate(0);
	}
	/*12*/
	.product12 .exampleArea .title span{
		font-size: 20px;
	}
	.product12 .exampleArea .title{
		font-size: 14px;
	}
	/*13*/
	.product13 #reductionGraphIn .halfIn .halfContent .photo{
		width: 100%;
	}
	.product13 #reductionGraphIn .halfIn .halfContent .photo:nth-child(2n){
		margin-top: 20px;
	}
	.product13 .redBox .txtRed{
		padding: 0;
		font-size: 16px;
	}
	.product13 .redBox .txtRed .arrow{
		margin: 10px auto 0;
		left: 0;
		width: 35px;
		height: 35px;
		display: block;
		transform: rotate(90deg);
	}

	/*14*/
	.product14 .figureTable .table_bilayer tr:nth-child(2) td{
		padding: 1vw;
	}

	/*15*/
	.product15 .appeal .head {
		font-size: 1.285em;
	}
	.product15 .appeal .key {
		font-size: 1.142em;
	}
	.product15 .appeal .desc {
		font-size: 1em;
	}
	.product15 .appeal .figRow {
		gap: 1em;
	}
	.product15 #reductionGraphArea #reductionGraphIn .box {
		padding: 1rem;
	}
	.product15 #reductionGraphArea #reductionGraphIn .title {
		font-size: 18px;
		line-height: 150%;
	}
	.product15 #reductionGraphArea #reductionGraphIn .key {
		font-size: 16px;
		line-height: 150%;
	}
	.product15 #reductionGraphArea #reductionGraphIn .desc {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn ol li {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround > .title {
		font-size: 20px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .key {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .note {
		text-align: LEFT;
		font-size: 14px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .tech3 > .title {
		font-size: 18px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo {
		gap: 30px;
		flex-direction: column;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info {
		max-width: 630px;
		flex: 1;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .title {
		font-size: 18px;
		padding: .2rem .8rem .5rem;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .desc {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info .key {
		font-size: 18px;
		margin-bottom: .5rem;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info ol {
		padding-left: 1.5rem;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .info ol li {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround #methodInfo .photo {
		width: 100%;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .figureTable .table_bilayer .graph {
		padding: .7em;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .graph {
		margin: 1rem auto 0;
	}
	.product15 #reductionGraphArea #reductionGraphIn #techsAround .graph img {
		width: 100%;
	}
	.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .title {
		font-size: 18px;
		margin-bottom: 1rem;
	}
	.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .key {
		font-size: 16px;
	}
	.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .box {
		display: flex;
		justify-content: center;
		gap: 1rem;
		flex-direction: column;
	}
	.product15 #reductionGraphArea #reductionGraphIn #earthquakeTech .box div {
		width: 100%;
	}

	/*16*/

	/*17*/
	.product17 .constructionContent .noFlex {
		display: block;
		padding-left: 2em;
	}

	.product17 .constructionContent .noFlex::before {
		margin-left: -2em;
	}
	.product17 .constructionContent .noFlex span {
		white-space: normal;
		padding-left: 0;
	}
	.product17 .figureTable .table_bilayer th,
	.product17 .figureTable .table_bilayer td{
		padding: 0.5em 0.2em;
		font-size: 13px;
	}
	.product17 .fig_1 .note {
		font-size: 12px;
	}
	.product17 .fig_2 .table_bilayer th,
	.product17 .fig_2 .table_bilayer td{
		font-size: 11px;
	}
	.product17 .fig_2 .figureTable {
		align-items: flex-start;
		margin-right: -1em;
	}
	.product17 .fig_2 .effect {
		margin-top: -1em;
		min-width: 110px;
	}
	.product17 .fig_3 .table_bilayer th,
	.product17 .fig_3 .table_bilayer td{
		font-size: 12px;
	}
	.product17 .fig_4 .box img {
		width: 80%;
	}
	.product17 .fig_4 .note {
		text-align: left;
	}

	/*18*/
	.product18 .constructionContent .noFlex {
		display: block;
		padding-left: 2em;
	}
	.product18 .constructionContent .noFlex::before {
		margin-left: -2em;
	}
	.product18 .constructionContent .noFlex span {
		white-space: normal;
		padding-left: 0;
	}
	.product18 .figureTable .table_bilayer th,
	.product18 .figureTable .table_bilayer td{
		padding: 0.5em 0.2em;
		font-size: 13px;
	}
	.product18 .fig_3 .table_bilayer .feat td {
		padding: 0.5em;
	}
	.product18 .fig_4 .box img,
	.product18 .fig_7 .box img {
		width: 80%;
	}

	/*19*/
	.product19 .find {
		font-size: 1em;
	}
	.product19 .sheet {
		flex-direction: column;
		gap: 2.5em;	
	}
	.product19 .sheet .head {
		font-size: 1.142em;
	}
	.product19 .sheet .desc {
		font-size: 1em;
	}
	.product19 .sheet .thumb img {
		width: 90%;
	}
	.product19 .figureTable .table_bilayer tr th,
	.product19 .figureTable .table_bilayer tr td{
		font-size: 14px;
	}

	/*20*/
	.product20 .find {
		font-size: 1em;
	}
	.product20 .sheet .head {
		font-size: 1.142em;
	}
	.product20 .sheet .desc {
		font-size: 1em;
	}
	.product20 .sheet .thumb img {
		width: 90%;
	}
	.product20 .fig_1 .figureTable .inner > img {
		width: 80%;
	}
	.product20 .fig_2 .figureTable .inner > img {
		width: 65%;
	}
	
	.constructiondetail .listBlue li{
		flex-wrap: wrap;

	}
	.constructiondetail .listBlue li .bold{
		width: calc(100% - 2em);
		white-space: normal;
	}
	.constructiondetail .listBlue li .black{
		flex: 1;
		padding-left: 2em;
	}
	.product20 .figureTable .table_bilayer tr th,
	.product20 .figureTable .table_bilayer tr td{
		font-size: 14px;
	}
	.product20 .flexBox{
		display: block;
	}
	.product20 .flexBox > div{
		margin-right: 0;
	}
	.product20 .flexBox > div:nth-child(2){
		margin-top: 5%;
	}

	/*civil*/
	/*2403*/
	.civil .box {
		padding: 20px;
	}
	.civil .title {
		font-size: 20px;
		line-height: 150%;
		margin-bottom: 0.7em;
	}
	.civil .desc {
		font-size: 14px;
	}
	.civil .btnBlueGrada {
		max-width: inherit;
		margin: 1.5em 0 0;
	}
	.civil .btnBlueGrada a {
		padding: 1.3em;
	}
	.civil .btnBlueGrada a span {
		font-size: 16px;
	}
	.civil .figRow {
		flex-direction: column;
		gap: 20px;
	}
	.civil .hat .figRow div:first-child {
		width: 100%;
	}
	.civil .hat .figRow div:last-child {
		width: 100%;
	}
	.civil .nseco .figRow {
		gap: 30px;
		margin-top: 30px;
	}
	.civil .nseco .figRow .fig {
		gap: 20px;
	}
	.civil .nseco .figRow .fig:first-child,
	.civil .nseco .figRow .fig:last-child {
		width: 100%;
	}
	.civil .nseco .figRow .fig .btnBlueGrada {
		margin-top: 0;
	}
	.civil .gyro .figRow {
		gap: 20px;
	}
	.civil .gyro .figRow .fig {
		width: 100%;
	}
	.civil .nsbox .photo {
		width: 100%;
		margin: 20px auto 0;
	}
	.civil .nsbox .figRow {
		gap: 20px;
		margin-top: 30px;
	}
	.civil .nsbox .figRow .fig {
		gap: 10px;
		width: 100%;
	}
	.civil .nsbox .figRow .fig p {
		font-size: 16px;
	}
	.civil .nsbox .figRow .figArrow {
		width: 40px;
		transform: rotate(90deg);
	}

}

/* 相談スティッキー
----------------------------------------------------------------------- */
#consultSticky {
	position: relative;
	z-index: 999;
}
#consultSticky .button {
	color: #fff;
	background: linear-gradient(90deg, #23027c 0%, #0866a8 100%);
	position: fixed;
	width: 174px;
	right: 0;
}
#consultSticky .button::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 100%;
	display: block;
	background: #23027c;
	transition: 0.2s;
}
#consultSticky .button:hover::before {
	width: 100%;
}
#consultSticky ~ #constructionList #detailTitle {
	padding-left: calc(50% - 750px);
	width: calc(100% - 1em - 174px);
	max-width: 90%;
}
#consultSticky ~ #constructionList #detailTitle:before {
	width: 100%;
}
#consultSticky ~ #constructionList #detailTitleIn {
	max-width: none;
}
#consultSticky ~ #constructionList #detailTitleIn > p {
	width: auto;
}
@media screen and (max-width:1579.5px){
	#consultSticky ~ #constructionList #detailTitle {
		padding-left: 40px;
	}
}
@media screen and (max-width:1279.5px){
	#consultSticky .button {
		width: 152px;
	}
	#consultSticky ~ #constructionList #detailTitle {
		width: calc(100% - 1em - 152px);
	}
}
@media screen and (max-width:1149.5px){
	#consultSticky .button {
		width: 140px;
	}
	#consultSticky ~ #constructionList #detailTitle {
		width: calc(100% - 1em - 140px);
	}
}
@media screen and (max-width:767.5px){
	#consultSticky .button {
		width: 90px;
	}
	#consultSticky ~ #constructionList #detailTitle {
		width: calc(100% - 0.5em - 90px);
	}
	#consultSticky ~ #constructionList #detailTitle {
			padding-left: 20px;
	}
}


/* 機能追加2410 */
.constructiondetail .listModal{
	display: flex;
	justify-content: space-between;
}

.constructiondetail .listModal li{
	position: relative;
	width: 23.5%;
	text-align: center;
	color: #fff;
	background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 26px;
	line-height: 1.3em;
	padding: 2em 0.5em;
}
.constructiondetail .listModal li:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #054A83;
	transition: 0.2s;
}
.constructiondetail .listModal li:hover:before{
	width: 100%;
}
.constructiondetail .listModal li:after {
	content: "";
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 20px;
	height: 16px;
	background: url(/product/prostruct/images/solution/icon_modal.svg) center top/cover no-repeat;
}	
.constructiondetail .listModal li span{
	position: relative;
	z-index: 5;
}






.modalOpen{
	cursor: pointer;
}

#modalContent{
	display: flex;
	align-items: center;
	justify-content: center;
}
#modalContent .modalBox{
    display: none;
	right: 0;
	margin: auto;
	z-index: 10000;
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	max-width: 1280px;
}
#modalContent .modalBG{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: fixed;
	top: 0;
	left: 0;
    width: 100%;
	display: none;
	z-index: 1000;
}
#modalContent .modalAreaDesc{
	max-width: 1280px;
	padding: 0 40px;
}
#modalContent .modalAreaDescIn{
	margin: 0 auto;
	background: #fff;
	position: relative;
	padding: 0;
	border-radius: 0;
	max-height: 90vh;
	padding: 30px;
	overflow-y: auto;
}
#modalContent .modalAreaDesc .modalClose{
	position: absolute;
	top: 1.5em;
	right: 5.2em;
	width: 2.2em;
	height: 2.2em;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	z-index: 10000;
}
#modalContent .modalAreaDesc .modalClose:before,
#modalContent .modalAreaDesc .modalClose:after{
	content: "";
	background:#A3A3A3;
	width: 1.8em;
	height: 3px;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	display: block;
}
#modalContent .modalAreaDesc .modalClose:before{
	transform:rotate(45deg);
}
#modalContent .modalAreaDesc .modalClose:after{
	transform:rotate(-45deg);
}

#modalContent .modalAreaDescIn .txt{
	margin-bottom: 1em;
}


.positionTable{
	position: relative;
	overflow-y: hidden;
}
.positionTable table{
	border-bottom: #a3a3a3 solid 1px;
	border-right: #a3a3a3 solid 1px;
}
.positionTable table tr th,
.positionTable table tr td{
	border-top: #a3a3a3 solid 1px;
	border-left: #a3a3a3 solid 1px;
	padding: 0.7em;
	line-height: 1.5em;
}
.positionTable table tr .bnone{
	border: none !important;
}
.positionTable table tr th{
	text-align: center;
}
.positionTable table tr th.blue01{
	background: #054A83;
	color: #fff;
}
.positionTable table tr th.blue02{
	background: #E5EFF6;
}
.positionTable table tr th.blue_line,
.positionTable table tr td.blue_line{
    border-left: 4px solid #076EAA;
    border-right: 4px solid #076EAA;
}
.positionTable table tr th.blue_line_top,
.positionTable table tr td.blue_line_bottom{
	position: relative;
}
.positionTable table tr th.blue_line_top::after{
	position: absolute;
	border-top: 4px solid #076EAA;
	content: "";
    top: 0;
    left: 0;
    right: 0;
}
.positionTable table tr td.blue_line_bottom::after{
	position: absolute;
	border-top: 4px solid #076EAA;
	content: "";
    bottom: 0;
    left: 0;
    right: 0;
}
.positionTable table tr:nth-of-type(2n) > *{
	background: #f7f7f7;	
}
.positionTable table tr .center{
	text-align: center;
}
.positionTable table tr .w01{
	width: 180px;
}
.positionTable table tr .w02{
	width: 70px;
}
.positionTable table tr .w03{
	width: 100px;
}
.positionTable table tr .red{
	color: #C00000;
}
.positionTable table tr .bgwhite{
	background: #fff !important;
}
.positionTable table tr .bggray{
	background: #f7f7f7 !important;
}
.positionTable table tr .blue{
	color: #076EAA;
	font-weight: bold;
}


.positionTable table tr ul{
	padding-left: 1.2em;
}
.positionTable table tr ul li{
	list-style: disc;
	line-height: 1.4em;
}

.positionTable + .btnBlueGrada{
	margin: 3em auto 0;
	max-width: 200px;
}



.title_2{
	font-size: 32px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 1em;
	padding: 0 0 10px 25px;
	border-bottom: solid 3px #076EAA;
	position: relative;
}
.title_2::before{
	content: "";
    position: absolute;
    width: 10px;
    height: calc(100% - -10px);
    background: #076EAA;
    left: 0;
    top: -13px;
}
#modalContent .title{
	border: none;
	padding: 0;
}
#modalContent .title::before{
	display: none;
}

@media screen and (max-width:1199.5px){
	.positionTable table{
		font-size: 14px;
	}
	.positionTable table tr .w01{
		width: 15vw;
	}
	.positionTable table tr .w02{
		width: 50px;
	}
	.positionTable table tr .w03{
		width: auto;
	}

}

@media screen and (max-width:999.5px){
	.constructiondetail .listModal li{
		font-size: 26px;
	}
}

@media screen and (max-width:767.5px){
	#modalContent .modalAreaDesc .modalClose {
		top: 10px;
		right: 25px;
	}
	#modalContent .modalAreaDesc{
		padding: 0 15px;
	}
	#modalContent .modalAreaDescIn{
		padding: 15px;
	}

	.constructiondetail .listModal{
		flex-wrap: wrap;
        display: block;
        width: 100%;
	}
	.constructiondetail .listModal li{
		width: 100%;
/*		font-size: 18px;*/
        margin-top: 2%;
        height: 133px;
	}
	.constructiondetail .listModal li:nth-of-type(n+3){
		margin-top: 2%;
/*        padding: 59px;*/
	}


	.positionTable table {
		min-width: 800px;
		font-size: 12px;
	}
	.positionTable table tr .w01 {
		width: 130px;
	}
	.positionTable table tr .w03 {
		width: 70px;
	}


	.positionTable + .btnBlueGrada{
		margin-top: 1.5em;
		max-width: 170px;
	}
	.positionTable + .btnBlueGrada > *{
		font-size: 14px;
	}
	
	.title_2{
		font-size: 16px;
	}
	
	.spScroll img{
		width: 1000px;
	}
}




/* 機能追加241023 */
.constructiondetail .listModalBox2{
	display: flex;
	justify-content: center;
    aspect-ratio: 7 / 1;
}
.constructiondetail .listModalBox2 li {
    position: relative;
    width: 40.5%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.3em;
    padding: 33px 0.5em;
    margin: 8px 37px;
      
}

.constructiondetail .listModalBox2 li:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #054A83;
	transition: 0.2s;
}
.constructiondetail .listModalBox2 li:hover:before{
	width: 100%;
}



@media screen and (max-width:1000px){
.constructiondetail .listModalBox2 li {
    font-size: 2.4vw;
      
}
    }
.constructiondetail .listModalBox2 li:after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 20px;
    height: 16px;
    background: url(/product/prostruct/images/solution/icon_modal.svg) center top / cover no-repeat;
}
.constructiondetail .listModalBox2 li span{
	position: relative;
	z-index: 5;
}


.constructiondetail .listModalBox3{
	display: flex;
	justify-content: center;
}
.constructiondetail .listModalBox3 li {
    position: relative;
    width: 34.5%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 26px;
    line-height: 1.3em;
    padding: 59px 0.5em;
    margin: 0 8px;
}

.constructiondetail .listModalBox3 li:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #054A83;
	transition: 0.2s;
}
.constructiondetail .listModalBox3 li:hover:before{
	width: 100%;
}

.constructiondetail .listModalBox3 li:after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 20px;
    height: 16px;
    background: url(/product/prostruct/images/solution/icon_modal.svg) center top / cover no-repeat;
}
.constructiondetail .listModalBox3 li span{
	position: relative;
	z-index: 5;
}

.note {
    font-size: 18px;
    margin-bottom: 1em;
}

@media screen and (max-width:767.5px){
.constructiondetail .listModalBox2 li {
    position: relative;
    width: 100%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 23px;
    line-height: 1.3em;
    margin: 0px 0px;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox2 {

    justify-content: center;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox2 {
    justify-content: center;
    gap: 16px;
    
    
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox3{
	display: flex;
	justify-content: center;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox3 li {
    position: relative;
    width: 100%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 23px;
    line-height: 1.3em;
    padding: 35px 0.5em;
    margin: 0 3px;
    margin-top: 2%;
}
    }

@media screen and (max-width:767.5px){
.note {
    font-size: 14px;
    margin-bottom: 1em;
}
    }

@media screen and (max-width:767.5px){
.constructiondetail .listModalBox3 li span{
	position: relative;
	z-index: 5;
    font-size: 0.6em;
    line-height: normal;
}
    }

@media screen and (max-width:767.5px){
.constructiondetail .listModalBox2{
	display: flex;
	justify-content: center;
    aspect-ratio:  inherit;
/*    width: 70%;*/
    margin: auto;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox2 li span{
	position: relative;
        z-index: 5;
        font-size: 0.6em;
        line-height: normal;
}
    }
@media screen and (max-width:767.5px){
.figureTable.spScroll{
    overflow-x: scroll;
    margin-top: 2em;
    padding: 0 20px;
	}
 }
@media screen and (max-width:767.5px){
.constructiondetail .listModal{
		flex-wrap: wrap;
        display: flex;
        width: 100%;
        justify-content: space-between;
	}
    }
@media screen and (max-width: 767.5px) {
    .constructiondetail .listModal li {
        width: 49%;
        font-size: 18px;
    }
}

@media screen and (max-width: 767.5px) {
	.product06 #reductionGraphIn .flexBox{
		display: block;
	}
}

@media screen and (max-width:767.5px){
.constructiondetail .listModalBox3{
	display: flex;
	justify-content: center;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox3 li {
    position: relative;
    width: 100%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 23px;
    line-height: 1.3em;
    padding: 35px 0.5em;
    margin: 0 3px;
    margin-top: 2%;
}
    }





/* 機能追加241209 */

.listbold_black{
	font-size: 24px;
	line-height: 1.5em;
	list-style: disc;
}
.listbold_black .blue_txt{
	color: #076EAA;
	font-weight: bold;
	
}

.halfContentbox_none .halfIn02 {
    padding: 3em;
    }

.halfContentbox_none{
    display: flex;
    align-items: flex-start;
 }
.center_black{
	margin-top: 0.7em;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
 }
.center_black_02{
	margin-top: 0.7em;
    font-size: 18px;
    text-align: center;
 }
.exampleArea .titleIn{
	font-size: 20px;
	margin-bottom: 1em;
}

.exampleArea .explanationPhoto02 {
    width: 80%;
    margin: 35px auto;
    text-align: center;
    margin-top: 60px;
    }

.right_black{
    margin-top: -5.1em;
    margin-right: 5.2em;
    font-size: 20px;
    text-align: right;
    font-weight: bold;
 }
.figureTable tr td.square_speech span {
    position: relative;
}
.figureTable tr td.square_speech span img {
    position: absolute;
    top: 34px;
    right: 80px;
    width: 125px;
    transform: translate(100%, 0);
}
.examplesubtitle {
    font-size: 18px;
    font-weight: bold;
    margin-top: 60px;
    }
.examplesubtitle span{
    font-size: 18px;
    font-weight: bold;
    color: #076EAA;
    border-radius: 25px 0px 0px 25px;
    }

.examplesubtitle span:before {
  content: '●';
  color: #076EAA;
  margin-right: 8px;
}
.figureTable tr .txtRed02 {
    color: #C00000 !important;
    font-weight: bold;
}
.figureTable tr .red span {
    color: #C00000 !important;
    font-weight: bold;
}

#reductionGraphIn_bluebox {
margin-top: 70px;
}
.figureTable02 tr:nth-child(odd) td{
 background-color: #E5EFF6;   
    
}
.figureTable02 tr:nth-child(even) td{
 background-color: #FBFDFF;   
    
}

.figureTable02 tr th.deepblue {
    background: #054A83;
    color: #fff;
}

.figureTable02 tr th, .figureTable02 tr td {
    text-align: center;
    font-size: 18px;
    padding: 0.7em 1.5em;
}
.figureTable02 tr td.square_speech span {
    position: relative;
}
.figureTable02 tr td.square_speech span img {
    position: absolute;
    top: -85px;
    right: 80px;
    width: 75px;
    transform: translate(100%, 0);
} 
.figureTable02 {
 width: 77%;
    margin: 43px auto;   
    
}
#reductionGraphIn_halfBoxImg .title_3 {
font-size: 27px;
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 1em;
    padding: 70 0 10px 25px;
    position: relative;
}

#reductionGraphIn_halfBoxImg {
    border: solid 1px #707070;
    padding: 3em;
    margin-bottom: 5em;
    
    }
.halfBox_img_subTitle {
    font-weight: bold;
    color: #076EAA;
    font-size: 22px;
    text-align: center;
    padding: 1em;
}
.halfBox_img{
    margin-top: 2em;
    background-color: #f7f7f7;
    padding: 25px;
}

#reductionGraphIn .title_4 {
font-size: 27px;
    color: #076EAA;
    font-weight: bold;
    margin-top: 2em;
}


.constructionContent_linkBox {
display: flex;
border: solid 3px #CCDFED;
padding: 1.5em 5em;
margin-top: 2em;    
    
}

.info_banner_text{
 width: 100%;   
}
.info_banner_text span {
background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 17px;
    padding: 1em;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    width: 28em;
    margin: 1em;
    
}

.constructionContent_linkBox img {
    width: 92%;
    margin-top: 0.3em;
}
.info_banner_img p {
    color: #FFFFFF;
    padding: 0.7em 2.7em;
    font-weight: bold;
    width: 23.8em;
    height: 2.8em;
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    top: -75.8em;
    left: 43em;
    bottom: 0;
    margin: auto;
 }
.constructionContent_linkArea {
    background-color: #fff;
    

 }

.linkAreaOuter_text {
    margin: 74px 0;
    }
.exampleArea .explanation02_Img img{
	width: 50%;
	max-width: 500px;
}

.eco_leaf_boxIn01 {
 display: flex;   

}
.eco_leaf_boxIn02 {
 display: flex;   
 background-color: #CCDFED;
 padding: 3em;
 align-items: center;
 margin-top: 1em;
 gap: 12em;
}
.eco_leaf_img02 span { 
    font-weight: bold;
    font-size: 26px;
    color: #076EAA;
    margin-bottom: 1em;
    
    }
.eco_leaf_boxOuter {
margin-top: 3em;
    background: #fff;
    padding: 3em 4em;
     }

     
.eco_leaf_img02 p{
/*width: 47em;*/
	}
.eco_leaf_imgIn{
width: 85%;

    }
.btnBlueGrada02{
  background: rgb(190 182 213);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 1em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    width: max-content;  
    
 }
.btnBlueGrada02 span {
    color: #fff;
    }



.eco_leaf_title02::before {
/*    content: "●";*/
    color: #076EAA;
    font-size: large;
    
}
.eco_leaf_text01 .eco_leaf_title02{
/*    font-weight: bold;*/
    }
.photo center02 img {
    width: 100%;
    }
#reductionGraphIn_halfBoxImg .titleIn_3 {
    text-align: center;
    background: #076EAA;
    color: #FFFFFF;
    font-size: 18px;
    padding: 0.8em;
    margin-bottom: 1.1em;
    font-weight: bold;
}
.halfBoxOnter {
    display: flex;
    margin-bottom: 2em;
}
.exampleArea .title_image {
    font-weight: bold;
    font-size: 24px;
    color: #076EAA;
    margin-bottom: 1em;
	}
.bold_bluebox {
	position: relative;
    margin-top: 1em;
    color: #0965A8;
    text-align: center;
    background: #CCDFED;
    font-size: 24px;
    border: solid 4px #388BBB;
/*    padding: 1em;*/
    border-radius: 10px;
	padding: 0.5em;
	letter-spacing: 0.05em;
	font-weight: bold;

	}
.bold_bluebox_02 {
	position: relative;
    margin-top: 1em;
    color: #0965A8;
    text-align: center;
    background: #CCDFED;
    font-size: 24px;
    border: solid 4px #388BBB;
/*    padding: 1em;*/
    border-radius: 10px;
	padding: 0.5em;
	letter-spacing: 0.05em;
	font-weight: bold;

	}
.bold_redbox {
	position: relative;
    color: #E24949;
    text-align: center;
    background: #FBE3E3;
    font-size: 18px;
    border: solid 2px #E24949;
    padding: 0.9em;
    letter-spacing: 0.05em;
    margin: 2em 1em;
	font-weight: bold;

	}
.listblack li{
	font-size: 18px;
	line-height: 1.5em;
	list-style: disc;
	margin-left: 1.2em;
}
.listblack li:nth-of-type(n+2){
	margin-top: 0.1em;
/*	margin-bottom: 1.1em;*/
}
.constructiondetail .listBlack li::before{
	content: "●";
	/*width: 1em;*/
	padding-right: 1em;
	color: #076EAA;
	
}
.boxTitlered {
    font-size: 18px;
    color: #E24949;
    font-weight: bold;
    margin-bottom: 0.7em;
    
     }
.btnBlueGrada_modalIn a, :hover .btnBlueGrada_modalIn > *:hover {
    color: #fff !important;
}


.btnBlueGrada_modalIn a, .btnBlueGrada_modalIn > * {
    background: rgb(35, 2, 124);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 0.6em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    margin: 2em 25em;
}
.modalAreaDescIn .modalBox_img_02 img{
    width: 90%;
    margin: auto;
    display: block;
	margin-top: 2em;
}

.constructiondetail .listModalBox5 {
    display: flex;
    justify-content: center;
}

.constructiondetail .listModalBox5 li {
    position: relative;
    width: 34.5%;
    text-align: center;
    color: #fff;
    background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.3em;
    padding: 30px 0;
    margin: 0px 8px;
}

.constructiondetail .listModalBox5 li:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #054A83;
	transition: 0.2s;
}
.constructiondetail .listModalBox5 li:hover:before{
	width: 100%;
}

.constructiondetail .listModalBox5 li:after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 20px;
    height: 16px;
    background: url(/product/prostruct/images/solution/icon_modal.svg) center top / cover no-repeat;
}
.constructiondetail .listModalBox5 li span{
	position: relative;
	z-index: 5;
}
.triangle_02{
	position: relative;
	margin-top: 4em;
	color: #0965A8;
	text-align: center;
	background: #CCDFED;
	font-size: 24px;
	border: solid 4px #388BBB;
	padding: 1em;
}
.triangle_02::after{
	content: "";
    position: absolute;
    top: -3em;
    left: 0;
    right: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 35px 50px 0 50px;
    border-color: #388BBB transparent transparent transparent;
}

.title_modal03_txtIn{
	font-size: 22px;
	color: #076EAA;
	font-weight: bold;
	margin-bottom: 0.7em;
}





/* SP */
@media screen and (max-width: 767.5px) {
    #constructionStartIn h4, .listbold_black p {
        font-size: 18px;
        line-height: 1.3em;
    }
}

@media screen and (max-width: 767.5px) {
.halfContentbox_none {
    display: block;
    align-items: flex-start;
}
    }
@media screen and (max-width: 767.5px) {
.center_black {
    margin-top: 0.7em;
    font-size: 19px;
    text-align: center;
    font-weight: bold;
}
    }
@media screen and (max-width: 767.5px) {
.right_black {
    margin-top: -4.1em;
    margin-right: 8em;
    font-size: 16px;
    text-align: right;
    font-weight: bold;
}
    }

@media screen and (max-width: 767.5px) {
    .figureTable02.spScroll {
        overflow-x: scroll;
        margin-top: 2em;
        padding: 0 20px;
    }
}
/*
@media screen and (max-width: 767.5px) {
    .figureTable02.spScroll {
        overflow-x: scroll;
    }
}
*/
@media screen and (max-width: 767.5px) {
    .figureTable02.spScroll table {
        width: 1000px;
    }
}

@media screen and (max-width: 767.5px) {
    #reductionGraphIn_halfBoxImg .halfBox_img {
    display: block;
/*    margin: inherit;*/
    padding: 1em;
/*    background-color: #F7F7F7;*/
    

    }
}
@media screen and (max-width: 767.5px) {
#reductionGraphIn_halfBoxImg .title_3 {
    font-size: 18px;
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 1em;
    padding: 70 0 10px 25px;
    position: relative;
}
    }
@media screen and (max-width: 767.5px) {
#reductionGraphIn .title_4 {
    font-size: 18px;
        color: #076EAA;
        font-weight: bold;
        /* margin: 1em; */
        margin-top: 1em;
}
    }


@media screen and (max-width: 767.5px) {
.constructionContent_linkBox {
   display: block;
    border: solid 3px #CCDFED;
	padding: 0.8em;
    margin-top: 2em;
}
    }

@media screen and (max-width: 767.5px) {
.eco_leaf_boxIn01 {
    display: block;
}
    }

@media screen and (max-width: 767.5px) {
.eco_leaf_imgIn {
    width: 80%;
    margin: 0em 2em 2em 1em;
}
    }

@media screen and (max-width: 767.5px) {
    .eco_leaf_title {
        width: 100%;
    }
}
@media screen and (max-width: 767.5px) {
    .eco_leaf_boxIn02 {
    background-color: #CCDFED;
    padding: 2em;
    align-items: center;
    margin-top: 1em;
    display: block;
}
    }
@media screen and (max-width: 767.5px) {
.btnBlueGrada02 {
    background: rgb(190 182 213);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
/*    display: block;*/
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 13px;
    padding: 1em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    width: 100%;
    margin-top: 10px;
}
    }
@media screen and (max-width: 767.5px) {
.eco_leaf_img02 span {
    font-weight: bold;
    font-size: 19px;
    color: #076EAA;
	white-space: nowrap;
}
    }
@media screen and (max-width: 767.5px) {
.center_black_02{
    font-size: 11px;
    text-align: center;
	line-height: normal;
 }
	 }
@media screen and (max-width: 767.5px) {
.bold_bluebox {
    position: relative;
    margin-top: 3em;
    color: #0965A8;
    text-align: center;
    background: #CCDFED;
    font-size: 12px;
    border: solid 4px #388BBB;
    /* padding: 1em; */
    border-radius: 10px;
    padding: 0.5em;
    letter-spacing: 0.05em;
}
	}
@media screen and (max-width: 767.5px) {
.bold_bluebox_02 {
    position: relative;
    margin-top: 1em;
    color: #0965A8;
    text-align: center;
    background: #CCDFED;
    font-size: 12px;
    border: solid 4px #388BBB;
    /* padding: 1em; */
    border-radius: 10px;
    padding: 0.5em;
    letter-spacing: 0.05em;
}
	}
@media screen and (max-width: 767.5px) {
.exampleArea .explanationPhoto02 {
    width: 100%;
    margin: 35px auto;
    text-align: center;
    
    }
}
@media screen and (max-width: 767.5px) {
.examplesubtitle {
    font-size: 15px;
    font-weight: bold;
    margin-top: 30px;
    }
.examplesubtitle span{
    font-size: 15px;
    font-weight: bold;
    color: #076EAA;
    border-radius: 25px 0px 0px 25px;
    }

.examplesubtitle span:before {
  content: '●';
  color: #076EAA;
  margin-right: 8px;
}
	}
@media screen and (max-width: 767.5px) {
.constructionContent_linkArea {
    background-color: #fff;
    margin-top: 2em;
}
}
@media screen and (max-width: 767.5px) {
.info_banner_text span {
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
     font-size: 13px; 
    padding: 1em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    margin: 1em;
	width: auto;
}
}
@media screen and (max-width: 767.5px) {
.eco_leaf_boxOuter {
    padding: 3em 2em;
}
	}
@media screen and (max-width: 767.5px) {
eco_leaf_img {
	width: 80%;
    padding: 0em -9em;
    margin: auto;
}
	}
@media screen and (max-width: 767.5px) {
.bold_redbox {
    position: relative;
        margin-top: 3em;
        color: #E24949;
        text-align: center;
        background: #FBE3E3;
        font-size: 12px;
        border: solid 2px #E24949;
        /* padding: 1em; */
        border-radius: 0;
        padding: 1em;
        letter-spacing: 0.05em;
        
}
	}
@media screen and (max-width: 767.5px) {
.btnBlueGrada_modalIn a, :hover .btnBlueGrada_modalIn > *:hover {
    color: #fff !important;
}
	}

@media screen and (max-width: 767.5px) {
.btnBlueGrada_modalIn a, .btnBlueGrada_modalIn > * {
    background: rgb(35, 2, 124);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 0.6em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    margin: 1em 3em;
}
	}
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox5{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
    }
@media screen and (max-width:767.5px){
.constructiondetail .listModalBox5 li {
    position: relative;
        width: 49%;
        text-align: center;
        color: #fff;
        background: radial-gradient(circle, #076eaa 0%, #054a83 100%);
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: bold;
        line-height: 1.3em;
        padding: 35px 40px;
        font-size: 18px;
        height: 133px;
		margin: 0.1em;
}
    }




/* 機能追加250120 */
.detailed_information_image02 {
	display: flex;
	margin-top: 30px;
}
.detailed_information_image02 p.title {
	font-size: 26px;
    font-weight: bold;
    color: #076EAA;
    padding: 0 16px 10px;
}
.detailed_information_image02 p.titleIn {
	font-size: 20px;
    padding: 0 2em 1em;
}
.detailed_information_image02 p.titleIn sup{
	font-size: 14px;
}
.detailed_information_image02 .annotated_text {
	padding: 0 13px 0 2em;
    text-indent: -1em;
}
.detailed_information_image02 p.titleIn02 {
    font-size: 22px;
    padding: 30px 0 15px 0;
    font-weight: bold;
    color: #076EAA;
}

.detailed_information_image02_left .photo {
/*	max-width: 65%;*/
}


.detailed_information_image02 .flexblueBtn {
 display: flex;
 gap: 1em;   
}
.detailed_information_image02 .flexblueBtn .link_btnBlueGrada {
	width: 30%;
	background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
}
.detailed_information_image02 .flexblueBtn .link_btnBlueGrada a{
	background: none;
}
.detailed_information_image02_right {
margin-left: 3em;
width: 84%;
}
.detailed_information_image02_right .right_area01 {
	background: #E5F0F6;
	padding: 30px 0;
}

.constructiondetailimage02 .listModal li:after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 20px;
    height: 16px;
    background: url(/product/prostruct/images/solution/icon_modal.svg) center top / cover no-repeat;
}
.btnBlueGrada03{
  background: rgb(190 182 213);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 1em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;   
 }
.btnBlueGrada03 span {
    color: #fff;
}
.btnBlueGrada03::after{
	content: "";
    position: absolute;
    bottom: 15px;
    right: 15px;
    width: 20px;
    height: 16px;
    background: url(/product/prostruct/images/solution/22/icon_modal.png) center top / cover no-repeat;
}

.annotated_area{
	margin-top: 10px;
}

.boxTitleblue {
    font-size: 22px;
    color: #076EAA;
    font-weight: bold;
    margin-bottom: 0.7em;
}


.modalBox_white .boxTitlewhite {
    font-size: 18px;
    color: #076EAA;
    font-weight: bold;
/*    margin-bottom: 0.7em;*/
    
     }
.modalBox_white {
background-color: #E5F0F6;
padding: 2em;
margin-bottom: 2em;
}    

.boxTitleblue_02 {
    font-size: 18px;
    color: #076EAA;
    font-weight: bold;

}
.boxTitleblue_03 {
    font-size: 18px;
    color: #076EAA;
    font-weight: bold;
    margin: 2em 0 0.1em 0;
}
.boxTitleblue_04 {
    font-size: 16px;
    color: #076EAA;
    font-weight: bold;
    margin-left: 1em;

}

.modalAreaDescIn .modalBox_img{
margin-top: 1em;
}

.modalAreaDescIn .modalBox_img img{
    width: 80%;
    margin: auto;
    display: block;
}
.txt01 span{
color: #076EAA;
font-weight: bold;
}

.modalAreaDescIn .txt01 {
margin: 0em 1em 0.1em 1.1em;
font-size: 15px;
}

.modalBox_white .boxTitlewhite .txt{
margin-top: 1em;   
}


.zam_detail_btnBlueGrada02 {
background: rgb(35, 2, 124);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 0.5em 0.5em 0.2em 0.5em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 2.3em;
    cursor: pointer;
    max-height: max-content;
    margin-top: 0.6em;

 }
.zam_detail {
padding: 0.5em 3em;
background: #CCDFED;
width: 80%;
margin: 1em 8em 1em 6.5em;
}

.zam_detail_btnBlueGrada span {
    color: #fff;
    font-weight: bold;
}

.zam_detail_list {
   font-weight: bold;
    padding: 1em;
    color: #076EAA;
    font-size: 20px;
    }
    

.zam_detail_btnBlueGrada {
background: rgb(35, 2, 124);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    padding: 0.5em 0.5em 0.1em 0.5em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 2.3em;
    cursor: pointer;
    max-height: max-content;
    margin-top: 0.6em;

 }

.zam_detailbtnBlueGrada a:before, .zam_detailbtnBlueGrada > *:before {
    content: "";
    position: absolute;
    top: 0;
    left: -1px;
    width: 0;
    height: 100%;
    display: block;
    background: #23027C;
    transition: 0.2s;
}

.zam_detail02 {
padding: 0.5em 3em;
background: #CCDFED;
width: 80%;
margin-bottom: 1em;    

}

.zam_detail_btnBlueGrada02 span {
    color: #fff;
    font-weight: bold;
    font-size: 15px;
}

.zam_detail_list02 {
   font-weight: bold;
    padding: 1em;
    color: #076EAA;
    font-size: 20px;
    }

.zam_detailbtnBlueGrada02 a:before, .zam_detailbtnBlueGrada02 > *:before {
    content: "";
    position: absolute;
    top: 0;
    left: -1px;
    width: 0;
    height: 100%;
    display: block;
    background: #23027C;
    transition: 0.2s;
}





@media screen and (max-width: 767.5px) {
.detailed_information_image02 {
	display: block;
}
    }

@media screen and (max-width: 767.5px) {
.detailed_information_image02 .flexblueBtn {
    display: flex;
    justify-content: center;
    }
	.detailed_information_image02 .flexblueBtn .link_btnBlueGrada{
		display: flex;
		justify-content: center;
		align-items: center;
	}
}

    

@media screen and (max-width: 767.5px) {
.detailed_information_image02_right {
    width: 100%;
    margin: 1em 0 4em;
}
    }
@media screen and (max-width: 767.5px) {
.detailed_information_image02 p.titleIn02 {
    font-size: 18px;
    font-weight: bold;
    color: #076EAA;
    text-align: center;
}
    }

@media screen and (max-width: 767.5px) {
.detailed_information_image02 p.title {
    font-size: 20px;
    font-weight: bold;
    color: #076EAA;
    padding: 0 1em 0px 1em;
}
    }


@media screen and (max-width: 767.5px) {
.btnBlueGrada03 {
    background: rgb(190 182 213);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 13px;
    padding: 1em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 1.3em;
    cursor: pointer;
    width: 100%;
    margin-top: 10px;
}
    }

@media screen and (max-width: 767.5px) {
.detailed_information_image02 p.titleIn {
    font-size: 17px;
}
    }


@media screen and (max-width: 767.5px) {
.zam_detail {
display: block;
padding: 0.5em 1em;
background: #CCDFED;
width: 100%;
margin: 1em 8em 1em 0.1em;   
    
    }
    }

@media screen and (max-width: 767.5px) {
.zam_detail_list {
font-weight: bold;
        padding: 1em 2.2em;
        color: #076EAA;
        font-size: 17px;
}
    }

@media screen and (max-width: 767.5px) {
    .zam_detail_btnBlueGrada {
background: rgb(35, 2, 124);
    background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 14px;
    padding: -1.5em 0.5em 0.1em 0.5em;
    position: relative;
    transition: 0.2s;
    font-weight: bold;
    line-height: 2.3em;
    cursor: pointer;
    max-height: max-content;
    margin-top: -0.4em;
}
}

@media screen and (max-width: 767.5px) {
.zam_detail02 {
display: block;
padding: 0.5em 1em;
background: #CCDFED;
width: 100%;
margin: 1em 8em 1em 0.1em;   
    
    }
    }

@media screen and (max-width: 767.5px) {
.zam_detail_list02 {
font-weight: bold;
padding: 1em 1.1em;
color: #076EAA;
font-size: 17px;
}
    }

@media screen and (max-width: 767.5px) {
    .zam_detail_btnBlueGrada02 {
background: rgb(35, 2, 124);
        background: linear-gradient(45deg, #23027C 0%, #0866A8 100%);
        display: block;
        color: #fff;
        text-decoration: none;
        text-align: center;
        font-size: 13px;
        padding: -1.5em 0.5em 0.1em 0.5em;
        position: relative;
        transition: 0.2s;
        font-weight: bold;
        line-height: 2.3em;
        cursor: pointer;
        max-height: max-content;
        margin-top: -0.4em;
}
}


@media screen and (max-width: 767.5px) {
.modalBox_white .boxTitlewhite {
    font-size: 14px;
    color: #076EAA;
    font-weight: bold;
    /* margin-bottom: 0.7em; */
    line-height: 1.6em;
}
    }
@media screen and (max-width: 767.5px) {
.zam_detail_btnBlueGrada02 span {
    color: #fff;
    font-weight: bold;
    font-size: 13px;
}
    }


/* 機能追加250319 */

.modalAreaDescIn .modal_Subtxt {
	display: flex;
	}

.modalAreaDescIn .modal_SubtxtIn {
/*	margin: 0 3em;*/
	}
.modalAreaDescIn .modal_SubtxtIn_02 {
	margin: 0 17em;
}
.modalAreaDescIn .titleIn03 {
	font-weight: bold;
	}
.modalAreaDescIn .titleIn04 {
	font-weight: bold;
	color: #076EAA;
	}

.modalAreaDescIn .titleIn03 span{
	color: #076EAA;
	font-size: 24px;
	}
.btnBlueGrada02 span:nth-of-type(2){
	color: #fff;
	font-size: 14px;
	font-weight: lighter;
}

#modalContent .modalAreaDescIn .txt02{
	margin: 0.1em 9em;
    font-size: 13px;
}

/* 追加250805 */

.ats {
	font-size: 10px;
}
