@charset "utf-8";

a{
	text-decoration: underline; !important
}

a:hover{
	text-decoration:none;
}

.footer a:hover{
	text-decoration:none; !important
}

.box-2{
	display:inline-flex;
	width:100%;
	margin:0 auto;	
}

.box-2 div {
  width: 50%;
  padding: 20px;
  text-align:center;
}

h2.title-04 {
    color: #364e96;
    margin: 20px 5px 30px 5px;
    padding: 0.5em 5px;
    border-top: solid 3px #364e96;
    border-bottom: solid 3px #364e96;
	font-size: 2em;
	line-height: 100%;
}

h3.title-05 {
    color: #000;
    padding: 0.4em 1.2em;
    width: 100%;
    margin: 1em 1.0em 1em 0;
    font-size: 1.75em;
    position: relative;
    border-bottom: solid 3px #d7d7d7;
    background-color: #f7f7f7;
}


h3.title-05::before {
    background-color: #0168b3;
    border-radius: 5px;
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    width: 8px;
    height: 80%;
    text-align: center;
}

h3.title-05::after {
    background-color: #D3EDFB;
    border-radius: 5px;
    content: '';
    position: absolute;
    top: 5px;
    left: 18px;
    width: 8px;
    height: 80%;
	background-image:none;
	transform:none;
}

h3.title-06 {
    color: #000;
    padding: 20px;
    width: 100%;
    margin: 0 auto;
    font-size: 1.3em;
    position: relative;
    border-top: solid 1px #006eb0;
	border-bottom: none;
	box-shadow: none;
	text-align:center;
}

h3.title-06::after {
    content: none;
}

h3.title-06 a {
    color:#006eb0;
}

h3.title-06 a:hover {
	text-decoration: none;
}

h4.title-03 {
	padding:0.5em 0.3em;
	background:#CCECFB;
	border-left:12px double #0094d6;
	font-size: 1.5em;
	margin:0.5em;
}

h4.title-02 {
	padding:0.5em 0.3em;
	background:#CCECFB;
	border-left:12px double #0094d6;
	font-size: 1.5em;
	margin:0.5em;
}

h4.title-01 {
    position: relative;
    padding: 0.1em 2.2em;
    width: 95%;
    margin: 0 1.0em 15px 10px;
    border-bottom: 2px solid #D3EDFB;
    box-shadow: 0px 4px 0px 0px #0168b3;
    font-size: 1.5em;
	border-left:none;
	background:none;
}

h4.title-01::after {
    position: absolute;
    content: '';
    bottom: 35%;
    left: .8em;
    width: 12px;
    height: 12px;
    background-color: #0168b3;
    transform: rotate(45deg);
}

ul.service {
	font-size: 90%;
	margin: 20px 0;
}

ul.service li {
  padding: 0;
}

.table_design01 {
	border-collapse: collapse;
	width: 100%;
	max-width: 750px;
	margin:auto;
}

.table_design01 th, .table_design01 td {
	border: 1px solid #ddd;
	background-color: #fff;
	padding: 1em;
}

.table_design01 th {
	background-color: #4682b4;
	color: #fff;
	font-weight: bold;
	text-align: center;
	min-width: 4em;
}

.table_design01 td:first-child {
	background: #ebebeb;
	font-weight: bold;
	width:30%;
}

.table_design01 td li{
	margin-left: 15px !important;
}

ol {
	list-style: none;
	counter-reset: number;
	margin: 20px;
}

ul {
	margin: 5px 0;
}

ul li {
	position: relative;
	margin-left: 30px;
	padding-top:5px;
	list-style: disc;
}

ol li {
	position: relative;
	padding-top:10px;
}

ol li::before {
	counter-increment: number;
	content: '（' counter(number) '）';
}

.company_navi li,
.company_navi-02 li,
.company_navi-03 li{
	list-style:none;
	margin: 15px;
	padding:0 5px;
	text-align: center;
}

.company_navi li a,
.company_navi-02 li a,
.company_navi-03 li a{
  text-decoration: none;
}

.company_navi-02,
.company_navi-03{
	display: flex;
	justify-content:center;
	align-items:center;
	margin:20px 0;
}

.company_navi-02 a,
.company_navi-03 a{
	color:#000;
	font-weight:bold;
}

.company_navi-02 li:hover,
.company_navi-03 li:hover{
	border-bottom:3px solid #4D9BE8;
}

#breadcrumb li{
	margin: 10px 0;
	padding:0 5px;
}

.left_box{
	float:left;
}

.left_box img{
	width:200px;
}

.left{
	text-align:left !important;
}

ol.message{
	margin:0 20px 20px 60px;
}

ol.cjk-ideographic li {
	list-style-type: cjk-ideographic;
}

ol.cjk-ideographic ::before{
	display: none;
}

ul.good li {
	list-style-type: none!important;
}

ul.good {
	position: relative;
}

ul.good p {
  margin: 15px 20px 15px 80px;
}

