@charset "utf-8";
/* CSS Document */

html{
	font-size:14px;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

@media screen and (max-width: 520px) {
	html{
	font-size:10px;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
}

body{
	background:url(../images/bg.webp);
	font-size:1.6rem;
	color:#000;
	overflow-x: hidden;
}

i{
	margin-left:15px;
}

img{
	width:100%;
}


h2{
	font-size:2.4rem;
	text-align: center;
	color:#796160;
	margin:30px 0 15px;
}

h3{
	font-size:2.0rem;
	text-align: center;
}

h2 strong{
	color:#FF787E;
}

p{
	line-height:1.5;
}

table{
	border-collapse:collapse;
}

/*:::::::::::: common ::::::::::::*/


.center{
	text-align:center;
}

.w-full {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}

.inner{
	max-width: 640px;
	width:90%;
	margin:auto;
}

.inner-min{
	max-width: 600px;
	width:80%;
	margin:auto;
}

.mt20{
	margin-top:20px !important;
}

.mt50{
	margin-top:50px !important;
}

.mt80{
	margin-top:80px !important;
}

.pb20{
	padding-bottom:20px !important;
}

.fl-2{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.txt-pink{
	color:#FF787E;
}

.row {
	display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col-6{
	padding-right: 15px;
    padding-left: 15px;
}

.col-lg-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}


@media screen and (max-width: 520px) {
.mt50{
	margin-top:30px !important;
}

.mt20{
	margin-top:10px !important;
}
	.mt80{
	margin-top:60px !important;
}
}

.txt-underline{
	background:#FFED75;
	padding:2px;
}

.cv-btn{
	text-align:center;
	margin:25px 0;
}
@media screen and (max-width: 520px) {
	.cv-btn{
	text-align:center;
	margin:20px 0;
	}
}

.cv-btn p{
	font-size:1.5rem;
	margin-bottom: 20px;
}
.btn,
a.btn,
button.btn {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #fff;
  border-radius: 0.5rem;
	width:80%;
}

a.btn-border-shadow--radius {
  border-radius: 100vh;
}
a.btn-border-shadow {
  padding: calc(1.5rem - 12px) 3rem 1.5rem;
  background: #FF787E;
}

a.btn-border-shadow:before {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 3px solid #796160;
  border-radius: 0.5rem;
}

a.btn-border-shadow--radius:before {
  border-radius: 100vh;
}

a.btn-border-shadow:hover {
  padding: calc(1.5rem - 6px) 3rem;
}

a.btn-border-shadow:hover:before {
  top: 0;
  left: 0;
}
.zigzag,
.zigzag2{
	height:14px;
  position: relative;
}

.zigzag2{
	margin-top:14px;
}
.zigzag::after{
  content: "";
  position: absolute;
  background: linear-gradient(45deg, #796160 50%, transparent 52%),
      linear-gradient(-45deg, #796160 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}
.zigzag2::after{
  content: "";
  position: absolute;
  background-image: linear-gradient(135deg, #796160 50%, transparent 50%), linear-gradient(225deg, #796160 50%, transparent 50%);
  background-size: 30px 30px;
  height: 30px;
  width: 100%;
  bottom: 0;
}

.bg-brown{
	background:#796160;
	padding:20px 0;
}

.bg-brown h2{
	color:#fff;
	position: relative;
    padding: 1rem 1.5rem;
    font-weight: bold;
    text-align: center;
	margin:0;
}

.bg-brown h2 strong{
	color:#FFF2C6
}
.bg-brown h2::before,
.bg-brown h2::after {
	position: absolute;
    top: 0.8rem;
    height: 6.0rem;
    content: '';
}

.bg-brown h2::before {
    border-left: solid 3px;
    left: 10%;
    transform: rotate(-30deg);
}

.bg-brown h2::after {
    border-right: solid 3px;
    right: 10%;
    transform: rotate(30deg);
}

.bg-brown h4 {
	background:#F9BFAB;
	color:#796160;
	text-align: center;
	font-size:1.6rem;
	width:90%;
	margin:auto;
}

.bg-orange {
    background:#fff;
	border-radius: 13px;
}

.bg-orange h2{
    color:#fff;
	background:#FFA557;
	border-radius: 13px 13px 0 0;
	padding:10px 0;
}

.bg-orange h3{
    color:#796160;
	vertical-align: top;
}

.bg-orange-bottom{
	margin-top:20px;
	background:#FFA557;
	border-radius: 0 0 13px 13px;
	padding:20px 0;
}

.bg-orange-bottom h4{
	color:#fff;
	background:#796160;
	border-radius: 15px;
	padding:5px 0;
	margin-bottom: 10px;
}




h2.hukidashi{
	position: relative;
    padding: 0.8rem 0 1.5rem;
    margin: 0 auto 1.5rem;
    border-bottom: 3px solid;
    font-size: 2.4rem;
	width:70%;
}

h2.hukidashi:before,
h2.hukidashi:after{
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}

h2.hukidashi:before {
    border: 14px solid;
    border-color: transparent;
    border-top-color: #796160;
    margin-left: -14px;
}

h2.hukidashi:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #FFFAEA;
    margin-left: -10px;
}

h2.hukidashi2:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #FFE7DF;
    margin-left: -10px;
}


h2.syasen{
    position: relative;
    padding: 1rem 1.5rem;
	width:60%;
	margin: 2.5rem auto 1.5rem 
}

h2.syasen::before,
h2.syasen::after {
    position: absolute;
    top: 0.8rem;
    height: 2.7rem;
    content: '';
}

h2.syasen::before {
    border-left: solid 3px;
    left: 0;
    transform: rotate(-30deg);
}

h2.syasen::after {
    border-right: solid 3px;
    right: 0;
    transform: rotate(30deg);
}



/*:::::::::::: header ::::::::::::*/
header{
	text-align: center;
	width: 100%;
	height:60px;
	padding-top: 10px; 
	filter:progid:DXImageTransform.Microsoft.Gradient(#FF9095, #FF787E);
	background: -webkit-linear-gradient(left, #FF9095, #FF787E);
	background: -o-linear-gradient(left, #FF9095, #FF787E);
	background: linear-gradient(to right, #FF9095, #FF787E); 
	box-shadow: 0 0 6px 0 rgba(0,0,0,0.5);
}

header h1{
	width:315px;
	margin:auto;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

header img{
	width:100%;
}

header h1:hover{
	opacity:0.8;
}

@media screen and (max-width: 520px) {
header{
	height:50px;
	}
header h1{
	width:210px;
	margin:auto;
}
}

/*:::::::::::: content ::::::::::::*/

#content{
	width:640px;
	margin:10px auto;
}

.hikaku-list{
	display:flex;
	flex-wrap:wrap;
	width:90%;
	margin:20px auto;
	justify-content: space-between;
}

.hikaku-list i{
	margin:0 10px 0 0;
}

.hikaku-list li{
	width:24%;
	border:3px solid #796160;
	background:#fff;
}

.hikaku-list li:nth-child(4){
	border:3px solid #FF787E;
}


.hikaku-list h3{
	text-align: center;
	color:#fff;
	font-size: 1.4rem;
	background:#796160;
}

.hikaku-list li:nth-child(4) h3{
	background:#FF787E;
}



.hikaku-list img{
	width:90%;
	margin:10px auto;
}

.hikaku-list li p{
	width:80%;
	margin:10px auto;
	font-size:  1.2rem;
	font-weight: bold;
	color:#796160;
}

.hikaku-list li strong{
	color:#FF787E;
}

.content_nagare{
	background: #FFFAEA;
	padding:50px 0;
}

@media screen and (max-width: 520px) {
	.content_nagare{
	padding:30px 0;
}
}

.stepbar {
  margin: 0 auto;
	background:url(../images/lp_04.webp) no-repeat 90% 60%;
	background-size:120px 120px;
  width: 80%;
}

.stepbar .stepbarwrap {
  margin: 0.5em 0;
  position: relative;
}

.stepbar .stepbarwrap .steptitle {
  display: inline-flex;
  align-items: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle {
  display: inline-block;
  width: 3em;
  height: 3em;
  content: "";
  border-radius: 50%;
  background-color: #FF787E;
  color: #fff;
  text-align: center;
	z-index: 99;
}

.stepbar .stepbarwrap .steptitle .stepcircle span {
  display: inline-block;
  line-height: 1.2em;
  font-size: 0.8em;
  font-weight: bold;
  position: relative;
  top: 0.9em;
}

.stepbar .stepbarwrap .steptitle .title {
  margin: 0.5em;
  font-weight: bold;
  font-size: 1.8rem;
	color:#FF787E;
}

.stepbar .stepbarwrap .stepline {
  width: 1px;
  height: calc(100% + 1em);
  background: url(../images/line.webp) 0 0;
  position: absolute;
  top: 2em;
  left: 1.5em;
  z-index: 1;
}

.stepbarwrap:last-of-type .stepline:last-of-type {
  display: none;
}

.media h3{
	font-size:1.4rem;
	padding:5px 0;
	color:#FF787E;
	background:#fff;
	border:1px solid #796160;
	border-radius: 30px;
	margin:10px 0 20px;
}
.merit h3{
    color:#FFA557;
}


.merit h3 span{
    background:#FFA557;
	color:#fff;
	font-size:1.2rem;
	padding:2px 10px;
	border-radius: 15px;
	margin-right:10px;
	line-height: 1.0rem;
}

.merit .txt-box{
    width:90%;
	margin:auto;
	padding-bottom: 30px;
}

.merit hr{
    border:1px solid #F9BFAB;
	margin:20px 0 15px;
}


.merit img{
   max-width:350px;
	margin:30px auto;
}

.merit p{
    text-align: center;
}

.merit-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:20px 0 0;
}

.merit-list li{
	width:32%;
	background: #fff;
	color:#796160;
	font-size:1.2rem;
	padding:5px;
	margin-bottom: 10px;
	border-radius: 5px;
	font-weight: bold;
}

.merit-list li:nth-child(4){
	width:100%;
}

.bg-orange-bottom p{
	color:#fff;
}

.point-txt{
	width:50%;
}
.point-img{
	width:50%;
	text-align: center;
}

.point-img img{
	width:60%;
	margin:auto;
}

@media screen and (max-width: 520px) {
	.point-img img{
	width:80%;
}
}
.point-list{
	color:#fff;
	text-align: left;
}

.point-list li {
  position: relative;
  padding: 0 0 0 2em;
  margin: 0;
}

.point-list li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: '\f058';
  color: #fff;
}

.point-list2{
	color:#fff;
	text-align: left;
	font-size: 1.2rem;
}

.point-list2 li {
  background:#796160;
	border-radius: 5px;
	margin-bottom:5px;
	padding:5px;
}

/*お仕事紹介*/

.job-item {
    margin: 0;
    background: #fff;
    padding: 22px .5%;
	height:630px;
}

@media screen and (max-width: 520px) {
	.job-item {
	height:450px;
}
}
.job-item h3 {
    margin-bottom: 10px;
	padding:5px 0;
	background:#FF787E;
	color:#fff;
	border-radius: 25px;
	font-size:1.6rem;
}

.job-item ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background:#FFFAE9;
	border-radius: 10px;
	font-size:1.2rem;
	margin:10px 0 0;
	color:#796160;
}

.job-item li{
	width:49%;
	padding:10px;
}
.job-item li:first-child{
	border-right:1px dashed #796160;
}

.job-item li:first-child h4{
	color:#FF787E;
}

.job-item img {
	margin:10px auto;
}

.room-item h3 {
    background:#18c0BA;
	color:#fff;
}

.slick-dots {
    text-align: center;
    padding-top: 12px;
    padding-bottom: 18px;
    position: absolute;
    left: 50%;
    bottom: -52px;
    transform: translateX(-50%);
}

.slick-dotted {
    margin-bottom: 50px;
}


.slick-dots li {
    display: inline-block;
    background: 0 0;
    border: none;
}



.slick-prev, .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 25px;
    height: 25px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 999;
}
 
.slick-prev {
    left: -3%;
}
 
.slick-next {
    right: -3%;
}
 
.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 25px;
    line-height: 1;
    opacity: .75;
    color: #FF787E;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
 
.slick-prev:before {
    content: '\f137';
	font-family: FontAwesome;
}
 
.slick-next:before {
    content: '\f138';
	font-family: FontAwesome;
}
 
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent;
}
 
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}
 
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25;
}

/*体験談*/
.voice-img{
	width:35%;
}

.voice-txt{
	width:55%;
	vertical-align: middle;
	text-align: justify; 
}

/*よくある質問*/

.qa-list dl {
    position: relative;
    margin: 30px 0 0;
    cursor: pointer;
    border: 2px solid #FF787E;
	border-radius: 10px;
	background:#fff;
}
.qa-list dl:first-child {
  margin-top: 0;
}
.qa-list dl::after {
    position: absolute;
    top: 27px;
    right: 26px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #FF787E;
    border-right: 2px solid #FF787E;
}
.qa-list .open::after {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 60px;
    font-weight: bold;
	font-size:1.6rem;
	color: #FF787E;
}
.qa-list dl dt::before {
    font-size: 1.6rem;
    line-height: 1;
    position: absolute;
    top: 25px;
    left: 20px;
    display: block;
    content: '\f4ad';
	font-family: FontAwesome;
    color: #FF787E;
	font-weight: normal;
}
.qa-list dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    left: 20px;
    display: block;
    content: '';
    font-weight: bold;
    color: #18c0ba;
}
.qa-list dl dd {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 60px;
	background:#FFFAE9;
	border-radius: 0 0 10px 10px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

@media screen and (max-width: 520px) {
 .qa-list dl {
    margin: 10px 0 0;
}
.qa-list dl:after {
    top: 20px;
    right: 20px;
    width: 7px;
    height: 7px;
}
.qa-list dl dt {
    padding: 16px 40px 16px 50px;
}
.qa-list dl dt::before {
    top: 20px;
    left: 20px;
}
.qa-list dl dd::before {
    font-size: 1.0rem;
    left: 20px;
    margin-top: 5px;
}
.qa-list dl dd {
    margin: 0;
    padding: 16px 25px 16px 25px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}
}

/*会社概要*/
/* table01 */
#table01 {
	width:90%;
	margin:10px auto;
	color:#fff;
}

#table01 th,
#table01 td {
  padding: 10px 0;
	border:none;
	border-bottom: 1px solid #F9BFAB !important;
}


#table01 th {
  width: 30%;
	text-align: center;
}

