@charset "UTF-8";

/* contentsHead
----------------------------------------- */
#contentsHead {
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
#contentsHead #breadCrumbs {
color: #ffffff;
text-align: left;
position: relative;F
}
#contentsHead #breadCrumbs .wrap {
position: relative;
z-index: 1;
}
#contentsHead #breadCrumbs a {
color: #ffffff;
}
#contentsHead .title {
min-height: 5em;
display: block;
text-align: left;
position: relative;
}
#contentsHead .title h1 {
position: relative;
z-index: 1;
}

/* ServiceIndex
----------------------------------------- */
#ServiceIndex #contentsHead {
background-image: url("images/bk_chead_service.jpg");
}
#ServiceIndex .container {
width: 100%;
}
#ServiceIndex #Deliver .contentsWrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#ServiceIndex #Deliver h2 {
letter-spacing: 0.1em;
}
#ServiceIndex #Deliver .contents .txtBlk {
text-align: justify;
}
#Deliver h3.houjo_img {
    padding: 3rem 0;
    }
#ServiceIndex #Facility {
background-image: url("images/bk_contents_wh.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#ServiceIndex #Facility .title {
text-align: center;
}
#ServiceIndex #Facility .title .En {
margin-bottom: 25px;
padding-right: 0.1em;
padding-left: 0.2em;
display: inline-block;
font-family: "futura-pt", sans-serif;
background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
letter-spacing: 0.1em;
position: relative;
}
#ServiceIndex #Facility .title .Jp {
margin-right: auto;
margin-bottom: 25px;
margin-left: auto;
display: block;
letter-spacing: 0.1em;
}
#ServiceIndex #Facility ul li {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#ServiceIndex #Facility ul li h3 {
text-align: center;
}
#ServiceIndex #Facility ul li figure {
overflow: hidden;
}
#ServiceIndex #Facility ul li .colBlk {
text-align: justify;
}
#ServiceIndex #Point .headItem {
margin-bottom: 80px;
text-align: center;
background-color: #52453b;
position: relative;
}
#ServiceIndex #Point .headItem::before {
content: '';
margin: auto;
width: 210px;
height: 63px;
display: block;
background-color: #52453b;
position: absolute;
top: 95%;
right: 0;
left: 0;
z-index: -1;
clip-path: polygon(50% 100%, 0 0, 100% 0);
}
#ServiceIndex #Point h2 {
margin-bottom: 40px;
display: inline-block;
color: #f0eadc;
text-align: center;
position: relative;
background: -moz-linear-gradient(0deg, rgba(54,93,75,1) 40%, rgba(255,255,255,0) 40%);
background: -webkit-linear-gradient(0deg, rgba(54,93,75,1) 40%, rgba(255,255,255,0) 40%);
background: linear-gradient(0deg, rgba(54,93,75,1) 40%, rgba(255,255,255,0) 40%);
}
#ServiceIndex #Point .headItem .caption {
color: #f0eadc;
}
#ServiceIndex #Point ul {
margin-bottom: 80px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#ServiceIndex #Point ul li {
padding: 0 2% 5% 2%;
color: #365D4b;
position: relative;
text-align: center;
}
#ServiceIndex #Point ul li::before,
#ServiceIndex #Point ul li::after {
content: '';
display: block;
position: absolute;
left: 0;
z-index: -1;
}


#ServiceIndex #Point ul li::before {
width: 50px;
height: 50px;
background-color: #365D4b;
top: 9.8%;
clip-path: polygon(0 100%, 0 0, 100% 0);
}
#ServiceIndex #Point ul li::after {
margin: auto;
width: 100%;
height: 90%;
right: 0;
bottom: 0;
border: 1px solid #365D4b;
}
#ServiceIndex #Point ul li .num {
padding-right: 1em;
padding-left: 1em;
display: inline-block;
background-color: #ffffff;
text-align: center;
}
#ServiceIndex #Point ul li .num small {
line-height: 1;
display: block;
}
#ServiceIndex #Point ul li .num strong {
line-height: 1;
font-family: "futura-pt-bold", sans-serif;
}
#ServiceIndex #Point ul li figure {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Point ul li h3 {
line-height: 1.5;
text-align: center;
}
#ServiceIndex #Point ul li .txtBlk {
text-align: justify;
}


/* RaisingIndex
----------------------------------------- */
#RaisingIndex #contentsHead {
background-image: url("images/bk_chead_raising.jpg");
}
#RaisingIndex .container {
width: 100%;
}
/* Convery
-------------------- */
#RaisingIndex #Convery {
padding-bottom: 50px;
background-image: url("images/bk_contents_wh.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#RaisingIndex #Convery ul li {
margin-bottom: 35px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#RaisingIndex #Convery li .colBlk {
position: relative;
}
#RaisingIndex #Convery .card h2,
#RaisingIndex #Convery .card .caption,
#RaisingIndex #Convery .card .txtBlk {
letter-spacing: 0.1em;
}
#RaisingIndex #Convery figure {
border-radius: 10px;
overflow: hidden;
}
#RaisingIndex #Convery figure img {
width: 100%;
height: 100%;
object-fit: cover;
}
#RaisingIndex #Convery .card {
background-color: #ffffff;
text-align: center;
box-shadow: 0 3px 6px rgba(0,0,0,0.2);
position: relative;
}
#RaisingIndex #Convery .card {
animation-delay: .1s;
}
#RaisingIndex #Convery .point {
animation-delay: .3s;
}
#RaisingIndex #Convery .comment {
position: absolute;
letter-spacing: 0.2em;
}
#RaisingIndex #Convery .comment p {
margin-bottom: 1em;
line-height: 1.5;
display: table;
background: repeating-linear-gradient(-45deg, transparent, transparent 5px, #7d9b19 5px, #7d9b19 10px);
position: relative;
z-index: 1;
}
#RaisingIndex #Convery .comment span {
padding: 0.6em 2em;
color: #7d9b19;
font-weight: 500;
background-color: #ffffff;
display: block;
position: relative;
top: -10px;
right: 10px;
z-index: 1;
}
#RaisingIndex #Convery .card .point {
padding: 1.5em;
line-height: 1;
background-position: top;
background-repeat: no-repeat;
background-size: contain;
color: #ffffff;
font-weight: 500;
letter-spacing: 0.1em;
position: absolute;
}
#RaisingIndex #Convery .item01 .card .point {
background-image: url("images/img_fukidashi_r.svg");
top: -50px;
right: 13%;
transform: rotate(5deg);
}
#RaisingIndex #Convery .item02 .card .point {
background-image: url("images/img_fukidashi_l.svg");
top: -50px;
left: 3%;
}
/* Merit
-------------------- */
#RaisingIndex #Merit {
background-image: url("images/bk_contents_gr.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#RaisingIndex #Merit .contents {
position: relative;
}
#RaisingIndex #Merit .contents::before {
content: '';
margin: auto;
width: 100%;
height: 40%;
display: block;
background-image: url("images/bk_contents_br.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
position: absolute;
top: 0;
z-index: 0;
}
#RaisingIndex #Merit .contentsWrap {
position: relative;
z-index: 1;
}
#RaisingIndex #Merit h2 {
text-align: center;
position: relative;
color: #ffffff;
letter-spacing: 0.1em;
}
#RaisingIndex #Merit h2::after {
content: '';
margin: auto;
width: 65px;
height: 13px;
display: block;
background-color: #ffffff;
position: absolute;
right: 0;
bottom: 0;
left: 0;
}
#RaisingIndex #Merit .mainImg {
margin-right: auto;
margin-left: auto;
/* border: 1px solid #707070; */
border-radius: 13px;
overflow: hidden;
}
#RaisingIndex #Merit ol {
margin-right: auto;
margin-left: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#RaisingIndex #Merit ol li {
padding-top: 5em;
padding-bottom: 1.5em;
background-image: url("images/img_border.svg");
background-position: top;
background-repeat: no-repeat;
background-size: contain;
color: #ffffff;
text-align: center;
border-bottom: 3px solid #ffffff;
position: relative;
}
#RaisingIndex #Merit ol li:first-of-type {
animation-delay: .3s;
transition-duration: .8s;
}
#RaisingIndex #Merit ol li:nth-child(2) {
animation-delay: .6s;
transition-duration: .8s;
}