li.list_good::before{
	content: "";
	display: inline-block;
	background-image: url("../images/about/good_icon2.png");
	background-repeat:no-repeat;
	background-size: cover;
	width: 4em;
	height: 4em;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

li.list_good{
	border-bottom:1px dotted #999;
}

.margin p.img_30 {
  text-align: right;
}

p.img_30{
	width: fit-content;
	text-align: right;
}

div.line{
	border-bottom: 1px solid #CCC;
	clear:both;
}

.box_left {
    width: 30%;
    float: left;
    text-align: center;
    margin: 30px 0;
}

.box_right {
    width: 70%;
    float: left;
    text-align: left;
	margin:25px 0;
}

.box_left img {
    width: 65%
}

dl.profile{
	display: flex;
	flex-wrap: wrap;
	padding:10px 20px 0 0;
}

dl.profile dt{
	width: 20%;
	text-align: right;
	padding: 0;
	font-weight: bold;
}

dl.profile dd{
	width: 80%;
	padding: 0;
}

.box_right p {
	margin: 0;
	padding: 0 !important;
}

p.line_02{
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 3px;
	text-decoration-color: #01b1ff;
}

p.line_02::before{
	font-family: "Font Awesome 5 Free";
	content:"\025cf";/*アイコンの種類*/
	position: absolute;
	color: #01b1ff;/*アイコン色*/
}

.space {
    padding: 0 0 0 20px !important;
}

.space_02 {
    padding: 0 0 20px 0;
}

.red{
	color:red;
	font-weight:bold;
}

.cooperation{
	font-size:120%;
	font-weight:bold;
	color:#2c2c2f;
}

.cooperation li{
	list-style-type:none;
}

.recruit-02 {
  width: 30%;
  float: inline-end;
  padding: 10px;
  line-height: 80%;
}

h3{
	margin:20px 0;
}

.red-03{
	color:#ff2617;
}

.green{
	color:#016a16;
}

.green-02{
	color:#016a16;
	font-size:150%;
	text-decoration:underline;
	font-weight:bold;
}

.green-03{
	color:#016a16;
	font-size:120%;
	font-weight:bold;
}

.green-04{
	background-color:#afd262;
}

.green-05{
	background-color:#f0fdd2;
}

.underline{
	text-decoration:underline;
}

.blue{
	color:#004bb6;
}

.blue-02{
	color:#004bb6;
	font-weight:bold;
}

.blue-03{
	color:#0168b3;
	font-weight:bold;
	align-items: center;
	display: grid;
	padding: 0 !important;
}

.blue-04{
	background-color:#7ec8ff;
}

.blue-05{
	background-color:#8bcdee;
}

.blue-06{
	background-color:#cfefff;
}


tr.color{
	background-color:#00008b;
	color:#fff;
	font-weight:bold;
}

.stepflow_label::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 0;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: solid 3px #4dd0e1;
    background-color: #4dd0e1;
}

ul.stepflow li {
  list-style: none;
}

.right{
	width:100%;
    text-align: -webkit-right;
}

.right-02{
    text-align: -webkit-right;
}

.box-01 {
    margin: 20px auto;
    padding: 1em 1em 1em;
    border-top: 5px solid #0094D6;
    border-radius: 3px;
    box-shadow: 0 2px 1px rgb(0 0 0 / 20%);
    background-color: #f2f2f2;
}

.box-01 > div {
    margin-bottom: .5em;
    color: #0094D6;
    font-weight: 600;
    font-size: 1.05em;
	text-align: center;
}

.box-01 > p {
    margin: 0;
    color: #333;
}

.small{
	font-size:50%;
}

.small-02{
	font-size:90%;
}

.small-03 {
  font-size: 80%;
}

.small-04 {
  font-size: 70%;
}

.side_acc_content ul li {
    list-style: none;
    margin: 0;
}

.stepflow_label {
	padding:0 !important;
}

.list_02 li {
  color: #556b2f;
  padding: 0;
  list-style: disc !important;
}

.square_btn01 {
  display: inline-block;
  position: relative;
  padding: 0.75em;
  text-decoration: none;
  color: #FFF;
  background: #0080c9;
  transition: .4s;
  border-radius: 4px;
  font-size: 0.9em;
  font-weight: bold;
}

.square_btn01:hover {
  opacity: 0.8;
}

.area_01 td.line_03 {
  border: 1px solid #666!important;
  text-align: center!important;
  vertical-align: middle!important;
  width: 25%!important;
  text-align: left !important;
  padding-left: 10px;
}

.margin-b{
	margin-bottom: 30px;
}

.button_simu {
  display: block;
  position: relative;
  text-decoration: none;
  height: 35px;
  width: 280px;
  text-align: left;
  color: #0000A0;
  border: solid 1px #0000A0;
  font-size: 0.85em;
  padding: 0.3em 1.2em;
  margin: 0.5em 0;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
  font-weight: normal;
}

.small_02{
	font-size:70%;
}

ul.list_flow li {
  color: #556b2f !important;
  padding: 0 !important;
  margin: 0 0 0 40px !important;
  list-style: disc !important;
}

.padding_10{
  padding-left:10px;
}

.box-03{
    padding: 10px 10px 15px;
    margin: 2em 2em;
    color: #2c2c2f;
    background: #f0fdec;
    border-top: solid 5px #409b17;
    border-bottom: solid 5px #409b17;
}

.button-03 {
    display: flex;
    justify-content: left;
    align-items: center;
	margin:10px auto;
    padding: 1.2em 2.5em 1.2em 0;
    border: none;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #fff;
    color: #333;
    font-weight: 600;
	font-size: 110%;
	border:1px solid #ccc;
	text-align: left;
}

.button-03::before {
    transform: rotate(45deg);
	width: 8px;
	height: 8px;
    margin: 0 20px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    content: '';
	padding: 2px;
}

.button-03:hover {
    background-color: #1d4293;
	color:#fff;
}