/* sp */
@media only screen and (max-width: 768px) {
/*  #table01 th,
  #table01 td {
    width: 100%;
    display: block;
  }*/



  #table01 td {
	  text-align: center;
  }
}



@media screen and (max-width: 520px) {
		#content{
	width:100%;
}
  
	.stepbar {
  margin: 0 auto;
	background:url(../images/lp_04.webp) no-repeat 100% 80%;
	background-size:80px 80px;
}
	.merit img{
   width:60%;
}

}

/*checker*/


.qa_sec_in {
	background-color: #fff;
  margin-right: 0px !important;
  margin-left: 0px !important;
  padding: 100px 10px 30px;
}

.qa_complete {
	
  padding: 80px 10px 30px;
}


.qa_sec_in img{
  	height:200px;
	width:auto;
	margin:10px auto 0;
}
.qa_sec_in img.w90{
  	height:auto;
	width:400px;
}
.qa_sec_ttl {
  text-align: center;
}
.qa_sec_ttl img{
  	height:160px;
	width:auto;
	margin:20px auto 0;
}
.qa_img1 {
  display: block;
  margin: 30px auto -70px;
  width: 250px;
}
.ico_q {
  display: inline-block;
  width: 5%
}
.qa_img2 {
  display: inline-block;
  width: 8%;
}
.q_txt {
  display: inline-block;
  font-size: 2.0rem;
  font-weight: bold;
  padding: 0;
  color: #707070;
}
.q_txt span {
  display: inline-block;
	font-weight:normal;
	font-size:1.6rem;
}
.a_btn {
  padding: 30px 0;
  width: 80%;
  margin: 0 auto;
}
.a_btn .button05 a {
  padding: 1em 1em;
}