#RaisingIndex #Merit .num small {
letter-spacing: 0.1em;
}
#RaisingIndex #Merit h3 {
letter-spacing: 0.1em;
}
#RaisingIndex #Merit .txtBlk {
letter-spacing: 0.1em;
}
#RaisingIndex #Merit .num figure {
margin-right: auto;
margin-left: auto;
}
/* Committed
-------------------- */
#Committed {
background-image: url("images/bk_contents_wh.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#Committed .contentsWrap {
text-align: center;
}
#Committed h2 {
margin-bottom: 25px;
padding-right: 0.1em;
padding-left: 0.2em;
display: inline-block;
background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
letter-spacing: 0.1em;
position: relative;
}
#Committed .slideItem figure {
margin-right: auto;
margin-bottom: 20px;
margin-left: auto;
width: 95%;
}
#Committed .slideItem .contentsWrap {
position: relative;
}
#Committed .slideItem .contentsWrap::before {
content: '';
width: 2px;
height: 100%;
background-color: #707070;
position: absolute;
left: -1em;
}
#Committed .gallerySlide h3 {
letter-spacing: 0.1em;
text-align: left;
}
#Committed .gallerySlide .txtBlk {
text-align: left;
}
#Committed .gallerySlide .prev-arrow {
background-image: url("images/ic_gallery_r.png");
background-repeat: no-repeat;
background-size: contain;
}
#Committed .gallerySlide .next-arrow {
background-image: url("images/ic_gallery_r.png");
background-repeat: no-repeat;
background-size: contain;
}

/* RaisingTsugiki
----------------------------------------- */
#RaisingTsugiki #contentsHead {
width: 100%;
min-height: auto;
top: 0;
z-index: 1;
}
#RaisingTsugiki .container {
width: 100%;
}
/* headEntryList
-------------------- */
#RaisingTsugiki #mainSlider {
position: relative;
z-index: 1;
}
#RaisingTsugiki .headEntryList {
margin-bottom: 0;
}
#RaisingTsugiki .headEntryList .slide-arrow {
top: -15%;
}
#RaisingTsugiki .headEntryList .prev-arrow {
background-image: url(images/ic_gallery_r.png);
left: 1%;
-webkit-transform: rotate(-180deg);
transform: rotate(-180deg);
}
#RaisingTsugiki .headEntryList .next-arrow {
background-image: url(images/ic_gallery_r.png);
right: 1%;
}
#RaisingTsugiki .headEntryList .slick-dots li {
margin: 0 10px;
}
#RaisingTsugiki .headEntryList .category {
background-color: #f0eadc;
}
#RaisingTsugiki .headEntryList .contentsWrap {
background-color: #ffffff;
}

/* Process
-------------------- */
#RaisingTsugiki #Process {
background-image: url("images/bk_contents_br.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
position: relative;
}
#RaisingTsugiki #Process::after {
content: '';
width: 100vw;
height: 100%;
display: block;
background-image: url(images/bk_contents_gr.jpg);
background-position: top;
background-repeat: repeat;
background-size: 100%;
position: absolute;
top: 0;
z-index: 0;
clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
#RaisingTsugiki #Process .contents {
padding: 13px;
background-color: #f0eadc;
position: relative;
z-index: 1;
}
#RaisingTsugiki #Process .contentsWrap {
background-color: #ffffff;
position: relative;
}
#RaisingTsugiki #Process > .contents::before,
#RaisingTsugiki #Process > .contents .contentsWrap::before {
content: '';
margin: auto;
display: block;
clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
position: absolute;
bottom: 100%;
right: 0;
left: 0;
}
#RaisingTsugiki #Process > .contents::before {
width: 100%;
height: 100px;
background-color: #f0eadc;
}
#RaisingTsugiki #Process > .contents .contentsWrap::before {
width: 100%;
height: 100px;
background-color: #ffffff;
}
#RaisingTsugiki #Process h2 {
text-align: center;
letter-spacing: 0.1em;
}
#RaisingTsugiki #Process h2 .pointTxt {
margin-right: auto;
margin-left: auto;
display: block;
}
#RaisingTsugiki #Process h2 .green {
position: relative;
}
#RaisingTsugiki #Process h2 .rub {
margin: auto;
display: block;
position: absolute;
bottom: 100%;
right: 0;
left: 0;
letter-spacing: 0.2em;
}
#RaisingTsugiki #Process .caption {
margin-right: auto;
margin-bottom: 55px;
margin-left: auto;
display: block;
text-align: center;
letter-spacing: 0.1em;
}
#RaisingTsugiki #Process .imgBlk {
margin-right: auto;
margin-left: auto;
}
#RaisingTsugiki #Process .imgBlk .colBlk {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
/* #RaisingTsugiki #Process .imgBlk .colBlk:first-of-type::after {
content: '';
display: block;
width: 100%;
height: 15px;
border: 2px solid #52453b;
border-top: 0;
} */
/* #RaisingTsugiki #Process .imgBlk .colBlk:last-of-type::before,
#RaisingTsugiki #Process .imgBlk .colBlk:last-of-type::after {
content: '';
margin: auto;
display: block;
background-color: #52453b;
position: absolute;
right: 0;
left: 0;
}
#RaisingTsugiki #Process .imgBlk .colBlk:last-of-type::before {
width: 2px;
height: 60px;
top: -45px;
} */
#RaisingTsugiki #Process .imgBlk .colBlk:last-of-type::after {
width: 16px;
height: 27px;
clip-path: polygon(50% 100%, 0 0, 100% 0);
}
#RaisingTsugiki #Process .comment {
color: #f0eadc;
text-align: center;
position: relative;
z-index: 1;
letter-spacing: 0.1em;
}

