@charset "UTF-8";
/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

article, aside, figure, footer, header, nav, section, details, summary {
  display: block;
}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%;
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
  /* IE */
}

input[type="radio"] {
  vertical-align: text-bottom;
}

input[type="checkbox"] {
  vertical-align: bottom;
}

.ie7 input[type="checkbox"] {
  vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font: 99% sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible;
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before, .clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

html {
  font-size: 62.5%;
  height: auto;
  overflow: visible;
}

body {
  font-family: 'Roboto' , 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  color: #222222;
  height: auto;
  overflow: visible;
}

@media screen and (max-width: 768px) {
  body.is__fix {
    overflow: hidden;
    height: 100%;
    position: static;
  }
}

img {
  vertical-align: bottom;
}

.form-err {
  color: red;
  margin-top: 5px;
}

.slick-slider {
  opacity: 0;
  -webkit-transition: opacity .3s linear;
  transition: opacity .3s linear;
}

.slick-slider.slick-initialized {
  opacity: 1;
}

.container {
  padding-left: 30px;
  padding-right: 30px;
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (max-width: 768px) {
  .container {
    padding-left: 25px;
    padding-right: 25px;
  }
}

.pcnon {
  display: none;
}

@media screen and (max-width: 768px) {
  .pcnon {
    display: block;
  }
}

.spnon {
  display: block;
}

@media screen and (max-width: 768px) {
  .spnon {
    display: none;
  }
}

.row2Ttl {
  text-align: center;
}

.row2Ttl__jp {
  font-size: 3.0rem;
  font-weight: bold;
  display: block;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .row2Ttl__jp {
    font-size: 2.3rem;
    margin-bottom: 5px;
  }
}

.row2Ttl__en {
  display: block;
  color: #000000;
}

@media screen and (max-width: 768px) {
  .row2Ttl__en {
    font-size: 1.2rem;
  }
}

.roundBt {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 242px;
  height: 72px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
          box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
}

@media screen and (min-width: 768px) {
  .roundBt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .roundBt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.roundBt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .roundBt {
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .roundBt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.breadcrumb {
  padding: 20px 20px 110px 25px;
}

@media screen and (max-width: 768px) {
  .breadcrumb {
    padding: 15px 25px 60px 25px;
  }
}

.breadcrumb__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .breadcrumb__list {
    overflow-x: auto;
    white-space: nowrap;
  }
}

.breadcrumb__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.breadcrumb__item:after {
  content: "＞";
  font-size: 1.0rem;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  color: #7d7d7d;
  padding: 0 1em;
}

@media screen and (max-width: 768px) {
  .breadcrumb__item:after {
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
  }
}

.breadcrumb__item:last-of-type:after {
  display: none;
}

.breadcrumb__link {
  color: #000;
  text-decoration: none;
  font-size: 1.3rem;
  color: #7d7d7d;
  line-height: 1;
  display: block;
}

@media screen and (max-width: 768px) {
  .breadcrumb__link {
    font-size: 1.2rem;
  }
}

a.breadcrumb__link:hover {
  text-decoration: underline;
}

.lowPage__header {
  height: 388px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 1px solid #eaeaea;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .lowPage__header {
    height: 200px;
  }
}

.lowPage__header:before {
  content: "";
  display: block;
  width: 413px;
  height: 611px;
  background: url(../img/bg_section_01.svg) no-repeat center center/cover;
  position: absolute;
  left: 50px;
  top: -95px;
}

@media screen and (max-width: 768px) {
  .lowPage__header:before {
    width: 223px;
    height: 330px;
    top: -50px;
    left: 25px;
  }
}

.lowPage__ttl {
  text-align: center;
  padding-top: 55px;
}

@media screen and (max-width: 768px) {
  .lowPage__ttl {
    padding-top: 0;
  }
}

.lowPage__ttlJp {
  font-size: 3.2rem;
  font-weight: bold;
  display: block;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .lowPage__ttlJp {
    font-size: 2.7rem;
  }
}

.lowPage__ttlEn {
  font-size: 1.4rem;
  display: block;
  color: #969696;
  width: 100%;
  margin-top: 10px;
  letter-spacing: .15em;
}

@media screen and (max-width: 768px) {
  .lowPage__ttlEn {
    font-size: 1.2rem;
    margin-top: 5px;
  }
}

.diaries__link {
  color: inherit;
  text-decoration: none;
}

.diaries__link:hover {
  opacity: .75;
}

.diaries__link:hover .diaries__ttl {
  text-decoration: none;
}

.diaries__fig {
  margin-bottom: 15px;
  position: relative;
  height: auto;
  padding-bottom: 75%;
  position: relative;
}

@media screen and (max-width: 768px) {
  .diaries__fig {
    margin-bottom: 10px;
  }
}

.diaries__img {
  border-radius: 8px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.diaries__date {
  font-size: 1.4rem;
  color: #9fa0a0;
  display: block;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .diaries__date {
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 5px;
  }
}

.diaries__ttl {
  text-decoration: underline;
  line-height: 1.875;
}

@media screen and (max-width: 768px) {
  .diaries__ttl {
    font-size: 1.3rem;
    line-height: 1.5;
  }
}

.infoList__link {
  color: inherit;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid #efefef;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .infoList__link {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 20px 0 15px 0;
  }
}

.infoList__link:hover .infoList__head {
  text-decoration: underline;
}

.infoList__date {
  margin-right: 1em;
}

@media screen and (max-width: 768px) {
  .infoList__date {
    font-size: 1.2rem;
  }
}

.infoList__cat {
  font-size: 1.4rem;
  color: #006cb6;
  min-width: calc(7em + 20px);
  padding: 5px;
  border: 1px solid #006cb6;
  border-radius: 20px;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .infoList__cat {
    font-size: 1.0rem;
    padding: 3.5px;
    min-width: calc(7em + 13px);
  }
}

.infoList__head {
  padding-left: 1em;
  width: calc(100% - 185px);
}

@media screen and (max-width: 768px) {
  .infoList__head {
    width: 100%;
    font-size: 1.4rem;
    margin-top: 5px;
    padding-left: 0;
  }
}

.recipeList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: -16px;
  margin-right: -16px;
}

@media screen and (max-width: 768px) {
  .recipeList {
    margin-left: 0;
    margin-right: 0;
  }
}

.recipeList__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 0 16px;
}

@media screen and (max-width: 768px) {
  .recipeList__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 40px;
  }
  .recipeList__item:last-of-type {
    margin-bottom: 0;
  }
}

.recipeList__fig {
  margin-bottom: 15px;
  background-color: #fff;
  padding-top: 70%;
  position: relative;
  border-radius: 3px;
  overflow: hidden;
}

.recipeList__figLink:hover {
  opacity: .7;
}

.recipeList__img {
  width: inherit;
  height: inherit;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

@media screen and (max-width: 768px) {
  .recipeList__img {
    width: 100%;
  }
}

.recipeList__cats {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -3.5px;
}

@media screen and (max-width: 768px) {
  .recipeList__cats {
    margin: -2.5px;
  }
}

.recipeList__catsItem {
  padding: 3.5px;
}

@media screen and (max-width: 768px) {
  .recipeList__catsItem {
    padding: 2.5px;
  }
}

.recipeList__catsInner {
  text-decoration: none;
  color: inherit;
  line-height: 1;
  color: #fff;
  font-size: 1.3rem;
  padding: 5px 6px;
  border-radius: 4px;
  background-color: #006cb6;
}

.recipeList__catsInner:hover {
  opacity: .7;
}

.recipeList__name {
  margin-top: 20px;
  font-size: 1.7rem;
  font-weight: bold;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .recipeList__name {
    font-size: 1.6rem;
    margin-top: 15px;
    margin-bottom: 10px;
  }
}

.recipeList__nameLink {
  text-decoration: none;
  color: inherit;
}

.recipeList__nameLink:hover {
  text-decoration: underline;
}

.recipeList__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -.25em -.5em;
}

.recipeList__tagsItem {
  padding: .25em .5em;
}

@media screen and (max-width: 768px) {
  .recipeList__tagsItem {
    font-size: 1.2rem;
  }
}

.recipeList__tagsLink {
  font-size: 1.5rem;
  color: #036eb8;
  line-height: 1;
}

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

.recipeList__tagsLink:before {
  content: "#";
}

.arcPagenation__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.arcPagenation__item {
  padding: 0 5px;
}

.arcPagenation__item_type_prev .page-numbers,
.arcPagenation__item_type_next .page-numbers,
.arcPagenation__item_type_prev .arcPagenation__link,
.arcPagenation__item_type_next .arcPagenation__link {
  background-color: transparent;
}

.arcPagenation__item_type_prev .page-numbers:hover,
.arcPagenation__item_type_next .page-numbers:hover,
.arcPagenation__item_type_prev .arcPagenation__link:hover,
.arcPagenation__item_type_next .arcPagenation__link:hover {
  opacity: .7;
  background: none;
}

.arcPagenation__item_type_prev {
  margin-right: 10px;
}

.arcPagenation__item_type_next {
  margin-left: 10px;
}

.page-numbers,
.arcPagenation__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50px;
  width: 50px;
  height: 50px;
  -webkit-flex-basis: 50px;
      -ms-flex-preferred-size: 50px;
          flex-basis: 50px;
  background: rgba(0, 108, 182, 0.1);
  color: #006cb6;
  font-size: 2.0rem;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .page-numbers,
  .arcPagenation__link {
    width: 36px;
    height: 36px;
    font-size: 1.6rem;
  }
}

.page-numbers:hover,
.arcPagenation__link:hover {
  background: #006cb6;
  color: #fff;
}

.arcPagenation__linkArrow {
  width: 8px;
}

.arcPagenation__item_is_current .page-numbers,
.arcPagenation__item_is_current .arcPagenation__link {
  background: #006cb6;
  color: #fff;
}

.arcPagenation__item_is_dots .page-numbers,
.arcPagenation__item_is_dots .page-numbers:hover {
  background: none;
  color: #006cb6;
}

html {
  font-size: 62.5%;
}

body.is_active {
  overflow: hidden;
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-right: 30px;
  z-index: 5;
}

@media screen and (min-width: 1161px) {
  .header.isScrolled {
    position: fixed;
    width: 100%;
    background-color: #fff;
    padding: 25px 30px 25px 35px;
  }
  .header.isScrolled .header__logo {
    width: 230px;
    -webkit-flex-basis: 230px;
        -ms-flex-preferred-size: 230px;
            flex-basis: 230px;
    height: auto;
  }
  .header.isScrolled .header__logoLink {
    padding-right: 0;
  }
  .header.isScrolled .header__logoImg {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 1160px) {
  .header {
    padding-right: 0;
    position: fixed;
    background-color: #fff;
  }
}

.header_type_low {
  padding: 30px 30px 30px 40px;
}

@media screen and (max-width: 1270px) {
  .header_type_low {
    padding: 0;
    padding-right: 15px;
  }
}

@media screen and (max-width: 1160px) {
  .header_type_low {
    padding-right: 0;
  }
}

.header_type_low .header__logo {
  width: 294px;
  height: auto;
  background: transparent;
}

@media screen and (max-width: 1270px) {
  .header_type_low .header__logo {
    width: 240px;
    height: 100px;
  }
}

@media screen and (max-width: 1160px) {
  .header_type_low .header__logo {
    width: 180px;
    height: auto;
    padding: 15px 0;
  }
}

.header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 1160px) {
  .header__inner {
    padding: 0 0 0 15px;
  }
}

.header__logo {
  width: 370px;
  height: 116px;
  background-color: #fff;
  border-radius: 0 0 20px 0;
}

@media screen and (max-width: 1270px) {
  .header__logo {
    width: 240px;
    height: 100px;
  }
}

@media screen and (max-width: 1160px) {
  .header__logo {
    width: 180px;
    height: auto;
    padding: 15px 0;
  }
}

.header__logoLink {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  padding-right: 10px;
}

.header__logoLink:hover {
  opacity: .75;
}

.header__logoImg {
  width: 294px;
}

@media screen and (max-width: 1270px) {
  .header__logoImg {
    width: 200px;
  }
}

