@charset "utf-8";

/*
源ノゴシック
font-family: source-han-sans-cjk-ja, sans-serif;
源ノ明朝
font-family: source-han-serif-japanese, serif;
*/

html {
		font-family: source-han-sans-cjk-ja, sans-serif;
}
body {
    background: #fff;
    color: #1e1e1e;
}
.inner {max-width: 1080px;width: 100%;margin: 0 auto;box-sizing: border-box;}
.inner_s {max-width: 1080px;width: 100%;margin: 0 auto;box-sizing: border-box;}

.marker {background: linear-gradient(transparent 60%, rgba(249, 240, 78, 0.8) 60%);}

/* **************************************************************** */
/* ヘッダー
*/
header {
    padding: 0.5em 0;
}
header .inner {
    align-items: center;
    justify-content: space-between;
}
header .logo {

}

header .util {

}
header .util ul {

}
header .util ul li {

}
header .util ul li + li {
		margin-left: 1em;
}
/* **************************************************************** */
/* フッター
*/
footer {
    background: #48b4fd;
    padding: 1.5em 0 0;
}
footer .logo {

}
footer .copy {
    display: block;
    background: no-repeat;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    padding: 1em 0 1em;
}

/* **************************************************************** */
/* ナビゲーション
*/
nav {
    background: #48b4fd;
    padding: 0.5em 0;
}
nav ul {

}
nav ul li {
    width: 20%;
    box-sizing: border-box;
    position: relative;
}
nav ul li + li {

}
nav ul li + li:before {
    content: "";
    border-left: solid 1px #fff;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
}
nav ul li a {
    display: block;
    color: #fff;
    text-decoration: none;
    line-height: 1;
    padding: 0.5em;
}
nav ul li a span {
    display: inline-block;
    font-size: 16px;
    line-height: 1.4em;
    position: relative;
    padding-left: 35px;
}
nav ul li a span:before {
    content: "";
    position: absolute;
    width: 32px;
    height: 32px;
    top: -5px;
    left: 0;
}
nav ul li:nth-child(1) a span:before {background:url(../images/icon_nav_01.png);background-size: contain;}
nav ul li:nth-child(2) a span:before {background:url(../images/icon_nav_02.png);background-size: contain;}
nav ul li:nth-child(3) a span:before {background:url(../images/icon_nav_03.png);background-size: contain;}
nav ul li:nth-child(4) a span:before {background:url(../images/icon_nav_04.png);background-size: contain;}

/* **************************************************************** */
/* コンタクト
*/
.btn_bloc button {
    background: #f765b5;
    border-radius: 4px;
    box-shadow: 0 3px 0 #b35d8c;
}
.contact {
    padding: 0;
}
.contact_wrap {
    padding: 2em 0;
}
.contact_wrap .upper {
    margin-bottom: 2em;
}
.contact_wrap .upper p {
		font-size: 16px;
    line-height: 1.4em;
}
.contact_bloc dl dt.required:after {
    background: #48b4fd;
}
.contact_bloc {
    margin: 0 auto 2em;
}

.contact_age {
    width: 4em;
}
.contact_date {
    width: 4em;
}
.contact_salary {
    width: 6em;
}

/* **************************************************************** */
/* 個別CSS
*/
.mv_sec {
		background: url(../images/bg_mv.jpg) no-repeat center top;
    background-size: cover;
    padding: 2em 0;
}
.mv_bloc {

}
.mv_bloc h1 {
    margin-bottom: 0.5em;
}
.mv_bloc h2 {
    margin-bottom: 0.5em;
}
.mv_bloc ul {
    align-items: center;
    justify-content: center;
}
.mv_bloc ul li {

}
.mv_bloc ul li + li{
    margin-left: 1em;
}


.cv_sec {
    background: #fefdee;
    padding: 2em 0;
}