/* Merit
-------------------- */
#RaisingTsugiki #Merit {
margin-bottom: 50px;
position: relative;
}
#RaisingTsugiki #Merit::after {
content: '';
margin-right: auto;
margin-left: auto;
width: 1px;
height: 85px;
border-left: 5px dotted #f0eadc;
display: block;
position: relative;
z-index: 1;
}
#RaisingTsugiki #Merit h3 {
display: inline-block;
background-color: #7d9b19;
color: #ffffff;
text-align: center;
}
#RaisingTsugiki #Merit ol {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#RaisingTsugiki #Merit ol li {
text-align: center;
}
#RaisingTsugiki #Merit ol li .num {
width: 65px;
text-align: left;
}
#RaisingTsugiki #Merit ol li h3 {
margin-bottom: 15px;
width: 100%;
}
#RaisingTsugiki #Merit ol li .imageBlk {
margin-right: auto;
margin-bottom: 10px;
margin-left: auto;
}
#RaisingTsugiki #Merit ol li .txtBlk {
line-height: 1.5;
text-align: left;
}
/* Flow
-------------------- */
#RaisingTsugiki #Flow {
position: relative;
}
#RaisingTsugiki #Flow::before,
#RaisingTsugiki #Flow::after {
content: '';
width: min(10vw,200px);
height: min(10vw,200px);
display: block;
background-color: #7d9b19;
position: absolute;
}
#RaisingTsugiki #Flow::before {
clip-path: polygon(0 0, 100% 100%, 100% 0);
top: 0;
right: 0;
}
#RaisingTsugiki #Flow::after {
clip-path: polygon(0 0, 100% 100%, 0 100%);
bottom: 0;
left: 0;
}
#RaisingTsugiki #Flow h2 {
text-align: center;
}
#RaisingTsugiki #Flow .caption {
text-align: center;
}
#RaisingTsugiki #Flow ol {
position: relative;
}
#RaisingTsugiki #Flow ol::before {
content: '';
width: 1px;
height: 100%;
display: block;
border-left: 3px dashed #52453b;
position: absolute;
top: 0;
}
#RaisingTsugiki #Flow ol li {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
letter-spacing: 0.1em;
}
#RaisingTsugiki #Flow ol li .imgTxt {
position: absolute;
z-index: 1;
} 
#RaisingTsugiki #Flow ol li .colBlk {
box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}
#RaisingTsugiki #Flow ol li .rightBlk {
background-color: #f0eadc;
position: relative;
}
#RaisingTsugiki #Flow ol li:nth-child(n+2) .rightBlk::before {
content: '';
margin: auto;
width: 72px;
height: 25px;
display: block;
background-color: #ffffff;
clip-path: polygon(50% 100%, 0 0, 100% 0);
position: absolute;
top: 0;
right: 0;
left: 0;
}
#RaisingTsugiki #Flow ol li .colBlk figure {
width: 100%;
height: 100%;
position: relative;
}
#RaisingTsugiki #Flow ol li figcaption {
padding-right: 1.5em;
padding-left: 1.5em;
color: #7d9b19;
font-weight: 500;
display: inline-block;
background-color: #ffffff;
position: absolute;
top: 0;
}
#RaisingTsugiki #Flow ol li .colBlk figure img {
width: 100%;
height: 100%;
}

/* Product Page
----------------------------------------- */
.Products .prologue {
background-image: url(images/bk_contents_wh.jpg);
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
.Products .container h2 {
color: #365d4b;
}
.Products .tableBlk table {
margin-bottom: 0.8em;
width: 100%;
}
.Products .tableBlk th,
.Products .tableBlk td {
padding: 0.4em 0;
text-align: center;
border: 3px solid #ffffff;
}
.Products .tableBlk th {
background-color: #365d4b;
color: #ffffff;
}
.Products .tableBlk td {
background-color: #f0eadc;
font-weight: bold;
}
.Products .tableBlk thead th:first-of-type,
.Products .tableBlk thead th:nth-child(2) {
background-color: #52453b;
}
.Products .contactBtn .contentsWrap {
margin-right: auto;
margin-left: auto;
}
.Products .contactBtn a {
background-color: #365d4b;
color: #ffffff;
text-align: center;
display: block;
}
.Products .contactBtn a:hover {
background-color: #7d9b19;
}

.Products .contactBtn a svg {
margin-left: 0.4em;
margin-bottom: 4px;
width: auto;
height: 1em;
vertical-align: middle;
}

/* Plug
-------------------- */
#ProductPlug #contentsHead {
background-image: url("images/bk_chead_plug.jpg");
}
/* Pot
-------------------- */
#ProductPot #contentsHead {
background-image: url("images/bk_chead_pot.jpg");
}

#ProductJifi7c #contentsHead {
    background-image: url("images/bk_chead_jifi.jpg");
}


#ProductEenae #contentsHead {
    background-image: url("images/bk_chead_eenae.jpg");
}


/* Company
----------------------------------------- */
#Company #main {
background-image: url("images/bk_contents_wh.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#Company .container {
width: 100%;
}

/* Mainimg
-------------------- */
#Company #Mainimg {
color: #52453b;
position: relative;
z-index: 1;
}
#Company #Mainimg .contentsWrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#Company #Mainimg .copy {
display: inline-block;
font-family: "futura-pt", sans-serif;
letter-spacing: 0.1em;
}
#Company #Mainimg .copy span {
display: block;
}
#Company #Mainimg .pageTitle {
font-weight: 300;
letter-spacing: 0.1em;
}
#Company #Mainimg .mainImg {
overflow: hidden;
}
/* Challenge
-------------------- */
#Company #Challenge .contents {
position: relative;
}
#Company #Challenge .contents::after {
content: '';
width: 100%;
display: block;
background-image: url("images/bk_contents_gr.jpg");
clip-path: polygon(0 10%, 100% 0, 100% 100%, 0% 100%);
position: absolute;
z-index: 0;
}
#Company #Challenge .contentsWrap {
position: relative;
z-index: 1;
}
#Company #Challenge .contents > h2 {
margin-bottom: 40px;
}
#Company #Challenge .contents > h2,
#Company #Challenge .contents > .txtBlk {
color: #f0eadc;
text-align: center;
position: relative;
z-index: 1;
letter-spacing: 0.1em;
}
#Company #Challenge ol li {
position: relative;
}
#Company #Challenge ol li .num {
position: absolute;
z-index: 1;
}
#Company #Challenge ol li .photo {
display: block;
/* border: 1px solid #707070;
border-radius: 15px;
box-shadow: 0 3px 3px rgba(0,0,0,0.2); */
overflow: hidden;
}
#Company #Challenge ol li .txtBlk {
font-weight: 500;
letter-spacing: 0.1em;
position: absolute;
z-index: 1;
}
#Company #Challenge ol li .txtBlk > span {
margin-bottom: 0.8em;
padding-right: 1em;
padding-left: 1em;
background-color: #f0eadc;
display: table;
box-shadow: 3px 3px 0 rgba(0,0,0,0.2);
}
/* Message
-------------------- */
#Company #Message {
border: 0;
background-image: url("images/bk_contents_br.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#Company #Message .contentsWrap {
position: relative;
}
#Company #Message .comment {
background-color: #ffffff;
box-shadow: 0 3px 8px rgba(0,0,0,0.2);
}
#Company #Message .comment h2 {
font-weight: 500;
text-align: center;
letter-spacing: 0.1em;
}
#Company #Message .comment .sign {
margin-top: 1em;
text-align: right;
}
#Company #Message .comment .sign small {
margin-right: 0.8em;
}
#Company #Message .comment .sign strong {
font-weight: normal;
}



/* History
-------------------- */
#Company #History {
position: relative;
}
#Company #History::before,
#Company #History::after {
content: '';
width: min(10vw,200px);
height: min(10vw,200px);
display: block;
background-color: #365d4b;
position: absolute;
}
#Company #History::before {
clip-path: polygon(0 0, 100% 100%, 100% 0);
top: 0;
right: 0;
}
#Company #History::after {
clip-path: polygon(0 0, 100% 100%, 0 100%);
bottom: 0;
left: 0;
}
#Company #History h2  {
text-align: center;
font-weight: 500;
letter-spacing: 0.1em;
}
#Company #History h2 span {
padding-right: 0.1em;
padding-bottom: 0.1em;
padding-left: 0.2em;
background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
background: linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 40%);
text-align: center;
display: inline-block;
position: relative;
z-index: 1;
}
#Company #History .calendar {
position: relative;
overflow: hidden;
}
#Company #History .calendar::before {
content: '';
width: 1px;
height: 110%;
display: block;
border-left: 2px dotted #365d4b;
position: absolute;
top: 6em;
left: 0.6em;
}
#Company #History .calendar dt {
margin-left: 3em;
margin-bottom: 15px;
line-height: 1.3;
color: #365d4b;
letter-spacing: 0.1em;
border-bottom: 1px solid #365d4b;
position: relative;
}
#Company #History .calendar dt::before {
content: '';
width: 2.5em;
height: 1px;
background-color: #365d4b;
display: block;
position: absolute;
left: -2.5em;
bottom: -29px;
z-index: 1;
transform : skewY(-50deg);
}
#Company #History .calendar dt::after {
content: '';
width: 22px;
height: 22px;
display: block;
background-color: #365d4b;
clip-path: circle(50% at 50% 50%);
position: absolute;
bottom: -70px;
left: -3em;
}
#Company #History .calendar dt .wesCal {
margin-right: 15px;
vertical-align: sub;
}
#Company #History .calendar dd {
line-height: 1.7;
color: #52453b;
text-align: right;
}
/* Office
-------------------- */
#Company #Office {
padding-top: 150px;
background-color: #ffffff;
}
#Company #Office h2  {
text-align: center;
font-weight: 500;
letter-spacing: 0.1em;
}
#Company #Office h2 span {
padding-right: 0.1em;
padding-bottom: 0.1em;
padding-left: 0.2em;
text-align: center;
display: inline-block;
position: relative;
z-index: 1;
}
#Company #Office h2 span::before {
content: '';
margin: auto;
width: 100%;
height: 50%;
display: block;
background-color: #f0eadc;
position: absolute;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
}
#Company #Office .gallerySlide {
margin-bottom: 90px;
}
#Company #Office .address table {
margin-bottom: 40px;
}
#Company #Office .address table th {
min-width: 8em;
text-align: left;
font-weight: 500;
}
#Company #Office .officeList figure {
margin-bottom: 30px;
}
#Company #Office .officeList h3 {
font-weight: 500;
}
#Company #Office .officeList address {
margin-bottom: 10px;
line-height: 1.5;
}
#Company #Office .officeList a {
width: 100%;
color: #065FD4;
display: block;
/* background-color: #52453b; */
border-radius: 100px;
/* text-align: center; */
}
#Company #Office .officeList a:hover {
/* background-color: #7d9b19; */
text-decoration: underline;
}