@media screen and (max-width: 1160px) {
  .header__logoImg {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

@media screen and (max-width: 1160px) {
  .header.jsActive .header__inner {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .header.jsActive .gnav {
    display: block;
    position: absolute;
    top: 57px;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 108, 182, 0.97);
    overflow: scroll;
    padding-bottom: 90px;
  }
  .header.jsActive .gnav__list {
    display: block;
  }
  .header.jsActive .gnav__item {
    line-height: 1;
    padding: 0 0;
    border-bottom: 1px solid #fff;
    position: relative;
  }
  .header.jsActive .gnav__item_type_arrow:after {
    content: "";
    background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
    width: 5px;
    height: 9px;
    top: calc(50% - 4.5px);
    right: 30px;
    position: absolute;
  }
  .header.jsActive .gnav__item_type_blank:after {
    content: "";
    background: url(../img/icon_blank_white.svg) no-repeat center center/contain;
    width: 17px;
    height: 12px;
    top: calc(50% - 6px);
    right: 25px;
    position: absolute;
  }
  .header.jsActive .gnav__item_type_contact {
    padding: 25px 0;
  }
  .header.jsActive .gnav__item_type_sub {
    position: relative;
  }
  .header.jsActive .gnav__item_type_sub:after {
    content: "";
    background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
    width: 5px;
    height: 9px;
    top: calc(50% - 4.5px);
    right: 30px;
    position: absolute;
  }
  .header.jsActive .gnav__item_type_sub .gnav__link {
    font-size: 1.3rem;
    font-weight: normal;
  }
  .header.jsActive .gnav__link {
    color: #fff;
    font-weight: bold;
    padding: 25px 25px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .header.jsActive .gnav__link_type_contact {
    width: 100%;
    background: #fff;
    border-radius: 6px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #006cb6;
    font-weight: bold;
    width: calc(100% - 50px);
    height: 45px;
    padding: 10px;
    margin-left: auto;
    margin-right: auto;
  }
  .header.jsActive .gnav__link_type_contact::after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
    width: 5px;
    height: 9px;
    top: calc(50% - 4.5px);
    right: 15px;
  }
  .header.jsActive .hum {
    background-color: #006cb6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .header.jsActive .hum__inner {
    width: 30px;
    height: 17px;
  }
  .header.jsActive .hum__bar {
    background-color: #fff;
  }
  .header.jsActive .hum__bar:nth-of-type(1) {
    top: calc(50% - .5px);
    -webkit-transform: rotate(30deg);
            transform: rotate(30deg);
  }
  .header.jsActive .hum__bar:nth-of-type(2) {
    opacity: 0;
  }
  .header.jsActive .hum__bar:nth-of-type(3) {
    top: calc(50% - .5px);
    -webkit-transform: rotate(-30deg);
            transform: rotate(-30deg);
  }
  .header.jsActive .toggleIcon {
    width: 40px;
    height: 40px;
    display: block;
    position: absolute;
    top: calc(13px);
    right: 13px;
    z-index: 3;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header.jsActive .toggleIcon__inner {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    border: 1px solid #fff;
    position: relative;
  }
  .header.jsActive .toggleIcon__inner:after {
    content: "";
    display: block;
    width: 8px;
    height: 1px;
    position: absolute;
    top: calc(50% - .5px);
    left: calc(50% - 4px);
    background-color: #fff;
  }
  .header.jsActive .toggleIcon__inner:before {
    content: "";
    display: block;
    height: 8px;
    width: 1px;
    position: absolute;
    top: calc(50% - 4px);
    left: calc(50% - .5px);
    background-color: #fff;
  }
  .header.jsActive .toggleIcon.jsActive .toggleIcon__inner:before {
    opacity: 0;
  }
  .header.jsActive .subList {
    position: static;
    background-color: rgba(58, 133, 175, 0.97);
  }
}

.gnav {
  margin-left: auto;
}

@media screen and (max-width: 1160px) {
  .gnav {
    display: none;
  }
}

.gnav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.gnav__item {
  position: relative;
}

@media screen and (min-width: 1161px) {
  .gnav__item-contact--sp {
    display: none;
  }
}
@media screen and (max-width: 1160px) {
  .gnav__item-contact--pc {
    display: none;
  }
}


.gnav__item.jsShow .gnav__link_type_toggle {
  background-color: #006cb6;
  color: #fff;
}

@media screen and (max-width: 1160px) {
  .gnav__item.jsShow .gnav__link_type_toggle {
    background: none;
  }
}

.gnav__item_type_sub {
  display: none;
}

@media screen and (max-width: 1160px) {
  .gnav__item_type_sub {
    display: block;
  }
}

@media screen and (min-width: 1161px) {
  .gnav__item_type_blank .gnav__link {
    padding-right: calc(1em + 26px);
    position: relative;
  }
  .gnav__item_type_blank .gnav__link:after {
    content: "";
    background: url(../img/icon_blank_blue.svg) no-repeat center center/contain;
    width: 20px;
    height: 14px;
    position: absolute;
    top: calc(50% - 8px);
    right: 1em;
  }
}

.gnav__link {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .gnav__link {
    padding: 20px 1em;
  }
  .gnav__link:hover {
    color: #006cb6;
  }
}

.gnav__link_type_contact {
  background: #2ea7e0;
  background: linear-gradient(-45deg, #2ea7e0 0%, #006cb6 100%);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  width: 170px;
  height: 47px;
  border-radius: 47px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  margin-left: 10px;
}
span.gnav__link_type_contact {
  cursor: default;
}

@media screen and (min-width: 768px) {
  .gnav__item_type_contact:hover .gnav__link_type_contact,
  .gnav__link_type_contact:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background: transparent;
    color: #006cb6;
    border: 1px solid #006cb6;
  }
}

@media screen and (max-width: 1160px) {
  .gnav__link_type_contact {
    margin-left: 0;
  }
}

.gnav .subList {
  display: none;
  border-top: 1px solid #fff;
  background-color: #006cb6;
  margin-bottom: -1px;
  position: absolute;
  left: 0;
  top: 0;
  min-width: 240px;
  top: 40px;
  left: 0;
}

.gnav .subList.jsShow {
  display: block;
  min-width: 240px;
  top: 40px;
  left: 0;
}

.gnav .subList__item {
  border-bottom: 1px solid #fff;
}

.gnav .subList__link {
  font-size: 1.4rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  text-decoration: none;
  position: relative;
  padding: 15px 20px 15px 20px;
}

@media screen and (max-width: 768px) {
  .gnav .subList__link {
    padding: 20px 25px 20px 40px;
  }
}

.gnav .subList__link_type_under {
  padding-left: 35px;
}

@media screen and (max-width: 768px) {
  .gnav .subList__link_type_under {
    padding-left: 55px;
  }
}

.gnav .subList__link::after {
  content: "";
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  width: 5px;
  height: 9px;
  top: calc(50% - 4.5px);
  right: 15px;
  position: absolute;
}

@media screen and (max-width: 768px) {
  .gnav .subList__link::after {
    right: 30px;
  }
}

@media screen and (min-width: 768px) {
  .gnav .subList__link:hover {
    opacity: .7;
  }
}

@media screen and (min-width: 1161px) {
  .gnav .gnav__item:hover .subList {
    display: block;
  }
  .gnav .subList {
    background-color: #fff;
    border: 1px solid #eaeaea;
    border-radius: 4px;
    min-width: 200px;
  }
  .gnav .subList__item {
    border-bottom: 1px solid #eaeaea;
  }
  .gnav .subList__item:last-child {
    border: none;
  }
  .gnav .subList__link {
    padding: 14px 15px;
    color: #222;
  }
  .gnav .subList__link_type_under {
    padding: 14px 15px 14px calc(15px + 1em);
  }
  .gnav .subList__link:hover {
    color: #006cb6;
    opacity: 1;
  }
  .gnav .gnav__item_type_contact {
    padding: 20px 0;
    margin-top: -20px;
    margin-bottom: -20px;
  }
  .gnav .gnav__item_type_contact .subList {
    min-width: 300px;
    left: inherit;
    right: 0;
    top: 66px;
  }

}

.hum {
  display: none;
}

@media screen and (max-width: 1160px) {
  .hum {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 70px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.hum__inner {
  width: 40px;
  height: 25px;
  position: relative;
}

.hum__bar {
  display: block;
  width: 100%;
  background-color: #323333;
  height: 1px;
  position: absolute;
  left: 0;
}

.hum__bar:nth-of-type(1) {
  top: 0;
}

.hum__bar:nth-of-type(1) {
  top: calc(50% - .5px);
}

.hum__bar:nth-of-type(3) {
  top: 100%;
}

main {
  display: block;
}

@media screen and (max-width: 768px) {
  main {
    padding-top: 59px;
  }
}

main.low {
  border-bottom: 1px solid #e8eaf2;
}

.rectuitArea {
  background: url(../img/img_recruit_bg.png?230802) no-repeat center center/cover;
  height: 38.8vw;
}

@media screen and (max-width: 768px) {
  .rectuitArea {
    height: auto;
  }
}

.rectuitArea__texts {
  background-color: #006cb6;
  max-width: 38.57vw;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

@media screen and (max-width: 768px) {
  .rectuitArea__texts {
    max-width: 100%;
  }
}

.rectuitArea__textsInner {
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 768px) {
  .rectuitArea__textsInner {
    padding: 25px 25px 30px 25px;
    max-width: none;
  }
}

.rectuitArea__ttl {
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .rectuitArea__ttl {
    margin-bottom: 15px;
  }
}

.rectuitArea__ttlEn {
  display: block;
  font-size: 6.6rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  text-shadow: 1px 1px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 768px) {
  .rectuitArea__ttlEn {
    font-size: 3.3rem;
  }
}

.rectuitArea__ttlJp {
  display: block;
  font-size: 2.0rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  text-shadow: 1px 1px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 768px) {
  .rectuitArea__ttlJp {
    font-size: 1.2rem;
  }
}

.rectuitArea__desc {
  color: #fff;
  line-height: 1.895;
  margin-bottom: 25px;
  text-shadow: 1px 1px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 768px) {
  .rectuitArea__desc {
    line-height: 1.75;
    margin-bottom: 15px;
  }
}

.rectuitArea__bt {
  margin-left: auto;
  margin-right: auto;
  width: 212px;
  background: #2ea7e0;
  background: linear-gradient(-45deg, #2ea7e0 0%, #006cb6 100%);
  height: 60px;
  border: 1px solid #006cb6;
}

@media screen and (min-width: 768px) {
  .rectuitArea__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background: #fff;
    color: #006cb6;
  }
  .rectuitArea__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

@media screen and (max-width: 768px) {
  .rectuitArea__bt {
    width: 206px;
    height: 45px;
  }
}

.footer__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  padding-top: 105px;
  padding-bottom: 110px;
}

@media screen and (max-width: 768px) {
  .footer__inner {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

.footer__info {
  width: 440px;
  -webkit-flex-basis: 440px;
      -ms-flex-preferred-size: 440px;
          flex-basis: 440px;
  padding-right: 100px;
}

@media screen and (max-width: 1160px) {
  .footer__info {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.footer__logo {
  width: 340px;
  margin-bottom: 55px;
}

.footer__logo:hover {
  opacity: .75;
}

@media screen and (max-width: 768px) {
  .footer__logo {
    max-width: 200px;
    margin-bottom: 40px;
  }
}

.footer__name {
  font-weight: bold;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .footer__name {
    margin-bottom: 15px;
  }
}

.footer__company {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .footer__company {
    margin-bottom: 35px;
  }
}

.footer__companyDl {
  line-height: 1.895;
}

@media screen and (max-width: 1160px) {
  .footer__companyDl {
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .footer__companyDl {
    line-height: 1.61;
    font-size: 1.3rem;
  }
}

.footer__companyDl:first-of-type {
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .footer__companyDl:first-of-type {
    margin-bottom: 1.5em;
  }
}

.footer__companyTel {
  color: inherit;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .footer__companyTel {
    pointer-events: none;
  }
}

.footer__nav {
  width: calc(100% - 440px);
}

.footer__bt {
  width: 213px;
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #006cb6;
  border-radius: 6px;
  color: #006cb6;
  text-decoration: none;
  position: relative;
  -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.12);
          box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.12);
}

@media screen and (max-width: 768px) {
  .footer__bt {
    -webkit-box-shadow: 2.5px 2.5px 2.5px rgba(0, 0, 0, 0.12);
            box-shadow: 2.5px 2.5px 2.5px rgba(0, 0, 0, 0.12);
    width: 206px;
    height: 45px;
  }
}

.footer__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .footer__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.footer__bt:hover {
  background-color: #006cb6;
  color: #fff;
}

.footer__bt:hover:after {
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
}

.footer__btm {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  justify-content: space-between;
  background-color: #006cb6;
  color: #fff;
  height: 89px;
  padding: 10px 40px;
}

@media screen and (max-width: 768px) {
  .footer__btm {
    justify-content: center;
  }
}

@media screen and (max-width: 768px) {
  .fBNav__itms {
    display: none;
  }
}

.fBNav__itm {
  display: inline;
  margin-right: 1em;
}

.fBNav__itmLink {
  color: #fff;
  font-size: 1.2rem;
  text-decoration: none;
}
.fBNav__itmLink:hover {
  text-decoration: underline;
}

.footer__copy {
  color: #fff;
  font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
  .footer__copy {
    text-align: center;
  }
}

.fNav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 109px;
  font-size: 1.4rem;
}

@media screen and (max-width: 1160px) {
  .fNav {
    display: none;
  }
}

.fNav__row {
  padding-right: 50px;
  padding-left: 50px;
  border-right: 1px solid #efefef;
  line-height: 2.5;
}

.fNav__row:first-of-type {
  padding-left: 0;
}

.fNav__row:last-of-type {
  padding-right: 0;
  border-right: none;
}

.fNav__itm {
  font-weight: bold;
}

.fNav__itm-mt {
  margin-top: 2.5em;
}

.fNav__itmLink {
  text-decoration: none;
  color: inherit;
  font-weight: bold;
}

a.fNav__itmLink:hover {
  text-decoration: underline;
}

.fNav__citem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.fNav__citem:before {
  content: "-";
  display: block;
  margin-right: .5em;
}

.fNav__citem_page_under {
  padding-left: .5em;
}

.fNav__clink {
  color: inherit;
  text-decoration: none;
}

.fNav__clink:hover {
  text-decoration: underline;
}

.fNav__link_blank {
  padding-right: 26px;
  position: relative;
}
.fNav__link_blank:after {
  content: "";
  background: url(../img/icon_blank_blue.svg) no-repeat center center/contain;
  width: 20px;
  height: 14px;
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
}

.footer__bnr {
  background: #f7f8fc;
  padding: 60px 0 55px; }
  .fBnr__itms {
    margin: -10px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .fBnr__itm {
    width: calc(25% - 20px);
    margin: 10px;
  }
  .fBnr__itmLink {
    color: inherit;
    text-decoration: none;
  }
  .fBnr__itmLink:hover {
    text-decoration: underline;
  }
  .fBnr__itmLink:hover .fBnr__itmFig {
    opacity: .7;
  }
  .fBnr__itmFig {
    width: 100%;
    height: auto;
    font-size: 0;
    border-radius: 10px;
    border: 1px solid #003194;
    overflow: hidden;
  }
  .fBnr__itmImg {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .fBnr__itmTxt {
    margin-top: 6px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
@media screen and (max-width: 768px) {
  .footer__bnr {
    padding: 50px 0 45px;
  }
  .fBnr__itms {
    margin: -10px;
    justify-content: center;
  }
  .fBnr__itm {
    width: 180px;
    margin: 10px;
  }
  .fBnr__itmFig {
    border-radius: 5px;
  }
  .fBnr__itmTxt {
    margin-top: 6px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
}

.error404 {
  margin-bottom: 0;
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .error404 {
    padding-bottom: 45px;
  }
}

.error404__inner {
  overflow: hidden;
}

.error404 .lowPage__header {
  background: url(../img/404/bg_key.jpg) no-repeat center center/cover;
}

.error404__ttl {
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .error404__ttl {
    font-size: 1.9rem;
    margin-bottom: 10px;
    text-align: left;
  }
}

.error404__para {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .error404__para {
    text-align: left;
  }
}

.company {
  padding-bottom: 135px;
}

@media screen and (max-width: 768px) {
  .company {
    padding-bottom: 45px;
  }
}

.company__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .company__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .company__ttl br {
    display: none;
  }
}

.company__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .company__desc {
    line-height: 1.75;
    margin-bottom: 45px;
  }
}

.company__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -15px -35px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .company__list {
    margin: -10px -7.5px;
  }
}

.company__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 15px 35px;
}

@media screen and (max-width: 768px) {
  .company__item {
    width: 50%;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    padding: 10px 7.5px;
  }
}

.company__link {
  color: inherit;
  text-decoration: none;
}

.company__link:hover .company__fig {
  opacity: .7;
}

.company__link:hover .company__heading {
  text-decoration: underline;
}

.company__fig {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .company__fig {
    margin-bottom: 10px;
  }
}

.company__img {
  border-radius: 6px;
}

.company__img_type_border {
  border: 1px solid #dddddd;
}

@media screen and (max-width: 768px) {
  .company__heading {
    font-size: 1.4rem;
  }
}

.credo {
  padding-bottom: 135px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .credo {
    padding-bottom: 45px;
  }
}

.credo__ttl {
  font-size: 7.2rem;
  color: #006cb6;
  margin-left: -1em;
  letter-spacing: .25em;
  line-height: 1;
  margin-bottom: 45px;
}

@media screen and (max-width: 1160px) {
  .credo__ttl {
    margin-left: -30px;
  }
}

@media screen and (max-width: 768px) {
  .credo__ttl {
    font-size: 4.0rem;
    margin-left: 0;
    letter-spacing: .1em;
    margin-bottom: 20px;
  }
}

.credo__intro {
  line-height: 1.875;
}

.credo__sign {
  margin-top: 50px;
  text-align: right;
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .credo__sign {
    margin-top: 30px;
    margin-bottom: 45px;
  }
}

.credo__signItem {
  line-height: 2;
}

.credo__signName {
  font-size: 1.8rem;
}

.credoSection {
  margin-bottom: 90px;
}

@media screen and (max-width: 768px) {
  .credoSection {
    margin-bottom: 45px;
  }
}

.credoSection:last-of-type {
  margin-bottom: 0;
}

.credoSection__ttl {
  font-size: 2.2rem;
  color: #006cb6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: -49px;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .credoSection__ttl {
    font-size: 2.0rem;
    margin-left: -25px;
    margin-bottom: 20px;
  }
}

.credoSection__ttl:before {
  content: "";
  width: 34px;
  height: 1px;
  background-color: #006cb6;
  display: block;
  margin-right: 15px;
}

@media screen and (max-width: 768px) {
  .credoSection__ttl:before {
    width: 15px;
    margin-right: 10px;
  }
}

.credoSection__subTtl {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .credoSection__subTtl {
    font-size: 2.0rem;
    margin-bottom: 15px;
  }
}

.credoSection__desc {
  line-height: 1.875;
}

.credoSection__sub {
  margin-bottom: 1.5em;
}

.credoSection__sub:last-of-type {
  margin-bottom: 0;
}

.credoSection__boldTtl {
  font-weight: bold;
  line-height: 1.875;
}

.development {
  margin-bottom: 0;
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .development {
    padding-bottom: 45px;
  }
}

.development__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .development__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .development__ttl br {
    display: none;
  }
}

.development__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .development__desc {
    line-height: 1.75;
    margin-bottom: 45px;
    text-align: left;
  }
}

.developmentProduct {
  margin-bottom: 170px;
}

@media screen and (max-width: 768px) {
  .developmentProduct {
    margin-bottom: 45px;
  }
}

.developmentProduct__ttl {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 25px;
  padding-top: 25px;
  border-top: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .developmentProduct__ttl {
    font-size: 1.8rem;
    padding-top: 20px;
    margin-bottom: 20px;
  }
}

.developmentProduct__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .developmentProduct__item {
    margin-bottom: 45px;
  }
}

.developmentProduct__item:last-of-type {
  margin-bottom: 0;
}

.developmentProduct__itemname {
  width: 100%;
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 25px;
  padding-top: 25px;
  border-top: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .developmentProduct__itemname {
    font-size: 1.8rem;
    padding-top: 20px;
    margin-bottom: 20px;
  }
}

.developmentProduct__fig {
  width: 355px;
  -webkit-flex-basis: 355px;
      -ms-flex-preferred-size: 355px;
          flex-basis: 355px;
}

@media screen and (max-width: 768px) {
  .developmentProduct__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    position: relative;
    padding-bottom: 56.25%;
    overflow: hidden;
  }
}

.developmentProduct__img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 768px) {
  .developmentProduct__img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
  }
}

.developmentProduct__details {
  padding-left: 35px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: calc(100% - 355px);
  -webkit-flex-basis: calc(100% - 355px);
      -ms-flex-preferred-size: calc(100% - 355px);
          flex-basis: calc(100% - 355px);
}

@media screen and (max-width: 768px) {
  .developmentProduct__details {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.developmentProduct__dl {
  width: 100%;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-bottom: 1px solid #dcdddd;
}

.developmentProduct__dl:first-of-type {
  border-top: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .developmentProduct__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 15px 0;
  }
  .developmentProduct__fig + .developmentProduct__details .developmentProduct__dl:first-of-type {
    border-top: none;
  }
}

.developmentProduct__dt {
  font-size: 1.6rem;
  font-weight: bold;
  width: 180px;
  padding-right: 15px;
}

@media screen and (max-width: 768px) {
  .developmentProduct__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
    margin-bottom: 10px;
  }
}

.developmentProduct__dd {
  width: calc(100% - 180px);
  -webkit-flex-basis: calc(100% - 180px);
      -ms-flex-preferred-size: calc(100% - 180px);
          flex-basis: calc(100% - 180px);
}

@media screen and (max-width: 768px) {
  .developmentProduct__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.4rem;
    line-height: 1.65;
  }
}