.button-03:hover::before {
    transform: rotate(45deg);
	width: 8px;
	height: 8px;
    margin: 0 20px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-04 {
    display: flex;
    justify-content: center;
    align-items: center;
    margin:20px auto;
    padding: 1.2em 2.5em;
    border: none;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #166f03;
    color: #fff;
    font-weight: 600;
    font-size: 110%;
	width:95%;
	letter-spacing: 0.3em;
	border: 2px solid #fff;
}

.button-04::after {
    transform: rotate(45deg);
	width: 10px;
	height: 10px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-04:hover {
    background-color: #115703;
}

.big_01 {
	font-size: 180%;
	font-weight: bold;
	line-height:normal;
}

.big_02 {
  font-size: 130%;
  font-weight: bold;
}

.big_03 {
	font-size: 1.5rem;
	font-weight: bold;
	line-height:150%;
}

.highlight {
  text-decoration: underline;
  text-underline-offset: -0.2em;
  text-decoration-thickness: 0.5em;
  text-decoration-color: rgba(255, 227, 0, 0.63);
  text-decoration-skip-ink: none;
}

.box-04 {
    position: relative;
    margin: 1.9em auto 0;
    padding: 0 1.5em;
    border: 2px solid #2589d0;
    border-radius: 3px;
	width:95%;
}

.box-04 span {
    position: absolute;
    top: -2.2em;
    left: -2px;
    padding: .3em 2em;
    border-radius: 5px 5px 0 0;
    background-color: #2589d0;
    color: #fff;
}

.box-04 ul {
	padding:10px 0;
}

.box-04 ul {
	padding:10px 0;
}

iframe {
    margin: 0 auto;
    padding: 0;
    text-align: center;
	width:100%;
}

.requirements{
	height:2350px;
}

h4.wp-block-heading {
	padding: 0 0 0 40px;
	border: none;
	background: none;
	font-size: 120%;
	clear: both;
}

h4.wp-block-heading-02 {
	position: static;
	width: 95%;
	padding: 0 0 0 0;
	border: none;
	background: none;
	font-size: 150%;
	box-shadow: none;
}

h4.wp-block-heading-02::after {
	position: absolute;
	content: '';
	bottom: 35%;
	left: .8em;
	width: 12px;
	height: 12px;
	background-color: #0168b3;
	transform: rotate(45deg);
}

h4.wp-block-heading span{
	border-bottom: 3px solid navy;
} 

.box-05 img{
	width:20%;
	float:right;
}

.box-05 p {
  padding: 0px 50px 20px !important;
}

.box-05 ul {
  padding: 0 50px !important;
}

.box-05 span.bold{
	padding:10px 50px 0;
	font-weight:bold;
	clear:both;
}

.box-06 {
  float: right;
  width: 80%;
}

.button-05{
	width:100%;
}

.samll_03 {
  font-size: 90%;
  line-height: normal;
}

.big {
  font-size: 120%;
  line-height: normal;
}

.yellow{
	background:yellow;
	margin: 0 20px 0 0;
}

.yellow-04{
	color:yellow;
	font-size: 270%;
}

.yellow-05{
	background-color:yellow;
}

.yellow-06{
	background-color:#bba842;
}

.box-08{
	display: block ruby;
	padding: 0;
	margin: 0 0 0 20px;
}

.box-07{
	width:48%;
	padding: 5px;
}

.box-09{
	padding:20px 0;
}

.contact{
	height:3300px;
}

.contact_01{
	height:2300px;
}

.contact_02{
	height:2300px;
}

.contact_03{
	height:2500px;
}

.contact_04{
	height:2500px;
}

.contact_05{
	height:2100px;
}

.contact_06{
	height:3000px;
}

.contact_07{
	height:1500px;
}

.box-10{
	border: 2px solid #ccc;
	padding: 10px;
	margin: 10px 20px;
}

.small_03{
	font-size:90%;
}

.line_01{
	line-height:normal;
}

p.banner3 a,
.space1 a,
.decorationnone{
	text-decoration:none;
}

h5{
	padding: 0.5em 2.5em 0 2.5em;
	background:#fff;
}

.balloon-001 {
    display: flex;
    justify-content: left;
    position: relative;
    max-width: 700px;
    margin: 15px auto;
    padding: .8em 1.2em;
    border-radius: 25px;
    background-color: #f7e882;
    color: #000000;
}

.balloon-001::before {
    position: absolute;
    bottom: -15px;
    width: 30px;
    height: 15px;
    background-color: #f7e882;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
	left: 100px;
}

.balloon-001 ul li{
	list-style:none;
	font-weight: bold;
	font-size: 120%;
}

.balloon-002 {
	display: flex;
	justify-content: left;
	position: relative;
	max-width: 700px;
	margin: 15px auto;
	padding: .8em 1.2em;
	border-radius: 25px;
	background-color: #7ec8ff;
	color: #000000;
}

.balloon-002::before {
	position: absolute;
	bottom: -15px;
	width: 30px;
	height: 15px;
	background-color: #7ec8ff;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
	left: 100px;
}

.balloon-003 {
	display: flex;
	justify-content: left;
	position: relative;
	max-width: 700px;
	margin: 15px auto;
	padding: .8em 1.2em;
	border-radius: 25px;
	background-color: #fba966;
	color: #000000;
}

.balloon-003::before {
	position: absolute;
	bottom: -15px;
	width: 30px;
	height: 15px;
	background-color: #fba966;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
	left: 100px;
}

.button_bl_m_ib {
  width: 60%;
  height: 100%;
  padding: 20px;
}

.lineno {
  border: none;
  box-shadow: none;
}

.width50{
	width:50%;
}

table.area_list_02,
table.area_list_03{
	width:380px;
}

.area_list_02 td,
.area_list_03 td{
	border: 1px solid #979797;
	padding:0 10px;
}

.area_02{
	display : -webkit-inline-box;
	display : -ms-inline-flexbox;
	display : -webkit-inline-flex;
	display : inline-flex;
	margin:20px 0;
}

.area_02 div{
	margin-right:20px;
	caption-side:top;
}

.margin30{
	margin-left:30px;
}

.margin40{
	margin-right:40px;
}

.red-02{
	background-color:#ffbfbf;
}

.yellow-02{
	background-color:#f0e68c;
}

.yellow-03{
	background-color: #fdebc8;
	
	padding-bottom: 10px;
	margin: 0 10px;
}

.area_list_02 td:nth-of-type(3),
.area_list_03 td:nth-of-type(3){
	text-align:right;
}

.none{
	display:none;
}


.area_list_02 td:nth-of-type(1),
.area_list_03 td:nth-of-type(1){
	background-color:#ccf9d3;
	width:20px;
}

.area_list_02 td:nth-of-type(2),
.area_list_03 td:nth-of-type(2){
	width:150px;
}

.fonts{
	font-size:85%;
}

.box-11{
	max-width: 800px;
    margin: 0 auto;
    border: 3px solid #C41A41;
    border-radius: 5px;
    color: #333333;
}

.box-11 div {
    display: inline-flex;
    align-items: center;
    column-gap: 4px;
    position: relative;
    top: -13px;
    left: 10px;
    margin: 0 7px;
    padding: 0 8px;
    background: #fff;
    color: #C41A41;
    font-weight: 600;
    vertical-align: top;
	font-size:130%;
}

.box-11 div::before {
    width: 22px;
    height: 22px;
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8659 3.00017L22.3922 19.5002C22.6684 19.9785 22.5045 20.5901 22.0262 20.8662C21.8742 20.954 21.7017 21.0002 21.5262 21.0002H2.47363C1.92135 21.0002 1.47363 20.5525 1.47363 20.0002C1.47363 19.8246 1.51984 19.6522 1.60761 19.5002L11.1339 3.00017C11.41 2.52187 12.0216 2.358 12.4999 2.63414C12.6519 2.72191 12.7782 2.84815 12.8659 3.00017ZM10.9999 16.0002V18.0002H12.9999V16.0002H10.9999ZM10.9999 9.00017V14.0002H12.9999V9.00017H10.9999Z' fill='%23C41A41'%3E%3C/path%3E%3C/svg%3E");
}

.box-11 p {
    margin: 0;
    padding: 0 !important;
}

.box-11 ul{
	padding:0 20px 5px 20px;
}

.post-thumbnail {
  width: 45%;
  margin: 5px;
}

.post-images {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.center img{
	width:80%;
	padding:10px;
}

.ribbon20-wrapper {  
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 20px 0;
  }
.ribbon20 {
  display: inline-block;
  position: absolute;
  right: 0;
  top: 0;
  box-sizing: border-box;
  padding: 0 12px;
  margin: 0;
  height: 30px;
  line-height: 30px;
  font-size: 18px;
  letter-spacing: 0.1em;
  color: white;
  background: #df7300;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
}

.pamphlet{
	margin:0 auto;
}

.ribbon21-wrapper {  
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 20px 0;
  }
.ribbon21 {
  display: inline-block;
  position: absolute;
  right: 0;
  top: 0;
  box-sizing: border-box;
  padding: 0 12px;
  margin: 0;
  height: 30px;
  line-height: 30px;
  font-size: 18px;
  letter-spacing: 0.1em;
  color: white;
  background: #0086df;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
}

.slb_slideshow{
	display:none;
}

#main .list {
	padding-bottom: 20px;
}

.pagination {
  display: flex;
  justify-content: center;
	margin-top:20px;
}

.pagination a {
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    color: #1d4293;
	border: 1px solid #ddd;
    padding: 5px 10px;
    margin: 0px 1px;
}

.pagination a:not(:hover) {
    text-decoration: none;
}


.pagination a:hover {
	background-color:#ccc;
}

.pagination .current {
    background-color: #1d4293;
    color: #fff;
    pointer-events: none;
	border: 1px solid #1d4293;
	padding: 5px 10px;
    margin: 0px 1px;
	border-radius: 5px;
}

.pagination ul li {
    display: inline-block;
	margin:0;
	padding:0;
}

.post-thumbnail img {
        margin: 5px;
        height: auto;
}

.list_category h4{
	padding: 0em 0em 0.3em 0.3em !important;
	margin: 0px auto 15px !important;
	box-shadow: none;
	border-bottom: none;
	font-size:100%;
}

.list_category_02 {
  display: inline-flex;
  width: 30%;
}

.box-12{
	width:100%;
}

.list_category h4::after{
	display:none;
}

.list_category .post-thumbnail{
	width:auto;
}

.box-13 {
	display: flex;
	box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
	border-style: solid;
	border-width: 7px 0 0 0;
    border-color: #0074bf;
}

.box-13-text {
  margin: 0;
  padding: 15px 0 0 0;
}

.box-13-big {
  font-size: 2.5em;
}

.box-13-big-02 {
  font-size: 1.5em;
}

.box-13-bold {
  font-weight: bold;
}

.box-13-photo {
  padding: 10px 0 0 0;
}

.box-14,
.box-20{
  display: flex;
  margin:40px 0px;
	border-bottom:1px solid #ccc;
	padding:0 0 20px 0;
	justify-content:center;
}

.box-14 div,
.box-20 div{
	width:27%;
	line-height: 100%;
	padding-bottom:20px;
}

.box-14 div.arrow-s{
	width:15%;
}

.arrow-s{
	content: "";
	background-image: url("../images/denki/yajirushi1.png");
	background-repeat:no-repeat;
	background-position:center 90px;
}

div.arrow-s-02{
	width:100%;
	height:60px;
}

.arrow-s-02{
	content: "";
	background-image: url("../images/denki/yajirushi1.png");
	background-repeat:no-repeat;
	background-position:center;
	transform: rotateZ( 90deg );
}

.box-14 p,
.box-20 p{
  padding:0 5px !important;
  text-align: center;
  font-size: 0.9em;
  line-height:120%;
}

.box-14 div img,
.box-20 div img{
  padding: 5px;
}

.box-14-big,
.box-20-big{
	font-size:2.5em;
	line-height: normal;
}

.space_03 {
    margin: 0 !important;
	padding: 0 !important;
}

.space_04 {
    margin: 20px 0 !important;
}

.space_05 {
    margin: 0 20px !important;
}

.space_06 {
	padding: 0 !important;
}

.space_07 {
	padding: 0 0 0 20px !important;
}

.space_08 {
	margin: 0 0 40px 0 !important;
}

.space_09 {
	padding: 0 0 40px 0 !important;
}

.space_10 {
	padding: 30px 0 !important;
	vertical-align: middle;
}

.space_11 {
	margin:20px 10px !important;
}

.space_12 {
	margin:20px !important;
}

.space_13 {
	padding:10px !important;
}

.space_14 {
	padding:20px !important;
	margin:30px 0 0 0 !important;
}

.space_15 {
	margin: 20px 15px !important;
}

.space_16 {
	padding: 20px 0 0 0 !important;
}

.space_17 {
	margin: 0 !important;
	padding: 0 !important;
}

.space_18 {
	margin: 20px 10px !important;
}

.box-15 {
  display: flex;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

.box-17 {
  border: 1px solid #ccc;
  margin:25px 0 0 0;
  background-color: #f3fdc1;
}

.box-17 span {
  padding: 0 10px;
  font-weight: bold;
}

.box-15-text-s {
  font-size: 0.9em;
  line-height: 100%;
}

.photo01 img {
  width: 90%;
  padding: 20px;
}

.text01 {
  padding: 20px 0;
	width: 70%;
}

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

.photo01 {
  width: 30%;
  border-right: 1px solid #ccc;
}

.text-big{
	font-size:1.6em;
	font-family:HGS創英角ｺﾞｼｯｸUB,serif;
}

.box-16 {
  border: 1px solid #ccc;
  margin: 20px 0;
  padding: 20px 0 0;
  background-color: #f3fdc1;
}

.box-18 {
  display: flex;
  border-top: 1px solid #ccc;
  background-color: #fff;
}

.text-01{
	border-left: 1px solid #ccc;
	width:70%;
}

.text-02 {
  display: flex;
  border: 1px solid #ccc;
  width: 70%;
  margin: 10px auto;
  line-height: 100%;
}

.text-02 p {
  background-color: #e3e3e3;
  border-right: 1px solid #ccc;
}

.text-02 ul {
  padding-bottom:10px;
}

.text-s {
  font-size: 0.7em;
  padding: 0px !important;
}

.photo-left {
  width: 30%;
  margin: auto;
}

.photo-left p {
  text-align: center;
}

.photo-left p img {
  width:80%;
}

.big-03{
	font-size:2em;
}

.big-04{
	font-size:2.5em;
}

.big-03 span{
	color:#909090;
	font-size:0.9em;
}

.box-19{
	display:flex;
	border: 1px solid #ccc;
}

.box-19 div{
	width:100%;
}

.amount td,
.amount th{
	border: 1px solid #ccc;
	padding:20px;
	vertical-align: middle;
}

.amount th{
	background-color:#f3fdc1;
	text-align:center;
}

.amount tr td:nth-of-type(2){
	text-align:right;
	width:50%;
	vertical-align: middle;
}
.amount,
.amount-05,
.amount-06,
.amount-07,
.amount-08,
.amount-09,
.amount-10{
	width:100%;
	background: #fff;
}

.amount-02 td,
.amount-03 td,
.amount-02 th,
.amount-03 th,
.amount-04 td,
.amount-04 th,
.amount-05 td,
.amount-05 th,
.amount-06 td,
.amount-06 th,
.amount-07 td,
.amount-07 th,
.amount-08 td,
.amount-08 th,
.amount-09 td,
.amount-09 th,
.amount-10 td,
.amount-10 th{
	border: 1px solid #ccc;
	padding:10px;
	vertical-align: middle;
}

.amount-02 th,
.amount-03 th,
.amount-04 th,
.amount-05 th,
.amount-07 th,
.amount-08 th,
.amount-09 th,
.amount-10 th{
	background-color:#f3fdc1;
	text-align:center;
	vertical-align: middle;
}

.amount-02 tr td:nth-of-type(3){
	text-align:right;
	width:28%;
	vertical-align: middle;
}

.amount-04 tr td:nth-of-type(3){
	text-align:right;
	width:30%;
	vertical-align: middle;
}

.amount-07 tr td:nth-of-type(1){
	text-align:center;
}

.amount-07 tr td:nth-of-type(3){
	width:35%;
	vertical-align: middle;
}

.amount-07 tr td:nth-of-type(4){
	width:23%;
	vertical-align: middle;
	text-align: right;
}

.amount-08 tr td:nth-of-type(1){
	width:60%;
}

.amount-08 tr td:nth-of-type(2){
	width:40%;
	text-align:right;
}

.amount-09 tr td:nth-of-type(1){
	width:30%;
	text-align:center;
}

.amount-09 tr td:nth-of-type(2){
	width:30%;
}

.amount-09 tr td:nth-of-type(3){
	width:40%;
}

.amount-10 tr td:nth-of-type(1){
	width:35%;
}

.amount-10 p{
	padding:15px 5px !important;
	margin:0px;
}

.amount-03 tr td:nth-of-type(1),
.amount-03 tr td:nth-of-type(2),
.amount-03 tr td:nth-of-type(3){
	text-align:center;
	vertical-align: middle;
}

.amount-03 tr td:nth-of-type(4){
	text-align:right;
	width:30%;
	vertical-align: middle;
}

.amount-02,
.amount-03,
.amount-04{
	width:100%;
}

.amount-04{
	margin:40px 0 0;
}

.amount-02 div{
	width:50%;
	display:inherit;
	padding:5px;
}

.amount-04 th{
	background-color:#f3fdc1;
	text-align:center;
	font-size:120%;
	font-weight:bold;
}

.amount-05 tr td:nth-of-type(1){
	width:50%;
	vertical-align: middle;
}

.amount-06 th:nth-of-type(2),
.amount-06 th:nth-of-type(3){
	text-align:center;
	vertical-align: middle;
	width:38%;
}

.amount-06 tr td:nth-of-type(1),
.amount-06 th:nth-of-type(1){
	background-color: #f3fdc1;
}

.amount-11{
	width: 100%;
	text-align: center;
}

.amount-11 td,
.amount-11 th{
	padding: 7px 2px;
	vertical-align: middle;
	width: 10%;
	border: 1px #bbb solid;
}

td.ta2 a {
  padding: 0px 20px 0 0;
}

.box-21 div.arrow-s {
  width: 10%;
}

.box-21 {
  display: flex;
  width: 70%;
  margin: 20px auto;
}

.red-04 {
  position: relative;
  padding: 1rem 2rem;
  text-align: center;
  color: #ac0707;
  border-radius: 0 10px 10px 10px;
  background: #ffe5e5;
  line-height:normal;
  margin: 50px 10px;
  font-weight: bold;
  font-size:1.5em;
}

.red-04:before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.2rem;
  position: absolute;
  top: -24px;
  left: 0;
  height: 24px;
  padding: 0 1em;
  content: 'POINT';
  color: #fff;
  border-radius: 10px 10px 0 0;
  background: #ac0707;
}

.bx-alert {
  display: block ruby;
  text-align: center;
  font-size: 1.7em;
  color: #ff6000;
  font-weight: bold;
  padding-top: 20px;
}

.box-22 {
  display: flex;
  border-bottom: 1px solid #ccc;
  padding: 0 0 20px 0;
}

.box-22 p.text{
	text-align:center;
}

.box-22 p{
	padding:0 !important;
}

.box-23{
	font-size:120%;
	display:flex;
	font-weight: bold;
	margin: 0 auto;
	width: 40%;
}

p.orange-01{
	background-color:#ea5413;
	color: #fff;
	border-radius: 5px;
}

.box-24,
.box-25{
	display:flex;
}

.box-24{
	border-bottom: solid 2px #d7d7d7;
	padding: 15px 0;
}

.box-24 div {
	width: 100%;
}

.weight {
  font-weight: bold;
  font-size: 120%;
}

.box-25-big {
  font-size: 2.5em;
}

.box-25 {
	text-align: right;
	align-items: center;
}

.border-red{
  border-bottom: double 5px #ff0000;
  display: inline-flex;
  line-height: 0.9;
}

.border-red-02{
  position: relative;
}

.border-red-02::after{
  content: '';
  width: 100%;
  border-top: 3px solid #f00;
  position: absolute;
  top: 45%;
  left: 0;
  transform: rotate(-6deg);
}

.box-25 p {
	width: 50%;
	padding: 0 !important;
}

.accordion-001 {
    background-color: #f2f2f2;
	border-bottom: 3px solid #ddd;
	margin: 20px 0;
}

.accordion-001:not([open]) {
    margin-bottom: 7px;
}

.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 0.8em 1.5em;
    border-radius: 5px;
    background-color: #0094d6;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}

.accordion-001 summary::-webkit-details-marker {
    display: none;
}

.accordion-001 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 12px;
    height: 12px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
    transition: transform .3s;
}

.accordion-001[open] summary::after {
    transform: rotate(225deg);
}

.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1em 2em 2em 2em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-001[open] p {
    transform: none;
    opacity: 1;
}

.accordion-002 table{
	margin:0 auto;
}

.accordion-002 tr td:nth-of-type(1) {
  width: 85%;
  padding: 5px 20px;
}

.accordion-003 {
	margin:0 auto;
	width: 100%;
}

.accordion-003 tr td:nth-of-type(1) {
  width: 35%;
  padding: 5px 20px;
}

.accordion-003 tr td:nth-of-type(2) {
  width: 36%;
}

.accordion-003 tr td:nth-of-type(3) {
	text-align:right;
	padding: 5px 20px 0 0;
}

.accordion-004 table{
	margin:0 auto;
}

.accordion-004 tr td:nth-of-type(1) {
	width: 80%;
	padding: 5px 20px;
	vertical-align:middle;
}

tr {
  border-bottom: 1px solid #ccc;
}

.red-05 {
    background: #F00;
    color: #FFF;
    font-size: 50%;
    line-height: 1.5;
    padding: 2px 5px;
    border-radius: 2px;
    margin: 0px 5px;
    vertical-align: text-top;
}

.button_b2_m_ib {
  width: 90%;
  margin: 0 auto;
  display: block;
  text-align: center;
}

.box-26 {
  margin: 0;
}

.box-27 div {
	width: 41.5%;
	display: table-cell;
	padding: 0 5px;
}

.box-28 div.box-27 {
  padding: 0px 2px;
  text-align: center;
}

.line-02{
	border-right:1px solid #ccc;
}

.line-03{
	border-bottom:2px solid #ccc;
}

.line-04{
	border-top:1px solid #ccc;
}

.box-28 {
  border-bottom: 1px solid #ccc;
  display: flex;
}

.box-29{
	text-align:center;
	width:50%;
}

.box-30{
	margin:0 auto;
	padding:20px 30px;
}

.box-31 {
    position: relative;
    margin:3em auto 3em;
    padding: 0 1.5em;
    border: 3px solid #d02525;
    border-radius: 3px;
	width:100%;
}

.box-31 span {
  position: absolute;
  top: -2.5em;
  left: -0.2em;
  padding: 0.5em 0;
  border-radius: 5px 5px 0 0;
  background-color: #d02525;
  color: #ffe44e;
  font-weight: bold;
  width: 100.8%;
  text-align: center;
}

.box-31 ul li {
	margin-left: 0;
	padding-top: 0;
	list-style: none;
}

.box-32 {
  border-bottom: solid 2px #d7d7d7;
  padding: 15px 0;
}

.box-32 {
  display: flex;
}

.box-33 {
	border: double 4px #006400;
	border-radius: 10px;
	padding: 1em;
	width: 92%;
	margin: 20px auto;
}

.box-34 {
	border: double 4px #ff0000;
	border-radius: 10px;
	padding: 1em;
	width: 92%;
	margin: 20px auto;
}

.box-35 {
	display: flex;
}

.box-35 div{
	margin: 0 auto;
	padding: 20px 0 20px 0;
}

.box-36{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	text-align:center;
}

.box-37{
  border: 1px solid #ccc;
  margin: 0 20px;
  background-color: #f3fdc1;
}


.box-38{
  width: 100%;
  align-items: center;
  justify-content: center;
  display: flex;
}

.box-38 div {
	width: 100%;
}

.box-39 {
	margin: 0 10px;
	padding: 5px 0;
}

.box-39 ul{
	width: 100%;
	display: flex;
	background-color:#6b9cd3;
}

.box-39 ul li{
	list-style-type:none;
	font-size: 80%;
	text-align:center;
}

.box-39 ul li a{
	color:#fff;
}

.box-40{
	width: 100%;
	margin: 0 auto;
}

.box-40 div{
	padding: 20px;
	text-align: center;
}

.list-none li{
	list-style-type:none;
}

.work-cat-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  list-style: none;
  padding: 0;
  margin:0;
}

