html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}

html, body, div, h1, h2, h3, article, img, ul, li {
  margin: 0;
  padding: 0;
  line-height: 1;
  list-style-type: none;
  border: 0;
  vertical-align: bottom;
}
a:hover, button:hover {
  opacity: 0.8;
  cursor: pointer;
}
.main-content .inner a:link, a:visited {
  text-decoration: none;
}
.main-content .inner img {
  vertical-align: middle;
}
.sp-only {
  display: none!important;
}
.content .content-inner,
.main-content {
  width: initial!important;
}
.main-content {
  background-color: #fff;
}
.main-content section {
  margin-bottom: 0!important;
}
.main-content section a {
  color: #000;
}
.main-content .inner {
  width: 1138px;
  margin: 0 auto;
}
.main-content .inner h2 {
  margin-bottom: 28px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f8ea5b;
}
.main-content .inner .thumb {
  overflow: hidden;
  cursor: pointer;
  border-radius: 15px;
}
.main-content #special-feature ul li:hover .thumb {
  border: 5px solid #ffe700;
  width: 352px;
  height: 246px;
}
.main-content #recommended-jobs ul li:hover .thumb {
  border: 5px solid #ffe700;
  width: 352px;
  height: 253px;
}
.main-content .inner ul li:hover .thumb img {
  transform: scale(1.2);
  transition-duration: 0.5s;
}

/* ----------------------------------------------------
  hero
---------------------------------------------------- */
.hero {
  text-align: center;
  /* overflow: hidden; */
} 
.hero h1 {
  background-color: #ffe700;
}
.hero .about {
  width: 750px;
  margin: 0 auto;
  padding: 35px 0 30px;
}
.hero .about p {
  font-size: 22px;
}

/* ----------------------------------------------------
  special-feature
---------------------------------------------------- */
#special-feature {
  padding-top: 60px;
  background-color: #eee;
}
#special-feature ul {
  display: flex;
  justify-content: space-between;
  padding-bottom: 18px;
  border-bottom: 1px solid #c7c7c7;
}
#special-feature ul li {
  width: 360px;
  position: relative;
}
#special-feature ul li img.icon {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 999;
}
#special-feature ul li img {
  border-radius: 15px;
}
#special-feature p.title {
  padding: 18px 0 2px;
  font-size: 22px;
  font-weight: bold;
}
#special-feature p.text {
  font-size: 16px;
  line-height: 1.7;
}
#special-feature .feature-link p.title {
  margin-right: 30px;
  padding: 0;
}
#special-feature .feature-link {
  display: flex;
  align-items: center;
  padding: 30px 0;
  border-bottom: 1px solid #c7c7c7;
}
#special-feature .feature-link .icon {
  width: 160px;
  text-align: center;
}
#special-feature .feature-link .title {
  width: 380px;
}
#special-feature .feature-link .text {
  width: 520px;
}
.btnripple{
  /*波紋の基点とするためrelativeを指定*/
  position: relative;
  outline: none;
}
/*波形の設定*/
.btnripple:hover::before {
  content: '';
  /*絶対配置で波形の位置を決める*/
  position: absolute;
  right:3px;
  top:31%;
  /*波形の形状*/
  border: 1px solid #333;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  /*はじめは不透明*/
  opacity:1;
  animation:1s circleanime2 forwards;
}
/*波形が広がるアニメーション*/
@keyframes circleanime2{
  0%{
    transform: scale(0);
  }
  100%{
    transform:scale(2);
    opacity: 0;
  }
}
.btnripple::after {
  content: '→';
  position: absolute;
  top: 37%;
  right: 30px;
  width: 5px;
  height: 5px;
  font-weight: bold;
  font-size: 20px;
  color: #ffe700;
}

/* ----------------------------------------------------
  recommended-jobs
---------------------------------------------------- */
#recommended-jobs {
  padding-top: 78px;
  background-color: #eee;
}
#recommended-jobs ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#recommended-jobs ul li {
  width: 362px;
  margin-bottom: 65px;
}
#recommended-jobs ul li:nth-child(n+4) {
  margin-bottom: 40px;
}
#recommended-jobs ul li p.company {
  padding: 10px 0;
  font-size: 14px;
}
#recommended-jobs ul li p.job {
  font-size: 18px;
}

/* ----------------------------------------------------
  web-Magazine
---------------------------------------------------- */
#web-Magazine {
  padding: 40px 0;
  background-color: #ffe700;
}
#web-Magazine h2 {
  border-bottom: 1px solid #fff;
}
#web-Magazine ul {
  display: flex;
  justify-content: space-between;
}
#web-Magazine ul li {
  width: 360px;
  border-radius: 15px;
  background-color: #fff;
  cursor: pointer;
}
#web-Magazine ul li img {
  border-radius: 15px 15px 0 0;
}
#web-Magazine .thumb {
  border-radius: 15px 15px 0 0;
}
#web-Magazine ul li p.text {
  padding: 15px 20px;
  font-size: 18px;
  line-height: 1.4;
}
.content {
  padding-bottom: 0!important;
}