/* Policy
----------------------------------------- */
#Policy .caption {
color: #365d4b;
text-align: center;
}
#Policy .bge-contents h2 {
padding-top: 3px;
padding-bottom: 3px;
padding-left: 0.8em;
border-left: 10px solid #365d4b;
color: #365d4b;
}



/* KYOUTSU END // PC BASE ==================== */
@media only screen and (min-width: 1160px){	

/* general Base
============================================== */
.generalPage #main {
padding-top: 140px;
}
.Noheader #main {
padding-top: 0;
}

/* contentsHead
============================================== */
#contentsHead {
min-height: 750px;
position: relative;
}

#contentsHead #contentsTitle {
position: relative;
top: 150px;
z-index: 1;
}
#contentsHead #breadCrumbs::before {
width: 36%;
}
#contentsHead #breadCrumbs::before {
content: '';
min-height: 3em;
display: block;
background-color: #365d4b;
border-top-right-radius: 15px;
position: absolute;
z-index: 0;
}
#contentsHead #breadCrumbs .wrap {
margin: auto;
width: 1160px;
font-size: min(6vw,14px);
}
#contentsHead .title::before {
width: 40%;
}
#contentsHead .title::before {
content: '';
min-height: 5em;
display: block;
background-color: #ffffff;
border-top-right-radius: 15px;
border-bottom-right-radius: 15px;
position: absolute;
z-index: 0;
}
#contentsHead .title h1 {
margin: auto;
padding-top: 20px;
padding-bottom: 20px;
width: 1160px;
}

/* ServiceIndex
============================================== */
#ServiceIndex #Deliver {
margin-right: auto;
margin-left: auto;
width: 1160px;
padding-bottom: 7rem;
}
#ServiceIndex #Deliver .colBlk {
width: 50%;
}
#ServiceIndex #Deliver h2 {
margin-top: 96px;
/* margin-bottom: 70px; */
font-size: min(6vw,50px);
}
#ServiceIndex #Deliver .colBlk figure {
margin-top: 50px;
margin-right: auto;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Facility  {
padding-top: 228px;
padding-bottom: 118px;
clip-path: polygon(50% 0%, 100% 10%, 100% 100%, 0 100%, 0% 10%);
}
#ServiceIndex #Facility .title {
margin-bottom: 100px;
}
#ServiceIndex #Facility .title .En {
font-size: min(6vw,55px);
}
#ServiceIndex #Facility .title .Jp {
font-size: min(6vw,26px);
}
#ServiceIndex #Facility ul {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#ServiceIndex #Facility ul li:nth-child(even) .colBlk:first-of-type {
order: 2;
}
#ServiceIndex #Facility ul li:nth-child(even) .colBlk:last-of-type {
order: 1;
}
#ServiceIndex #Facility ul li:nth-last-child(n+2) {
margin-bottom: 72px;
}
#ServiceIndex #Facility ul li .colBlk {
width: 50%;
}
#ServiceIndex #Facility ul li figure {
border-radius: 20px;
}
#ServiceIndex #Facility ul li h3 {
padding-top: 62px;
margin-bottom: 37px;
font-size: min(6vw,27px);
}
#ServiceIndex #Facility ul li:nth-child(even) .colBlk:last-of-type {
padding-right: 75px;
}
#ServiceIndex #Facility ul li:nth-child(odd) .colBlk:last-of-type {
padding-left: 75px;
}

#ServiceIndex #Point {
padding-bottom: 100px;
}
#ServiceIndex #Point .headItem {
padding-top: 96px;
padding-bottom: 96px;
}
#ServiceIndex #Point h2 strong {
font-size: min(6vw,87px);
}
#ServiceIndex #Point h2 {
font-size: min(6vw,53px);
}
#ServiceIndex #Point ul {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#ServiceIndex #Point ul li {
width: calc(95%/3);
}
#ServiceIndex #Point ul li .num small {
font-size: min(6vw,20px);
}
#ServiceIndex #Point ul li .num strong {
font-size: min(6vw,82px);
}
#ServiceIndex #Point ul li h3 {
width: 100%;
min-height: 3.8em;
display: flex;
justify-content: center;
align-items: flex-start;
font-size: min(6vw,39px);
}

#ServiceIndex #Point ul li:first-of-type {
animation-delay: .3s;
}
#ServiceIndex #Point ul li:nth-child(2) {
animation-delay: .4s;
}
#ServiceIndex #Point ul li:last-of-type {
animation-delay: .5s;
}

/* RaisingIndex
============================================== */
/* Convery
==================== */
#RaisingIndex #Convery .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#RaisingIndex #Convery {
padding-top: 85px;
}
#RaisingIndex #Convery .point {
font-size: min(6vw,25px);
}
#RaisingIndex #Convery .comment {
font-size: min(6vw,25px);
}
#RaisingIndex #Convery .card {
padding: 70px;
}
#RaisingIndex #Convery .card h2 {
margin-bottom: 20px;
font-size: min(6vw,61px);
}
#RaisingIndex #Convery .card .caption {
margin-bottom: 30px;
font-size: min(6vw,23px);
}
#RaisingIndex #Convery .card .txtBlk {
display: block;
font-size: min(6vw,17px);
text-align: justify;
}
#RaisingIndex #Convery .item01 .box01 {
width: 53%;
}
#RaisingIndex #Convery .item01 .box02 {
width: 45%;
}
#RaisingIndex #Convery .item01 .box02 figure {
margin-bottom: 5%;
height: 35%;
}
#RaisingIndex #Convery .item01 .box02 .card {
height: 60%;
position: relative;
bottom: 0;
}
#RaisingIndex #Convery .item01 .comment {
top: 15%;
}
#RaisingIndex #Convery .item01 .comment p:first-of-type {
left: -25%;
}
#RaisingIndex #Convery .item01 .comment p:last-of-type {
left: -8%;
}
#RaisingIndex #Convery .item02 .comment {
right: 0;
bottom: 38%;
}
#RaisingIndex #Convery .item02 .comment p:first-of-type {
right: -15%;
}
#RaisingIndex #Convery .item02 .comment p:last-of-type {
right: -25%;
}
#RaisingIndex #Convery .item02 .box01 {
width: 45%;
}
#RaisingIndex #Convery .item02 .box02 {
width: 53%;
}
#RaisingIndex #Convery .item02 .box01 figure {
margin-bottom: 5%;
height: 43%;
}
#RaisingIndex #Convery .item02 .box01 .card {
height: 53%;
position: relative;
bottom: 0;
}
#RaisingIndex #Convery .item02 .box02 figure:nth-child(n+2) {
margin-bottom: 5%;
}
/* Merit
==================== */
#RaisingIndex #Merit .contents {
padding-top: 115px;
padding-bottom: 120px;
}
#RaisingIndex #Merit .mainImg {
margin-bottom: 100px;
width: 1160px;
}
#RaisingIndex #Merit .mainImg img{
    width: 100%;
}