.cv_sec ul {
    width: 100%;
    margin: 0;
    align-items: center;
    justify-content: center;
    gap: 1em;
}
.cv_txt {
    width: 50em;
    text-align: left;
    margin: 0 auto 60px;
    font-size: .9em;
    line-height: 1.8em;
}
.cv_bloc {
    margin-bottom: 1em;
}
.cv_bloc p {

}
.cv_bloc p span {
    display: inline-block;
    color: #fa7bb3;
    font-size: 32px;
    line-height: 1em;
    font-weight: 900;
    position: relative;
    padding: 0.2em 0.5em 0.4em;
}
.cv_bloc p span:before {
    content: "";
    border-left: solid 3px #fa7bb3;
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    transform: rotate(-20deg);
}
.cv_bloc p span:after {
    content: "";
    border-left: solid 3px #fa7bb3;
    position: absolute;
    top: 0;
    right: 0;
    width: 3px;
    height: 100%;
    transform: rotate(20deg);
}

.cv_btn_bloc {
    margin-bottom: 1em;
}
.cv_btn_bloc h2 {
    font-size: 24px;
    line-height: 1.4em;
    margin-bottom: 0.5em;
}
.cv_btn_bloc ul {
    align-items: flex-start;
    justify-content: center;
}
.cv_btn_bloc ul li {

}
.cv_btn_bloc ul li + li {
    margin-left: 2em;
}
.cv_btn_bloc ul a {

}
.cv_btn_bloc ul a img {

}

.cv_tel {

}
.cv_tel .number {
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 0.2em;
}
.cv_tel .number figure {

}
.cv_tel .number a {
    color: #1e1e1e;
    font-size: 54px;
    line-height: 1;
    margin-left: 0.2em;
}

.cv_tel .number span {
    display: inline-block;
    font-weight: 900;

}
.cv_tel .text {
    font-size: 16px;
    line-height: 1.2em;
}

.cm_sec {
    padding: 2em 0;
}
.cm_bloc {

}
.cm_bloc h2 {
    margin-bottom: 1em;
}
.cm_bloc p {

}


.title_bloc {
    background: #48b4fd;
    padding: 2em 0;
}
.title_bloc h2 {
    color: #fff;
    font-size: 32px;
    line-height: 1;
}
.title_bloc h2.flex {
		align-items: flex-end;
    justify-content: center;
}

.support_sec {

}
.support_content {
    background: #e8f4fc;
    padding: 2em 0;
}

.support_bloc {

}
.support_bloc .item {
    align-items: stretch;
    justify-content: space-between;
    box-shadow: 2px 2px 3px #ccc;
}
.support_bloc .item + .item {
    margin-top: 1em;
}

.support_bloc .item figure {

}
.support_bloc .item .detail {
    background: #fff;
    flex: 1 0 0%;
    padding: 1.5em 1em;
    text-align: left;
}
.support_bloc .item .detail h3 {
    font-size: 42px;
    line-height: 1;
    display: inline-block;
    padding: 0.2em 0.2em 0.3em;
    color: #fff;
    margin-bottom: 0.5em;
}
.support_bloc .item .detail p {
    font-size: 21px;
    line-height: 1.4em;
}


.support_bloc .item:nth-child(1) h3 {
		background:#f765b5;
}
.support_bloc .item:nth-child(2) h3 {
		background:#48b4fd;
}
.support_bloc .item:nth-child(3) h3 {
		background:#f39a01;
}


.case_sec {

}
.case_content {
    padding: 2em 0;
}
.case_bloc {

}
.case_bloc .item {
    background: rgb(247,244,229);
    background: linear-gradient(180deg, rgba(247,244,229,1) 0%, rgba(244,239,211,1) 50%, rgba(241,236,198,1) 100%);
    padding: 1em;
		position: relative;
}
.case_bloc .item + .item {
		margin-top:2em;
}

.case_bloc .item:after
{
  z-index: -1;
  position: absolute;
  content: "";
  bottom: 15px;
  right: 10px;
  left: auto;
  width: 50%;
  top: 80%;
  max-width:300px;
  background: #777;
  -webkit-box-shadow: 0 15px 10px #777;
  -moz-box-shadow: 0 15px 10px #777;
  box-shadow: 0 15px 10px #777;
  -webkit-transform: rotate(3deg);
  -moz-transform: rotate(3deg);
  -o-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
}