.developmentProduct__alpha {
  margin-top: 60px;
  width: 100%;
  margin-left: 390px;
}

@media screen and (max-width: 768px) {
  .developmentProduct__alpha {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-top: 45px;
    margin-left: 0;
  }
}

.developmentWorks {
  padding-top: 120px;
  padding-bottom: 90px;
  position: relative;
  margin-bottom: 80px;
}

.developmentWorks_type_oem {
  margin-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .developmentWorks {
    padding-top: 60px;
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}

.developmentWorks:after {
  content: "";
  width: calc(50vw - 80px);
  position: absolute;
  height: 100%;
  background-color: #f0f2f9;
  top: 0;
  left: 0;
  border-radius: 0 30px 30px 0;
}

@media screen and (max-width: 768px) {
  .developmentWorks:after {
    width: calc(50vw - 30px);
    border-radius: 0 20px 20px 0;
  }
}

.developmentWorks__inner {
  position: relative;
  z-index: 1;
}

.developmentWorks__ttl {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentWorks__ttl {
    margin-bottom: 25px;
  }
}

.developmentWorks__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: -22px;
  margin-right: -22px;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentWorks__list {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 25px;
  }
}

.developmentWorks__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 0 22px;
}

@media screen and (max-width: 768px) {
  .developmentWorks__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 25px;
  }
  .developmentWorks__item:last-of-type {
    margin-bottom: 0;
  }
}

.developmentWorks__link {
  color: inherit;
  text-decoration: none;
}

.developmentWorks__link:hover {
  text-decoration: underline;
}

.developmentWorks__fig {
  margin-bottom: 15px;
  padding-top: 65.5%;
  position: relative;
  border-radius: 6px;
  overflow: hidden;
}

.developmentWorks__img {
  width: inherit;
  height: inherit;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.developmentWorks__name {
  line-height: 1.75;
}

.developmentWorks__nameCompany {
  font-size: 1.2rem;
  display: block;
  margin-top: .5em;
}
@media screen and (max-width: 768px) {
  .developmentWorks__nameCompany {
    font-size: 1rem;
  }
}

.developmentWorks__bt {
  margin: 0 auto;
}

.developmentInterview {
  padding-top: 120px;
  padding-bottom: 90px;
  position: relative;
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .developmentInterview {
    padding-top: 60px;
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}

.developmentInterview:after {
  content: "";
  width: calc(50vw - 80px);
  position: absolute;
  height: 100%;
  background-color: #f0f2f9;
  top: 0;
  right: 0;
  border-radius: 30px 0 0 30px;
}

@media screen and (max-width: 768px) {
  .developmentInterview:after {
    width: calc(50vw - 30px);
    border-radius: 20px 0 0 20px;
  }
}

.developmentInterview__inner {
  position: relative;
  z-index: 1;
}

.developmentInterview__ttl {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentInterview__ttl {
    margin-bottom: 25px;
  }
}

.developmentInterview__intro {
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentInterview__intro {
    margin-bottom: 25px;
  }
}

.developmentInterview__item {
  width: 100%;
}

.developmentInterview__item + .developmentInterview__item {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .developmentInterview__item + .developmentInterview__item {
    margin-bottom: 25px;
  }
}

.developmentInterview__link {
  width: 100%;
  position: relative;
  color: inherit;
  text-decoration: none;
  word-wrap: break-word;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  background-color: #fff;
  border: 1px solid #efefef;
  border-radius: 6px;
  overflow: hidden;
}

.developmentInterview__link:hover {
  opacity: .7;
}

.developmentInterview__fig {
  width: 336px;
  min-height: 120px;
  overflow: hidden;
  position: relative;
}

@media screen and (max-width: 768px) {
  .developmentInterview__fig {
    width: 100%;
    min-height: none;
    padding-top: 65.5%;
  }
}

.developmentInterview__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.developmentInterview__content {
  width: calc(100% - 336px);
  padding: 20px 30px;
  border-left: 1px solid #efefef;
}

@media screen and (max-width: 768px) {
  .developmentInterview__content {
    width: 100%;
    padding: 20px 20px;
    border-top: 1px solid #efefef;
    border-left: none;
  }
}

.developmentInterview__title {
  margin-bottom: 14px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .developmentInterview__title {
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
}

.developmentInterview__copy {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
}

.developmentInterview__desc {
  margin-top: 20px;
  font-size: 1.4rem;
  line-height: 1.85;
}

@media screen and (max-width: 768px) {
  .developmentInterview__desc {
    margin-top: 15px;
    font-size: 1.4rem;
  }
}

.developmentRecipe {
  padding-top: 120px;
  padding-bottom: 90px;
  position: relative;
  margin-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .developmentRecipe {
    padding-top: 60px;
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}

.developmentRecipe:after {
  content: "";
  width: calc(50vw - 80px);
  position: absolute;
  height: 100%;
  background-color: #f0f2f9;
  top: 0;
  left: 0;
  border-radius: 0 30px 30px 0;
}

@media screen and (max-width: 768px) {
  .developmentRecipe:after {
    width: calc(50vw - 30px);
    border-radius: 0 20px 20px 0;
  }
}

.developmentRecipe__inner {
  position: relative;
  z-index: 1;
}

.developmentRecipe__ttl {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentRecipe__ttl {
    margin-bottom: 25px;
  }
}

.developmentRecipe__intro {
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .developmentRecipe__intro {
    margin-bottom: 25px;
  }
}

.developmentRecipe .recipeList__item {
  width: 25%;
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
}

@media screen and (max-width: 768px) {
  .developmentRecipe .recipeList__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 40px;
  }
  .developmentRecipe .recipeList__item:last-of-type {
    margin-bottom: 0;
  }
}

.developmentRecipe__bt {
  margin: 50px auto 0 auto;
}

.developmentFlow {
  padding-top: 130px;
  padding-bottom: 140px;
  background-color: #f0f2f9;
}

@media screen and (max-width: 768px) {
  .developmentFlow {
    padding: 45px 0;
  }
}

.developmentFlow__ttl {
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .developmentFlow__ttl {
    margin-bottom: 25px;
  }
}

.developmentFlow__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -40px -25px;
  position: relative;
}

@media screen and (max-width: 1000px) {
  .developmentFlow__list {
    margin: 0 0 0 0;
  }
}

.developmentFlow__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 40px 25px;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 1000px) {
  .developmentFlow__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 30px;
  }
  .developmentFlow__item:last-of-type {
    margin-bottom: 0;
  }
}

.developmentFlow__item:after {
  content: "";
  width: 42.2px;
  height: 16.8px;
  background: url(../img/service/development/arrow_flow_01.svg) no-repeat center center/42.2px 16.8px;
  display: block;
  position: absolute;
  right: -10px;
  top: calc(50% - 8.4px);
}

@media screen and (max-width: 1000px) {
  .developmentFlow__item:after {
    top: calc(100% + 10px);
    right: calc(50% - 12.65px);
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    background: url(../img/service/development/arrow_flow_01.svg) no-repeat center center/25.3px 16.8px;
    width: 25.3px;
    height: 8.5px;
  }
}

.developmentFlow__item:nth-of-type(3n):after {
  content: "";
  background: url(../img/service/development/arrow_flow_02.svg) no-repeat center center/cover;
  width: calc(100vw - 60px);
  max-width: 767px;
  height: 86px;
  position: absolute;
  top: calc(100% - 48px);
  left: calc(-580px);
  z-index: 1;
}

@media screen and (max-width: 1000px) {
  .developmentFlow__item:nth-of-type(3n):after {
    content: "";
    top: calc(100% + 10px);
    right: calc(50% - 12.65px);
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    background: url(../img/service/development/arrow_flow_01.svg) no-repeat center center/25.3px 8.5px;
    width: 25.3px;
    height: 8.5px;
    display: block;
    left: auto;
  }
}

.developmentFlow__item:last-of-type:after {
  content: none;
}

.developmentFlow__itemInner {
  background-color: #fff;
  padding: 30px;
  min-height: 224px;
  position: relative;
  z-index: 1;
  -webkit-box-shadow: 1px 1px 0 rgba(53, 63, 132, 0.3);
          box-shadow: 1px 1px 0 rgba(53, 63, 132, 0.3);
  border-radius: 4px;
  height: 100%;
  position: relative;
  z-index: 2;
}

.developmentFlow__head {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}

.developmentFlow__desc {
  line-height: 1.75;
}

.developmentFlow__bt {
  display: block;
  width: 100%;
  text-align: center;
  height: 38px;
  border-radius: 38px;
  position: relative;
  color: #fff;
  text-decoration: none;
  background-color: #006cb6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 5px 10px;
  margin-top: 20px;
  border: 1px solid #006cb6;
}

@media screen and (min-width: 768px) {
  .developmentFlow__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .developmentFlow__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.developmentFlow__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

.developmentFlow__outro {
  line-height: 1.65;
  margin-top: 30px;
}

@media screen and (max-width: 768px) {
  .developmentFlow__outro {
    margin-top: 20px;
    font-size: 1.4rem;
  }
}

.developmentTest {
  padding-top: 140px;
}

@media screen and (max-width: 768px) {
  .developmentTest {
    padding-top: 40px;
  }
}

.developmentTest__ttl {
  margin-bottom: 40px;
}

.developmentTest__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px 0 35px 30px;
  border-radius: 4px;
  -webkit-box-shadow: -1px 1px 0 rgba(53, 63, 132, 0.3);
          box-shadow: -1px 1px 0 rgba(53, 63, 132, 0.3);
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .developmentTest__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 15px 0 20px 15px;
    margin-bottom: 15px;
  }
}

.developmentTest__dl:last-of-type {
  margin-bottom: 0;
}

.developmentTest__dt {
  font-size: 1.8rem;
  font-weight: bold;
  width: 165px;
  -webkit-flex-basis: 165px;
      -ms-flex-preferred-size: 165px;
          flex-basis: 165px;
}

@media screen and (max-width: 768px) {
  .developmentTest__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}

.developmentTest__dd {
  width: calc(100% - 165px);
  -webkit-flex-basis: calc(100% - 165px);
      -ms-flex-preferred-size: calc(100% - 165px);
          flex-basis: calc(100% - 165px);
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .developmentTest__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.4rem;
    line-height: 1.63;
  }
}