#RaisingIndex #Merit h2 {
margin-bottom: 80px;
padding-bottom: 50px;
font-size: min(6vw,45px);
}
#RaisingIndex #Merit h2 strong {
font-size: min(6vw,68px);
}
#RaisingIndex #Merit ol {
width: 1160px;
}
#RaisingIndex #Merit ol li {
width: 45%;
}
#RaisingIndex #Merit .num {
margin-bottom: 56px;
}
#RaisingIndex #Merit .num small {
font-size: min(6vw,14px);
}
#RaisingIndex #Merit .num figure {
width: 89px;
}
#RaisingIndex #Merit h3 {
margin-bottom: 40px;
line-height: 1.5;
font-size: min(6vw,30px);
}
#RaisingIndex #Merit .txtBlk {
margin-right: auto;
margin-bottom: 40px;
margin-left: auto;
width: 80%;
font-size: min(6vw,15px);
}

/* Committed
==================== */
#Committed {
padding-top: 136px;
padding-bottom: 113px;
}
#Committed h2 {
/* margin-bottom: 104px; */
font-size: min(6vw,46px);
}
#RaisingTsugiki #Committed h2 {
    margin-bottom: 104px;
    /* font-size: min(6vw,46px); */
    }
#Committed .gallerySlide h3 {
margin-right: auto;
margin-bottom: 10px;
margin-left: auto;
width: 80%;
}
#Committed .gallerySlide .txtBlk {
margin-right: auto;
margin-left: auto;
width: 80%;
}
#Committed .gallerySlide .slide-arrow {
top: -30%;
}


/* RaisingTsugiki
============================================== */
/* Process
==================== */
#RaisingTsugiki #contentsHead {
position: absolute;
}
#RaisingTsugiki #Process {
margin-top: -100px;
padding-top: 250px;
padding-bottom: 100px;
}
#RaisingTsugiki #Process > .contents {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#RaisingTsugiki #Process > .contents .contentsWrap {
padding-bottom: 100px;
}
#RaisingTsugiki #Process h2 .pointTxt {
max-width: 463px;
}
#RaisingTsugiki #Process h2 {
margin-bottom: 50px;
font-size: min(6vw,46px);
}
#RaisingTsugiki #Process h2 .rub {
font-size: min(6vw,16px);
}
#RaisingTsugiki #Process h2 .pointTxt {
margin-bottom: 50px;
}
#RaisingTsugiki #Process .caption {
width: 679px;
}
#RaisingTsugiki #Process .imgBlk {
width: 80%;
}
#RaisingTsugiki #Process .imgBlk figure {
/* width: 50%; */
}
#RaisingTsugiki #Process .imgBlk .colBlk:first-of-type {
margin-bottom: 44px;
}
#RaisingTsugiki #Process > .contents  {
margin-bottom: 50px;
}
#RaisingTsugiki #Process .comment {
font-size: min(6vw,27px);
}
/* Merit
==================== */
#RaisingTsugiki #Merit > .contents {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#RaisingTsugiki #Merit > .contents .contentsWrap {
padding-top: 80px;
padding-bottom: 100px;
}
#RaisingTsugiki #Merit ol {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingTsugiki #Merit ol li {
padding-right: 2%;
padding-left: 2%;
width: 32%;
}
#RaisingTsugiki #Merit ol li:nth-child(2) {
border-right: 2px dotted #52453b;
border-left: 2px dotted #52453b;
}
#RaisingTsugiki #Merit ol li .imageBlk {
min-width: 256px;
}

/* Flow
==================== */
#RaisingTsugiki #Flow > .contents {
margin-right: auto;
margin-left: auto;
padding-top: 10rem;
width: 1160px;
}
#RaisingTsugiki #Flow .contents .contentsWrap {
padding-top: 80px;
padding-bottom: 100px;
}
#RaisingTsugiki #Flow h2 {
margin-bottom: 50px;
font-size: min(6vw,46px);
}
#RaisingTsugiki #Flow .caption {
margin-bottom: 85px;
}
#RaisingTsugiki #Flow ol {
margin-right: 0;
margin-left: auto;
width: 940px;
}
#RaisingTsugiki #Flow ol li {
margin-bottom: 50px;
}
#RaisingTsugiki #Flow ol::before {
left: -70px;
}
#RaisingTsugiki #Flow ol li .imgTxt {
width: 116px;
height: auto;
left: -120px;
}
#RaisingTsugiki #Flow ol li .imgTxt.point01 {
top: -20%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point02 {
top: -20%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point03 {
top: -20%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point04 {
bottom: -20%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point05 {
top: 30%;
}
#RaisingTsugiki #Flow ol li .colBlk {
width: 50%;
}
#RaisingTsugiki #Flow ol li .leftBlk {
border-top-left-radius: 20px;
border-bottom-left-radius: 20px;
overflow: hidden;
}
#RaisingTsugiki #Flow ol li figcaption {
border-bottom-right-radius: 20px;
}
#RaisingTsugiki #Flow ol li .rightBlk {
padding: 50px 60px;
border-top-right-radius: 20px;
border-bottom-right-radius: 20px;
font-size: min(6vw,15px);
overflow: hidden;
}
#RaisingTsugiki #Flow ol li h3 {
margin-bottom: 25px;
}

/* Product Page
============================================== */
.Products .wrapper > .container {
margin-right: auto;
margin-left: auto;
width: 100%!important;
}
.Products .prologue .contents {
padding-top: 80px;
padding-bottom: 80px;
margin-right: auto;
margin-left: auto;
width: 1160px;
position: relative;
}
.Products .prologue .contentsWrap {
margin-right: auto;
margin-left: 0;
padding-top: 2em;
width: 45%;
position: absolute;
left: 0;
}
.Products .container h2 {
margin-bottom: 50px;
}
.Products .prologue figure.photo_01 {
border-top-left-radius: 20px;
border-bottom-left-radius: 20px;
overflow: hidden;
}
.Products .prologue figure.photo_02 {
border-top-right-radius: 20px;
border-bottom-right-radius: 20px;
overflow: hidden;
}
.Products .prologue .photo_01  {
width: 52%;
position: relative;
top: 20%;
right: -48%;
z-index: 1;
}
.Products .prologue .photo_02 {
margin-top: -6%;
width: 60%;
position: relative;
right: 0;
z-index: 0;
}
.Products .standardList {
padding-top: 80px;
padding-bottom: 80px;
}
.Products .standardList .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
.Products .tableBlk th,
.Products .tableBlk td {
vertical-align: middle;
}
.Products .tableBlk td:nth-child(n+3) {
font-size: 150%;
}
.Products .tableBlk tbody tr th:first-of-type {
writing-mode: horizontal-tb;
}
.Products .contactBtn .contentsWrap {
width: 1160px;
}
.Products .contactBtn a {
padding: 1em;
width: 100%;
border-radius: 10px;
}





