@charset "UTF-8";

*, *::before, *::after {
  box-sizing:border-box;
}
.clearfix::after {
  content:'';
  display:block;
  clear:both;
}
section {
  font-size: 22px;
  line-height: 45px;

}
h2 {
  position: relative;
  width: 710px;
  margin: 26px auto 36px;
  text-align: center;
  font-size: 35px;
  line-height: 2;
  letter-spacing: 3px;
  border-bottom: solid 4px #03c8d6;
  font-weight: 600;
}
h2::after {
  content: "";
  position: absolute;
  bottom: -8px;
  display: block;
  width: 710px;
  height: 4px;
  border-bottom: solid 4px #0380e6;
}
.head-layout {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.header-r {
  text-align: right;
}
.hd-nav-wrap {
  display: flex;
  margin-top: 20px;
  font-size: 16px;
}
nav.hd-nav-wrap p::after {
  content: "|";
  margin: 0 1em;
}
nav.hd-nav-wrap p:last-child::after {
  content: "";
  margin: 0;
}
section {
  text-align: center;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
/*top*/
div.mv {
    margin-top: 125px;
  text-align: center;
  background-color: #E0F6F8;
}
.mv-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.mv-message {
    position: absolute;
    text-shadow: 1px 2px 3px #1F2937;
}
.mv-img {
  max-width: 1900px;
  width: 100%;
  margin: 0 auto;
  display: block;
}
a img.mv-btn {
  max-width: 560px;
  margin: -7.72% auto 0;
  padding-bottom: 3.5%;
  width: 30%;
}

.logo-container {
    position: relative;
    text-align: center;
    margin-top: 2vw;
    display: flex;
    justify-content: center;
}

.logo-container .logo-gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 1vw;
}

.logo-gallery-img {
    width: 180px;
    height: 88px;
    object-fit: cover;
}

section.merit {
background-color: #fff;
}
section p {
  margin-bottom: 50px;
}
img.lead-google-img {
  max-width: 1199px;
  width: 100%;
  margin-bottom: 45px;
}
section em {
  font-weight: 600;
  font-style: normal;
}
.eat,
.ai-flow {
  display: flex;
  align-items: flex-start;
  justify-content: space-evenly;
  margin-bottom: 60px;
}
.eat img,
.ai-flow img {
  display: block;
}
div.eat img:nth-child(even) {
   margin-top: 35px;
}
section.ai {
    background-color: #E0F6F8;
    width: 100%;
    max-width: inherit;
}
div.ai-flow {
  max-width: 1200px;
  margin: 0 auto 60px;
}
div.ai-flow img:nth-child(even) {
  margin-top: 60px;
}
.ai-img {
  width: 20%;
}
section.case{
  background-color: #EFF5FA;
  max-width: inherit;
  padding: 1px 0 60px;
}
#specialist,
#flow,
#contact,
#register {
    padding-top: 63px;
    margin-top: -63px;
}
#agreement,
#expert,
#complete {
    margin-top: 125px;
}
#complete {
    padding: 5rem 0;
}
#qa {
    max-width: inherit;
    padding-top: 2rem;
    margin-top: -2rem;
}
#confirm {
    margin-top: 86px;
}
.case-company {
  width: 100%;
  max-width: 1200px;
}
section.specialist {
  position: relative;
  padding-top: 30px;
}
.specialist-badge {
  position: absolute;
  right: 8%;
  top: 80px;
  width: 18%;
  max-width: 176px;
}
.specialist-list {
  display: flex;
  flex-wrap: wrap;
  max-width: 1200px;
  justify-content: space-evenly;
  margin-bottom: 40px;
}
.specialist-list a img {
  margin-bottom: 34px;
}
section.supervision {
  background-color: #E1F4F9;
  max-width: inherit;
}
div.supervision-list {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto 45px;
  flex-wrap: wrap;
}
div.supervision-list img {
  width: 30%;
  aspect-ratio : 348 / 137;
}
div.flow-flow {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    column-gap: 2rem;
}
.flow-dtl {
    position: relative;
    width: 30%;
}
img.flow-arrow {
  position: absolute;
  top: 180px;
  right: -40px;
}

