@charset "UTF-8";
/* メインフォント */
/* Lato */
/* Alex Brush */
/* Verdana */
/* Montserrat */
.slick-slider * {
  outline: 0;
}

.slick-dots {
  display: block;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
  margin: 24px 0 0;
  font-size: 0px;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 4px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: 0;
  background: transparent;
}

.slick-dots li button:before {
  font-size: 6px;
  line-height: 6px;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  border-radius: 6px;
  text-align: center;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-list {
  overflow: hidden;
}

.slick-track {
  overflow: hidden;
}

.slick-slide {
  float: left;
}

.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  z-index: 100;
  display: block;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: 0;
  background: transparent;
}

.slick-prev:hover, .slick-prev:focus {
  color: transparent;
  outline: 0;
}

.slick-next:hover, .slick-next:focus {
  color: transparent;
  outline: 0;
}

.slick-prev:hover:before, .slick-prev:focus:before {
  opacity: 1;
}

.slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before, .slick-next:before {
  content: "";
  line-height: 1;
  display: block;
  color: white;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*
  CUSTOM
———————————————–*/
/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp, .pswp__bg, .pswp__scroll-wrap {
  height: 100%;
  width: 100%;
}

.pswp, .pswp__item, .pswp__scroll-wrap {
  overflow: hidden;
  top: 0;
  position: absolute;
  left: 0;
}

.pswp, .pswp__bg, .pswp__container, .pswp__img--placeholder, .pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp, .pswp__bg, .pswp__error-msg, .pswp__img, .pswp__item, .pswp__scroll-wrap, .pswp__zoom-wrap {
  position: absolute;
}

.pswp {
  display: none;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  outline: 0;
}

.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: 0.001;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: -webkit-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.pswp__bg {
  left: 0;
  top: 0;
  background: #000;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  will-change: opacity;
}

.pswp__container, .pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.pswp__container, .pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  width: 100%;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1), -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none;
}

.pswp__item {
  right: 0;
  bottom: 0;
}

.pswp__img {
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

.pswp__error-msg {
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC;
}

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline;
}

/*=============================================

	セクション

==============================================*/
/*=============================================

	タイトル

==============================================*/
/*=============================================

	ボタン

==============================================*/
/*=============================================

	矢印

==============================================*/
/*=============================================

	アイコン

==============================================*/
/*=============================================

	ラベル

==============================================*/
/*=============================================

	記事リスト項目
	サービス

==============================================*/
/*=============================================

	関連プロジェクト導入事例

==============================================*/
/*=============================================

	資料ダウンロード

==============================================*/
.c-downloadContents_button {
  max-width: 345px;
  width: 100%;
  border-radius: 28px;
  margin: 40px auto 0;
  background-color: #FFFFFF;
}

@media print, screen and (max-width: 767px) {
  .download .c-downloadContents_button {
    margin: 0 auto;
  }
}
.c-downloadContents_buttonLink {
  width: 100%;
  font-size: 16px;
  line-height: 1.8;
  padding: 16px 30px;
}

.c-downloadContents_buttonLink:hover .c-downloadContents_buttonArrow {
  right: 20px;
}

.c-downloadContents_buttonText {
  color: #002855;
}

.c-downloadContents_buttonArrow {
  right: 30px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/*=============================================

	パンくず

==============================================*/
/*=============================================

	ファーストビュー	

==============================================*/
/*=============================================

	メッセージエリア パーツ

==============================================*/
/*=============================================

	ソリューションエリア パーツ

==============================================*/
/*=============================================

	サービス内容エリア パーツ

==============================================*/
/*=============================================

	導入事例エリア

==============================================*/
/*=============================================

	記事リスト項目
	サービス

==============================================*/
/*=============================================

	他のサービスを探すエリア

==============================================*/
/*=============================================

	記事リスト項目
	資料ダウンロード

==============================================*/
/*=============================================

	ボタンパーツ

==============================================*/
/*=============================================

	ボタンパーツ

==============================================*/
.c-downloadContentsArticle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -15px 0;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0;
  }
}
.c-downloadContentsArticle_node {
  width: 33.3%;
  height: auto;
  margin: 0;
  padding: 0 15px 22px;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_node {
    padding: 0 0 20px;
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .c-downloadContentsArticle_node {
    width: 50%;
  }
}
.c-downloadContentsArticle_link {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  border: 1px solid #D5D9E0;
  margin: 0;
  padding: 20px 20px 10px 20px;
}

.c-downloadContentsArticle_link img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.c-downloadContentsArticle_link:hover .c-downloadContentsArticle_image img {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}

.c-downloadContentsArticle_link:hover .c-arrowBorderNavy {
  right: 10px;
  background-color: #002855;
}

.c-downloadContentsArticle_link:hover .c-arrowBorderOrange {
  right: 10px;
  background-color: #F18105;
}

.c-downloadContentsArticle_link:hover .c-downloadPostNodeArrow_svg {
  fill: #fff;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_link {
    max-width: none;
    padding: 15px 15px 5px 15px;
  }
}
.c-downloadContentsArticle_image {
  display: inline-block;
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  padding: 0;
  aspect-ratio: 345/191;
  width: 100%;
}

.c-downloadContentsArticle_image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.c-downloadContentsArticle_imageNew {
  position: absolute;
  top: 0;
  left: 0;
  width: 54px;
  text-align: center;
  font-size: 12px;
  line-height: 1.8;
  font-weight: 400;
  color: #002855;
  background-color: #FCE37C;
  margin: 0;
  padding: 2px 0;
}

.c-downloadContentsArticle_textArea {
  margin: 14px auto 0;
  padding: 0;
}

.c-downloadContentsArticle_category {
  max-width: 104px;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
  background-color: #FFFFFF;
  border-radius: 4px;
  margin: 0;
  padding: 0 8px;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_category {
    font-size: 12px;
  }
}
.is-tab_service {
  border: 1px solid #4693D6;
  color: #4693D6;
}

.is-tab_case {
  border: 1px solid #45B5A3;
  color: #45B5A3;
}

.is-tab_tips {
  border: 1px solid #443FBE;
  color: #443FBE;
}

.c-downloadContentsArticle_textNode {
  font-size: 16px;
  line-height: 1.8;
  font-weight: bold;
  color: #000000;
  margin: 10px auto 14px;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_textNode {
    margin: 10px auto;
  }
}
.c-downloadContentsArticle_categoryArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 290px;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_categoryArea {
    max-width: 275px;
  }
}
.c-downloadContentsArticle_categoryList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-downloadContentsArticle_categoryListNode {
  text-align: center;
  background-color: #FAFAFA;
  border: 1px solid #D5D9E0;
  border-radius: 6px;
  margin: 0 10px 10px 0;
  padding: 4px 20px;
}

.c-downloadContentsArticle_categoryListNode::nth-child(2n) {
  margin: 0 0 10px 0;
}

.c-downloadContentsArticle_categoryListNode:last-child {
  margin-right: 0;
}

.c-downloadContentsArticle_categoryName {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
  color: #53565A;
  margin: 0;
  padding: 0;
}

.c-downloadPostNodeArrow {
  position: absolute;
  bottom: 38px;
  right: 20px;
  max-width: 30px;
  width: 100%;
  margin: 0;
  padding: 0;
  -webkit-transition: background 0.2s ease, right 0.2s ease;
  transition: background 0.2s ease, right 0.2s ease;
}

@media print, screen and (max-width: 767px) {
  .c-downloadPostNodeArrow {
    right: 15px;
    bottom: 33px;
  }
}
.c-downloadPostNodeArrow_svg {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: fill 0.2s ease;
  transition: fill 0.2s ease;
}

