@charset "utf-8";
main {
    position: relative;
    min-height: 100vh;
    background: url(../images/bg_ten_meanings.jpg) no-repeat;
    background-size: 100%;
    background-position: center top 400px;
}
.content_area {
    max-width: 1920px;
    padding: 0 0 100px;
}
.grad_line_h3 {
    margin: 0 0 33px;
}

.grad_line_h3::before {
    content: attr(data-label-en);
    position: absolute;
    bottom: 52px;
    left: 0;
    font-family: 'Caveat', cursive;
    font-size: 2.4rem;
    font-weight: 400;
    color: #FA6060;
    line-height: 1;
    letter-spacing: 0;
}


.faq_catch {
    padding-top: 100px;
    margin-bottom: 180px;
}

.faq_catch_txt {
    text-align: center;
}

.faq_catch_txt h2 {
    margin-bottom: 24px;
    font-size: 2.8rem;
}

.faq_catch_txt p {
    font-size: 2.0rem;
}

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

    .faq_catch {
        flex-direction: column;
        align-items: flex-start;
        gap: 32px;
    }

}

@media (max-width: 768px) {
	.grad_line_h3::before {
	    top: -1.2em;
	    font-size: 2.0rem;
	}

	.faq_catch {
        padding-top: 0;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        margin: 40px 0;
    }

    .faq_catch_txt h2 {
        font-size: 2.4rem;
		line-height: 1.6;
    }

    .faq_catch_txt p {
        font-size: 1.4rem;
    }

}


/* ==========================
   FAQ
========================== */
.content_area .faq {
	padding-top: 120px;
}

.faq__q{
  display:grid;
  grid-template-columns: 42px 1fr 44px;
  gap:10px;
  align-items:center;
  padding:16px 14px;
  background:#E7F6FC;
  border:3px solid #E7F6FC;
  border-top: none;
  border-radius: 10px;
  cursor:pointer;
  font-size: 1.6rem;
  font-weight:700;
  width: 100%;
  text-align: left;
}
.faq__list {
	margin-bottom: 90px;
}
.faq__item {
	margin-bottom: 24px;
}
.faq__item.is-open .faq__q{
  border-radius: 10px 10px 0 0;
}

.faq__icon{
  position:relative;
  width:22px;
  height:22px;
  justify-self:end;
}
.faq__icon::before,
.faq__icon::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:22px;
  height:3px;
  background:#1a86c8;
  transform:translate(-50%,-50%);
  border-radius:99px;
}
.faq__icon::after{ transform:translate(-50%,-50%) rotate(90deg); }
.faq__item.is-open .faq__icon::after{ opacity:0; }

/* 回答：gridで開閉（height:auto不要でガタつきにくい） */
.faq__a{
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .38s cubic-bezier(.2,.8,.2,1);
  padding: 0;                
  background: transparent;
}

.faq__a-inner{
  overflow: hidden;
  min-height: 0;
}

/* 開いた状態 */
.faq__item.is-open .faq__a{
  grid-template-rows: 1fr;
}

/* 回答ボックス（余白と白背景は内側に） */
.faq__abox{
  background: #fff;
  border: 3px solid #E7F6FC;
  border-radius: 0 0 10px 10px;
  padding: 16px 14px;
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: start;
  gap: 10px;
}

.faq__qmark, .faq__amark {
	color: #006FBC;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	text-align: center;
}

.faq__amark {
	color: #FA6060;
}

.faq__qtext {
    color: #333;
}

@media (max-width: 768px) {
	    main {
        background-position: right top 400px;
        background-size: 300%;
    }
	.faq__q {
		grid-template-columns: 42px 1fr 30px;
		gap: 10px;
		padding: 12px 8px;
		font-size: 1.6rem;

	}
	.faq__abox {
		padding: 12px 8px;
		grid-template-columns: 42px 1fr;
	}
	.faq__icon::before, .faq__icon::after {
		width: 15px;
		height: 3px;
	}
}

.link-banner::before {
    background-image: url(/saiyou/wp-content/themes/conexio_recruit/images/recruit_link.jpg);
}

.link-banner:hover {
    opacity: .7;
}