.work-cat-item {
  width: calc(33.333% - 20px);
  box-sizing: border-box;
  transition: box-shadow 0.3s;
  list-style:none;
	margin:0 auto;
}

.work-cat-item:hover {
  box-shadow: 0 0 8px rgba(0,0,0,0.15);
}

.work-cat-item .thumb img {
  width: 100%;
  height: auto;
  display: block;
}

.work-cat-item .title {
  font-size: 1em;
  margin-top: 10px;
}

.excerpt-day {
  padding: 0 !important;
  margin: 10px 0;
  text-align: end;
}
.work-cat-item .date {
  font-size: 0.85em;
  color: #666;
}

.post-excerpt {
  text-align: left;
  margin-left: 40px;
}

.box-12 p {
  text-align: right;
  padding: 0 !important;
}

.before-after-set {
	display: flex;
	padding: 0px 25px;
}

.thumbnail-before,
.thumbnail-after{
	padding: 0 5px;
}

.before-img,
.after-img,
.before-img-02,
.after-img-02,
.before-after-item{
	position: relative;
	margin: 5px 0;
}

.before-img p,
.after-img p,
.before-img-02 p,
.after-img-02 p{
	position: absolute;
	top:0;
	left:0;
	margin:0;
	background:#163f8b;
	color:#fff;
	font-size:18px;
	line-height:1;
	padding:10px 10px;
	margin-left: 5px;
}