@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle_node {
    padding-bottom: 20px;
  }
}
/* lato-700 - latin */
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/lato-v20-latin-700.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/lato-v20-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v20-latin-700.woff2") format("woff2"), url("../fonts/lato-v20-latin-700.woff") format("woff"), url("../fonts/lato-v20-latin-700.ttf") format("truetype"), url("../fonts/lato-v20-latin-700.svg#Lato") format("svg");
  /* Legacy iOS */
}
/* montserrat-regular - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/montserrat-v18-latin-regular.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/montserrat-v18-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v18-latin-regular.woff2") format("woff2"), url("../fonts/montserrat-v18-latin-regular.woff") format("woff"), url("../fonts/montserrat-v18-latin-regular.ttf") format("truetype"), url("../fonts/montserrat-v18-latin-regular.svg#Montserrat") format("svg");
  /* Legacy iOS */
}
/* montserrat-700 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/montserrat-v18-latin-700.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/montserrat-v18-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v18-latin-700.woff2") format("woff2"), url("../fonts/montserrat-v18-latin-700.woff") format("woff"), url("../fonts/montserrat-v18-latin-700.ttf") format("truetype"), url("../fonts/montserrat-v18-latin-700.svg#Montserrat") format("svg");
  /* Legacy iOS */
}
/* メインフォント */
/* サブフォント */
/* Zen Kaku */
/* 文字色 */
/* 背景色 */
/* リンク色 */
/* ==============================================
  セクション
=============================================== */
section {
  position: relative;
  width: 100%;
  margin: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (min-width: 1025px) {
  section {
    margin: 0 auto;
  }
}
@media print, screen and (max-width: 767px) {
  section {
    padding: 30px 0;
  }
}
/* ==============================================
  インナー
=============================================== */
.inner {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .inner {
    padding: 0 15px;
  }
}
@media print, screen and (min-width: 768px) {
  .inner {
    width: 92vw;
    padding: 0;
  }
}
/* ==============================================
  文字
=============================================== */
h1 {
  display: block;
  color: #fff;
  font-size: 35px;
  font-weight: bold;
  line-height: 52px;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  h1 {
    font-size: 20px;
    text-align: center;
    line-height: 27px;
  }
}
.section_title {
  position: relative;
  color: #53565A;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  vertical-align: top;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .section_title {
    font-size: 1.8rem;
    margin: 0 auto 20px;
    padding: 20px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .section_title {
    font-size: 3rem;
    margin: 0 auto 30px;
    padding: 47px 0;
  }
}
.section_title span {
  position: relative;
  z-index: 2;
}

.section_title::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 138px;
  height: 138px;
  background-image: url(../images/pmo/title_circle-orange.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  z-index: 1;
}

@media print, screen and (max-width: 767px) {
  .section_title::after {
    width: 103px;
    height: 103px;
  }
}
h3 {
  color: #F18A47;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  h3 {
    font-size: 20px;
    line-height: 1.6;
  }
}
p {
  color: #595959;
  font-size: 18px;
  line-height: 28.8px;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  p {
    font-size: 14px;
  }
}
.text_orange {
  color: #F18A47;
  font-weight: 700;
}