/* Company
============================================== */
/* Mainimg
==================== */
#Company #Mainimg {
padding-top: 274px;
}
#Company #Mainimg .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#Company #Mainimg .copy {
margin-bottom: 30px;
line-height: 1.2;
font-size: min(6vw,60px);
}
#Company #Mainimg .pageTitle {
font-size: min(6vw,28px);
}
#Company #Mainimg .colBlk:first-of-type {
width: auto;
}
#Company #Mainimg .colBlk:last-of-type {
width: 55%;
}
#Company #Mainimg .mainImg {
border-radius: 40px;
}
/* Challenge
==================== */
#Company #Challenge .contents {
padding-top: 150px;
}
#Company #Challenge .contents::before {
top: -8%;
}
#Company #Challenge .contents::after {
height: 110%;
top: -10%;
}
#Company #Challenge .contents > h2 {
margin-bottom: 40px;
font-size: min(6vw,60px);
}
#Company #Challenge .contents > h2 strong.x2 {
font-size: min(6vw,92px);
}
#Company #Challenge .contents > h2 strong {
font-size: min(6vw,80px);
}
#Company #Challenge .contents > .txtBlk {
margin-bottom: 200px;
font-size: min(6vw,18px);
}
#Company #Challenge .contents .contentsWrap {
padding-bottom: 200px;
}
#Company #Challenge ol {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#Company #Challenge ol li:nth-last-child(n+2) {
margin-bottom: 150px;
}
#Company #Challenge ol li .num {
width: 138px;
top: -80px;
}
#Company #Challenge ol li:nth-child(even) .num {
right: 0;
}
#Company #Challenge ol li .photo {
width: 60%;
}
#Company #Challenge ol li:nth-child(even) .photo  {
margin-right: 0;
margin-left: auto;
}
#Company #Challenge ol li .photo img {
width: 100%;
}
#Company #Challenge ol li .txtBlk {
font-size: min(6vw,40px);
top: 30%;
}
#Company #Challenge ol li:nth-child(odd) .txtBlk {
left: 45%;
}
#Company #Challenge ol li:nth-child(even) .txtBlk {
right: 45%;
}
#Company #Challenge ol li:nth-child(even) .txtBlk > span {
margin-right: 0;
margin-left: auto;
}
/* Message
==================== */
#Company #Message {
padding-top: 35%;
padding-bottom: 10%;
}
#Company #Message .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#Company #Message figure {
margin-right: 0;
margin-left: auto;
width: 60%;
position: absolute;
right: 0;
top: -35%;
}
#Company #Message .comment {
padding: 165px 50px;
width: 85%;
border-radius: 10px;
}
#Company #Message .comment h2 {
margin-bottom: 60px;
font-size: min(6vw,40px);
}

/* History
==================== */
#Company #History {
padding-top: 230px;
}
#Company #History h2 {
margin-bottom: 170px;
font-size: min(6vw,40px);
}
#Company #History .contentsWrap {
margin-right: auto;
margin-left: auto;
padding-bottom: 20%;
width: 1160px;
display: flex;
justify-content: space-between;
align-items: flex-start;
}
#Company #History .calendar {
width: calc(95%/2);
display: inline-block;
vertical-align: top;
}
#Company #History .calendar dt .wesCal {
font-size: min(6vw,45px);
}
#Company #History .calendar dd {
margin-bottom: 2em;
padding-left: 3em;
}

/* Office
==================== */
#Company .container {
margin-bottom: 200px;
}
#Company #Office h2 {
margin-bottom: 170px;
font-size: min(6vw,40px);
}
#Company #Office .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}
#Company #Office .address {
margin-right: auto;
margin-left: auto;
width: 700px;
}
#Company #Office .address .colTwoBlk {
margin-bottom: 110px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
#Company #Office .address .colTwoBlk table:last-child{
position: relative;
}
#Company #Office .address .colTwoBlk table:last-child::before {
content: '';
margin: 0 auto;
width: 1px;
height: 100%;
display: block;
background-color: #52453b;
position: absolute;
left: -20px;
}
#Company #Office .address .colTwoBlk table {
margin-bottom: 0;
}
#Company #Office .officeList {
margin-right: auto;
margin-left: auto;
width: 1130px;
display: flex;
flex-wrap: wrap;
}
#Company #Office .officeList li {
margin: 30px 10px;
width: calc(94%/3);
}

/* Policy
============================================== */
#Policy #contentsTitle {
margin-bottom: 80px;
}
#Policy .caption {
margin-bottom: 180px;
font-size: min(6vw,18px);
letter-spacing: 0.1em;
}
#Policy .bge-contents h2 {
margin-bottom: 20px;
}
#Policy .bge-contents .bgb-wysiwyg {
margin-bottom: 96px;
font-size: min(6vw,18px);
letter-spacing: 0.1em;
}
@media only screen and (max-width: 1159px){
}
    


}/* PC END // SP BASE |||||||||||||||||||||||||||||| */
@media only screen and (max-width: 1159px){
#Contact #header{
    position: relative;
}

/* contentsHead
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#contentsHead {
min-height: 55vh;
position: relative;
}
#contentsHead #contentsTitle {
padding-top: 50px;
position: relative;
}
#contentsHead #breadCrumbs::before {
width: 45%;
}
#contentsHead #breadCrumbs .wrap {
padding-right: 2em;
padding-left: 1em;
width: auto;
display: inline-block;
background-color: #365d4b;
border-top-right-radius: 15px;
font-size: min(5vw,16px);
}
#contentsHead .title h1 {
padding-top: 20px;
padding-right: 30%;
padding-bottom: 20px;
padding-left: 5%;
display: inline-block;
background-color: #ffffff;
border-top-right-radius: 15px;
border-bottom-right-radius: 15px;
font-size: min(6vw,36px);
}
#contentsHead .title::before {
width: 60%;
}

/* ServiceIndex
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#ServiceIndex .container > .contentWrap {
width: 100%;
}

#ServiceIndex #Deliver {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Deliver h2 {
margin-top: 46px;
margin-bottom: 35px;
font-size: min(8vw,50px);
}
#Deliver h3.houjo_img {
    padding: 2rem 0;
    }
#ServiceIndex #Deliver .colBlk figure {
margin-top: 20px;
margin-right: 0;
margin-left: auto;
width: 60%;
}
#ServiceIndex #Facility  {
padding-top: 100px;
padding-bottom: 60px;
clip-path: polygon(50% 0%, 100% 2%, 100% 100%, 0 100%, 0% 2%);
}
#ServiceIndex #Facility .title {
margin-right: auto;
margin-bottom: 60px;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Facility .title .En {
font-size: min(10vw,55px);
}
#ServiceIndex #Facility .title .Jp {
font-size: min(10vw,26px);
}
#ServiceIndex #Facility ul {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Facility ul li {
margin-bottom: 30px;
}
#ServiceIndex #Facility ul li h3 {
font-size: min(8vw,27px);
}
#ServiceIndex #Facility ul li figure {
margin-bottom: 25px;
border-radius: 15px;
width: 90%;
}
#ServiceIndex #Facility ul li:nth-child(odd) figure {
margin-right: auto;
margin-left: 0;
}
#ServiceIndex #Facility ul li:nth-child(even) figure {
margin-right: 0;
margin-left: auto;
}
#ServiceIndex #Point {
padding-bottom: min(15vw,200px);
}
#ServiceIndex #Point .headItem {
padding-top: 20px;
padding-bottom: 55px;
}
#ServiceIndex #Point .headItem .caption {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#ServiceIndex #Point h2 small {
font-size: min(15vw,29px);
}
#ServiceIndex #Point h2 strong {
font-size: min(15vw,86px);
}
#ServiceIndex #Point h2 span {
font-size: min(15vw,38px);
}
#ServiceIndex #Point ul {
margin-right: auto;
margin-bottom: 80px;
margin-left: auto;
width: 90%;
justify-content: center;
}
#ServiceIndex #Point ul li {
margin-right: 5px;
margin-left: 5px;
margin-bottom: 40px;
/* width: 270px; */
max-width: 100%;
min-width: 43vw;
-webkit-display: inline-block;
display: inline-flex;
flex-wrap: wrap;
}
#ServiceIndex #Point ul li p {
    padding-left: 20px;
    padding-right: 20px;
}
#ServiceIndex #Point ul li .num {
margin: auto;
}
#ServiceIndex #Point ul li .num small {
font-size: min(20vw,20px);
}
#ServiceIndex #Point ul li .num strong {
font-size: min(20vw,82px);
}
#ServiceIndex #Point ul li h3 {
margin: auto;
font-size: min(15vw,35px);
}

    
    