.developmentTest__ddCol {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .developmentTest__desc {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.developmentTest__order {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  list-style: none;
  padding: 9px 18px;
  background-color: #f7f8f8;
  border-radius: 43px;
  margin-left: 15px;
}

@media screen and (max-width: 768px) {
  .developmentTest__order {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-top: 10px;
    margin-left: 0;
    padding-left: 10px;
    padding-right: 10px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.developmentTest__orderItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .developmentTest__orderItem {
    font-size: 1.3rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.developmentTest__orderItem:last-of-type:after {
  display: none;
}

.developmentTest__orderItem:after {
  content: "";
  display: block;
  background: url(../img/service/development/arrow_black.svg) no-repeat center center/10.8px 14.2px;
  width: 10.8px;
  height: 14.2px;
  display: block;
  margin: 0 15px;
}

@media screen and (max-width: 768px) {
  .developmentTest__orderItem:after {
    margin: 0 5px;
    width: 5.8px;
    height: 7.3px;
    background-size: 5.8px 7.3px;
    position: relative;
    top: -.5px;
  }
}

.developmentTest__orderNum {
  color: #fff;
  font-size: 1.3rem;
  width: 26px;
  height: 26px;
  background-color: #006cb6;
  border-radius: 26px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 5px;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .developmentTest__orderNum {
    width: 16px;
    height: 16px;
    font-size: 1.0rem;
  }
}

.download {
  padding-bottom: 145px;
}

@media screen and (max-width: 768px) {
  .download {
    padding-bottom: 45px;
  }
}

.download__ttl {
  font-size: 2.8rem;
  font-weight: bold;
  border-left: 2px solid #006cb6;
  padding-left: 20px;
  margin-bottom: 40px;
  line-height: 1.64;
}

@media screen and (max-width: 768px) {
  .download__ttl {
    margin-bottom: 30px;
  }
}

.download__ttl_type_thanks {
  padding-left: 0;
  text-align: center;
  border: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.download__desc {
  line-height: 1.75;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .download__desc {
    text-align: left;
  }
}

.download__intro {
  margin-bottom: 50px;
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .download__intro {
    margin-bottom: 30px;
  }
}

.download__caution {
  margin-top: 55px;
  text-align: center;
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .download__caution {
    margin-top: 25px;
    text-align: left;
  }
}

.download__cautionLink {
  color: #006cb6;
}

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

.download__bts {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .download__bts {
    margin-left: -5px;
    margin-right: -5px;
  }
}

.download__btsItem {
  padding: 0 20px;
}

@media screen and (max-width: 768px) {
  .download__btsItem {
    padding: 0 5px;
  }
}

.download__bt {
  width: 100%;
  max-width: 350px;
  height: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  color: #fff;
  background-color: #006cb6;
  border: 1px solid #006cb6;
  border-radius: 60px;
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
          box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
  margin: 35px auto 0 auto;
  font-weight: bold;
  text-decoration: none;
  font-size: 1.6rem;
}

.download__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (min-width: 768px) {
  .download__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .download__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.download__bt_type_buck {
  background-color: #000;
  width: 220px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  border-color: #000;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .download__bt_type_buck {
    width: 160px;
  }
}

.download__bt_type_buck:after {
  right: auto;
  left: 20px;
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

.download__bt_type_buck:hover {
  color: #000;
  border-color: #000;
}

.download__bt_type_buck:hover::after {
  background-image: url(../img/icon_page_prev.svg);
  -webkit-transform: none;
          transform: none;
}

.download__bt_type_submit {
  width: 220px;
  font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
  .download__bt_type_submit {
    width: 160px;
  }
}

@media screen and (max-width: 768px) {
  .download__bt_type_top {
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .download__bt {
    height: 45px;
    font-size: 1.4rem;
    margin-top: 30px;
  }
  .download__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.downloadForm {
  border-top: 1px solid #dddddd;
}

.downloadForm_type_confirm .downloadForm__dt:after {
  display: none;
}

.downloadForm__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border-bottom: 1px solid #dddddd;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  min-height: 94px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .downloadForm__dl {
    min-height: auto;
  }
}

.downloadForm__dt {
  width: 240px;
  -webkit-flex-basis: 240px;
      -ms-flex-preferred-size: 240px;
          flex-basis: 240px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .downloadForm__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 20px;
  }
}

.downloadForm__dt_type_req:after {
  content: "必須";
  font-size: 1.4rem;
  background-color: #006cb6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 4px;
  color: #fff;
  width: 37px;
  height: 23px;
}

.downloadForm__dd {
  width: calc(100% - 240px);
  -webkit-flex-basis: calc(100% - 240px);
      -ms-flex-preferred-size: calc(100% - 240px);
          flex-basis: calc(100% - 240px);
  padding-left: 20px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .downloadForm__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.downloadForm__input {
  display: block;
  background-color: #f7f7f7;
  padding: 15px 20px;
  border: none;
  width: 100%;
}

.downloadForm__input::-webkit-input-placeholder {
  color: #cccccc;
}

.downloadForm__input::-moz-placeholder {
  color: #cccccc;
}

.downloadForm__input:-ms-input-placeholder {
  color: #cccccc;
}

.downloadForm__input::-ms-input-placeholder {
  color: #cccccc;
}

.downloadForm__input::placeholder {
  color: #cccccc;
}

.downloadForm__input_type_fix {
  color: #000;
  padding: 0;
  border: none;
  background-color: transparent;
  padding: 0;
  outline: none;
}

.dounloadForm__linkRecipe a {
  text-decoration: underline;
  color: #006cb6;
}
.dounloadForm__linkRecipe a:hover {
  text-decoration: none;
}
.dounloadForm__delRecipe {
  font-size: 80%;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  cursor: pointer;
  text-decoration: underline;
  color: #006cb6;
}
.dounloadForm__delRecipe:hover {
  text-decoration: none;
}

.example {
  padding-bottom: 135px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .example {
    padding-bottom: 45px;
  }
}

.example__pager {
  font-size: 1.4rem;
}

.example__pager_type_ct {
  margin-top: 25px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .example__pager_type_ct {
    margin-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .oem_example__pagenation,
  .example__pagenation {
    margin-top: 45px;
  }
}

.exampleList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -15px -22px;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .exampleList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -10px -7.5px;
  }
}

.exampleList__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 15px 22px;
}

@media screen and (max-width: 768px) {
  .exampleList__item {
    width: 50%;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    padding: 10px 7.5px;
  }
  .exampleList__item:last-of-type {
    margin-bottom: 0;
  }
}

.exampleList__link {
  color: inherit;
  text-decoration: none;
}

.exampleList__link:hover .exampleList__fig {
  opacity: .75;
}

.exampleList__link:hover .exampleList__ttl {
  text-decoration: underline;
}

.exampleList__fig {
  margin-bottom: 15px;
  padding-top: 65.5%;
  position: relative;
  border-radius: 6px;
  overflow: hidden;
}

.exampleList__img {
  width: inherit;
  height: inherit;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.exampleList__ttl {
  line-height: 1.75;
}
.exampleList__ttlName {
  font-size: 1.2rem;
  display: block;
  margin-top: .5em;
}
@media screen and (max-width: 768px) {
  .exampleList__ttl {
    font-size: 1.4rem;
    line-height: 1.65;
  }
  .exampleList__ttlName {
    font-size: 1rem;
  }
}

.exampleList__data {
  display: none;
}

.exampleModal {
  background-color: rgba(0, 0, 0, 0.85);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 45px;
  display: none;
}

.exampleModal.jsActive {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .exampleModal {
    padding: 25px;
  }
}

.exampleModal__content {
  position: relative;
  z-index: 4;
}

@media screen and (max-width: 768px) {
  .exampleModal__content {
    padding-left: 0;
    padding-right: 0;
  }
}

.exampleModal__inner {
  background-color: #fff;
  max-width: 700px;
  padding: 40px 40px 30px 40px;
  position: relative;
  z-index: 5;
  max-height: calc(100vh - 80px);
  overflow: scroll;
}

@media screen and (max-width: 768px) {
  .exampleModal__inner {
    max-height: calc(100vh - 50px);
    overflow: scroll;
    position: static;
    padding: 20px 20px 75px 20px;
  }
}

.exampleModal__fig {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .exampleModal__fig {
    margin-bottom: 10px;
  }
}

.exampleModal__img {
  border-radius: 6px;
  width: 100%;
  height: auto;
}

.exampleModal__name {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.65;
}

@media screen and (max-width: 768px) {
  .exampleModal__name {
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
}

.exampleModal__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  border-bottom: 1px solid #dcdddd;
  padding: 15px 0;
}

.exampleModal__dl:first-of-type {
  border-top: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .exampleModal__dl {
    padding: 10px 0;
  }
}

.exampleModal__dt {
  width: 100px;
  -webkit-flex-basis: 100px;
      -ms-flex-preferred-size: 100px;
          flex-basis: 100px;
  padding-right: 15px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .exampleModal__dt {
    font-size: 1.4rem;
    width: 80px;
  }
}

.exampleModal__dd {
  width: calc(100% - 100px);
  -webkit-flex-basis: calc(100% - 100px);
      -ms-flex-preferred-size: calc(100% - 100px);
          flex-basis: calc(100% - 100px);
}

@media screen and (max-width: 768px) {
  .exampleModal__dd {
    font-size: 1.4rem;
    width: calc(100% - 80px);
    -webkit-flex-basis: calc(100% - 80px);
        -ms-flex-preferred-size: calc(100% - 80px);
            flex-basis: calc(100% - 80px);
  }
}

.exampleModal__desc {
  margin-top: 20px;
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .exampleModal__desc {
    font-size: 1.4rem;
    line-height: 1.65;
  }
}

@media screen and (max-width: 768px) and (max-width: 768px) {
  .exampleModal__desc {
    margin-top: 15px;
  }
}

.exampleModal__desc a {
  color: #006cb6;
  text-decoration: underline;
}
.exampleModal__desc a:hover {
  text-decoration: none;
}

.exampleModal__caution {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem;
  line-height: 1.71;
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .exampleModal__caution {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 1.65;
  }
}

.exampleModal__caution:before {
  content: "※";
}

.exampleModal__cautionLink {
  color: #006cb6;
  text-decoration: underline;
}

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

.exampleModal__close {
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background-color: #006cb6;
  position: absolute;
  top: -25px;
  right: 5px;
  z-index: 5;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .exampleModal__close {
    top: -18px;
    right: -18px;
    width: 36px;
    height: 36px;
  }
}

.exampleModal__bar {
  display: block;
  width: 26px;
  height: 2px;
  border-radius: 2px;
  background-color: #fff;
  position: absolute;
  left: calc(50% - 13px);
  top: calc(50% - 1px);
}

@media screen and (max-width: 768px) {
  .exampleModal__bar {
    width: 20px;
    left: calc(50% - 10px);
  }
}

.exampleModal__bar:nth-of-type(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.exampleModal__bar:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.exampleModal__bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 3;
}

.history {
  margin-bottom: 0;
}

.history__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .history__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .history__ttl br {
    display: none;
  }
}

.history__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .history__desc {
    line-height: 1.75;
    margin-bottom: 45px;
  }
}

.history__list {
  margin-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .history__list {
    margin-bottom: 45px;
  }
}

.history__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px 0;
  border-bottom: 1px solid #ddd;
}

.history__dl:first-of-type {
  border-top: 1px solid #ddd;
}

@media screen and (max-width: 768px) {
  .history__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 20px 0;
  }
}

.history__dt {
  font-size: 1.6rem;
  font-weight: bold;
  width: 300px;
  -webkit-flex-basis: 300px;
      -ms-flex-preferred-size: 300px;
          flex-basis: 300px;
  padding-right: 30px;
}

@media screen and (max-width: 768px) {
  .history__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
}

.history__dd {
  width: calc(100% - 300px);
  -webkit-flex-basis: calc(100% - 300px);
      -ms-flex-preferred-size: calc(100% - 300px);
          flex-basis: calc(100% - 300px);
}

@media screen and (max-width: 768px) {
  .history__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

.historyDetails {
  padding-top: 125px;
  background: #f0f2f9;
  padding-bottom: 145px;
}

@media screen and (max-width: 768px) {
  .historyDetails {
    padding-top: 45px;
    padding-bottom: 45px;
  }
}

.historyDetails__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .historyDetails__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .historyDetails__ttl br {
    display: none;
  }
}

.historyDetails__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  padding: 40px;
  margin-bottom: 20px;
  border-radius: 6px;
}

.historyDetails__item:last-of-type {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .historyDetails__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 25px 25px 20px 25px;
  }
}

.historyDetails__fig {
  width: 262px;
  -webkit-flex-basis: 262px;
      -ms-flex-preferred-size: 262px;
          flex-basis: 262px;
}

@media screen and (max-width: 768px) {
  .historyDetails__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 20px;
  }
}

.historyDetails__texts {
  width: calc(100% - 262px);
  -webkit-flex-basis: calc(100% - 262px);
      -ms-flex-preferred-size: calc(100% - 262px);
          flex-basis: calc(100% - 262px);
  padding-left: 40px;
}

@media screen and (max-width: 768px) {
  .historyDetails__texts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.historyDetails__head {
  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .historyDetails__head {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.historyDetails__desc {
  line-height: 1.9375;
}

@media screen and (max-width: 768px) {
  .historyDetails__desc {
    font-size: 1.4rem;
    line-height: 1.63;
  }
}

.topMv {
  height: 100vh;
  position: relative;
}

@media screen and (max-width: 768px) {
  .topMv {
    height: calc(100vh - 70px - 57px);
  }
}

.topMv__inner {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding-left: 80px;
}

@media screen and (max-width: 768px) {
  .topMv__inner {
    padding-left: 25px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-top: 25px;
  }
}

.topMv__ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.topMv__ttl.jsActive .topMv__ttlTxt:nth-of-type(1) {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  -webkit-transition: -webkit-transform .5s .5s;
  transition: -webkit-transform .5s .5s;
  transition: transform .5s .5s;
  transition: transform .5s .5s, -webkit-transform .5s .5s;
}

.topMv__ttl.jsActive .topMv__ttlTxt:nth-of-type(2) {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  -webkit-transition: -webkit-transform .5s 1.25s;
  transition: -webkit-transform .5s 1.25s;
  transition: transform .5s 1.25s;
  transition: transform .5s 1.25s, -webkit-transform .5s 1.25s;
}

.topMv__ttlTxt {
  font-size: 3.6rem;
  font-weight: bold;
  color: #006cb6;
  background-color: #fff;
  margin: 0 5px;
  display: block;
  padding: 10px 5px 10px 0;
  -webkit-transform: translateY(-110%);
          transform: translateY(-110%);
}

@media screen and (max-width: 768px) {
  .topMv__ttlTxt {
    font-size: 3.0rem;
  }
}

.topMv__bn {
  width: 227px;
  position: absolute;
  right: 45px;
  bottom: 45px;
  z-index: 2;
}

.topMv__bn:hover {
  opacity: .75;
}

@media screen and (max-width: 768px) {
  .topMv__bn {
    width: 80px;
    right: 25px;
    bottom: 25px;
    width: 80px;
  }
}

.topMv__thumbnails {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.topMv__thumbnails .slick-list, .topMv__thumbnails .slick-track, .topMv__thumbnails .slick-slide, .topMv__thumbnails .slick-slide > div, .topMv__thumbnails .topMv__thumbnailsItem {
  height: 100%;
}

.topMv__thumbnails .topMv__thumbnailsItem {
  position: relative;
}

.topMv__thumbnails .topMv__thumbnailsImg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.topMv .slick-slide img.pcnon {
  display: none;
}

@media screen and (max-width: 768px) {
  .topMv .slick-slide img.pcnon {
    display: block;
  }
}

.topMv .slick-slide img.spnon {
  display: block;
}

@media screen and (max-width: 768px) {
  .topMv .slick-slide img.spnon {
    display: none;
  }
}

.topNews {
  position: relative;
  top: -80px;
  z-index: 2;
  margin-bottom: -80px;
  overflow: hidden;
}

@media screen and (max-width: 1230px) {
  .topNews {
    top: 0;
    margin-bottom: 0;
  }
}

.topNews:after {
  content: "";
  width: calc(50% - 550px);
  height: 100%;
  background-color: #006cb6;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@media screen and (max-width: 1160px) {
  .topNews:after {
    display: none;
  }
}

.topNews__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 80px;
}

@media screen and (max-width: 1160px) {
  .topNews__inner {
    height: 70px;
    padding-left: 0;
    padding-right: 0;
  }
}

.topNews__ttl {
  background-color: #006cb6;
  color: #fff;
  font-size: 2.2rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding-right: 40px;
  height: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1160px) {
  .topNews__ttl {
    padding: 0 20px;
    width: 120px;
    -webkit-flex-basis: 120px;
        -ms-flex-preferred-size: 120px;
            flex-basis: 120px;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 768px) {
  .topNews__ttl {
    font-size: 1.6rem;
    width: 85px;
    -webkit-flex-basis: 85px;
        -ms-flex-preferred-size: 85px;
            flex-basis: 85px;
  }
}

.topNews__list {
  width: 700px;
  padding-left: 30px;
  background-color: #f7f8fc;
  border-radius: 0 6px 0 0;
  height: 100%;
  padding-right: 60px;
}

@media screen and (max-width: 768px) {
  .topNews__list {
    width: calc(100% - 85px);
    -webkit-flex-basis: calc(100% - 85px);
        -ms-flex-preferred-size: calc(100% - 85px);
            flex-basis: calc(100% - 85px);
    padding-left: 15px;
    border-radius: 0 0 0 0;
    padding-right: 50px;
  }
}

.topNews__item {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .topNews__item {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.topNews__link {
  color: inherit;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 100%;
}

@media screen and (max-width: 768px) {
  .topNews__link {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topNews a.topNews__link:hover .topNews__head {
  text-decoration: underline;
}

.topNews__date {
  margin-right: 1em;
}

@media screen and (max-width: 768px) {
  .topNews__date {
    font-size: 1.2rem;
    margin-right: 10px;
  }
}

.topNews__cat {
  font-size: 1.4rem;
  color: #006cb6;
  min-width: calc(7em + 20px);
  padding: 5px;
  border: 1px solid #006cb6;
  border-radius: 20px;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .topNews__cat {
    font-size: 1.0rem;
    padding: 3.5px;
    min-width: calc(7em + 13px);
  }
}

.topNews__head {
  padding-left: 1em;
  max-width: 400px;
}

@media screen and (max-width: 768px) {
  .topNews__head {
    font-size: 1.4rem;
    padding-left: 0;
    width: 100%;
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.topNews .slick-slider {
  display: none;
}

.topNews .slick-slider.slick-initialized {
  display: block;
}

.topNews .slick-arrow {
  position: absolute;
  right: 25px;
  z-index: 2;
  border: none;
  background: none;
  width: auto;
  height: auto;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  text-indent: -99999px;
  background: url(../img/icon_slider_arrow.svg) no-repeat center center/contain;
  width: 8.4px;
  height: 5px;
  display: block;
}

@media screen and (max-width: 768px) {
  .topNews .slick-arrow {
    width: 12px;
    height: 5px;
  }
}

.topNews .slick-prev {
  top: calc(50% - 10px);
}

@media screen and (max-width: 768px) {
  .topNews .slick-prev {
    top: calc(50% - 12px);
  }
}

.topNews .slick-next {
  bottom: calc(50% - 10px);
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
  .topNews .slick-next {
    bottom: calc(50% - 12px);
  }
}

.topNews .slick-track {
  height: 100%;
}

.topNews .slick-list {
  height: 100%;
}

.topNews .slick-slide {
  height: 100%;
}

.topNews .slick-slide > div {
  height: 100%;
}

.topCompany {
  padding-top: 145px;
  margin-bottom: 135px;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .topCompany {
    padding-top: 45px;
    margin-bottom: 45px;
  }
}

.topCompany__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 1000px) {
  .topCompany__inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topCompany__txts {
  width: 520px;
  -webkit-flex-basis: 520px;
      -ms-flex-preferred-size: 520px;
          flex-basis: 520px;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  padding-left: 60px;
  position: relative;
}

@media screen and (max-width: 1000px) {
  .topCompany__txts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.topCompany__txts:after {
  content: "";
  position: absolute;
  display: block;
  width: 360px;
  height: 532px;
  background: url(../img/bg_section_01.svg) no-repeat center center/cover;
  right: -155px;
  top: -90px;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .topCompany__txts:after {
    width: 218px;
    height: 323px;
    top: -25px;
    right: -63px;
  }
}

@media screen and (max-width: 1000px) {
  .topCompany__bt {
    margin-left: auto;
    margin-right: auto;
  }
}

.topCompany__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .topCompany__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
  }
}

@media screen and (max-width: 1000px) {
  .topCompany__ttl br {
    display: none;
  }
}

.topCompany__desc {
  line-height: 1.875;
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  .topCompany__desc {
    font-size: 1.6rem;
    line-height: 1.75;
    margin-bottom: 25px;
  }
}

.topCompany__fig {
  margin-left: calc(-51.8vw + 550px);
  width: 51.8vw;
  -webkit-flex-basis: 51.8vw;
      -ms-flex-preferred-size: 51.8vw;
          flex-basis: 51.8vw;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

@media screen and (max-width: 1000px) {
  .topCompany__fig {
    display: none;
  }
  .topCompany__fig_type_sp {
    display: block !important;
    margin-bottom: 30px;
  }
}

.topCompany__img {
  width: 100%;
}

.topService {
  margin-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .topService {
    margin-bottom: 45px;
  }
}

.topService__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .topService__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
  }
}

.topService__col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

@media screen and (max-width: 1000px) {
  .topService__col {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topService__txts {
  width: 329px;
  -webkit-flex-basis: 329px;
      -ms-flex-preferred-size: 329px;
          flex-basis: 329px;
  padding-right: 55px;
}

@media screen and (max-width: 1000px) {
  .topService__txts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}

.topService__desc {
  line-height: 1.875;
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  .topService__desc {
    margin-bottom: 25px;
    line-height: 1.75;
  }
}

.topService__bt {
  position: absolute;
  left: 0;
  bottom: 40px;
}

@media screen and (max-width: 1060px) {
  .topService__bt {
    bottom: 0;
  }
}

@media screen and (max-width: 1000px) {
  .topService__bt {
    position: static;
    margin-left: auto;
    margin-right: auto;
    margin-top: 25px;
  }
}

.topService__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: -5px;
  margin-right: -5px;
  width: calc(100% - 329px);
  -webkit-flex-basis: calc(100% - 329px);
      -ms-flex-preferred-size: calc(100% - 329px);
          flex-basis: calc(100% - 329px);
}

@media screen and (max-width: 1000px) {
  .topService__list {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

@media screen and (max-width: 768px) {
  .topService__list {
    margin: 0 0 0 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topService__item {
  padding: 0 5px;
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
}

@media screen and (max-width: 768px) {
  .topService__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 25px;
    padding: 0;
  }
  .topService__item:last-of-type {
    margin-bottom: 0;
  }
}

.topService__link {
  display: block;
  position: relative;
  color: inherit;
  text-decoration: none;
}

.topService__link:hover {
  opacity: .7;
}

.topService__fig {
  position: relative;
}

.topService__fig:after {
  position: absolute;
  content: "";
  display: block;
  width: 63px;
  height: 23px;
  background-color: #fff;
  left: 0;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .topService__fig:after {
    width: 66px;
    height: 15px;
  }
}

@media screen and (max-width: 768px) {
  .topService__fig {
    position: relative;
    height: auto;
    padding-bottom: 38.7%;
  }
}

.topService__img {
  border-radius: 8px;
}

@media screen and (max-width: 768px) {
  .topService__img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 4px 4px 0 0;
  }
}

.topService__heads {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
}

.topService__heads:after {
  content: "";
  background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  display: block;
  width: 6px;
  height: 8.7px;
  position: absolute;
  bottom: 7px;
  right: 0px;
}

.topService__headsNum {
  font-size: 4.6rem;
  color: #006cb6;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .topService__headsNum {
    font-size: 4.5rem;
    margin-bottom: -.15em;
    margin-top: -.15em;
  }
}

.topService__headsTxt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.topService__headsTxt:before {
  content: ".";
  color: #006cb6;
  padding: 0 .5em 0 .75em;
}

.topRecipe {
  padding-bottom: 150px;
}

@media screen and (max-width: 768px) {
  .topRecipe {
    padding-bottom: 45px;
  }
}

.topRecipe__inner {
  position: relative;
}

.topRecipe__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 25px;
  width: 500px;
  -webkit-flex-basis: 500px;
      -ms-flex-preferred-size: 500px;
          flex-basis: 500px;
  margin-left: auto;
  padding-left: 60px;
  padding-top: 35px;
}

@media screen and (max-width: 1000px) {
  .topRecipe__ttl {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
    padding-top: 0;
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
  }
  .topRecipe__ttl br {
    display: none;
  }
}

.topRecipe__desc {
  width: 500px;
  -webkit-flex-basis: 500px;
      -ms-flex-preferred-size: 500px;
          flex-basis: 500px;
  margin-left: auto;
  padding-left: 60px;
  margin-bottom: 35px;
}

@media screen and (max-width: 1000px) {
  .topRecipe__desc {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
    margin-bottom: 25px;
    line-height: 1.75;
  }
}

.topRecipe__fig {
  position: absolute;
  width: calc(100% - 560px);
  -webkit-flex-basis: calc(100% - 560px);
      -ms-flex-preferred-size: calc(100% - 560px);
          flex-basis: calc(100% - 560px);
  left: 30px;
  top: 0;
}

@media screen and (max-width: 1000px) {
  .topRecipe__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    left: 0;
    position: static;
  }
}

.topRecipe__img {
  border-radius: 8px;
}

.topRecipe__bts {
  width: 500px;
  -webkit-flex-basis: 500px;
      -ms-flex-preferred-size: 500px;
          flex-basis: 500px;
  padding-left: 60px;
  margin-left: auto;
}

@media screen and (max-width: 1000px) {
  .topRecipe__bts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
    margin-top: 30px;
  }
}

.topRecipe__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: auto;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -8px -7px;
}

@media screen and (max-width: 768px) {
  .topRecipe__list {
    margin: -5px;
  }
}

.topRecipe__item {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 8px 7px;
}

@media screen and (max-width: 768px) {
  .topRecipe__item {
    padding: 5px;
  }
}

.topRecipe__bt {
  color: #fff;
  text-decoration: none;
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  border: 1px solid #006cb6;
  background: #006cb6;
  border-radius: 60px;
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
          box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
}

@media screen and (min-width: 768px) {
  .topRecipe__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .topRecipe__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

@media screen and (max-width: 768px) {
  .topRecipe__bt {
    height: 55px;
    border-radius: 6px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 0 15px;
    line-height: 1.26;
    font-size: 1.5rem;
  }
}

.topRecipe__bt:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.topRecipe__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .topRecipe__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 10px;
    top: calc(50% - 4.25px);
  }
}

.topReason {
  padding-bottom: 125px;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .topReason {
    padding-bottom: 50px;
  }
}

.topReason__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 25px;
  max-width: 520px;
  padding-right: 65px;
}

@media screen and (max-width: 768px) {
  .topReason__ttl {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    padding-right: 0;
  }
  .topReason__ttl br {
    display: none;
  }
}

.topReason__desc {
  line-height: 1.875;
  margin-bottom: 50px;
  max-width: 520px;
  padding-right: 65px;
}

@media screen and (max-width: 1000px) {
  .topReason__desc {
    max-width: 100%;
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
    margin-bottom: 25px;
    line-height: 1.75;
    padding-right: 0;
  }
}

.topReason__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: -10px;
  margin-right: -10px;
}

@media screen and (max-width: 768px) {
  .topReason__list {
    margin-left: 0;
    margin-right: 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topReason__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 0 10px;
}

@media screen and (max-width: 768px) {
  .topReason__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 25px;
    padding: 0;
  }
  .topReason__item:last-of-type {
    margin-bottom: 0;
  }
}

.topReason__link {
  color: inherit;
  text-decoration: none;
}

.topReason__link:hover .topReason__img, .topReason__link:hover .topReason__heads {
  opacity: .7;
}

.topReason__fig {
  position: relative;
  background-color: #fff;
  border-radius: 8px;
}

.topReason__fig:after {
  position: absolute;
  content: "";
  display: block;
  width: 63px;
  height: 23px;
  background-color: #fff;
  left: 0;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .topReason__fig:after {
    width: 66px;
    height: 15px;
  }
}

@media screen and (max-width: 768px) {
  .topReason__fig {
    position: relative;
    height: auto;
    padding-bottom: 38.7%;
  }
}

.topReason__img {
  border-radius: 8px;
}

@media screen and (max-width: 768px) {
  .topReason__img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.topReason__heads {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
}

.topReason__heads:after {
  content: "";
  background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  display: block;
  width: 6px;
  height: 8.7px;
  position: absolute;
  bottom: 7px;
  right: 0px;
}

.topReason__num {
  font-size: 4.6rem;
  color: #006cb6;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .topReason__num {
    font-size: 4.5rem;
    margin-bottom: -.15em;
    margin-top: -.15em;
  }
}

.topReason__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.topReason__head:before {
  content: ".";
  color: #006cb6;
  padding: 0 .5em 0 .75em;
}

.topReason__bt {
  margin: 50px auto 0 auto;
}

@media screen and (max-width: 768px) {
  .topReason__bt {
    margin-top: 25px;
  }
}

.topReason__bg {
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  margin-right: calc(-52.2vw + 600px);
  width: 52vw;
  -webkit-flex-basis: 52vw;
      -ms-flex-preferred-size: 52vw;
          flex-basis: 52vw;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  -o-object-fit: cover;
     object-fit: cover;
  height: calc(100% - 250px);
}

.topReason__bgImg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top left;
     object-position: top left;
}

@media screen and (max-width: 1000px) {
  .topReason__bg {
    display: none;
  }
}

.topDiary {
  padding-top: 120px;
  padding-bottom: 115px;
  background: #f7f8fc;
  margin-bottom: 115px;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .topDiary {
    padding-top: 45px;
    padding-bottom: 75px;
    margin-bottom: 45px;
  }
}

.topDiary__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.topDiary__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 25px;
  width: 100%;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

@media screen and (max-width: 768px) {
  .topDiary__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
  }
}

.topDiary__txts {
  width: 333px;
  -webkit-flex-basis: 333px;
      -ms-flex-preferred-size: 333px;
          flex-basis: 333px;
  padding-right: 45px;
}

@media screen and (max-width: 768px) {
  .topDiary__txts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}

.topDiary__desc {
  line-height: 1.875;
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  .topDiary__desc {
    line-height: 1.75;
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 768px) {
  .topDiary__bt {
    display: none;
  }
}

.topDiary__bt_type_sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .topDiary__bt_type_sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 25px;
  }
}

