@charset "utf-8";

/*--------------------------------------
mv
---------------------------------------*/
.l-mv {
background: #282d2b url(img/mv_bg_01.jpg) no-repeat center center;
background-size: cover;
}
.l-mv-wrapper {
display: flex;
align-items: center;
position: relative;
width: 100rem;
min-height: 44rem;
margin: 0 auto;
padding: 4rem 40rem 4rem 0;
}
.l-mv-logo {
margin: 0 0 3rem 0;
}
.l-mv-logo img {
width: 29rem;
}
.l-mv-title {
margin: 0 0 2rem 0;
color: #fff;
font-size: 3.6rem;
font-weight: 900;
line-height: 1.4;
}
.l-mv-title span {
color: #8aea08;
}
.l-mv-txt p:not([class]) {
margin: 1em 0 0 0;
color: #fff;
}
.l-mv-txt p:not([class]) > span:not([class]) {
border-bottom: 2px solid #faeb15;
font-weight: 900;
}


/*--------------------------------------
l-parts02
---------------------------------------*/
.l-parts02 {
padding: 9rem 0;
background: #323232 url(img/parts02_bg_01.png) repeat center center;
}
.l-parts02-company {
position: relative;
margin: 0 0 9rem 0;
padding: 5rem 6rem 3rem 6rem;
background: #fff;
box-shadow: 2px 4px 8px 0 rgba(0,0,0,0.15);
}
.l-parts02-company:last-child {
margin: 0;
}
.l-parts02 .catch-title {
margin: 0 auto 3rem auto;
padding: 2rem;
background: #0b9f5e;
background: -webkit-linear-gradient(90deg, rgba(11, 159, 94, 1) 0%, rgba(16, 24, 17, 1) 100%);
background: linear-gradient(90deg, rgba(11, 159, 94, 1) 0%, rgba(16, 24, 17, 1) 100%);
color: #fff;
font-size: 2.4rem;
font-weight: 900;
line-height: 1.4;
text-align: center;
}
.l-parts02 .catch-title span {
color: #faeb15;
font-size: 3.2rem;
}
.l-parts02 .name {
margin: 0 0 3rem 0;
font-size: 3.6rem;
font-weight: 900;
line-height: 1.4;
text-align: center;
}
.l-parts02 .title {
margin: 6rem 0 3rem 0;
font-size: 2.4rem;
font-weight: 900;
line-height: 1.4;
text-align: center;
}
.l-parts02-company > .fig {
width: 50rem;
margin: 0 auto;
text-align: center;
}
.l-parts02-company > .fig + .caption {
text-align: center;
}
.l-parts02 table {
table-layout: fixed;
margin: 3rem 0;
font-size: 1.6rem;
}
.l-parts02 table th {
width: 14rem;
padding: 1.5rem;
}
.l-parts02 table td {
width: calc((100% - 28rem) / 2);
}
.block-feature {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 2.4rem;
background: #f1f1f1;
}
.block-feature .box {
position: relative;
width: calc((100% - 6rem) / 2);
padding: 0 0 1rem 0;
}
.block-feature .box:first-child::before {
position: absolute;
left: calc(100% + 2.8rem);
top: 50%;
transform: translateY(-50%);
width: 0.1rem;
height: calc(100% + 2rem);
border-right: 1px solid #d6d9da;
content: "";
}
.block-feature .box-head {
display: flex;
align-items: center;
min-height: 5.6rem;
margin: 0 0 2rem 0;
padding: 0 0 0 6.4rem;
background: url(img/title_bg_02.png) no-repeat left center;
background-size: 5.6rem auto;
}
.block-feature .box-head .ttl {
color: #209405;
font-size: 2rem;
font-weight: 900;
line-height: 1.4;
}
.block-feature .box-body p:not([class]) {
margin: 0;
}
.block-proposal .box {
margin: 0 0 4rem 0;
padding: 0 0 0 13rem;
background: url(img/ico_01.png) no-repeat left top;
}
.block-proposal .box .ttl {
min-height: 3rem;
margin: 0 0 2.4rem 0;
background-size: 35px auto;
color: #209405;
font-size: 2rem;
font-weight: 900;
line-height: 1.4;
}
.block-proposal .box ul:not([class]) {
margin: 0;
font-size: 1.6rem;
}
.block-proposal .box ul:not([class]) li {
margin: 0 0 2rem 0;
}
.block-proposal .box ul:not([class]) li:last-child {
margin: 0;
}
.block-proposal .box ul:not([class]) li::before {
top: 0.8rem;
}


/*--------------------------------------
l-parts03
---------------------------------------*/
.l-parts03 {
position: relative;
padding: 9rem 0 6rem 0;
background: #626262;
}