.q_txt em {
  padding-right: 10px;
  vertical-align: middle;
  line-height: 1.4;
  font-style: normal;
}

.sub_txt {
  text-align: center;
}
.a_btn .col-6 {
  margin-bottom: 30px;
}
.back_btn {
  font-size: 1.2rem;
  padding-left: 20px;
	color:#707070;
	text-decoration: none;
}

.button05 button span {
  margin: 0 auto;
}
.button05 button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 0.5em 1em;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 700;
 background-color: #f7931e;
  box-shadow: 0 5px 0 #bf6e16;
  transition: 0.3s;
  border-radius: 5px;
  border: none;
  width: 100%;
    cursor: pointer;
}
.button05 button::after {
  content: '';
  width: 13px;
  height: 13px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}
.button05 button:hover {
  transform: translateY(3px);
  text-decoration: none;
box-shadow: 0 2px 0 #f7931e;
}

.a_btn2 button:hover {
  box-shadow: 0 2px 0 #777777;
}
.button05 button span {
  margin: 0 auto;
}






.button05_off button span {
  margin: 0 auto;
}
.button05_off button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 0.5em 1em;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 700;
 background-color: #f7931e;
  box-shadow: 0 5px 0 #bf6e16;
  transition: 0.3s;
  border-radius: 5px;
  border: none;
  width: 100%;
    cursor: pointer;
    opacity: 0.5;
}