.case_bloc .item .upper {
    margin-bottom: 1em;
}
.case_bloc .item .upper figure {
		max-width: 116px;
}
.case_bloc .item .upper .box {
    flex: 1 0 0%;
    text-align: left;
    margin-left: 1em;
}

.case_bloc .item .upper .box .price {
    margin-bottom: 1em;
}
.case_bloc .item .upper .box .price dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-start;
    background: #fff;
    padding: 0.2em 0.5em;
    width: 30%;
}
.case_bloc .item .upper .box .price dl dt {
    font-weight: bold;
    font-size: 16px;
}
.case_bloc .item .upper .box .price dl dd {
    color: #f765b5;
    margin-left: 1em;
    font-weight: bold;
}
.case_bloc .item .upper .box .price dl dd span {
    font-size: 42px;
    line-height: 1;
}


.case_bloc .item .upper .box .meta_box {
		display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 1em;
}
.case_bloc .item .upper .box .meta_box dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    width: 50%;
    font-size: 16px;
}
.case_bloc .item .upper .box .meta_box dl dt {

}
.case_bloc .item .upper .box .meta_box dl dd {
    flex: 1 0 0%;
    text-align: left;
}

.case_bloc .item .upper .box h3 {
		background: #48b4fd;
    color: #fff;
    font-size: 24px;
    line-height: 1;
    padding: 0.5em;
    font-style: italic;
    font-weight: 900;
}

.case_bloc .item .bottom {

}
.case_bloc .item .bottom p {
    font-size: 16px;
    line-height: 1.4em;
    text-align: left;
}


.flow_sec {

}
.flow_content {
    padding: 2em 0;
}
.flow_bloc {

}
.flow_bloc ol {

}
.flow_bloc ol li {
    align-items: center;
    justify-content: flex-start;
}
.flow_bloc ol li + li {
    margin-top: 1em;
}


.flow_bloc ol li figure {
    max-width: 150px;
}
.flow_bloc ol li .detail {
    margin-left: 2em;
    text-align: left;
}
.flow_bloc ol li .detail h3 {
    font-size: 30px;
    line-height: 1.2em;
    margin-bottom: 0.2em;
}
.flow_bloc ol li .detail h3 .num {
    color: #25adad;
}
.flow_bloc ol li .detail h3 .title {

}
.flow_bloc ol li .detail p {
    font-size: 18px;
    line-height: 1.4em;
}


.faq_sec {

}
.faq_content {
		padding: 2em 0;
}
.faq_bloc {

}
.faq_bloc dl {

}
.faq_bloc dl + dl {
		margin-top:1em;
}
.faq_bloc dl dt {
    background: #eeeeee;
    text-align: left;
    font-size: 16px;
    line-height: 1.2em;
    padding: 1em 3em 1em 3em;
    position: relative;
    cursor: pointer;
}
.faq_bloc dl dd {
    border: solid 1px #dbdbdb;
    border-top: none;
    padding: 1em 1em 1em 3em;
    font-size: 16px;
    line-height: 1.4em;
    text-align: left;
    position: relative;
    display: none;
}

.faq_bloc dl dt:before {
    content: "";
    width: 20px;
    height: 28px;
    background: url(../images/icon_q.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0.8em;
    left: 1em;
}
.faq_bloc dl dd:before {
    content: "";
    width: 20px;
    height: 28px;
    background: url(../images/icon_a.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0.8em;
    left: 1em;
}

.faq_bloc dl dt:after {
    content: "";
    width: 18px;
    height: 18px;
    background: url(../images/icon_plus.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 1em;
    right: 1em;
}
.faq_bloc dl dt.active:after {
    background: url(../images/icon_minus.png) no-repeat center;
    background-size: contain;
}










.thanks_body {
    height: auto;
    display: block;
}


