.topDiary__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 323px + 50vw - 550px);
  -webkit-flex-basis: calc(100% - 323px + 50vw - 550px);
      -ms-flex-preferred-size: calc(100% - 323px + 50vw - 550px);
          flex-basis: calc(100% - 323px + 50vw - 550px);
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  overflow-x: scroll;
  margin-right: calc(-50vw - 550px);
  padding-right: 30px;
}

@media screen and (max-width: 768px) {
  .topDiary__list {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-right: 0;
    margin-left: -7.5px;
    margin-right: -25px;
    padding-right: 17.5px;
    width: auto;
    -webkit-flex-basis: inherit;
        -ms-flex-preferred-size: inherit;
            flex-basis: inherit;
  }
}

.topDiary .slick-list {
  margin-right: -30px;
}

@media screen and (max-width: 768px) {
  .topDiary .slick-list {
    margin-right: -17.5px;
  }
}

.topDiary .diaries__item {
  width: 290px !important;
  -webkit-flex-basis: 290px !important;
      -ms-flex-preferred-size: 290px !important;
          flex-basis: 290px !important;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  padding-left: 10px;
  padding-right: 10px;
}

@media screen and (max-width: 768px) {
  .topDiary .diaries__item {
    width: 145px !important;
    -webkit-flex-basis: 145px !important;
        -ms-flex-preferred-size: 145px !important;
            flex-basis: 145px !important;
    padding-left: 7.5px;
    padding-right: 7.5px;
  }
}

.topDiary .diaries__ttl {
  text-decoration: none;
}

.topDiary .diaries__link {
  text-decoration: none;
}

.topDiary .diaries__link:hover .diaries__ttl {
  text-decoration: underline;
}

.topInfo {
  margin-bottom: 115px;
}

@media screen and (max-width: 768px) {
  .topInfo {
    margin-bottom: 45px;
  }
}

.topInfo__col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .topInfo__col {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.topInfo__txts {
  width: 350px;
  -webkit-flex-basis: 350px;
      -ms-flex-preferred-size: 350px;
          flex-basis: 350px;
  padding-right: 70px;
}

@media screen and (max-width: 768px) {
  .topInfo__txts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}

.topInfo__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.59;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .topInfo__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
  }
  .topInfo__ttl br {
    display: none;
  }
}

.topInfo__desc {
  line-height: 1.875;
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  .topInfo__desc {
    line-height: 1.75;
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 768px) {
  .topInfo__bt {
    display: none;
  }
}

.topInfo__bt_type_sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .topInfo__bt_type_sp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
  }
}

.topInfo__list {
  width: calc(100% - 350px);
  -webkit-flex-basis: calc(100% - 350px);
      -ms-flex-preferred-size: calc(100% - 350px);
          flex-basis: calc(100% - 350px);
  margin-top: -10px;
}

@media screen and (max-width: 768px) {
  .topInfo__list {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .topInfo__list .infoList__item:first-of-type {
    border-top: 1px solid #efefef;
  }
}

.introduction {
  padding-bottom: 135px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .introduction {
    padding-bottom: 45px;
  }
}

.introduction__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .introduction__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .introduction__ttl br {
    display: none;
  }
}

.introduction__desc {
  line-height: 1.9375;
  margin-bottom: 200px;
}

@media screen and (max-width: 768px) {
  .introduction__desc {
    line-height: 1.75;
    margin-bottom: 100px;
  }
}

.introductionServices {
  background-color: #F0F2F9;
  padding-bottom: 140px;
  margin-bottom: 130px;
}

@media screen and (max-width: 768px) {
  .introductionServices {
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}

.introductionServices__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  margin-bottom: 95px;
}

@media screen and (max-width: 768px) {
  .introductionServices__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 30px;
    border-radius: 6px;
  }
}

.introductionServices__item:first-of-type {
  position: relative;
  top: -100px;
  margin-bottom: -5px;
}

@media screen and (max-width: 768px) {
  .introductionServices__item:first-of-type {
    top: -50px;
    margin-bottom: -20px;
  }
}

.introductionServices__item:last-of-type {
  margin-bottom: 0;
}

.introductionServices__item:nth-of-type(odd) {
  border-radius: 0 15px 15px 0;
}

@media screen and (max-width: 768px) {
  .introductionServices__item:nth-of-type(odd) {
    border-radius: 6px;
  }
}

.introductionServices__item:nth-of-type(odd) .introductionServices__fig {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.introductionServices__item:nth-of-type(odd) .introductionServices__texts {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.introductionServices__item:nth-of-type(even) {
  border-radius: 15px 0 0 15px;
}

@media screen and (max-width: 768px) {
  .introductionServices__item:nth-of-type(even) {
    border-radius: 6px;
  }
}

.introductionServices__item:nth-of-type(even) .introductionServices__fig {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-left: 0;
  margin-right: calc(-50vw + 550px);
}

@media screen and (max-width: 768px) {
  .introductionServices__item:nth-of-type(even) .introductionServices__fig {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    margin-right: 0;
  }
}

.introductionServices__item:nth-of-type(even) .introductionServices__texts {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

@media screen and (max-width: 768px) {
  .introductionServices__item:nth-of-type(even) .introductionServices__texts {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}

.introductionServices__fig {
  margin-left: calc(-50vw + 550px);
  width: 46.7vw;
  -webkit-flex-basis: 46.7vw;
      -ms-flex-preferred-size: 46.7vw;
          flex-basis: 46.7vw;
  position: relative;
}

@media screen and (max-width: 768px) {
  .introductionServices__fig {
    margin-left: 0;
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    position: relative;
    height: auto;
    padding-bottom: 62.5%;
  }
}

.introductionServices__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 768px) {
  .introductionServices__img {
    border-radius: 6px 6px 0 0;
  }
}

.introductionServices__texts {
  width: 675px;
  -webkit-flex-basis: 675px;
      -ms-flex-preferred-size: 675px;
          flex-basis: 675px;
  padding: 80px 80px 100px 80px;
}

@media screen and (max-width: 768px) {
  .introductionServices__texts {
    padding: 20px 20px 30px 20px;
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.introductionServices__ttl {
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .introductionServices__ttl {
    font-size: 2.0rem;
    margin-bottom: 10px;
  }
  .introductionServices__ttl br {
    display: none;
  }
}

.introductionServices__intro {
  line-height: 1.75;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .introductionServices__intro {
    line-height: 1.63;
  }
}

.introductionServices__desc {
  line-height: 1.75;
  margin-top: 25px;
}

@media screen and (max-width: 768px) {
  .introductionServices__desc {
    margin-top: 15px;
    font-size: 1.4rem;
  }
}

.introductionServices__bts {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
  margin-left: -8px;
  margin-right: -8px;
}

@media screen and (max-width: 768px) {
  .introductionServices__bts {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}

.introductionServices__btsItem {
  padding: 0 8px;
}

@media screen and (max-width: 768px) {
  .introductionServices__btsItem {
    padding: 0;
  }
  .introductionServices__btsItem:first-of-type {
    margin-bottom: 10px;
  }
}

.introductionServices__btsLink {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 194px;
  height: 57px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
          box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
}

@media screen and (min-width: 768px) {
  .introductionServices__btsLink:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .introductionServices__btsLink:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.introductionServices__btsLink:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .introductionServices__btsLink {
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .introductionServices__btsLink:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.introductionStrength {
  margin-bottom: 170px;
}

@media screen and (max-width: 768px) {
  .introductionStrength {
    margin-bottom: 45px;
  }
}

.introductionStrength__ttl {
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .introductionStrength__ttl {
    margin-bottom: 25px;
  }
}

.introductionStrength__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -30px -20px;
}

@media screen and (max-width: 768px) {
  .introductionStrength__list {
    margin: 0;
  }
}

.introductionStrength__item {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 30px 20px;
}

@media screen and (max-width: 768px) {
  .introductionStrength__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 30px;
  }
  .introductionStrength__item:last-of-type {
    margin-bottom: 0;
  }
}

.introductionStrength__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.2rem;
  font-weight: bold;
  border-bottom: 1px solid #222222;
  padding-bottom: 30px;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .introductionStrength__head {
    font-size: 2.0rem;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .introductionStrength__head br {
    display: none;
  }
}

.introductionStrength__headNum {
  font-size: 7.0rem;
  color: #006CB6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .introductionStrength__headNum {
    font-size: 4.8rem;
  }
}

.introductionStrength__headNum:after {
  content: "";
  display: block;
  width: 1px;
  background-color: #222222;
  margin: 0 30px 0 40px;
}

@media screen and (max-width: 768px) {
  .introductionStrength__headNum:after {
    margin: 0 20px;
  }
}

.introductionStrength__desc {
  line-height: 1.75;
}

.introductionIngredients {
  margin-bottom: 240px;
}

@media screen and (max-width: 768px) {
  .introductionIngredients {
    margin-bottom: 90px;
  }
}

.introductionIngredients__ttl {
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__ttl {
    margin-bottom: 25px;
  }
}

.introductionIngredients__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 -32px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__list {
    margin: 0;
  }
}

.introductionIngredients__list:after {
  content: "";
  display: block;
  background-color: #F0F2F9;
  width: calc(100vw);
  height: calc(100% + 35px);
  position: absolute;
  left: calc(-50vw + 550px + 32px);
  top: 100px;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__list:after {
    width: calc(100% + 50px);
    -webkit-flex-basis: calc(100% + 50px);
        -ms-flex-preferred-size: calc(100% + 50px);
            flex-basis: calc(100% + 50px);
    left: 0;
    margin-left: -25px;
    margin-right: -25px;
    height: calc(100% - 55px);
  }
}

.introductionIngredients__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 0 32px;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 30px;
  }
  .introductionIngredients__item:last-of-type {
    margin-bottom: 0;
  }
}

.introductionIngredients__fig {
  margin-bottom: 20px;
}

.introductionIngredients__img {
  border-radius: 6px;
}

.introductionIngredients__head {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.63;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__head {
    font-size: 2.0rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
}

.introductionIngredients__desc {
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .introductionIngredients__desc {
    line-height: 1.63;
  }
}

.introductionGroup__ttl {
  margin-bottom: 35px;
}

@media screen and (max-width: 768px) {
  .introductionGroup__ttl {
    margin-bottom: 25px;
  }
}

.introductionGroup__desc {
  margin-bottom: 50px;
}

.introductionGroup__section {
  margin-bottom: 125px;
}

@media screen and (max-width: 768px) {
  .introductionGroup__section {
    margin-bottom: 45px;
  }
}

.introductionGroup__section:last-of-type {
  margin-bottom: 0;
}

.introductionGroup__subTtl {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1;
  padding: 20px 0;
  border-top: 1px solid #DCDDDD;
  border-bottom: 1px solid #DCDDDD;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .introductionGroup__subTtl {
    font-size: 1.8rem;
    padding: 16px 0;
    margin-bottom: 15px;
  }
}

.introductionGroup__intro {
  margin-bottom: 25px;
}

.introductionGroup__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .introductionGroup__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 30px;
  }
}