/* RaisingIndex
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#RaisingIndex .container > .contentWrap {
width: 100%;
}
/* Convery
|||||||||||||||||||| */
#RaisingIndex #Convery .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 100%;
}
#RaisingIndex #Convery {
padding-top: 85px;
}
#RaisingIndex #Convery .point {
font-size: min(6vw,18px);
}
#RaisingIndex #Convery .comment {
font-size: min(6vw,20px);
}
#RaisingIndex #Convery .card {
margin-bottom: 5%;
padding: min(8vw, 70px);
}
#RaisingIndex #Convery .card h2 {
margin-bottom: 20px;
font-size: min(8vw,61px);
}
#RaisingIndex #Convery .card .caption {
margin-bottom: 30px;
font-size: min(6vw,19px);
}
#RaisingIndex #Convery .card .txtBlk {
display: block;
font-size: min(8vw,17px);
text-align: justify;
}
#RaisingIndex #Convery ul {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingIndex #Convery ul li figure {
margin-bottom: 5%;
}
#RaisingIndex #Convery .item01 .box02 figure {
margin-bottom: 5%;
}
#RaisingIndex #Convery .item01 .box02 .card {
position: relative;
bottom: 0;
}
#RaisingIndex #Convery .item01 .comment {
top: 15%;
}
#RaisingIndex #Convery .item01 .comment p:first-of-type {
left: 0;
}
#RaisingIndex #Convery .item01 .comment p:last-of-type {
left: 0;
}
#RaisingIndex #Convery .item02 .comment {
right: 0;
bottom: 38%;
}
#RaisingIndex #Convery .item02 .comment p:first-of-type {
right: 0;
}
#RaisingIndex #Convery .item02 .comment p:last-of-type {
right: -5%;
}
#RaisingIndex #Convery .item02 .box01 figure {
margin-bottom: 5%;
}
#RaisingIndex #Convery .item02 .box01 .card {
position: relative;
bottom: 0;
}
#RaisingIndex #Convery .item02 .box02 figure:nth-child(n+2) {
margin-bottom: 5%;
}


/* Merit
|||||||||||||||||||| */
#RaisingIndex #Merit .contents {
padding-top: 85px;
padding-bottom: 60px;
}
#RaisingIndex #Merit .contents::before {
height: 20%;
}
#RaisingIndex #Merit .mainImg {
margin-bottom: 50px;
width: 90%;
}
#RaisingIndex #Merit h2 {
margin-bottom: 40px;
padding-bottom: 30px;
font-size: min(8vw,45px);
}
#RaisingIndex #Merit h2 strong {
font-size: min(8vw,68px);
}
#RaisingIndex #Merit ol {
width: 90%;
justify-content: space-around;
}
#RaisingIndex #Merit ol li {
margin-bottom: 40px;
width: 100%;
}
#RaisingIndex #Merit .num {
margin-bottom: 25px;
}
#RaisingIndex #Merit .num small {
font-size: min(8vw,14px);
}
#RaisingIndex #Merit .num figure {
width: 89px;
}
#RaisingIndex #Merit h3 {
margin-bottom: 20px;
line-height: 1.5;
font-size: min(8vw,30px);
}
#RaisingIndex #Merit .txtBlk {
margin-right: auto;
margin-bottom: 20px;
margin-left: auto;
width: 80%;
font-size: min(8vw,15px);
}

/* Committed
|||||||||||||||||||| */
#Committed {
padding-top: 62px;
padding-bottom: 62px;
}
#Committed h2 {
margin-bottom: 52px;
font-size: min(8vw,46px);
}
#Committed .gallerySlide h3 {
margin-right: auto;
margin-bottom: 10px;
margin-left: auto;
width: 80%;
}
#Committed .gallerySlide .txtBlk {
margin-right: auto;
margin-left: auto;
width: 80%;
}


/* RaisingTsugiki
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#RaisingTsugiki #mainSlider {
display: none;
}
#RaisingTsugiki #contentsHead {
position: absolute;
}
#RaisingTsugiki .container > .contentWrap {
width: 100%;
}
/* Process
|||||||||||||||||||| */
#RaisingTsugiki #Process {
padding-top: 350px;
padding-bottom: 100px;
}
#RaisingTsugiki #Process > .contents {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingTsugiki #Process > .contents .contentsWrap {
padding-bottom: 100px;
}
#RaisingTsugiki #Process h2 .pointTxt {
margin-bottom: 30px;
width: 90%;
max-width: 463px;
line-height: 1;
}
#RaisingTsugiki #Process h2 {
margin-right: auto;
margin-bottom: 50px;
margin-left: auto;
width: 90%;
line-height: 2;
font-size: min(7vw,46px);
}
#RaisingTsugiki #Process h2 .rub {
font-size: min(10vw,12px);
}
#RaisingTsugiki #Process .caption {
width: 90%;
}
#RaisingTsugiki #Process .imgBlk {
width: 80%;
}
#RaisingTsugiki #Process .imgBlk figure {
width: 100%;
}
#RaisingTsugiki #Process .imgBlk .colBlk:first-of-type {
margin-bottom: 44px;
}
#RaisingTsugiki #Process .imgBlk .colBlk:last-of-type figure:last-of-type {
margin-top: -50px;
}
#RaisingTsugiki #Process > .contents  {
margin-bottom: 50px;
}
#RaisingTsugiki #Process .comment {
margin-right: auto;
margin-left: auto;
width: 95%;
font-size: min(6vw,22px);
}
/* Merit
|||||||||||||||||||| */
#RaisingTsugiki #Merit > .contents {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingTsugiki #Merit > .contents .contentsWrap {
padding-top: 80px;
padding-bottom: 100px;
}
#RaisingTsugiki #Merit ol {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingTsugiki #Merit ol li {
margin-right: auto;
margin-left: auto;
padding-top: 15px;
padding-right: 2%;
padding-bottom: 20px;
padding-left: 2%;
width: 80%;
}
#RaisingTsugiki #Merit ol li:nth-child(2) {
border-top: 2px dotted #52453b;
border-bottom: 2px dotted #52453b;
}

/* Flow
|||||||||||||||||||| */
#RaisingTsugiki #Flow > .contents {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#RaisingTsugiki #Flow .contents .contentsWrap {
padding-top: 80px;
padding-bottom: 100px;
}
#RaisingTsugiki #Flow h2 {
margin-bottom: 50px;
font-size: min(6vw,46px);
}
#RaisingTsugiki #Flow .caption {
margin-bottom: 85px;
}
#RaisingTsugiki #Flow ol {
margin-right: 0;
margin-left: auto;
width: 74%;
}
#RaisingTsugiki #Flow ol li {
margin-bottom: 50px;
}
#RaisingTsugiki #Flow ol::before {
left: -70px;
}
#RaisingTsugiki #Flow ol li .imgTxt {
width: 116px;
height: auto;
left: -120px;
}
#RaisingTsugiki #Flow ol li .imgTxt.point01 {
top: -10%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point02 {
top: -10%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point03 {
top: -10%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point04 {
bottom: -10%;
}
#RaisingTsugiki #Flow ol li .imgTxt.point05 {
top: 20%;
}
#RaisingTsugiki #Flow ol li .colBlk {

}
#RaisingTsugiki #Flow ol li .leftBlk {
border-top-right-radius: 20px;
border-top-left-radius: 20px;
overflow: hidden;
}
#RaisingTsugiki #Flow ol li figcaption {
border-bottom-right-radius: 20px;
}
#RaisingTsugiki #Flow ol li .rightBlk {
padding: 20px 30px;
border-bottom-right-radius: 20px;
border-bottom-left-radius: 20px;
font-size: min(6vw,15px);
overflow: hidden;
}
#RaisingTsugiki #Flow ol li h3 {
margin-bottom: 10px;
}