/*contact*/
.contact__contents,
.register__contents,
.confirm__contents {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 1px 0 48px;
}
.contact__other,
.register__other {
	padding: 1.75rem 2rem;
}
section.confirm h2 {
    padding-top: 2.5rem;
}
form {
	width: 75%;
}
form .badge {
	font-weight: 700;
	color: #ffffff;
	padding: 0.25rem;
}
form .button__confirm,
form .button__confirm--active,
form .button__redo,
form .button__send {
    width: 100%;
	height: 5rem;
	color: #ffffff;
	border-radius: 20px;
	text-align: center;
	transition: all ease-in-out 0.15s;
}
form .button__redo,
form .button__send {
    width: 15rem;
    height: 3rem;
    border-radius: 10px;
}
form .button__file {
    transition: all ease-in-out 0.15s;
}
form .button__file:hover {
    background-color: #3B82F6;
    color: #ffffff;
    transition: all ease-in-out 0.15s;
}
form .button__confirm--active,
form .button__send {
    background-color: #3854C0;
}
form .button__confirm--active:hover,
form .button__send:hover {
    background-color: #1E40AF;
}
.policy__label:has(input[type=checkbox]:checked) + div button[type=button] {
	pointer-events: all;
	background-color: #3854C0;
}
.policy__label:has(input[type=checkbox]:checked) + div button[type=button]:hover {
	background-color: #1E40AF;
	transition: all ease-in-out 0.15s;
}
.policy__message {
	width: 100%;
}
.badge__required {
 	background-color: #F87171;
}
.badge__nullable {
 	background-color: #60A5FA;
}
input[type=text], input[type=password], input[type=number], input[type=email], input[type=submit] button, textarea {
    -webkit-appearance: none;
}
form input[type=text],
form textarea {
    border-radius: 5px;
}
.cell .input__required:focus {
	outline: 1.5px #F87171 solid;
}
.cell .input__nullable:focus {
    outline: 1.5px #9CA3AF solid;
}
.input-file__drop {
	min-height: 5rem;
	align-items: center;
	justify-content: center;
	background-color: #F3F4F6;
	border-radius: 5px;
}
input[type=checkbox] {
    display: none;
}
input[type=checkbox]:checked + .checkbox__dummy::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
    left: 11px;
    width: 8px;
    height: 2px;
	border-radius: 2px;
	transform: translate(-6px, 5px) rotateZ(-135deg);
	transform-origin: 2px 2px;
	background: #FFFFFF;
}
input[type=checkbox]:checked + .checkbox__dummy::after {
	content: "";
	display: block;
	position: absolute;
	top: 4px;
    left: 12px;
    width: 11px;
    height: 2.5px;
	border-radius: 2px;
	transform: translate(-6px, 5px) rotateZ(-45deg);
	transform-origin: 2px 2px;
	background: #FFFFFF;
}
#policy:checked + .checkbox__dummy {
	background-color: #3854C0;
	border-color: #2563EB;
}
.checkbox__content-type:checked + .checkbox__dummy {
	background-color: #DC2626;
	border-color: #EF4444;
}
.checkbox__dummy {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #9CA3AF;
	border-radius: 5px;
	margin-right: 0.25rem;
}
sm\:gap\-0 {
    gap: 0;
}
form .cell {
	display: flex;
	align-items: center;
	border-top: 1px solid #D1D5DB;
	padding: 1.25rem 1.75rem;
}
form .cell:nth-of-type(1),
form .cell:nth-of-type(2) {
	border-top: 0;
}
form .cell-header {
	grid-column: 1 / 2;
	border-right: 1px solid #D1D5DB;
	background-color: #E5E7EB;
	font-weight: 700;
}
form .cell-header__other,
form .cell-header__file {
	align-items: start;
}
form .cell-data {
	grid-column: 2 / 5;
	border-right: 0;
}
form .cell-data__other {
	display: grid;
	margin-bottom: 0;
}
/*.shadow {*/
/*    --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);*/
/*    --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);*/
/*    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);*/
/*}*/
button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
}
button, input, optgroup, select, textarea {
  appearance: auto;
}
/*アコーディオン*/
.acd-check{
    display: none;
}
.acd-content{
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content{
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
  position: relative;
}
.acd-label {
  background-color: #03c8d6;
  color: #ffffff;
  font-size: 22px;
  display: block;
  text-align: center;
  width: 100%;
  padding: 10px;
  position: relative;
    line-height: 2rem;
}
.acd-label::before {
  content: "Q";
  text-indent: inherit;
  font-size: 36px;
  position: absolute;
  left: 28px;
}
.qa__contents--ans::before {
  content: "A";
  text-indent: inherit;
  font-size: 36px;
  position: absolute;
  left: 20px;
  top: -10px;
}
.recruit-flow h2,
.recruit-merit h2 {
    margin-top: 56px;
}

/*PCのみ▼*/
@media screen and (min-width: 481px) {
  .on_sp {
    display: none;
  }
}

/*スマホのみ▼*/
@media screen and (max-width: 480px) {
    .head {
        width: 100%;
        position: fixed;
        left: 0;
        top: 0;
        z-index: 99;
        background-color: white;
        -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
        box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    }
    .head:after {
        content: "";
        display: block;
        clear: both;
    }
    .head-layout {
        align-items: center;
    }
    .on_pc {
        display: none;
    }
    .head__logo img {
        width: 76%;
    }
    div.mv {
        margin-top: 63px;
    }
    #agreement,
    #expert {
        margin-top: 63px;
    }
    .mv-img-sp {
        width: 100%;
        margin-bottom: -20px;
    }
    .mv-btn-sp {
        width: 90%;
        margin-top: -30px;
        margin-bottom: 14px;
    }
    section h2,
    section.qa h2,
    div.contact h2,
    div.register h2,
    section.confirm h2 {
        margin: 0 0 20px;
        text-align: center;
        color: white;
        background-color: #0094ea;
        border-bottom: solid 4px #00d0dd;
        width: 100%;
        font-size: 19px;
        letter-spacing: normal;
    }
    h2::after {
        width: auto;
    }
    .recruit-flow h2,
    .recruit-merit h2 {
        margin-top: 0;
    }
    #complete {
        margin-top: 63px;
        padding-left: 2rem;
        padding-right: 2rem;
    }
    #qa {
        padding-top: 0;
    }
    #confirm {
        margin-top: 57px;
    }
    section.confirm h2 {
        padding-top: 0;
    }
    section {
        font-size: 17px;
        line-height: 30px;
    }
    section p {
        margin-bottom: 20px;
    }
    div.eat img {
        width: 24%;
    }
    div.eat img:nth-child(even) {
        margin-top: 26px;
        width: 4%;
        margin-right: -10px;
        margin-left: -10px;
    }
    .btn-30cec-sp {
        width: 90%;
    }
    .ai-img-sp {
        width: 90%;
        margin-bottom: 20px;
    }
    .ai-flow-sp {
        margin-bottom: 24px;
    }
    div.ai-flow-sp img {
        width: 50%;
        display: block;
        margin: 0 auto 12px;;
    }
    div.ai-flow-sp img:nth-child(even) {
        width: 10%;
    }
    .case-img {
        width: 100%;
    }
    .specialist-badge {
        width: 27%;
        top: 30px;
        right: 3%;
        z-index: 10;
    }
    .specialist-list a img {
        margin-bottom: 14px;
        width: 85%;
    }
    div.supervision-list {
        display: block;
        margin-bottom: 0;
    }
    div.supervision-list img {
        width: 70%;
        margin: 0 auto 20px;
    }
    .flow-dtl img {
        width: 70%;
        margin-top: 20px;
    }
    div.flow-flow {
        display: grid;
        padding-bottom: 3rem;
    }
    .flow {
        margin-bottom: 32px;
    }
    .flow-dtl {
        margin-right: 0;
        width: 100%;
    }
    .flow__contents {
        margin: 0 5.33%;
    }
    .flow__picture {
        max-width: 672px;
    }
    .flow__picture img {
        width: 100%;
    }
    .flow__arrow {
        max-width: 87px;
        width: 11.6%;
    }
    .flow__arrow.arrow1 {
        margin: 30px auto 20px;
    }
    .flow__arrow.arrow2 {
        margin: -5px auto 20px;
    }
    .flow__arrow img {
        width: 100%;
    }
    /*  アコーディオン*/
    .acd-label {
        font-size: 14px;
        padding-left: 14px;
        line-height: 1.5rem;
    }
    .acd-label::before {
        font-size: 18px;
        left: 5px;
    }
    .qa__contents--ans::before {
        content: "A";
        text-indent: inherit;
        font-size: 18px;
        position: absolute;
        top: 0;
        left: 0;
    }

    /* ***************** */
    form {
        width: 90%;
    }
    form .cell {
        border: 0;
        padding: 0;
    }
    form .cell-header {
        grid-column: 1 / 5;
        border-right: 0;
        background-color: #ffffff;
        font-weight: 700;
    }
    form .cell-data {
        grid-column: 1 / 5;
        border-right: 0;
        margin-bottom: 1rem;
    }
    form .cell-data__other {
        margin-bottom: 0;
    }
    .contact__other,
    .register__other {
        padding: 1.25rem 1rem;
    }
    .policy__message {
        width: 90%;
    }
}
/*recruit*/
.recruit-img {
  /*background: url(/assets/images/pc/lp/expert/recruit/mv.jpg) no-repeat;*/
  background-size: cover;
  height: 551px;
  width: auto;
  background-position: center;
  overflow: hidden;
  white-space: nowrap;
  font-size: 2vw;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 551px;
}
.recruit-btn-wrap {
    padding: 30px 0 40px;
}
.recruit-merit {
  background-color: #EAF6F9;
  max-width: inherit;
  padding: 60px 0 40px;
}
.recruit-merit-dtl {
  display: flex;
  width: 100%;
  max-width: 1200px;
  background: #ffffff;
  margin: 60px auto;
  align-items: center;
  min-height: 150px;
  text-align: left;
  padding: 0 4%;
    gap: 3rem;
}
.recruit-merit-dtl h3 {
  font-size: 28px;
  color: #00a5ed;
  width: 20%;
    font-weight: bold;
}
.recruit-merit-dtl p {
  margin: unset;
}
.recruit-merit-dtl img {
  /*margin-right: 7%;*/
}
.recruit-flow {
    padding-bottom: 2rem;
    padding-top: 63px;
    margin-top: -63px;
}
.recruit-flow-wrap {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  margin-top: 60px;
}
.recruit-flow-wrap>img {
   margin-top: 210px;
}
.recruit-flow-dtl>p {
  line-height: 33px;
  margin-top: 20px;
}
.qa__contents--question p, .qa__contents--ans {
  margin-left: 20px;
}
.qa__contents--ans {
    position: relative;
    margin: 0;
}
.craudia-link {
  background-color: #ffffff;
  text-align: center;
  padding: 12px 0;
    margin: 0;
  font-size: 18px;
  text-decoration: underline;
  color: #3854c0;
}
.qa__contents--q, .qa__contents--a {
  text-indent: inherit;
  font-size: 36px;
  margin-left: 33px;
}