.introductionGroup__item:last-of-type {
  margin-bottom: 0;
}

.introductionGroup__section-reverse .introductionGroup__fig,
.introductionGroup__item:nth-of-type(even) .introductionGroup__fig {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.introductionGroup__section-reverse .introductionGroup__detail,
.introductionGroup__item:nth-of-type(even) .introductionGroup__detail {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  padding-left: 0;
  padding-right: 45px;
}

@media screen and (max-width: 768px) {
  .introductionGroup__section-reverse .introductionGroup__detail,
  .introductionGroup__item:nth-of-type(even) .introductionGroup__detail {
    padding-right: 0;
  }
}

.introductionGroup__item:nth-of-type(2) .introductionGroup__fig {
  width: 27.27%;
}

.introductionGroup__fig {
  width: 60%;
  -webkit-flex-basis: 60%;
      -ms-flex-preferred-size: 60%;
          flex-basis: 60%;
}

@media screen and (max-width: 768px) {
  .introductionGroup__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}

.introductionGroup__fig_type_lg {
  width: 43.9%;
  -webkit-flex-basis: 43.9%;
      -ms-flex-preferred-size: 43.9%;
          flex-basis: 43.9%;
}

@media screen and (max-width: 768px) {
  .introductionGroup__fig_type_lg {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.introductionGroup__detail {
  width: 40%;
  -webkit-flex-basis: 40%;
      -ms-flex-preferred-size: 40%;
          flex-basis: 40%;
  padding-left: 45px;
  line-height: 1.625;
}

@media screen and (max-width: 768px) {
  .introductionGroup__detail {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 20px;
  }
}

.introductionGroup__detail_type_sm {
  width: 56.1%;
  -webkit-flex-basis: 56.1%;
      -ms-flex-preferred-size: 56.1%;
          flex-basis: 56.1%;
}

@media screen and (max-width: 768px) {
  .introductionGroup__detail_type_sm {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.introductionGroup__logo {
  width: 29.5%;
  min-width: 120px;
  margin: 0 auto 20px auto;
}

@media screen and (max-width: 768px) {
  .introductionGroup__logo {
    width: 30%;
    margin-bottom: 10px;
    min-width: auto;
  }
}

.introductionGroup__logo-purefield {
  min-width: 157px;
}

.introductionGroup__link {
  color: inherit;
  text-decoration: none;
}
.introductionGroup__link:hover {
  text-decoration: underline;
}
.introductionGroup__link:hover img {
  opacity: .7;
}

.material {
  margin-bottom: 0;
}

.material__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .material__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .material__ttl br {
    display: none;
  }
}

.material__ttl_type_theme {
  margin-bottom: 40px;
}

.material__section {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .material__section {
    margin-bottom: 10px;
  }
}

.material__section.jsActive {
  margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
  .material__section.jsActive {
    margin-bottom: 20px;
  }
}

.material__section:last-of-type {
  margin-bottom: 0;
}

.material__head {
  font-size: 1.8rem;
  font-weight: bold;
  color: #006cb6;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border: 1px solid #006cb6;
  border-radius: 4px;
  padding: 16px 20px;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .material__head {
    font-size: 1.6rem;
    padding: 10px 15px;
  }
}

.material__head:after {
  content: "";
  background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  width: 4.4px;
  height: 8.7px;
  display: block;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.material__head:hover {
  background-color: #006cb6;
  color: #fff;
}

.material__head:hover:after {
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
}

.material__head.jsActive {
  background-color: #006cb6;
  color: #fff;
  border-radius: 4px 4px 0 0;
}

.material__head.jsActive:after {
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.material__cats {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .material__cats {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -5px -5px 25px -5px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.material__catsItem {
  padding: 0 5px;
}

@media screen and (max-width: 768px) {
  .material__catsItem {
    padding: 5px;
  }
}

.material__catsItem.jsActive .material__catsText {
  background-color: #006cb6;
  color: #fff;
}

.material__catsText {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  color: #006cb6;
  border: 1px solid #006cb6;
  padding: 9px 26px;
  border-radius: 50px;
  cursor: pointer;
}

.material__catsText:hover {
  background-color: #006cb6;
  color: #fff;
}

.material__heads {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #006cb6;
  border-radius: 4px;
  padding: 16px 20px;
  cursor: pointer;
  position: relative;
}

@media screen and (max-width: 768px) {
  .material__heads {
    padding: 10px 15px;
  }
}

.material__heads:after {
  content: "";
  background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  width: 4.4px;
  height: 8.7px;
  display: block;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

.material__heads:hover {
  background-color: #006cb6;
  color: #fff;
}

.material__heads:hover .material__headsCat {
  background-color: #fff;
  color: #006cb6;
}

.material__heads:hover .material__headsTtl {
  color: #fff;
}

.material__heads:hover:after {
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
}

.material__heads.jsActive {
  background-color: #006cb6;
  color: #fff;
  border-radius: 4px 4px 0 0;
}

.material__heads.jsActive:after {
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.material__heads.jsActive .material__headsCat {
  background-color: #fff;
  color: #006cb6;
}

.material__heads.jsActive .material__headsTtl {
  color: #fff;
}

.material__headsCat {
  font-size: 1.3rem;
  color: #fff;
  background-color: #006cb6;
  border-radius: 4px;
  padding: 5.5px 6px;
  line-height: 1;
  margin-right: 20px;
  font-weight: bold;
  width: 80px;
  max-width: 80px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .material__headsCat {
    font-size: 1.2rem;
    padding: 5px 8px;
    margin-right: 10px;
    min-width: 6.5em;
    -webkit-flex-basis: 6.5em;
        -ms-flex-preferred-size: 6.5em;
            flex-basis: 6.5em;
    text-align: center;
  }
}

.material__headsTtl {
  font-size: 1.8rem;
  font-weight: bold;
  color: #006cb6;
  padding-right: 20px;
}

@media screen and (max-width: 768px) {
  .material__headsTtl {
    font-size: 1.6rem;
    padding-right: 10px;
    width: calc(100% - 6.5em);
    -webkit-flex-basis: calc(100% - 6.5em);
        -ms-flex-preferred-size: calc(100% - 6.5em);
            flex-basis: calc(100% - 6.5em);
  }
}

.material__details {
  background-color: #f0f2f9;
  padding: 30px;
  border-radius: 0 0 4px 4px;
  display: none;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .material__details {
    padding: 20px;
  }
}

.materialMain {
  margin-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .materialMain {
    margin-bottom: 45px;
  }
}

.materialDetails__inner {
  background-color: #fff;
  padding: 38px;
}

@media screen and (max-width: 768px) {
  .materialDetails__inner {
    padding: 20px;
  }
}

.materialDetails__head {
  font-weight: bold;
  color: #fff;
  background-color: #006cb6;
  line-height: 1;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .materialDetails__head {
    margin-bottom: 15px;
  }
}

.materialDetails__subHead {
  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .materialDetails__subHead {
    font-size: 1.8rem;
  }
}

.materialDetails__para {
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .materialDetails__para {
    font-size: 1.4rem;
  }
}

.materialDetails__paraSm {
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  .materialDetails__paraSm {
    font-size: 1.0rem;
  }
}

.materialDetails__effect ol,
.materialDetails__list {
  list-style: none;
  margin-left: 1em;
}

.materialDetails__effect ol li,
.materialDetails__item {
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .materialDetails__effect ol li,
  .materialDetails__item {
    font-size: 1.4rem;
  }
}

.materialDetails__dl {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #dcdddd;
  min-height: 60px;
  border-radius: 4px;
}

@media screen and (max-width: 768px) {
  .materialDetails__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    min-height: none;
    margin-top: 20px;
  }
}

.materialDetails__dt {
  width: 76px;
  -webkit-flex-basis: 76px;
      -ms-flex-preferred-size: 76px;
          flex-basis: 76px;
  border-right: 1px solid #dcdddd;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f7f8f8;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .materialDetails__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 10px;
    border-right: 0;
    border-bottom: 1px solid #dcdddd;
    font-size: 1.4rem;
  }
}

.materialDetails__dd {
  width: calc(100% - 76px);
  -webkit-flex-basis: calc(100% - 76px);
      -ms-flex-preferred-size: calc(100% - 76px);
          flex-basis: calc(100% - 76px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 16px 15px;
  line-height: 1.75;
}

.materialDetails__ddIn {
  padding-left: 1em;
}

@media screen and (max-width: 768px) {
  .materialDetails__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 15px;
    font-size: 1.4rem;
  }
}

.materialDetails__note {
  margin-top: 1.5em;
  line-height: 1.75;
}
.materialDetails__note a {
  color: #006CB6;
  text-decoration: none;
}
.materialDetails__note a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .materialDetails__note {
    margin-top: 1.2em;
    font-size: 1.4rem;
  }
}

.materialOthers {
  background-color: #f0f2f9;
  padding-top: 110px;
  padding-bottom: 145px;
}

@media screen and (max-width: 768px) {
  .materialOthers {
    padding-top: 45px;
    padding-bottom: 45px;
  }
}

.materialOthers__ttl {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .materialOthers__ttl {
    margin-bottom: 25px;
  }
}

.materialOthers__details {
  background-color: #fff;
  padding: 10px 40px;
  border-radius: 4px;
}

@media screen and (max-width: 768px) {
  .materialOthers__details {
    padding: 5px 20px;
  }
}

.materialOthers__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 25px 0;
  border-bottom: 1px solid #dcdddd;
}

.materialOthers__dl:last-of-type {
  border-bottom: 0;
}

@media screen and (max-width: 768px) {
  .materialOthers__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 15px 0;
  }
}

.materialOthers__dt {
  width: 175px;
  -webkit-flex-basis: 175px;
      -ms-flex-preferred-size: 175px;
          flex-basis: 175px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .materialOthers__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 10px;
  }
}

.materialOthers__dd {
  width: calc(100% - 175px);
  -webkit-flex-basis: calc(100% - 175px);
      -ms-flex-preferred-size: calc(100% - 175px);
          flex-basis: calc(100% - 175px);
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .materialOthers__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    line-height: 1.63;
    font-size: 1.4rem;
  }
}

.materialOthers__note {
  margin-top: 1.5em;
  line-height: 1.75;
}
.materialOthers__note a {
  color: #006CB6;
  text-decoration: none;
}
.materialOthers__note a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .materialOthers__note {
    margin-top: 1.2em;
    font-size: 1.4rem;
  }
}

.message {
  margin-bottom: 0;
}

.message__bg {
  background-color: #f0f2f9;
}

.messageMain {
  padding-bottom: 135px;
}

@media screen and (max-width: 768px) {
  .messageMain {
    padding-bottom: 45px;
  }
}

.messageMain__ec {
  background: url(../img/company/message/img_ec.png) no-repeat center center/cover;
  height: 490px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 50px 100px;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  border-radius: 10px;
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .messageMain__ec {
    height: 240px;
    padding: 20px;
    margin-bottom: 30px;
  }
}

.messageMain__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  color: #006cb6;
  line-height: 1.71;
  width: 100%;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .messageMain__ttl {
    font-size: 2.2rem;
    line-height: 1.6;
    margin-bottom: 5px;
  }
}

.messageMain__copy {
  color: #006cb6;
  width: 100%;
  line-height: 1.66;
}

@media screen and (max-width: 768px) {
  .messageMain__copy {
    line-height: 1.59;
  }
}

.messageMain__desc {
  line-height: 1.66;
  margin-bottom: 5px;
}

.messageMain__para {
  margin-bottom: 1.5em;
}

.messageMain__para:last-of-type {
  margin-bottom: 0;
}

.messageMain__sign {
  text-align: right;
}

.messageMain__signDt {
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .messageMain__signDt {
    margin-bottom: 5px;
  }
}

.messageMain__signDd {
  font-size: 2.4rem;
}

@media screen and (max-width: 768px) {
  .messageMain__signDd {
    font-size: 2.0rem;
  }
}

.messagePhilosophy {
  padding-top: 135px;
  margin-bottom: 135px;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy {
    padding-top: 45px;
    margin-bottom: 45px;
  }
}

.messagePhilosophy__ttl {
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy__ttl {
    margin-bottom: 25px;
  }
}

.messagePhilosophy__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 15px;
  min-height: 120px;
}

.messagePhilosophy__dl:last-of-type {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.messagePhilosophy__dt {
  background-color: #006cb6;
  color: #fff;
  font-size: 1.8rem;
  border-radius: 6px 0 0 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 186px;
  -webkit-flex-basis: 186px;
      -ms-flex-preferred-size: 186px;
          flex-basis: 186px;
  padding: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.6rem;
    padding: 15px;
    border-radius: 6px 6px 0 0;
  }
}

.messagePhilosophy__dd {
  width: calc(100% - 186px);
  -webkit-flex-basis: calc(100% - 186px);
      -ms-flex-preferred-size: calc(100% - 186px);
          flex-basis: calc(100% - 186px);
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.66;
  padding: 20px 40px;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.6rem;
    padding: 15px;
    border-radius: 0 0 6px 6px;
  }
}

.messagePhilosophy__order {
  list-style: outside decimal;
  margin-left: 1em;
}

.messagePhilosophy__orderItem {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.66;
}

@media screen and (max-width: 768px) {
  .messagePhilosophy__orderItem {
    font-size: 1.6rem;
    line-height: 1.59;
    margin-bottom: .5em;
  }
  .messagePhilosophy__orderItem:last-of-type {
    margin-bottom: 0;
  }
}

.messageCredo {
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .messageCredo {
    padding-bottom: 45px;
  }
}

.messageCredo__ttl {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .messageCredo__ttl {
    margin-bottom: 25px;
  }
}

.messageCredo__desc {
  line-height: 2.375;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .messageCredo__desc {
    text-align: left;
    line-height: 1.75;
  }
}

.messageCredo__bt {
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
}

@media screen and (max-width: 768px) {
  .messageCredo__bt {
    margin-top: 25px;
  }
}

