@charset "UTF-8";

#header #title h1#top_keiyaku { display: block;}

/*
  header
==================================================== */

@media screen and (min-width: 960px) {  /*PC*/

header{
  position: relative;
  width:100vw;
  height: 80vh;
  background:url(../images/mv_bg_contract.jpg) no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

}


@media screen and (max-width: 959px) {  /*SP*/

header{
  position: relative;
  width:100vw;
  height: 80vh;
  background:url(../images/mv_bg_contract.jpg) no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}


}






/*
  募集
==================================================== */
@media screen and (min-width: 960px) {  /*PC*/

.recruiting{
  width: clamp(250px, 90vw, 1200px);
  margin-bottom: 80px;
  text-align: center;
  margin: 90px auto 100px auto;
}
.recruiting span{
  position: relative;
  padding: 5px 10px 5px 13px;
  font-size: 2em;
  font-weight: 600;
  color: #b61818;
  letter-spacing: 2px;
  background:linear-gradient(transparent 60%, #ffd9d9 60%);
}


}


@media screen and (max-width: 959px) {  /*SP*/

.recruiting{
  text-align: center;
  margin: 40px auto 60px auto;
}
.recruiting span{
  position: relative;
  padding: 5px 0 5px 3px;
  font-size: 1.5em;
  font-weight: 600;
  color: #b61818;
  letter-spacing: 2px;
  background:linear-gradient(transparent 60%, #ffd9d9 60%);
}


}






/*
  募集要項
==================================================== */
@media screen and (min-width: 960px) {  /*PC*/

#description .inner{
  width: clamp(250px, 90vw, 1200px);
  margin: 0 auto 80px;
  padding: 50px;
  background: #f3f4f8;
}
#description .inner.last{
  margin: 0 auto;
}
#description .heading{
  position: relative;
  text-align: center;
  padding: 5px 15px;
  font-size: 40px;
  font-weight: 600;
  color: #152a8c;
  letter-spacing: 0.1em;
  margin: 0 auto 70px auto;
  line-height: 1.5;
}
#description .heading::after{
  content:'';
  display: inline-block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 4em;
  height: 2px;
  background-color: #152a8c;
}
#description dl{
  display:flex;
  flex-wrap: wrap;
  width: 80%;
  margin: 0 auto;
  line-height: 1.5;
}
#description dl dt{
  width: 30%;
  padding: 1em;
  border-bottom: solid 1px #d0d2d8;
  font-weight: 600;
  color: #152a8c;
}
#description dl dt::before{
  content:'■';
  color: #152a8c;
  padding-right: 10px;
}
#description dl dd{
  width: 70%;
  padding: 1em;
  border-bottom: solid 1px #d0d2d8;
}


}


@media screen and (max-width: 959px) {  /*SP*/

#description .inner{
  width: 100%;
  margin: 0 auto 50px;
  padding: 20px 10px;
  background: #f3f4f8;
}
#description .heading{
  position: relative;
  text-align: center;
  padding: 5px 0;
  font-size: 1.5em;
  font-weight: 600;
  color: #152a8c;
  margin: 0 auto 50px auto;
  line-height: 1.5;
}
#description .heading::after{
  content:'';
  display: inline-block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 4em;
  height: 2px;
  background-color: #152a8c;
}
#description dl{
margin: 0 auto;
padding: 0 10px;
max-width: 700px;
}
#description dl dt{
  padding: 1em 0 0.3em 0;
  font-weight: 600;
  color: #152a8c;
}
#description dl dt::before{
  content:'■';
  color: #152a8c;
  padding-right: 3px;
}
#description dl dd{
  padding: 0.3em 0 1em 1.3em;
  border-bottom: solid 1px #d0d2d8;
  line-height: 1.5;
}
#description dl dd:last-child{
  border-bottom: none;
}

}









/*
  応募方法
==================================================== */
@media screen and (min-width: 960px) {  /*PC*/

#entry .inner{
  width: clamp(250px, 90vw, 1200px);
  padding: 0 50px;
}
#entry .heading{
  position: relative;
  text-align: center;
  padding: 5px 15px;
  font-size: 40px;
  font-weight: 600;
  color: #152a8c;
  letter-spacing: 0.1em;
  margin: 0 auto 70px auto;
}
#entry .heading::after{
  content:'';
  display: inline-block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 200px;
  height: 2px;
  background-color: #152a8c;
}
#entry p{
text-align: center;
line-height: 1.5;
padding-bottom: 20px;
}

#entry .entry_address{
padding: 40px 20px 20px 20px;
margin: 30px auto 0 auto;
width: 80%;
border: solid 1px #152a8c;
}
#entry .entry_address h3{
padding-bottom: 20px;
color: #152a8c;
font-weight: 600;
text-align: center;
font-size: 1.3em;
}
#entry .entry_address p{
line-height: 1.8;
}

#entry .btEntry a{
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto 0 auto;
    max-width: 95%;
    padding: 20px 10px 20px 15px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    font-size: 24px;
    letter-spacing: 5px;
    background: #152a8c;
    border-radius: 5px;
    overflow: hidden;
}
#entry .btEntry a:hover{
background: #1e3cc7;
  transform: scale(1.05);
}
#entry .btEntry span{
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 50px auto 0 auto;
    max-width: 95%;
    padding: 20px 10px 20px 15px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    font-size: 24px;
    letter-spacing: 5px;
    background: #aaa;
    border-radius: 5px;
    overflow: hidden;
}

#entry ul.btnbox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
    /*width: clamp(250px, 90vw, 1200px);*/
    margin: 0 auto 50px;
}
#entry ul.btnbox li {
	width: calc((100% - 10px) / 2);
    text-align: center;
}

}


@media screen and (max-width: 959px) {  /*SP*/

#entry .inner{
  width: 100%;
  padding: 20px 10px;
}
#entry .heading{
  position: relative;
  text-align: center;
  padding: 5px 0;
  font-size: 1.5em;
  font-weight: 600;
  color: #152a8c;
  margin: 0 auto 50px auto;
}
#entry .heading::after{
  content:'';
  display: inline-block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 4em;
  height: 2px;
  background-color: #152a8c;
}
#entry p{
text-align: left;
line-height: 1.5;
padding-bottom: 20px;
}

#entry .entry_address{
padding: 30px 20px 10px 20px;
margin: 30px auto 0 auto;
width: 96%;
border: solid 1px #152a8c;
}
#entry .entry_address h3{
padding-bottom: 20px;
color: #152a8c;
font-weight: 600;
text-align: center;
font-size: 1.3em;
}
#entry .entry_address p{
line-height: 1.8;
}

#entry .btEntry a{
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 100%;
    padding: 15px 10px 15px 15px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 5px;
    background: #152a8c;
    border-radius: 5px;
    overflow: hidden;
    text-align: center;
}
#entry .btEntry span{
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 30px auto 0 auto;
    max-width: 100%;
    padding: 15px 10px 15px 15px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 5px;
    background: #aaa;
    border-radius: 5px;
    overflow: hidden;
}
#entry ul.btnbox{
	flex-direction: column;
    margin: 30px 0 0;
}
#entry ul.btnbox li{
    text-align: center;
}

}