.section_text {
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  color: #53565A;
  margin: 30px auto;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .section_text {
    font-size: 14px;
    margin: 20px auto;
  }
}
/* ==============================================
  ボタン
=============================================== */
.inquiry-button a {
  position: relative;
  display: block;
  max-width: 162px;
  width: 100%;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  border-radius: 0 0 30px 30px;
  background-color: #F18A47;
  border: 2px solid #fff;
  margin: 0;
  padding: 61px 33px 25px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .inquiry-button a {
    border-radius: 0;
    max-width: none;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .inquiry-button a {
    border-radius: 0;
    max-width: none;
  }
}
.inquiry-button a img {
  position: absolute;
  top: 50%;
  left: 30px;
  width: 56px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media print, screen and (min-width: 1025px) {
  .inquiry-button a img {
    left: 2vw;
    width: 30px;
  }
}
@media print, screen and (max-width: 767px) {
  .inquiry-button a img {
    width: auto;
  }
}
.download-button a {
  position: relative;
  display: block;
  width: 300px;
  height: 80px;
  color: #F18A47;
  font-size: 16px;
  font-weight: bold;
  line-height: 80px;
  background-color: #fff;
  margin: 0;
  padding: 0 0 0 116px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (min-width: 1025px) {
  .download-button a {
    width: 25vw;
    padding: 0 0 0 7.5vw;
  }
}
.download-button a img {
  position: absolute;
  top: 50%;
  left: 30px;
  width: 56px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media print, screen and (min-width: 1025px) {
  .download-button a img {
    left: 2vw;
    width: 30px;
  }
}
@media print, screen and (max-width: 767px) {
  .download-button a img {
    width: auto;
  }
}
.header-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.header_button_list {
  position: relative;
}

.header_button_node {
  position: relative;
  display: block;
  text-align: center;
  width: 162px;
  height: 90px;
  padding: 54px 0 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  z-index: 2;
}

.header_button_node:hover {
  opacity: 0.6;
}

.header_button_bg {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 0px 0px 30px 30px;
  background-color: #fff;
  z-index: 1;
}

.header_button_form {
  position: relative;
  background-color: #F18A47;
}

.header_button_form:before {
  content: "";
  position: absolute;
  top: 22px;
  right: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  background-image: url(../images/pmo/mail_icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 32px;
  height: 26px;
}

.header_button_download {
  position: relative;
  background-color: #fff;
}

.header_button_download:before {
  content: "";
  position: absolute;
  top: 21px;
  right: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  background-image: url(../images/pmo/download_icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 22px;
  height: 25px;
}

.header-button_text {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
}

.header-button_downloadText {
  color: #F18A47;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
}

.contact_buttonWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 6px;
}

.contact_button {
  margin: 0 20px 0 0;
}

.contact_button:last-child {
  margin: 0;
}

@media print, screen and (max-width: 767px) {
  .contact_button {
    width: 100%;
    margin: 0 0 10px;
  }
}
.contact_button_contact {
  position: relative;
  background-color: #F18A47;
  border: 2px solid #fff;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.contact_button_contact:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 69px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/pmo/mail_icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 27px;
  height: 24px;
}

@media print, screen and (max-width: 374px) {
  .contact_button_contact:after {
    right: 54px;
  }
}
.contact_button_node {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  color: #fff;
  margin: 0 auto;
  padding: 0 42px 0 0;
}

@media print, screen and (max-width: 374px) {
  .contact_button_node {
    font-size: 14px;
  }
}
.download_button_node {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  color: #F18A47;
  margin: 0 auto;
  padding: 0 42px 0 0;
}

@media print, screen and (max-width: 374px) {
  .download_button_node {
    font-size: 14px;
  }
}
.contact_button_download {
  position: relative;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  border: 2px solid #F18A47;
}

.contact_button_download:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 54px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/pmo/download_icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 16.5px;
  height: 19px;
}

.contact_button_fvLink {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 276px;
  border-radius: 35px;
  text-align: center;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  padding: 17px 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media print, screen and (max-width: 767px) {
  .contact_button_fvLink {
    width: 280px;
    padding: 10px 0;
    margin: 0 auto;
  }
}
.contact_button_fvLink:hover {
  opacity: 0.6;
}

.contact_button_link {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 300px;
  border-radius: 35px;
  text-align: center;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  padding: 21px 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media print, screen and (max-width: 767px) {
  .contact_button_link {
    width: 280px;
    padding: 10px 0;
    margin: 0 auto;
  }
}
@media print, screen and (max-width: 374px) {
  .contact_button_link {
    width: 245px;
    padding: 10px 0;
    margin: 0 auto;
  }
}
.contact_button_link:hover {
  opacity: 0.6;
}

/* ==============================================
  追従バナー
=============================================== */
.fixed-banner {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 50px;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  z-index: 2000;
}

.fixed-banner .button-contents {
  position: relative;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.fixed-banner .button-contents .inquiry-button {
  width: 50%;
  height: 50px;
}

.fixed-banner .button-contents .inquiry-button a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 50px;
  font-size: 1.6rem;
  padding: 0 27px 0 15px;
}

@media print, screen and (max-width: 374px) {
  .fixed-banner .button-contents .inquiry-button a {
    font-size: 1.4rem;
  }
}
.fixed-banner .button-contents .inquiry-button a img {
  left: auto;
  right: 27px;
  width: 27px;
  height: 24px;
}

@media print, screen and (max-width: 374px) {
  .fixed-banner .button-contents .inquiry-button a img {
    width: 24px;
    height: 21px;
  }
}
.fixed-banner .button-contents .download-button {
  width: 50%;
  height: 100%;
}

.fixed-banner .button-contents .download-button a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 50px;
  font-size: 1.6rem;
  padding: 0 24px 0 15px;
}

@media print, screen and (max-width: 374px) {
  .fixed-banner .button-contents .download-button a {
    font-size: 1.4rem;
  }
}
.fixed-banner .button-contents .download-button a img {
  left: auto;
  right: 15px;
  width: 17px;
  height: 19px;
}

@media print, screen and (max-width: 374px) {
  .fixed-banner .button-contents .download-button a img {
    width: 16px;
    height: 16px;
  }
}
@media print, screen and (max-width: 767px) {
  .wrapper {
    margin-top: none;
  }
}
/* ==============================================
  ヘッダー
=============================================== */
header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 90px;
  background: #fff;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1200;
}

@media print, screen and (max-width: 767px) {
  header {
    height: 60px;
  }
}
.header-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (min-width: 1025px) {
  .header-inner {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-inner {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
}
@media print, screen and (max-width: 767px) {
  .header-inner {
    padding: 0 8px;
  }
}
.header-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.header-logo {
  max-width: 379.5px;
  width: 100%;
  margin: 0 0 0 1vw;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .header-logo {
    max-width: 322px;
    margin: 0;
  }
}
.header-logo img {
  width: 100%;
  vertical-align: top;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.header-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (min-width: 768px) and (max-width: 1077px) {
  .header-nav {
    display: none;
  }
}
@media print, screen and (max-width: 767px) {
  .header-nav {
    display: none;
  }
}
.header_nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  padding: 0;
}

.header_navList_node {
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  color: #000000;
  margin: 0 20px 0 0;
  padding: 0;
}

.header_navList_link {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.header_navList_link:hover {
  opacity: 0.6;
}

.button_barger {
  position: relative;
  width: 18px;
  height: 14px;
  cursor: pointer;
}

.button_barger_border {
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  background: #333333;
  border-radius: 1px;
  -webkit-transition: top 0.5s ease, bottom 0.5s ease, -webkit-transform 0.6s ease-in-out;
  transition: top 0.5s ease, bottom 0.5s ease, -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, top 0.5s ease, bottom 0.5s ease;
  transition: transform 0.6s ease-in-out, top 0.5s ease, bottom 0.5s ease, -webkit-transform 0.6s ease-in-out;
}

.button_barger_top {
  position: absolute;
  top: 0;
}

.button_barger_middle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.button_barger_bottom {
  position: absolute;
  bottom: 0;
}

.header_nav_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: fixed;
  top: 0;
  right: 0;
  overflow: auto;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  z-index: 1100;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 1;
}

.header_nav_sp:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.headerNavSpInner {
  position: relative;
  width: 61%;
  height: 100%;
  background-color: #fff;
  z-index: 2;
  margin: 0 0 0 auto;
}

.nav_list_sp {
  position: relative;
  text-align: center;
  top: 30%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: 0 15px;
}

.is-open .js-button_barger > .button_barger_top {
  top: 6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.is-open .js-button_barger > .button_barger_middle {
  width: 0;
}

.is-open .js-button_barger > .button_barger_bottom {
  top: 6px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.is-open .js-header_nav_sp {
  z-index: 1050;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  visibility: visible;
}

.nav_list_nodeSp {
  position: relative;
  text-align: left;
  font-size: 18px;
  line-height: 1.6;
  font-weight: 400;
  font-family: "Zen Kaku Gothic Antique", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  color: #000000;
  margin: 0 0 30px;
}

.nav_list_nodeSp a {
  position: relative;
  display: block;
  padding: 0 0 0 25px;
}

.nav_list_nodeSp a::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/pmo/drawerMenu_icon.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 15px;
  height: 11px;
  margin: 0;
  padding: 0;
}

/* ==============================================
  ファーストビューエリア
=============================================== */
.firstView {
  position: relative;
  background-image: url(../images/pmo/fv_orangeBg_pc.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
  overflow: hidden;
}

@media print, screen and (max-width: 767px) {
  .firstView {
    background-image: url(../images/pmo/fv_orangeBg_sp.png);
    padding: 40px 15px 50px;
    margin: -30px 0 0;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView {
    padding: 90px 0 236px;
  }
}
@media print, screen and (max-width: 767px) {
  .firstView_textWrap {
    width: 100%;
  }
}
.firstView_wrap {
  position: relative;
  z-index: 2;
}

@media print, screen and (max-width: 767px) {
  .firstView_wrap {
    padding: 0;
  }
}
@media print, screen and (max-width: 767px) {
  .firstView_title {
    margin-bottom: 13px;
    text-align: left !important;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_title {
    margin-bottom: 23px;
  }
}
.firstView_title_image {
  display: inline-block;
}

@media print, screen and (max-width: 767px) {
  .firstView_title_image {
    width: 80.5797101449%;
    margin-bottom: 5px;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_title_image {
    max-width: 508px;
    width: 100%;
    margin-bottom: 20px;
  }
}
.firstView_title_image img {
  width: 100%;
}

.firstView_title_lead {
  display: inline-block;
  width: 100%;
  color: #fff;
  line-height: 1.2;
  font-weight: bold;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .firstView_title_lead {
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_title_lead {
    font-size: 4.8rem;
  }
}
.firstView_text {
  color: #fff;
  font-weight: bold;
}

@media print, screen and (max-width: 767px) {
  .firstView_text {
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.8;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_text {
    font-size: 3.5rem;
    line-height: 1.7;
  }
}
.firstView_text_orange {
  color: #F18A47;
}

.firstView_serviceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 499px;
}

@media print, screen and (max-width: 767px) {
  .firstView_serviceList {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_serviceList {
    margin-top: 34px;
  }
}
.firstView_serviceList_node {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  height: 44px;
  font-weight: 700;
  color: #F18A47;
  border-radius: 6px;
  background-color: #fff;
}

@media print, screen and (max-width: 767px) {
  .firstView_serviceList_node {
    width: calc((100% - 12px) / 3);
    margin-right: 6px;
    height: 37px;
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_serviceList_node {
    width: calc((100% - 10px) / 3);
    margin-right: 5px;
    font-size: 1.4rem;
  }
}
.firstView_serviceList_node:nth-child(3n) {
  margin-right: 0;
}

@media print, screen and (max-width: 767px) {
  .firstView_serviceList_node:nth-child(n+4) {
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_serviceList_node:nth-child(n+4) {
    margin-top: 10px;
  }
}
.firstView_fv {
  height: 100%;
}

@media print, screen and (max-width: 767px) {
  .firstView_fv {
    width: 100%;
    left: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_fv {
    position: absolute;
    left: 65px;
    top: -184px;
    min-width: 1366px;
    width: 100%;
    z-index: 1;
  }
}
.firstView_fv_wrap {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}

@media print, screen and (max-width: 767px) {
  .firstView_fv_wrap {
    position: unset;
    width: 100%;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .firstView_fv_wrap {
    max-width: 873px;
    width: 64.5%;
  }
}
.firstView_fv_wrap img {
  width: 100%;
}

.firstview_button {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 37px;
}

@media print, screen and (max-width: 767px) {
  .firstview_button {
    display: none !important;
  }
}
/* ==============================================
	お悩みエリア
=============================================== */
.worry {
  position: relative;
  margin: 0 auto;
  background-color: #fff;
}

@media print, screen and (max-width: 767px) {
  .worry {
    padding: 0 0 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .worry {
    padding: 0 0 90px;
  }
}
.worry:after {
  content: "";
  display: inline-block;
  width: 376px;
  height: 376px;
  position: absolute;
  top: 65px;
  left: calc(50% - 760px);
  background-image: url(../images/pmo/worry_bg_object.png);
  background-size: 100%;
  z-index: 2;
}

@media print, screen and (max-width: 767px) {
  .worry:after {
    left: calc(50% - 760px);
  }
}
.worryCercle {
  position: absolute;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 1;
  background-color: #fff;
}

@media print, screen and (max-width: 767px) {
  .worryCercle {
    top: -40px;
    height: calc(100% + 40px);
  }
}
@media print, screen and (min-width: 768px) {
  .worryCercle {
    top: -65px;
    height: calc(100% + 65px);
  }
}
.worryInner {
  position: relative;
  z-index: 3;
}

@media print, screen and (max-width: 767px) {
  .worry_title {
    margin-bottom: 20px;
  }
}
.worry_list {
  width: 100%;
  margin: 0 auto;
}

@media print, screen and (min-width: 768px) {
  .worry_list {
    max-width: 1040px;
    padding: 0 20px;
  }
}
.worry_list_node {
  text-align: center;
  font-weight: 400;
  color: #53565A;
  background-color: #fff;
  border: 3px solid #EBE9E9;
  -webkit-box-shadow: inset 0px -5px 16px 0px rgb(235, 233, 233);
          box-shadow: inset 0px -5px 16px 0px rgb(235, 233, 233);
}

.worry_list_node:last-child {
  margin: 0 auto;
}

@media print, screen and (max-width: 767px) {
  .worry_list_node {
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.6;
    margin-bottom: 10px;
    padding: 15px;
    border-radius: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .worry_list_node {
    line-height: 1.6;
    margin-bottom: 25px;
    padding: 16px;
    font-size: 1.8rem;
    border-radius: 52px;
  }
}
/* ==============================================
	お問い合わせエリア
=============================================== */
.contact {
  background-image: url(../images/pmo/contact_bg.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: center;
  padding: 50px 0 124px;
}

@media print, screen and (max-width: 767px) {
  .contact {
    padding: 30px 0 183px;
  }
}
@media print, screen and (max-width: 767px) {
  .underContact {
    padding: 65px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .underContact {
    padding: 102px 0;
  }
}
.contact_contentWrap {
  position: relative;
  max-width: 1000px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.93);
  margin: 0 auto;
  padding: 30px 0 94px;
}

@media print, screen and (max-width: 767px) {
  .contact_contentWrap {
    padding: 20px 12.5px 70px;
  }
}
.contact_title {
  margin-bottom: 16px;
  padding: 0;
}

.contact_title::after {
  content: none;
}

@media print, screen and (max-width: 767px) {
  .contact_title {
    font-size: 20px;
    margin: 0 auto 10px;
  }
}
.contact_text {
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  color: #53565A;
}

@media print, screen and (max-width: 767px) {
  .contact_text {
    font-family: "Zen Kaku Gothic Antique", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    text-align: left;
  }
}
.contact_buttonArea {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 880px;
  background-color: #f8f8f8;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  margin: 0 auto;
  padding: 20px 0;
}

@media print, screen and (max-width: 767px) {
  .contact_buttonArea {
    bottom: -153px;
    width: 91.4%;
    border-radius: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .contact_buttonArea {
    bottom: -74px;
    width: 88%;
    border-radius: 30px;
  }
}
.underContactButtonArea {
  position: relative;
  top: auto;
  left: auto;
  bottom: auto;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.contact_sideTitle {
  text-align: center;
  font-size: 18px;
  line-height: 1.9;
  font-weight: bold;
  color: #53565A;
  margin: 0 auto;
}

@media print, screen and (max-width: 767px) {
  .contact_sideTitle {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 800px) {
  .contact_sideTitle {
    font-size: 17px;
  }
}
@media print, screen and (min-width: 768px) {
  .contact_sideTitle {
    padding: 0 10px;
  }
}
.contact_sideTitle:before, .contact_sideTitle:after {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  color: #F18A47;
}

.contact_sideTitle:before {
  content: "＼ ";
}

.contact_sideTitle:after {
  content: "／";
}

/* ==============================================
  できることエリア
=============================================== */
.can {
  position: relative;
  overflow: hidden;
  padding: 0 0 30px;
}

@media print, screen and (max-width: 767px) {
  .can {
    padding: 30px 0 40px;
  }
}
.canObj {
  position: absolute;
  top: 30px;
  left: calc(50% - 10px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1500px;
  height: 344px;
  background-image: url(../images/pmo/can_bg_object_pc.png);
  background-size: 1500px;
  background-position: center;
}

.canCercle {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}

@media print, screen and (max-width: 767px) {
  .canCercle {
    top: 420px;
  }
}
@media print, screen and (min-width: 768px) {
  .canCercle {
    top: 390px;
  }
}
.canCercle:before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 5200px;
  background-color: #F8F8F8;
  border-radius: 50%;
}

@media print, screen and (max-width: 767px) {
  .canCercle:before {
    width: 2200px;
  }
}
@media print, screen and (min-width: 768px) {
  .canCercle:before {
    width: 5200px;
  }
}
.canInner {
  position: relative;
  z-index: 3;
}

@media print, screen and (max-width: 767px) {
  .can_title {
    margin: 0 auto 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .can_title {
    margin: 49px auto 58px;
  }
}
.can_serviceWrap {
  max-width: 1200px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 30px auto 0;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media print, screen and (max-width: 767px) {
  .can_serviceWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 auto;
  }
}
.can_serviceContent {
  max-width: 360px;
  width: calc(35% - 60px);
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin: 0 60px 0 0;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .can_serviceContent {
    width: 100%;
    margin: 0 auto 20px;
    padding: 0;
  }
}
.can_serviceContent:last-child {
  margin: 0;
}

@media print, screen and (max-width: 767px) {
  .can_serviceContent:last-child {
    margin: 0 auto;
  }
}
.can_serviceContent_image {
  max-width: 250px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.can_serviceContent_image img {
  width: 100%;
  -webkit-box-shadow: 0 0 30px 0 rgba(54, 83, 3, 0.1);
          box-shadow: 0 0 30px 0 rgba(54, 83, 3, 0.1);
  border-radius: 50%;
}

@media print, screen and (max-width: 767px) {
  .can_serviceContent_image {
    max-width: 120px;
  }
}
.can_serviceContent_name {
  text-align: center;
  margin: 25px auto;
}

@media print, screen and (max-width: 767px) {
  .can_serviceContent_name {
    margin: 15px auto;
  }
}
.can_serviceContent_text {
  font-size: 16px;
  line-height: 1.6;
  color: #53565A;
  margin: 0 auto;
}

@media print, screen and (max-width: 767px) {
  .can_serviceContent_text {
    font-size: 14px;
    text-align: center;
  }
}
/* ==============================================
  サービス内容エリア
=============================================== */
.service {
  background-color: #f8f8f8;
  overflow: hidden;
}

@media print, screen and (max-width: 767px) {
  .service {
    padding: 0 0 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .service {
    padding: 60px 0 180px;
  }
}
.serviceObj01 {
  position: absolute;
  top: 0;
  left: calc(50% + 500px);
  width: 400px;
  height: 400px;
  background-image: url(../images/pmo/service_bg_object01.png);
  background-size: 400px;
  background-position: center;
}

.serviceObj02,
.serviceObj03 {
  position: absolute;
  width: 486px;
  height: 486px;
  background-image: url(../images/pmo/service_bg_object02.png);
  background-size: 486px;
  background-position: center;
}

.serviceObj02 {
  left: calc(50% - 810px);
  bottom: 90px;
}

.serviceObj03 {
  right: 10px;
  bottom: 130px;
}

.service_title {
  margin: 0;
}

@media print, screen and (max-width: 767px) {
  .service_title {
    padding: 30px 0;
  }
}
.service_image {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.service_image img {
  width: 100%;
}

.service_figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

@media print, screen and (max-width: 767px) {
  .service_figure {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .service_figure {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1310px) {
  .service_figure {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.service_figureNode {
  width: calc(27% - 11px);
  margin: 0 5.5px;
}

@media print, screen and (max-width: 767px) {
  .service_figureNode {
    width: 100%;
    margin: 0 15px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .service_figureNode {
    width: calc(50% - 11px);
    margin: 11px 5.5px;
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1310px) {
  .service_figureNode {
    width: calc(50% - 11px);
    margin: 11px 5.5px;
  }
}
.serviceNumberWrap_orange {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 17px 0 18px 10px;
}

@media print, screen and (max-width: 500px) {
  .serviceNumberWrap_orange {
    background-image: url(../images/pmo/servicePhase_orange-sp.png);
    margin: 0 auto -22px !important;
    padding: 5px 0 23px 20px !important;
    background-position: center bottom;
  }
}
@media print, screen and (max-width: 767px) {
  .serviceNumberWrap_orange {
    background-image: url(../images/pmo/servicePhase_orange-sp.png);
    margin: 0 auto -36px;
    padding: 5px 0 46px 20px;
    background-size: cover;
    background-position: center bottom;
  }
}
@media print, screen and (min-width: 768px) {
  .serviceNumberWrap_orange {
    background-position: center;
  }
}
.serviceNumberWrap_warmOrange {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  padding: 17px 0 18px 10px;
}

@media print, screen and (max-width: 500px) {
  .serviceNumberWrap_warmOrange {
    background-image: url(../images/pmo/servicePhase_warmOrange-sp.png);
    margin: 0 auto -22px !important;
    padding: 5px 0 23px 20px !important;
    background-position: center bottom;
  }
}
@media print, screen and (max-width: 767px) {
  .serviceNumberWrap_warmOrange {
    background-image: url(../images/pmo/servicePhase_warmOrange-sp.png);
    margin: 0 auto -36px;
    padding: 5px 0 46px 20px;
    background-size: cover;
    background-position: center bottom;
  }
}
.serviceText_vividOrange {
  color: #F37A46;
}

.serviceText_warmOrange {
  color: #EF9948;
}

.serviceBorder_vividOrange {
  border: 1px solid #F37A46;
}

.serviceBorder_warmOrange {
  border: 1px solid #EF9948;
}

.serviceNumber_phaseWrap {
  text-align: center;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #FFFCF8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 8px 0 2px;
}

.serviceNumber_phase {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  font-size: 10px;
  font-weight: bold;
}

.serviceNumber_phase_number {
  font-family: "Montserrat", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-weight: bold;
}

.serviceNumber_title {
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  color: #fff;
  margin: 0 0 0 9px;
}

@media print, screen and (max-width: 767px) {
  .serviceNumber_title {
    margin: 0 0 0 14px;
  }
}
.serviceContentsWrap {
  background-color: #FFFCF8;
  margin: 10px auto 0;
  padding: 10px 12px 15px;
}

@media print, screen and (max-width: 500px) {
  .serviceContentsWrap {
    padding: 25px 15px 10px !important;
  }
}
@media print, screen and (max-width: 767px) {
  .serviceContentsWrap {
    margin: 0 auto;
    padding: 30px 15px 10px;
  }
}
.serviceContents_description_node {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  padding: 0 0 0 19px;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_description_node {
    font-size: 14px;
    line-height: 1.7;
    padding: 0 0 0 18px;
  }
}
.serviceContents_description_node::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "◎";
  width: 14px;
  height: 14px;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_description_node::before {
    width: 13px;
    height: 13px;
  }
}
.serviceContents_productWrap {
  background-color: #fff;
  min-height: 230px;
  margin: 10px auto 0;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_productWrap {
    min-height: 147px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .serviceContents_productWrap {
    max-width: none;
  }
}
.serviceContents_product_titleOrangeWrap {
  position: relative;
  text-align: center;
  background-repeat: no-repeat;
  background-size: 100%;
  width: 140px;
  padding: 0.5px 0;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_titleOrangeWrap {
    background-image: url(../images/pmo/serviceProduct_Orange-sp.png);
    width: 84px;
    padding: 1.1px 0;
  }
}
.serviceContents_product_titleWarmOrangeWrap {
  position: relative;
  text-align: center;
  background-repeat: no-repeat;
  background-size: 100%;
  width: 140px;
  padding: 0.5px 0;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_titleWarmOrangeWrap {
    background-image: url(../images/pmo/serviceProduct_WarmOrange-sp.png);
    width: 84px;
    padding: 1.1px 0;
  }
}
.serviceContents_product_title {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  color: #fff;
  padding: 0 20px 1px 0;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_title {
    font-size: 14px;
    line-height: 1.7;
    padding: 0 13px 0 0;
  }
}
.serviceContents_product_list {
  margin: 15px 10px 10px;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_list {
    margin: 5px 10px 15px;
  }
}
.serviceContents_product_listNode {
  position: relative;
  font-size: 15px;
  line-height: 1.7;
  font-weight: 500;
  color: #53565A;
  padding: 0 0 0 10px;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_listNode {
    font-size: 14px;
    line-height: 1.4;
    padding: 0 0 0 10.5px;
  }
}
.serviceContents_product_listNode::before {
  position: absolute;
  top: 12px;
  left: 0;
  content: "";
  background-color: #53565A;
  border-radius: 50%;
  width: 3.5px;
  height: 3.5px;
}

@media print, screen and (max-width: 767px) {
  .serviceContents_product_listNode::before {
    top: 8.5px;
  }
}
@media print, screen and (min-width: 1025px) {
  .serviceContents_product_text {
    font-size: 13px;
  }
}
.service_arrow {
  max-width: 286px;
  width: 100%;
}

@media print, screen and (max-width: 767px) {
  .service_arrow {
    margin: 20px auto 0;
  }
}
@media print, screen and (min-width: 768px) {
  .service_arrow {
    margin: 30px auto 0;
  }
}
.service_subTitle {
  font-weight: 700;
  text-align: center;
}

@media print, screen and (max-width: 767px) {
  .service_subTitle {
    margin: 20px auto;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .service_subTitle {
    margin: 30px auto;
    font-size: 2.4rem;
  }
}
.service_moreInformation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (max-width: 767px) {
  .service_moreInformation {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.service_moreInformation_list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border: 5px solid #FFE5B5;
  border-radius: 20px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(54, 38, 3, 0.1);
          box-shadow: 0 0 20px 0 rgba(54, 38, 3, 0.1);
}

@media print, screen and (max-width: 767px) {
  .service_moreInformation_list {
    width: 100%;
    padding: 25px 15px;
  }
}
@media print, screen and (min-width: 768px) {
  .service_moreInformation_list {
    width: calc((100% - 60px) / 3);
    padding: 35px 20px;
  }
}
@media print, screen and (max-width: 767px) {
  .service_moreInformation_list + .service_moreInformation_list {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 768px) {
  .service_moreInformation_list + .service_moreInformation_list {
    margin-left: 30px;
  }
}
.service_moreInformation_title {
  position: relative;
  text-align: center;
}

@media print, screen and (max-width: 767px) {
  .service_moreInformation_title {
    padding-bottom: 14px;
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .service_moreInformation_title {
    padding-bottom: 22px;
  }
}
.service_moreInformation_title:after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 40px;
  height: 4px;
  border-radius: 2px;
  background: -webkit-gradient(linear, left top, left bottom, from(#f46c45), color-stop(64.28%, #f09248), to(#eea749));
  background: linear-gradient(#f46c45 0%, #f09248 64.28%, #eea749 100%);
}

.service_moreInformation_text {
  position: relative;
  line-height: 1.6;
  color: #53565A;
  margin: 0 auto;
}

@media print, screen and (max-width: 767px) {
  .service_moreInformation_text {
    padding: 10px 0 0;
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .service_moreInformation_text {
    padding: 20px 0 0;
    font-size: 1.6rem;
  }
}
/* ==============================================
  数字で見る実績エリア
=============================================== */
.number {
  position: relative;
  background-color: #f8f8f8;
}

@media print, screen and (max-width: 767px) {
  .number {
    padding-top: 0;
  }
}
.numberMain {
  position: relative;
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .numberMain {
    padding-bottom: 90px;
  }
}
.numberCercle {
  position: absolute;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}

@media print, screen and (max-width: 767px) {
  .numberCercle {
    top: -40px;
    height: calc(100% + 40px);
  }
}
@media print, screen and (min-width: 768px) {
  .numberCercle {
    top: -90px;
    height: calc(100% + 90px);
  }
}
.numberCercle:before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 5200px;
  height: 5200px;
  background-color: #fff;
  border-radius: 50%;
}

@media print, screen and (max-width: 767px) {
  .numberCercle:before {
    width: 2200px;
  }
}
.numberObj {
  position: absolute;
  top: 41px;
  left: calc(50% - 55px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1755px;
  height: 970px;
  z-index: 2;
  background-image: url(../images/pmo/number_bg_object_pc.png);
  background-size: 1755px;
  background-position: center;
}

.numberInner {
  position: relative;
  z-index: 3;
}

@media print, screen and (max-width: 767px) {
  .number_title {
    padding: 30px 0;
  }
}
.number_image {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.number_image img {
  width: 100%;
}

@media print, screen and (max-width: 767px) {
  .number_image img {
    width: 100%;
  }
}
.number_alert {
  font-size: 12px;
  line-height: 1.6;
  font-weight: 400;
  color: #53565A;
}

@media print, screen and (max-width: 767px) {
  .number_alert {
    font-size: 11px;
  }
}
/* ==============================================
  PMOの位置づけエリア
=============================================== */
@media print, screen and (max-width: 767px) {
  .position {
    padding: 0 0 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .position {
    padding-bottom: 90px;
  }
}
.position_image {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.position_image img {
  width: 100%;
}

/* ==============================================
  PMOスタッフの紹介エリア
=============================================== */
@media print, screen and (max-width: 767px) {
  .introduction {
    margin-bottom: 35px;
    padding: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .introduction {
    margin-bottom: 90px;
  }
}
@media print, screen and (max-width: 767px) {
  .introductionInner {
    padding: 0 15px;
  }
}
.introductionObj {
  position: absolute;
  top: 0;
  left: calc(50% - 680px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 225px;
  height: 225px;
  z-index: 2;
  background-image: url(../images/pmo/introduction_bg_object_pc.png);
  background-size: 225px;
  background-position: center;
}

@media print, screen and (max-width: 767px) {
  .introduction_title {
    padding: 30px 0;
  }
}
.introduction_figure {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.introduction_figure img {
  width: 100%;
}

/* ==============================================
  事例紹介エリア
=============================================== */
.example {
  background: -webkit-gradient(linear, left top, left bottom, from(#f46c45), color-stop(64.28%, #f09248), to(#eea749));
  background: linear-gradient(#f46c45 0%, #f09248 64.28%, #eea749 100%);
  overflow: hidden;
}

@media print, screen and (max-width: 767px) {
  .example {
    padding: 40px 0 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .example {
    padding: 40px 0 180px;
  }
}
@media print, screen and (min-width: 768px) {
  .example_inner {
    padding: 50px 0 0;
  }
}
.exampleObj {
  position: absolute;
  top: 48px;
  left: calc(50% + 30px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1536px;
  height: 731px;
  background-image: url(../images/pmo/example_bg_object_pc.png);
  background-size: 1536px;
  background-position: center;
}

.example_title {
  color: #FFFFFF;
}

@media print, screen and (max-width: 767px) {
  .example_title {
    margin-bottom: 20px;
    padding: 30px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .example_title {
    margin-bottom: 30px;
  }
}
.example_title::after {
  opacity: 0.35;
}

.c-downloadContentsArticle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -15px 0;
  padding: 0;
}

@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .c-downloadContentsArticle {
    margin: 0 -15px -20px;
  }
}
@media print, screen and (max-width: 767px) {
  .c-downloadContentsArticle {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 0 -20px;
  }
}
.example_button {
  position: relative;
  text-align: center;
  display: block;
  max-width: 448px;
  width: 100%;
  border: 2px solid #FFFFFF;
  border-radius: 60px;
  margin: 18px auto 0;
  padding: 25px 0;
}

.example_button::after {
  position: absolute;
  top: 50%;
  right: 52px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  background-image: url(../svg/arrow_white_right.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 17px;
  height: 6px;
}

@media print, screen and (max-width: 767px) {
  .example_button::after {
    right: 38.5px;
  }
}
@media print, screen and (max-width: 767px) {
  .example_button {
    margin: 20px auto 0;
    padding: 15px 0;
  }
}
.example_button_node {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  color: #FFFFFF;
}

@media print, screen and (max-width: 767px) {
  .example_button_node {
    font-size: 18px;
  }
}
/* ==============================================
  よくあるご質問エリア
=============================================== */
.inquiry {
  position: relative;
  margin: 0 auto;
  background: -webkit-gradient(linear, left top, left bottom, from(#eea749), color-stop(64.28%, #f09248), to(#f46c45));
  background: linear-gradient(#eea749 0%, #f09248 64.28%, #f46c45 100%);
}

@media print, screen and (max-width: 767px) {
  .inquiry {
    padding: 0 0 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry {
    padding: 50px 0 90px;
    margin: -50px auto 0;
  }
}
.inquiryMain {
  position: relative;
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .inquiryMain {
    padding-bottom: 90px;
  }
}
.inquiryCercle {
  position: absolute;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}

@media print, screen and (max-width: 767px) {
  .inquiryCercle {
    top: -40px;
    height: calc(100% + 40px);
  }
}
@media print, screen and (min-width: 768px) {
  .inquiryCercle {
    top: -50px;
    height: calc(100% + 50px);
  }
}
.inquiryCercle:before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 5200px;
  background-color: #f8f8f8;
  border-radius: 50%;
}

@media print, screen and (max-width: 767px) {
  .inquiryCercle:before {
    width: 2200px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiryCercle:before {
    width: 5200px;
  }
}
.inquiryObj {
  position: absolute;
  top: 0;
  left: calc(50% - 55px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1504px;
  height: 577px;
  z-index: 2;
  background-image: url(../images/pmo/inquiry_bg_object_pc.png);
  background-size: 1504px;
  background-position: center;
}

.inquiryInner {
  position: relative;
  z-index: 3;
}

@media print, screen and (max-width: 767px) {
  .inquiry_title {
    margin: 0 auto 20px;
    padding: 30px 0;
  }
}
.inquiry_title::after {
  content: none;
}

.inquiry_title span::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 138px;
  height: 138px;
  background-image: url(../images/pmo/title_circle-orange.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  z-index: -1;
}

@media print, screen and (max-width: 767px) {
  .inquiry_title span::after {
    width: 103px;
    height: 103px;
  }
}
.inquiry_wrap {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.inquiry_list {
  margin: 0 auto 30px;
}

.inquiry_list:last-child {
  margin: 0 auto;
}

.inquiry_list_wrap {
  background-color: #fff;
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
}

@media print, screen and (max-width: 767px) {
  .inquiry_list_wrap {
    padding: 0 15px 15px 15px;
    border-radius: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_list_wrap {
    padding-bottom: 20px;
    border-radius: 30px;
  }
}
.inquiry_quetionTitle {
  position: relative;
  cursor: pointer;
  margin: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media print, screen and (max-width: 767px) {
  .inquiry_quetionTitle {
    padding: 20px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_quetionTitle {
    padding: 25px 30px 0 30px;
  }
}
.inquiry_quetionTitle::before {
  position: absolute;
  content: "";
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  width: 20px;
  height: 4px;
  background: #F18105;
}

@media print, screen and (max-width: 767px) {
  .inquiry_quetionTitle::before {
    top: 30px;
    right: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_quetionTitle::before {
    right: 20px;
    bottom: 14px;
  }
}
.inquiry_quetionTitle::after {
  position: absolute;
  content: "";
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  width: 20px;
  height: 4px;
  background: #F18105;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

@media print, screen and (max-width: 767px) {
  .inquiry_quetionTitle::after {
    top: 30px;
    right: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_quetionTitle::after {
    right: 20px;
    bottom: 14px;
  }
}
.inquiry_quetionTitle.close::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.inquiry_quetionTitle_node {
  display: inline-block;
  position: relative;
  line-height: 1.6;
  font-weight: bold;
  color: #53565A;
}

@media print, screen and (max-width: 767px) {
  .inquiry_quetionTitle_node {
    padding: 0 38px 0 33px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_quetionTitle_node {
    padding: 0 0 0 53px;
    font-size: 1.6rem;
  }
}
.inquiry_quetionTitle_node::before {
  position: absolute;
  content: "";
  left: 0;
  background-image: url(../images/pmo/inquiry_question.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .inquiry_quetionTitle_node::before {
    top: 0;
    width: 18px;
    height: 29px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_quetionTitle_node::before {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 26.5px;
    height: 29px;
  }
}
.inquiry_answerArea {
  display: none;
  max-width: 970px;
  width: 100%;
  background-color: #f8f8f8;
}

@media print, screen and (max-width: 767px) {
  .inquiry_answerArea {
    margin: 5px auto 0;
    padding: 10px 15px;
    border-radius: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_answerArea {
    margin: 30px auto 0;
    padding: 20px 25px;
    border-radius: 30px;
  }
}
.inquiry_answer_node {
  position: relative;
  line-height: 1.6;
  color: #0D0D0D;
  margin: 0 auto;
  padding: 0 0 0 51px;
}

@media print, screen and (max-width: 767px) {
  .inquiry_answer_node {
    padding: 0 15px 0 33px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_answer_node {
    padding: 0 0 0 53px;
    font-size: 1.6rem;
  }
}
.inquiry_answer_node::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/pmo/inquiry_answer.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}

@media print, screen and (max-width: 767px) {
  .inquiry_answer_node::before {
    top: 18px;
    width: 18px;
    height: 29px;
  }
}
@media print, screen and (min-width: 768px) {
  .inquiry_answer_node::before {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 26.5px;
    height: 29px;
  }
}
.inquiryLink {
  color: #F18A47;
  text-decoration: underline;
}

.inquiryLink:hover {
  text-decoration: none;
}

/* ==============================================
  リンクエリア
=============================================== */
.link-area {
  padding: 40px 0;
}

.link-area .link-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .link-area .link-list {
    display: block;
  }
}
.link-area .link-list li {
  margin-right: 25px;
}

@media print, screen and (max-width: 767px) {
  .link-area .link-list li {
    line-height: 1em;
    margin: 0 0 15px 0;
    padding: 0;
  }
}
.link-area .link-list li:last-child {
  margin: 0;
}

.link-area .link-list li a {
  font-size: 14px;
  line-height: 1em;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.link-area .link-list li a:hover {
  opacity: 0.6;
}

.link-area .link-list li a img {
  position: relative;
  top: -2px;
  width: 13px;
  height: 13px;
  vertical-align: middle;
  margin-right: 3px;
}

/* ==============================================
  フッター
=============================================== */
footer {
  position: relative;
  width: 100%;
  background: #98989a;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

footer .footer-logo {
  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;
  list-style-type: none;
  margin: 0;
  padding: 35px 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  footer .footer-logo {
    padding: 19px 0 0;
  }
}
@media print, screen and (max-width: 767px) {
  footer .footer-logo li {
    text-align: center;
    width: 123px;
  }
}
footer .footer-logo li:last-child {
  margin-bottom: 0;
}

@media print, screen and (max-width: 767px) {
  footer .footer-logo li:last-child {
    width: 148px;
  }
}
footer .footer-logo li a img {
  width: 100%;
}

footer .copyright {
  text-align: center;
  margin: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 4px 0 20px;
}

@media print, screen and (max-width: 767px) {
  footer .copyright {
    padding: 20px 0 62px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  footer .copyright {
    padding: 20px 0 70px;
  }
}
footer .copyright small {
  color: #fff;
  font-size: 12px;
  line-height: 1em;
}

/* ==============================================
  トップへ戻るボタン
=============================================== */
.page-top {
  position: fixed;
  right: 20px;
  bottom: 45px;
  width: 45px;
  height: 45px;
  background: url(../images/pmo/page-top.svg) center center/45px 45px no-repeat;
  z-index: 99;
}

@media print, screen and (max-width: 767px) {
  .page-top {
    bottom: 66px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .page-top {
    bottom: 70px;
  }
}
/* ==============================================
  フォームエリア
=============================================== */
.form-area {
  position: relative;
  text-align: center;
  background-color: #f8f8f8;
}

@media print, screen and (max-width: 767px) {
  .form-area {
    padding: 0 0 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .form-area {
    padding: 30px 0 90px;
  }
}
.form-area .form-content {
  width: auto;
  margin-top: 30px;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
  .form-area .form-content {
    margin-top: 20px;
    padding: 0 15px 10px;
  }
}
@media print, screen and (max-width: 767px) {
  .form-area .form-content img {
    width: 100%;
  }
}
.form-area .form-content p {
  font-size: 16px;
  line-height: 1.8;
  color: #53565A;
  font-weight: 400;
  padding: 0;
}

@media print, screen and (max-width: 767px) {
  .form-area .form-content p {
    font-size: 14px;
    width: 100% !important;
    line-height: 1.5;
    white-space: normal;
  }
}
.form-area .form-content p a {
  color: #0C6BB1;
  text-decoration: underline;
  padding: 0 25px 0 0;
}

.form-area .form-content .f12 {
  width: 586px;
  font-size: 12px;
  line-height: 1.5;
  margin: 0 auto 20px;
}

@media print, screen and (max-width: 767px) {
  .form-area .form-content .f12 {
    width: 100%;
  }
}
@media print, screen and (max-width: 767px) {
  .form_title {
    padding: 30px 0;
  }
}
.formCercle {
  position: absolute;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}

@media print, screen and (max-width: 767px) {
  .formCercle {
    top: -40px;
    height: calc(100% + 40px);
  }
}
@media print, screen and (min-width: 768px) {
  .formCercle {
    top: -90px;
    height: calc(100% + 90px);
  }
}
.formCercle:before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 5200px;
  background-color: #FFFBF0;
  border-radius: 50%;
}

@media print, screen and (max-width: 767px) {
  .formCercle:before {
    width: 2200px;
  }
}
@media print, screen and (min-width: 768px) {
  .formCercle:before {
    width: 5200px;
  }
}
.formInner {
  position: relative;
  z-index: 2;
}

.form_text {
  font-size: 14px;
  color: #000000;
  line-height: 1.8;
  font-weight: 300;
  margin: 30px auto 10px;
}

.form_noteText {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 300;
  color: #EB6D6D;
}

/* デザイン調整 */
@media print, screen and (max-width: 767px) {
  .mktoForm {
    padding: 0 !important;
  }
}
#form-area form {
  position: relative;
  max-width: 800px !important;
  width: 100% !important;
  margin: 0 auto;
}

#form-area form > div {
  white-space: nowrap;
}

@media print, screen and (max-width: 767px) {
  #form-area form > div {
    white-space: normal;
  }
}
#form-area .mktoHtmlText {
  position: relative;
  width: 100% !important;
}

@media print, screen and (max-width: 767px) {
  #form-area .mktoHtmlText {
    width: 100% !important;
    max-width: 100% !important;
  }
}
.mktoHtmlText p a {
  position: relative;
}

.mktoHtmlText p a:after {
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 14px;
  height: 14px;
  background: url(../svg/blank_blue.svg);
  margin: 0;
  padding: 0;
}

.mktoGutter {
  display: none;
}

.mktoOffset {
  display: none !important;
}

.mktoFieldDescriptor {
  width: 100% !important;
  margin-bottom: 0 !important;
}

.mktoFieldWrap {
  width: 100% !important;
}

.mktoLabel {
  padding-top: 0 !important;
  font-weight: 400 !important;
  margin: 15px 0 5px !important;
}

.mktoAsterix {
  color: transparent !important;
  width: 0;
  height: 0;
}

.mktoAsterix::before {
  position: relative;
  display: block;
  top: 0;
  right: 0;
  content: "※";
  color: #EB6D6D;
  font-size: 16px;
  font-weight: 300;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.mktoRequiredField {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

#form-area input,
#form-area textarea,
#form-area select {
  height: 40px;
  border-radius: 10px;
  border: solid 1px #D5D9E0;
  background-color: #FAFAFA;
  outline: none;
  font-size: 16px !important;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif !important;
  font-weight: 300 !important;
  padding: 0 8px !important;
  width: 100% !important;
}

@media print, screen and (max-width: 767px) {
  #form-area input,
#form-area textarea,
#form-area select {
    font-size: 14px !important;
  }
}
#form-area select {
  max-width: 100% !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background: #FAFAFA url(../svg/select-arrow.svg) 97% 17px/12.64px 7.81px no-repeat;
}

#form-area textarea {
  height: 86px;
  padding: 8px !important;
}

#form-area input[type=checkbox] {
  border-radius: 4px;
  border: solid 1px #dee5ec;
  background-color: #f9fbfc;
  outline: none;
  font-size: 14px !important;
  padding: 0 8px !important;
  height: 20px;
  width: 20px;
  margin: 0 0.5em 0 0 !important;
}

#form-area .mktoCheckboxList label {
  width: 400px;
  margin-bottom: 0.5em !important;
  line-height: 1.7 !important;
}

#form-area form div label {
  width: 100% !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 16px;
  line-height: 1.8;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
}

@media print, screen and (max-width: 767px) {
  #form-area form div label {
    font-size: 14px;
  }
}
#form-area .mktoButtonRow {
  display: block;
  text-align: center;
}

@media print, screen and (max-width: 767px) {
  #form-area .mktoButtonRow {
    width: 100%;
  }
}
#form-area form button {
  position: relative;
  background-color: #F37A46;
  background-image: none;
  background-repeat: no-repeat;
  background-position: right 10px bottom 50%;
  border-radius: 35px;
  width: 450px;
  line-height: 1.8;
  font-size: 16px;
  padding: 14px 0;
  font-weight: bold;
  position: relative;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  color: white;
  text-shadow: none;
  margin: 20px auto 0;
}

#form-area form button:hover::after {
  right: 20px;
}

#form-area form button:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../svg/arrow_white_right.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 17px;
  height: 6px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media print, screen and (max-width: 767px) {
  #form-area form button {
    width: 100%;
    margin: 16px auto 0;
  }
}
#form-area .lastNameWrapper {
  width: 48% !important;
}

#form-area .lastNameWrapper .mktoLabel {
  margin: 0 0 5px 0 !important;
}

@media print, screen and (max-width: 767px) {
  #form-area .lastNameWrapper input {
    width: 100% !important;
  }
}
#form-area .firstNameWrapper {
  position: absolute;
  top: 0;
  right: 0;
  width: 48% !important;
}

#form-area .firstNameWrapper .mktoLabel {
  margin: 0 0 5px 0 !important;
}

@media print, screen and (max-width: 767px) {
  #form-area .firstNameWrapper input {
    width: 100% !important;
  }
}
#form-area .personalWrapper .mktoAsterix {
  display: none !important;
}

#form-area .personalWrapper .mktoFieldDescriptor {
  width: 100% !important;
  min-height: 20px !important;
  margin: 0 !important;
}

@media print, screen and (max-width: 767px) {
  #form-area .personalWrapper .mktoFieldDescriptor {
    width: 100% !important;
    min-height: 16px !important;
  }
}
#form-area .personalWrapper .mktoFormCol {
  margin-bottom: 0 !important;
}

#form-area .personalWrapper .mktoLabel {
  margin: 0 !important;
}

.mktoCheckboxList {
  text-align: center !important;
  max-width: 450px !important;
  width: 100% !important;
  min-height: 100% !important;
  display: block !important;
  float: none !important;
  margin: 30px auto 14px !important;
  padding: 0 !important;
}

@media print, screen and (max-width: 767px) {
  .mktoCheckboxList {
    margin: 17px auto 11px !important;
  }
}
.mktoCheckboxList input {
  display: none;
}

.mktoCheckboxList label {
  position: relative !important;
  display: inline !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #53565A !important;
  font-weight: 400 !important;
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
  width: 100% !important;
  max-width: 450px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 0 0 30px !important;
}

@media print, screen and (max-width: 767px) {
  .mktoCheckboxList label {
    font-size: 14px !important;
    padding: 0 0 0 26px !important;
    min-height: 16px !important;
  }
}
.mktoCheckboxList label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 20px;
  line-height: 1em;
  font-size: 12px;
  border: 1px solid #53565A;
  border-radius: 4px;
  background-color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media print, screen and (max-width: 767px) {
  .mktoCheckboxList label:before {
    width: 16px;
    height: 16px;
  }
}
/* チェックボックスのチェックマーク */
.mktoCheckboxList input:checked + label:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  top: 6px !important;
  left: 4px !important;
  width: 12px !important;
  height: 8px !important;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media print, screen and (max-width: 767px) {
  .mktoCheckboxList input:checked + label:after {
    left: 3px !important;
    width: 9px !important;
    height: 5px !important;
  }
}
.PersonalInfoWrapper {
  max-width: 800px !important;
  width: 100% !important;
  margin-bottom: 0 !important;
  margin: 14px auto 0 !important;
}

.PersonalInfoWrapper p {
  text-align: center !important;
}

.PersonalInfoWrapper p a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.PersonalInfoWrapper p a:hover {
  opacity: 0.6;
}

/*ここまで*/
#no_gm {
  color: red;
  font-weight: bold;
}

.mktoButtonWrap {
  margin-left: 0 !important;
}

/*-----------------------------------------------
  バリデーション
-----------------------------------------------*/
/* バリデーションに引っかかった時の枠の色 */
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoTextField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoEmailField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoTelField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoNumberField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoDateField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap .mktoUrlField.mktoInvalid,
form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap textarea.mktoInvalid {
  border: 1px solid #D33E3E;
  background: #F5E5E5;
}

form.mktoForm .mktoFormRow .mktoFieldDescriptor .mktoFieldWrap select.mktoInvalid {
  border: 1px solid #D33E3E;
  background: #F5E5E5 url(../svg/select-arrow.svg) 97% 20px/12.64px 7.81px no-repeat;
}

/* 個人情報同意欄がバリデーションに引っかかった時のチェックボックスの枠の色 */
form.mktoForm .mktoFormRow .personalCheckWrapper .mktoCheckboxList.mktoInvalid label:before {
  border: 1px solid #D33E3E;
  background: #F5E5E5;
}