.overview {
  padding-bottom: 135px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .overview {
    padding-bottom: 45px;
  }
}

.overview__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .overview__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .overview__ttl br {
    display: none;
  }
}

.overview__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .overview__desc {
    line-height: 1.75;
    margin-bottom: 45px;
  }
}

.overview__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 35px 0;
  border-bottom: 1px solid #ddd;
}

.overview__dl:first-of-type {
  border-top: 1px solid #ddd;
}

@media screen and (max-width: 768px) {
  .overview__dl {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 20px 0;
  }
}

.overview__dt {
  font-size: 1.8rem;
  font-weight: bold;
  width: 300px;
  -webkit-flex-basis: 300px;
      -ms-flex-preferred-size: 300px;
          flex-basis: 300px;
  padding-right: 30px;
}

@media screen and (max-width: 768px) {
  .overview__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
}

.overview__dd {
  width: calc(100% - 300px);
  -webkit-flex-basis: calc(100% - 300px);
      -ms-flex-preferred-size: calc(100% - 300px);
          flex-basis: calc(100% - 300px);
  line-height: 1.9375;
}

@media screen and (max-width: 768px) {
  .overview__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

.overview__dd b {
  font-weight: 700;
}

.overview__dd a:hover {
  text-decoration: none;
}

.overview__tel {
  text-decoration: none;
  color: inherit;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .overview__tel {
    pointer-events: all;
  }
}

.overview__map {
  width: 100%;
  margin-top: 25px;
}

@media screen and (max-width: 768px) {
  .overview__map {
    margin-top: 15px;
  }
}

.overview__map iframe {
  width: 100%;
  height: 300px;
  vertical-align: bottom;
}

@media screen and (max-width: 768px) {
  .overview__map iframe {
    height: 180px;
  }
}

.overview__mapLink {
  color: inherit;
  display: block;
  margin-top: 15px;
}

@media screen and (max-width: 768px) {
  .overview__mapLink {
    margin-top: 10px;
  }
}

.recipe {
  margin-bottom: 0;
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .recipe {
    padding-bottom: 45px;
  }
}

.recipe__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .recipe__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .recipe__ttl br {
    display: none;
  }
}

.recipe__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .recipe__desc {
    line-height: 1.75;
    margin-bottom: 45px;
    text-align: left;
  }
}

.recipeColList {
  border-top: 1px solid #dcdddd;
  margin-top: 25px;
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .recipeColList {
    margin-top: 20px;
    margin-bottom: 45px;
  }
}

.recipeColList__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 40px 0;
  border-bottom: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .recipeColList__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.recipeColList__fig {
  width: 240px;
  -webkit-flex-basis: 240px;
      -ms-flex-preferred-size: 240px;
          flex-basis: 240px;
}

@media screen and (max-width: 768px) {
  .recipeColList__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 20px;
  }
}

.recipeColList__figLink {
  width: 100%;
  padding-top: 66.6%;
  position: relative;
  overflow: hidden;
  display: block;
  border-radius: 6px;
}

.recipeColList__figLink:hover {
  opacity: .75;
}

.recipeColList__img {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.recipeColList__text {
  width: calc(100% - 240px);
  -webkit-flex-basis: calc(100% - 240px);
      -ms-flex-preferred-size: calc(100% - 240px);
          flex-basis: calc(100% - 240px);
  padding-left: 40px;
}

@media screen and (max-width: 768px) {
  .recipeColList__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.recipeColList__cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -4px;
}

.recipeColList__catItem {
  padding: 4px;
}

.recipeColList__catLink {
  font-size: 1.3rem;
  color: #fff;
  background-color: #006CB6;
  border: 1px solid #006CB6;
  border-radius: 4px;
  padding: 4px 5px;
  display: block;
  text-decoration: none;
}

.recipeColList__catLink:hover {
  background-color: #fff;
  color: #006CB6;
}

.recipeColList__ttl {
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 20px;
}

.recipeColList__ttlLink {
  font-size: 2.2rem;
  text-decoration: none;
  color: inherit;
  line-height: 1.64;
}

@media screen and (max-width: 768px) {
  .recipeColList__ttlLink {
    font-size: 2.0rem;
  }
}

.recipeColList__ttlLink:hover {
  text-decoration: underline;
}

.recipeColList__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -.25em -.5em;
}

.recipeColList__tagsItem {
  padding: .25em .5em;
}

@media screen and (max-width: 768px) {
  .recipeColList__tagsItem {
    font-size: 1.2rem;
  }
}

.recipeColList__tagsLink {
  font-size: 1.5rem;
  color: #036eb8;
  line-height: 1;
}

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

.recipeColList__tagsLink:before {
  content: "#";
}

