@charset "UTF-8";
main{
    position: relative;
    letter-spacing: 0;
}
main h2, main h3{
    margin-bottom: 0;
}
.pane-header + .pane-main{
    padding-top: 0;
}

.page p, .page span, .page a, .page h2, .page h3 {
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.5;
}

.page a {
  display: block;
  -webkit-transition: all .3s ease-in 0s;
  transition: all .3s ease-in 0s;
}

.page a:hover {
  opacity: 0.6;
}

.page img {
  max-width: 100%;
  height: auto;
}

.page div, .page span, .page applet, .page object, .page iframe,
.page h1, .page h2, .page h3, .page h4, .page h5, .page h6, .page p,
.page blockquote, .page pre, .page a, .page abbr, .page acronym, .page address,
.page big, .page cite, .page code, .page del, .page dfn, .page em, .page img, .page ins, .page kbd, .page q, .page s, .page samp, .page small, .page strike, .page strong, .page sub, .page sup, .page tt, .page var, .page b, .page u, .page i, .page center,
.page dl, .page dt, .page dd, .page ol, .page ul, .page li,
.page fieldset, .page form, .page label, .page legend,
.page table, .page caption, .page tbody, .page tfoot, .page thead, .page tr, .page th, .page td,
.page article, .page aside, .page canvas, .page details, .page embed, .page figure, .page figcaption, .page footer, .page header, .page hgroup,
.page menu, .page nav, .page output, .page ruby, .page section, .page summary, .page time, .page mark, .page audio, .page video, .page picture {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.page article, .page aside, .page details, .page figcaption, .page figure, .page footer, .page header, .page hgroup, .page menu, .page nav, .page section, .page summary, .page picture {
  display: block;
}

.page *, .page *:before, .page *:after {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.page button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.l-wrap {
  overflow: initial;
}

@media screen and (min-width: 768px) {
  .view--pc {
    display: block;
  }
  .view--sp {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .view--pc {
    display: none;
  }
  .view--sp {
    display: block;
  }
}

.page {
  overflow: hidden;
  background: #fff;
  margin-bottom: 20px;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", "sans-serif";
  /*=============================
	 item
	=============================*/
  /*=============================
	 item　scroll ver
	=============================*/
}

.page__inner {
  margin: auto;
  max-width: 980px;
}

@media screen and (min-width: 768px) and (max-width: 980px) {
  .page__inner {
    padding: 0 20px;
  }
}

@media screen and (max-width: 767px) {
  .page__inner {
    width: 89.6vw;
  }
}

.page .reservation__btn .btn {
  position: relative;
  width: 80%;
  padding: 6px 26px 6px 16px;
  margin: 5px auto 0;
  font-size: 14px;
  text-align: center;
  color: #ffffff;
  display: block;
  border-radius: 5px;
  border: solid 1px #092b4e;
  background-color: #092b4e;
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .page .reservation__btn .btn {
    width: 100%;
    font-size: 3vw;
    padding: 2vw;
  }
}

.page .reservation__btn .btn .arrow_right {
  position: absolute;
  right: 5%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
}

@media screen and (max-width: 767px) {
  .page .reservation__btn .btn .arrow_right {
    right: 5%;
  }
}

.page .reservation__btn .btn .arrow_right:after {
  content: "";
  display: block;
  width: .5em;
  height: .5em;
  border: 1px solid;
  border-color: #ffffff #ffffff transparent transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 50%;
}

.page .item__list {
  max-width: 770px;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .page .item__list {
    max-width: 100%;
    margin: 2.6vw auto 0;
  }
}

.page .item__list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .page .item__list ul {
    display: block;
  }
}

.page .item__list ul li {
  max-width: 230px;
  width: 29.9%;
  margin-right: 5.1%;
  margin-top: 60px;
}

@media screen and (min-width: 768px) {
  .page .item__list ul li:nth-child(3n) {
    margin-right: 0;
  }
  .page .item__list ul li:nth-child(-n+3) {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .page .item__list ul li {
    width: 100%;
    max-width: 100%;
    margin-top: 0;
    margin-right: 0;
    margin: 0 1.3vw;
  }
}

.page .item__list__img {
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .page .item__list__img {
    position: relative;
    margin: auto;
    width: 42.2vw;
    height: 68.5vw;
  }
  .page .item__list__img img {
    -webkit-transform-origin: top center;
            transform-origin: top center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transform: scale(1.65, 1.65);
            transform: scale(1.65, 1.65);
  }
}

.page .item__list__text {
  text-align: center;
  margin-top: 15px;
}

@media screen and (max-width: 767px) {
  .page .item__list__text {
    margin-top: 2.6vw;
  }
}

.page .item__list__text p {
  color: #333;
}

.page .item--name, .page .item--price {
  font-size: 1.6rem;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .page .item--name, .page .item--price {
    font-size: 4.2vw;
  }
}

.page .item--price {
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .page .item--price {
    margin-top: 1.3vw;
  }
}

.page .item--btn {
  width: 100%;
  background: #C2CCDA;
  line-height: 40px;
  font-size: 1.4rem;
  font-weight: 400;
  text-align: center;
  margin-top: 10px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .page .item--btn {
    line-height: 13vw;
    font-size: 4.2vw;
    margin-top: 3.3vw;
  }
}

.page .item--btn:after {
  content: ">";
  display: inline-block;
  position: absolute;
  right: 11px;
  -webkit-transform: scale(0.6, 1);
          transform: scale(0.6, 1);
}

.page .item__scroll {
  width: 980px;
  text-align: center;
  margin: 100px auto 142px;
}

@media screen and (max-width: 767px) {
  .page .item__scroll {
    width: 100%;
    max-width: 100%;
    margin: 18vw auto 10vw;
  }
}

.page .item__scroll .item__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .page .item__scroll .item__list {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-y: hidden;
    display: -webkit-box;
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
  }
  .page .item__scroll .item__list::-webkit-scrollbar {
    display: none;
    /* Safari and Chrome */
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .page .item__scroll .item__list li {
    width: 100%;
    max-width: 60vw;
    margin-top: 0;
    margin-right: 0;
    margin: 0 6vw;
    position: relative;
    overflow: visible;
  }
  .page .item__scroll .item__list li:last-child::after {
    position: absolute;
    content: '';
    top: 0;
    left: 100%;
    height: 1px;
    width: 6vw;
    background-color: transparent;
  }
}

.page .item__scroll .item__list .ajax_area {
  margin: 0 auto;
}

.page .item__scroll .item__list .item__list__id .item__list__img {
  display: block;
  margin: 0 auto;
}

.page .item__scroll .item__list .item__list__id .item__list__text {
  display: block;
  margin: 0 auto;
}

.page .item__scroll .item__list .item__list__id .item__list__text .item--name {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 12px;
}

@media screen and (max-width: 767px) {
  .page .item__scroll .item__list .item__list__id .item__list__text .item--name {
    font-size: 4vw;
    margin-bottom: 3vw;
  }
}

@media screen and (max-width: 767px) {
  .page .item__scroll .item__list .item__list__id .item__anchor .btn {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .page .slick-arrow {
    position: absolute;
    z-index: 100;
    top: 50.7vw;
    width: 2.1vw;
    height: 5.2vw;
  }
}

.page .prev-arrow {
  left: -2.1vw;
}

.page .next-arrow {
  right: -2.1vw;
}

.page .ajax_area .preset_price_area {
  color: red;
}

.page .ajax_area a.cartinbtn {
  width: 80%;
  background-color: #000;
  margin: 5px auto 0;
}

@media screen and (max-width: 767px) {
  .page .ajax_area a.cartinbtn {
    width: 100%;
  }
}

.page .ajax_area .stock_exist {
  width: 80%;
}

@media screen and (max-width: 767px) {
  .page .ajax_area .stock_exist {
    width: 100%;
  }
}
/*# sourceMappingURL=style.css.map */



/* origin */

.formal {
  font-family: 'Lato', 'Noto Sans JP', sans-serif;
}

.Lato {
  font-family: 'Lato', sans-serif;
}

main.formal.is-fixed {
  z-index: 2;
}
@media screen and (max-width: 767px) {
  body.is-fixed {
    /* position: fixed; */
  }

  main.formal.is-fixed {
    /* position: fixed; */
  }
}

a:hover div {
  opacity: 0.7;
}

/*============================
#formal_header
============================*/

#formal_header {
  position: fixed;
  width: 100%;
  z-index: 20;
  cursor: pointer;
}
main article#formal_header + article {
  padding-top: 70px;
  max-width: 1380px;
  margin: 0 auto;
}

main.formal_index article#formal_header + article {
  max-width: none;
  margin: 0 auto;
}

article#formal_header section.formal_header_area {
  background-color: #000;
  margin: 0 auto;
}
article#formal_header section.formal_header_area div.formal_header_block {
  color: #fff;
  display: flex;
  max-width: 1020px;
  padding-left: 20px;
  padding-right: 20px;
  margin: 0 auto;
  align-items: center;
  height: 70px;
  justify-content: space-between;
}
article#formal_header section.formal_header_area div.formal_header_block h2.formal_header_title {font-size: 2.4rem;letter-spacing: 1px;margin: 0;}
article#formal_header section.formal_header_area div.formal_header_block div.btn_pull_menu {
  border-right: 10px solid transparent;
  border-top: 13px solid #fff;
  border-left: 10px solid transparent;
  transition-duration: 0.5s;
}
article#formal_header section.formal_header_area div.formal_header_block div.btn_pull_menu.open {
  transform: rotate(180deg);
  transition-duration: 0.5s;;
}
article#formal_header section.formal_header_inner_area  {
  background-color: #fff;
  display: none;
  z-index: 15;
  height: 100vh;
  padding-bottom: 150px;
  overflow-y: auto;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner {
  display: flex;
  max-width: 1020px;
  padding: 40px 20px 40px 70px;
  margin: 0 auto 0;
  justify-content: center;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column {padding: 0 0 30px;}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column01 {
  width: calc(30% - 60px);
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column02 {
  width: 30%;
  border-left: 1px solid #707070;
  padding-left: 30px;
  margin-left: 30px;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column03 {
  width: 40%;
  border-left: 1px solid #707070;
  padding-left: 30px;
  margin-left: 30px;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li {
  line-height: 1.5;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title {
  font-size: 2.4rem;
  padding-top: 30px;
  letter-spacing: 1px;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list {
  font-size: 1.6rem;
  padding-top: 10px;
  display: flex;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list::before {
  content: "";
  width: 10px;
  height: 1px;
  margin: 10px 15px 0 10px;
  background-color: #000;
  display: inline-block;
}
article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_sub_title {
  font-size: 2.0rem;
  padding-top: 20px;
  letter-spacing: 2px;
}


@media screen and (max-width: 767px) {
  main.formal {
    margin-top: -3px;
    line-height: 1;
  }
  main article#formal_header + article {
    padding-top: 60px;
  }
  article#formal_header .formal_header_area {
    position: fixed;
    width: 100%;
    z-index: 20;
  }
  main article#formal_header {
    position: inherit;
  }
  main.is-fixed article#formal_header {
    position: inherit;
    /* overflow-y: scroll; */
    /* height: calc(100vh - 53px); */
    /* background-color: rgba(0,0,0,0.8); */
  }
  article#formal_header section.formal_header_area div.formal_header_block {
    height: 60px;
  }
  article#formal_header section.formal_header_area div.formal_header_block h2.formal_header_title {font-size: 2.0rem; color:#fff;}
  article#formal_header section.formal_header_inner_area  {
  padding-top: 60px;
  position: absolute;
  width: 100%;
  padding-bottom: 120px;
  /* background-color: transparent; */
  top: 50px;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
  position: fixed;
  height: calc(100vh - 50px);
  background-color: rgba(0,0,0,0.8);
  }
  article#formal_header section.formal_header_inner_area .formal_header_inner_block {

  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner {
    display: flex;
    flex-direction: column;
    padding: 10px 20px 30px 30px;
    border-left: 15px solid #000;
    border-right: 15px solid #000;
    border-bottom: 15px solid #000;
    background-color: #fff;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column {
    padding: 15px 0 5px;
    border-bottom: 1px solid #707070;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column01 {
    width: 100%;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column02 {
    width:  100%;
    border-left: none;
    padding-left: 0;
    margin-left: 0;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column.formal_header_column03 {
    width:  100%;
    border-left: none;
    padding-left: 0;
    margin-left: 0;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title:first-child {
    padding-top: 0;
    margin-bottom: 10px;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title.category_title {
    position: relative;
    cursor: pointer;
    font-size: 2.0rem;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title.category_title:after {
    content: '';
      display: block;
      width: 13px;
      height: 2px;
      background-color: #000;
      position: absolute;
      top: 50%;
      right: 15px;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title.category_title:before {
    content: '';
    display: block;
    width: 2px;
    height: 13px;
    background-color: #000;
    position: absolute;
    top: 50%;
    right: 21px;
    margin-top: -6px;
    transition-duration: 0.5s;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title.category_title.is-open:before {
    content: '';
    display: block;
    width: 1px;
    height: 13px;
    background-color: #000;
    position: absolute;
    top: 50%;
    right: 21px;
    margin-top: -6px;
    -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
    transition-duration: 0.5s;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column ul.second_layer_list {
    display: none;
    padding-bottom: 30px;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column ul.second_layer_list.is-open {
    display: block;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column ul.second_layer_list li:first-child {
    padding-top: 0;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_title {
    font-size: 2.0rem;
    padding-top: 20px;
    letter-spacing: 1px;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list {
    font-size: 1.4rem;
    padding-top: 10px;
    display: flex;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list::before {
    content: "";
    width: 10px;
    height: 1px;
    margin: 10px 15px 0 10px;
    background-color: #000;
    display: inline-block;
  }
  article#formal_header section.formal_header_inner_area nav.formal_header_inner ul.formal_header_column li.list_sub_title {
    font-size: 2.0rem;
    padding-top: 20px;
  }
}

/* パンくず */
.c-breadcrumbs,
.c-breadcrumbs a:link {
	font-size: 1.2rem;
	color: #707070;
  padding-left: 5px;
}

.c-breadcrumbs span.current {
	font-size: 1.2rem;
	color: #000;
	font-weight: 500;
	padding-left: 5px;
}
.c-breadcrumbs-list {
	position: relative;
	padding-left: 17px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.c-breadcrumbs-list:before {
	position: absolute;
	content: "";
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(-45deg);
	width: 7px;
	height: 7px;
	border-top: 1px solid #707070;
	border-left: 1px solid #707070;
}
.c-breadcrumbs-list li:not(:first-child) {
	padding-left: 5px;
}

@media screen and (max-width: 767px) {
  .c-breadcrumbs {
		flex: 1;
	}
	.c-breadcrumbs,
	.c-breadcrumbs a:link,
  .c-breadcrumbs span.current {
		font-size: 2.7vw;
	}
	.c-breadcrumbs.breadcrumbs_wt,
  .c-breadcrumbs.breadcrumbs_wt a:link {
		color: #fff;
	}
	.c-breadcrumbs-list {
		padding-left: 16px;
	}
	.breadcrumbs_wt .c-breadcrumbs-list:before {
		border-color: #fff;
	}
	.breadcrumbs_wt a:link,
	.breadcrumbs_wt a:visited,
	.breadcrumbs_wt a {
		color: #fff;
	}
}


/* btn */
.btn_box_area {
}

.btn_box_area .btn_box {
    display: flex;
    padding: 10px 20px;
    background-color: #fff;
    margin: 0 auto;
    text-align: center;
    justify-content: center;
    align-items: center;
    border: 1px solid #000;
    position: relative;
    transition: ease .2s;
    z-index: 3;
}

.btn_box_area .btn_box .btn_box_txt {
  z-index: 3;
}

.btn_box_area .btn_box:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background:#000;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
.btn_box_area .btn_box:hover {
  opacity: 1;
  color: #fff;
  z-index: 3;
}

.btn_box_area .btn_box:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}

.btn_box_area .btn_box:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(-45deg);
  width: 7px;
  height: 7px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}
.btn_box_area .btn_box:hover:after {
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  z-index: 3;
}

.btn_box_area.more .btn_box {
    width: 240px;
    height: 50px;
    letter-spacing: 1px;
    font-size: 1.4rem;
}

.btn_box_area.knowledge_more {
  padding-top: 60px;
}

.btn_box_area.knowledge_more .btn_box {
    width: 330px;
    height: 50px;
    font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .btn_box_area.more .btn_box {font-size: 3.0vw;height: 13vw;width: 63vw;}

.btn_box_area.knowledge_more {padding-top: 6vw;}

.btn_box_area.knowledge_more .btn_box {font-size: 3.4vw;height: 13vw;width: 83vw;}
}

/*サービス、ABOUT FORMAL*/

.l_contents_btm {
  padding: 110px 0;
}

.l_contents_btm_inner {
  max-width: 980px;
  width: 90%;
  margin: 0 auto;
}

main .l_contents_btm_ttl {
  font-size: 3.0rem;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 0.3rem;
}

.l_contents_btm_ttl span {
  font-size: 1.6rem;
  padding: 10px 0;
  display: block;
  letter-spacing: 0;
}

.l_contents_btm_inner ul {
  display: flex;
  justify-content: space-evenly;
}
.l_contents_btm_inner ul.space-evenly{
    justify-content: space-evenly;
}
.l_contents_btm_inner ul li {
  width: calc((100% / 3) - 20px);
  background: #F5F5F5;
  position: relative;
}

.ceremony .l_contents_btm_inner ul li {
  background: #F2EEEB;
}
.about_formal_area .l_contents_btm_inner ul li {
  background: #fff;
}

.service_img_box,
.knowledge_img_box {
  display: block;
  height: 100%;
}

.service_img_img img,
.knowledge_img_img img {
  display: block;
  width: 100%;
}

.service_img_txt{
  padding: 30px 20px 80px 20px;
}

.service_img_txt h3 {
  font-size: 2.3rem;
  font-weight: 500;
  margin-bottom: 10px;
  line-height: 1.3;
}

.service_img_txt p,
.knowledge_img_txt p {
  font-size: 1.6rem;
  line-height: 1.6;
}

.service_btn,
.knowledge_btn {
  font-size: 1.4rem;
  position: absolute;
  right: 14px;
  bottom: 30px;
  letter-spacing: 0.1rem;
  padding-left: 100px;
}

.service_btn:before,
.knowledge_btn:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 90px;
  height: 1px;
  background: #000;
  animation: arrow 1.8s ease infinite;
}

.knowledge_img_txt {
  padding: 20px 20px 80px 20px;
  /* position: relative; */
}

.knowledge_img_txt h3 {
  font-size: 2.0rem;
  font-weight: 500;
  margin-bottom: 10px;
  line-height: 1.3;
}

@keyframes arrow {
  0% {
    width: 0;
    opacity: 1
  }
  20% {
    width: 0;
    opacity: 1
  }
  80% {
    width: 60%;
    opacity: 1
  }
  100% {
    width: 60%;
    opacity: 0
  }
}

.about_formal_area {
  background-color: #F5F5F5;
}
.about_formal_area .article_date {
  color: #707070;
  font-size: 1.4rem;
  padding-bottom: 10px;
}

.knowledge_img_txt {
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .l_contents_btm {
    padding: 11vw 0;
  }
  main .l_contents_btm_ttl {
    margin-bottom: 5vw;
    font-size: 5.8vw;
  }
  .l_contents_btm_inner ul {
    display: block;
  }
  .l_contents_btm_inner ul li {
    width: 100%;
    margin-bottom: 20px;
  }
  .service_img_box,
  .knowledge_img_box {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .service_img_img,
  .knowledge_img_img {
    /* width: 50%; */
    width: 100%;
  }
  .service_img_txt,
  .knowledge_img_txt {
    /* width: 50%; */
    padding: 4vw 5vw 10vw;
    width: 100%;
  }
  .service_img_txt h3,
  .knowledge_img_txt h3 {
    font-size: 4.2vw;
    margin-bottom: 2vw;
  }
  .service_img_txt p,
  .knowledge_img_txt p {
    font-size: 3.4vw;
    padding-bottom: 4vw;
  }

  .l_contents_btm_ttl span {
    padding: 10px 0;
    display: block;
    letter-spacing: 0;
    padding-top: 2vw;
    font-size: 3.2vw;
  }
  .service_btn,
  .knowledge_btn {
    position: absolute;
    right: 4vw;
    bottom: 4vw;
    font-size: 3.4vw;
    margin-top: 0vw;
    padding-left: 7vw;
    float: right;
  }
  .service_btn:before,
  .knowledge_btn:before {
    width: 1vw;
    left: -6vw;
  }

  .knowledge_img_box {
    background-color: #fff;
  }
  .knowledge_img_txt {
  }

  .knowledge_img_txt h3 {

  }

  .about_formal_area {
  padding: 11vw 0;
  }
  .about_formal_area .article_date {padding-bottom: 1vw;font-size: 3.0vw;}

  .knowledge_img_txt {

  }

}

@media screen and (max-width: 321px) {
  .service_img_txt p,
  .knowledge_img_txt p {
    line-height: 1.2;
  }
}

.nav--scroll{
    /* top: 40px; */
    top: 0;
}
@media screen and (max-width: 767px) {
    .nav--scroll{
        top: unset;
    }
}
.l-breadcrumb{
    margin-bottom: -20px;
}
@media screen and (max-width: 767px) {
    .l-breadcrumb{
        margin-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .container{
        padding: 0;
    }
}
.block-page-top{
    z-index: 800;
}