.button05_off button span {
  margin: 0 auto;
}






.a_btn2 a, .a_btn2 button {
  background-color: #B1B1B1;
  box-shadow: 0 5px 0 #777777;
}

#target-table {
    margin: 20px auto 0;
    width: 80%;
}
#target-table tbody tr {
    border: solid 1px rgba(210, 215, 217, 0.75);
    border-left: 0;
    border-right: 0;
}

#target-table td {
  padding: 0.75em 0.75em;
  font-size: 1.4rem;
}
#target-table th {
  color: #3d4449;
  font-weight: 600;
  padding: 0 0.75em 0.75em 0.75em;
  text-align: left;
}
@media (max-width: 576px) {
	
	.qa_sec_in {
  padding:110px 10px 30px;
}
	
	.qa_complete {
  padding:90px 10px 30px;
}
	.qa_sec_in img{
  	height:170px;
	margin:15px auto 0;
}
	.qa_sec_in img.w90{
  	height:auto;
	width:90%;
}
  .qa_sec_ttl img{
  	height:100px;
	margin:20px auto 0;
}

  .qa_img1 {
    width: 200px;
	  margin: 30px auto -90px;
  }
  .sub_txt {
    text-align: center;
    font-size: 1.3rem;
  }
  .a_btn {
    width: 100%;
    padding: 30px 0;
  }
	
	.a_btn .col-6 {
    margin-bottom: 10px;
}
  #target-table {
    width: 95%;
  }
  #target-table {
    margin: 15px auto 0;
    width: 95%;
  }
  
    

    
}

/*:::::::::::: footer ::::::::::::*/
footer{
	text-align: center;
	position: fixed; 
	width: 100%;
	bottom: 0;
	left: 0;
	padding: 10px; 
	margin:auto;
	filter:progid:DXImageTransform.Microsoft.Gradient(#FFF2C6, #F9BFAB);
	background: -webkit-linear-gradient(left, #FFF2C6, #F9BFAB);
	background: -o-linear-gradient(left, #FFF2C6, #F9BFAB);
	background: linear-gradient(to right, #FFF2C6, #F9BFAB);
	box-shadow: 0 0 6px 0 rgba(0,0,0,0.3);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	z-index: 9998;
	opacity: 0;
}

footer:hover{
	opacity:0.8;
}

footer a{
	color:#796160;
	width:100%;
	display: block;
	font-size: 2.2rem;
	font-weight: bold;
	text-decoration: none;
}

/*　フッター表示切り替え　*/
#footer.hidden{
	opacity: 0;
}
#footer.display{
	position: fixed;
	width:100%;
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-100px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}

#footer.hidden2{
	position: fixed;
	width:100%;
	animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime{
  from {
    opacity: 1;
	transform: translateY(0);
  }
  to {
    opacity: 0;
	transform: translateY(-100px);
  }
}