@media screen and (min-width: 769px) {
  .recipeMainList__resultTtl {
    margin-bottom: 25px;
  }
  .recipeColList {
    margin: 0 -15px 30px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    border: none;
  }
  .recipeColList__item {
    width: calc(33.33% - 30px);
    margin: 0 15px 30px;
    display: block;
    padding: 0;
    border: none;
  }
  .recipeColList__fig {
    width: 100%;
    aspect-ratio: 7 / 5;
  }
  .recipeColList__figLink {
    width: 100%;
    height: 100%;
    padding: 0;
  }
  .recipeColList__text {
    width: 100%;
    padding-left: 0;
    margin-top: 20px;
  }
  .recipeColList__catLink {
    padding: 2px 5px;
  }
  .recipeColList__ttl {
    margin: 15px 0 10px;
  }
  .recipe__pagination,
  .recipeMain__list + .arcPagenation,
  .recipeMain__pager {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .recipeColList__more {
    display: none;
  }
}
.recipeColList__more_bt {
  width: 182px;
  height: 40px;
  margin: 0 auto;
  color: #006CB6;
  font-size: 1.4rem;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border-radius: 999px;
  background-color: #fff;
  border: 1px solid #006CB6;
}
.recipeColList__more_bt:hover {
  background-color: #006CB6;
  color: #fff;
}
.recipeColList__more_bt + .loading {
  margin: 0 auto;
  text-align: center;
  display: none;
}
.recipeColList__more_bt + .loading img {
  width: 40px;
  height: 40px;
  margin: 0 auto;
}

.recipeDetail {
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .recipeDetail {
    padding-bottom: 45px;
    overflow: hidden;
    margin-bottom: 0;
  }
}

.recipeDetail__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.recipeDetail__side {
  width: 222px;
  -webkit-flex-basis: 222px;
      -ms-flex-preferred-size: 222px;
          flex-basis: 222px;
}

@media screen and (max-width: 768px) {
  .recipeDetail__side {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.recipeDetail__main {
  width: calc(100% - 222px);
  -webkit-flex-basis: calc(100% - 222px);
      -ms-flex-preferred-size: calc(100% - 222px);
          flex-basis: calc(100% - 222px);
  padding-left: 60px;
}

@media screen and (max-width: 768px) {
  .recipeDetail__main {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

@media screen and (max-width: 768px) {
  .recipeSearch {
    margin-bottom: 30px;
  }
}

.recipeSearch__ttl {
  background-color: #006CB6;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  height: 52px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 6px 6px 0 0;
}

@media screen and (max-width: 768px) {
  .recipeSearch__ttl {
    height: 58px;
    border-radius: 6px;
    position: relative;
  }
  .recipeSearch__ttl:after {
    content: "";
    display: block;
    background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
    position: absolute;
    width: 5.4px;
    height: 10px;
    right: 20px;
    top: calc(50% - 4.25px);
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

@media screen and (max-width: 768px) {
  .recipeSearch__ttl.jsActive {
    border-radius: 6px 6px 0 0;
  }
  .recipeSearch__ttl.jsActive:after {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
}

.recipeSearch__form {
  background-color: #F0F2F9;
  padding: 15px 0 20px 0;
  border-radius: 0 0 6px 6px;
}

@media screen and (max-width: 768px) {
  .recipeSearch__form {
    padding-top: 20px;
    display: none;
  }
}

.recipeSearch__section {
  padding: 15px 20px 20px 20px;
  border-bottom: 2px solid #fff;
}

.recipeSearch__section:first-of-type {
  padding-top: 0;
}

@media screen and (max-width: 768px) {
  .recipeSearch__section {
    padding-top: 20px;
  }
}

.recipeSearch__subTtl {
  font-weight: bold;
  color: #006CB6;
  line-height: 1;
  margin-bottom: 10px;
}

.recipeSearch__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px;
}

.recipeSearch__item {
  padding: 2px;
}

.recipeSearch__section--tag .recipeSearch__item:nth-child(n+29) {
  display: none;
}

.recipeSearch__check {
  display: none;
}

.recipeSearch__check:checked + .recipeSearch__txt {
  background-color: #006CB6;
  color: #fff;
}

.recipeSearch__txt {
  font-size: 1.3rem;
  color: #006CB6;
  background-color: #fff;
  border: 1px solid #006CB6;
  border-radius: 4px;
  padding: 4px 5px;
  display: block;
}

.recipeSearch__txt:hover {
  background-color: #006CB6;
  color: #fff;
}

.recipeSearch__section--tag .recipeSearch__txt::before {
  content: "#";
}

.recipeSearch__bt {
  width: 182px;
  height: 40px;
  border-radius: 40px;
  background-color: #006CB6;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: none;
  margin: 0 auto 0 auto;
  border: 1px solid #006CB6;
}

.recipeSearch__bt_type_submit {
  margin-top: 25px;
}

@media screen and (max-width: 768px) {
  .recipeSearch__bt_type_submit {
    margin-top: 20px;
  }
}

.recipeSearch__bt_type_submit:hover {
  background-color: #fff;
  color: #006CB6;
}

.recipeSearch__bt_type_cancel {
  margin-top: 10px;
  background-color: #fff;
  color: #006CB6;
}

.recipeSearch__bt_type_cancel:hover {
  background-color: #006CB6;
  color: #fff;
}

.recipeSearch__bt_type_more {
  width: 142px;
  height: 34px;
  border-radius: 34px;
  margin-top: 20px;
  font-size: 1.3rem;
  background-color: #fff;
  color: #006CB6;
}

.recipeSearch__bt_type_more:hover {
  background-color: #006CB6;
  color: #fff;
}

.recipeMain__searchTtl {
  font-size: 1.8rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
}

.recipeMain__searchTtl:before {
  content: "";
  display: block;
  width: 18.2px;
  height: 17.7px;
  background: url(../img/icon_search.svg) no-repeat center center/cover;
  margin-right: 10px;
}

.recipeMain__searcForm {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .recipeMain__searcForm {
    margin-bottom: 20px;
  }
}

.recipeMain__pager {
  font-size: 1.4rem;
}

.recipeMain__pager_type_ct {
  margin-top: 25px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .recipeMain__pager_type_ct {
    margin-top: 15px;
  }
}

.searchList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 768px) {
  .searchList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.searchList__dt {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.searchList__dt:after {
  content: "：";
}

@media screen and (max-width: 768px) {
  .searchList__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .searchList__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

.searchList__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -5px;
  margin-left: 0px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .searchList__tags {
    margin-left: -5px;
  }
}

.searchList__tagsItem {
  padding: 5px;
}

.searchList__tagsLab {
  cursor: pointer;
  text-decoration: none;
}

.searchList__tagsLab:hover .searchList__tagText {
  background-color: #006cb6;
  color: #fff;
}

.searchList__tagText {
  font-size: 1.3rem;
  color: #006cb6;
  border: 1px solid #006cb6;
  border-radius: 4px;
  line-height: 1;
  padding: 5px 10px;
  display: block;
}

.searchList__tagText:after {
  content: "×";
  padding-left: .5em;
}

.recipeMainHeader {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .recipeMainHeader {
    margin-bottom: 30px;
  }
}

.recipeMainHeader__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.recipeMainHeader__fig {
  width: 290px;
  -webkit-flex-basis: 290px;
      -ms-flex-preferred-size: 290px;
          flex-basis: 290px;
  height: 217px;
  position: relative;
  overflow: hidden;
  display: block;
  border-radius: 3px;
}

@media screen and (max-width: 768px) {
  .recipeMainHeader__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    height: auto;
    margin-bottom: 30px;
    padding-top: 74.8%;
  }
}

.recipeMainHeader__img {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.recipeMainHeader__text {
  width: calc(100% - 290px);
  -webkit-flex-basis: calc(100% - 290px);
      -ms-flex-preferred-size: calc(100% - 290px);
          flex-basis: calc(100% - 290px);
  padding-left: 30px;
}

@media screen and (max-width: 768px) {
  .recipeMainHeader__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}

.recipeMainHeader__cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -4px;
}

.recipeMainHeader__catItem {
  padding: 4px;
}

.recipeMainHeader__catLink {
  font-size: 1.3rem;
  color: #fff;
  background-color: #006CB6;
  border: 1px solid #006CB6;
  border-radius: 4px;
  padding: 4px 5px;
  display: block;
  text-decoration: none;
}

.recipeMainHeader__catLink:hover {
  background-color: #fff;
  color: #006CB6;
}

.recipeMainHeader__ttl {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.66;
  margin-top: 20px;
  margin-bottom: 20px;
}

.recipeMainHeader__tag {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -.25em -.5em;
}

.recipeMainHeader__tagItem {
  padding: .25em .5em;
}

@media screen and (max-width: 768px) {
  .recipeMainHeader__tagItem {
    font-size: 1.2rem;
  }
}

.recipeMainHeader__tagLink {
  font-size: 1.5rem;
  color: #036eb8;
  line-height: 1;
}

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

.recipeMainHeader__tagLink:before {
  content: "#";
}

.recipeMainDetail__table {
  border-top: 1px solid #dcdddd;
  margin-bottom: 60px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__table {
    margin-bottom: 20px;
  }
}

.recipeMainDetail__table:last-of-type {
  margin-bottom: 0;
}

.recipeMainDetail__tr {
  border-bottom: 1px solid #dcdddd;
}

.recipeMainDetail__th {
  background-color: #f5f5f5;
  font-weight: bold;
  padding: 20px 25px;
  width: 168px;
  text-align: left;
  vertical-align: middle;
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__th {
    width: 124px;
    padding: 15px 20px;
  }
}

.recipeMainDetail__td {
  padding: 20px 25px;
  width: calc(100% - 168px);
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__td {
    width: calc(100% - 124px);
    padding: 15px 20px;
  }
}

.recipeMainDetail__colTble {
  width: 100%;
  border-top: 1px solid #dcdddd;
  position: relative;
}

.recipeMainDetail__colTble:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left bottom, left top, from(white), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0) 100%);
}

.recipeMainDetail__colTh {
  background-color: #f5f5f5;
  padding: 20px 25px;
  line-height: 1.75;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  border-bottom: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTh {
    padding: 15px 20px;
  }
}

.recipeMainDetail__colTh:nth-of-type(1) {
  border-right: 3px solid #fff;
  width: 61%;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTh:nth-of-type(1) {
    width: 50%;
  }
}

.recipeMainDetail__colTh:nth-of-type(2) {
  width: 39%;
  border-left: 3px solid #fff;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTh:nth-of-type(2) {
    width: 50%;
  }
}

.recipeMainDetail__colTd {
  padding: 20px 25px;
  line-height: 1.75;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid #dcdddd;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTd {
    padding: 15px 20px;
  }
}

.recipeMainDetail__colTd:nth-of-type(1) {
  border-right: 3px solid #fff;
  width: 61%;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTd:nth-of-type(1) {
    width: 50%;
  }
}

.recipeMainDetail__colTd:nth-of-type(2) {
  width: 39%;
  border-left: 3px solid #fff;
}

@media screen and (max-width: 768px) {
  .recipeMainDetail__colTd:nth-of-type(2) {
    width: 50%;
  }
}

.recipeView {
  border: 2px solid #006cb6;
  border-radius: 6px;
  padding: 40px;
  margin-top: -30px;
  position: relative;
  z-index: 2;
  margin-bottom: 120px;
}

@media screen and (max-width: 768px) {
  .recipeView {
    padding: 25px;
    margin-bottom: 60px;
  }
}

.recipeView__ttl {
  font-size: 2.2rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
  color: #006cb6;
}

@media screen and (max-width: 768px) {
  .recipeView__ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    line-height: 1.4;
  }
}

.recipeView__ttl:before {
  content: "";
  display: block;
  background: url(../img/service/development/recipe/icon_file.svg) no-repeat center center/cover;
  width: 25px;
  height: 30px;
  margin-right: 10px;
}

@media screen and (max-width: 768px) {
  .recipeView__ttl:before {
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.recipeView__desc {
  line-height: 1.75;
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .recipeView__desc {
    font-size: 1.4rem;
  }
}

.recipeView__bt {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 364px;
  height: 54px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
  margin: 0 auto 0 auto;
}

@media screen and (min-width: 768px) {
  .recipeView__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .recipeView__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.recipeView__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .recipeView__bt {
    width: 100%;
    height: 54px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .recipeView__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.recipeOthers__ttl {
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .recipeOthers__ttl {
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 768px) {
  .recipeOthers__list {
    overflow-x: scroll;
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
    margin-left: -40px;
    margin-right: -40px;
    margin-bottom: 0;
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media screen and (max-width: 768px) {
  .recipeOthers .recipeList__item {
    width: 66.666vw;
    -webkit-flex-basis: 66.666vw;
        -ms-flex-preferred-size: 66.666vw;
            flex-basis: 66.666vw;
    padding-left: 15px;
    padding-right: 15px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}

.recipeOthers__bt {
  margin: 60px auto 0 auto;
}

@media screen and (max-width: 768px) {
  .recipeOthers__bt {
    margin-top: 0;
  }
}

.sdgs {
  padding-bottom: 135px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .sdgs {
    padding-bottom: 45px;
  }
}

.sdgs__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .sdgs__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .sdgs__ttl br {
    display: none;
  }
}

.sdgs__desc {
  line-height: 1.9375;
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .sdgs__desc {
    line-height: 1.75;
    margin-bottom: 45px;
  }
}

.sdgs__goals {
  padding: 0 50px;
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .sdgs__goals {
    margin-bottom: 45px;
    padding: 0;
  }
}

.sdgs__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: -15px;
  margin-right: -15px;
}

@media screen and (max-width: 768px) {
  .sdgs__main {
    margin-left: 0;
    margin-right: 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.sdgs__col {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 0 15px;
}

@media screen and (max-width: 768px) {
  .sdgs__col {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0 0;
  }
  .sdgs__col:first-of-type {
    margin-bottom: 35px;
  }
}

.sdgsSection {
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .sdgsSection {
    margin-bottom: 35px;
  }
}

.sdgsSection:last-of-type {
  margin-bottom: 0;
}

.sdgsSection__ttl {
  font-size: 1.8rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 25px;
}

.sdgsSection__ttl:before {
  content: "●";
  color: #006CB6;
  margin-right: .5em;
}

@media screen and (max-width: 768px) {
  .sdgsSection__ttl {
    font-size: 1.6rem;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 15px;
  }
}

.sdgsSection__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px 30px;
  background-color: #F0F2F9;
  border-radius: 6px;
  margin-bottom: 20px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .sdgsSection__item {
    padding: 15px 20px;
    margin-bottom: 10px;
  }
}

.sdgsSection__item:last-of-type {
  margin-bottom: 0;
}

.sdgsSection__desc {
  line-height: 1.935;
  width: calc(100% - 90px);
  -webkit-flex-basis: calc(100% - 90px);
      -ms-flex-preferred-size: calc(100% - 90px);
          flex-basis: calc(100% - 90px);
  padding-right: 10px;
}

@media screen and (max-width: 768px) {
  .sdgsSection__desc {
    font-size: 1.3rem;
    width: calc(100% - 50px);
    -webkit-flex-basis: calc(100% - 50px);
        -ms-flex-preferred-size: calc(100% - 50px);
            flex-basis: calc(100% - 50px);
  }
  .sdgsSection__desc br {
    display: none;
  }
}

.sdgsSection__desc_w_sm {
  width: calc(100% - 180px);
  -webkit-flex-basis: calc(100% - 180px);
      -ms-flex-preferred-size: calc(100% - 180px);
          flex-basis: calc(100% - 180px);
}

@media screen and (max-width: 768px) {
  .sdgsSection__desc_w_sm {
    width: calc(100% - 85px);
    -webkit-flex-basis: calc(100% - 85px);
        -ms-flex-preferred-size: calc(100% - 85px);
            flex-basis: calc(100% - 85px);
  }
}

.sdgsSection__fig {
  width: 80px;
  -webkit-flex-basis: 80px;
      -ms-flex-preferred-size: 80px;
          flex-basis: 80px;
}

@media screen and (max-width: 768px) {
  .sdgsSection__fig {
    width: 40px;
    -webkit-flex-basis: 40px;
        -ms-flex-preferred-size: 40px;
            flex-basis: 40px;
  }
}

.sdgsSection__fig_w_lg {
  width: 170px;
  -webkit-flex-basis: 170px;
      -ms-flex-preferred-size: 170px;
          flex-basis: 170px;
}

@media screen and (max-width: 768px) {
  .sdgsSection__fig_w_lg {
    width: 85px;
    -webkit-flex-basis: 85px;
        -ms-flex-preferred-size: 85px;
            flex-basis: 85px;
  }
}

.select {
  padding-bottom: 145px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .select {
    padding-bottom: 45px;
  }
}

.selectContent {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 160px;
  margin-top: -107px;
  padding-top: 107px;
}

@media screen and (max-width: 1160px) {
  .selectContent {
    margin-top: -58px;
    padding-top: 58px;
  }
}

@media screen and (max-width: 768px) {
  .selectContent {
    margin-bottom: 60px;
    overflow: hidden;
    margin-left: -10px;
  }
}

.selectContent:last-of-type {
  margin-bottom: 0;
}

.selectContent__head {
  width: 122px;
  -webkit-flex-basis: 122px;
      -ms-flex-preferred-size: 122px;
          flex-basis: 122px;
  padding-right: 50px;
}

@media screen and (max-width: 768px) {
  .selectContent__head {
    width: 59px;
    -webkit-flex-basis: 59px;
        -ms-flex-preferred-size: 59px;
            flex-basis: 59px;
    margin-left: 0;
    padding-right: 25px;
  }
}

.selectContent__main {
  width: calc(100% - 122px);
  -webkit-flex-basis: calc(100% - 122px);
      -ms-flex-preferred-size: calc(100% - 122px);
          flex-basis: calc(100% - 122px);
}

@media screen and (max-width: 768px) {
  .selectContent__main {
    width: calc(100% - 59px);
    -webkit-flex-basis: calc(100% - 59px);
        -ms-flex-preferred-size: calc(100% - 59px);
            flex-basis: calc(100% - 59px);
  }
}

.selectContent__ttl {
  font-size: 3.2rem;
  font-weight: bold;
  color: #006cb6;
  border-bottom: 1px solid #006cb6;
  padding-bottom: 30px;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .selectContent__ttl {
    font-size: 2.8rem;
    line-height: 1.4;
    padding-bottom: 20px;
  }
}

.selectContent__col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: -30px;
  margin-right: -30px;
  margin-bottom: 55px;
}

@media screen and (max-width: 768px) {
  .selectContent__col {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 30px;
  }
}

.selectContent__col:last-of-type {
  margin-bottom: 0;
}

.selectContent__col:nth-of-type(even) .selectContent__texts {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

@media screen and (max-width: 768px) {
  .selectContent__col:nth-of-type(even) .selectContent__texts {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}

.selectContent__col:nth-of-type(even) .selectContent__fig {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

@media screen and (max-width: 768px) {
  .selectContent__col:nth-of-type(even) .selectContent__fig {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}

.selectContent__texts {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 0 30px;
}

@media screen and (max-width: 768px) {
  .selectContent__texts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 30px;
  }
}

.selectContent__textsPara {
  line-height: 1.75;
  margin-bottom: 1.5em;
}

.selectContent__textsPara:last-of-type {
  margin-bottom: 0;
}

.selectList__bt {
  margin-top: 40px;
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 240px;
  height: 57px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .selectList__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .selectList__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.selectList__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 1160px) {
  .selectList__bt {
    margin-top: 20px;
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .selectList__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.selectContent__fig {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 0 30px;
}

@media screen and (max-width: 768px) {
  .selectContent__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
  }
}

.selectContent__intro {
  line-height: 1.75;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .selectContent__intro {
    margin-bottom: 30px;
  }
}

.selectContent__textsImg {
  margin-bottom: 20px;
}

.service {
  margin-bottom: 0;
}

.service__inner {
  margin-top: 100px;
  background-color: #f0f2f9;
  padding-bottom: 135px;
}

@media screen and (max-width: 768px) {
  .service__inner {
    margin-top: 50px;
    padding-bottom: 45px;
  }
}

.serviceList__item {
  margin-bottom: 100px;
}

@media screen and (max-width: 1160px) {
  .serviceList__item {
    margin-bottom: 30px;
  }
}

.serviceList__item:first-of-type {
  position: relative;
  top: -100px;
  margin-bottom: 0;
}

@media screen and (max-width: 1160px) {
  .serviceList__item:first-of-type {
    top: -50px;
    margin-bottom: -20px;
  }
}

.serviceList__item:last-of-type {
  margin-bottom: 0;
}

.serviceList__item:nth-of-type(odd) .serviceList__fig {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-right: calc(-50vw + 550px);
}

@media screen and (max-width: 1160px) {
  .serviceList__item:nth-of-type(odd) .serviceList__fig {
    margin-right: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}

.serviceList__item:nth-of-type(odd) .serviceList__text {
  border-radius: 15px 0 0 15px;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

@media screen and (max-width: 1160px) {
  .serviceList__item:nth-of-type(odd) .serviceList__text {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}

.serviceList__item:nth-of-type(even) .serviceList__fig {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  margin-left: calc(-50vw + 550px);
}

@media screen and (max-width: 1160px) {
  .serviceList__item:nth-of-type(even) .serviceList__fig {
    margin-left: 0;
  }
}

.serviceList__item:nth-of-type(even) .serviceList__text {
  border-radius: 0 15px 15px 0;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.serviceList__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 1160px) {
  .serviceList__wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.serviceList__fig {
  width: calc(100% - 596px + 50vw - 550px);
  -webkit-flex-basis: calc(100% - 596px + 50vw - 550px);
      -ms-flex-preferred-size: calc(100% - 596px + 50vw - 550px);
          flex-basis: calc(100% - 596px + 50vw - 550px);
  position: relative;
}

@media screen and (max-width: 1160px) {
  .serviceList__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-bottom: 56.25%;
    height: auto;
  }
}

.serviceList__img {
  width: 100%;
  height: 100%;
  max-height: 640px;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (max-width: 768px) {
  .serviceList__img {
    border-radius: 6px 6px 0 0;
  }
}

.serviceList__text {
  padding: 90px 80px 100px 80px;
  background-color: #fff;
  width: 596px;
  -webkit-flex-basis: 596px;
      -ms-flex-preferred-size: 596px;
          flex-basis: 596px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

@media screen and (max-width: 1160px) {
  .serviceList__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 20px 20px 30px 20px;
  }
}

.serviceList__ttl {
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 20px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .serviceList__ttl {
    font-size: 2.0rem;
    margin-bottom: 10px;
  }
}

.serviceList__subTtl {
  font-weight: bold;
  line-height: 1.75;
  margin-bottom: 20px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .serviceList__subTtl {
    line-height: 1.63;
    margin-bottom: 15px;
  }
}

.serviceList__desc {
  line-height: 1.75;
  margin-bottom: 25px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .serviceList__desc {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
}

.serviceList__bt {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 220px;
  height: 57px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .serviceList__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .serviceList__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.serviceList__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 1160px) {
  .serviceList__bt {
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .serviceList__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.suggestion {
  margin-bottom: 0;
}

.suggestion__header {
  margin-bottom: 230px;
}

@media screen and (max-width: 768px) {
  .suggestion__header {
    margin-bottom: 100px;
  }
}

.suggestion__ttl {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.86;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .suggestion__ttl {
    font-size: 2.3rem;
    line-height: 1.5;
    margin-bottom: 25px;
    text-align: left;
  }
  .suggestion__ttl br {
    display: none;
  }
}

.suggestion__desc {
  line-height: 1.9375;
  margin-bottom: 1.5em;
}

.suggestion__desc:last-of-type {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .suggestion__desc {
    line-height: 1.75;
  }
}

.suggestionMain {
  background-color: #f0f2f9;
  padding-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .suggestionMain {
    padding-bottom: 0;
    margin-bottom: -5px;
  }
}

.suggestionMain__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
  top: -130px;
  margin-left: -40px;
  margin-right: -40px;
}

@media screen and (max-width: 768px) {
  .suggestionMain__list {
    margin-left: 0;
    margin-right: 0;
    top: -50px;
  }
}

.suggestionMain__item {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  border-radius: 8px;
  padding: 0 40px;
}

@media screen and (max-width: 768px) {
  .suggestionMain__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    border-radius: 6px;
    margin-bottom: 30px;
  }
  .suggestionMain__item:last-of-type {
    margin-bottom: 0;
  }
}

.suggestionMain__img {
  border-radius: 8px 8px 0 0;
}

@media screen and (max-width: 768px) {
  .suggestionMain__img {
    border-radius: 6px 6px 0 0;
  }
}

.suggestionMain__text {
  border-radius: 0 0 8px 8px;
  background-color: #fff;
  padding: 20px 20px 40px 20px;
}

@media screen and (max-width: 768px) {
  .suggestionMain__text {
    padding: 20px 20px 30px 20px;
  }
}

@media screen and (max-width: 768px) and (max-width: 768px) {
  .suggestionMain__text {
    border-radius: 0 0 6px 6px;
  }
}

.suggestionMain__ttl {
  font-size: 2.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .suggestionMain__ttl {
    font-size: 2.0rem;
    margin-bottom: 15px;
    line-height: 1.65;
  }
}

.suggestionMain__bt {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 220px;
  height: 57px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .suggestionMain__bt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .suggestionMain__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
}

.suggestionMain__bt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}

@media screen and (max-width: 768px) {
  .suggestionMain__bt {
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .suggestionMain__bt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

.fcvArea__inner {
  width: 100%;
  padding: 75px 25px 80px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  .fcvArea__inner.fcvArea-suggestion {
    background-image: url(../img/service/suggestion/bg_cv.jpg);
  }
  .fcvArea__inner.fcvArea-development {
    background-image: url(../img/service/development/bg_cv.jpg);
  }
  .fcvArea__inner.fcvArea-oem {
    background-image: url(../img/service/oem/bg_cv.jpg);
  }
  .fcvArea__ttl {
    text-align: center;
    font-weight: bold;
    font-size: 3rem;
  }
  .fcvArea__txt {
    margin-top: 35px;
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .fcvArea__bt {
    width: 370px;
    height: 67px;
    margin: 40px auto 0;
    background: #2ea7e0;
    background: linear-gradient(45deg, #2ea7e0 0%, #006cb6 100%);
    display: flex;
    color: #fff;
    font-size: 1.8rem;
    border-radius: 67px;
    justify-content: center;
    align-items: center;
    position: relative;
    border: none;
  }
  .fcvArea__bt:after {
    content: "";
    display: block;
    width: 5px;
    height: 11px;
    background: url(../img/arrow_right_white.svg) no-repeat center center/cover;
    position: absolute;
    right: 20px;
    top: calc(50% - 5.5px);
  }
  .fcvArea__bt:hover {
    box-shadow: none;
    background: transparent;
    color: #006cb6;
    border: 1px solid #006cb6;
  }
  .fcvArea__bt:hover:after {
    background: url(../img/arrow_right_blue.svg) no-repeat center center/cover;
  }
@media screen and (max-width: 768px) {
  .fcvArea__inner {
    padding: 40px 25px 45px;
  }
  .fcvArea__ttl {
    font-size: 2.2rem;
    text-align: left;
  }
  .fcvArea__txt {
    margin-top: 25px;
    text-align: left;
  }
  .fcvArea__bt {
    width: 100%;
    height: 50px;
    margin: 30px auto 0;
    font-size: 1.7rem;
    border-radius: 50px;
  }
  .fcvArea__bt:after {
    width: 5px;
    height: 9px;
    right: 18px;
    top: calc(50% - 4.5px);
  }
}

.checkCookie {
  width: 100vw;
  padding: 25px;
  background-color: rgba(255, 255, 255, .9);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 4; }
  .checkCookie .checkCookie_inn {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }
  .checkCookie .checkCookie_txt {
    width: calc(100% - 140px);
    font-size: 1.4rem;
    line-height: 1.86;
  }
  .checkCookie .checkCookie_btn {
    width: 120px;
    height: 49px;
    font-size: 1.4rem;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #006cb6;
    border: 1px solid #006cb6;
    border-radius: 3px;
  }
  .checkCookie .checkCookie_btn:hover {
    background-color: #fff;
    color: #006cb6;
  }
@media screen and (max-width: 768px) {
  .checkCookie {
    padding: 18px 25px 20px;
  }
  .checkCookie .checkCookie_txt {
    width: 100%;
    margin-bottom: 18px;
  }
  .checkCookie .checkCookie_btn {
    height: 45px;
    margin-left: auto;
  }
  .checkCookie .checkCookie_btn:hover {
    background-color: #fff;
    color: #006cb6;
  }
}