.after-img p,
.after-img-02 p{
	background:#ea5413;
}

.before p,
.after p{
	background:#163f8b;
	color:#fff;
	font-size:18px;
	line-height:1;
	padding:10px 10px;
	text-align:center;
}

.after p {
	background:#ea5413;
}

p.text {
  padding: 0 20px 20px 30px !important;
}

.before_image,
.after_image{
	padding:0 5px;
}

.post-images-02 {
  width: 47%;
  margin: 0 auto;
}

.bold-02{
	font-weight:bold;
}

.center-02{
	text-align:center;
	vertical-align:middle;
}

.center-03{
	align-content:center;
}

.center-04 {
  display: block ruby;
  text-align: center;
}

.arrow-02{
	position: relative;
	display: inline-block;
	padding: 0 0 0 30px !important;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow-02::before,
.arrow-02::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.arrow-02::before{
	left: -1px;
	width: 16px;
	height: 4px;
	background: #f00;
}

.arrow-02::after{
	left: 0px;
	width: 16px;
	height: 16px;
	border-top: 3px solid #f00;
	border-right: 3px solid #f00;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.frame-ul-01{
	display:table-cell;
}

.frame-ul-01 li{
	display:inline flow-root list-item;
	list-style:none;
	background-color: #ea5413;
	color: #fff;
	width: 130px;
	font-size: 80%;
	padding: 5px;
	border-radius: 5px;
	text-align: center;
	margin: 2px;
	align-items:center;
}

.list-01 li {
  list-style: none;
  padding: 0 0 0 10px;
}

.button_01 {
  display: flex;
}

.button_01 p {
  padding: 0 !important;
  margin: 10px auto;
  width: 50%;
}

/* .sl-image {
  width: 100% !important;
  left: 0 !important;
} */

.border-blue{
	border-bottom: solid 3px #0168b3;
	margin-bottom: 20px;
}

.padding-01{
	padding:20px 30px;
	margin: 0 20px 0 0;
}

.padding-02{
	padding:20px 30px;
	margin: 0 43px 0 0;
}

.mail-01{
	font-size:80%;
	border: solid 2px #d7d7d7;
}

.gray{
	background-color:#d7d7d7;
}

.gray-02{
	color:#9d9d9d;
}

.auto{
	width:auto !important;
}

.w100{
	width:100% !important;
}

.w80{
	width:80%;
}

.w20{
	width:20%;
	margin:0 60px;
}

.example{
	width:50%;
	margin:20px;
	position:relative;
}

.example_02{
	display:flex;
	border-bottom: solid 2px #d7d7d7;
	margin: 0 0 30px 0;
}

.example p {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  background: #163f8b;
  color: white;
  font-size: 18px;
  line-height: 1;
  padding: 5px 10px;
}

p.after {
  background: #ea5413;
}

.ribbon01-wrapper {
  display: block;
  position: relative;
  margin: 15px auto;
  padding: 10px 0;
  background: #f1f1f1;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.14);
  box-sizing: border-box;
}

.ribbon01-content {
  position: absolute;
  top: -6px;
  right: -6px;
  width: 89px;
  height: 91px;
  overflow: hidden;
  }

.ribbon01 {
  display: inline-block;
  position: absolute;
  padding: 6px 0;
  left: -30px;
  top: 23px;
  width: 170px;
  text-align: center;
  font-size: 16px;
  line-height: 16px;
  background: #F00;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  font-weight:bold;
}

.ribbon01:before, .ribbon01:after {
  position: absolute;
  content: "";
  border-top: 4px solid #b80404;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  bottom: -4px;
}

.ribbon01:before {
  left: 20px;
}

.ribbon01:after {
  right: 22px;
}

.plumbing {
  width: 25%;
  display: inline-block;
  padding: 5px;
  text-align: center;
}

.line-no{
	border-bottom:none;
}

.line-no-02{
	border-top:none;
}

.w60{
	width:60%;
}

.emphasis_design{
	position: relative;
	color: #4d9bc1;
	-webkit-text-stroke: 5px #4d9bc1;
}

.emphasis_design::before {
	content: attr(data-text);
	position: absolute;
	color: #4d9bc1;
	-webkit-text-stroke: 1px #fff;
}

.balloon-01 {
	position: relative;
	padding: 10px;
	width: 80px !important;
	height: 80px;
	line-height: 1;
	border-radius: 50%;
	text-align: center;
	color: #ffffff;
	font-size: 12px;
	background-color: #f00;
	left: 300px;
	font-weight: bold;
	letter-spacing: -0.2em;
}

.balloon-01::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -1px;
  bottom: -3px;
  border-right: 20px solid #f00;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(-45deg);
}