/*--------------------------------------
l-parts04
---------------------------------------*/
.l-parts04 {
padding: 9rem 0 6rem 0;
background: #ececec;
}
.l-parts04 .l-common-title,
.l-parts04 .l-common-lead {
color: #272727;
}
.l-parts04 .block .box {
margin: 0 0 5rem 0;
padding: 0 0 0 14rem;
}
.l-parts04 .block .box.ico-2 {
background: url(img/ico_02.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-3 {
background: url(img/ico_03.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-4 {
background: url(img/ico_04.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-5 {
background: url(img/ico_05.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-6 {
background: url(img/ico_06.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-7 {
background: url(img/ico_07.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box.ico-8 {
background: url(img/ico_08.png) no-repeat left top 0.5rem;
}
.l-parts04 .block .box .ttl {
margin: 0 0 1rem 0;
font-size: 2.2rem;
font-weight: 900;
line-height: 1.4;
}
.l-parts04 .block .box .ttl a {
display: inline-block;
padding: 0 5rem 0 0;
background: url(img/arrow02_green.svg) no-repeat right center;
background-size: 2rem auto;
color: inherit;
text-decoration: none;
}































@media screen and (max-width: 480px) {

/*--------------------------------------
mv
---------------------------------------*/
.l-mv {
background: none;
}
.l-mv-wrapper {
display: block;
width: 100%;
min-height: auto;
padding: 0;
}
.l-mv-sitename {
padding: 2rem 1.5rem;
background: #282d2b url(img/mv_bg_01.jpg) no-repeat center center;
background-size: cover;
}
.l-mv-logo {
margin: 0 0 1.5rem 0;
}
.l-mv-logo img {
width: 20rem;
}
.l-mv-title {
margin: 0;
font-size: 2.4rem;
}
.l-mv-txt {
padding: 0.5rem 1.5rem 3rem 1.5rem;
}
.l-mv-txt p:not([class]) {
margin: 1em 0 0 0;
color: #272727;
}
.l-mv-txt p:not([class]) > span:not([class]) {
background: linear-gradient(transparent 60%, rgba(250,235,21,0.7) 60%);
border-bottom: none;
font-weight: 900;
}


/*--------------------------------------
l-parts02
---------------------------------------*/
.l-parts02 {
padding: 4rem 0;
background-size: 41px auto;
}
.l-parts02-company {
margin: 0 0 6rem 0;
padding: 2rem 1.2rem;
box-shadow: 2px 2px 4px 0 rgba(0,0,0,0.15);
}
.l-parts02 .catch-title {
margin: 0 auto 2rem auto;
padding: 1.5rem 1rem;
font-size: 1.8rem;
}
.l-parts02 .catch-title span {
font-size: 2rem;
}
.l-parts02 .name {
margin: 0 0 2rem 0;
font-size: 2.4rem;
}
.l-parts02 .title {
margin: 5rem 0 2.5rem 0;
font-size: 2rem;
}
.l-parts02-company > .fig {
width: 100%;
}
.l-parts02 table {
margin: 0;
font-size: 1.4rem;
}
.l-parts02 table th {
width: 100%;
padding: 0.6rem;
}
.l-parts02 table td {
width: 100%;
}
.block-feature {
display: block;
padding: 2rem 1.5rem;
}
.block-feature .box {
position: relative;
width: 100%;
padding: 0;
margin: 0 0 4rem 0;
}
.block-feature .box:last-child {
margin: 0;
}
.block-feature .box:first-child::before {
left: 0;
top: calc(100% + 2rem);
transform: none;
width: 100%;
height: 0.1rem;
border-right: none;
border-bottom: 1px solid #d6d9da;
}
.block-feature .box-head {
min-height: 4.8rem;
margin: 0 0 1.5rem 0;
padding: 0 0 0 5rem;
background-size: 4rem auto;
background-position: left top;
}
.block-feature .box-head .ttl {
font-size: 1.8rem;
}
.block-proposal .box {
margin: 0 0 4rem 0;
padding: 0;
background: none;
}
.block-proposal .box .ttl {
min-height: 5rem;
margin: 0 0 2rem 0;
padding: 0.2rem 0 0 6rem;
background: url(img/ico_01.png) no-repeat left top;
background-size: 5rem auto, 2.8rem auto;
font-size: 1.8rem;
}
.block-proposal .box ul:not([class]) {
font-size: 1.4rem;
}
.block-proposal .box ul:not([class]) li {
margin: 0 0 1rem 0;
}
.block-proposal .box ul:not([class]) li:last-child {
margin: 0;
}
.block-proposal .box ul:not([class]) li::before {
top: 0.6rem;
}


/*--------------------------------------
l-parts03
---------------------------------------*/
.l-parts03 {
padding: 4rem 0 2rem 0;
}


/*--------------------------------------
l-parts04
---------------------------------------*/
.l-parts04 {
padding: 4rem 0 2rem 0;
}
.l-parts04 .block .box {
margin: 0 0 3rem 0;
padding: 0;
background: none !important;
}
.l-parts04 .block .box .ttl {
display: flex;
align-items: center;
min-height: 5rem;
padding: 0 0 0 6rem;
font-size: 2rem;
}
.l-parts04 .block .box.ico-2 .ttl {
background: url(img/ico_02.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-3 .ttl {
background: url(img/ico_03.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-4 .ttl {
background: url(img/ico_04.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-5 .ttl {
background: url(img/ico_05.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-6 .ttl {
background: url(img/ico_06.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-7 .ttl {
background: url(img/ico_07.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box.ico-8 .ttl {
background: url(img/ico_08.png) no-repeat left top 0.5rem;
background-size: 5rem auto;
}
.l-parts04 .block .box .ttl a {
display: block;
width: 100%;
padding: 0 3rem 0 0;
}

}
