@charset "UTF-8";

/* INDEX ---------------------
  - common setting
  - header
  - main
  - contents
  - footer
--------------------- */

@import url('https://fonts.googleapis.com/css2?family=Raleway&display=swap');

/* =========================
  common setting
========================= */
html {
  font-size: 62.5%;
}

body {
  background-color: #FFFFFF;
  color: #2C2C2C;
  /*font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
  font-family: "Yu Gothic","Montserrat", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "a-otf-midashi-go-mb31-pr6n", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.4;
  position: relative;
}

img {
  width: auto;
  max-width: 100%;
  image-rendering: -webkit-optimize-contrast; /* for Chrome */
}
em {
  font-style:normal;
}

.spOnly {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .pcOnly {
    display: none !important;
  }
  .spOnly {
    display: block !important;
  }
}

/*  text
------------------------*/
/*--- color ---*/
.fc_org {color: #ff6a4d;}
.fc_ylw { color: #F7FF06; }

/*--- emphasys ---*/
.txt_center{
	text-align:center;
}
.txt_highlight {
    background: linear-gradient(transparent 60%, #F7FF06 60% 90%, transparent 90%);
    font-weight: bold;
}
.txt_dots {
  -webkit-text-emphasis: filled dot;
  text-emphasis: filled dot;
}

/*--- size ---*/
.fz_xs {font-size: 1rem !important;}
.fz_s {font-size: 2rem !important;}
.fz_m {font-size: 2rem !important;}
.fz_l {font-size: 2.5rem !important;}
.fz_xl {font-size: 5rem !important;}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
  .fz_xs { font-size: 1.1rem !important; }
  .fz_s { font-size: 1.1rem !important; }
  .fz_m { font-size: 1.4rem !important; }
  .fz_l {font-size: 20px !important;}
  .fz_xl { font-size: 2.6rem !important; }
}

/*  button
------------------------*/
.btn {
  background-color: #FFFFFF;
  border-radius: 30px;
  display: inline-block;
  text-align: center;
}
.btn a {
    border-radius: 30px;
    display: block;
    padding: 4.5% 26px 4.5%;
    font-size: 16px;
}
.btn_white {
    color: #fff;
    background: linear-gradient(123deg, #7ed4ff, #64c0ff);
}
.btn_gradient a {
  background: -moz-linear-gradient(left, #ffb14b, #ff6070);
  background: -webkit-linear-gradient(left, #ffb14b, #ff6070);
  background: linear-gradient(to right, #ffb14b, #ff6070);
  border-radius: 30px;
  color: #FFFFFF;
  opacity: 1;
}
.btn_gradient a:hover {
  opacity: 0.85;
}
@media screen and (min-width: 768px) {
.btn {
    /* font-size: 1.5rem; */
    min-width: 25%;
}
}
@media screen and (max-width: 767px) {
.mv_btn .btn {
    margin: 5% 0 0 0;
}
  .btn a {
    border-radius: 30px;
    display: block;
    padding: 5px 12px;
  }
}

/* =========================
  header
========================= */
header {
    background-color: #FFFFFF;
    box-shadow: 7px 7px 10px rgb(0 0 0 / 11%);
    width: 100%;
    border-bottom: 2px solid #ff6a4d;
}
header.clone {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
}
.headerInner {
    margin: 0 auto;
    max-width: 1400px;
    padding: 0.5% 0 0.5%;
}
.headerTop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}
.headerTop_btn .btn:not(:first-of-type) {
  margin-left: 10px;
}
.headerTop h1.logo {
    width: 17%;
}
.headerTop .headerTop_btn .btn_gradient a {
    padding: 7% 26px 7%;
}
/*--- grobalNav ---*/
.grobalNav {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .headerInner {
    padding-left: 30px;
    padding-right: 30px;
  }
.grobalNav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding: 1% 0 0.5%;
}
.grobalNav li {
    border-left: 1px solid #DFDFDF;
    padding: 0;
    width: calc(100% / 6);
  }
.grobalNav li a {
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #404040;
	display: block;
}
}
@media screen and (max-width: 767px) {
  header {
    position: fixed;
	top: 0;
	left: 0;
    z-index: 5;
  }
  .headerInner {
    padding: 12px 26px;
  }
  .headerTop {
    position: relative;
  }
  .headerTop .btn a {
    padding: 2px 12px;
    font-size: 14px;
  }
  .headerBottom {
    padding: 20px;
	display: none;
  }
  .headerBottom .btn a {
    background: linear-gradient(to left, #ffb14b, #ff6070);
    font-size: 1.2rem;
    margin-top: 26px;
    padding: 10px 0;
    width: 100%;
  }
 .grobalNav {
    font-size: 16px;
}
  .grobalNav li:not(:last-child) {
    margin-bottom: 12px;
  }

  /*--- Humburger Menu ---*/
  .menuBtn {
    position: relative;
    width: 30px;
    height: 20px;
  }
  .menuBtn span,
  .menuBtn span::before,
  .menuBtn span::after {
    background-color: #FF5B3B;
    border-radius: 3px;
    content: "";
    display: block;
    width: 30px;
    height: 3px;
    position: absolute;
    left: 0;
    transition: all .4s;
  }
  .menuBtn span {
    top: calc(50% - 3px);
  }
  .menuBtn span::before {
    bottom: 10px;
  }
  .menuBtn span::after {
    top: 10px;
  }
  .menuBtn.close span {
    background-color: transparent;
  }
  .menuBtn.close span::before {
    bottom: 0;
    transform: rotate(45deg);
  }
  .menuBtn.close span::after {
    top: 0;
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 640px){
 .headerTop h1.logo {
  width: 30%;
}
}
/* =========================
  main
========================= */

/*  MV
------------------------*/
.mv {
    background: url(../images/mv_01_pc02_2.jpg) no-repeat top center / cover;
    position: relative;
    padding: 3% 0 15%;
}
.mvInner {
  max-width: 1582px;
  margin: 0 auto;
}
.mvTxt_main {
    font-size: 9rem;
    line-height: 1.2;
    text-shadow: 3px 3px 4px rgb(160 160 160 / 85%);
    font-family: ヒラギノ角ゴシック, "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    letter-spacing: 0.03em;
}
.mvTxt_sub {
    font-size: 2.5rem;
    line-height: 1.7em;
    letter-spacing: 0.03em;
    margin: 40px 0 16px;
    text-shadow: 1px 1px 2px rgb(211 211 211);
}
.mv_btn a {
  background: -moz-linear-gradient(right, #ffb14b, #ff6070);
  background: -webkit-linear-gradient(right, #ffb14b, #ff6070);
  background: linear-gradient(to left, #ffb14b, #ff6070);
}
@media screen and (max-width: 1582px){
.mvTxt_main {
    font-size: 7.5rem;
}
}
@media screen and (min-width: 768px) {
.mvInner {
    padding-left: 10%;
    padding-right: 10%;
}
.mv_btn a {
    font-size: 18px;
    letter-spacing: 0.05em;
}
}
@media screen and (max-width: 767px) {
.mv {
    background-image: url(../images/mv_01_sp.jpg);
    padding: 30% 5% 30%;
}
.mvTxt_main {
    font-size: 40px;
}
.mvTxt_sub {
    letter-spacing: 0.054em;
    font-size: 16px;
    margin: 5% 0 2%;
}
.mv_btn a {
    font-size: 16px;
    padding: 5% 0;
    width: 151px;
    letter-spacing: 0.05em;
}
}

/*  section
------------------------*/
.secInner {
    margin: 0 auto;
    padding: 5% 0;
    max-width: 1170px;
}
.secTtl {
    text-align: center;
    position: relative;
    margin-bottom: 3%;
}
.secTtl_txt {
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    margin: 1% 0 0 0;
    line-height: 1em;
}
@media screen and (max-width: 1200px){
.secInner {
    width: 90%;
}
}
/*--- balloon ---*/
.secTtl_balloon {
    background-color: #ff7459;
    border-radius: 50px;
    color: #FFFFFF;
    display: inline-block;
    font-size: 1.9rem;
    margin-bottom: 2%;
    padding: 0.5% 2%;
    position: relative;
    letter-spacing: 0.05em;
}
.secTtl_balloon::before {
    border: 20px solid transparent;
    border-top-color: #ff7459;
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 50%;
    bottom: -33px;
    transform: translateX(-50%);
}
.secTtl_balloon.balloon_gray {
  background-color: #EEEEEE;
  color: #2C2C2C;
}
.secTtl_balloon.balloon_gray::before {
  border-top-color: #EEEEEE;
}
@media screen and (max-width: 767px) {
  .secTtl {
    margin-bottom: 20px;
  }
  .secTtl_txt {
    font-size: 2.8rem;
  }
  .secTtl_sub {
    font-size: 1.2rem;
  }
  .secTtl_balloon {
    font-size: 1.2rem;
    padding: 6px 20px;
  }
  .secTtl_balloon.balloon_gray {
    padding: 6px 20px;
  }
}

/*  parts
------------------------*/
.contentBox_white {
    background-color: #FFFFFF;
    border-radius: 30px;
}
/* =========================
  contents
========================= */

/*  ドローン市場について
------------------------*/
.market .secTtl {
    margin-bottom: 5%;
}
.market .secTtl_txt {
    display: inline-block;
    font-size: 4.5rem;
    line-height: 1.6rem;
    position: relative;
    margin: 0;
}
.market .secTtl_txt_cap {
    display: inline-block;
    text-align: left;
    position: absolute;
    left: 3.5em;
    top: 1.5em;
}
.reasonBox {
    border: 1px solid #979797;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 5% 2% 3%;
    position: relative;
}
.reasonBox .reasonBoxLabel {
    background-color: #ff7d64;
    border-radius: 50px;
    color: #FFFFFF;
    font-size: 2rem;
    line-height: 1.0;
    padding: 1% 5% 1% 3%;
    position: absolute;
    top: -1.2em;
    left: 50%;
    transform: translateX(-50%);
}
.reasonBox .reasonBoxLabel::after {
    background: url(../images/icon_01.png) no-repeat top center / contain;
    content: "";
    display: block;
    width: 45px;
    height: 45px;
    position: absolute;
    top: 50%;
    right: 11px;
    transform: translateY(-50%);
    image-rendering: -webkit-optimize-contrast;
}
.reasonBox .reasonBoxItem_ttl {
    color: #FF5B3B;
    font-size: 2.3rem;
    text-align: center;
}
.reasonBox .reasonBoxItem_ttl .num {
    display: block;
    font-size: 18px;
    margin: 0 0 3% 0;
}
.reasonBox .reasonBoxItem_txt {
    margin-top: 20px;
    line-height: 1.8em;
    font-size: 16px;
    letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
.reasonBox .reasonBoxItem {
    width: 33.3%;
    padding: 0 30px;
}
.reasonBox .reasonBoxItem:not(:last-child) {
    border-right: 1px solid #979797;
}
}

@media screen and (max-width: 767px) {
  .market .secTtl {
    margin-top: -20px;
    margin-bottom: 37px;
  }
  .market .secTtl_txt {
    font-size: 2.2rem;
  }
  .reasonBox {
    border-radius: 16px;
    flex-direction: column;
    padding: 33px 18px;
  }
.reasonBox .reasonBoxLabel {
    font-size: 16px;
    padding: 6px 26px 7px 17px;
    text-align: center;
    width: 75%;
    line-height: 1.2em;
    top: -1.7em;
}
  .reasonBox .reasonBoxLabel::after {
    width: 28px;
    height: 30px;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    image-rendering: -webkit-optimize-contrast; /* for Chrome */
  }
  .reasonBox .reasonBoxItem {
    width: auto;
  }
  .reasonBox .reasonBoxItem:not(:last-child) {
    border-bottom: 1px solid #979797;
    margin-bottom: 22px;
    padding-bottom: 18px;
  }
  .reasonBox .reasonBoxItem_ttl {
    font-size: 1.8rem;
    margin: 0 -10px;
  }
  .reasonBox .reasonBoxItem_ttl .num {
    font-size: 2.2rem;
    margin-bottom: 10px;
  }
.reasonBox .reasonBoxItem_txt {
    font-size: 1.5rem;
    margin: 2% 0 0;
    line-height: 1.6em;
}
}

/*  対応可能業務
------------------------*/
.business {
  background: -moz-linear-gradient(315deg, #ff6a79, #ffc880);
  background: -webkit-linear-gradient(315deg, #ff6a79, #ffc880);
  background: linear-gradient(to bottom right, #ff6a79 0%, #ffc880 100%);
}
.business .secTtl_sub {
    font-size: 18px;
    font-weight: normal;
    margin: 1% 0 0 0;
}
.business .secInner .contentBox_white {
    padding: 4%;
}
@media screen and (max-width: 767px) {
  .business .secInner .contentBox_white {
    padding: 28px 14px 38px 17px;
  }
}

/*  強み
------------------------*/
.advantage {
  background: url(../images/bg_01_pc.png) no-repeat top center / cover;
}
@media screen and (max-width: 767px) {
.advantage {
  background-image: url(../images/bg_01_sp.png);
}
}

/*--- cardBox ---*/
.cardBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cardBox .cardItem {
  border-radius: 20px;
  box-shadow: 7px 7px 7px rgba(0, 0, 0, 0.16);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.cardBox .cardItem_txt {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .contentBox_white {
    border-radius: 20px;
  }
  .cardBox .cardItem {
    border-radius: 10px;
  }
}
@media screen and (max-width: 320px) {
  .cardBox {
    display: block;
  }
}

/* cardBox01 */
.cardBox01::after { /* flexboxで最後の要素を左寄せ(3カラムver.) */
  content:"";
  display: block;
  width: 30%;
}
.cardBox01 .cardItem {
    background-color: #F9F9F9;
    margin-bottom: 3%;
    padding: 2%;
    width: 48%;
}
.cardBox01 .cardItem_ttl {
    font-size: 2.5rem;
    position: relative;
    padding-left: 8%;
    margin-bottom: 3%;
}
.cardBox01 .cardItem_ttl::before {
    background: url(../images/icon_02.png) no-repeat left center / contain;
    content: "";
    display: block;
    width: 25px;
    height: 25px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    image-rendering: -webkit-optimize-contrast;
}
.cardBox01 .cardItem_img {
    margin-bottom: 2%;
    margin-right: -4%;
    margin-left: -4%;
}
.cardBox01 .cardItem_txt {
    line-height: 1.61;
    margin-bottom: 2%;
    font-size: 16px;
}
.cardBox01 .cardItem_txt span {
    font-size: 18px;
    display: block;
    color: #ff4622;
	line-height: 1.3em;
    padding: 3% 0 2%;
}
.cardBox01 .cardItem_ex {
    background-color: #FFFFFF;
    font-size: 1.8rem;
    margin-top: auto;
    min-height: 100px;
    padding: 2%;
}
.cardBox01 .cardItem_ex .cardItem_ex_label {
    background-color: #ff7459;
    border-radius: 50px;
    color: #FFFFFF;
    display: inline-block;
    margin-bottom: 14px;
    padding: 4px 13px;
    font-size: 16px;
    letter-spacing: 0.05em;
}
.cardBox01 .cardItem_ex .cardItem_ex_txt {
    padding: 0 13px;
    font-size: 16px;
}
@media screen and (max-width: 767px) {
  .cardBox01 .cardItem {
    margin-bottom: 22px;
    padding: 11px 8px 8px;
    width: 47%;
  }
.cardBox01 .cardItem_ttl {
    font-size: 2rem;
    padding-left: 22px;
    margin-bottom: 8px;
}
  .cardBox01 .cardItem_ttl::before {
    width: 14px;
    height: 14px;
  }
  .cardBox01 .cardItem_img {
    margin-bottom: 5px;
    margin-right: -8px;
    margin-left: -8px;
  }
  .cardBox01 .cardItem_txt {
    font-size: 1.0rem;
  }
  .cardBox01 .cardItem_ex {
    font-size: 1.0rem;
    min-height: 60px;
    padding: 6px;
  }
  .cardBox01 .cardItem_ex .cardItem_ex_label {
    margin-bottom: 7px;
    padding: 2px 9px 2px 7px;
    font-size: 14px;
  }
  .cardBox01 .cardItem_ex .cardItem_ex_txt {
    padding: 0 7px;
  }
}
@media screen and (max-width: 640px){
.cardBox01 .cardItem {
    width: 100%;
}
.cardBox01 .cardItem_txt {
    font-size: 1.5rem;
}
}
@media screen and (max-width: 320px) {
  .cardBox .cardItem {
    width: auto;
  }
}

/* cardBox02 */
.cardBox02 .cardItem {
    background-color: #F7F7F7;
    padding: 2% 4%;
    width: calc(50% - 20px);
}
.cardBox02 .cardItem_ttl {
    border-bottom: 1px solid #FF5B3B;
    margin-bottom: 3%;
    padding-bottom: 2%;
}
.cardBox02 .cardItem_ttl .cardItem_ttl_label {
    background: -moz-linear-gradient(right, #ffb14b, #ff6070);
    background: -webkit-linear-gradient(right, #ffb14b, #ff6070);
    background: linear-gradient(to left, #ffb14b, #ff6070);
    border-radius: 50px;
    color: #FFFFFF;
    display: inline-block;
    font-size: 15px;
    line-height: 1.0;
    padding: 1.5% 4%;
    margin-bottom: 2%;
    letter-spacing: 0.1em;
}
.cardBox02 .cardItem_ttl .cardItem_ttlTxt {
    font-size: 2.5rem;
    letter-spacing: 0.05em;
}
.cardBox02 .cardItem_txt {
    line-height: 1.8em;
    margin-bottom: 0;
    font-size: 16px;
}
.cardBox02 .cardItem_img, .cardBox02 .cardItem_btn {
    margin: auto auto 0;
}
@media screen and (max-width: 767px) {
  .cardBox02 {
    display: block;
  }
  .cardBox02 .cardItem {
    padding: 15px 26px 16px 35px;
    width: auto;
  }
  .cardBox02 .cardItem:not(:last-child) {
    margin-bottom: 19px;
  }
.cardBox02 .cardItem_ttl {
    margin-bottom: 10px;
    padding-bottom: 8px;
}
.cardBox02 .cardItem_ttl .cardItem_ttl_label {
    font-size: 1.2rem;
    margin-bottom: 5px;
    padding: 5px 11px 4px 10px;
}
.cardBox02 .cardItem_ttl .cardItem_ttlTxt {
    font-size: 2rem;
}
.cardBox02 .cardItem_txt {
    font-size: 1.5rem;
    line-height: 1.6em;
    margin-bottom: 7px;
    text-align: justify;
}
  .cardBox02 .cardItem_img,
  .cardBox02 .cardItem_btn {
    margin-right: -4px;
    margin-left: -4px;
  }
}

/*  料金
------------------------*/
.price {
  background: url(../images/bg_02_pc.png) no-repeat center center / cover;
}
.price .secContent {
  text-align: center;
}
.priceTable {
  display: inline-block;
  margin: 0 auto;
}
.priceTable table {
    margin-bottom: 2%;
    text-align: left;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.priceTable th, .priceTable td {
    border-collapse: collapse;
    border: 2px solid #FAFAFA;
    padding: 0.5% 2%;
    vertical-align: middle;
    font-size: 18px;
}
.priceTable thead th {
  background-color: #2E2E2E;
  color: #FFFFFF;
  text-align: center;
}
.priceTable tbody th {
  background-color: #D3D3D3;
}
.priceTable tbody td {
    background-color: #F8F8F8;
    font-size: 16px;
    width: 25%;
    font-weight: normal;
}
.priceTable tbody .row_odd td {
  background-color: #ECECEC;
}
.priceTable .list_notice {
    font-size: 1.5rem;
    text-align: left;
    font-weight: normal;
}
.price p.secTtl_sub {
    font-weight: 500;
    font-size: 18px;
    margin: 1% 0 0 0;
}
.priceTable tbody .row_odd td span {
    font-size: 15px;
}
.priceTable tbody th span {
    font-size: 15px;
    font-weight: normal;
}
@media screen and (max-width: 767px) {
  .price {
    background-image: url(../images/bg_02_sp.png);
  }
  .price .secInner {
    padding-bottom: 19px;
  }

  .priceTable {
    display: block;
  }
  .priceTable table {
    text-align: center;
    margin-bottom: 22px;
    width: 100%;
  }
  .priceTable thead {
    display: none;
  }
  .priceTable tbody {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
  }
  .priceTable tr {
    display: flex;
    flex-direction: column;
    position: relative;
    width: 100%;
  }
  .priceTable tbody tr::before {
    display: block;
    content: "";
    height: 63px;
  }
  .priceTable tbody tr.row2 { width: 50%; }
  .priceTable tbody tr.row3 { width: 33.3%; }
  .priceTable th,
  .priceTable td {
    font-size: 1.2rem;
    padding: 11px 5px;
    position: relative;
    text-align: center;
    width: 100%;
  }
.priceTable tbody th {
    background-color: #2E2E2E;
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    position: absolute;
    top: -63px;
    left: 0;
    height: 63px;
    width: 100%;
    z-index: 3;
    margin-top: 63px;
}
.priceTable tbody tr.row2 th{
    width: 201%;
}
.priceTable tbody tr.row2 td[data-title]::before {
    width: 202%;
}
.priceTable tbody tr.row3 th{
    width:300%;		
}
.priceTable tbody tr.row3 td {
    width: 100%;
	padding:0;
}
.priceTable tbody tr.row3 td[data-title]::before {
    width: 306%!important;
}
.priceTable tbody td {
    background-color: #ECECEC !important;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 71px;
    margin-top: 55px;
    position: relative;
    width: 100%;
    font-size: 15px;
}
.priceTable tbody td[data-title]::before {
    background-color: #D3D3D3;
    border-bottom: 4px solid #FAFAFA;
    content: attr(data-title);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    height: 55px;
    position: absolute;
    top: -55px;
    left: 0;
    z-index: 3;
    width: 100%;
}
.priceTable .list_notice {
    font-size: 1.2rem;
}
.price p.secTtl_sub {
    font-size: 16px;
}
}
/*  フロー
------------------------*/
.flow .secInner {
  position: relative;
}
.flow .secInner::before {
    background: url(../images/img_07.png) no-repeat center center / contain;
    content: "";
    display: block;
    width: 288px;
    height: 234px;
    position: absolute;
    top: -122px;
    right: 0;
    image-rendering: -webkit-optimize-contrast;
}
.stepFlow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2% 17% 1%;
}
.stepFlowItem {
  position: relative;
}
.stepFlowItem .stepFlowItem_num {
    color: #ff5b3b;
    font-size: 1.5rem;
    position: absolute;
    top: 5px;
    left: -0.5em;
    z-index: 2;
    line-height: 1em;
    background-color: #fff;
    border-radius: 30px;
    padding: 4% 5%;
}
.stepFlowItem .stepFlowItem_txt {
    font-size: 1.6rem;
    line-height: 1.0;
    letter-spacing: 0.05em;
}
.stepFlowItem .stepFlowItem_img img {
    width: 80%;
}
@media screen and (min-width: 768px) {
.stepFlowItem {
   width: 192px;
 }
.stepFlowItem:not(:last-child) {
   margin-right: 84px;
}
.stepFlowItem .stepFlowItem_img {
    margin-bottom: 17px;
    position: relative;
}
.stepFlowItem:not(:last-child) .stepFlowItem_img::after {
    border: 16px solid transparent;
    border-left-color: #ff6347;
    content: "";
    width: 0;
    height: 0;
    margin-top: 10px;
    position: absolute;
    top: 50%;
    right: -69px;
    transform: translateY(-50%);
}
 .stepFlowItem .stepFlowItem_txt {
    text-align: center;
}
}

@media screen and (max-width: 767px) {
  .flow .secInner::before {
    width: 95px;
    height: 61px;
    top: -30px;
  }
  .stepFlow {
    display: block;
    margin-left: 30px;
  }
  .stepFlowItem {
    display: flex;
    align-items: center;
  }
.stepFlowItem:not(:last-child) {
    margin-bottom: 25px;
}
  .stepFlowItem .stepFlowItem_img {
    width: 52px;
  }
  .stepFlowItem .stepFlowItem_txtBox {
    margin-left: 16px;
  }
  .stepFlowItem:not(:last-child) .stepFlowItem_txtBox {
    position: relative;
  }
.stepFlowItem:not(:last-child) .stepFlowItem_txtBox::after {
    border: 9px solid transparent;
    border-top-color: #FF5B3B;
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 2.3em;
    bottom: -28px;
}
  .stepFlowItem .stepFlowItem_num {
    font-size: 1.8rem;
    margin-bottom: 6px;
    position: static;
  }
  .stepFlowItem .stepFlowItem_txt {
    font-size: 2.0rem;
  }
}

/*  よくあるご質問
------------------------*/
.faq {
  background-color: #FAFAFA;
}
.faqItem:not(:last-child) {
    margin-bottom: 1%;
}
section.faq dl.faqItem {
    cursor: pointer;
}
section.flow p.flow_p {
    font-size: 18px;
    color: #555;
    margin: 1.5% 0 0;
}
section.flow p.flow_p span {
    background-color: #fff185;
    padding: 0 0.5%;
    margin: 0 0.3%;
    font-size: 21px;
    color: #ff7136;
}
.faq_Q, .faq_A {
    font-size: 1.6rem;
    padding: 1.5% 10%;
    position: relative;
}
.faq_Q {
  background-color: #ECECEC;
  border-radius: 20px;
}
.faq_A {
  background-color: #FFFFFF;
  border-radius: 0 0 20px 20px;
}
.faq_Q::before, .faq_A::before {
    content: "";
    display: block;
    width: 42px;
    height: 42px;
    position: absolute;
    top: 50%;
    left: 37px;
    transform: translateY(-50%);
    image-rendering: -webkit-optimize-contrast;
}
.faq_Q::before { background: url(../images/icon_q.png) no-repeat left center / contain; }
.faq_A::before { background: url(../images/icon_a.png) no-repeat left center / contain; }
.faq_Q::after {
  content: '＋';
  color: #FF5B3B;
  font-size: 3.4rem;
  position: absolute;
  top: 50%;
  right: 35px;
  transform: translateY(-50%);
}
.faq_Q.active {
  border-radius: 20px 20px 0 0;
}
.faq_Q.active::after {
  content: '－';
}

@media screen and (max-width: 767px) {
.faqItem:not(:last-child) {
    margin-bottom: 6px;
}
  .faq_Q,
  .faq_A {
    font-size: 1.6rem;
    padding: 15px 30px 15px 52px;
  }
  .faq_Q {
    border-radius: 10px;
  }
  .faq_Q::before,
  .faq_A::before {
    width: 27px;
    height: 27px;
    left: 18px;
  }
  .faq_Q::after {
    font-size: 2.0rem;
    right: 10px;
  }
  .faq_Q.active {
    border-radius: 10px 10px 0 0;
  }
  .faq_A {
    border-radius: 0 0 10px 10px;
  }
}

/*  問い合わせフォーム
------------------------*/
#contact {
  background: -moz-linear-gradient(315deg, #ff6a79, #ffc880);
  background: -webkit-linear-gradient(315deg, #ff6a79, #ffc880);
  background: linear-gradient(to top left, #ff6a79 0%, #ffc880 100%);
}
#contact h2{
  margin:0 0 2% 0;
}
#contact .contentBox_white {
  padding: 46px 54px 54px 58px;
}
.contactForm {
    /* font-size: 1.5rem; */
    font-size: 16px;
}
.contactForm .formBlock {
  padding: 0 46px;
}
.contactForm .formBlock:not(:first-of-type) {
  margin-top: 30px;
}
.contactForm .formBlock .txt_center {
  font-weight:normal;
}
.contactForm .formBlock .txt_center a{
	color: #2C2C2C;
}
.contactForm .formBlock a{
	color: #19bdbd;
  text-decoration: underline;
}
.contactForm .require {
  background-color: #ff4747;
  border-radius: 3px;
  color: #ffffff;
  font-size: 1.4rem;
  margin-left: 10px;
  padding: 2px 6px;
}
.contactForm .formItem {
    margin-top: 2%;
}
.contactForm .formItem.method_h .formItem_input input, .contactForm .formItem.method_h .formItem_select select, .contactForm .formItem.method_h .formItem_textarea textarea{
    padding: 1% 3%;
}

.contactForm .formItem_label {
  margin-bottom: 5px;
}
.contactForm .formItem_input input, .contactForm .formItem_select select, .contactForm .formItem_textarea textarea {
    border: solid 1px #888;
    border-radius: 30px;
    padding: 1.8% 3%;
    width: 100%;
}
.contactForm .privacyPolicy .formItem .formItem_label a:hover {
  text-decoration: underline;
}
.contactForm .privacyPolicy .formItem_checkbox {
  padding-left: 1.5em;
}
.contactForm .privacyPolicy .formItem_checkbox label {
  margin-left: 10px;
}
.contactForm .formItem_radio li {
  margin-top: 15px;
  margin-left: 20px;
}
.contactForm .formItem_radio li label {
  margin-left: 10px;
}
.contactForm .formItem_submit {
    text-align: center;
    display: flex;
    flex-direction: column;
}
.contactForm .formItem_submit input[type="submit"] {
    background-color: #1565C0;
    border-radius: 10px;
    color: #FFFFFF;
    padding: 1% 4%;
    margin: 35px auto 20px;
}
.linkArea {
    border-top: 1px solid #FFFFFF;
    margin-top: 3%;
    padding-top: 3%;
}
.linkArea .linkItem {
    background-color: #FFFFFF;
    border-radius: 60px;
    color: #FF5B3B;
    font-size: 3.6rem;
}
.linkArea .linkItem a {
    display: block;
    padding: 3%;
    position: relative;
    font-size: 20px;
    text-align: center;
}
.formItemBox{
	border-top: 1px solid #cacaca;
    margin: 3% 0 0 0;
    padding: 2% 0;
}
@media screen and (min-width: 1096px) {
.contactForm .formBlock {
    padding: 0;
}
}
@media screen and (min-width: 768px) {
  .contactForm .privacyPolicy .formItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .contactForm .formItemBox_col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .contactForm .formItemBox_col .formItem {
    width: 45%;
  }
  .contactForm .privacyPolicy .formItem .formItem_label,
  .contactForm .privacyPolicy .formItem_checkbox {
    width: 45%;
  }
  .contactForm .formItem_radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

    .linkArea {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: center;
    }
.linkArea .linkItem {
    width: calc(50% - 10px);
}
}

@media screen and (max-width: 767px) {
  #contact {
    background: -moz-linear-gradient(bottom, #ff6a79, #ffc880);
    background: -webkit-linear-gradient(bottom, #ff6a79, #ffc880);
    background: linear-gradient(to top, #ff6a79 0%, #ffc880 100%);
  }
  #contact .secInner {
    padding-bottom: 29px;
  }
  #contact .contentBox_white {
    padding: 30px 15px;
  }

  .contactForm {
      /* font-size: 1.3rem; */
  }
  .contactForm .formBlock {
    padding: 0 15px;
  }
  .contactForm .formBlock > .formBlock {
    padding-left: 0;
    padding-right: 0;
  }
  .contactForm .formBlock:not(:first-of-type) {
    margin-top: 15px;
  }
  .contactForm .require {
    font-size: 1.1rem;
    margin-left: 8px;
  }
  .contactForm .formItem {
    margin-top: 15px;
  }
.contactForm .formItem_input input, .contactForm .formItem_select select, .contactForm .formItem_textarea textarea {
    padding: 8px 10px 8px;
}
.contactForm .formItem.method_h .formItem_input input, .contactForm .formItem.method_h .formItem_select select, .contactForm .formItem.method_h .formItem_textarea textarea {
    padding: 2% 3%;
}
  .contactForm .formItem_radio li {
    display: inline-block;
    margin-top: 5px;
    margin-left: 1em;
  }
  .contactForm .formItem_radio li label {
    margin-left: 0.5em;
  }
  .contactForm .formItem_submit input[type="submit"] {
    font-size: 1.4rem;
    margin: 25px auto 20px;
    padding: 10px 20px;
    width: 100%;
  }
  .contactForm .formItem_submit .formTxt {
    margin-left: 1.5em;
    text-align: left;
    text-indent: -1em;
  }

  .linkArea {
    margin-top: 28px;
    padding-top: 18px;
  }
  .linkArea .linkItem {
    font-size: 1.1rem;
  }
  .linkArea .linkItem:not(:last-child) {
    margin-bottom: 12px;
  }
.linkArea .linkItem a {
    padding: 2% 0;
    text-align: center;
    font-size: 16px;
    line-height: 1em;
}
  .linkArea .linkItem a::after {
    width: 16px;
    height: 12px;
    right: 70px;
  }
}

@media screen and (max-width: 320px) {
  .linkArea .linkItem a {
    padding: 8px 0 8px 25px;
  }
  .linkArea .linkItem a::after {
    right: 20px;
  }
}

/*  問い合わせフォーム　確認
------------------------*/
div#wpcf7cpcnf {
  z-index: 0 !important;
}
div#wpcf7cpcnf table {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  border: 1px solid #ccc;
  /* border-bottom: none; */
  font-size: 16px;
}
div#wpcf7cpcnf table tr {
    border-bottom: 1px solid #ccc;
}
div#wpcf7cpcnf table th, div#wpcf7cpcnf table td {
    padding: 12px;
    background: #ffffff;
}
div#wpcf7cpcnf table th {
    width: 50%;
    border-right: 1px solid #ccc;
    background: #f0f8ff;
    color: #00367c;
}
div.wpcf7cp-btns {
	margin: 50px 0 0 !important;
	text-align: center;
}

.ly_contact .transmission .button, div.wpcf7cp-btns .wpcf7-form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    appearance: none;
    cursor: pointer;
    background:#005bac;
    display: inline-block;
    width: 30%;
    outline: none;
    border-radius: 5px;
    font-size:20px;
    font-weight: bold;
    border: none;
    padding: 12px 0;
    margin: 0 1%;
    letter-spacing: .2em;
    transition: .5s;
    color: #fff;
}

@media screen and (max-width: 767px) {
  div#wpcf7cpcnf table th,
  div#wpcf7cpcnf table td {
    display: block;
    width: 100%;
  }
  .ly_contact .transmission .button, div.wpcf7cp-btns .wpcf7-form-control {
      width: 43%;
      font-size: 1rem;
      letter-spacing: .1em;
  }
}

/* =========================
  footer
========================= */
.footerInner {
    max-width: 1582px;
    margin: 0 auto;
    padding: 2% 0 0;
}
.footerBottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.footerBottom .logo {
    max-width: 195px;
    margin: 0 0 1% 0;
}
.footerBottom .footerNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.footerBottom .footerNav li {
    margin-right: 67px;
    font-size: 15px;
}
.copyrights {
    background-color: #3770BF;
    color: #FFFFFF;
    font-size: 12px;
    text-align: center;
    padding: 0.4% 0;
}
@media screen and (min-width: 768px) {
    .footerInner {
        padding-left: 15%;
        padding-right: 15%;
    }
    .footerBnrArea {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: center;
        margin-bottom: 133px;
    }
    .footerBnrArea .footerBnrItem {
        width: 48%;
    }
}

@media screen and (max-width: 767px) {
  .footerInner {
    padding: 25px 25px 10px;
  }
  .footerBnrItem:not(:last-child){
    margin-bottom: 16px;
  }
  .footerBnrArea {
    margin-bottom: 52px;
  }
  .footerBottom .logo {
    max-width: 120px;
  }
  .footerBottom .footerNav li {
    font-size: 1.1rem;
    margin-right: 31px;
  }
  .footerBottom .footerNav li:last-child {
    margin-right: 1em;
  }
  .copyrights {
    font-size: 0.9rem;
    padding: 11px 0 9px;
  }
}
/*-------- pagetop --------*/
#page_top {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: -50px;
    background: #ff5b3b;
    border-radius: 50%;
    z-index: 15;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 20px;
    color: #fff;
    position: absolute;
    width: 18px;
    height: 18px;
    top: -10px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}
/*nav上部固定*/
.clone-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  transition: .3s;
  transform: translateY(-100%);
  background-color:#ffffffed;
}
.is-show {
  transform: translateY(0);
}
.clone-nav .gnav {
    background: #002357eb;
	height: 3rem;
}
.clone-nav .gnav li a {
    height: 3rem;
    line-height: 3rem;
    background: #143464;
}
.clone-nav .header_top {
    padding: 0.2% 0;
}
.clone-nav .gnav li:hover > ul > li {
    height: 3rem;
}
.clone-nav .gnav li ul.nav_serbtn_small li a:hover {
    background: #228bc8;
}
@media screen and (max-width:640px) {
.clone-nav.clone-nav {
  display:none;
}
}

@media screen and (min-width: 768px) and (max-width: 1582px) {
  html{
    font-size: 0.8vw;
  }
}


/*サンキューメール*/
.thanks_box{
	
}
.kotei_temp {
    
}
.kotei_temp{
    background-image: url(img/overview_back.png);
}
.thanks_box p {
    font-size: 16px;
    line-height: 1.7em;
    font-weight: bold;
}
p.thanks_topi {
    font-size: 25px;
    font-weight: bold;
    color: #ff6a4d;
    border-left: 10px solid;
    padding: 0 1%;
    line-height: 1.3em;
    margin: 0 0 2% 0;
    font-weight: bold;
}
.more-btn{
	margin:2% 0 0 0;
}
/*年末年始休業文*/
.board {
    border: 2px solid #ff6a4d;
    padding: 2%;
    margin: 2% 0 0;
    background-color: #fff8f7;
}
.board p span {
    font-size: 20px;
    line-height: 2em;
    color: #ff6a4d;
    font-weight: bold;
}
p.board_p {
    font-size: 22px;
    color: #ff6a4d;
    padding: 0 0 0.5% 0;
    font-weight: bold;
}
@media screen and (max-width: 640px){
.board p span {
    font-size: 16px;
    font-weight: bold;
}
p.board_p {
    font-size: 18px;
    font-weight: bold;
}
}



/*  BPOサービス
------------------------*/
section.bpo {

}
section.bpo h2 {
    text-align: center;
    font-size: 30px;
    margin: 0 0 3% 0;
}
section.bpo .bpolist_box{
  overflow:hidden;
}
section.bpo .bpo_box {
    float: left;
    width: 48%;
    margin: 0 2% 0 0;
    position: relative;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    border: 1px solid #1275cd;
    background-color: #ecf8ff;
}
section.bpo .bpo_box a{
    display: block;
    padding: 3% 5%;
    height: 135px;
}
section.bpo .bpo_box:hover {
    background-color: #d8f1ff;
}
section.bpo .bpo_box:nth-child(2) {
    margin: 0;
    background-color: #fff7b6;
    border: 1px solid #ff982a;
}
section.bpo .bpo_box:nth-child(2):hover {
    background-color: #fff394;
}
section.bpo .bpo_box h3 {
    font-size: 25px;
    margin: 0 0 2% 0;
    text-align: center;
    color: #1275cd;
    letter-spacing: 0.05em;
}
section.bpo .bpo_box:nth-child(2) h3 {
    color: #ff982a;
}
section.bpo .bpo_box p{
    font-size: 16px;
}
section.bpo .bpo_box::after {
    content: '';
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent #1275cd transparent;
    transition: 0.3s;
}
section.bpo .bpo_box:nth-child(2)::after {
    content: '';
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent #ff982a transparent;
    transition: 0.3s;
}

@media screen and (max-width: 767px){
section.bpo h2 {
    font-size: 2.8rem;
}
section.bpo .bpo_box {
    float: none;
    width: 100%;
    height: 115px;
    margin: 0 0 3% 0;
}
section.bpo .bpo_box h3 {
    font-size: 20px;
}
section.bpo .bpo_box p {
    font-size: 1.3rem;
}
}

/*  業務委託後のフロー
------------------------*/
section.flow {
    background-color: #fffae3;
}
section.flow h2 {

}
section.flow .afterflow_box h3 {
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    line-height: 1em;
    background-color: tomato;
    color: #fff;
    padding: 1% 2%;
    text-align: left;
    border-radius: 20px 20px 0 0;
}
section.flow .afterflow_box.box_blue h3 {
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    line-height: 1em;
    background-color: #4484d9;
    color: #fff;
    padding: 1% 2%;
    text-align: left;
    border-radius: 20px 20px 0 0;
}
section.flow .afterflow_box {
    background-color: #fff;
    margin: 3% 0 0;
    border-radius: 20px;
    filter: drop-shadow(2px 4px 6px #bbbb);
}
section.flow .afterflow_box ul {
    padding: 3% 10%;
}
section.flow .afterflow_box ul li {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin: 0 0 4% 0;
    padding: 0 0 0 2%;
    position: relative;
}
section.flow .afterflow_box ul li:nth-child(1) {
    border-left: 15px solid #3d7ed4;
}
section.flow .afterflow_box ul li:nth-child(2) {
    border-left: 15px solid #5896e9;
}
section.flow .afterflow_box ul li:nth-child(3) {
    border-left: 15px solid #7fb1f3;
}
section.flow .afterflow_box ul li:nth-child(4) {
    border-left: 15px solid #a7cdff;
}
section.flow .afterflow_box ul li:nth-child(5) {
    border-left: 15px solid #c8e0ff;
}
section.flow .afterflow_box ul li::before {
    content: "";
    border: solid transparent;
    border-width: 15px;
    position: absolute;
    top: calc(100% - 0px);
    left: -22px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-49%);
    transform: rotate( 360deg);
}
section.flow .afterflow_box ul li:nth-child(1)::before {
    border-top-color: #3d7ed4;
}
section.flow .afterflow_box ul li:nth-child(2)::before {
    border-top-color: #5896e9;
}
section.flow .afterflow_box ul li:nth-child(3)::before {
    border-top-color: #7fb1f3;
}
section.flow .afterflow_box ul li:nth-child(4)::before {
    border-top-color: #a7cdff;
}
section.flow .afterflow_box ul li:last-child::before {
    content: none;
}
section.flow .afterflow_box ul li .afterflow_leftbox {
    margin: 0 3% 0 0;
}
section.flow .afterflow_box ul li .afterflow_rightbox {
    text-align: left;
}
section.flow .afterflow_box ul li .afterflow_rightbox h4 {
    line-height: 1em;
    margin: 4% 0 2%;
    letter-spacing: 0.05em;
    font-size: 25px;
}
section.flow .afterflow_box ul li .afterflow_rightbox p{
    font-size: 17px;
    line-height: 1.8em;
}
section.flow .afterflow_box ul li .afterflow_rightbox p a{
	color:blue;
	text-decoration:underline;
}
section.flow .afterflow_box ul li .afterflow_rightbox p.step_number {
    font-size: 16px;
    background-color: #000;
    display: inline-block;
    padding: 1.5% 4%;
    border-radius: 50px;
    line-height: 1em;
    color: #fff;
}
section.flow .afterflow_box ul li:nth-child(1) .afterflow_rightbox p.step_number {
    background-color: #3d7ed4;
}
section.flow .afterflow_box ul li:nth-child(2) .afterflow_rightbox p.step_number {
    background-color: #5896e9;
}
section.flow .afterflow_box ul li:nth-child(3) .afterflow_rightbox p.step_number {
    background-color: #7fb1f3;
}
section.flow .afterflow_box ul li:nth-child(4) .afterflow_rightbox p.step_number {
    background-color: #a7cdff;
}
section.flow .afterflow_box ul li:nth-child(5) .afterflow_rightbox p.step_number {
    background-color: #c8e0ff;
}
section.flow p.secTtl_sub {
    font-weight: normal;
    font-size: 18px;
    margin: 1.5% 0 0 0;
}
@media screen and (max-width: 1090px) {
section.flow .afterflow_box ul {
    padding: 5%;
}
.stepFlow {
    padding: 5%;
}
}
@media screen and (max-width: 767px){
section.flow .afterflow_box ul li .afterflow_rightbox h3{
    font-size: 2.0rem;
}
section.flow .afterflow_box ul li .afterflow_rightbox p {
    line-height: 1.5em;
}
section.flow .afterflow_box ul li .afterflow_rightbox p.step_number {
    font-size: 1.3rem;
}
section.flow h3 {
    font-size: 2.5rem;
    background-color: #ff5b3b;
    padding: 1.5% 3%;
}
}
@media screen and (max-width: 640px){
section.flow .afterflow_box h3 {
    font-size: 1.5rem;
    padding: 2.5% 5%;
}
section.flow .afterflow_box.box_blue h3{
    font-size: 1.5rem;
    padding: 2.5% 5%;
}
section.flow .afterflow_box ul li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 0 7% 0;
}
section.flow .afterflow_box ul li .afterflow_leftbox {
    display:none;
}
section.flow .afterflow_box ul li .afterflow_leftbox img{
    display:none;
}
section.flow .afterflow_box ul li .afterflow_rightbox h4 {
    font-size: 24px;
    margin: 3% 0 2%;
}
section.flow .afterflow_box ul li .afterflow_rightbox p {
    font-size:15px;
}
}



/*私たちができる4つのこと*/
section.ourservice {
    background-color: #fffae3;
    background-size: cover;
    /*border-top: 26px solid #ffffff;*/
    padding: 3.5% 0 0 0;
}
section.ourservice h2 {
    text-align: center;
    font-size: 40px;
}
section.ourservice h2 span {
    color: #ff5c37;
    font-size: 50px;
}
section.ourservice .ourservice_box {
    overflow: hidden;
    padding: 3% 0 0;
}
section.ourservice ul{
	
}
section.ourservice ul li {
    float: left;
    width: 48%;
    margin: 0 3% 3% 0;
    background-color: #fff;
    padding: 2%;
    height:172px;
    border-top: 7px solid #ff6f70;
    box-shadow: 2px 2px 5px #f1e9bf;
	position:relative;
}

section.ourservice ul li .image_box{
    background-color: #fff;
}
section.ourservice ul li .image_box img {
    position: absolute;
    right: 3%;
    top:8%;
}
section.ourservice p.secTtl_balloon {
    text-align: center;
	margin:0;
    background-color: #ff7257;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
section.ourservice p.secTtl_balloon::before {
    border-top-color: #ff7257;
}
section.ourservice ul li:nth-child(2) {
    border-top: 7px solid #6fb6ff;
	margin:0 0 3% 0;
}
section.ourservice ul li:nth-child(3) {
    border-top: 7px solid #73cea6;
    margin:0 3% 0 0;
}
section.ourservice ul li:nth-child(4) {
    border-top: 7px solid #ffaf6f;
	margin:0;
}
section.ourservice ul li h3 {
    margin: 0 0 0 7%;
    font-size: 23px;
    line-height: 1.3em;
}
section.ourservice ul li h3 span.kyocyo{
    color: #ff674a;
}
section.ourservice ul li h3 span.number{
    background-color: #ff674a;
    color: #fff;
    border-radius: 50%;
    padding: 0.6% 1%;
    margin: 0 1% 0 -7%;
    font-size: 20px;
}
section.ourservice ul li:nth-child(2) h3 span.kyocyo{
    color: #6fb6ff;
}
section.ourservice ul li:nth-child(2) h3 span.number{
    background-color: #6fb6ff;
}
section.ourservice ul li:nth-child(3) h3 span.kyocyo{
    color: #73cea6;
}
section.ourservice ul li:nth-child(3) h3 span.number{
    background-color: #73cea6;
}
section.ourservice ul li:nth-child(4) h3 span.kyocyo{
    color: #ffaf6f;
}
section.ourservice ul li:nth-child(4) h3 span.number{
    background-color: #ffaf6f;
}
section.ourservice ul li p {
    font-size: 16px;
    line-height: 1.6em;
    margin: 2% 0 0 0;
}
/*特徴*/
section.ourservice .feature_box {
    background-color: #ffffff;
    margin: 8% 0 2%;
    padding: 4% 4% 3%;
    border: 4px solid #ff8972;
    position: relative;
    border-radius: 20px;
}
section.ourservice .feature_box h4 {
    color: #fff;
    text-align: center;
    font-size: 27px;
    padding: 0 0 3% 0;
    position: absolute;
    background-color: #ff7257;
    padding: 0.5% 2%;
    border-radius: 40px;
    top: -2%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
section.ourservice .feature_box h4 span {
    color: #ffff8e;
    font-size: 30px;
}
.cardBox02 .cardItem {
    background-color: #ffffff;
    padding: 2% 4%;
    width: calc(50% - 17px);
}
.cardBox02 .cardItem_txt {
    line-height: 1.6em;
    font-size: 16px;
}
.cardBox .cardItem {
	background:transparent;
    border-radius: 0;
    padding: 0 4% 0 0;
    box-shadow: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-right: 1px dashed #ff8972;
}
.cardBox .cardItem:nth-child(2){
    padding: 0;
    border-right: none;
}
.cardBox02 .cardItem_img, .cardBox02 .cardItem_btn {
    margin: 2% auto 0;
    width: 80%;
    text-align: right;
}
.cardBox02 .cardItem_img img {
    width: 100%;
}
.cardBox02 .cardItem_btn img {
    width: 100%;
}
.cardBox02 .cardItem_ttl {
    border-bottom: none;
    margin-bottom:0;
    padding-bottom: 2%;
}
.cardBox02 .cardItem_ttl .cardItem_ttlTxt {
    font-size: 25px;
    letter-spacing: 0.05em;
}
section.business .cardBox .cardItem {
    border-right: none;
    padding: 0 1.5%;
}
.business .secInner .contentBox_white {
    padding: 1% 4%;
}
section.business .secTtl_txt {
    font-size: 40px;
    letter-spacing: 0;
    line-height: 1em;
    text-align: center;
    color: #fff;
    margin: 0 0 3% 0;
}
section.business .fc_org {
    color: #fffe87;
    font-size: 45px;
}
.flow .secInner::before {
    background: url(../images/img_07.png) no-repeat center center / contain;
    content: "";
    display: block;
    width: 218px;
    height: 254px;
    position: absolute;
    top: -72px;
    right: 0;
    image-rendering: -webkit-optimize-contrast;
}
.mv .mv_survice {
    width: 41%;
    margin: 0 0 0 0;
    position: absolute;
    bottom: -4%;
}
.mv .mv_survice ul {
    display: flex;
    flex-direction: row;
}
.mv .mv_survice ul li {
    margin: 0 2.5% 0 0;
    filter: drop-shadow(2px 3px 2px #9998);
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.mv .mv_survice ul li:hover {
    transform: translateY(-10px);
    cursor: pointer;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.mvTxt_sub span {
    color: #ff6a4d;
    background: linear-gradient(transparent 60%, #fff788 40%);
}
.mvTxt_1sub {
    background-color: #ff6a4d;
    color: #fff;
    display: inline-block;
    padding: 0.3% 1% 0.3% 2%;
    margin: 0 0 0.5% 0;
    border-radius: 60px;
    letter-spacing: 0.05em;
    font-size: 2.5rem;
}
.mvTxt_1sub span {
    color: #fff348;
}
@media screen and (max-width: 1582px) {
.mv .mv_survice {
    width: 48%;
    bottom: -10%;
}
.mvTxt_main {
    font-size: 7.5rem;
}
.mvTxt_1sub {
    font-size: 1.7rem;
    margin: 0 0 3% 0;
}
.mvTxt_sub {
    font-size: 2.3rem;
}
.mv .mv_survice {
    bottom: -8%;
}
}
@media screen and (max-width: 1200px){
section.ourservice ul li .image_box {
    display:none;
}
section.ourservice ul li {
    height: 205px;
}
}
@media screen and (max-width: 767px){
section.ourservice ul li {
    float: none;
    width: 100%;
    margin: 0 0 4% 0;
    height: auto;
}
section.ourservice ul li:nth-child(3) {
    border-top: 7px solid #73cea6;
    margin: 0 0 4% 0;
}
section.ourservice ul li:nth-child(2) {
    margin: 0 0 4% 0;
}
section.ourservice ul li h3 {
    margin: 0 0 0 7%;
    font-size: 18px;
}
section.ourservice ul li h3 span.number {
    font-size: 16px;
}
section.ourservice .cardBox02 .cardItem {
    width: 100%;
    padding: 0 0 5% 0;
    border: none;
    border-bottom: 1px dashed #ff8972;
}
section.ourservice .cardBox02 .cardItem:nth-child(2) {
    border-bottom: none;
	padding:0;
}
section.ourservice .feature_box h4 {
    font-size: 20px;
    width: 83%;
}
section.ourservice .feature_box h4 span {
    font-size: 25px;
}
section.ourservice .feature_box {
    padding: 8% 4% 3%;
}
section.ourservice .feature_box {
    background-color: #ffffff;
    margin: 14% 0 2%;
}
.cardBox02 .cardItem_img img {
    width: 100%;
}
    .cardBox02 .cardItem_img, .cardBox02 .cardItem_btn {
        text-align: center;
        width: 70%;
    }
section.ourservice h2 {
    font-size: 22px;
}
section.ourservice h2 span {
    font-size: 30px;
}
section.business .secTtl_txt {
    font-size: 22px;
}
section.business .fc_org {
    font-size: 30px;
}
section.ourservice {
    border-top: none;
    padding: 5% 0 0 0;
}
.flow .secInner::before {
    width: 95px;
    height: 61px;
    top: -30px;
}
.mv .mv_survice {
    width: 90%;
    bottom: 5%;
}
.mvTxt_sub {
    font-size: 15px;
    text-align: center;
    text-shadow: 0px 0px 4px rgb(255 255 255);
}
.mvTxt_main {
    line-height: 1.4em;
    /*font-size: 6.5rem;*/
    font-size: 13.5vw;
    text-shadow: 0px 0px 10px rgb(255 255 255);
}
.mv {
    padding: 30% 5% 41%;
}
}
@media screen and (max-width: 460px){
section.ourservice ul li {
    height: auto;
}
}



/*サービスの箇所*/
@media screen and (max-width: 767px){
.cardBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -ms-flex-wrap: wrap;
    flex-direction: column;
}
.cardBox01 .cardItem {
    width: 100%;
}
.cardBox01 .cardItem_ttl {
    font-size: 20px;
}
.cardBox01 .cardItem_txt {
    font-size: 15px;
}
.cardBox01 .cardItem_txt span {
    line-height: 1.3em;
}
}
/*4つのこと*/
@media screen and (max-width: 767px){
section.ourservice ul li p {
    font-size: 15px;
}
.cardBox02 .cardItem_txt {
    line-height: 1.5em;
    font-size: 15px;
}
.cardBox02 .cardItem_ttl .cardItem_ttlTxt {
    font-size: 20px;
}
}
/*フロー*/
@media screen and (max-width: 767px){
.stepFlowItem .stepFlowItem_txt {
    font-size: 18px;
}
.stepFlowItem .stepFlowItem_num {
    font-size: 13px;
    margin-bottom: 3%;
    padding: 0;
    text-align: left;
}
.stepFlowItem:not(:last-child) {
    margin-bottom: 13px;
}
.stepFlowItem:not(:last-child) .stepFlowItem_txtBox::after {
    border: 9px solid transparent;
    content: "";
    bottom: -29px;
}
.stepFlow {
    padding: 3% 5% 4%;
}
section.flow .afterflow_box ul li .afterflow_rightbox h4 {
    font-size: 18px;
}
section.flow .afterflow_box ul li .afterflow_rightbox p {
    font-size: 15px;
    line-height: 1.3em;
}
section.flow .afterflow_box ul li .afterflow_rightbox p.step_number {
    font-size: 13px;
}
section.flow .afterflow_box ul li {
    margin: 0 0 8% 0;
}
}
/*市場拡大中*/
@media screen and (max-width: 767px){
.reasonBox .reasonBoxItem_txt {
    font-size: 15px;
    line-height: 1.5em;
}
.market .secTtl_txt_cap {
    display: none;
}
}
/*よくある質問*/
@media screen and (max-width: 767px){
.secTtl_balloon {
    margin-bottom: 6%;
}
}

/*フロー図修正 20220621*/
section.flow .afterflow_box ul {
    padding: 5% 10% 5%;
}
section.flow .afterflow_box ul li .afterflow_leftbox {
    margin: 0 3% 0 0;
    width: 33%;
}
section.flow .afterflow_box ul li .afterflow_rightbox {
    text-align: left;
    width: 70%;
}
section.flow .afterflow_box ul li .afterflow_rightbox p span {
    color: #ff6a4d;
    padding: 0 0.1% 0 0.4%;
}
section.flow .afterflow_box ul li:nth-child(5) {
    border-left: 15px solid #a7cdff;
}
section.flow .afterflow_box ul li:nth-child(5)::before {
    border-top-color: #a7cdff;
}
section.flow .afterflow_box ul li:nth-child(6) {
    border-left: 15px solid #c8e0ff;
    margin: 0;
}
section.flow .afterflow_box ul li:nth-child(6) .afterflow_rightbox p.step_number {
    background-color: #c8e0ff;
}
@media screen and (max-width: 1200px){
.market .secTtl_txt_cap {
    display: inline-block;
    text-align: left;
    position: absolute;
    left: 3.5em;
    top: 0.5em;
}
.cardBox02 .cardItem_img img {
    width: 70%;
}
}
@media screen and (max-width: 767px){
section.flow .afterflow_box ul li .afterflow_leftbox {
    margin: 0 3% 0 0;
    width: auto;
}
section.flow .afterflow_box ul li .afterflow_rightbox {
    width: 100%;
}
section.flow .afterflow_box ul li {
    padding: 0 0 0 5%;
}
}
/*404ページ*/
.inner-404 {
    padding: 10% 0;
    background-color: #f5f5f5;
}
.inner-404 .text {
    padding: 2%;
    background-color: #fff;
    width: 80%;
    margin: 0 auto;
}
.inner-404 .text h3{
    font-size: 22px;
    padding: 0 0 2% 0;
    font-weight: bold;
}
.inner-404 .text p{
    font-size: 16px;
}

/*事例*/
.casestudy_box2 {
    background-color: #fff9e7;
    padding: 3% 2% 2%;
    width: 100%;
    background-image: repeating-linear-gradient(-45deg,#fff2d6, #fff2d6 7px,transparent 0, transparent 20px);
    margin: 5% auto 0;
}
.casestudy_box2 h2 {
    color: #ff970c;
    text-align: center;
    font-size: 25px;
}
.casestudy_box2 ul.casestudy_smallbox2 {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.casestudy_box2 ul.casestudy_smallbox2 li {
    background-color: #fff;
    padding: 2%;
    margin: 2% 1% 1%;
    width: 60%;
    filter: drop-shadow(0px 0px 6px #dacca4);
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.casestudy_box2 ul.casestudy_smallbox2 li:hover{
    transform: translateY(-10px);
    cursor: pointer;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.casestudy_box2 ul.casestudy_smallbox2 li p {
    margin: 3% 0 0 0;
    font-size:15px;
}
.casestudy_box2 ul.casestudy_smallbox2 li p.category_bpo {
    background-color: #f3a42b;
    color: #fff;
    font-weight: normal;
    padding: 0.5% 2%;
    font-size: 15px;
    display: inline;
    border-radius: 40px;
}
.casestudy_box2 ul.casestudy_smallbox2 li p.bpo_text {
    font-size: 15px;
    text-align: left;
    margin: 1% 0 1.5%;
    line-height: 1.7em;
    letter-spacing: 0.05em;
}
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 0 auto;
}
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox p.bpo_text_title {
    font-size: 21px;
    letter-spacing: 0.05em;
}
section.sec_6 {
    background-color: #e6f8f3;
	background-image:none;
}
section.sec_8 .business_content {
    margin:3% 0 0 0;
}
@media screen and (max-width: 1200px){
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox {
    display: flex;
    flex-direction: column;
    margin: 3% 0;
    width: 100%;
}
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox p.bpo_text_title {
    line-height: 1em;
}
}
@media screen and (max-width: 850px) {
.casestudy_box2 ul.casestudy_smallbox2 li {
    margin: 0;
    width: 100%;
    padding: 4% 4% 3%
}
.casestudy_box2 ul.casestudy_smallbox2 {
    padding: 5%;
}
}
@media screen and (max-width: 640px) {
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox {
    display: flex;
    flex-direction: column;
	margin:3% 0;
    width: 100%;
}
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox p {
    margin: 0;
}
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox p.bpo_text_title {
    font-size: 22px;
}
}
@media screen and (max-width: 500px){
.casestudy_box2 ul.casestudy_smallbox2 li .bpo_text_titlebox p.bpo_text_title {
    font-size: 18px;
    line-height: 1.3em;
}
}
/*---------年末年始休業文------------*/
section.overview {
    background: #fffae3;
}
section.overview .holiday_box {
    background-color: #fff;
    border: 2px solid #ff5b3b;
    padding: 5% 2%;
    margin: 3% 0 0 0;
}
section.overview p.holiday_title {
    font-size: 27px;
    color: #ff5b3b;
    margin: 0;
    line-height: 1em;
    padding: 0 0 2% 0;
    text-align: center;
}
section.overview p.holiday_text {
    margin: 0;
    line-height: 2em;
    font-size: 16px;
    text-align: center;
}
section.overview p.holiday_text.holiday_bold {
    font-weight: bold;
    color: #ff5b3b;
    font-size: 20px;
}
@media screen and (max-width: 640px){
section.overview p.holiday_text.holiday_bold {
    font-size: 18px;
}
}