.btn-square-pop {
  position: relative;
  display: inline-block;
  padding: 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #df0101;
  border-bottom: solid 2px #a00;
  border-radius: 4px;
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  font-weight: bold;
  font-size:30px;
	width: 100%;
}

.btn-square-pop:active {
  border-bottom: solid 2px #a00000;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

.btn-square-pop:hover{
	background-color:#b70000;
}

.btn-square-pop-02 {
  position: relative;
  display: inline-block;
  padding: 0.5em;
  text-decoration: none;
  color: #df0101;
  background: #fff;
  border: solid 1px #df0101;
  border-radius: 4px;
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  font-weight: bold;
  font-size:20px;
	width: 85%;
}

.btn-square-pop-02:active {
  border-bottom: solid 2px #a00000;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

.btn-square-pop-02:hover{
	background-color:#df0101;
	color:#fff;
}

.cp_qa03 .cp_actab {
  position: relative;
  width: 100%;
  margin: 0 0 1em 0;
  color: #0168b3;
}
.cp_qa03 .cp_actab input {
  display: none;
}
/* 質問 */
.cp_qa03 .cp_actab label {
  font-weight: bold;
  line-height: 1.6em;
  position: relative;
  display: block;
  margin: 0 0 0 0;
  padding: 1em 2em 1em 3.5em;
  cursor: pointer;
  text-indent: 1em;
  border-radius: 0.5em;
  background: rgba(27,37,56,0.1);
}
.cp_qa03 .cp_actab label::before {
  content: 'Q';
  font-family:  "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;;
  font-size: 1.5em;
  margin-left: -1em;
  padding-right: 0.5em;
}
.cp_qa03 .cp_actab label:hover {
  color: #0168b3;
  transition: all 0.3s;
}
/* --質問の＋アイコン */
.cp_qa03 .cp_actab label::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '+';
  font-size: 1.7em;
  font-weight: bold;
  line-height: 2em;
  display: inline-block;
  width: 2em;
  height: 2em;
  transition: transform 0.3s;
}
/* 答え */
.cp_qa03 .cp_actab .cp_actab-content {
  position: relative;
  overflow: hidden;
  max-height: 0;
  padding: 0 0 0 2.5em;
  border-radius: 0 0 0.5em 0.5em;
  transition: max-height 0.2s;
}
.cp_qa03 .cp_actab .cp_actab-content::before {
  position: absolute;
  content: 'A';
  font-family:  "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;;
  font-size: 1.5em;
  margin: 1.2em 0 0 0;
  padding: 0;
}
.cp_qa03 .cp_actab .cp_actab-content p {
  margin: 1em 1em 1em 1em;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa03 .cp_actab input:checked ~ .cp_actab-content {
  max-height: 40em;
  border: 10px solid rgba(27,37,56,0.1);
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa03 .cp_actab input:checked ~ label {
  color: #0168b3;
  border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa03 .cp_actab input[type=checkbox]:checked + label::after {
  transform: rotateZ(45deg);
  transform-origin: 50% 50%;
}