/* Product Page
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
.Products .wrapper > .container > .contentWrap {
margin-right: auto;
margin-left: auto;
width: 100%!important;
}
.Products .prologue .contents {
padding-top: 20px;
padding-bottom: 40px;
margin-right: auto;
margin-left: auto;
width: 100%;
position: relative;
}
.Products .prologue .contentsWrap {
margin-right: auto;
margin-left: auto;
padding-top: 2em;
width: 90%;
}
.Products .container h2 {
margin-bottom: 40px;
}

.Products .prologue .photo_01  {
width: 52%;
position: relative;
top: 20%;
right: -48%;
z-index: 1;
border-top-left-radius: 20px;
border-bottom-left-radius: 20px;
overflow: hidden;
}
.Products .prologue .photo_02 {
margin-top: -10%;
width: 60%;
border-top-right-radius: 20px;
border-bottom-right-radius: 20px;
overflow: hidden;
position: relative;
right: 0;
z-index: 0;
}
.Products .standardList {
padding-top: 40px;
padding-bottom: 40px;
}
.Products .standardList .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 100%;
}
.Products .tableBlk th,
.Products .tableBlk td {
vertical-align: middle;
}
.Products .tableBlk td:nth-child(n+3) {
font-size: 120%;
}
.Products .contactBtn .contentsWrap {
width: 90%;
}
.Products .contactBtn a {
padding: 1em;
width: 100%;
border-radius: 10px;
}
.Products .tableBlk thead > tr th {
word-break: auto-phrase;
line-height: 1.2;
}
.Products .tableBlk tbody tr th:first-of-type {
padding-top: 0.5em;
padding-bottom: 0.5em;
font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
font-size: 15px;
text-align: center;
letter-spacing: 2px;
word-break: break-all;
vertical-align: middle;
}
.Products .tableBlk tbody tr th:first-of-type span {
display: inline-block;
-webkit-writing-mode: vertical-lr;
-ms-writing-mode: tb-lr;
writing-mode: vertical-lr;
vertical-align: middle;
white-space: nowrap;
}


/* Company
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#Company #headerRecruit .headerWrap {
padding-top: 0;
padding-left: 0;
height: 0;
}
#Company .container > .contentWrap {
width: 100%;
}
/* Mainimg
|||||||||||||||||||| */
#Company #Mainimg {
padding-top: 70px;
padding-bottom: 80px;
}
#Company #Mainimg .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#Company #Mainimg .copy {
margin-bottom: 20px;
line-height: 1.2;
font-size: min(10vw,60px);
}
#Company #Mainimg .pageTitle {
margin-bottom: 15px;
font-size: min(10vw,28px);
}

#Company #Mainimg .mainImg {
border-radius: 20px;
}
/* Challenge
|||||||||||||||||||| */
#Company #Challenge .contents::after {
height: 115%;
top: -15%;
}
#Company #Challenge .contents > h2 {
margin-bottom: 40px;
font-size: min(8vw,60px);
}
#Company #Challenge .contents > h2 strong.x2 {
font-size: min(10vw,92px);
}
#Company #Challenge .contents > h2 strong {
font-size: min(10vw,80px);
}
#Company #Challenge .contents > .txtBlk {
margin-right: auto;
margin-bottom: 100px;
margin-left: auto;
width: 90%;
font-size: min(8vw,18px);
}
#Company #Challenge .contents .contentsWrap {
padding-bottom: 30%;
}
#Company #Challenge ol {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#Company #Challenge ol li:first-of-type {
margin-bottom: 110px;
}
#Company #Challenge ol li:nth-last-child(2) {
margin-bottom: 150px;
}
#Company #Challenge ol li .num {
width: 100px;
top: -60px;
}
#Company #Challenge ol li:nth-child(even) .num {
right: 0;
}
#Company #Challenge ol li .photo {
width: 100%;
}
#Company #Challenge ol li:nth-child(even) .photo  {
margin-right: 0;
margin-left: auto;
}
#Company #Challenge ol li .photo img {
width: 100%;
}
#Company #Challenge ol li .txtBlk {
font-size: min(5vw,40px);
bottom: -30%;
}
#Company #Challenge ol li:nth-child(odd) .txtBlk {
left: -2%;
}
#Company #Challenge ol li:nth-child(even) .txtBlk {
right: -2%;
}
#Company #Challenge ol li:nth-child(even) .txtBlk > span {
margin-right: 0;
margin-left: auto;
}
/* Message
|||||||||||||||||||| */
#Company #Message .contentsWrap {
margin-right: auto;
margin-left: auto;
padding-bottom: 10%;
width: 90%;
height: 100%;
}
#Company #Message figure {
margin-right: 0;
margin-left: auto;
width: 65%;
}
#Company #Message .comment {
margin-top: -40px;
padding: 50px 30px;
width: 90%;
position: relative;
z-index: 1;
}
#Company #Message .comment h2 {
margin-bottom: 60px;
font-size: min(8vw,40px);
}
#Company #Message .comment .txtBlk {
font-size: min(8vw,16px);
}

/* History
|||||||||||||||||||| */
#Company #History {
padding-top: 100px;
}
#Company #History h2 {
margin-bottom: 100px;
font-size: min(10vw,40px);
}
#Company #History .contentsWrap {
margin-right: auto;
margin-left: auto;
padding-bottom: 20%;
width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
}
#Company #History .calendar {
width: 100%;
display: inline-block;
vertical-align: top;
}
#Company #History .calendar dt .wesCal {
font-size: min(10vw,45px);
}
#Company #History .calendar dd {
margin-bottom: 2em;
padding-left: 3em;
}


/* Office
|||||||||||||||||||| */
#Company #Office {
padding-bottom: 80px;
}
#Company #Office h2 {
margin-bottom: 100px;
font-size: min(10vw,40px);
}
#Company #Office .contentsWrap {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#Company #Office .address {
margin-right: auto;
margin-left: auto;
width: 80%;
}
#Company #Office .address table tr {
margin-bottom: 0.5em;
display: block;
}
#Company #Office .address table th,
#Company #Office .address table td {
display: block;
}
#Company #Office .address .colTwoBlk {
margin-bottom: 110px;
position: relative;
}
#Company #Office .address .colTwoBlk table {
margin-bottom: 0;
}
#Company #Office .officeList {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#Company #Office .officeList li {
margin-right: auto;
margin-left: auto;
width: 90%;
}
#Company #Office .officeList li:nth-last-child(n+2) {
margin-bottom: 30px;
}


/* Policy
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#Policy #contentsTitle {
margin-bottom: 50px;
}
#Policy .caption {
margin-bottom: 100px;
font-size: min(6vw,18px);
letter-spacing: 0.1em;
}
#Policy .bge-contents h2 {
margin-bottom: 15px;
}
#Policy .bge-contents .bgb-wysiwyg {
margin-bottom: 45px;
font-size: min(6vw,18px);
letter-spacing: 0.1em;
}


}/* SP END |||||||||||||||||||||||||||||||||||||||| */