/*スマホのみ▼*/
@media screen and (max-width: 480px)  {
  .recruit-img-sp {
    /*background: url(/assets/images/sp/lp/expert/recruit/mv-sp.jpg) no-repeat;*/
    width: 100%;
    height: 0;
    padding-top: 26%;
    background-position: center center;
    background-size: cover;
  }
    .recruit-btn-wrap {
        padding-bottom: 1rem;
    }
  .recruit-btn-wrap img {
    width: 90%;
    text-align: center;
  }
  .recruit-merit-dtl {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 1rem 1.5rem;
      width: 92%;
      margin: 20px auto;
      gap: 1rem;
  }
  .recruit-merit-dtl h3 {
    width: 100%;
    font-size: 17px;
  }
  .recruit-merit-dtl img {
    /*margin: 0 0 10px;*/
  }
  .recruit-merit {
    padding: 0 0 40px;
  }
  .recruit-merit-dtl p {
    font-size:  14px;
    line-height: 24px;
  }
  .recruit-flow-wrap {
      margin: 30px 0 50px;
      flex-direction: column;
      align-items: center;
  }
    .recruit-flow-dtl {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
  .recruit-flow-dtl img {
    width: 90%;
  }
  .recruit-flow-dtl>p {
    font-size: 14px;
    margin: 10px 0;
  }
  .recruit-flow-wrap>img {
    margin: 0 0 12px;
    width: 10%;
  }
  .recruit-flow-dtl>p {
    line-height: 23px;
  }
  .qa__contents--question p, .qa__contents--ans p {
    font-size: 14px;
  }
  .qa__contents--q, .qa__contents--a {
    text-indent: inherit;
    font-size: 19px;
    margin-left: 0;
  }
  .qa__contents--question p {
    margin-left: -25px;
    margin-top: 5px;
  }
  .qa__contents--ans {
    /*margin: 0 0 0 10px;*/
  }
  .craudia-link {
    font-size: 14px;
  }
}
/*expert-個人ページ*/
.expert-wrap,
.expert-example {
  background-color: #E8F6F9;
  max-width: none;
}
.expert-h3 {
  font-size: 36px;
  color: #ffffff;
  background-color: #5FD3E0;
  max-width: 666px;
  padding: 10px 0;
  border-radius: 34px;
  margin: 5rem auto 56px;
  letter-spacing: .2em;
}
.expert-dtl {
  display: flex;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto 100px;
  justify-content: space-evenly;
  align-items: center;
}
.expert-txt {
  font-size: 36px;
  font-weight: 700;
  text-align: left;
  line-height: 60px;
}
.expert-txt small {
  display: block;
  font-size: 16px;
  font-weight: 500;
  line-height: 38px;
}
.expert-dtl-genre {
  display: flex;
  flex-wrap: wrap;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  justify-content: space-around;
}
.expert-dtl-genre p {
  font-size: 22px;
  color: #ffffff;
  background-color: #1D93EA;
  width: 368px;
  padding: 14px 0;
  border-bottom: 4px solid #D7D7D8;
}
.expert-example-dtl {
  display: flex;
  align-items: center;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 56px 76PX;
  position: relative;
}
.expert-example-txt {
  text-align: left;
  min-width: 70%;
  word-wrap: break-word;
  margin-left: 40px;
}
.expert-example-title {
  color: #00a5ed;
  font-weight: 600;
  margin-bottom: 0;
}
span.expert-name {
  color: initial;
  margin-left: 32px;
}
.expert-prof {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 0;
}
.expert-prof-dtl {
  font-size: 16px;
  line-height: 25px;
}
.expert-example {
  padding-bottom: 93px;
}
.expert-example-dtl::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-right: 20px solid #46A4E7;
  border-bottom: 20px solid transparent;
  transform: rotate(45deg);
  top: -14px;
  left: -3px;
}
.a-btn {
  margin: 0 auto;
  width: 586px;
  display: block;
}
/*スマホのみ▼*/
@media screen and (max-width: 480px){
  .expert-h3 {
    width: 92%;
    font-size: 19px;
    padding: 4px 0;
      margin-top: 2rem;
    margin-bottom: 28px;
  }
  /*.expert-wrap, .expert-example {*/
  /*  padding: 32px 0 0;*/
  /*}*/
  .expert-dtl {
    flex-direction: column;
    margin-bottom: 40px;
  }
  .expert-dtl img {
    width: 40%;
  }
  .expert-txt {
    font-size: 17px;
    text-align: center;
    line-height: 25px;
    margin-top: 20px;
  }
  .expert-txt small {
    font-size: 12px;
  }
  .expert-dtl-genre {
    width: 80%;
  }
  .expert-example-dtl {
      flex-direction: column;
    width: 90%;
    padding: 28px 10px;
  }
  .expert-example-dtl img {
    width: 40%;
    margin-bottom: 20px;
  }
  .expert-example-txt {
    margin: inherit;
    text-align: center;
  }
  .expert-prof-dtl {
    text-align: left;
  }
  .expert-example-title,
  .expert-prof{
    margin-bottom: 10px;
  }
  .expert-example {
    padding-bottom: 58px;
  }
  .expert-example-dtl::before {
    border-top: 10px solid transparent;
    border-right: 10px solid #46A4E7;
    border-bottom: 10px solid transparent;
    top: -7px;
    left: -2px;
  }
  .expert-button {
      background-color: #FF9500;
      color: white;
  }
}
/*ご利用規約*/
.agreement-wrap {
  max-width: 800px;
  font-size: 13px;
  text-align: left;
}
.agreement-wrap h2 {
  max-width: 800px;
  width: 100%;
}
.agreement-wrap h2::after {
  max-width: 800px;
  width: 100%;
}
.agreement-wrap h3 {
  font-weight: 600;
  margin-bottom: 10px;
}
.agreement-txt {
  line-height: 20px;
}
.agreement-txt dd {
  margin-bottom: 24px;
}

.agreement-txt,
.agreement-wrap h3 {
  width: 90%;
  margin: 0 auto;
}
.agreement-wrap h3 {
  margin-bottom: 10px;
}






/*タブレットのみ▼*/
@media screen and (max-width: 1024px) {
  .tb_off {
    display: none;
  }
}

/*微調整▼*/
@media screen and (max-width: 1200px) {
  .off_1200 {
    display: none;
  }
  .recruit-img  {
    font-size: 3vw;
  }
}
